Android 音視訊從入門到提高-任務清單
- 在 Android 平台繪制一張圖檔,使用至少 3 種不同的 API,ImageView,SurfaceView,自定義 View
- 在 Android 平台使用 AudioRecord 和 AudioTrack API 完成音頻 PCM 資料的采集和播放,并實作讀寫音頻 wav 檔案
- 在 Android 平台使用 Camera API 進行視訊的采集,分别使用 SurfaceView、TextureView 來預覽 Camera 資料,取到 NV21 的資料回調
- 學習 Android 平台的 MediaExtractor 和 MediaMuxer API,知道如何解析和封裝 mp4 檔案
- 學習 Android 平台 OpenGL ES API,了解 OpenGL 開發的基本流程,使用 OpenGL 繪制一個三角形
- 學習 Android 平台 OpenGL ES API,學習紋理繪制,能夠使用 OpenGL 顯示一張圖檔
- 學習 MediaCodec API,完成音頻 AAC 硬編、硬解
- 學習 MediaCodec API,完成視訊 H.264 的硬編、硬解
- 串聯整個音視訊錄制流程,完成音視訊的采集、編碼、封包成 mp4 輸出
- 串聯整個音視訊播放流程,完成 mp4 的解析、音視訊的解碼、播放和渲染
- 進一步學習 OpenGL,了解如何實作視訊的剪裁、旋轉、水印、濾鏡,并學習 OpenGL 進階特性,如:VBO,VAO,FBO 等等
- 學習 Android 圖形圖像架構,能夠使用 GLSurfaceviw 繪制 Camera 預覽畫面
- 深入研究音視訊相關的網絡協定,如 rtmp,hls,以及封包格式,如:flv,mp4
- 深入學習一些音視訊領域的開源項目,如 webrtc,ffmpeg,ijkplayer,librtmp 等等
- 将 ffmpeg 庫移植到 Android 平台,結合上面積累的經驗,編寫一款簡易的音視訊播放器
- 将 x264 庫移植到 Android 平台,結合上面積累的經驗,完成視訊資料 H264 軟編功能
- 将 librtmp 庫移植到 Android 平台,結合上面積累的經驗,完成 Android RTMP 推流功能
- 需要掌握的技術 Linux/Vim/Makefile/GCC/GDB tcpdump/wireshark
- C/C++/Java/Javascript/Python/Go/Rust
上面積累的經驗,做一款短視訊 APP,完成如:斷點拍攝、添加水印、本地轉碼、視訊剪輯、視訊拼接、MV 特效等功能
相信我,如果你認真把所有任務都完成了,你一定會成為音視訊人才招聘市場的香饽饽~~
參考資料
- 《雷霄骅的專欄》:雷霄骅(leixiaohua1020)的專欄_雷霄骅_CSDN部落格
- 《Android音頻開發》:Jhuster的部落格_音視訊/多媒體開發_51CTO部落格
- 《FFMPEG Tips》:Jhuster的部落格_FFMPEG Tips_51CTO部落格
- 《Learn OpenGL 中文》:LearnOpenGL-CN
- 《灰色飄零》 Android 音視訊開發學習思路 - 灰色飄零 - 部落格園
- 《Luki Yang 圖形圖像/音視訊/Android Camera》 我的音視訊技術路線 - 知乎
- Lesli lesliefang - 簡書
- 志的CSDN 志的csdn部落格_Mr_Zzr_CSDN部落格
- 開發一款優秀的短視訊SDK 如何設計一款優秀的短視訊 SDK_Jhuster的專欄的技術部落格_51CTO部落格
- 梅芳姑 那些我磕過的音視訊項目總結 - 簡書
- 馬北劍西 https://blog.csdn.net/mabeijianxi/category_6833978.html
- 音視訊工程師 C++(CPP)在Android開發中的應用 · 音視訊開發工程師 · 看雲
- LearnOpenGL https://learnopengl-cn.github.io/intro/
- https://blog.csdn.net/u011686167/category_6508740.html?orderby=ViewCount
- 徐福記456 https://blog.csdn.net/u011686167
- OpenGL總結比較好的教程 https://www.cnblogs.com/MakeView660/p/10411311.html
- http://www.realrace.cn/
開源項目
- 開源音視訊編輯軟體 不用花錢買PR,7款開源免費創意音視訊軟體不能錯過-簡易百科
- AcFun直播互動App開發 視訊 android-Android互動直播APP開發 - AcFun彈幕視訊網 - 認真你就輸啦 (?ω?)ノ- ( ゜- ゜)つロ
- AcFun直播互動App開發 視訊配套圖文教程 2018 年 3月 随筆檔案 - OzTaking - 部落格園
緻謝
資料來源:
Android 音視訊開發入門指南_Jhuster的專欄的技術部落格_51CTO部落格_android開發入門