GstRTPNetCC - GstRTPNetCC Examples

From RidgeRun Developer Wiki



Previous: Evaluating version Index Next: Contact us




The GstRTPNetcc was implemented to provide bandwidth estimations between endpoints, which establish a video streaming session. So these GstRTPNetCC examples are run between two devices:

  • Tegra TX2 and X86 machine

For testing purposes, the user can check the bandwidth estimation enabling the GStreamer to debug as follows:

--gst-debug=*rtpnetcc*:5

This will show these messages:

0:00:06.030153821  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 4911440
0:00:07.031362296  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 5304355
0:00:08.032595627  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 5728703
0:00:09.033733606  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 6186999
0:00:10.034948811  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 6681958
0:00:11.036130230  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 7216514
0:00:12.037276227  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 7216514
0:00:13.038383955  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 7339660
0:00:14.039541496  4856      0x23b2920 DEBUG               rtpnetcc gstrtpnetcc.c:379:gst_rtp_netcc_update_bitrate:<rtpnetcc0> Target bitrate 7339660

VP8 Video Streaming

  • Tegra TX2
PORT=5000
HOST=192.168.1.5

gst-launch-1.0 nvcamerasrc ! "video/x-raw(memory:NVMM),width=(int)640,height=(int)480,format=(string)I420,framerate=(fraction)30/1" ! omxvp8enc ! rtpvp8pay ! udpsink sync=false host=$HOST port=$PORT
  • X86 Machine
PORT=5000

gst-launch-1.0 udpsrc port=5023 ! "application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)VP8,payload=(int)96" ! rtpnetcc ! rtpvp8depay ! decodebin ! xvimagesink --gst-debug=*rtpnetcc*:5

H264 Video Streaming

  • Tegra TX2
PORT=5000
HOST=192.168.1.5

gst-launch-1.0 nvcamerasrc ! "video/x-raw(memory:NVMM),width=(int)640,height=(int)480,format=(string)I420,framerate=(fraction)30/1" ! omxh264enc ! rtph264pay ! udpsink sync=false host=$HOST port=$PORT
  • X86 Machine
gst-launch-1.0 udpsrc port=5023 ! "application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264,packetization-mode=(string)1,profile-level-id=(string)424015,sprop-parameter-sets=(string)\"Z0JAKJWgKA9k\\,aM48gA\\=\\=\",payload=(int)96,ssrc=(uint)4156978030,timestamp-offset=(uint)3522887598,seqnum-offset=(uint)24203,a-framerate=(string)30" ! rtpnetcc ! rtph264depay ! decodebin ! xvimagesink -v --gst-debug=*rtpnetcc*:5


Previous: Evaluating version Index Next: Contact us