2011-05-26 68 views
5

有人知道这意味着什么吗? 的OGG播放与phonegap`s梅达,它使用的MediaPlayer不能在Android上玩ogg

05-26 15:41:50.007 1160 3631 E AudioFlinger: no more track names available 
05-26 15:41:50.007 1160 3631 E AudioTrack: AudioFlinger could not create track, status: -12 
05-26 15:41:50.007 1160 3631 E AudioSink: Unable to create audio track 
05-26 15:41:50.007 1160 3631 E VorbisPlayer: mAudioSink open failed 

的感谢!

编辑:

new Media('/android_asset/www/sounds/0.mp3', 
     function() { 
     //alert("playAudio():Audio Success"); 
    }, 
     function(err, arg) { 
      alert(err + ' ' + arg); 
    }).play() 
+0

http://developer.android.com/guide/appendix/media-formats.html根据这个你应该可以播放ogg文件。请把一些代码产生这个异常 – 2011-05-26 14:40:57

+0

好吧,但它只是JavaScript,Java部分是在这里:https://github.com/phonegap/phonegap-android/blob/master/framework/src/com/phonegap/AudioPlayer。 java – nomoral 2011-05-26 14:55:11

+1

我也是。你有没有解决这个问题? – ashes999 2012-03-28 11:31:25

回答

1

this post,你需要发挥OGG文件与恒定比特率。可变比特率将导致SoundPool崩溃。

有大约相同的错误消息的错误报告,但不同的原因,在这里:http://code.google.com/p/android/issues/detail?id=13453

+0

我以为OGG天生就是变数? http://wiki.audacityteam.org/wiki/OGG – SteveCav 2012-01-26 22:31:35

+0

这通常被称为解决方案。它也不适合我。 – ashes999 2012-03-28 11:23:25

0

我能解决这个问题,但它更像是一个解决方法。 对我来说,Android似乎无法播放具有过高比特率的ogg文件。 我重新编码我的ogg文件在大胆。在“文件 - 导出 - 选项”下的Audacity中,您可以配置ogg质量。我已将质量设置为0(我没有听到任何区别)。

对于另一首歌,我不得不重新编码我的ogg到mp3(48khz)然后回到ogg。

1

我已经有Ogg Vorbis音乐文件,内部的Android播放器不会播放,我发现删除文件中嵌入的所有标签解决了问题。可变比特率和高比特率似乎不是我的问题。这个问题似乎是,如果Ogg Vorbis文件包含特定格式的标签,内部Android播放器会窒息。我还没有弄清楚哪种格式是哪个标签的问题。一些工作。有些不。我会继续研究这个问题。