2

UIImagePickerController 中的 AVCaptureMovieFileOutput 在 iOS7 中使用什么流将来自相机的视频帧附加到它的临时 .MOV 文件中?

当用户通过 iOS7 中呈现的 UIImagePickerController 录制视频时,会在临时位置创建 .MOV 文件,然后由底层 AVCaptureMovieFileOutput 对象进一步附加。


我尝试使用符号断点和方法调配来确定以下其中一项(但没有成功)。我可能错过了实际使用的一种流类型或类(或者我的断点设置不正确):

  • NSWriteStream
  • CFWriteStream
  • 子类化 NSStream
  • 流的
  • ostream
  • iostream
  • NS文件句柄
  • posix 文件描述符
  • AVAssetWriter
  • AVAssertExportSession
  • ALAssetClass
  • ALA资产库

这就是我用来展示 UIImagePickerViewController 来录制视频的方法:

    #import <MobileCoreServices/MobileCoreServices.h>

    -(void)startPicker{
        UIImagePickerController *picker = [[UIImagePickerController alloc] init];
        [picker setSourceType:UIImagePickerControllerSourceTypeCamera];
        [picker setAllowsEditing:NO];
        [picker setDelegate:self];
        [picker setMediaTypes:@[(NSString*)kUTTypeMovie]];
        [self presentViewController:picker animated:YES completion:nil];
    }

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
        [picker dismissViewControllerAnimated:YES completion:nil];
        if (info)
        {
           NSURL* fileURL = [info objectForKey:UIImagePickerControllerMediaURL];
           NSLog(@"%@", fileURL.path);
        }
    }

    - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
        [picker dismissViewControllerAnimated:YES completion:nil];
    }

我真的需要特定的流类型和一种我可以为自己证明它正在被 iOS7 使用的方法。非常感谢!

4

1 回答 1

1

有办法证明吗?我不确定,但 Apple 偏爱 m3u8 流式传输

https://developer.apple.com/library/ios/documentation/networkinginternet/conceptual/streamingmediaguide/DeployingHTTPLiveStreaming/DeployingHTTPLiveStreaming.html

于 2014-09-03T18:18:56.393 回答