使用MediaRecorder录制源自摄像头的录像,发现分辨率永远都是默认的320*240,
P1000好像是388*?,忘了,总之无法在提高了。可是手机里自带的相机录制的视频像素可以高达1280*720,我的源码如下:mCamera.unlock();
mRecorder = new MediaRecorder();
mRecorder.setCamera(mCamera);
mRecorder.setPreviewDisplay( mHolder.getSurface() );
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
// mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
mRecorder.setVideoSize(320, 240);
// mRecorder.setVideoFrameRate(15);
mRecorder.setOutputFile( filePath );
try{
mRecorder.prepare();
}catch( Exception e )
{
// Do something
}
mRecorder.start();使用setVideoSize设置分辨率,一旦高于320*240,得到的就是乱码。
这个问题已经折腾我好久了,各种测试,各种搜索,都无法找的答案,求救
P1000好像是388*?,忘了,总之无法在提高了。可是手机里自带的相机录制的视频像素可以高达1280*720,我的源码如下:mCamera.unlock();
mRecorder = new MediaRecorder();
mRecorder.setCamera(mCamera);
mRecorder.setPreviewDisplay( mHolder.getSurface() );
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
// mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
mRecorder.setVideoSize(320, 240);
// mRecorder.setVideoFrameRate(15);
mRecorder.setOutputFile( filePath );
try{
mRecorder.prepare();
}catch( Exception e )
{
// Do something
}
mRecorder.start();使用setVideoSize设置分辨率,一旦高于320*240,得到的就是乱码。
这个问题已经折腾我好久了,各种测试,各种搜索,都无法找的答案,求救
但是setVideoSize只能达到320*240,三星怎么做的?
驱动里写的,setVideoSize更改不了驱动设置
三星的p1000啊,或者三星的android手机都一样吧? 能实现更高的分辨率么?