View Single Post
Old 29th June 2014, 05:07   #8  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Quote:
Originally Posted by zerowalker View Post
Confused, one say you have to force else it thinks it's 16bit, other says it keeps the original state as Avisynth as a demuxer?
And neither statement is wrong, but there are certain assumptions being made.

If you don't tell ffmpeg what to do via -acodec/-c:a, it defaults to acting as a converter based on the output file's extension. So if you output to .wav but don't use -acodec/-c:a, ffmpeg will convert the output to pcm_s16le.

If you tell ffmpeg to use a specific -acodec/-c:a, then it will convert to that format, so long as the output container supports it (it'll complain if it doesn't).

And if the particular -acodec/-c:a you tell ffmpeg to use is copy, then it will copy the samples given to it by AviSynth directly to the output, without converting it.


Part of the assumption here, at least on my part, is that you should be using the codec specifiers any time you process something through ffmpeg. IMO, there's too much that can go awry if you just leave it up to ffmpeg to auto-select a codec to use, so always tell it which one you want. And in normal cases when you don't want ffmpeg to do anything to the audio and just pass it through, you use copy. This is true regardless of whether it's an MKV file or an MP4 file (with any number of lossless or lossy audio streams to select from) or an AviSynth script (that only outputs uncompressed video and audio).
qyot27 is offline   Reply With Quote