为啥 MediaRecorder 延迟开始录制?
Posted
技术标签:
【中文标题】为啥 MediaRecorder 延迟开始录制?【英文标题】:Why is MediaRecorder delaying the start of recording?为什么 MediaRecorder 延迟开始录制? 【发布时间】:2013-11-12 19:03:47 【问题描述】:我在我的 android 应用程序中实现了一个使用mediaRecorder
录制音频文件的功能。
它工作正常,但由于某些原因跳过了录制的第一秒。
我使用了完全相同的code from the developer documentation,所以我不明白为什么会这样。
我在寻找这个问题的答案,我发现很少有人有同样的问题,但没有真正的解决方案。
这是我的研究:
MediaRecorder class starts recording audio after slight delay MediaRecorder Silence at Beginning of Recording (Delay?) MediaRecorder starts with a 1 sec delay. How do I get rid of the silence?我有一台 LG 设备,不确定是否是硬件问题。
我也知道mediaRecorder
的一些替代方案,我只是想知道是否有人找到解决此问题的方法。
【问题讨论】:
关于录音开头的静音;至少在我使用过的一些设备上,这样做是为了避免在开始时出现垃圾样本,因为在启用麦克风的电压调节器后过早地从麦克风读取数据。不过,这种沉默并没有持续近一秒钟,IIRC,所以你可能正在寻找一个不同的问题。 【参考方案1】:说实话,mediaRecorder
类是垃圾。
如果您遇到同样的问题,只是沉默或死气沉沉,您没有太多选择。
这个问题无法通过代码解决,看来是硬件问题。
不幸的是,某些设备的行为会有所不同。
解决方案是使用AudioRecorder
类,因为它更接近硬件,所以更加灵活。不要在mediaRecorder
上浪费时间!
【讨论】:
以上是关于为啥 MediaRecorder 延迟开始录制?的主要内容,如果未能解决你的问题,请参考以下文章
Android多媒体功能开发(13)——使用MediaRecorder类录制视频
Android 如何使用 MediaRecorder 录制音频并输出为原始 PCM?