Problem with TS containing H264 byte-stream

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Problem with TS containing H264 byte-stream

Baby Octopus
Hi,

I have a TS file which I'm trying to decode and the decoded video seems to have patches. So I ran debug pipeline as follows and the issue seems to be in decodebin

This pipeline has issues
gst-launch-1.0 filesrc location=whales_333.ts ! decodebin ! video/x-raw ! filesink whales1.yuv

I split the decodebin as follows and still see the issue
gst-launch-1.0 filesrc location=whales_333.ts ! tsdemux ! h264parse ! avdec_h264  ! video/x-raw ! filesink whales1.yuv

The problem goes off with following change
gst-launch-1.0 filesrc location=whales_333.ts ! tsdemux ! h264parse ! video/x-h264,stream-format=byte-stream ! avdec_h264  ! video/x-raw ! filesink whales1.yuv


And I see decodebin is forcing caps between h264parse and avdec_h264. avdec_h264 can decode both byte-stream and AVC. So naturally, it is best for h264parse to send the byte-stream as it is downstream rather than converting into AVC and sending it

Can someone tell me how to fix this?

~BO
Reply | Threaded
Open this post in threaded view
|

Re: Problem with TS containing H264 byte-stream

Edward Hervey
Hi,

  Are you using current git master ?

  Are you getting any warnings (GST_DEBUG=3) ?

On Wed, 2013-08-14 at 02:31 -0700, Baby Octopus wrote:

> Hi,
>
> I have a TS file which I'm trying to decode and the decoded video seems to
> have patches. So I ran debug pipeline as follows and the issue seems to be
> in decodebin
>
> This pipeline has issues
> *gst-launch-1.0 filesrc location=whales_333.ts ! decodebin ! video/x-raw !
> filesink whales1.yuv*
>
> I split the decodebin as follows and still see the issue
> *gst-launch-1.0 filesrc location=whales_333.ts ! tsdemux ! h264parse !
> avdec_h264  ! video/x-raw ! filesink whales1.yuv*
>
> The problem goes off with following change
> *gst-launch-1.0 filesrc location=whales_333.ts ! tsdemux ! h264parse !
> video/x-h264,stream-format=byte-stream ! avdec_h264  ! video/x-raw !
> filesink whales1.yuv
> *
>
> And I see decodebin is forcing caps between h264parse and avdec_h264.
> avdec_h264 can decode both byte-stream and AVC. So naturally, it is best for
> h264parse to send the byte-stream as it is downstream rather than converting
> into AVC and sending it
>
> Can someone tell me how to fix this?
>
> ~BO
>
>
>
> --
> View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Problem-with-TS-containing-H264-byte-stream-tp4661544.html
> Sent from the GStreamer-devel mailing list archive at Nabble.com.
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problem with TS containing H264 byte-stream

Baby Octopus
Hi,

I have somewhat fixed this without breaking decodebin usecase. Will provide the patch and explanation on bugzilla thread

~BO