[gst-devel] X264 RTP streaming

Nicolas Hennion nicolashennion at gmail.com
Fri Nov 27 16:43:01 CET 2009


Hi all,
i currently try to stream an SD video file (res:720x480, fps:24) on a
LAN with the following pipeline:

Serveur (fps=24 and bitrate=2048):
gst-launch -v --gst-debug-level=2 \
        filesrc location="../Vidéos/big_buck_bunny_480p_stereo.ogg" \
        ! queue ! decodebin \
        ! queue ! videoscale method=1 ! video/x-raw-yuv,width=720,height=480 \
        ! queue ! videorate ! video/x-raw-yuv,framerate=24/1 \
        ! queue ! x264enc vbv-buf-capacity=1000 byte-stream=true
bitrate=2048 subme=4 ref=2 bframes=1 b-pyramid=true weightb=true \
        ! queue ! rtph264pay \
        ! queue ! udpsink port=5000 host=192.168.29.150 sync=false async=false

Client:
gst-launch -v --gst-debug-level=2 \
        udpsrc caps="application/x-rtp, media=\(string\)video,
clock-rate=\(int\)90000, encoding-name=\(string\)H264,
payload=\(int\)96" port=5000 \
        ! queue ! gstrtpjitterbuffer latency=3000 \
        ! queue ! rtph264depay \
        ! queue ! ffdec_h264 ! xvimagesink

The stream is received and display but the bitrate between the server
and the client is not constant (between 2 an 3 Mbps).

When i change the configuratino and use the following pipeline on the server:

Serveur (fps=12 and bitrate=1024):
  gst-launch -v --gst-debug-level=2 \
        filesrc location="../Vidéos/big_buck_bunny_480p_stereo.ogg" \
        ! queue ! decodebin \
        ! queue ! videoscale method=1 ! video/x-raw-yuv,width=720,height=480 \
        ! queue ! videorate ! video/x-raw-yuv,framerate=24/2 \
        ! queue ! x264enc vbv-buf-capacity=1000 byte-stream=true
bitrate=1024 subme=4 ref=2 bframes=1 b-pyramid=true weightb=true \
        ! queue ! rtph264pay \
        ! queue ! udpsink port=5000 host=192.168.29.150 sync=false async=false

The stream is received and display (i confirm that the fps is 12) but
the bitrate is allows between 2 an 3 Mbps. I do not understant why the
 bitrate=1024 is not used ?

Any idea ?

Nicolas

Configuration: Client and serveur: Ubuntu 9.04
GStreamer: last version 0.25




More information about the gstreamer-devel mailing list