![](/img/trans.png)
[英]Trying to append CVPixelBuffers to AVAssetWriterInputPixelBufferAdaptor at the intended framerate
[英]Append buffers to an AVAssetWriterInputPixelBufferAdaptor *not* chronologically?
我将 CVPixelBufferRefs 附加到连接到 AVAssetWriterInput 的 AVAssetWriterInputPixelBufferAdaptor 以使用 AVAssetWriter 写入文件。
所以,我打电话
[pixelAdaptor appendPixelBuffer:pxbuffer withPresentationTime:someCMTime];
它可以正常工作。
现在,我按顺序执行此操作,因此在 CMTimeZero 处,我添加第一帧,在 0.5 秒时添加另一帧,在 1 秒时再添加一帧,依此类推。
我想知道,我必须按顺序进行,还是也可以随机进行? 为了争论,反过来呢? 比如,先在 1s 处附加一个缓冲区,然后在 0.5s 处,然后在 0s 处?
我问的原因是,我试过了,但它崩溃了,但我不确定它是否崩溃是因为我试图在随机时间(非顺序)追加,或者是否有其他原因(如异步追加) ?
我只在输入告诉我 (readyForMoreMediaData) 时附加在串行调度队列上。
问题是:非顺序追加应该起作用,还是设计上不起作用?
谢谢你,马蒂亚斯
我刚刚收到 Apple 媒体工程师的回答:
“AVAssetWriter 需要按顺序接收帧。”
这清除了它:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.