[MEncoder-users] [Q] Problem in autodetecting audio stream format

JongAm Park joshua_park2006-mplayer at yahoo.com
Tue Sep 26 07:41:56 CEST 2006


Hello.

I tried the mencoder to convert a file to another format.

The option I used is like this :

mencoder <input file name> [video codec setting] -vf pp=lb  \
                       -oac mp3lame -lameopts fast:preset=standard -o 
<output file name >

On a Mac, its verbose output is :

==========================================================================
Building audio filter chain for 22050Hz/2ch/s16be -> 0Hz/0ch/s8...

preset=standard

MP3 audio selected
Building audio filter chain for 22050Hz/2ch/s16be -> 22050Hz/2ch/s16le...
-----------------------------------------------------------

So, it detected the input audio stream is signed 16bytes big endian.
However, its filter used is little endian as you can see from the output 
above.

So, the output audio contains full of noises. The filter should be s16be 
instead of s16le.

According to its man page

*format[=bps:f]*
   Select the bytes per sample and the format used for output from the
   filter layer. The option bps is an integer and denotes Bytes per
   sample. The format f is a string containing a concatenated mix of:
   alaw, mulaw or imaadpcm
   float or int
   unsigned or signed
   le or be (little- or big-endian) 

So, I used "-af format=16:sbe"

However it doesn't understand the format part, especially sbe.

Why can't it use the detected big endian audio data, and why can't it 
use the format correctly?
Can anyone please explain it to me?

Thank you very much.





More information about the MEncoder-users mailing list