Запись видео в разрешении 480х360 на Galaxy Nexus
Кто-нибудь имел успех в записи видео размером 480x360 h264 с Samsung Galaxy Nexus (работает 4.3 - изначально пробовал с 4.2) через MediaRecorder API? Я могу записывать с разрешением 640x480, но как только я изменяю его на 480x360, при вызове start () происходит сбой API MediaRecorder с ошибкой -19.
Это мои настройки:
mCamera.unlock();
mMediaRecorder = new MediaRecorder();
mMediaRecorder.setCamera(mCamera);
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mMediaRecorder.setMaxDuration(300000); //5min
mTempFile = new File(getFilesDir(), AppManager.tempFileName);
mMediaRecorder.setOutputFile(mTempFile.getPath());
mMediaRecorder.setVideoEncodingBitRate(1048576); //1mb/s
mMediaRecorder.setVideoSize(480, 360);
mMediaRecorder.setVideoFrameRate(30);
mMediaRecorder.setAudioEncodingBitRate(131072); //128kb/s
mMediaRecorder.setAudioSamplingRate(44100); //Hz/s
mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
mMediaRecorder.setPreviewDisplay(mSurfaceHolder.getSurface());
mMediaRecorder.setMaxFileSize(104857600); //100mb
mMediaRecorder.prepare();
mMediaRecorder.start(); //<<<crashes here
Любые идеи о том, почему это может произойти сбой, когда, например, он работает на дешевом планшете под управлением 4.1?
Любая помощь будет высоко ценится, спасибо!
1 ответ
Спасибо за комментарии. Просто не возможно, почему я понятия не имею, но это также верно для Galaxy S3 и другого небольшого дешевого планшета, на котором я сейчас тестировал. Это позор, потому что 480x320, кажется, базовый профиль для воспроизведения на всех устройствах Android.