Gstreamer 264 problem

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

Gstreamer 264 problem

hsteven
     Hello, all,

I am confused with the 264 codec used in gstreamer. When I test the x264enc and ffdec_h264 using the following command:

gst-launch camerasrc ! queue ! video/x-raw-yuv,format=\(fourcc\)I420,width=1280,height=480 ! x264enc ! queue ! ffdec_h264 ! ffmpegcolorspace ! sdlvideosink fullscreen=true

The performance is perfect.

However when I try to save the encoded 264 stream into a file as:

gst-launch camerasrc ! queue ! video/x-raw-yuv,format=\(fourcc\)I420,width=1280,height=480 ! x264enc ! filesink locaton=tmp.264

And I try to play tmp.264 using ffplay, it seems that ffmpeg does not know the format the encoded 264 stream.

In addition, I try to play another 264 stream directly encoded using libx264 on gstreamer, ffdec_h264 seems does not understand the format.

So does any person know this issue? And can I solve the problem?

Thank you so much!

------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Gstreamer 264 problem

Tim-Philipp Müller-2
On Wed, 2010-08-11 at 12:46 -0700, Zixia Huang wrote:

> However when I try to save the encoded 264 stream into a file as:
>
> gst-launch camerasrc ! queue ! video/x-raw-yuv,format=\(fourcc
> \)I420,width=1280,height=480 ! x264enc ! filesink locaton=tmp.264
>
> And I try to play tmp.264 using ffplay, it seems that ffmpeg does not
> know the format the encoded 264 stream.

If you are not embedding the h.264 stream into a container (which is
preferable), you need to use ... ! x264enc byte-stream=true ! ...

 Cheers
  -Tim



------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Gstreamer 264 problem

hsteven
Thanks Tim.

I tried byte-stream=true. Now the saved 264 stream can be played using ffmpeg.

However, it seems that now ffdec_h264 in gstreamer cannot correctly decode the stream from x264enc when byte-stream is set to true.

So my question now becomes how ffdec_h264 can correctly decodes the stream either from x264enc (when byte-stream=true) or from a 264 file encoded using libx264?

Thanks,
Zixia



On Wed, Aug 11, 2010 at 12:57 PM, Tim-Philipp Müller <[hidden email]> wrote:
On Wed, 2010-08-11 at 12:46 -0700, Zixia Huang wrote:

> However when I try to save the encoded 264 stream into a file as:
>
> gst-launch camerasrc ! queue ! video/x-raw-yuv,format=\(fourcc
> \)I420,width=1280,height=480 ! x264enc ! filesink locaton=tmp.264
>
> And I try to play tmp.264 using ffplay, it seems that ffmpeg does not
> know the format the encoded 264 stream.

If you are not embedding the h.264 stream into a container (which is
preferable), you need to use ... ! x264enc byte-stream=true ! ...

 Cheers
 -Tim



------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Gstreamer 264 problem

Tim-Philipp Müller-2
On Wed, 2010-08-11 at 13:24 -0700, Zixia Huang wrote:

> However, it seems that now ffdec_h264 in gstreamer cannot correctly
> decode the stream from x264enc when byte-stream is set to true.

You're not providing a lot of information here. So it can decode it, but
not correctly? In what way does it not work? What pipeline are you
using? Have you tried playbin2?

> So my question now becomes how ffdec_h264 can correctly decodes the
> stream either from x264enc (when byte-stream=true) or from a 264 file
> encoded using libx264?

You might need an h264parse element in your pipeline.

 Cheers
  -Tim



------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel