AVAssetWriter多个会话和状态属性
我正在尝试与AVAssetWriter创build多个串行写入会话。 一旦我成功完成一个(在完成写入之后)状态设置为2(AVAssetWriterStatusCompleted)。
试图创build另一个会话,我打电话startWriting,但我得到的错误:
[AVAssetWriter startWriting] cannot call method when status is 2
似乎我不能创build一个写作会议,除非我configuration的东西。 我是否必须重新创buildAVAssetWriter? 我一定错过了一些东西,文档没有帮助。
谢谢。
作者完成后不再可用。 你必须创build一个新的。 从文档:
您只能使用一个给定的AVAssetWriter实例写入一个文件。 如果要多次写入文件,则每次都必须使用AVAssetWriter的新实例。
我有一个应用程序,我使用两个AVAssetWriters。 我创build了两个作家,一次只有一个是活跃的。 当达到一定的时间增量时,我将激活的写入器推到GCD队列上以完成和重新创build,并将激活的写入器指针设置为另一个写入器。
if(time > delta) dispatch( ^{ finish writer, create new one }) active_writer = next writer
这在使用捕获队列时效果很好。 您可以设置一个开关来执行给定作者状态的操作。
- AVAssetWriter破坏由AVAssetExportSession修剪的video
- AVAssetWriterinputH.264直通到QuickTime(.mov) – 传入SPS / PPS来创buildavcCprimefaces?
- 更改AVCaptureDeviceInput导致AVAssetWriterStatusFailed
- iOS:如何使用AVAssetWriter制作一系列影像
- AVAssetWriter可以使用透明度编写文件吗?
- 使用GPUImage过滤video
- 如何控制AVAssetWriter以正确的FPS写入
- Swift Video Resizer AVAsset
- 如何使用AVAssetWriter将静态和dynamic叠加添加到video?