同じMediaCodec
オブジェクトにアクセスするスレッドは2つあり、同時に実行する必要があります。今私は問題があります:2つのスレッドが同時に実行されている場合、コードは次のとおりです。MediaCodecマルチスレッドリファレンス
try {
mediaCodec.releaseOutputBuffer(encoderStatus, false);
} catch (IllegalStateException e) {
e.printStackTrace();
}
このコードを処理する方法は?
2つのスレッドが同じmediaCodecオブジェクトを参照しているため、このコードを実行するスレッドはmediaCodec
への他のスレッドの参照に影響し、他のスレッドは正常に実行できません。どのようにそれを解決するには?
'mediaCodec'オブジェクトで同期するだけですか?私たちはあなたがさらに知るために何をしようとしているのか分かりません。 – SOFe
私はアンドロイド携帯電話の画面をrecordeし、同時に、携帯電話にMP4ファイルを保存しながらPCにプッシュしようとしています。私はmediaCodecオブジェクトを使用してストリームを取得し、ファイルとして保存するために1つのスレッドを使用します別のスレッドはPCにプッシュします。しかし、mediaCodec.releaseOutputBuffer(encoderStatus、false)を実行すると、それらは相互に影響します。どのように修正するのかわかりません。 – Max