android - 使用三星录制的音频无法在 iOS 上播放

标签 android audio

我正在开发一个音频应用程序,允许将 micro 录制到 mp3 文件。然后它允许播放音频文件。 在 Android 上,我使用的是这段代码:

    mRecorder = new MediaRecorder();
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
    mRecorder.setOutputFile("path/audio.mp3");

    try {

        mRecorder.prepare();
        mRecorder.start();
    } catch (Exception e) {

        LogUtil.e("startRecording", e.getMessage());
    }

如果我的应用在 Nexus 5 设备上运行,我可以在 iOS 上播放录制的音频,但如果在三星 S3/S5 上运行,我就不能。

对不起我的英文不好,如果你不能很好地理解描述,请检查下面的总结:

  • 用 Nexus 5 上面的代码录制的音频 => 可以在 iOS 上播放
  • 用三星 S3/S5 上面的代码录制的音频 => 不能在 iOS 上播放

如何在 iOS 上播放三星设备录制的音频? 请帮助我。

最佳答案

如果您想使用流媒体播放这些文件,那么您可以阅读我的回答- 音频文件具有允许其流式传输的元数据,在某些设备(如三星)中,它位于文件末尾。您需要将此元数据移动到文件开头以使文件可流式传输。为此,您可以使用 MP4Box。

关于android - 使用三星录制的音频无法在 iOS 上播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30735702/

相关文章:

java - 在 Android 应用程序中集成 map 时出现错误

java - 如何设置 AppCompatSpinner 的文本?请查看详情

android - Jetpack Compose 中的 fragment 容器

iphone - 如何通过 iPhone 应用程序录制音频?

ios - 如何在iOS 10 上播放UIPickerView 的滴答声?

flash - 我想创建一些东西来记录用户的音频,然后允许他们将其发送到电子邮件,或将其保存到服务器

android - WorkManager 未初始化异常,即使 WorkManagerInitializer 未在 list 中禁用

java - 获取android中动态单选按钮的文本

javascript - 如何使用 php 和 html 中的按钮播放数据库中的音频?

C# 和音频生成/播放