Jump to content

Streaming between 2 computers on my network, I can get low latency with ffmpeg; from the source machine, I run with server source `srt://<SERVER_IP>:10000?latency=1500000,mode=caller`, and the client (receiver) runs with receiver `srt://<CLIENT_IP>:10000?mode=listener`.  Using this, you can tune the 'latency' option, but for some reason I've found that I can't actually get it to run reliably for any period of time before I get errors like `SRT:RcvQ:w1!W:SRT.qr: @76333983:No room to store incoming packet: offset=0 avail=0 ack.seq=263997771 pkt.seq=263997771 rcv-remain=8191 drift=0` (indicating that the buffer's stuffed). Could just be my potato client computer though. 

 

With the above server options I can stream ffmpeg to ffmpeg with latency=150 (microseconds) and it doesn't seem to add any additional latency (measuring delay by the file output position in ffmpeg).  If I use something like ffplay then it adds latency via a buffer.  How are you measuring latency delay here?

If I have to explain every detail, I won't talk to you.  If you answer a question with what can be found through 10 seconds of googling, you've contributed nothing, as I assure you I've already considered it.

 

What a world we would be living in if I had to post several paragraphs every time I ask a question.

Link to post
Share on other sites

1 hour ago, Yuri Fury said:

Streaming between 2 computers on my network, I can get low latency with ffmpeg; from the source machine, I run with server source `srt://<SERVER_IP>:10000?latency=1500000,mode=caller`, and the client (receiver) runs with receiver `srt://<CLIENT_IP>:10000?mode=listener`.  Using this, you can tune the 'latency' option, but for some reason I've found that I can't actually get it to run reliably for any period of time before I get errors like `SRT:RcvQ:w1!W:SRT.qr: @76333983:No room to store incoming packet: offset=0 avail=0 ack.seq=263997771 pkt.seq=263997771 rcv-remain=8191 drift=0` (indicating that the buffer's stuffed). Could just be my potato client computer though. 

 

With the above server options I can stream ffmpeg to ffmpeg with latency=150 (microseconds) and it doesn't seem to add any additional latency (measuring delay by the file output position in ffmpeg).  If I use something like ffplay then it adds latency via a buffer.  How are you measuring latency delay here?

I run in OBS over the internet, normally around 250 miles between the PCs, I have the caller set at srt://ServerIP:Port with the listener set at srt://ServerIP:Port?mode=listener. Experienced no issues like that but have OBS network buffers set to 0MB. Haven't attempted adding a latency to the address, maybe something to try.  Measuring Latency in stream delay on preview from time stream received to what's actually happening to happen.

Link to post
Share on other sites

29 minutes ago, Redtigercod4 said:

Measuring Latency in stream delay on preview from time stream received to what's actually happening to happen

Depending on the streaming service you're using, there may also be an option for the streamer to enable 'low-latency' mode to reduce latency, and there may be an option for the viewer also to enable 'low-latency mode' also

If I have to explain every detail, I won't talk to you.  If you answer a question with what can be found through 10 seconds of googling, you've contributed nothing, as I assure you I've already considered it.

 

What a world we would be living in if I had to post several paragraphs every time I ask a question.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×