Zkoušel jsem kódovat audio stream do AAC s režimem bitové rychlosti proměnné – řídil jsem se radou z Nastavení FFmpeg VBR a v tomto původním příkazu jsem změnil původní možnost -b:a 128k na -q:a 1.3

ffmpeg -channel_layout stereo -i sc2.avs -b:a 128k -ar 24000 -ac 2 sc2.mp4 

Ale přesto jsem získal konstantní zvukový datový tok.

Výstup z MediaInfo:

Audio ID : 2 Format : AAC LC Format/Info : Advanced Audio Codec Low Complexity Codec ID : mp4a-40-2 Duration : 1 min 26 s Duration_LastFrame : -29 ms Bit rate mode : Constant Bit rate : 119 kb/s Channel(s) : 2 channels Channel layout : L R Sampling rate : 24.0 kHz Frame rate : 23.438 FPS (1024 SPF) Compression mode : Lossy Stream size : 1.23 MiB (8%) Default : Yes Alternate group : 1 

Any Video Converter (stará verze 3.5.8), který interně používá FFmpeg, převede stejný vstup do režimu VBR:

Audio ID : 2 Format : AAC LC Format/Info : Advanced Audio Codec Low Complexity Codec ID : mp4a-40-2 Duration : 1 min 26 s Bit rate mode : Variable Bit rate : 75.3 kb/s Maximum bit rate : 142 kb/s Channel(s) : 2 channels Channel layout : L R Sampling rate : 24.0 kHz Frame rate : 23.438 FPS (1024 SPF) Compression mode : Lossy Stream size : 778 KiB (9%) Language : English Encoded date : UTC 2019-12-19 13:30:13 Tagged date : UTC 2019-12-19 13:30:13 

Jak dosáhnout zvukového výstupu VBR?

(Potřebuji to kvůli funkci Dissolve() ve zdrojovém souboru AviSynth produkuje hrozný zvuk pro CBR, zatímco to “ je to příjemné pro zvukový výstup Any Video Converter VBR.)

Odpověď

Acco Při rdingu na wiki je pravděpodobné, že při použití VBR zhoršíte výsledky s výchozím kodérem AAC. Viz: https://trac.ffmpeg.org/wiki/Encode/AAC

Jedním z návrhů by bylo použít libfdk_aac. Druhou možností by bylo demuxovat zvuk, překódovat jej pomocí jiného kodéru a poté tento soubor remuxovat zpět do videa pomocí ffmpeg.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *