我现在已经尝试了大约一个星期来为一个项目完成一个非常困难的概念。我试图使用19字节BLE
允许通过Bluetooth LE
将原始PCM数据传输到附近的所有其他Android设备。
我使用Audacity将FLAC格式歌曲缩减为单声道,2000Hz采样率,8位无符号WAV文件,这仍然听起来不太合适。问题是BLE将数据加载到附近的设备,其速率是在另一端流式传输文件所需的速率的一半(我的计划的一部分是让歌曲在每个设备上实时流式传输)。
我的计划是将数据发送到其他设备,将2000Hz音频数据上采样为4000Hz音频数据;这是我所知道的AudioTrack支持的最低采样率。在常规Java中,我可以使用Tritonus软件包到change the sample rate,达到必要的Hz级别,但我无法在Android中加载软件包(我正在使用Android Studio)。
基本上我要问的是,是否有一个已知的包或算法可以对Android兼容的原始音乐数据进行上采样?我正在挖掘Tritonus page的代码片段,这可能会帮助我一路走来。我睡得很少......所有节目和没有戏剧让omikey成为一个沉闷的男孩......
也许你应该看看7zip。它具有最佳的压缩率并以合适的速度运行。
我最后添加了一些我之前提到过的Tritonus文件,但是他们需要一个不包含在Android中的java包。这有点hacky,但我最终从我需要的原始java包中获取代码并将它们包含在我的库文件中。现在它有效!嗯...音质仍然很糟糕,但采样率转换很快就能完成。