使用MediaRecorder在HTC Rezound摄像机上录制1080p视频

时间:2011-12-04 04:34:53

标签: android mediarecorder

Rezound上的内置相机应用程序能够以1080p录制视频,但我在使用Android API时遇到此问题。如果我使用CamcorderProfile.QUALITY_HIGH中的设置,一切都很好,但这只给我720x480的视频。当我尝试将分辨率提高到1080p时,我的应用程序在MediaRecorder.start()上冻结,任何尝试使用相机的应用程序都会停止工作,直到我重新启动手机。

以下是我用来配置MediaRecorder的代码:

CamcorderProfile prof = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH);
if(false){
    prof.videoFrameHeight=1080;
    prof.videoFrameWidth=1920;
}
prof.videoFrameRate=24;
prof.audioCodec=MediaRecorder.AudioEncoder.AAC;
prof.audioSampleRate=44100;
prof.audioBitRate=96;
prof.audioChannels=2;
mMediaRecorder.setProfile(prof);

当我在if块中启用代码时,应用程序会冻结。我试图完全复制从原生相机应用程序录制1080p时获得的视频设置。

跟踪Rezound上使用的原生相机应用程序的来源会很棒。我查看了Android 2.3.4版本中的原生相机应用程序,看起来它不支持任何高于CamcorderProfile.QUALITY_HIGH中指定的分辨率。

1 个答案:

答案 0 :(得分:1)

1920 * 1080像素* 24fps的3种颜色对于Android来说是一个非常多的数据。

即使使用硬件H264压缩,在具有精美捕获卡的PC上实时进行也很棘手