[gst-devel] Next task: Generate QuickTime output for Cinelerra editing
Stefan Kost
ensonic at hora-obscura.de
Sat Mar 8 17:09:57 CET 2008
Hi Jason,
the ffmux_mov seems to not work well. GStreamer applied for Google Summer of
Code again and one task would be a mov muxer:
http://gstreamer.freedesktop.org/wiki/QuicktimeMP4Muxer
Stefan
Jason L. Buberel schrieb:
> Now that (I think) I have done as much damage as possible to the art of
> creating Ogg-formatted files containing vorbis-encoded audio and
> theora-encoded video (http://www.buberel.org/best.ogg) with a webcam, I
> would now like to capture video + audio to a file format that can be
> edited by Cinelerra.
>
> According to the Cinelerra docs here:
> http://cv.cinelerra.org/docs/cinelerra_cv_manual_en.html#SEC70
>
> The preferred file format is QuickTime-formatted files containing
> MPEG4-encoded video and MPEG4-encoded audio.
>
> In reviewing the gstreamer documentation, I found that 'ffmux_mov'
> should be able to mux those two inputs:
>
> ffmux_mov: audio/mpeg
> ffmux_mov: rate: [ 8000, 96000 ]
> ffmux_mov: channels: [ 1, 2 ]
> ffmux_mov: mpegversion: 4
> [snip]
> ffmux_mov: video/mpeg
> ffmux_mov: width: [ 16, 4096 ]
> ffmux_mov: height: [ 16, 4096 ]
> ffmux_mov: framerate: [ 0/1, 2147483647/1 ]
> ffmux_mov: mpegversion: 4
> ffmux_mov: systemstream: false
>
> After reviewing the set of audio and video codecs, it looked like I
> should be using:
>
> ffenc_mpeg4: video/mpeg
> ffenc_mpeg4: width: [ 16, 4096 ]
> ffenc_mpeg4: height: [ 16, 4096 ]
> ffenc_mpeg4: framerate: [ 0/1, 2147483647/1 ]
> ffenc_mpeg4: mpegversion: 4
> ffenc_mpeg4: systemstream: false
>
> and for the audio there seems to be a single option:
>
> faac: audio/mpeg
> faac: mpegversion: { 4, 2 }
> faac: channels: [ 1, 6 ]
> faac: rate: [ 8000, 96000 ]
>
>
> But when I run a test command to validate just the audio pathway, the
> file that is generated cannot be played back in xine or mplayer. The
> error message produced seems to indicate that the problem is with the
> quicktime file format and header information:
>
> > gst-launch-0.10 -v alsasrc device="hw:1,0" !
> audio/x-raw-int,rate=16000,channels=1,depth=16 ! faac bitrate=16000
> name=aenc ! ffmux_mov name=mux ! filesink location=out.mov
>
> See: http://www.buberel.org/qt-audio.mov
>
> > mplayer out.mov
> Playing out.mov.
> ISO: File Type Major Brand: Original QuickTime
> MOV: missing header (moov/cmov) chunk! Maybe broken file...
> ISO: File Type Major Brand: Original QuickTime
> MOV: missing header (moov/cmov) chunk! Maybe broken file...
> libavformat file format detected.
> LAVF: no audio or video headers found - broken file?
>
> The debug output from the gstreamer encoding command is:
>
> Setting pipeline to PAUSED ...
> /pipeline0/alsasrc0.src: caps = audio/x-raw-int, endianness=(int)1234,
> signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)16000,
> channels=(int)1
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstAudioSrcClock
> /pipeline0/capsfilter0.src: caps = audio/x-raw-int,
> endianness=(int)1234, signed=(boolean)true, width=(int)16,
> depth=(int)16, rate=(int)16000, channels=(int)1
> /pipeline0/capsfilter0.sink: caps = audio/x-raw-int,
> endianness=(int)1234, signed=(boolean)true, width=(int)16,
> depth=(int)16, rate=(int)16000, channels=(int)1
> /pipeline0/aenc.sink: caps = audio/x-raw-int, endianness=(int)1234,
> signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)16000,
> channels=(int)1
> 0:00:00.441527000 19778 0x80698c0 DEBUG faac
> gstfaac.c:366:gst_faac_configure_source_pad:<aenc> allowed caps:
> audio/mpeg, mpegversion=(int)4, channels=(int)[ 1, 2 ], rate=(int)[
> 8000, 96000 ]
> 0:00:00.442645000 19778 0x80698c0 DEBUG faac
> gstfaac.c:413:gst_faac_configure_source_pad:<aenc> retrieving decoder info
> 0:00:00.443035000 19778 0x80698c0 DEBUG faac
> gstfaac.c:427:gst_faac_configure_source_pad:<aenc> src pad caps:
> audio/mpeg, mpegversion=(int)4, channels=(int)1, rate=(int)16000,
> codec_data=(buffer)0c08
> /pipeline0/aenc.src: caps = audio/mpeg, mpegversion=(int)4,
> channels=(int)1, rate=(int)16000, codec_data=(buffer)0c08
> /pipeline0/mux.audio_0: caps = audio/mpeg, mpegversion=(int)4,
> channels=(int)1, rate=(int)16000, codec_data=(buffer)0c08
>
> Is there something about the ffmux_mov that I am missing? There are no
> options that I can give it (besides 'name').
>
> Thanks,
> jason
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list