2011-05-26 70 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播放器會窒息。我還沒有弄清楚哪種格式是哪個標籤的問題。一些工作。有些不。我會繼續研究這個問題。