ffmpeg duration 负值
时间: 2023-10-06 09:14:12 浏览: 145
ffmpeg的中文文档1
FFmpeg中的duration参数指定了输入文件的持续时间。如果你得到了一个负值的duration,这可能有几种原因:
1. 输入文件没有完整的元数据:某些媒体文件可能没有正确的元数据,导致FFmpeg无法获取正确的持续时间。在这种情况下,你可以尝试使用`-probesize`和`-analyzeduration`参数来增加元数据的读取范围,例如:
```shell
ffmpeg -probesize 100M -analyzeduration 100M -i input.mp4
```
2. 错误的解码器或编码器:使用不兼容的解码器或编码器可能会导致FFmpeg计算持续时间时出现问题。尝试使用`-c:v copy`和`-c:a copy`参数来直接复制视频和音频流,而不进行重新编码,以避免这个问题:
```shell
ffmpeg -i input.mp4 -c:v copy -c:a copy output.mp4
```
3. 输入文件损坏:如果输入文件本身损坏或不完整,可能导致FFmpeg无法正确计算持续时间。在这种情况下,你可以尝试使用其他工具来修复或转码输入文件。
如果以上方法都无法解决问题,你可以提供更多关于输入文件和FFmpeg命令的详细信息,以便我们能够更好地帮助你解决问题。
阅读全文