Я использую фронтальную камеру для захвата действий пользователя, когда он использует приложения.И я сохраню видео на устройство.Я буду использовать VideoView
для воспроизведения видео.Я видел правильное разрешение (FrameLayout)
на предпросмотре камеры (480 x 640).Но я на VideoView
играю с изменением разрешения на (176 х 144).Теперь я увидел, что просмотр видео слишком мал.Я уже установил setPictureSize
.Но также не работает.
Когда я использовал приложения Camera
на устройстве, я использовал фронтальную камеру для захвата чего-либо.Его разрешение 480 х 640. Я что-то не так установил?Пожалуйста помоги.Спасибо
for (int i = 0; i < Camera.getNumberOfCameras(); i++) {
Camera.CameraInfo newInfo = new Camera.CameraInfo();
Camera.getCameraInfo(i, newInfo);
if (newInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
mCamera = Camera.open(i); // attempt to get a Camera instance
Camera.Parameters parameters = mCamera.getParameters();
parameters.set("orientation", "portrait");
mCamera.setParameters(parameters);
mCamera.setDisplayOrientation(90);
if (cameraDelegate != null)
cameraDelegate.OnCameramCreated();
}
}
private boolean prepareVideoRecorder(){
mMediaRecorder = new MediaRecorder();
// Step 1: Unlock and set camera to MediaRecorder
mCamera.unlock();
mMediaRecorder.setCamera(mCamera);
// Step 2: Set sources
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
// Step 3: Set a CamcorderProfile (requires API Level 8 or higher)
// mMediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
mVideoPath = getOutputMediaFile(MEDIA_TYPE_VIDEO).toString();
// Step 4: Set output file
mMediaRecorder.setOutputFile(mVideoPath);
// Step 5: Set the preview output
// mMediaRecorder.setPreviewDisplay(mPreview.getHolder().getSurface());
// Step 6: Prepare configured MediaRecorder
try {
mMediaRecorder.prepare();
} catch (IllegalStateException e) {
e.printStackTrace();
Log.d(TAG, "IllegalStateException preparing MediaRecorder: " + e.getMessage());
releaseMediaRecorder();
return false;
} catch (IOException e) {
e.printStackTrace();
Log.d(TAG, "IOException preparing MediaRecorder: " + e.getMessage());
releaseMediaRecorder();
return false;
}
return true;
}