关于如何在iOs中录制视频的基本描述4

Rya*_*yan 2 iphone

嘿家伙我很好奇,如果有人能给我一个非常简短的描述如何在iOs 4中制作应用程序录制视频.我知道如何使用os3方法使用UIImagePickerController做所有媒体和诸如此类我不知道如果仍然可以在iOs4中使用,如果没有,有人可以给我一个非常简短的描述如何使用新方法吗?(无需代码,但非常受欢迎.)

-谢谢!

wil*_*lc2 11

这很简单.

我刚刚在界面上用一个按钮制作了一个基于视图的应用程序来测试它.按钮的动作是- (IBAction)shootButtonPressed;

您必须检查设备是否支持视频录制,然后将图像选择器控制器配置为仅拍摄视频.此代码仅适用于实际设备.

在主视图控制器头中,我使它符合两个协议:UIImagePickerControllerDelegate和UINavigationControllerDelegate

然后我实现了这样的按钮按压方法;

- (IBAction)shootButtonPressed;
{
    BOOL canShootVideo = [UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera];

    if (canShootVideo) {
        UIImagePickerController *videoRecorder = [[UIImagePickerController alloc] init];
        videoRecorder.sourceType = UIImagePickerControllerSourceTypeCamera;
        videoRecorder.delegate = self;

        NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
        NSArray *videoMediaTypesOnly = [mediaTypes filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(SELF contains %@)", @"movie"]];
        BOOL movieOutputPossible = (videoMediaTypesOnly != nil);

        if (movieOutputPossible) {
            videoRecorder.mediaTypes = videoMediaTypesOnly;

            [self presentModalViewController:videoRecorder animated:YES];           
        }
        [videoRecorder release];
    }
} 
Run Code Online (Sandbox Code Playgroud)

您还必须实施另外两种方法来处理电影的拍摄和选择以及用户取消摄像机选取器的时间.

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    [self dismissModalViewControllerAnimated:YES];

    // save the movie or something here, pretty much the same as doing a photo
    NSLog(@"movie captured %@", info);
}  

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
    // process the cancellation of movie picker here
    NSLog(@"Capture cancelled");
}
Run Code Online (Sandbox Code Playgroud)

超级容易.

有关详细信息,请参阅" 多媒体编程指南" - >"关于音频和视频" - >"使用视频" - >"录制和编辑视频".它出现在Apple Docs中,虽然我的口味有点分散.