问题标签 [avmutablecomposition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2919 浏览

ios - 可变合成,在用帧制作的视频中添加音频时失去方向

我一直在做一个视频处理项目。到目前为止,我成功地过滤了实时摄像机源、捕获静止图像、从帧中录制视频、录制音频,并且最近成功地将音频添加到视频捕获中。

但似乎视频失去了方向 - 它应该顺时针旋转 90 度。我尝试使用 AVmutablevideocomposition,但无论我做什么,我都会收到以下错误:

[__NSArrayM objectAtIndex:]: 索引 0 超出范围为空数组';

似乎exportUrl正在发布或其他什么..我尝试替换exportUrl只是outputURL为了测试它很好..

有什么想法吗?

0 投票
2 回答
6786 浏览

iphone - 从视频文件中提取音频

如何在不使用 FFmpeg的情况下从视频文件中提取音频?

我想使用AVMutableCompositionAVURLAsset解决它。例如从 .mov 到 .m4a 文件的转换。

0 投票
1 回答
1219 浏览

ios - 将音频与视频完美融合

我一直在尝试使用AVMutableCompositionand将音频与视频合并AVExportSession。除了音频和视频源的持续时间不同之外,一切都运行良好。

所以导出的电影有点滞后。无论如何调整或重新定义视频的速率,使其持续时间变得完全等于音频的持续时间?例如,如果音频持续 10 秒,视频持续 9 秒,我想以 9/10 的速度播放视频,所以它们同时结束。b

0 投票
1 回答
1676 浏览

objective-c - 视频录制倒置和 AVMutableComposition 旋转视频的问题

我在录制视频并将所述视频放入合成中时遇到了一个奇怪的问题。如果设备横向向左(左侧的按钮),则视频会倒置录制,然后当它放入合成中时,它会旋转 180 度,使其正面朝上。如果设备面向横向,则视频会正面朝上录制,但随后会在合成中旋转,使其上下颠倒。我不确定是什么原因造成的或如何解决它;我可以强制应用程序仅在左侧横向运行,以便最终产品看起来不错,但这感觉很草率,我更喜欢更好的解决方案。有问题的设备是最新的 iPad,我不确定它在其他设备上是否也有这种行为。

0 投票
0 回答
590 浏览

audio - 当合成中存在音频时,Avplayer 不播放视频

如果我将音频添加到合成中,我一直在努力解决 avplayer 不显示视频资产的问题。

这是现在的代码:

我也尝试过使用playerItem.videoComposition等等avmutablevideocompositioninstruction......但没有运气。

有没有人知道可能导致这种情况的原因?

我会对任何输入、提示、示例等感到满意。

最好的问候,尼诺

0 投票
6 回答
19030 浏览

iphone - AVMutableVideoComposition 以纵向模式捕获的旋转视频

我使用下面的代码在视频上添加图像叠加,然后将新生成的视频导出到文档目录。但奇怪的是,视频被旋转了 90 度。

请帮助,因为我无法以正确的模式导出肖像视频。任何帮助表示赞赏。谢谢你。

0 投票
3 回答
3415 浏览

ios - iOS - 反转视频文件 (.mov)

要求

这听起来有点不同,但这是我想要实现的。我想反向制作电影(.mov)文件。就像我们如何倒带电影文件一样。我还希望保持与我的视频所包含的帧速率相同。

注意:我不只是想以相反的顺序播放视频文件。我想生成以相反顺序播放的新电影文件。

我的探索

我想到了以下步骤来执行相同的操作。

  1. 使用特定帧速率制作大块视频文件AVAssetExportSession
  2. AVMutableComposition使用和将所有这些视频块合并到单个电影文件中AVAssetExportSession
  3. 在合并过程中还将每个文件的音频合并到新的视频文件中。

使用上述步骤,我可以反向实现生成的视频文件,但我有以下问题。

  1. 如果视频持续时间长,则需要大量时间。
  2. 它还消耗大量 CPU 周期和内存来完成此过程。

有没有人有任何其他优化的方式来实现这一目标?任何建议将不胜感激。

0 投票
0 回答
1066 浏览

ios - IOS在视频之间添加过渡

我正在尝试通过合并两个视频来创建视频

在我尝试在视频之间添加过渡之前它可以正常工作

它给了我一个无法播放的视频文件。

编码 :

如果我删除此行: _assetExport.videoComposition = videoComp; 它可以正常工作,但视频之间没有过渡。

编辑:我发现 exportsession 的状态卡在导出上,它永远不会完成,我不知道为什么。

提前谢谢。

0 投票
0 回答
382 浏览

iphone - 在 iOS 中校正视频方向

我正在开发一个视频应用程序,用户可以在其中合并资产库中存在的不同视频。我可以加入视频,但我面临方向问题。例如,如果一个视频是横向右侧,另一个是横向左侧,则第二个视频将被倒置连接。此外,我尝试了 stackExchange 提供的不同代码,但是如果我将这些代码应用于纵向视频,它们可以转换为横向,但在侧面留下黑色边距。

有没有什么方法可以让我选择一个视频插入到我的项目中,首先应该检查它的方向,如果它不是横向的,它应该相应地旋转,最后如果原始视频是纵向的,视频当我们以全屏模式播放视频时,应该像原生播放器一样调整大小。

提前致谢。

0 投票
1 回答
795 浏览

ios - 图层旋转:CGAffineTranslate、CGAffineRotate 和 AVMutableVideoCompositionLayerInstruction

几天来我一直在尝试解决这个问题,显然我无法进行仿射变换。

基本上,我想将电影多次旋转90 度。这里有一个很好的例子:

使用 AVMutableVideoCompositionLayerInstruction 旋转视频

但这仅适用于第一次旋转,而我想将它从纵向旋转到横向,回到纵向,再回到横向。

无论我尝试什么,我都会得到绝对奇怪的结果。不幸的是,即使经过大量阅读,我对仿射变换的理解显然也没有提高。

所以我基本上要求一个算法的布局,它将

  1. 将 AVMutableVideoComposition 的图层旋转 90 度,无论其当前方向如何。
  2. 应用平移以将图层移动到中心。

每次单击按钮时都应该调用它。

但是无论我尝试什么,图层都正确旋转,但是平移正在将图层移出中心。这样做的正确方法是什么?