- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
这可能是个愚蠢的问题,但我才刚刚开始了解媒体格式和 AVFoundation,所以请多多包涵。
我一直在尝试弄清楚 AVCaptureVideoDataOutput 中的 CMSampleBuffer 是否可以包含多个帧。从文档来看,这似乎是可能的,但是,我看到的大多数示例代码似乎都与 CMSampleBuffer 有关,就好像它是一个帧一样。我只是误会了吗?
如果每个缓冲区可以有多个帧,是否可以获取各个帧并确定它是否是关键帧?
谢谢
最佳答案
的确,一个 CMSampleBuffer 可以包含多个样本,其中一个样本是任意数据。在 AVFoundation 中捕获视频时,样本缓冲区将仅包含一个样本。虽然可以包含不止一个,但这在实践中并没有真正的意义。如果您正在为基于视频的应用程序实时处理图像,情况尤其如此。对于音频,它将包含多个样本。您可以使用 CMSampleBuffer.h 中列出的 CM* 函数检查它
关于ios - CMSampleBuffer 中有多少帧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8454963/
在这里,我尝试从照片库中选择视频并将其作为samplebuffer逐帧读取,以便稍后可以裁剪或旋转。但问题是CMSampleBuffer默认旋转。我用于初始化的变量是 var asset:AVAss
我正在尝试从 CMSampleBuffer 访问样本以进行进一步处理(主要是视觉处理),这是我的代码: func captureOutput(_ output: AVCaptureOutput, d
这可能是个愚蠢的问题,但我才刚刚开始了解媒体格式和 AVFoundation,所以请多多包涵。 我一直在尝试弄清楚 AVCaptureVideoDataOutput 中的 CMSampleBuffer
我通过以下方式从我的相机获取帧: func captureOutput(_ output: AVCaptureOutput, didOutput sampleBuffer: CMSampleBuffe
我们的应用程序使用 AVFoundation 来捕获视频,并使用其样本缓冲区显示、操作和导出视频。我试图了解 CMSampleBufferGetPresentationTimeStamp(_:) CM
我在从 AVCaptureSession 相机中的 CMSampleBuffer 释放内存时遇到问题。这是我设置捕获 session 的代码。如果我处置 imageDataSampleBuffer,应
我正在尝试获取样本缓冲区中的图像元数据,以下是代码片段: stillImageOutput.CaptureStillImageAsynchronously(requiredConnection,(CM
我想通过网络连接发送视频流的帧,所以我实现了 AVCaptureVideoDataOutputSampleBufferDelegate 函数: func captureOutput(_ output:
我想修改CMSampleBuffer的内容,然后用AVAssetWriter/AVAssetWriterInput写入文件。 我这样做的方法是创建一个 Core Graphics 位图上下文,然后在其
使用AVCaptureAudioDataOutput时,CMSampleBuffer中存储的数据是什么?它通过委托(delegate)方法 –captureOutput:didOutputSample
我使用 AVAssetWriter 和 CMSampleBuffer 数据(来自视频、音频输入)录制视频(.mp4 文件)。 在录制时我想处理帧,我正在将 CMSampleBuffer 转换为 CII
我在 iOS 中为群组创建了一个视频聊天应用程序。我一直在寻找一些方法来分别控制不同参与者的音量。我找到了使用 RemoteAudioTrack 中的 isPlaybackEnabled 静音和取消静
我正在尝试创建由 AVCaptureAudioDataOutputSampleBufferDelegate 中的 captureOutput 返回的 CMSampleBuffer 副本. 我遇到的问题
我正在尝试创建 CMSampleBuffer 的副本,由 AVCaptureVideoDataOutputSampleBufferDelegate 中的 captureOutput 返回。 由于 CM
我从 ARSessionDelegate 得到一个 CVPixelBuffer: func session(_ session: ARSession, didUpdate frame: ARFrame
我试图从使用 AVFoundation 捕获的图像中获取曝光时间.当我按照 2010 年的 WWDC 指令从 CMSampleBuffer 检索有用的图像元数据时像这样: -(void)capture
我有一个附加到 AVPlayerItem 的 AudioTapProcessor。 这将调用static void tap_ProcessCallback(MTAudioProcessingTapRe
我想使用 GPUImageView 输出从 AVCaptureVideoDataOutputSampleBufferDelegate 接收到的 CMSampleBuffer。所以,基本上,我不希望 G
我正在使用同时录制音频和视频的外部摄像头。 我的应用程序接收具有以下结构的 AAC 格式的音频: struct AudioPacket { let timestamp: TimeInterval
我正在使用框架 (MoodMe) 来检测 iPhone 相机上的人脸,我需要将图像或帧传递给 MoodMe 实例。 我已将相机输出转换为 UIImage,但框架未检测到任何人脸。 (我觉得) 所以我想
我是一名优秀的程序员,十分优秀!