2012-05-24 18 views
0

我正嘗試使用gdx-audio擴展,但在解碼mp3時遇到問題。它工作,但非常慢! 10秒的文件正在6.57秒解碼:(這裏是方法:爲什麼本機libmpg123在android上使用libgdx需要這麼久?

public void decode() { 
    Mpg123Decoder decoder = new Mpg123Decoder(externalFile); 

    short[] sampleArray = new short[1024]; 

    // read until we reach the end of the file 
    while (decoder.readSamples(sampleArray, 0, sampleArray.length) > 0) {} 
} 

誰能告訴我這是爲什麼要花這麼長時間

+0

你是怎麼開始使用lbmpg123的 –

+0

沒有什麼祕密......我剛剛下載了庫並查看了api的文檔... – cmbryan

回答

2

因爲libmpg123是一個軟件解碼器,做所有?在CPU上的工作根據你有什麼樣的CPU,你通常只能得到2次實時解碼,我們還沒有在libmpg123構建中啓用ARM程序集,這有助於加快它的速度,但通常不會太多。

+0

實際上,使用'libmpg123',我用'-DOPT_GENERIC'在〜1200毫秒的時間內解碼4秒的MP3,在500毫秒用'-DOPT_ARM'解碼。所以如果你問我的話,它會有很大的幫助。 ; 3 –