java - 访问 Android 媒体流以进行音频可视化

标签 java android audio

基本上,我想做一个音频可视化工具。我知道这是可能的,因为我的手机附带了一些可以做到这一点的动态壁纸。问题是,我似乎无法弄清楚如何使用 Android API 做到这一点。

我的应用会拾取当前正在播放的媒体流,然后根据当时正在播放的音量,它会在屏幕上显示更多或更少的条形图。

我该怎么做?看起来我可以用麦克风做这样的事情,但我希望能够为音乐、播客等做这样的事情。

最佳答案

2.3 好像这里变了,现在有权限了

<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>

并且在 aosp 中有一个 AudioCapture 助手类来帮助动态壁纸正确地做到这一点。 https://android.googlesource.com/platform/packages/wallpapers/MusicVisualization/+/gingerbread-release/src/com/android/musicvis/AudioCapture.java

编辑:

AOSP 中的一个导入与公共(public) api 不匹配。
导入android.media.audiofx.Visualizer;

是的
导入android.media.Visualizer;

如果它让人头疼,请务必切换。这都是 2.3 api,它显然为 viz 返回了一个低分辨率的音频流,但不足以录制。

关于java - 访问 Android 媒体流以进行音频可视化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3571814/

相关文章:

java - 将调用方法的值返回给 future 对象

请求网站时与发送的用户代理不同的 Javascript 用户代理(ajax)

android - 如何为 android x86 和 x86_64 编译 tcpdump

audio - 关于 youtube-dl

audio - 如果要创建音乐应用和音乐开发,应该考虑学习哪种编程语言。

ios - 在 WebRTC for iOS 中测量麦克风电平

java - 比较两个 JSON 对象的数字容差

java - 是否可以使用 Redisson lib 中的 ScoredSortedSet 在具有大量写入的环境中获取实际项目排名?

android - DeviceMonitor - 发送跟踪请求失败

java - java 有没有办法随机猜测下一个数字?