請尊重分享成果,轉(zhuǎn)載請注明出處,本文來自Coder包子哥,原文鏈接:http://blog.csdn.net/zxccxzzxz/article/details/54254244
前面的Android實現(xiàn)錄屏直播(一)ScreenRecorder的簡單分析一文中我們對 ScreenRecorder 這個開源 Demo 中的實現(xiàn)機制大概有了了解,但在繼續(xù)寫這個系列文章的時候發(fā)現(xiàn)每一個細(xì)節(jié)都太緊密了,稍微不注意就會深入每個知識點的細(xì)節(jié)導(dǎo)致文章又臭又長還表述不清晰,于是我決定把這7天實現(xiàn)該功能的整個流程重新梳理一遍,按照我開發(fā)和研究學(xué)習(xí)的步驟來寫,大致過程如下:
Bilibili 的反編譯及 UI 的編寫
對 H264 結(jié)構(gòu)、FLV 格式封裝的研究學(xué)習(xí)
sps pps avcc 關(guān)鍵幀等視頻封裝原理的學(xué)習(xí)與分析
MediaProjection 實現(xiàn)錄屏中 MediaCodec 的詳細(xì)用法
編碼后的幀進(jìn)行推流
產(chǎn)品功能調(diào)研
我們作為技術(shù)開發(fā)人員,任務(wù)下發(fā)的時候首先要與產(chǎn)品經(jīng)理進(jìn)行需求的深入了解,只有了解對方想要的是什么后我們功能實現(xiàn)才能達(dá)到他們最大的期望值。當(dāng)然一旦確定需求后把菜刀亮出來,然后就輕松愉快的寫代碼吧??。嗯,本次任務(wù)就是盡可能的還原Bilibili的錄屏直播功能,汗顏,無需設(shè)計,無需討論,我自己研究吧,反正項目一直都是我一人開發(fā),也習(xí)慣了(PS: 盡管是Bilibili