问题标签 [audiotrack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1628 浏览

java - Java VLCJ播放器,设置音轨不起作用

我目前正在研究可以播放mkv格式的 java 媒体播放器。我正在使用VLCJ,一切正常,除非我尝试更改不起作用的音轨。

这是代码

0 投票
0 回答
275 浏览

android - Android 遇到 CAudioPlayer 的未知 AudioTrack 事件 5

我正在使用 OpenSL 在 Android 上播放声音。我不断收到此错误:遇到 CAudioPlayer 的未知 AudioTrack 事件 5。根据 android_AudioPlayer.cpp,这不应该发生,因为值 5 (EVENT_BUFFER_END) 不被视为错误。我使用安卓 4.1.1。

0 投票
1 回答
1651 浏览

android - 无法使用 Android AudioTrack 正确播放声音

我正在运行这个程序,它使用 AudioTrack 从资源文件夹播放声音文件。有输出,但声音不正确。

项目文件已上传。

http://www.mediafire.com/?995mxc87hf28fxk

}

{

}

0 投票
1 回答
14425 浏览

android - Android AudioTrack Mixing 的示例代码

我在资源文件夹中有两个 PCM 声音文件。我使用了输入流并将它们转换为字节数组。

然后我通过归一化和添加music1和music2来处理它们并输出到字节数组输出。最后,放置输出数组并将其提供给 AudioTrack。

显然,我什么也没听到,而且有什么地方不对劲。

0 投票
2 回答
3348 浏览

android - 有没有办法在 Android 中收听音频播放的速度/bpm?

我正在构建的 Android 应用程序必须听音乐(在手机上播放或由设备的麦克风拾取),然后根据音乐做一些事情

所以我想做的是听音乐播放的速度/bpm,然后用我得到的影响应用程序背景颜色的东西做一些数学运算。

我需要类似于Malcolm McRoberts 在这里要求的东西——分析音乐,然后做点什么。他说他能够使用Echo Nest来实现他的目标,但他还没有解释是如何实现的。

我需要与elucid135 在这里要求的非常相似的东西——听每分钟的节拍(bpm),然后根据它做动画。但我的平台非常不同。

任何安卓的想法?

也许了解 Android AudioTrackMediaPlayerAudio Capture的人可以提供一些意见。

编辑:

似乎没有人明白我的要求,所以我将尝试改写:

使用 Android,我想通过设备的麦克风录制音乐。然后我想分析已经录制的内容以找到录制的音乐的节拍。基于那个节拍,我希望在应用程序中发生一些事情。

我知道如何录制音乐。我正在寻找的是关于如何识别音乐节拍的建议。

希望清除它。

0 投票
3 回答
1679 浏览

android - Android AudioTrack 错误:未初始化的 AudioTrack

我使用调试器单步执行代码并将鼠标悬停在 audioTrack 上方,它已分配并初始化。该文件也存在。

但是当它点击 audioTrack.play() 时,它会抛出一个错误,说它的非法状态异常,未使用的 AudioTrack。

我附上了包含录音文件部分的项目。 http://www.mediafire.com/?6i2r3whg7e7rs79

0 投票
2 回答
11536 浏览

android - 使用 AudioTrack 从 sd 卡播放音频(mp3、ogg)

我想用 AudioTrack 从 SD 卡播放音频文件。我试过这段代码:

但它不能正确播放音频文件。它播放的不是原始音频,而是某种噪音。

0 投票
2 回答
1986 浏览

android - Android使用两台设备之间的声音获取距离

这个想法是Phone A同时发送声音信号和蓝牙信号,Phone B将计算两个信号之间的延迟。

在实践中,我得到的结果不一致,延迟从 90 毫秒到 160 毫秒。我尝试尽可能优化两端。

在输出端:
一旦蓝牙和音频输出各有自己的线程,就会产生音调
蓝牙仅在 AudioTrack.write 之后输出,并且 AudioTrack 处于流模式,因此它
应该在写入完成之前开始输出。

在接收端:
再次两个单独的线程
系统时间在每个 AudioRecord.read 之前记录

采样规格:
44.1khz
读取整个缓冲区
使用 fft 一次采样 100 个样本
考虑到自初始 read() 以来转换了多少样本

0 投票
0 回答
720 浏览

android - 使用 AudioTrack 的 Android 均衡器应用程序?

我想使用 Android 创建一个均衡器。该应用程序应从 SD 卡加载 .mp3;应用一些音频过滤并实时(尽可能接近)播放过滤后的音频,并保存过滤后的音频。

使用 IIR 低通、带通和高通滤波器过滤音频。我已经在 matlab 中计算了滤波器系数,并将它们存储在 java 中的矩阵中。该应用程序将有 3 个滑块,它们可以改变三个滤波器中每一个的增益(增益值将乘以“b”系数)。

我正在考虑尝试这种方法,但不完全确定这是否是可行的方法:

  1. 使用 JLayer 加载和解码/转换 .mp3 文件到 PCM(用于示例数据)。
  2. 在缓冲区中获取 PCM 样本并使用 Matlabs 的“过滤器”功能(Java 等效项)进行过滤。
  3. 使用 AudioTrack 播放过滤后的音频。

这是正确的方法吗?

0 投票
1 回答
1212 浏览

android - 停止 AudioTrack 播放时的间歇性点击

我在流媒体模式下使用 AudioTrack。在我停止播放一小段 wav 文件后,大约有 5-10 次会听到咔嗒声。这让我发疯,因为我无法始终如一地重现它。在调用 AudioTrack.release() 之前,我尝试了对 AudioTrack.flush()、AudioTrack.pause() 和 AudioTrack.stop() 的各种调用组合。我也试过调用 AudioTrack.setStereoVolume() 并传入 AudioTrack.getMinVolume() 的结果。没有任何效果。

一些观察:

  • 似乎只有在我播放一小段 wav 文件时才会发生。当我播放超过 3 秒的音频时,我无法重现它。
  • 有时,当我写入音频数据的结尾时,AudioTrack.write() 会返回 -22。我在 Javadoc 中没有看到 -22 的规范。此外,这种情况并不总是与点击一致。
  • 即使我重播 wav 文件的同一部分,点击也不能始终如一地重现。
  • 咔哒声可以来自右侧或左侧扬声器,但不能同时来自两者。

我在运行 Android 4.0.3 的 Acer Iconia A500 上看到了这一点。我将不胜感激任何建议。