|
@@ -1,103 +0,0 @@
|
|
|
-//
|
|
|
-// testVideoRecordVc.swift
|
|
|
-// RainbowPlanet
|
|
|
-//
|
|
|
-// Created by Christopher on 2019/6/18.
|
|
|
-// Copyright © 2019 RainbowPlanet. All rights reserved.
|
|
|
-//
|
|
|
-
|
|
|
-import UIKit
|
|
|
-import AliyunVideoSDKPro
|
|
|
-
|
|
|
-class testVideoRecordVc: BaseViewController {
|
|
|
-
|
|
|
- override func viewDidLoad() {
|
|
|
- super.viewDidLoad()
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- recorder.startPreview()
|
|
|
- // 开始预览,cameraPosition 摄像头位置(前置、后置)
|
|
|
-// recorder.startPreview(withPositon: AliyunIRecorderCameraPosition.back)
|
|
|
- }
|
|
|
-
|
|
|
- override func viewWillDisappear(_ animated: Bool) {
|
|
|
- recorder.stopPreview()
|
|
|
- recorder.destroy()
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- private lazy var recorder: AliyunIRecorder = {
|
|
|
- //清除之前生成的录制路径
|
|
|
- let recordDir: String = AliyunPathManager.createRecrodDir()
|
|
|
- AliyunPathManager.clearDir(recordDir)
|
|
|
- //生成这次的存储路径
|
|
|
- let taskPath: String = recordDir.appending(AliyunPathManager.randomString())
|
|
|
- //视频存储路径
|
|
|
- let videoSavePath: String = taskPath.appending(AliyunPathManager.randomString()).appending("mp4")
|
|
|
-
|
|
|
-
|
|
|
- let recorder = AliyunIRecorder.init(delegate: self as? AliyunIRecorderDelegate, videoSize: CGSize(width: 720, height: 1280))
|
|
|
-
|
|
|
- // 预览视图,必须设置
|
|
|
- recorder?.preview = self.view;
|
|
|
-
|
|
|
- // 摄像头角度
|
|
|
- recorder?.cameraRotate = 270;
|
|
|
-
|
|
|
- /*
|
|
|
- 视频的输出路径
|
|
|
- 注意:若上一次录制的 outputPath 路径的视频存在沙盒里没有删除,并且与本次录制的视频路径且相同重名的话,录制将会失败
|
|
|
- */
|
|
|
- recorder?.outputPath = videoSavePath
|
|
|
-
|
|
|
- // 视频的输出类型
|
|
|
- recorder?.outputType = AliyunIRecorderVideoOutputPixelFormatType.type420f
|
|
|
-
|
|
|
- /*
|
|
|
- 文件配置路径
|
|
|
- 注意:若上一次录制的 taskPath 路径的视频存在沙盒里没有删除,并且与本次录制的视频路径相且同重名的话,录制将会失败
|
|
|
- */
|
|
|
- recorder?.taskPath = taskPath;
|
|
|
-
|
|
|
- // 美颜状态
|
|
|
- recorder?.beautifyStatus = true;
|
|
|
-
|
|
|
- // 设置美颜度 [0,100]
|
|
|
- recorder?.beautifyValue = 0;
|
|
|
-
|
|
|
- // 后置摄像头采集分辨率 默认:AVCaptureSessionPreset640x480
|
|
|
- recorder?.backCaptureSessionPreset = AVCaptureSession.Preset.hd1280x720.rawValue
|
|
|
-
|
|
|
- // 前置摄像头采集分辨率 默认:AVCaptureSessionPreset640x480
|
|
|
- recorder?.frontCaptureSessionPreset = AVCaptureSession.Preset.hd1280x720.rawValue
|
|
|
-
|
|
|
- // 设置视频最大时长 默认8
|
|
|
- recorder?.clipManager.maxDuration = 30;
|
|
|
-
|
|
|
- return recorder!
|
|
|
- }()
|
|
|
-
|
|
|
-// func recordButtonTouchesBegin {
|
|
|
-// // 点击录制button开始录制
|
|
|
-// [self.recorder startRecording];
|
|
|
-// }
|
|
|
-// func recordButtonTouchesEnd {
|
|
|
-// // 点击录制button停止录制
|
|
|
-// [self.recorder stopRecording];
|
|
|
-// }
|
|
|
-// func recorderDidStopRecording {
|
|
|
-// // 收到录制停止回调,调用完成录制
|
|
|
-// [self.recorder finishRecording];
|
|
|
-// }
|
|
|
-// func recorderDidStopWithMaxDuration {
|
|
|
-// // 收到录制达到最大时长回调,调用完成录制
|
|
|
-// [self.recorder finishRecording];
|
|
|
-// }
|
|
|
-// func recorderDidFinishRecording {
|
|
|
-// // 收到完成录制回调,视频已经保存到初始化设置的`视频输出沙盒路径`路径下
|
|
|
-// }
|
|
|
-
|
|
|
-}
|
|
|
-
|