H264 elementary decode error in avdec_h264

Manoj89 manoj89vcet at gmail.com
Tue Apr 29 04:38:21 PDT 2014


Hi,
    I am using the avdec_h264 decoder to decode the H264 elementary streams
which I get from the application.My pipeline structure is 

  appsrc->avdec_h264dec->videoconvert->ximagesink

I have two issues here 
(i) If I set the capabilities of the appsrc as g_object_set (G_OBJECT
(gdata.appsrc), "caps",
  		gst_caps_new_simple ("video/x-h264",
				     "format", G_TYPE_STRING,"YV12",
				     "width", G_TYPE_INT,1280,
				     "height", G_TYPE_INT,720,
				     "framerate", GST_TYPE_FRACTION, 0, 1,
				     NULL), NULL);
Then I get the "Internal data flow error" in appsrc

(ii) If I dont set appsrc capabilities and simply pass the H264 frames then
I get the following error.

#0  decode_nal_units (buf_size=371, buf=0xa62f45a8 "8W0\261@", h=0xa596fc80,
    parse_extradata=<optimized out>) at libavcodec/h264.c:3871
#1  decode_frame (avctx=0xa62fbc00, data=0xa9b3b820, got_frame=0xa2b7ea98,
avpkt=0xa2b7eadc)
    at libavcodec/h264.c:4217
#2  0xa3d54e89 in avcodec_decode_video2 (avctx=0xa62fbc00,
picture=0xa9b3b820,
    got_picture_ptr=got_picture_ptr at entry=0xa2b7ea98,
avpkt=avpkt at entry=0xa2b7eadc)
    at libavcodec/utils.c:1286
#3  0xa38ae7ae in gst_ffmpegviddec_video_frame
(ffmpegdec=ffmpegdec at entry=0xa9b381e0,
    data=<optimized out>, size=371, frame=frame at entry=0xb1303508,
ret=ret at entry=0xa2b7ed98)
    at gstavviddec.c:1205
#4  0xa38af6f9 in gst_ffmpegviddec_frame
(ffmpegdec=ffmpegdec at entry=0xa9b381e0,
    data=data at entry=0xa62f45a8 "8W0\261@", size=size at entry=371,
got_data=got_data at entry=0xa2b7ed94,
    frame=frame at entry=0xb1303508, ret=ret at entry=0xa2b7ed98) at
gstavviddec.c:1371
#5  0xa38aff48 in gst_ffmpegviddec_handle_frame (decoder=0xa9b381e0,
frame=0xb1303508)
    at gstavviddec.c:1491
#6  0xa3f4994e in gst_video_decoder_decode_frame
(decoder=decoder at entry=0xa9b381e0, frame=0xb1303508)
    at gstvideodecoder.c:2832
#7  0xa3f4c66a in gst_video_decoder_chain_forward
(decoder=decoder at entry=0xa9b381e0,
    buf=buf at entry=0xa64d4688, at_eos=at_eos at entry=0) at
gstvideodecoder.c:1757
#8  0xa3f4df91 in gst_video_decoder_chain (pad=0xa7c1b288,
parent=0xa9b381e0, buf=0xa64d4688)
    at gstvideodecoder.c:2037
#9  0xa3fd6945 in gst_pad_chain_data_unchecked (data=0xa64d4688, type=4112,
pad=0xa7c1b288)
    at gstpad.c:3760
#10 gst_pad_push_data (pad=pad at entry=0xa7c1b150, type=type at entry=4112,
data=data at entry=0xa64d4688)
    at gstpad.c:3990

Tell me whether issue occurs because of h264parser not being included in the
pipeline or if h264parser to be included in the pipeline then tell me why i
should need to do that for elementary streams.Can anybody give clear picture
of how elementary stream can be pushed to appsrc?




--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/H264-elementary-decode-error-in-avdec-h264-tp4666646.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list