3

我想获取我拥有的 QTMovie 并将其导出,其中音频淡入淡出一段预定的时间。我想尽可能在​​ Cocoa 中做到这一点。这部电影可能只有音频。我的研究发现了几种可能性:

  1. 使用更新的音频上下文插入 API。http://developer.apple.com/DOCUMENTATION/QuickTime/Conceptual/QT7-2_Update_Guide/NewFeaturesChangesEnhancements/chapter_2_section_11.html。这似乎是最现代的实现这一目标。

  2. 使用 Quicktime 音频提取 API 提取电影的音轨并对其进行处理,然后将处理后的音频放回电影中,替换原始音频。

我错过了一些更简单的方法吗?

4

1 回答 1

3

Quicktime 有 Tween Tracks 的概念。补间轨道是允许您修改另一组轨道属性(例如音量)的属性的轨道。

请参阅Quicktime 文档中的创建 Tween Track以查看如何使用 Quicktime 音轨的音量执行此操作的示例。

Apple Developer 网站上还有一个更完整的示例,称为qtsndtween

当然,所有这些代码都需要使用 Quicktime C API。如果您可以构建一个仅 32 位的应用程序,您可以分别使用“movie”、“track”或“media”函数从 QTMovie、QTTrack 或 QTMedia 对象获取底层 Quicktime-C 句柄。

希望我们能在 QTKit 的下一个版本中获得 Quicktime C API 的所有功能,无论何时。

于 2008-09-05T14:39:27.097 回答