博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
音视频开发指南
阅读量:7063 次
发布时间:2019-06-28

本文共 1326 字,大约阅读时间需要 4 分钟。

Android开发,本身并不是一个可以走得多远的方向,它只是一个平台,提供了许多封装好的API,让大家能够快速开发出针对特定业务的应用。

真正有价值的地方就在于Android与具体的业务方向结合,比如: 

Android与音视频技术,Android与智能硬件交互,Android与前端技术的融合与探索,Android信息安全,Android源码深度定制等等。

《Android 音视频从入门到提高 —— 任务列表》

  1. 在 Android 平台绘制一张图片,使用至少 3 种不同的 API,ImageView,SurfaceView,自定义 View

  2. 在 Android 平台使用 AudioRecord 和 AudioTrack API 完成音频 PCM 数据的采集和播放,并实现读写音频 wav 文件

  3. 在 Android 平台使用 Camera API 进行视频的采集,分别使用 SurfaceView、TextureView 来预览 Camera 数据,取到 NV21 的数据回调

  4. 学习 Android 平台的 MediaExtractor 和 MediaMuxer API,知道如何解析和封装 mp4 文件

  5. 学习 Android 平台 OpenGL ES API,了解 OpenGL 开发的基本流程,使用 OpenGL 绘制一个三角形

  6. 学习 Android 平台 OpenGL ES API,学习纹理绘制,能够使用 OpenGL 显示一张图片

  7. 学习 MediaCodec API,完成音频 AAC 硬编、硬解

  8. 学习 MediaCodec API,完成视频 H.264 的硬编、硬解

  9. 串联整个音视频录制流程,完成音视频的采集、编码、封包成 mp4 输出

  10. 串联整个音视频播放流程,完成 mp4 的解析、音视频的解码、播放和渲染

  11. 进一步学习 OpenGL,了解如何实现视频的剪裁、旋转、水印、滤镜,并学习 OpenGL 高级特性,如:VBO,VAO,FBO 等等

  12. 学习 Android 图形图像架构,能够使用 GLSurfaceviw 绘制 Camera 预览画面

  13. 深入研究音视频相关的网络协议,如 rtmp,hls,以及封包格式,如:flv,mp4

  14. 深入学习一些音视频领域的开源项目,如 webrtc,ffmpeg,ijkplayer,librtmp 等等

  15. 将 ffmpeg 库移植到 Android 平台,结合上面积累的经验,编写一款简易的音视频播放器

  16. 将 x264 库移植到 Android 平台,结合上面积累的经验,完成视频数据 H264 软编功能

  17. 将 librtmp 库移植到 Android 平台,结合上面积累的经验,完成 Android RTMP 推流功能

  18. 上面积累的经验,做一款短视频 APP,完成如:断点拍摄、添加水印、本地转码、视频剪辑、视频拼接、MV 特效等功能

相信我,如果你认真把所有任务都完成了,你一定会成为音视频人才招聘市场的香饽饽~~

下面是一些推荐的参考资料:

    1. 《雷霄骅的专栏》:
    2. 《Android音频开发》:
    3. 《FFMPEG Tips》:
    4. 《Learn OpenGL 中文》:
    5. 《Android Graphic 架构》:

转载地址:http://lvnll.baihongyu.com/

你可能感兴趣的文章
递归与尾递归(C语言)
查看>>
【phonegap】下载文件
查看>>
Web Service单元测试工具实例介绍之SoapUI
查看>>
谈谈javascript语法里一些难点问题(一)
查看>>
【BZOJ】1082: [SCOI2005]栅栏(二分+dfs)
查看>>
通过递归组合多维数组!
查看>>
ocp 1Z0-051 23-70题解析
查看>>
关于MFLAGS与MAKEFLAGS
查看>>
NotePad++ for PHP
查看>>
ssh事务回滚,纪念这几个月困扰已久的心酸
查看>>
jQuery中的编程范式
查看>>
比较快速排序,冒泡排序,双向冒泡排序的执行效率
查看>>
还没被玩坏的robobrowser(5)——Beautiful Soup的过滤器
查看>>
Linux 精准获取进程pid--转
查看>>
Servlet、Filter、Listener总结
查看>>
[翻译] JTBorderDotAnimation
查看>>
关于Thread类中三个interrupt方法的研究与学习(转)
查看>>
mysql 加入列,改动列,删除列。
查看>>
UML的学习
查看>>
ContentProvider简单介绍
查看>>