Sending buffer payloads with binary audio with HTTP-GET

I am trying to send audio buffer payloads over HTTP-GET but the browser only takes one payload and stops. I get 4 seconds of music and it doesn't take anything else.
It should keep going. I tried all kinds of headers in my response but nothing works.
I can make the buffer bigger by using the join-node, but this is not what I am hoping for. It want to be able to just keep buffering new content to the browser that has an active connection.

The http-in/http-response nodes do not support chunked/streamed content. It will only ever send the first message to the client.

It is on the backlog to look at supporting, but I do not believe any work has been done on it yet.

Is there an workaround with using another node inside node-red?
I could use JavaScript in template to add websocket and update the buffer from there, but that would limit the buffering feature to a browser.
I am intending to make a streamable url in combination with CastV2 to stream custom live media to Chromecast and Nest devices.

Not that I am aware of.

If you want to look at how support could be added to the http-in/http-response nodes please add a design here and we can discuss it ahead of you raising a pull request.

There are a couple of cast nodes in the flows library that may be of some use ?

I am not really familiar with back-end networking and HTTP requests and structures.

GitHub Node-Red HTTPin Line 326
In this part it should be handled, I think. I would like to just start tinkering, but don't know where and how :innocent:

Yes that is right general area of the code, but it needs designing before just jumping in.

There needs to be consideration about how chunks will be marked and how to signal the end of the stream. It's probably going to reuse the split/join node msg fields but still needs thinking about.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.