【发布时间】:2013-12-16 05:15:38
【问题描述】:
我正在尝试在两个起点之间剪辑 MP3,例如从 10 秒开始到 16 秒结束(时间间隔为 6 秒)。
我正在使用这个命令:
ffmpeg -ss 10 -i input.mp3 -t 6 output.mp3
生成的output.mp3 包含我指定的 6 秒后跟 8 或 9 秒的空音频。我的命令有问题吗?
编辑:
ffmpeg -ss 10 -t 6 -i input.mp3 output.mp3 说-t is not an input option, keeping it for the next output; consider fixing your command line. 并给我一个文件,该文件从 10 秒开始有 8 秒的音频,然后是大约 9 或 10 秒的静音。
ffmpeg -ss 10 -to 16 -i input.mp3 output.mp3 生成的文件长度是原始文件的两倍 - 基本上是相同的音频文件再次重复。\
测试输出:
我使用了 Quicktime,它最后有无声音频。 finder 中输出文件的描述大概是 14 秒。当我使用 VLC 时,它会播放正确的 6 秒并停止,即使它在 VLC 的文件浏览器中的持续时间显示为 14。我的 MPlayer 无法正常工作。我还在 Finder 中做了预览音频,它正确播放了 6 秒然后停止。但 MP3 的圆形导引杆并没有走到尽头。它还说 14 秒而不是 6 秒。
我的目标是通过 REST API 将这个 6 秒的文件流式传输到前端。我希望用户能够正确下载此文件。理想情况下,它不会有不一致的元数据(14 秒而不是 6 秒)。
【问题讨论】:
-
我正在使用此命令修剪音频 30 秒,但它给了我错误。 String[] complexCommnad = { "-i", mAudioPath + ".mp3", "-ss", "0", "-to", "30", "copy", destination.getPath()};
-
无法为“-i”-i 找到合适的输出格式:参数无效