Streaming output support
Opened this issue · 2 comments
Hi there,
I'm implementing streaming output support to talked. I implemented support, for now just for "audio_only = True" use case (and tested with icecast output):
https://github.com/ColmenaDev/talked
Please advice on what should go to json parameters and what should go to config file. Also, ffmpeg in docker is too old, and tee plugin is not working with onfail (so for now I'm using two encoding pipelines in ffmpeg available in ubuntu 20.04). It would be nice to update dockerfile to Debian 11 or Ubuntu 22.04.
Hi there, I'm implementing streaming output support to talked. I implemented support, for now just for "audio_only = True" use case (and tested with icecast output)
Very cool!
Please advice on what should go to json parameters and what should go to config file.
I would say having both of the new config options in the config file makes sense, so one can set a default. For JSON parameters I would say having the enable_streaming option present makes sense, so one can enable or disable streaming through the Talked client for individual talk rooms. Whether it makes sense to include icecast_url depends on whether you see a use case for setting the icecast_url through the Talked client, that overrides the default set in the config file.
Also, ffmpeg in docker is too old, and tee plugin is not working with onfail (so for now I'm using two encoding pipelines in ffmpeg available in ubuntu 20.04). It would be nice to update dockerfile to Debian 11 or Ubuntu 22.04.
The dockerfile is currently just used for development, so you're welcome to update it. Updating to a newer ubuntu will probably be easiest, as Ubuntu includes the geckodriver, that is needed for selenium, in their repos and Debian doesn't.
Though when I create a docker container for production use it'll probably be Debian based as that is what I normally use for all my containers.
btw, I'm testing with icecast://, but streaming like could be udp://, hsl://, or whatever other streaming protocol ffmpeg supports could also be used.