-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ability to restream birdseye #4761
Add ability to restream birdseye #4761
Conversation
✅ Deploy Preview for frigate-docs canceled.
|
Yay! Excited for this feature to be baked in, had to do some voodoo magic before with puppeteer to have this done. keep up the good work. |
f673d43
to
45c7c97
Compare
I think we can use a named pipe to pass rawvideo data to go2rtc. This would avoid the extra encoding work to mpeg1. I was able to get it to work in theory with the following: Create a named pipe with go2rtc config: streams:
pipe: exec:ffmpeg -hide_banner -f rawvideo -pix_fmt yuv420p -s 1280x720 -i /tmp/birdseye -tune zerolatency -preset ultrafast -c:v libx264 -rtsp_transport tcp -f rtsp {output} Use ffmpeg to write rawvideo frames to the named pipe with ffmpeg -re -stream_loop -1 -i /workspace/airport.mp4 -pix_fmt yuv420p -f rawvideo pipe: > /tmp/birdseye The ffmpeg process will block until go2rtc starts reading. I think we should be able to write the same raw yuv frame data to the named pipe with python, but it may be tricky to figure out the blocking IO part while go2rtc isnt running. This is another situation where zmq would probably be helpful for inter-process communication. |
ebf8176
to
047567f
Compare
047567f
to
fce413b
Compare
I am trying to find a way to pull birdseye but I don't seem to do so. When I click the netlify log above, it says it failed... so was this even implemented? Not clear to me. According to docs for 0.13:
It should work... but it doesn't. Birdseye actually shows up normally on my Frigate UI. |
No description provided.