Yesterday's stream was quite a success. Not everyone could watch, but the audience was at ~50 most of the show. We've even had the author/choreographer in the chat providing a bit of the walkthrough.

Lessons learned:
- VLC does not play sound, strangely
- Icecast barely showed any work at this capacity on a basic DO droplet. All resources were more then enough (1xCPU, 1G RAM)

I'm not happy with stream reloads when clip is switched in ffmpeg, looking into named pipes with ffmpeg.


The question that bothers me is how can I provide a continuous webm stream to icecast while I still control the playlist / schedule in realtime / programmatically in the background.

Yesterday night experiments with named pipes didn't work, as the process reading from the pipe exits when the process writing to the pipe exits (both are ffmpeg). I imagine it might work if the ffmpef reading from pipe and streaming to server would keep doing that even if for a moment the process writing would exit.

@luka one way that might work is to have a dummy writer to keep the pipe open. Something like "cat > play.fifo &" in the background. I think the EOF only happens when the last writer exits?

@mathr it doesn't really work. I mean, your advice works - "cat > live.pipe" does keep the reading ffmpeg non-terminated.

but the reading ffmpeg does not like the changing of timebase it receives. i might need to experiment a bit more with different setups - maybe every format needs to be coverted to a kind of raw video first, write that to pipe and then read from it, encode to webm and send to steam.

@luka oh! tricky :( re-encoding loses a lot of quality, but if the files are all the same codecs/bitrates there might be a way to remultiplex them with a continuous time code? no clue at this point

Sign in to participate in the conversation

SoNoMu (Sound Noise Music) is a mastodon instance for musicians, sound-artists, producers of any kind of aural noise, songwriters, bedroom producers, sonic manglers and algorave livecoders. -> more...