【问题标题】:ffmpeg clip audio interval with starting and end timeffmpeg剪辑音频间隔与开始和结束时间
【发布时间】: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 找到合适的输出格式:参数无效

标签: audio ffmpeg mp3


【解决方案1】:

我在使用 mp3cut 处理 CBR 和 VBR mp3 文件方面取得了巨大成功。

mp3cut -o output.mp3 -t 00:10-00:16 input.mp3

http://manpages.ubuntu.com/manpages/lucid/man1/mp3cut.1.html

【讨论】:

    【解决方案2】:

    对我来说都是

    ffmpeg -ss 10 -t 6 -i input.mp3 output.mp3
    

    ffmpeg -ss 10 -i input.mp3 -t 6 output.mp3
    

    工作正常,只需 6 秒的音频。这是 mplayer 的输出(最后一行):

    A:   5.8 (05.7) of 6.0 (06.0)  0.5%
    

    还有

    ffmpeg -ss 10 -to 16 -i input.mp3 output.mp3
    

    以同样的方式工作。我使用ffmpeg version 1.2.4。我猜你的 ffmpeg 不知何故“损坏”或输入文件不知何故(在任何一种情况下都报告错误)。

    您可以尝试使用来自portforwardpodcast 的mp3cut 或

    sox input.mp3 output.mp3 trim 10 6
    

    【讨论】:

    • 第一个是-t is not an input option, keeping it for the next output; consider fixing your command line.。第二个产生的结果是原始文件长度的两倍。
    • 哎呀,这些都不适合我。我的 ffmpeg 是 1.2.1,但我在 OSX 上。也许我的输入文件有误,我正在使用带有 --extract-audio --audio-format mp3 选项的 youtube-dl。
    • 如何播放/检查输出文件? exiftool 报告了错误的持续时间(13.90 秒(大约)),但 mplayer、mpg321 和 mpg123 都可以正确播放并显示 6 秒的持续时间。
    • 我使用了 Quicktime,它最后有无声音频。 finder 中输出文件的描述大概是 14 秒。当我使用 VLC 时,它会播放正确的 6 秒并停止,即使它在 VLC 的文件浏览器中的持续时间显示为 14。我的 MPlayer 无法正常工作。我还在 Finder 中做了预览音频,它正确播放了 6 秒然后停止。但 MP3 的圆形导引杆并没有走到尽头。它还说 14 秒而不是 6 秒。
    • 我在 win32 上使用 ffmpeg(建于 2014 年 3 月 7 日)。无法使这些选项起作用。
    【解决方案3】:

    ffmpeg - Trim audio file without re-encoding

    使用 ffmpeg 修剪音频文件而不重新编码。

    修剪从 10 秒开始,到 16 秒结束(总时间 6 秒)

    ffmpeg -i input.mp3 -ss 10 -t 6 -acodec copy output.mp3
    

    从 00:02:54.583 修剪到文件末尾

    ffmpeg -i input.mp3 -ss 00:02:54.583 -acodec copy output.mp3
    

    从 00:02:54.583 开始修剪 5 分钟(300 秒)

    ffmpeg -i input.mp3 -ss 00:02:54.583 -t 300 -acodec copy output.mp3
    

    【讨论】:

      猜你喜欢
      • 2013-08-28
      • 2020-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 2015-09-11
      相关资源
      最近更新 更多