Tag: mediarecorder

Android MediaRecorder使用绿线生成损坏的video

我正在尝试使用Android中的MediaRecorder为我的应用添加video录制function,但生成的video看起来像绿线一样损坏(音频很好)。 以下代码是我用来初始化MediaRecorder对象的代码: mMediaRecorder = new MediaRecorder(); mCamera.unlock(); mMediaRecorder.setCamera(mCamera); mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); mMediaRecorder.setOutputFile(Utility.CAPTURE_VIDEO_FILENAME); mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263); mMediaRecorder.setMaxDuration(60000); mMediaRecorder.setVideoFrameRate(20); mMediaRecorder.setMaxFileSize(5000000); mMediaRecorder.setVideoSize(352, 288); mMediaRecorder.setPreviewDisplay(mPreview.mHolder.getSurface()); mMediaRecorder.prepare(); mMediaRecorder.start(); 我已经看过这里和这里的建议,但它们似乎没有帮助我的事业。 但我确实认为它可能与不正确的video大小有关。 所以我的问题是:在使用API​​级别7时,有没有什么好方法可以获得兼容的video大小? 据我所知,我可以使用CamcorderProfile,如果我在API级别8,但7。

MediaRecorder:setCamera() – 错误的相机不可用

任何人都知道如何使用它进行mediarecorder? 我正在使用 recorder.setPreviewDisplay(holder.getSurface)持有者 – 它的相机(我看到我的手机屏幕上的胸部矩形)当我运行我的应用程序 – 在logcat我看到错误(相机是不可用的)即时尝试使用functionsetCamera – 但它的不帮我 谁知道如何正确使用它? 或者我可以用其他方式录制video(只有video,没有音频)? 好的,已解决 这个代码例如 mediaRecorder = new MediaRecorder(); camera.unlock(); mediaRecorder.setCamera(camera);

如何暂停/恢复使用mediarecorder创建的录音?

我正试图在来电暂停录音并稍后继续录音。 我正在使用andriod mediarecorder并尝试在MPEG4录制。 我尝试暂停/恢复重置/停止录制并使用setOutputFile(fd)启动它, fd是已停止/暂停的音频文件的文件描述符,希望它会附加但我没有运气。 有没有办法实现这个或附加两个录音或我应该放弃mediarecorder 。 码: private MediaRecorder media_recorder; private String file_path = null; public void startRecording(path) { file_path = path media_recorder= new MediaRecorder(); media_recorder.setAudioSource(MediaRecorder.AudioSource.MIC); media_recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); media_recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); media_recorder.setOputputFile(path); media_recorder.prepare(); } public void pauseRecording() { media_recorder.stop(); media_recorder.setAudioSource(MediaRecorder.AudioSource.MIC); media_recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); media_recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); FileOutputStream paused_file = new FileOutputStream(file_path); media_recorder.setOutputFile(paused_file.getFD()); } public void resumeRecording() { media_recorder.prepare(); media_recorder.start(); } pauseRecording()停止录制但是恢复失败,消息start […]