技术

视频H264编码与解码

2018-03-30  本文已影响45人  萧修

1、利用摄像头录制视频。 - 系统的录制或者界面定制(ACMediaFrame Demo)

1.1、示例代码

UIImagePickerController *picker = [[UIImagePickerController alloc] init];

    picker.delegate = self;

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

        NSArray * mediaTypes =[UIImagePickerController  availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];

        picker.sourceType = UIImagePickerControllerSourceTypeCamera;

        picker.mediaTypes = mediaTypes;

        picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo;

        picker.videoQuality = UIImagePickerControllerQualityTypeMedium; //录像质量

        picker.videoMaximumDuration = 600.0f; //录像最长时间

    } else {

        [UIAlertController showAlertWithTitle:@"当前设备不支持录像" message:nil actionTitles:@[@"确定"] cancelTitle:nil style:UIAlertControllerStyleAlert completion:nil];

    }

    [self presentViewController:picker animated:YES completion:nil];

2、保存本地。 - 录制完成,视频保存本地沙盒以及视频保存相簿(有相关的demo)

2.1、将视频路径存于本地沙盒

BOOL success = [[NSFileManager defaultManager] fileExistsAtPath:filePath];

[videoData writeToFile:filePath atomically:YES];

2.2、将视频存于设备相簿

视频 保存相簿:UISaveVideoAtPathToSavedPhotosAlbum

图片 保存相簿:UIImageWriteToSavedPhotosAlbum

3、从本地获取视频,进行播放。- 打开本地视频,进行播放(有demo)

TZImagePickerController多选择图片或者视频进行播放

4、自定义录制视频进行编码,重新保存。打开本地视频,进行编码。-(VTEncodeDemo demo进行)

4.1、在视频录制的时候进行视频的编码。

视频编码地址: https://github.com/shawn7com/VTEncodeDemo

4.2、将视频路径进行编码处理。(h264编码方式)

参考链接:

http://www.cnblogs.com/haibindev/archive/2011/11/10/2244442.html |采集音频和摄像头视频并实时H264编码及AAC编码

https://blog.csdn.net/keep_moving31038/article/details/77685609 | iOS 音视频采集与编码

4.3、播放编码之后的视频/存于本地

打开本地视频

5、对编码的视频,打开进行播放。-重复步骤 3。

视频解码播放:https://github.com/stevenyao/iOSHardwareDecoder本地格式 h264播放

总Git地址:https://github.com/gaoguangxiao/SaveToCamera

上一篇下一篇

猜你喜欢

热点阅读