[英]iOS / iPhone - AVAssetWriter : How to use endSessionAtSourceTime:
我正在使用AVAssetWriter創建MPEG4文件。
我開始視頻會議:
[assetWriter startSessionAtSourceTime:kCMTimeZero];
現在,如果我以此結束會議,視頻文件就寫得很好:
[assetWriter finishWritingWithCompletionHandler:^{
}];
但是,如果我調用[assetWriter endSessionAtSourceTime:endTime];
在[assetWriter finishWritingWithCompletionHandler
之前,它不會寫入文件。
這就是我所說的endSessionAtSourceTime
:
endTime = CMTimeMakeWithSeconds(secondsRecorded, 30);
[assetWriter endSessionAtSourceTime:endTime];
任何想法我在做什么錯?
我認為問題在於endSessionAtSourceTime:的行為未達到您的期望。
endSessionAtSourceTime:與調用finishRecording()幾乎相同,因為它在被調用時會停止記錄。 區別在於,錄制后,endSessionAtSourceTime:將刪除(刪除)在指定sourceTime之后收到的所有幀。
相反,如果您的預期結果是錄制30秒的剪輯,則需要設置NSTimer或類似的東西,然后在30秒過去后調用endSessionAtSourceTime:或finishRecording()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.