Android 音視頻開發學習思路

來源:互聯網
上載者:User

標籤:com   移植   ocs   本地   get   通過   推流   mux   log   

Android 音視頻開發這塊目前的確沒有比較系統的教程或者書籍,網上的部落格文章也都是比較零散的。只能通過一點點的學習和積累把這塊的知識串聯積累起來。在學習的過程中,遇到不懂的地方,要及時的去google或者請教大神,不要半知半解的過去。

初級入門篇:

  • 在 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 推流功能

根據上面所積累的經驗,做一款短視頻 APP,完成如:斷點拍攝、添加浮水印、本地轉碼、視訊剪輯、視頻拼接、MV 特效等功能。如果你認真把所有的點都完成了,你一定會成為音視頻熱門人才。

 

下面是一些推薦的參考資料:

    1. 《雷霄驊的專欄》:http://blog.csdn.net/leixiaohua1020

    2. 《Android音頻開發》:http://ticktick.blog.51cto.com/823160/d-15

    3. 《FFMPEG Tips》:http://ticktick.blog.51cto.com/823160/d-17

    4. 《Learn OpenGL 中文》:https://learnopengl-cn.readthedocs.io/zh/latest/

    5. 《Android Graphic 架構》:https://source.android.com/devices/graphics/

    6. 《Jhuster的專欄》:http://ticktick.blog.51cto.com/all/823160

Android 音視頻開發學習思路

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.