Page 1 of 1

FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 06 Oct 2008 15:27
by Speed666
Hello,
trying to stream a FLV gives me a strange behaviour:

Code: Select all

[00000369] stream_out_transcode stream out debug: creating video transcoding from fcc=`MJPG' to fcc=`FLV1' [00000381] main decoder debug: looking for decoder module: 31 candidates [00000381] avcodec decoder debug: libavcodec initialized (interface 3407872 ) [00000381] avcodec decoder debug: using direct rendering [00000381] avcodec decoder debug: ffmpeg codec (Motion JPEG Video) started [00000381] main decoder debug: using decoder module "avcodec" [00000381] main decoder debug: TIMER module_Need() : 8.793 ms - Total 8.793 ms / 1 intvls (Avg 8.793 ms) [00000382] main encoder debug: looking for encoder module: 8 candidates [00000382] avcodec encoder debug: libavcodec already initialized [00000382] avcodec encoder debug: removing common factors from framerate (flv@0x8243df0) [00000382] avcodec encoder debug: found encoder Flash Video [00000382] main encoder debug: using encoder module "avcodec" [00000382] main encoder debug: TIMER module_Need() : 33.172 ms - Total 33.172 ms / 1 intvls (Avg 33.172 ms) [00000382] main encoder debug: removing module "avcodec" [00000369] stream_out_transcode stream out debug: decoder aspect is 528000:432000 [00000369] stream_out_transcode stream out debug: source pixel aspect is 1.000000:1 [00000369] stream_out_transcode stream out debug: scaled pixel aspect is 1.000000:1 [00000369] stream_out_transcode stream out debug: source 352x288, destination 352x288 [00000369] stream_out_transcode stream out debug: encoder aspect is 528000:432000 [00000383] main filter debug: looking for video filter2 module: 16 candidates [00000383] swscale filter debug: 352x288 chroma: J422 -> 352x288 chroma: I420 with scaling using Experimental [00000383] main filter debug: using video filter2 module "swscale" [00000383] main filter debug: TIMER module_Need() : 3.959 ms - Total 3.959 ms / 1 intvls (Avg 3.959 ms) [00000369] main stream out debug: Filter 'swscale' (0x8242f7c) appended to chain [00000369] stream_out_transcode stream out debug: destination (after video filters) 352x288 [00000382] main encoder debug: looking for encoder module: 8 candidates [00000382] avcodec encoder debug: libavcodec already initialized [00000382] avcodec encoder debug: removing common factors from framerate (flv@0x825e3e0) [00000382] avcodec encoder debug: found encoder Flash Video [00000382] main encoder debug: using encoder module "avcodec" [00000382] main encoder debug: TIMER module_Need() : 17.768 ms - Total 17.768 ms / 1 intvls (Avg 17.768 ms) [00000375] main mux debug: adding a new input [00000375] avformat mux debug: adding input [00000380] main packetizer debug: switching to sync mode [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20831 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20359 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20931 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20855 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20522 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20107 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20785 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 19973 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 18842 [00000379] mjpeg demux debug: discard MIME header: Content-Length: 20205 [00000375] avformat mux debug: writing header Aspect ratio mismatch between encoder and muxer layer [00000375] avformat mux error: could not write header
The problem is here:

Code: Select all

[00000375] avformat mux debug: writing header Aspect ratio mismatch between encoder and muxer layer [00000375] avformat mux error: could not write header
Source is 352x288 and i'm not using any scale option?

Command line used:

Code: Select all

vlc source --sout='#transcode{vcodec=FLV1,vb=1024}:std{access=http,dst=0.0.0.0:1234/stream.flv}' -vvv
Any ideas?

Re: FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 04 Dec 2008 18:30
by MarkusSKY
Was there any resolution to this issue? I have the same error message when transcoding a Osprey 100 Capture Card to FLV.

I have searched the forums and the internet and only found 2 people have the problem but did not see any fixes.

I am using Suse 11.0 and tried vlc 0.9.4, 0.9.6 and 0.9.8a.

Here is the command line I am working with:

vlc -vvv --color v4l2:// :v4l2-dev="/dev/video0" :v4l2-standard=3 :v4l2-input=0 --sout '#transcode{vcodec=FLV1,vb=1000,height=240,width=320}:std{access=http,mux=ffmpeg{mux=flv},dst=0.0.0.0:5554/stream1.flv}'

Here is the response:

[00000448] avcodec encoder debug: found encoder Flash Video
[00000448] main encoder debug: using encoder module "avcodec"
[00000448] main encoder debug: TIMER module_Need() : 7.945 ms - Total 7.945 ms / 1 intvls (Avg 7.945 ms)
[00000448] main encoder debug: removing module "avcodec"
[00000401] stream_out_transcode stream out debug: decoder aspect is 576000:432000
[00000401] stream_out_transcode stream out debug: source pixel aspect is 1.000000:1
[00000401] stream_out_transcode stream out debug: scaled pixel aspect is 1.000000:1
[00000401] stream_out_transcode stream out debug: source 320x240, destination 320x240
[00000401] stream_out_transcode stream out debug: encoder aspect is 576000:432000
[00000401] stream_out_transcode stream out debug: destination (after video filters) 320x240
[00000448] main encoder debug: looking for encoder module: 7 candidates
[00000448] avcodec encoder debug: libavcodec already initialized
[00000448] avcodec encoder debug: removing common factors from framerate
(flv@0x829e450)
[00000448] avcodec encoder debug: found encoder Flash Video
[00000448] main encoder debug: using encoder module "avcodec"
[00000448] main encoder debug: TIMER module_Need() : 3.945 ms - Total 3.945 ms / 1 intvls (Avg 3.945 ms)
[00000410] main mux debug: adding a new input
[00000410] avformat mux debug: adding input
[00000416] main packetizer debug: switching to sync mode
[00000399] main input debug: control type=1
[00000400] main stream output debug: adding a new sout input (sout_input:0x81d8780)
[00000401] stream_out_transcode stream out debug: not transcoding a stream (fcc=`s16l')
[00000410] main mux debug: adding a new input
[00000410] avformat mux debug: adding input
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000410] avformat mux debug: writing header
Aspect ratio mismatch between encoder and muxer layer
[00000410] avformat mux error: could not write header
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)
[00000448] avcodec encoder warning: vbv buffer overflow
(flv@0x829e450)

The stream never occurs. I can stream an flv file as the source input and works fine. I tried changing the aspect ratio parameters but still not get it to work. I can succesfully stream the capture card to a Windows Media Player. So it looks like ffmpeg is the one that is complaining. I just don't know what I need to tell on the command line to make it work correctly.

Thanks to anyone that can help.

--
Mark

Re: FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 23 Dec 2009 17:35
by iroller
Any ideas? I have the same problem with vbv buffer overflow :(

Re: FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 24 Dec 2009 21:54
by kdh
try using this as your transcode command.

Code: Select all

vlc -vvv souce --sout '#transcode{vcodec=h264,vb=1024}:std{access=http,mux=ffmpeg{mux=flv},dst=0.0.0.0:1234/stream.flv}'
whats that do for you?

that seems to work well for me.

Re: FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 24 Dec 2009 21:57
by kdh
markus, mod my above command to suite your needs.

Re: FLV - Aspect ratio mismatch between encoder and muxer layer

Posted: 26 Dec 2009 19:56
by ILEoo
Aspect-ratio mismatch bug has been fixed for long time ago, and vbv underflows don't relate to that issues at all.