还未完善,录制合成视频、音频有掉帧的情况
This commit is contained in:
parent
c67eecd78d
commit
9186712d4f
Binary file not shown.
@ -585,5 +585,21 @@
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "55B7E93A-1F38-487B-8C95-0D9311B5F481"
|
||||
shouldBeEnabled = "Yes"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "SwiftProject/Project/Util/SpatialVideoDataWriter.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "160"
|
||||
endingLineNumber = "160"
|
||||
landmarkName = "writeVideoData(leftSamplebuffer:rightSamplebuffer:audioSamplebuffer:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
</Breakpoints>
|
||||
</Bucket>
|
||||
|
||||
@ -31,7 +31,7 @@ import CoreMotion
|
||||
|
||||
class CCSpatialShootController: BaseController {
|
||||
|
||||
let writeVideoQueuen = dispatch_queue_serial_t(label: "ccspatial writeVideoQueuen")//创建一个串行队列
|
||||
let writeVideoQueuen = dispatch_queue_serial_t(label: "ccspatial writeVideoQueuen",qos: DispatchQoS.background)//创建一个串行队列
|
||||
|
||||
let kNowTimeToUserDefaultKey_SpatialShootController:String = "kNowTimeToUserDefaultKey_SpatialShootController"
|
||||
var wideAngleCameraDevice:AVCaptureDevice?//测试使用
|
||||
|
||||
@ -106,6 +106,7 @@ class SpatialVideoDataWriter {
|
||||
|
||||
input_video = AVAssetWriterInput(mediaType: .video, outputSettings: videoSettings)
|
||||
input_video.expectsMediaDataInRealTime = true
|
||||
// input_video.transform = THTransformForDeviceOrientation(orientation)
|
||||
adaptor_inputVideo = AVAssetWriterInputTaggedPixelBufferGroupAdaptor(assetWriterInput: input_video)
|
||||
assetWriter.add(input_video)
|
||||
|
||||
@ -120,7 +121,7 @@ class SpatialVideoDataWriter {
|
||||
print("assetWriter 添加writerInput_Audio_left失败...")
|
||||
}
|
||||
assetWriter.startWriting()
|
||||
assetWriter.startSession(atSourceTime: .zero)
|
||||
// assetWriter.startSession(atSourceTime: .zero)
|
||||
|
||||
}
|
||||
catch {
|
||||
@ -134,6 +135,7 @@ class SpatialVideoDataWriter {
|
||||
input_video.markAsFinished()
|
||||
assetWriter.finishWriting {
|
||||
print("assetWriter.finishWriting 可以保存")
|
||||
|
||||
completion(true, nil)
|
||||
}
|
||||
haveStartedSession = false
|
||||
@ -146,7 +148,6 @@ class SpatialVideoDataWriter {
|
||||
|
||||
//第二步,开始写入数据
|
||||
func writeVideoData(leftSamplebuffer:CMSampleBuffer,rightSamplebuffer:CMSampleBuffer,audioSamplebuffer:CMSampleBuffer) {
|
||||
|
||||
//追加视频帧
|
||||
guard let leftCVPixelBuffer = CMSampleBufferGetImageBuffer(leftSamplebuffer) ,
|
||||
let rightCVPixelBuffer = CMSampleBufferGetImageBuffer(rightSamplebuffer) else {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user