如何在MediaRecorder中设置正确的视频编解码器

时间:2019-05-29 17:55:54

标签: android android-camera2 mediarecorder android-mediarecorder

我正在使用MediaRecorder录制视频。设置mediaRecorder时,我可以将视频编解码器设置为these之一。

我正在使用以下代码来设置MediaRecorder

CamcorderProfile profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH);
profile.fileFormat = MediaRecorder.OutputFormat.MPEG_4;
profile.videoCodec = MediaRecorder.VideoEncoder.HEVC; ///Hardcode value
profile.videoFrameRate = 30;
profile.videoFrameWidth = videoSize.getWidth();
profile.videoFrameHeight = videoSize.getHeight();
mediaRecorder.setProfile(profile);

我不想将videoCodec硬编码为HEVC,因为并非所有设备都支持它。

我正在寻找一些API,可以用来查询可用视频编解码器的列表,然后找出要使用的API。但是我在MediaRecorder文档中找不到任何内容。

那么,有什么方法可以获取设备的可用视频编解码器吗? 任何帮助表示赞赏。

PS:我正在使用camera2 API

0 个答案:

没有答案