gpt4 book ai didi

android - 在 Android 上从 amr 播放音频

转载 作者:行者123 更新时间:2023-11-29 00:37:05 25 4
gpt4 key购买 nike

我可以从 Socket 接收一个字节数组。我需要播放此字节数组中的音频 - 音频使用 AMR 8000Hz 编码。

我发现我可以使用 MediaPlayer 播放 AMR 音频。但是,MediaPlayer 无法播放字节数组中的音乐,我不想将它们写入文件。

有没有办法在 android 上播放字节数组中的 AMR 声音?

最佳答案

Android 框架允许您使用AudioTrack 类直接从内存中播放音频数据;缺点是音频必须已经解码为 PCM 数据。如果您有幸以 Android 4.1 为目标,有新的 API 允许您单独解码数据,以便将其传递给 AudioTrack(参见 MediaExtractor媒体编解码器)。但是,在此之前,除了 MediaRecorderMediaPlayer 之外,没有公开的用于编码/解码的 API。

如果目标是 4.1 之前的 Android 版本(我想你可能是),你有两个选择:

  • 为 AMR 数据找到第 3 方解码器,以便将其传递给 AudioTrack
  • 将您的数据保存到一个文件(即使是临时的),以便可以将其交给 MediaPlayer

HTH

关于android - 在 Android 上从 amr 播放音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11939808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com