FFMPEG: flac音频文件的元数据持续时间为0。

4

我有一个FLAC音频文件,其中元数据中的时长信息不正确。这个音频文件的长度是55分钟,但元数据中的时长为0。是否可以使用ffmpeg命令来修复它?

以下是ffprobe的输出:

  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16

FLAC通常在元数据中没有持续时间。您可以从StreamInfo元数据块中的样本计数和采样率计算持续时间。 - greg-449
2
嗨@greg-449,我所有的FLAC文件都有持续时间。你知道我怎么把计算出来的持续时间加入到元数据中吗? - Chognificent
尝试重新混流:ffmpeg -i input.flac -map 0 -c copy output.flac - llogan
嗨@llogan,重新混合后output.flac的持续时间仍然是N/A。 - Chognificent
1个回答

9
FLAC头文件缺失或不完整。重新编码将重新写入头文件:
ffmpeg -i input.flac -c:v copy -c:a flac output.flac

由于FLAC是无损的,因此不会出现任何质量损失。


1
为了搜索方便:这个FFmpeg修复了我手头的一个flac文件,而flac本身无法修复。flac报错:"ERROR: FLAC input has STREAMINFO with unknown total samples which is not supported"。 - olejorgenb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接