MediaPlayerの連続再生で発生するエラー

2,028 views
Skip to first unread message

AndroBeats!

unread,
Jan 15, 2011, 12:45:23 PM1/15/11
to 日本Androidの会
こんにちは。AndroBeatsと申します。

画面をタッチするとMediaPlayerで複数の音源をランダムに流すアプリケーションを開発しているのですが、数十回再生をさせると以下のエラーが
発生し、タッチしても音が流れません。
どなたかこのエラーの解消方法を教えてください。
よろしくお願い致します。

≪エラー内容≫
ERROR/AudioFlinger(1065): no more track names available
ERROR/AudioTrack(1065): AudioFlinger could not create track, status:
-12
ERROR/AudioSink(1065): Unable to create audio track
ERROR/VorbisPlayer(1065): mAudioSink open failed

nagamatu

unread,
Jan 16, 2011, 12:50:32 PM1/16/11
to 日本Androidの会
使わなくなった MediaPlayerは releaseで解放させましょう。

--

たろサ

unread,
Jan 17, 2011, 1:18:51 AM1/17/11
to android-g...@googlegroups.com
 たろサです。

 AndroBeatsさんのプログラムがどのような作りになっているのかわからないの
で、答えようが無いですが、私の場合、数十個のoggデータを1つのMediaPlayer
に取り替えながら割り付けても、エラーが出たことは無いです。

 割り付けているところを抜粋すると、だいたい、こんな感じです。

prMediaPlr.reset();
prMediaPlr.setDataSource( filename );
prMediaPlr.prepare();

 便乗質問なのですが、reset()とrelease()の使い分けは、どうすればいいので
しょうか。上のような場合、当然、ファイルによってサイズが違うので、確保さ
れるメモリが違うと思うのですが、本当にアプリを終了するとき以外は、
release()をしなくていいのでしょうか。
 State Diagramを見る限り、その使い方でいいとは思うのですが、
http://developer.android.com/intl/ja/reference/android/media/MediaPlayer.html
あ、reset()すると中でrelease()やっているのかな。これはソースを読まないと
わからないですね。

 失礼しました。

--
山本三七男 (Minao Yamamoto) ---------------- ハンドル:たろサ -----
E-Mail: taro...@gmail.com

Reply all
Reply to author
Forward
0 new messages