问题标签 [avcapturemoviefileoutput]

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 回答
524 浏览

ios - 在 SDAVAssetExportSession 中旋转视频

我目前用于SDAVAssetExportSession将视频连接在一起并在过渡之间应用淡入淡出。

但是,当我用前置摄像头录制视频时,SDAVAssetExportSession没有考虑前置视频的旋转(180 度),因此我得到了一个拼接在一起的视频,其中的部分是颠倒的。

SDAVAssetExportSession仅旋转这些正面资产以使输出的视频全部处于正确方向的最佳方法是什么?

编辑:

我目前正在通过AVCaptureMovieFileOutput.

0 投票
1 回答
2996 浏览

swift - 如何快速更改 AVCaptureMovieFileOutput 的方向

我尝试了几种不同的方法,但它们对我没有帮助。我想在 AVFoundation 中更改视频方向。我怎样才能做到?

我试过了,我可以找到输出,但我不知道如何改变方向

0 投票
1 回答
2096 浏览

ios - 使用 AVCaptureMovieFileOutput 保存视频后不播放音频

我尝试使用以下代码从 iphone 相机保存视频文件:

到目前为止,这是可行的,但是当我使用 AVPlayer 播放视频时,没有播放声音。如果我用 Quiktime 尝试视频,同样的问题,没有声音。但是当我用 VLC 打开它时,声音会播放。

作为参考,这是我播放视频的方式,该视频运行但没有声音:

我检查了视频ffprone

我不知道出了什么问题,你能帮帮我吗?

谢谢

0 投票
0 回答
1032 浏览

ios - 录制视频时更改摄像头位置前/后

我的相机正在完美地拍照和录制视频(使用AVCaptureMovieFileOutput),并且我能够正常地将相机位置切换到前/后。然而,就像在 Instagram、Snapchat 和无数其他应用程序中一样,我还希望允许用户在录制视频时切换相机位置。

似乎为了能够实现这样的事情,我需要使用它,AVCaptureVideoDataOutput因为它可以处理不同的帧,但我并没有真正让它工作。一切都很好,但是在我完成视频后,它就无法播放,并且该方法似乎没有结果 URL captureOutput。这是我的代码:

PS1:这里是类似问题的参考

录制视频时更改相机捕获设备

同时 AVCaptureVideoDataOutput 和 AVCaptureMovieFileOutput

PS2:抱歉上面的代码缩进不好。代码完美缩进,但不知何故,当我在这里发布大量代码时,它失去了缩进。

0 投票
0 回答
319 浏览

avfoundation - AVFoundation:使用 AVCaptureMovieFileOutput 和 AVCaptureStillImageOutput 捕获会话具有滞后的快门声音

我的应用程序中有一个相机视图,用户可以在其中拍摄静止图像或视频录制。在我的 viewDidLoad 中,我将 AVCaptureMovieFileOutput 和 AVCaptureStillImageOutput 添加到单个捕获会话中。

