I have a pipeline I am using to convert an .ogg file to an .mp4. I am
currently using ffenc_mpeg4 to encode the video, and this encoder sets the video format as .mp4v. I need my video to be encoded as AVC so I am trying to use x264enc instead. However every time I try to use x264enc, I get the error "failed to encode stream". Below is a sample pipeline I am using in my converter. Can any one tell my why x264enc is failing to encode the stream? Thank you in advance. gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink location="c:\\video(blah).mp4 _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
You can try using videoparse before x264enc. And use -v option with gst-launch to get some caps related logs.
On Tue, Jun 7, 2011 at 6:33 PM, William Metcalf <[hidden email]> wrote: I have a pipeline I am using to convert an .ogg file to an .mp4. I am currently using ffenc_mpeg4 to encode the video, and this encoder sets the video format as .mp4v. I need my video to be encoded as AVC so I am trying to use x264enc instead. However every time I try to use x264enc, I get the error "failed to encode stream". Below is a sample pipeline I am using in my converter. Can any one tell my why x264enc is failing to encode the stream? Thank you in advance. -- Regards, Sudarshan Bisht _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Running with videoparse did not solve the problem. When I run it
with the -v option, I get the following output.
C:\Users\wmetcalf>gst-launch -v filesrc location="c:\\video(low_res).ogg" ! oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink location="c:\\video(blah).mp4 Setting pipeline to PAUSED ... Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1 /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could not encode stream. Additional debug info: ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: Unexpected x264 header. ERROR: pipeline doesn't want to preroll. /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, width=(int)720, height=(int)400, framerate=(fraction)25/1, stream-format=(string)avc /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 Setting pipeline to NULL ... /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps = NULL Freeing pipeline ... It seems to me like the caps are correct to my understanding. The sink of the decoder is theora, and it outputs raw. FFMPCS takes in raw and ouputs raw, and x264enc takes in raw and outputs h264. Can you see something else that is wrong or is my understanding incorrect? Thank you, William On 6/7/2011 1:31 PM, sudarshan bisht wrote: You can try using videoparse before x264enc. And use -v option with gst-launch to get some caps related logs. _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Tue, 2011-06-07 at 13:42 -0500, William Metcalf wrote:
Hi, > Running with videoparse did not solve the problem. Yes, videoparse is pointless here, you don't need it. > ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could > not encode stream. > Additional debug info: > ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): > gst_x264_enc_header_buf > (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: > Unexpected x264 header. I've seen this "Unexpected x264 header" error mentioned before. It looks at first glance like a windows-specific problem with the x264enc element (or the library). Could you file a bug against gst-plugins-ugly in bugzilla please? A --gst-debug=x264enc:9 debug log might also be helpful (please redirect to a file and attach it to the bug). Cheers -Tim _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
In reply to this post by william.l.metcalf
Try putting in a "queue" after "theoradec". All of my pipelines do
that. Not sure if this is a requirement and would cause this error or not. If your source has audio you might need to deal with this stream as well. I forget the details when not using "gnolin". So something like this... gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux name="demux" .demux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux name="mux" ! filesink location="c:\\video(blah).mp4 .demux ! vorbisdec ! audioconvert ! faac ! .mux Cheers, Matt On Tue, Jun 7, 2011 at 11:42 AM, William Metcalf <[hidden email]> wrote: > Running with videoparse did not solve the problem. When I run it with the > -v option, I get the following output. > > C:\Users\wmetcalf>gst-launch -v filesrc location="c:\\video(low_res).ogg" ! > oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink > location="c:\\video(blah).mp4 > Setting pipeline to PAUSED ... > Pipeline is PREROLLING ... > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = > video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1 > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could not > encode stream. > Additional debug info: > ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): > gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: > Unexpected x264 header. > ERROR: pipeline doesn't want to preroll. > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, > width=(int)720, height=(int)400, framerate=(fraction)25/1, > stream-format=(string)avc > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > Setting pipeline to NULL ... > /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps > = NULL > /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps > = NULL > Freeing pipeline ... > > > It seems to me like the caps are correct to my understanding. The sink of > the decoder is theora, and it outputs raw. FFMPCS takes in raw and ouputs > raw, and x264enc takes in raw and outputs h264. Can you see something else > that is wrong or is my understanding incorrect? > > Thank you, > William > > On 6/7/2011 1:31 PM, sudarshan bisht wrote: > > You can try using videoparse before x264enc. And use -v option with > gst-launch to get some caps related logs. > > > On Tue, Jun 7, 2011 at 6:33 PM, William Metcalf <[hidden email]> > wrote: >> >> I have a pipeline I am using to convert an .ogg file to an .mp4. I am >> currently using ffenc_mpeg4 to encode the video, and this encoder sets the >> video format as .mp4v. I need my video to be encoded as AVC so I am trying >> to use x264enc instead. However every time I try to use x264enc, I get the >> error "failed to encode stream". Below is a sample pipeline I am using in >> my converter. Can any one tell my why x264enc is failing to encode the >> stream? Thank you in advance. >> >> gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux ! >> theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink >> location="c:\\video(blah).mp4 >> _______________________________________________ >> gstreamer-devel mailing list >> [hidden email] >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel > > > > -- > Regards, > > Sudarshan Bisht > > _______________________________________________ > 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 > > gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Tim, I am not exactly sure how to post a bug about gst-plugins-ugly on bugzilla, but below this is the standard output, and the error output of my pipeline if you want to add the bug to bugzilla yourself. Thanks, William Output: Setting pipeline to PAUSED ... Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1 /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could not encode stream. /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, width=(int)720, height=(int)400, framerate=(fraction)25/1, stream-format=(string)avc Additional debug info: ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: Unexpected x264 header. Setting pipeline to NULL ... /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps = NULL Freeing pipeline ... Error Output: ** (gst-launch-0.10:1208): CRITICAL **: file ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' failed ** (gst-launch-0.10:1208): CRITICAL **: file ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' failed ** (gst-launch-0.10:1208): CRITICAL **: file ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' failed ** (gst-launch-0.10:1208): CRITICAL **: file ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' failed 0:00:00.182018000 1208 016C2E20 INFO x264enc .:0::<x264enc0> using SAR=1/1 0:00:00.184018000 1208 016C2E20 INFO x264enc .:0::<x264enc0> using cpu capabilities: MMX2 SSE2Fast SSSE3 Cache64 0:00:00.209021000 1208 016C2E20 INFO x264enc .:0::<x264enc0> profile Main, level 3.0 0:00:00.209021000 1208 016C2E20 WARN x264enc gstx264enc.c:737:gst_x264_enc_header_buf:<x264enc0> error: Unexpected x264 header. ERROR: pipeline doesn't want to preroll. 0:00:00.221022000 1208 006F07D8 LOG x264enc .:0::<x264enc0> frame= 0 QP=10.00 NAL=3 Slice:I Poc:0 I:1125 P:0 SKIP:0 size=783 bytes 0:00:00.222022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> frame I:1 Avg QP:10.00 size: 783 0:00:00.222022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> mb I I16..4: 99.9% 0.0% 0.1% 0:00:00.222022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% 0:00:00.222022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> i16 v,h,dc,p: 96% 0% 4% 0% 0:00:00.222022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 0% 0% 100% 0% 0% 0% 0% 0% 0% 0:00:00.223022000 1208 006F07D8 INFO x264enc .:0::<x264enc0> kb/s:156.60 On 6/7/2011 1:56 PM, Matt Veenstra wrote: Try putting in a "queue" after "theoradec". All of my pipelines do that. Not sure if this is a requirement and would cause this error or not. If your source has audio you might need to deal with this stream as well. I forget the details when not using "gnolin". So something like this... gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux name="demux" .demux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux name="mux" ! filesink location="c:\\video(blah).mp4 .demux ! vorbisdec ! audioconvert ! faac ! .mux Cheers, Matt On Tue, Jun 7, 2011 at 11:42 AM, William Metcalf [hidden email] wrote:Running with videoparse did not solve the problem. When I run it with the -v option, I get the following output. C:\Users\wmetcalf>gst-launch -v filesrc location="c:\\video(low_res).ogg" ! oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink location="c:\\video(blah).mp4 Setting pipeline to PAUSED ... Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1 /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could not encode stream. Additional debug info: ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: Unexpected x264 header. ERROR: pipeline doesn't want to preroll. /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, width=(int)720, height=(int)400, framerate=(fraction)25/1, stream-format=(string)avc /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 Setting pipeline to NULL ... /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps = NULL /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps = NULL Freeing pipeline ... It seems to me like the caps are correct to my understanding. The sink of the decoder is theora, and it outputs raw. FFMPCS takes in raw and ouputs raw, and x264enc takes in raw and outputs h264. Can you see something else that is wrong or is my understanding incorrect? Thank you, William On 6/7/2011 1:31 PM, sudarshan bisht wrote: You can try using videoparse before x264enc. And use -v option with gst-launch to get some caps related logs. On Tue, Jun 7, 2011 at 6:33 PM, William Metcalf [hidden email] wrote:I have a pipeline I am using to convert an .ogg file to an .mp4. I am currently using ffenc_mpeg4 to encode the video, and this encoder sets the video format as .mp4v. I need my video to be encoded as AVC so I am trying to use x264enc instead. However every time I try to use x264enc, I get the error "failed to encode stream". Below is a sample pipeline I am using in my converter. Can any one tell my why x264enc is failing to encode the stream? Thank you in advance. gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink location="c:\\video(blah).mp4 _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel-- Regards, Sudarshan Bisht _______________________________________________ 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_______________________________________________ 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 |
Am 07.06.2011 22:14, schrieb William Metcalf:
> Matt, I have tried finishing the pipeline to account for audio and video just as > you have suggested already and I get the same error. > > Tim, I am *not* exactly sure how to post a bug about gst-plugins-ugly on > bugzilla, but below this is the standard output, and the error output of my > pipeline if you want to add the bug to bugzilla yourself. Its easy: http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer&component=gst-plugins-ugly Stefan > > Thanks, > William > > Output: > > > Setting pipeline to PAUSED ... > Pipeline is PREROLLING ... > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = > video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1 > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = > video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, > pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 > ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: > Could *not* encode stream. > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, > width=(int)720, height=(int)400, framerate=(fraction)25/1, > stream-format=(string)avc > Additional debug info: > ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): > gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: > Unexpected x264 header. > Setting pipeline to NULL ... > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = video/x-raw-yuv, > format=(fourcc)I420, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, > width=(int)720, height=(int)400 > /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL > /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL > /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps = NULL > /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps = NULL > Freeing pipeline ... > > Error Output: > > ** (gst-launch-0.10:1208): CRITICAL **: file > ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' > failed > > ** (gst-launch-0.10:1208): CRITICAL **: file > ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' > failed > > ** (gst-launch-0.10:1208): CRITICAL **: file > ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' > failed > > ** (gst-launch-0.10:1208): CRITICAL **: file > ..\..\..\Source\gstreamer\gst\gstinfo.c: line 470: assertion `category != NULL' > failed > 0:00:00.182018000 1208 016C2E20 INFO x264enc > .:0::<x264enc0> using SAR=1/1 > > 0:00:00.184018000 1208 016C2E20 INFO x264enc > .:0::<x264enc0> using cpu capabilities: MMX2 SSE2Fast SSSE3 Cache64 > > 0:00:00.209021000 1208 016C2E20 INFO x264enc > .:0::<x264enc0> profile Main, level 3.0 > > 0:00:00.209021000 1208 016C2E20 WARN x264enc > gstx264enc.c:737:gst_x264_enc_header_buf:<x264enc0> error: Unexpected x264 header. > ERROR: pipeline doesn't want to preroll. > 0:00:00.221022000 1208 006F07D8 LOG x264enc > .:0::<x264enc0> frame= 0 QP=10.00 NAL=3 Slice:I Poc:0 I:1125 P:0 SKIP:0 > size=783 bytes > > 0:00:00.222022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> frame I:1 Avg QP:10.00 size: 783 > > 0:00:00.222022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> mb I I16..4: 99.9% 0.0% 0.1% > > 0:00:00.222022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% > > 0:00:00.222022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> i16 v,h,dc,p: 96% 0% 4% 0% > > 0:00:00.222022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 0% 0% 100% 0% 0% 0% 0% 0% 0% > > 0:00:00.223022000 1208 006F07D8 INFO x264enc > .:0::<x264enc0> kb/s:156.60 > > > > On 6/7/2011 1:56 PM, Matt Veenstra wrote: >> Try putting in a "queue" after "theoradec". All of my pipelines do >> that. Not sure if this is a requirement and would cause this error or >> not. >> >> If your source has audio you might need to deal with this stream as >> well. I forget the details when not using "gnolin". So something >> like this... >> gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux name="demux" >> .demux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux name="mux" ! >> filesink location="c:\\video(blah).mp4 >> .demux ! vorbisdec ! audioconvert ! faac ! .mux >> >> Cheers, >> Matt >> >> On Tue, Jun 7, 2011 at 11:42 AM, William Metcalf <[hidden email]> wrote: >>> Running with videoparse did not solve the problem. When I run it with the >>> -v option, I get the following output. >>> >>> C:\Users\wmetcalf>gst-launch -v filesrc location="c:\\video(low_res).ogg" ! >>> oggdemux ! theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink >>> location="c:\\video(blah).mp4 >>> Setting pipeline to PAUSED ... >>> Pipeline is PREROLLING ... >>> /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = >>> video/x-theora, width=(int)720, height=(int)400, framerate=(fraction)25/1, >>> pixel-aspect-ratio=(fraction)1/1 >>> /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = >>> video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, >>> pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 >>> /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = >>> video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, >>> pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 >>> /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = >>> video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, >>> pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 >>> ERROR: from element /GstPipeline:pipeline0/GstX264Enc:x264enc0: Could not >>> encode stream. >>> Additional debug info: >>> ..\..\..\..\..\Source\gst-plugins-ugly\ext\x264\gstx264enc.c(737): >>> gst_x264_enc_header_buf (): /GstPipeline:pipeline0/GstX264Enc:x264enc0: >>> Unexpected x264 header. >>> ERROR: pipeline doesn't want to preroll. >>> /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = video/x-h264, >>> width=(int)720, height=(int)400, framerate=(fraction)25/1, >>> stream-format=(string)avc >>> /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = >>> video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)25/1, >>> pixel-aspect-ratio=(fraction)1/1, width=(int)720, height=(int)400 >>> Setting pipeline to NULL ... >>> /GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:src: caps = NULL >>> /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:src: caps = NULL >>> /GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = NULL >>> /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:src: caps = NULL >>> /GstPipeline:pipeline0/GstFFMpegCsp:ffmpegcsp0.GstPad:sink: caps = NULL >>> /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:src: caps = NULL >>> /GstPipeline:pipeline0/GstTheoraDec:theoradec0.GstPad:sink: caps = NULL >>> /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_0dcdfd30: caps >>> = NULL >>> /GstPipeline:pipeline0/GstOggDemux:oggdemux0.GstOggPad:serial_6c22f681: caps >>> = NULL >>> Freeing pipeline ... >>> >>> >>> It seems to me like the caps are correct to my understanding. The sink of >>> the decoder is theora, and it outputs raw. FFMPCS takes in raw and ouputs >>> raw, and x264enc takes in raw and outputs h264. Can you see something else >>> that is wrong or is my understanding incorrect? >>> >>> Thank you, >>> William >>> >>> On 6/7/2011 1:31 PM, sudarshan bisht wrote: >>> >>> You can try using videoparse before x264enc. And use -v option with >>> gst-launch to get some caps related logs. >>> >>> >>> On Tue, Jun 7, 2011 at 6:33 PM, William Metcalf <[hidden email]> >>> wrote: >>>> I have a pipeline I am using to convert an .ogg file to an .mp4. I am >>>> currently using ffenc_mpeg4 to encode the video, and this encoder sets the >>>> video format as .mp4v. I need my video to be encoded as AVC so I am trying >>>> to use x264enc instead. However every time I try to use x264enc, I get the >>>> error "failed to encode stream". Below is a sample pipeline I am using in >>>> my converter. Can any one tell my why x264enc is failing to encode the >>>> stream? Thank you in advance. >>>> >>>> gst-launch filesrc location="c:\\video(low_res).ogg" ! oggdemux ! >>>> theoradec ! ffmpegcolorspace ! x264enc ! qtmux ! filesink >>>> location="c:\\video(blah).mp4 >>>> _______________________________________________ >>>> gstreamer-devel mailing list >>>> [hidden email] >>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel >>> >>> >>> -- >>> Regards, >>> >>> Sudarshan Bisht >>> >>> _______________________________________________ >>> 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 >>> >>> >> _______________________________________________ >> 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 _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |