2012-01-23 66 views
3

我正在使用ffmpeg解碼文件並在Android設備上播放它。我有這個工作,現在想要在同一時間解碼兩個流。我已經閱讀了一些關於需要使用ffmpeg調用av_lockmgr_register()的意見,不幸的是我不確定如何使用這些以及在使用這些鎖時流如何工作。ffmpeg同時解碼多個流

目前我在Java方面提出了通過JNI向與ffmpeg進行通信的本地代碼發出請求的單獨線程。

線程是否需要在原生(NDK)端,還是我可以在java端管理它們?我是否需要做任何鎖定,如果有的話,它如何與ffmpeg一起工作?

***更新 我現在有這個工作,似乎在java sdk級別設置線程轉移到本地級別的單獨線程。因此,我可以用我的變量創建一個結構,然後將一個變量傳遞給本地層,以指定每個視頻使用的結構。因此,我需要在本機級別使用任何互斥鎖或鎖,並且沒有任何問題。

有沒有人知道我可能遇到的潛在問題,因爲不用ffmpeg這樣做?

回答

2

我會回答這個問題,我的最新更新方法似乎正在工作。通過控制來自java層的線程,並在獨立的線程上進行本地調用,一切都正常,我還沒有遇到任何問題。