如何挽救巨大的、可能已损坏的 AIFF 文件?

问题描述 投票:0回答:2

由于 Sound Track Pro 故障,我的 AIF 文件有问题。 它在 QuickTime Player 中播放良好,长度约为 1 小时 50 分钟。 但是:

  • 它的大小为 3.81GB,而(我相信)AIF 文件应该只有 2GB 或更小。
  • iTunes 拒绝播放。
  • 当我尝试导入时,Logic Pro 给出错误消息“
    party-mix.aif is empty!
    ”。
  • VLC会打开并播放文件,但1小时后结束(我猜这是2GB点)。
  • 尝试使用 ffmpeg 转码到 Ogg 会出现错误,

    [aiff @ 0x102051000] max_analyze_duration 5000000 reached at 5001333

    ....

    [pcm_s16be @ 0x10205a200] invalid PCM packet

    但是生成的文件会在 VLC 中播放直到 1 小时,然后结束。

  • 尝试使用 ffmpeg 转码为 MP3 会得到与 Ogg 类似的结果,只是通道数必须从 6 个减少到 2 个。这很奇怪,因为它是一个立体声项目 - 额外的 4 个通道从何而来。
  • 有几个地方的音频速度明显加快。

我的问题:如何将这个弗兰肯斯坦怪物转码为MP3而不丢失后半部分? 我运行的是 Mac OS 10.6.8。

audio ffmpeg quicktime vlc transcoding
2个回答
1
投票

将源文件分成两个目标文件

这可能并不像听起来那么痛苦。 AIFF 是一种非常简单的格式,它应该很容易使用自定义代码甚至某些 *nix cli 工具在数学确定的边界上进行解析。

  • 正确解析文件:编写一个简单的AIFF解析器,它可以读取大于2GB的AIFF文件的帧(我理解为AIFF世界中的“块”)。 决定要剪切的帧,并创建两个文件。
  • Hacky cut-n-tweek: 只要您精确地在帧边界上剪切文件,您就应该能够播放第二半剪辑。 也许你需要预先填充一些标题数据。

探索 AIFF 格式时有用的工具:


0
投票

我的 AIFF 文件已损坏,但无法打开它。

这就是解决方案:

打开一个叫Audacity的软件(在线免费),进入: 文件>导入>原始数据...

在那里,您需要知道原始数据的规格,以便它可以正确编码。就我而言,我知道我的文件是 48k Hz、24 位 PCM.. 所以我必须使用其他变量并发现我的文件字节顺序是大端字节序。效果非常好!

从那里您可以将其导出为您喜欢的格式。

© www.soinside.com 2019 - 2024. All rights reserved.