dockerized-browser-streamer
dockerized-browser-streamer copied to clipboard
Stream video of any website (but WebRTC things works best) to RTMP endpoint. Launch it in Docker. Pray if it works.
Streaming websites from dockerized browser
Based on this example: https://github.com/aws-samples/amazon-chime-sdk-recording-demo
Description: https://medium.com/@afrimadonidinata/setup-online-meeting-recording-with-aws-chime-sdk-60c6e1f360c4
How it works
- Launches Xvfb–virtual display
- Launches PulseAudio–audio server
- Launches Firefox and points it into some website (specified by
MEETING_URL
environment variable) - Launches FFMpeg which captures video from virtual display and sound from virtual sink and streams it into RTMP endpoint (specified by
RTMP_URL
environment variable)
Building
docker build . -t webrtc-streamer
Running
docker run -it --rm \
--env "MEETING_URL=https://v3demo.mediasoup.org/?roomId=vviqj99m" \
--env "RTMP_URL=rtmp://user:[email protected]:1935/live/testStream" \
-v $(pwd):/home/user/app \
-p 5900:5900 \
webrtc-streamer
Debugging
Watch virtual framebuffer contents with VNC:
vncviewer -encodings 'copyrect tight zrle hextile' 127.0.0.1:5900
In Firefox you can open devtools with Ctrl+Shift+I
, also you can open new tab with Ctrl+T
and enter about:webrtc
in it.