<br>Hello!<br><br>I want to send an encoded h264 stream over RTP. There are two h264 encoders in gstreamer I found: ffenc_libx264 and x264enc. Both fails.<br><br>The stream encoded by x264enc is rejected by the rtph264pay:<br>
<br> gst-launch v4lsrc device=/dev/video0 ! x264enc ! rtph264pay ! fakesink<br> Setting pipeline to PAUSED ...<br> Pipeline is live and does not need PREROLL ...<br> Setting pipeline to PLAYING ...<br> New clock: GstSystemClock<br>
x264 [warning]: width or height not divisible by 16 (160x120), compression will suffer.<br> x264 [info]: using SAR=1/1<br> x264 [info]: using cpu capabilities: MMX2 SSE2 SSE3 Cache64<br> ERROR: from element /pipeline0/rtph264pay0: The stream is in the wrong format.<br>
Additional debug info:<br> gstrtph264pay.c(673): gst_rtp_h264_pay_handle_buffer (): /pipeline0/rtph264pay0:<br> AVC H264 is not supported yet<br> Execution ended after 182851632 ns.<br> Setting pipeline to PAUSED ...<br>
Setting pipeline to READY ...<br> Setting pipeline to NULL ...<br> x264 [info]: slice I:1 Avg QP:15.62 size: 7192<br> x264 [info]: mb I I16..4: 0.0% 0.0% 100.0%<br> x264 [info]: SSIM Mean Y:0.9969846<br> x264 [info]: kb/s:1438.4<br>
FREEING pipeline ...<br><br>The ffenc_libx264 can't encode from my v4l2src source:<br><br> gst-launch v4l2src device=/dev/video1 ! ffenc_libx264 ! fakesink<br><br> Setting pipeline to PAUSED ...<br> Pipeline is live and does not need PREROLL ...<br>
Setting pipeline to PLAYING ...<br> New clock: GstSystemClock<br> Caught SIGSEGV accessing address (nil)<br> Killed<br><br>Are these problems bugs in the encoders or I am doing something wrong?<br><br>Thanks,<br>Csaba Varró<br>
<br>