MediaPlayer のエラー


これも、こちらの話の続き

prepareAsync called in state 8
Should have subtitle controller already set



というエラーが出てるんだけど、なんなの? って話ですが。
元のソースでは、

mMediaPlayer = MediaPlayer.create(this, resid);

try{
    mMediaPlayer.prepare();
}catch(Exception e){
    ・・・・・・・
}



てなことをしてたんですが、ネット検索してみると、MediaPlayer.create() を呼び出すと、その時点で prepare されるので、「すでに prepare されてるよ」というのが、 prepareAsync called in state 8 なのだそうです。

んじゃ、try{ } 内の mMediaPlayer.prepare(); をコメントアウトしちゃえば良いのか? とソースを見直したら、try ~ catch 全部意味がないじゃん、で、全削除。
確かにエラーは減ったけど、ホントにいいのか? コレ・・・。

で、Should have subtitle controller already set のほうは、動画に字幕を入れられるようになっていて、字幕の設定してくれよ、みたいなエラーらしいです。
今回は音声だけなので、ブッチしても良いのかな~、なんて思ってるんですが、どうなんでしょ。

どちらも、何となく不安が残る対処ほうですが・・・。
MediaPlayer.create() を使わないやり方 もあるそうなので、そちらのほうが良いかも知れないと思いつつ。


スポンサーサイト

コメント

非公開コメント