【问题标题】:How do you get amplitude of audio file in Android before you play it?在播放之前如何在Android中获取音频文件的幅度?
【发布时间】:2019-01-10 14:49:26
【问题描述】:

我知道当我们录制它时我们可以很容易地做到这一点(实际上有几种方法)。但是我们如何从 mp3/ogg 文件中获取幅度图呢?

现在,我看到了两个选项: 1.快速播放并在播放时构建它 2.尝试用ffmpeg做(但我真的不想做NDK)

除了这些还有其他选择吗?谢谢

【问题讨论】:

  • 也许这会帮助你link。当我尝试构建声音分析器时,我发现它非常有用。
  • @AlexandruMihaila 你好!不幸的是,它只会触及您实时录制的音频。我的用例不同,我需要对预先录制的用例做同样的事情。
  • 您找到解决此问题的方法了吗?
  • 我没有找到通用的解决方案,但我设法通过按字节读取其中一种格式的数据

标签: android audio ffmpeg visualization android-audiomanager


【解决方案1】:

您可以尝试使用我的库Amplituda,它计算音频的幅度并以不同的格式提供,例如 json、整数列表和序列。

如果你想从振幅数据中画出波形,你可以直接使用我的WaveformSeekBar library fork,其中实现了 Amplituda。

【讨论】:

  • 使用您的库上传 android 包到播放商店时遇到问题。问题是:此版本不符合 Google Play 64 位要求。以下 APK 或 app bundle 可用于 64 位设备,但它们只有 32 位本机代码:[19] 在您的应用中包含 64 位和 32 位本机代码。使用 Android App Bundle 发布格式自动确保每个设备架构只接收它需要的本机代码。这样可以避免增加应用的整体大小。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-02
  • 2011-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多