I tried to mux a mpeg2-ts file with h264video and aac audio.
I used the mpegtsmux in gst-plugin-bad-0.10.9. My pipeline is this : gst-launch -v --gst-debug-level=$dbg \ filesrc location=davincieffect_ntsc.264 \ ! h264parse ! mux. \ filesrc location=davincieffect.aac ! aacparse ! mux. \ mpegtsmux name=mux \ ! filesink location=out_264_for_6446.ts When I played the ts file using mplayer, Only video can be seen. Audio is missing. The following is messages from Mplayer: #################################################################### Playing /home/filesys/opt/gst_dm355/out_264_for_6446.ts. TS file format detected. VIDEO H264(pid=64) AUDIO AAC(pid=65) NO SUBS (yet)! PROGRAM N. 1 FPS seems to be: 29.970030 [VO_SDL] Using driver: x11. ========================================================================== Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264) ========================================================================== ========================================================================== Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding) Too many video packets in the buffer: (1042 in 8399231 bytes). Maybe you are playing a non-interleaved stream/file or the codec failed? For AVI files, try to force non-interleaved mode with the -ni option. FAAD: Failed to initialize the decoder! ADecoder init failed :( ADecoder init failed :( Cannot find codec for audio format 0x4134504D. Read DOCS/HTML/en/codecs.html! Audio: no sound Starting playback... VDec: vo config request - 720 x 480 (preferred colorspace: Planar YV12) VDec: using Planar YV12 as output csp (no 0) Movie-Aspect is 1.50:1 - prescaling to correct movie aspect. VO: [sdl] 720x480 => 720x480 Planar YV12 ################################################################ Hope to get some advice. Thanks Best regards. |
Administrator
|
Does it work with totem or any other gstreamer player ?
On Fri, 2009-03-20 at 03:23 -0700, yangsb wrote: > I tried to mux a mpeg2-ts file with h264video and aac audio. > I used the mpegtsmux in gst-plugin-bad-0.10.9. > > My pipeline is this : > gst-launch -v --gst-debug-level=$dbg \ > filesrc location=davincieffect_ntsc.264 \ > ! h264parse ! mux. \ > filesrc location=davincieffect.aac ! aacparse ! mux. \ > mpegtsmux name=mux \ > ! filesink location=out_264_for_6446.ts > > When I played the ts file using mplayer, > Only video can be seen. > Audio is missing. > > The following is messages from Mplayer: > > > #################################################################### > Playing /home/filesys/opt/gst_dm355/out_264_for_6446.ts. > TS file format detected. > VIDEO H264(pid=64) AUDIO AAC(pid=65) NO SUBS (yet)! PROGRAM N. 1 > FPS seems to be: 29.970030 > [VO_SDL] Using driver: x11. > ========================================================================== > Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family > Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264) > ========================================================================== > ========================================================================== > Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding) > > Too many video packets in the buffer: (1042 in 8399231 bytes). > Maybe you are playing a non-interleaved stream/file or the codec failed? > For AVI files, try to force non-interleaved mode with the -ni option. > > FAAD: Failed to initialize the decoder! > ADecoder init failed :( > ADecoder init failed :( > Cannot find codec for audio format 0x4134504D. > > Read DOCS/HTML/en/codecs.html! > Audio: no sound > Starting playback... > VDec: vo config request - 720 x 480 (preferred colorspace: Planar YV12) > VDec: using Planar YV12 as output csp (no 0) > Movie-Aspect is 1.50:1 - prescaling to correct movie aspect. > VO: [sdl] 720x480 => 720x480 Planar YV12 > > ################################################################ > > Hope to get some advice. > Thanks > Best regards. ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Thanks for you quick reply.
I tried to install a totem player , But failed( My OS is RedHat enterprise as 4 ). I used the mpegdemux instead. My pipeline is like this : ########################################################################## gst-launch -v --gst-debug-level=2 \ filesrc location=/home/opensource/out_264_for_6446.ts \ ! mpegtsdemux name=demux demux. ! audio/mpeg ! queue ! filesink location=test.aac gst-launch -v --gst-debug-level=2 \ filesrc location=/home/opensource/out_264_for_6446.ts \ ! mpegtsdemux name=demux demux. ! video/x-h264 ! queue ! filesink location=test.264 ############################################################################# The result is that I can split the video and audio correctly. So, I believe that the file can be played by gstreamer player.
|
I found another phenomenon.
If I use " Ctrl + c " to break the mux processing before it finished, the ts file I get contains no audio . If I wait until the mux processing finished successfully, the ts file I get does contain audio. So , maybe a little bug of ts muxer.
|
On Wed, Mar 25, 2009 at 4:33 AM, yangsb <[hidden email]> wrote:
When you press ctrl + c to stop the processing (I'm assuming you are using gst-launch), it immediately stops the pipeline without pushing EOS and the resulting file you are muxing can end up in an inconsistent state. A patch[1] to add a new option to gst-launch to force EOS when receiving an interrupt is alerady at bugzilla. If no one is against it, should be applied soon.
-- Thiago Sousa Santos Embedded Systems and Pervasive Computing Lab (Embedded) Center of Electrical Engineering and Informatics (CEEI) Federal University of Campina Grande (UFCG) ------------------------------------------------------------------------------ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Thanks for your advice.
You are right, I do use gst-launch to run the program. I will try your patch as soon as posible. Best regards.
|
Hi , Santos
I tried your patch , but it seems that things doe not change. Still , I can not get the audio with crtl + c . Best regards.
|
Hi , Santos,
Now I believe bug lies in the plugin " h264parse " , by changing the testing pipeline. At first , my pipeline is like : gst-launch -v --gst-debug-level=$dbg \ filesrc location=davincieffect_ntsc.264 \ ! h264parse ! mux. \ filesrc location=davincieffect.aac ! aacparse ! mux. \ mpegtsmux name=mux \ ! filesink location=out_264_for_6446.ts Then I changed the testing pipeline : The first one : gst-launch -v --gst-debug-level=$dbg \ videotestsrc ! video/x-raw-yuv,width=176,height=144,framerate=10/1 ! x264enc \ ! mux. \ filesrc location=davincieffect.aac ! aacparse ! mux. \ mpegtsmux name=mux \ ! filesink location=out_264_for_6446.ts The second one : gst-launch -v --gst-debug-level=$dbg \ filesrc location=test.mov ! qtdemux name=qtdemux demux.video_00 ! queue \ ! mux. \ filesrc location=davincieffect.aac ! aacparse ! mux. \ mpegtsmux name=mux \ ! filesink location=out_264_for_6446.ts Both the pipelines works well .And the ts file can be decoded correctlly by vlc media player. So maybe a bug in h264parse. Hope these to be helpful... FYI: you can take a look at this post : http://www.nabble.com/MPEG-2-TS-Muxing-td17485498.html Best regards.
|
Hi all,
Here is another student intending to apply for Gstreamer in GSoC this year. The mpeg2 ts/ps muxer project is my aim, so I've been following the interesting discussion here in this topic for quite a while :) I just want to supplying a bit more information. If we strip off aacparse instead of the h264parse, like this: gst-launch -v --gst-debug-level=2 \ filesrc location=test.264 \ ! h264parse ! mux. \ filesrc location=test.mp2 ! decodebin \ ! audioconvert ! faac ! mux. \ mpegtsmux name=mux \ ! filesink location=test.ts The product is still having no sound (it's in mplayer; meanwhile VLC prefers not to show the video instead. This is the same as the product of H.264+AAC in my box, an Ubuntu Gutsy.) On the other hand if we replace both of H.264 and AAC with something more "elementary" like m1v and mp2, mpegtsmux is working perfectly. I think there must be some mysterious story going on with h264+mpegtsmux.... On the other hand, aacparse looks less susceptible to be the cause of the bug. To Thiago (or someone familiar with qtmux): Does qtmux support h264+aac? I just couldn't figure out how to make it (maybe it's totally trivial; actually I'm learning hard these days, but not necessarily learning fast:( ) I intended to test if h264+acc is working well in other containers. If yes then we can keep our attention in mpegtsmux, I think. Regards, Lin
|
On Thu, Mar 26, 2009 at 9:40 PM, lyang <[hidden email]> wrote:
Yes, it supports both.
Can't help with that, I have no experience with h264 or mpegts. Maybe you should try to create a file with video only using two different pipelines, but from the same source:
1) Decode h264 and reencode with x264enc and then mux it to a mpegts file. 2) Use h264parse and mux it to a mpegts file After that, inspect the files and look what's different in them. Also, if h264enc has parameters, you should try to reencode using the same configuration that h264parse identifies in the stream.
-- Thiago Sousa Santos Embedded Systems and Pervasive Computing Lab (Embedded) Center of Electrical Engineering and Informatics (CEEI) Federal University of Campina Grande (UFCG) ------------------------------------------------------------------------------ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |