Hi experts,
I am writing a video streaming application. I used gstrtpbin for RTP/RTCP packet transmission.
Furthermore, at the sender side, I would like to adapt video encoding parameters according to RTCP receiver report QoS statistics. The sender pipeline is shown below. In the pipeline, identity element is used to probe RTCP packets for QoS statistics.
* .-------. .-------. .-------. .----------. .-------.
* |v4l2 | |x264enc| |h264pay| | rtpbin | |udpsink| RTP
* | src->sink src->sink src->send_rtp send_rtp->sink | port=5000
* '-------' '-------' '-------' | | '-------'
* | |
* | | .-------.
* | | |udpsink| RTCP
* | send_rtcp->sink | port=5001
* .-------. .--------. | | '-------' sync=false
* RTCP |udpsrc | |identity| | | async=false
* port=5005 | src->sink src->recv_rtcp |
* '-------' '--------' '----------'
*/
My question is, what is the best way to send the QoS statistics obtained from identity element to x264enc element (directly or indirectly)?
From the GStreamer manual, it seems that upstream event could be a candidate since it can be used for application-element interaction. And bus is used for application-pipeline interaction. So which one is more suitable here and where can I find similar examples? Thanks in advance.
Regards,
Qin
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel