有兩個線程訪問相同的MediaCodec
對象,並且它們可能需要同時運行。現在我有一個問題:當兩個線程同時運行時,代碼如下:MediaCodec多線程引用
try {
mediaCodec.releaseOutputBuffer(encoderStatus, false);
} catch (IllegalStateException e) {
e.printStackTrace();
}
如何處理此代碼?
因爲兩個線程引用同一個mediaCodec對象,所以一個線程執行這個代碼會影響另一個線程對mediaCodec
的引用,另一個線程不能正常運行。如何解決它?
只需在'mediaCodec'對象上同步?我們不知道你在做什麼來進一步瞭解。 – SOFe
我想記錄一個android手機的屏幕,並將其推送到PC,同時在手機上保存一個MP4文件。我使用mediaCodec對象來獲取流,使用一個線程保存爲一個文件和另一個線程推送到PC.But當執行mediaCodec.releaseOutputBuffer(encoderStatus,false);它們將互相影響。我不知道如何解決它。 – Max