
(1) OMXCodec會在一開始的時候透過read函式來傳送未解碼的data給decoder,並且要求decoder將解碼後的data傳回來
|
|
(2) Decoder從input port讀取資料後,開始進行解碼,並且回傳EmptyBufferDone通知OMXCodec
|
|
OMXCodec收到EMPTY_BUFFER_DONE之後,繼續傳送下一個未解碼的資料給decoder。
(3) Decoder將解碼完的資料送到output port,並回傳FillBufferDone通知OMXCodec
|
|
OMXCodec收到FILL_BUFFER_DONE之後,將解碼後的資料放入mFilledBuffers,發出mBufferFilled信號,並且要求decoder繼續送出資料。
(4) read函式在後段等待mBufferFilled信號。當mFilledBuffers被填入資料後,read函式將其指定給buffer指標,並回傳給AwesomePlayer
|
|
本文介绍Stagefright如何通过OMXCodec与OMXvideodecoder进行buffer传递的过程。OMXCodec使用read方法发送未解码数据,并请求解码后的数据;Decoder读取输入端口的数据并解码,通过EmptyBufferDone通知OMXCodec;解码完成后,将数据送至输出端口并通过FillBufferDone告知OMXCodec。
593

被折叠的 条评论
为什么被折叠?



