视频相关封装

视频播放器,视频缓存,断点续传,视频录制,视频压缩 封装

视频相关封装

视频录制器使用(RecordSession.h)

视频录制器需要承载的view

self.layerView = [[UIView alloc]initWithFrame:CGRectMake(0, 50, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.width * 0.7)];
[self.view addSubview:self.layerView];

初始化视频录制器

self.session = [[RecordSession alloc]initWithSessionView:self.layerView];

开始录制视频,完成后block返回录制成功并且裁剪压缩后的地址.

[self.session startRecord:^(NSString *videoUrl) {
self.videoPlayer.videoUrl = videoUrl;
[self.videoPlayer startPlay];
}];

停止录制视频

[self.session stopRecord];

视频压缩使用(VideoTailoring.h)

//传入录制成功的视频地址
// 这里为什么要调用延迟1.0秒呢,我们说过用 AVCaptureMovieFileOutput 来录制视频,是边录边写的,即使是录制完成了,真实的是视频还在写,大概时间是延迟1.2秒左右。
__weak typeof(self) weakSelf = self;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.25 NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[VideoTailoring tailoringVideos:outputFileURL mergeBlock:^(NSString
videoPath) {
NSLog(@”转换后文件地址==%@”,videoPath);
}];
});

视频播放器使用(VideoPlayer.h)

初始化播放器 必须实现 playerView: 承载播放器的View

self.videoPlayer = [[VideoPalyer alloc]initWithPlayerView:self.layerView];

赋值视频地址(网络地址和本地地址都可以)

self.videoPlayer.videoUrl = @”www.baidu.com”;

开始播放

[self.videoPlayer startPlay];

停止播放

[self.videoPlayer stopPlay];

暂停播放

[self.videoPlayer pausePlay];

注: 视频播放器和视频录制器都可以自定义UI,只对功能做了封装.

文章目录
  1. 1. 视频播放器,视频缓存,断点续传,视频录制,视频压缩 封装
  2. 2. 视频录制器使用(RecordSession.h)
    1. 2.1. 视频录制器需要承载的view
    2. 2.2. 初始化视频录制器
    3. 2.3. 开始录制视频,完成后block返回录制成功并且裁剪压缩后的地址.
    4. 2.4. 停止录制视频
  3. 3. 视频压缩使用(VideoTailoring.h)
  4. 4. 视频播放器使用(VideoPlayer.h)
    1. 4.1. 初始化播放器 必须实现 playerView: 承载播放器的View
    2. 4.2. 赋值视频地址(网络地址和本地地址都可以)
    3. 4.3. 开始播放
    4. 4.4. 停止播放
    5. 4.5. 暂停播放
  5. 5. 注: 视频播放器和视频录制器都可以自定义UI,只对功能做了封装.
,