[Bug 796842] srt: Refactor plugin to support non-blocking SRT APIs
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Mon Aug 6 11:39:59 UTC 2018
https://bugzilla.gnome.org/show_bug.cgi?id=796842
--- Comment #55 from Seungha Yang <pudding8757 at gmail.com> ---
Current status
I'm observing some unexpected behavior of libsrt and I'm doubtful about
srt_sendmsg() API's blocking behavior. Regardless of socket blocking option,
and also regardless of how fast gstreamer is pushing buffer, libsrt returns
srt_sendmsg() immediately.
When a pipeline is configured as "sync disabled" as follows
"videotestsrc ! x264enc key-int-max=30 ! mpegtsmux alignmeng=7 ! srtserversink
uri=srt://localhost:9999 sync=false" I can observe some libsrt log message
which indicates a lot of buffers are dropped by libsrt. Note that the remote
pipeline (srtclientsrc) was configured without "sync disabled".
I guess, libsrt doesn't check sender buffer queue size, but just keep allowing
calling srt_sendmsg(). Instead, the library seems to be dropping timeout'ed
buffers.
Also, when above case, sender side pipeline unloading is delayed until receiver
pipeline is unloaded and/or receiver (srtclientsrc) received all buffers. I
could be a few seconds. Weird :(
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list