Articles of mediarecorder

MediaRecorder.stop()挂在三星Galaxy Camera上

在我的MediaRecorder上调用stop()在Samsung Galaxy Camera上无限期挂起。 将此调用放在单独的线程中也无助于解决问题。 Logcat不显示任何错误消息。 但是,运行相同的应用程序不会导致三星Galaxy Nexus出现任何问题。 这是我stop呼叫的代码: View.OnClickListener captureListener = new View.OnClickListener() { @Override public void onClick(View v) { if (isRecording) { // stop recording and release camera mMediaRecorder.stop(); releaseMediaRecorder(); // release the MediaRecorder object mCamera.lock(); // take camera access back from MediaRecorder // inform the user that recording has stopped captureButton.setText(“Capture”); isRecording = […]

暂停…选项,如默认的相机应用程序?

我一直在努力寻找更好的解决方案来暂停和恢复video录制。 据我所知,Media Recorder类不允许在Android 4.3或更低版本的录制过程中暂停。 我发现mp4parser库可以将多个video文件合并为一个video文件。 我正在使用以下jar子: aspectjrt-1.7.3.jar isoparser-1.0.6.jar 问题是将它们合并在一起需要太长时间。 例如,总共约5分钟的2-3个video文件需要至少2分钟才能合并它们! 我的Galaxy S3和Note 2附带的默认Camera应用程序,在video录制中有暂停选项。 他们暂停的video只需不到1秒即可完成合并。 有人可以告诉我这里我做错了什么吗? 我使用下面的代码合并video文件: for (ArrayList PathList : VideoList) { VideoPathList = PathList; } for (String mMovie : VideoPathList) { Movie movie = MovieCreator.build(mMovie); MovieList.add(movie); } List videoTracks = new LinkedList(); List audioTracks = new LinkedList(); for (Movie mMovie : MovieList) { for […]

在android中记录平方分辨率video

我试图以方形模式录制video,如instagram和藤。 到目前为止,我已经尝试了Camera和MediaRecorder类,并尝试了各种方法,如设置预览大小或video大小。但我无法实现结果。 我应该用什么方法来实现平方分辨率video? 我可以说以下方法可以帮助我 录制video,然后以平方分辨率裁剪(是否有可用于裁剪的库?) 或者录制本身应该是方形分辨率。 请指导我或建议一些新的方法或技巧。

如果调用太快,MediaRecorder start()会失败

我正在尝试构建一个基本的摄像机,允许用户通过触摸屏幕快速拍摄video,这看起来很简单然而我遇到的主要问题是Android MediaRecorder不允许快速启动和重启而不会崩溃,如果用户拍摄然后停止然后快速恢复再次拍摄它总是崩溃我不确定是否有办法直接解决这个问题所以我还设计了另一种方法来尝试记录单个video但试图获得一些控制权当mediaRecorder实际写入文件时。 但是我无法使用FileDescriptor完全运行,下面我将粘贴我的原始代码和我在第二次尝试控制写入时使用的方法,是否有任何方法可以调整任何代码以实现暂停function? 任何帮助都会有很长的路要走 我第一次尝试使用将文件设置为setOutPutFile()的常用方法: public class MainActivity extends Activity implements SurfaceHolder.Callback { public static final String LOGTAG = “VIDEOCAPTURE”; private MediaRecorder recorder; private SurfaceHolder holder; private CamcorderProfile camcorderProfile; private Camera camera; boolean recording = false; boolean usecamera = true; boolean previewRunning = false; double timer = 0; ProgressBar pb; boolean neverEnd; @Override public void […]

Android:同时有两个Media recorder实例

我可以同时运行两个Android MediaRecorder类实例吗? 例如 public MediaRecorder mrec1 ; public MediaRecorder mrec2 ; mrec1.setCamera(mCamera); mrec1.setPreviewDisplay(surfaceHolder.getSurface()); mrec1.setVideoSource(MediaRecorder.VideoSource.CAMERA) . . . . mrec2.setAudioSource(MediaRecorder.AudioSource.MIC); mrec2.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); mrec2.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); . . . . mrec1.prepare(); mrec2.prepare(); mrec1.start(); mrec2.start(); 调用第二个start()时出现此错误我只是想知道是因为已经调用了启动进程或存在其他问题。 此外,第二个媒体记录器实例被初始化并在单独的线程中使用。 04-22 11:08:45.869: E/MediaRecorder(7742): start failed: -2147483648 04-22 11:08:45.869: W/dalvikvm(7742): threadid=9: thread exiting with uncaught exception (group=0x40018578) 04-22 11:08:45.869: E/AndroidRuntime(7742): FATAL EXCEPTION: Thread-10 04-22 11:08:45.869: […]

Android MediaRecorder API会继续裁剪video比特率

我正在使用MediaRecorder API一段时间,我认为所有问题都在我身后,但我想我错了。 我正在使用MediaRecorder API将video录制到文件中。 当我使用高质量的setProfile时,我的质量很好但是当我尝试手动设置参数时(如下面的代码所示),质量很差(因为某些原因,比特率被裁剪)。 我想用1fps获得720p。 我一直收到以下警告: WARN / AuthorDriver(268):video编码比特率设置为480000 bps 我正在运行的代码: m_MediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); m_MediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); m_MediaRecorder.setVideoSize(1280, 720); m_MediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264); m_MediaRecorder.setVideoFrameRate(1); m_MediaRecorder.setVideoEncodingBitRate(8000000); 任何想法? 非常感谢。

Android – 结合两个MP4文件

我正在写一个Android项目,我正在录制几个音频文件。 因此,我正在设置以下参数。 录音工作正常。 recorder.setAudioSource(MediaRecorder.AudioSource.MIC); recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 我的问题是每次我记录时,输出都写在一个单独的文件中。 现在,我需要将这些文件合并到一个文件中。 有没有人知道如何在Android项目中组合几个MPEG 4文件? 谢谢你的帮助….

如何使用setCamera(MediaRecorder)?

根据Android SDK,MediaRecorder.setCamera可用于回收现有的相机实例以进行video捕获和预览,而无需重置预览。 我无法find任何样本,我的所有尝试都是徒劳的:我要么得到错误的状态exception,要么MediaRecorder.prepare失败。 有谁知道这种方法是否可用? 我怎么用呢? 网上有哪些样品? 供参考: http : //developer.android.com/reference/android/media/MediaRecorder.html#setCamera(android.hardware.Camera)

Android AudioRecord和MediaRecorder

我正在开发一个音频处理应用程序,我需要录制音频,然后处理它以获取该录制的function。 但是,我希望使用MediaPlayer播放可播放格式的音频。 我已经看到要录制音频来处理它最好使用AudioRecord,因为我可以从那里获得原始音频。 但后来我无法以可播放的格式将数据写入文件(在android中是否有任何库?)。 我使用这种方法记录原始数据,然后将其写入文件: http : //andrewbrobinson.com/2011/11/27/capturing-raw-audio-data-in-android/但是当我尝试播放此文件时在设备上,它不可播放。 然后,如果我使用MediaRecorder,我不知道如何解码数据以提取function。 我一直在看MediaExtractor,但它接触MediaExtractor不解码帧。 那么……最好的方法是什么? 我想这在任何音频处理应用程序中都很常见,但我无法find管理它的方法。 感谢您的回复。

Android为录制的video添加文本(时间戳)

有没有办法添加Android相机video录制的文本(例如日期+时间)? 对于video录制,我使用标准的一对类: Camera和MediaRecorder 。 我正在寻找的内容显示在此屏幕上: 有什么想法吗?