6

简而言之: 如何在 iOS 中进行时间拉伸和音高转换?

详细地:

我想做什么?

应用程序将向用户显示视频缩略图,以从视频文件中选择一定范围的帧。

我必须将渐变慢 Mo应用于选定的持续时间或视频帧

Ramp Slow Mo:Time Stretching + Pitch shift动态。我必须在 for 循环中改变时间和音调,比如大约 10 次迭代。它只不过是英文字母“U”的行为。所以,我会增加时间和音高并减少它们。

我如何尝试:

  1. 查找用户选择的视频的开始/结束时间
  2. 通过AVFoundation Mutable Composition分别拆分视频和音频。
  3. 对于视频:仅在开始/结束时间之间的持续时间内应用时间拉伸。*没问题* 在里面,它的发生如我所料。
  4. 对于音频:动态进行时间拉伸和音高转换,这也适用于选定的时间范围。我为此使用狄拉克。现在,我想使用 IOS SDK 本身
  5. 将音频和视频后期慢动作合并为文件并存储。

分析:

迄今为止,我发现OpenAl音频单元(单独使用AUVarispeedAUTimePitchTime Rate一起使用)可以提供帮助。拆分视频和音频后,我将使用 OpenAL 或音频单元获得音频URL以继续进行。

我的问题:

  1. 任何人都可以帮助我避免狄拉克(参考项目符号 4)吗?那么如何动态地进行Time Stretching和Pitch shift呢?
  2. 如何*仅针对选定的帧*s(在开始时间和结束时间之间)?
  3. 我不知道如何* AVFoundataion 的* URL与 OpenAL 或音频单元的缓冲区结合起来,在慢动作效果之后,如何最终与 AVFoundation 的视频参考 URL 合并

任何类型的参考或示例代码都有很大帮助。

4

0 回答 0