是否有任何最佳做法將轉碼輸出文件的大小保持在特定大小以下?Fluent-ffmpeg如何在不丟失任何聲音的情況下減小輸出文件的大小
我需要保持它在< 100 MB,但不知何故我最終輸出文件很大。 問題是,我的(測試)視頻文件是600kb,而生成output.wav 4MB。這與我的預期相去甚遠。
var proc = new ffmpeg({
source: file,
nolog: false
});
proc.addInputOption('-acodec libopus');
format = "wav";
proc.addOptions([
'-f ' + format,
'-ab 192000',
'-ar 16000',
'-vn'
]);
這是我給ffmpeg庫的參數。 我應該改變什麼參數來減小尺寸並保持最大。質量?
你爲什麼要輸出到WAV文件?這將使用原始PCM音頻,這是未壓縮的,這就是爲什麼你會得到如此大的輸出文件。如果你不想重新編碼(即不會失去質量),你難道不能直接複製音頻流並將其寫入單獨的'.opus'文件嗎? – slhck
此外,我真的建議你嘗試先在命令行嘗試這些命令 - 然後明確ffmpeg在做什麼,它選擇哪個編解碼器,實際比特率是什麼等等。只有當你確定正確的命令是什麼,把它翻譯成fluent-ffmpeg。你會得到更好的幫助,詢問ffmpeg命令行問題,而不是一些執行它的庫。 (顯然,除非問題與庫本身有關。) – slhck
@slchk,我僅限於具有特定的擴展名; flac,wav,audio/webm audio/webm; codecs = opus,audio/webm; codecs = vorbis。 我嘗試了其他輸出格式,但結果很大,與wav文件一樣多。 ffmpeg -acodec libopus -i 2.webm -vn output1x.flac我還應該指定什麼來結束一個小文件? – shamaleyte