gpt4 book ai didi

ios - 是否可以编辑视频音轨的音量和平移并使用该信息导出到独立视频?

转载 作者:可可西里 更新时间:2023-11-01 04:02:12 26 4
gpt4 key购买 nike

我正在我的应用程序中录制视频。录制视频时,我想让用户使用更改音量和平移音轨的控件来预览录制内容。为了预览视频录制,我使用了 AVMutableComposition 并从录制文件的本地 URL 添加 AVAsset,并将 Composition 用作 AVPlayerItem 通过 AVPlayer 播放。我这样做是因为我想向合成中的音轨添加音量和平移“过滤器(?)”,然后导出整个合成。

回放工作完美,但我找不到任何方法来添加此类“过滤器”(更改音量或 AVAssetTrack 的声像或此级别上的任何其他内容)。到目前为止,我只能使用以下方法更改播放音量:

 NSMutableArray *audioParam = [NSMutableArray array];   
AVMutableAudioMixInputParameters *audioInputParams = [AVMutableAudioMixInputParameters audioMixInputParameters];
[audioInputParams setVolume:volumeSlider.value atTime:kCMTimeZero];
[audioInputParams setTrackID:[audioTrack trackID]];
[audioParam addObject:audioInputParams];

AVMutableAudioMix *audioMix = [AVMutableAudioMix audioMix];
[audioMix setInputParameters:audioParam];

[playerItem setAudioMix:audioMix];

在这里,我相信我只是改变了合成的表现形式,而不是合成本身。当用户对音量和平移水平感到满意时,他应该单击“接受”,然后我会将合成导出到一个独立的电影文件(即,如果我更改音量,它不会对合成产生任何影响播放器的这种方式)。

有没有办法将源电影添加到 AVComposition,更改音频的音量/声像,并使用新信息导出到新文件?

如前所述,我也在寻找这个来平移音频立体声或单声道音轨,但我根本找不到任何东西。 Apple Docs 中唯一提到的平移是通过使用 AVAudioPlayer,我不能使用它,因为这是一个视频文件。此外,正如我用音量解释的那样,在播放器中更改 pan 也没有任何好处。真的没有办法通过 AVAssetAVAssetTrackAVComposition 或任何与此相关的方式来改变平移吗?

我在想我可能必须通过降低立体声音轨每个 channel 的音量来手动执行此操作,但我也找不到任何方法来执行此操作。

简单地说;我正在寻找一种方法来更改单个视频的音轨的音量和平移(左/右)级别(最好在预览/播放期间所述视频),然后能够将此视频导出到一个新的视频文件,然后该文件会将这个新的音量和平移信息作为源信息。

示例:

1. 录制视频。

2.预览视频。

3. 将音频声像设置到最左侧(仅在左声道中播放音频),将音量设置为 20%

4.导出带有新信息的视频

5. 如果我现在将这个视频文件上传到互联网,然后有人将它下载到任何设备/计算机上,它只会在左侧扬声器中发出声音,而且音量会很小.

最佳答案

由于您希望将这些参数(音量和平移)应用于您的输出,您可能希望创建一个 AVMutableComposition,然后创建一个 AVAssetExportSession 以按照您的预期将其全部输出。

为了处理平移,我通常会在我正在录制或即将放入 AVMutableComposition 的音频中进行处理,方法是根据需要对任一 channel 的样本进行快速乘法。这取决于您的应用的结构方式,您可以将其放入其中。

要获得音量控制,您可以设置添加到 AVComposition 的每个 AVMutableCompositionTrack 或 AVAssetTrack 的音量,或者您可以将 AVMutableAudioMix 应用于 AVAssetExportSession audioMix 属性。当您执行导出时,它将与所述音频混合一起导出。这将“打印”您的音量更改,因此您不必在播放期间更改它们。

audioMix 很棒,因为它可以让您进行淡入淡出等操作。

关于ios - 是否可以编辑视频音轨的音量和平移并使用该信息导出到独立视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21816215/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com