目标:使用AVCaptureMovieFileOutput将视频记录到.mov文件中。当视频正在录制时,我想把它上传到S3。上传部分应该与多部分上传是可行的。(Mac +10.8应用程序)
Problem:如何从一个.mov文件中以块的形式读取,而该文件是用AVCaptureMovieFileOutput编写的,并且越来越大?
到目前为止我所做的:
// session = AVCaptureSession with audio and video inputs
fileOutput = [[AVCaptureSession alloc] init];
[session addOutput:fileOutput]
[session startRunning]
[fileOutput startRecordingToOutputFileURL: fileUrl recordingDelegate:self]
// In async dispatch queue
inputStream = [NSInputStream inputStreamWithFileAtPath:fileUrl]
// schedule in run loop, open and run此时,我开始使用stream:handleEvent:在委托对象上接收NSStreamEventHasBytesAvailable消息。但是几秒钟后,消息就停止了(在250.000到300.000字节(0.2MB)的总字节之后),即使.mov文件的大小增加到>10 to,也会发生这种情况。
问题:
NSInputStream委托不继续接收流事件?谢谢!
发布于 2013-06-29 16:01:15
我在http://www.gdcl.co.uk/2013/02/20/iOS-Video-Encoding.html有一个示例,它在从摄像机记录到文件时从电影文件中读取(iOS 6)。我正在使用一个单独的AVAssetWriter,但是看起来这对您来说应该很好。
https://stackoverflow.com/questions/17380668
复制相似问题