GNOME Bugzilla – Bug 744227
Support RECORD | PLAY pipelines
Last modified: 2018-11-03 15:38:12 UTC
Created attachment 296447 [details] [review] rtsp-stream+media: method to distinguish between in and out streams So like i mentioned before in bug https://bugzilla.gnome.org/show_bug.cgi?id=743175 i want to be able to forward streams with the gst-rtsp-server.
Created attachment 351594 [details] [review] proof-of-concept implementation of RECORD | PLAY mode for the same mount point I'm pretty sure it's far from ideal, but at least it's working on my test pipeline. I will be glad to hear some comments to know if I'm going in the right direction and didn't do some obvious mistakes. Thanks.
Sergey, thanks for your patch. If I'm reading your code right you're creating separate rtpbins for play and record - is there a reason for that?
Yes, I've did separate rtpbins for play and record sides. Just thought since on record side and play side we will have different users, it will be better use different rtpbins. Do you think the same could be done with the single rtpbin?
FYI, a little bit improved version of above patch (and some other related) is available on GitHub: https://github.com/RSATom/gst-rtsp-server/commits/master - just don't sure it well enough to post it here...
I think it should be in the same rtpbin, possibly even in the same rtpsession. The RTCP is supposed to be shared AFAIU, or not?
Sorry, can't answer this question. I'm not familiar so well with rtp internals :(
My understanding is that you want to use the same RTPbin only for streams that are meant to be synchronized together, otherwise we shouldn't.
While generally I agree, the problem I see here is that AFAIU there should be a single RTCP stream for this case. With multiple rtpbins you would have multiple.
Maybe it's dumb question, but why it should have single RTCP? Since pipeline inside rtsp server could do some additional job (for example I want show some splash screen when there are no input on record side), there just will be no receiver for rtcp. Other case, if pipeline do some heavy operation (transcoding for example) - there are no any meaning send rtcp to record source. Or maybe I don't understand well purposes of rtcp channel...
Nothing to do with "proxy" really, so renaming the bug :)
https://bugzilla.gnome.org/show_bug.cgi?id=788950 might be of interest here. Without, you create loops in the pipeline graph.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/issues/5.