OpenSL ESを使用する場合、「これ以上トラック名はありません」

StackOverflow https://stackoverflow.com//questions/9720516

  •  16-12-2019
  •  | 
  •  

質問

OpenSL ESを使用しています。これは1つのアプリケーションではうまく機能しますが、私が作成した別のアプリを実行したとき、それはサウンドファイルとログファイルを再生することができません

E/AudioFlinger(  119): no more track names available
E/AudioTrack( 6884): AudioFlinger could not create track, status: -12
E/libOpenSLES( 6884): AudioTrack::initCheck status 4294967284
W/libOpenSLES( 6884): Leaving Object::Realize (SL_RESULT_CONTENT_UNSUPPORTED)
.

大丈夫、これが私が無料のオブジェクトの不足していて、私はいくつかのオブジェクトをリリースする必要があります。

しかし、 http://mobilepearls.com/labs/native-android-API / OpenSLES /

Android用OpenSL ESはアプリケーションごとに単一のエンジンをサポートします。 最大32個のオブジェクト

アプリケーションごとに32個のオブジェクト、またはそれはグローバルに32個のオブジェクトですか?もしそうなら、アプリが非アクティブになるたびにPlayer-Objectsを破棄(そして再作成)することを余儀なくされました(onpause / onstop)?

役に立ちましたか?

解決

装置ごとに32個のオブジェクトのようです。したがって、必要ではない(DestroyonStop

を作成するのは一般的です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top