ffmpeg输出文件不同

问题描述:

以下代码输出不同的文件。为什么?ffmpeg输出文件不同

我同时使用了diff命令和cmp,这两个命令说明它们在字节15处开始有所不同。我还尝试将参数从从'ogg'更改为'mp3'。相同的结果。

ffmpeg('./original/test.mp3') 
    .toFormat('ogg') 
    .on('error', function(error, stdout, stderr) 
    { 
     console.log('Cannot process file: \n' + error); 
    }) 
    .output('./tmp_a/' + filename) 
    .output('./tmp_b/' + filename) 
    .run(); 

我不能告诉我是否做错了什么或如果这是预期的行为。

OGG格式复用器写入唯一的序列号或ID标签。添加-flags +bitexact将其设置为零。

+0

哦好吧,所以ffmpeg只是为每个output()调用重新执行算法。 我试着在'toFormat()'之前添加'inputOptions('-flags + bitexact')',但是这些文件仍然不同。你的解释仍然是有道理的。 – Kacy

+0

我不知道node.js语法,但它是一个输出选项,而不是输入。 – Mulvya

+1

如果您想对它进行一次编码并保存在多个文件中,则必须使用三通muxer。 – Mulvya