Flac-Konverter mit ffmpeg

ffmpeg konvertiert zu flac automatisch mit der Samplingtiefe (Bittiefe) und Samplingrate der Quelle.

ffmpeg -i input.mka -c:a flac -hide_banner -y output.flac

Soll die Samplingtiefe (meist 16 Bit) geändert werden, den Parameter

-sample_fmt

nehmen, z. B.

-sample_fmt s16

Die verfügbaren Samplingformate anzeigen

ffmpeg -sample_fmts -hide_banner
name depth
u8      8
s16    16
s32    32
flt    32
dbl    64
u8p     8
s16p   16
s32p   32
fltp   32
dblp   64
s64    64
s64p   64

FLAC downsamplen von 24 bit 96 kHz auf 16 bit 48 kHz

ffmpeg -i in.flac -sample_fmt s16 -ar 48000 -hide_banner -y out.flac

Bei verlustbehafteten Audioformaten, wie z. B. AAC (.mp4) ist der Parameter wirkungslos, da die keine Bitttiefe benutzen. Falls das Flag trotzdem gesetzt ist, wird es vom Audiodecoder ignoriert.

ffmpeg quittiert den Parameter mit der Fehlermeldung

Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!