0

简而言之:我在我的本地 sqlitedatabse 中有一些音频文件,并且想使用 android 的本机媒体播放器进行播放。参考文档,我可以通过将音频文件放在 sd 卡上或从服务器流式传输或通过 URI 播放音频。

无法通过向媒体播放器提供字节数组来播放音频文件。

所以我的解决方案是构建一个 CONTENTPROVIDER 让我的媒体播放器通过 URI 访问数据库中的音频文件。我通过本教程提出了这个想法

http://www.vogella.com/articles/AndroidSQLite/article.html

这可能吗?有更好的方法来解决我的问题吗?

4

1 回答 1

0

如果我正确理解您的问题,您建议创建一个人工 URL,然后将其传递给要读取的 android 系统,并通过从 SQLite 读取它来提供支持 URL 的数据。这可能会起作用,并且它解决了内容解码的一些问题,但它需要在系统中创建笨拙的 URL 和套接字。所有这些可能都不是最可靠或最有效的方法。

另一种方法是自己将数据解码为 PCM,并通过Audio Track将其提供给 Android 。这会更好,因为您不是试图创建一个被黑(和人工)的 URL 只是为了通过管道传输数据流,但它可能需要您自己解析数据并将其转换为 PCM。根据您在数据库中的格式,这可能很困难且不值得,因为用于此类转换的 Android 库无法访问。所以,哪种方式最好取决于你的目标,但我认为这是你的两个选择。

于 2013-02-08T20:43:02.180 回答