You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been working with video streaming using ffmpeg in my spare time for several weeks now and I just found out about sunshine.
Sunshine completely blows out of the water absolutely anything I have been trying to do in terms of latency and I would like to know how you do it ! I have not been able to break 350ms latency at any time streaming with ffmpeg.
My setup is a windows PC streaming to a raspberry pi.
My ultimate goal is creating four "indirect displays" (like space desk or the amyuni driver or IddSampleDriver) and stream that video to two Raspberry Pi 4 with each two 1680x1050 monitors.
I would like to know, how does sunshine use ffmpeg to capture the desktop and send it out to the network so quick ?
Is everything needed to do this already inside ffmpeg ? If so what would be an equivalent command line that would setup ffmpeg the same way ?
So I guess I want to know,
How does sunshine grab frames from the display (I tried gdigrab, it is not up to the task, I tried dshow but couldn't properly configure uscreencapture or even find another fast dshow framegrabber)
How are these frames sent to the hardware video encoder (codec configuration (bitrate, profile and etc..), scaling,color conversion, other treatment ?)
And how is the output of the encoder sent out to the network (which streaming protocol and settings including buffer size and other parameters)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Hello,
I have been working with video streaming using ffmpeg in my spare time for several weeks now and I just found out about sunshine.
Sunshine completely blows out of the water absolutely anything I have been trying to do in terms of latency and I would like to know how you do it ! I have not been able to break 350ms latency at any time streaming with ffmpeg.
My setup is a windows PC streaming to a raspberry pi.
My ultimate goal is creating four "indirect displays" (like space desk or the amyuni driver or IddSampleDriver) and stream that video to two Raspberry Pi 4 with each two 1680x1050 monitors.
I would like to know, how does sunshine use ffmpeg to capture the desktop and send it out to the network so quick ?
Is everything needed to do this already inside ffmpeg ? If so what would be an equivalent command line that would setup ffmpeg the same way ?
So I guess I want to know,
Thanks !
Beta Was this translation helpful? Give feedback.
All reactions