同步操作将从 OpenHarmony/docs 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
音视频录制的主要功能是录制音视频,并根据设置的编码格式、采样率、码率等参数封装输出文件。
音视频录制API接口如下,具体的API详见接口文档。
表 1 音视频录制API接口
无。
创建Recorder实例。
Recorder *recorder = new Recorder();
设置Recorder参数,包括设置音视频源信息,音视频编码格式,采样率,码率,视频宽高等信息。
int32_t sampleRate = 48000;
int32_t channelCount = 1;
AudioCodecFormat audioFormat = AAC_LC;
AudioSourceType inputSource = AUDIO_MIC;
int32_t audioEncodingBitRate = sampleRate;
VideoSourceType source = VIDEO_SOURCE_SURFACE_ES;
int32_t frameRate = 30;
double fps = 30;
int32_t rate = 4096;
int32_t sourceId = 0;
int32_t audioSourceId = 0;
int32_t width = 1920;
int32_t height = 1080;
VideoCodecFormat encoder = H264;
recorder->SetVideoSource(source, sourceId ); // 设置视频源,获得sourceId
recorder->SetVideoEncoder(sourceId, encoder); // 设置视频编码格式
recorder->SetVideoSize(sourceId, width, height); // 设置视频宽高
recorder->SetVideoFrameRate(sourceId, frameRate); // 设置视频帧率
recorder->SetVideoEncodingBitRate(sourceId, rate); // 设置视频编码码率
recorder->SetCaptureRate(sourceId, fps); // 设置视频帧的捕获帧率
recorder->SetAudioSource(inputSource, audioSourceId); // 设置音频源,获得audioSourceId
recorder->SetAudioEncoder(audioSourceId, audioFormat); // 设置音频编码格式
recorder->SetAudioSampleRate(audioSourceId, sampleRate); // 设置音频采样率
recorder->SetAudioChannels(audioSourceId, channelCount); // 设置音频通道数
recorder->SetAudioEncodingBitRate(audioSourceId, audioEncodingBitRate); // 设置音频编码码率
准备录制,Recorder进行录制前的准备工作。
recorder->Prepare(); // 准备录制
开始录制,Recorder会根据设置的音频源和视频源进行录制。
recorder->Start(); // 开始录制
结束录制,释放资源。
recorder->Stop(); // 停止录制
recorder->Release(); // 释放录制资源
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。