こんにちは、アンドロイドの aacplayer からプログレス バーを取得しようとしていますが、既にこのコードを持っています:
public void playerPCMFeedBuffer(boolean isPlaying, final int bufSizeMs, final int bufCapacityMs) {
float percent = bufSizeMs * 100 / bufCapacityMs;
System.out.println("Buffer = " + percent + "% , "+bufSizeMs+" / "+bufCapacityMs);
handler.post(new Runnable() {
public void run() {
progress.setProgress(bufSizeMs * 100 / bufCapacityMs);
}
});
これにより、オーディオストリームのバッファが得られるので、そこからプログレスバーを設定し、プログレスバー自体が動いていることを示すことができると思います。しかし、このエラーが発生しています:
03-11 00:15:15.885: E/AndroidRuntime(7609): FATAL EXCEPTION: main
03-11 00:15:15.885: E/AndroidRuntime(7609): java.lang.NullPointerException
03-11 00:15:15.885: E/AndroidRuntime(7609): at com.webcraftbd.radio.RadioService$1$1.run(RadioService.java:712)
03-11 00:15:15.885: E/AndroidRuntime(7609): at android.os.Handler.handleCallback(Handler.java:615)
03-11 00:15:15.885: E/AndroidRuntime(7609): at android.os.Handler.dispatchMessage(Handler.java:92)
03-11 00:15:15.885: E/AndroidRuntime(7609): at android.os.Looper.loop(Looper.java:137)
03-11 00:15:15.885: E/AndroidRuntime(7609): at android.app.ActivityThread.main(ActivityThread.java:4898)
03-11 00:15:15.885: E/AndroidRuntime(7609): at java.lang.reflect.Method.invokeNative(Native Method)
03-11 00:15:15.885: E/AndroidRuntime(7609): at java.lang.reflect.Method.invoke(Method.java:511)
03-11 00:15:15.885: E/AndroidRuntime(7609): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
03-11 00:15:15.885: E/AndroidRuntime(7609): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
03-11 00:15:15.885: E/AndroidRuntime(7609): at dalvik.system.NativeStart.main(Native Method)
どうもありがとうございます。