相关疑难解决方法(0)

如何在Android中暂停录音?

我的目标是暂停录制文件.我在Android开发者网站上看到它但是Media Recorder没有暂停选项.

Java支持以编程方式合并两个音频文件,但在android中它不起作用.

从Java加入两个WAV文件?

此外,我还使用了所有设备都可以使用的默认设备录音机应用程序,但在三星中,很少有设备没有恢复录制路径.

Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(intent,REQUESTCODE_RECORDING);
Run Code Online (Sandbox Code Playgroud)

任何一个有暂停功能的录音帮助.

android audio-recording mediarecorder android-mediarecorder

8
推荐指数
3
解决办法
1万
查看次数

在Android中暂停和恢复录制音频

我正在使用MediaRecorder类在Android 2.3中开发录音应用程序.我有以下要求:

  1. 当发生中断时,例如在录制期间发生呼叫,暂停录制.
  2. 在中断结束后,我的录音活动的响应被调用,我必须从暂停时恢复录音.

我找不到任何MediaRecorder api来暂停和恢复录制.只有start()和stop()可用.
除了在中断之前和之后记录两个单独的文件然后再加入一个文件之外,还有其他方法可以实现吗?
任何帮助/建议将不胜感激.

Sneha John.

android audio-recording

7
推荐指数
1
解决办法
6757
查看次数

使用Android MediaRecorder暂停和恢复(API级别<24)

在使用时MediaRecorder,我们没有API级别低于24的暂停/恢复.所以有一种方法可以做到这一点:

  1. 暂停时,停止录音机并创建录音文件.
  2. 并在恢复时再次开始录制并创建另一个文件,并继续这样做,直到用户按下停止.
  3. 最后合并所有文件.

许多人在SO上问这个问题,但无论如何都找不到解决这个问题.人们谈论通过停止在暂停操作上录制并在恢复时重新开始来创建多个媒体文件.所以我的问题是我们如何以编程方式合并/加入所有媒体文件?

注意:在我的情况下MPEG4容器 - 音频为m4a,视频为mp4.

我尝试使用SequenceInputStream合并多个InputStream各自生成的录制文件.但它总是只产生第一个文件.

代码片段:

Enumeration<InputStream> enu = Collections.enumeration(inputStreams);
        SequenceInputStream sqStream = new SequenceInputStream(enu);
        while ((oneByte = sqStream.read(buffer)) != -1) {
            fileOutputStream.write(buffer, 0, oneByte);

        }
        sqStream.close();
        while (enu.hasMoreElements()) {
            InputStream element = enu.nextElement();
            element.close();
        }
        fileOutputStream.flush();
        fileOutputStream.close();
Run Code Online (Sandbox Code Playgroud)

merge android mpeg-4 mediarecorder pause

5
推荐指数
1
解决办法
4099
查看次数