该功能工作正常,但是当您使用 AVCaptureStillImageOutput.captureStillImageAsynchronouslyFromConnection 拍摄静止图像时,快门声音非常缓慢且滞后(似乎分成两个单独的声音)。我试过删除moviefileoutput,没有它也能正常工作。问题是,AVFoundation 的 Apple 开发人员文档表明,将这两个输出添加到单个会话中很好:( https://developer.apple.com/library/ios/documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/04_MediaCapture。 html )

我尝试仅在单击拍摄照片/视频按钮时添加相应的输出,但似乎曝光和焦点没有时间调整,因为图像非常暗,并且视频有第二个或所以一开始你会看到相机在调整。

我尝试过 captureSession.addOutputWithoutConnections,但是在按下记录按钮时很难添加连接。

我想知道是否有人有任何解决方案?同样,问题只是声音,而不是功能。我看过这篇关于关闭声音的帖子:AVFoundation,如何在 captureStillImageAsynchronouslyFromConnection 时关闭快门声音?

0 投票
1 回答
1170 浏览

swift - iOS - Swift - 录制达到最大允许长度时的一些音频

我在 Swift 中实现了一个录像机,作为 iOS 应用程序的一部分,我将视频输出的 maxRecordedDuration 设置为 4 秒(每秒 30 帧):

当用户开始录制时,可能会发生两种情况:

  1. 用户决定在达到最大录制持续时间之前停止录制。
  2. 在用户停止视频录制之前达到最大录制持续时间。

在这两种情况中的任何一种情况下

将被触发,因为它们是 的一部分AVCaptureFileOutputRecordingDelegate,它负责响应录制视频文件过程中发生的事件(对应于 Apple 文档)。

视频输出在用户场景 1 中完全完美。但是,在用户场景 2 中,视频输出缺少一些音频位。换句话说,在视频结束时,视频仍在播放而没有声音。

我知道当达到最大录制持续时间时,func captureOutput( captureOutput: AVCaptureFileOutput!, didFinishRecordingToOutputFileAtURL outputFileURL: NSURL!, fromConnections connections: [AnyObject]!, error: NSError! )会引发以下错误:

错误域=AVFoundationErrorDomain 代码=-11810 “录制已停止” UserInfo={AVErrorTimeKey=CMTime: {120/30 = 4.000}, AVErrorRecordingSuccessfullyFinishedKey=true, NSLocalizedDescription=录制已停止, NSLocalizedFailureReason=录制已达到最大允许长度。, NSUnderlyingError=0x175324c0 {错误域=NSOSStatusErrorDomain 代码=-16413 "(null)"}}

我在方法的开头添加了一些代码,以检查在抛出该错误时录制是否仍然成功完成:

尽管代码按预期运行,但视频结果最后还是缺少一些音频,如上所述。我想知道是否有办法修复这个错误?

0 投票
1 回答
580 浏览

ios - 如何更改 AVCaptureSession 的音量?

我正在使用AVCaptureSession. 捕捉输入是标准的音频和视频AVCaptureDevice。捕获输出为AVCaptureMovieFileOutput. 如何改变音量?

0 投票
1 回答
535 浏览

macos - 如何保持两个 AVCaptureMovieFileOutput 同步

我有两个相机输入进入 OSX 应用程序,我正在尝试使用 AVCaptureMovieFileOutput 保存它们。他们的视频很快就会不同步。经过最小测试后,它们可以关闭 1 到 5 秒。经过一个小时的测试后,它们将关闭 20 秒。我觉得必须有某种简单的解决方案来保持两个输出同步。我们尝试对会话和输出使用相同的设备,但遇到了同样的问题。我们尝试将 fps 降至 15,但仍然没有运气。

设置输出

开始录制

0 投票
0 回答
281 浏览

ios - AVCaptureMovieFileOutput 和 AVCaptureVideoDataOutput 的输出之间是否存在质量差异?

在捕捉光迹照片的过程中,我注意到对于快速移动的物体,如果我使用来自 AVCaptureVideoDataOutput 的样本缓冲区,与我录制电影并提取帧并运行相同的算法相比,连续帧之间的不连续性会稍微大一些。

如果使用这两种模式,是否存在刷新率/帧率差异?

一位有专业摄影经验的同事声称,在比较照片模式和视频模式下的预览时,即使在苹果的默认相机应用程序中也存在明显的滞后,但这对我来说并不是很明显。

此外,我实际上是以低帧速率(接近最高曝光)捕捉视频

为了结束这些实验,我需要知道是否有任何明确的证据来证实或反驳相同的

0 投票
0 回答
397 浏览

ios - swift iOS使用moviefileoutput实时将CIFilter添加到视频中

我正在尝试通过 CIFilters 滑动以应用于我的实时摄像机,但是我使用的是 movieFileOutput 并且我看到的示例使用了 videoDataOutput。是否可以仅在我的 previewView 上创建 imageView 的子视图?还是需要更多才能获得我想要的过滤器?代码也是 swift 2 只是为了澄清