分享一个录屏插件,国外大牛写的。
插件名字:NatCorder,插件地址是:链接:https://pan.baidu.com/s/15HkaSKowVrlTWlO-RGq1PQ
提取码:lb9m
支持录制平台:Mac,Windows, Android,Ios
支持录制视频格式:Mp4,可以自定义录制视频的分辨率
Unity版本:Unity2018.3.2以及以上
支持录制方法:1:录制自定义Camera;2:录制整个屏幕(带UI),如果有别的需求,比如说需要录制两个摄像头,我是这样处理的:
1:把cam2的画面输出成renderTexture
2:场景中cam1作为录制摄像头
3:新建Iamge,之后把cam2的画面有image显示
具体实现:主要是调用ReplayCam方法
//开始录制视频
public void StartRecording (Camera camera,Vector2 videoratio) {
isRecord = true;
// Start recording
recordingClock = new RealtimeClock();
videoRecorder = new MP4Recorder(
(int)videoratio.x,
(int)videoratio.y,
30,
recordMicrophone ? AudioSettings.outputSampleRate : 0,
recordMicrophone ? (int)AudioSettings.speakerMode : 0,
OnReplay
);
// Create recording inputs
cameraInput = new CameraInput(videoRecorder, recordingClock, camera);
if (recordMicrophone) {
//StartMicrophone();
//audioInput = new AudioInput(videoRecorder, recordingClock, microphoneSource, true);
audioInput = new AudioInput(videoRecorder, recordingClock, audioListener);
}
}
//结束录制
public void StopRecording () {
if (!isRecord)
{
//Debug.LogError("if have not startrecord,filter stop");
return;
}
isRecord = false;
// Stop the recording inputs
if (recordMicrophone) {
StopMicrophone();
audioInput.Dispose();
}
cameraInput.Dispose();
// Stop recording
videoRecorder.Dispose();
}
其他:1:录制的时候,声音是可以配置的,可以自定义AudioListener
2:可以自定义录制视频质量,在MP4Recorder类中,修改码率,帧率,视频间隔等参数