接触Android音视频这一块曾经有一段时间了,跟一般的应用层开发相比,确实更破费精力。期间为了学习音视频的录制,编码,解决也看过大大小小的几十个我的项目。总体感觉就是常识比拟零散,对刚入门的敌人比拟不敌对。所以才萌发了整顿一个Android音视频学习路线的想法,零碎的学习效果必定要远好于零零散散的补充常识。
先来看我本人总结的一个学习纲要图:
上图看的只是纲要,具体的音视频的要学习的知识点十分多,算是一条不归路。然而要学到能混口饭吃还是不难的,而且学好了必定不只是混一口饭。 找个当初的招聘信息给大家点信念,能够看到,待遇还是很可观的。
好了,回归正题。
光看纲要,大家都晓得要学习音视频录制,编码,解决,然而具体不晓得怎么做,也不晓得怎么入门。我本人在入门的时候也一样,靠着搜索引擎本人一点一点的积攒,在这里当然要谢谢在该畛域无私奉献的大佬们。所以在这里,我会对常识进行细化,使用的具体的场景中去,实践联合代码,更好的帮忙把握。
上面是我整顿的学习路线,置信我,如果你认真学完了,你肯定会成为音视频人才招聘市场的香饽饽~~
一、高级入门篇:
一、绘制图片
- ImageView 绘制图片
- SurfaceView 绘制图片
- 自定义 View 绘制图片
二、AudioRecord API详解
三、应用 AudioRecord 实现录音,并生成wav
- 创立一个AudioRecord对象
- 初始化一个buffer
- 开始录音
- 创立一个数据流,一边从AudioRecord中读取声音数据到初始化的buffer,一边将buffer中数据导入数据流。
- 敞开数据流
- 进行录音
四、用 AudioTrack 播放PCM音频
1.AudioTrack 根本应用
- MODE_STATIC模式
- MODE_STREAM模式
2.AudioTrack 详解
- 音频流的类型
- Buffer调配和Frame的概念
- AudioTrack结构过程
- AudioTrack 与 MediaPlayer 的比照
- 区别
- 分割
- SoundPool
五、应用 Camera API 采集视频数据
1.预览 Camera 数据
2.取到 NV21 的数据回调
六、应用 MediaExtractor 和 MediaMuxer API 解析和封装 mp4 文件
1.MediaExtractor API介绍
2.MediaMuxer API介绍
3.应用情境
七、MediaCodec API 详解
1.MediaCodec 介绍
2.MediaCodec API 阐明
3.MediaCodec 流控
- 流控基本概念
- Android 硬编码流控
- Android 流控策略抉择
因为文章篇幅受限,残余内容过多,文中插图无限,下文只能截图目录展现:
所有知识点具体内容都整顿在了开源我的项目【GitHub】,有须要的能够自取。
二、中级进阶篇:
- Android OpenGL ES 开发(一): OpenGL ES 介绍
- Android OpenGL ES 开发(二): OpenGL ES 环境搭建
- Android OpenGL ES 开发(三): OpenGL ES 定义形态
- Android OpenGL ES 开发(四): OpenGL ES 绘制形态
- Android OpenGL ES 开发(五): OpenGL ES 应用投影和相机视图
- Android OpenGL ES 开发(六): OpenGL ES 增加静止成果
- Android OpenGL ES 开发(七): OpenGL ES 响应触摸事件
- Android OpenGL ES 开发(八): OpenGL ES 着色器语言GLSL
- Android OpenGL ES 开发(九): OpenGL ES 纹理贴图
- Android OpenGL ES 开发(十): 通过GLES20与着色器交互
- 应用 OpenGL 显示一张图片
- GLSurfaceviw 绘制 Camera 预览画面及实现拍照
- 应用OpenGL ES 实现视频的录制,并实现视频水印成果
高级探索篇:
- 深刻学习音视频编码,如H.264,AAC,钻研应用开源编解码库,如x.264,JM 等
- 深入研究音视频相干的网络协议,如 rtmp,hls,以及封包格局,如:flv,mp4
- 深刻学习一些音视频畛域的开源我的项目,如 webrtc,ffmpeg,ijkplayer,librtmp 等等
- 将 ffmpeg 库移植到 Android 平台,联合下面积攒的教训,编写一款繁难的音视频播放器
- 将 x264 库移植到 Android 平台,联合下面积攒的教训,实现视频数据 H264 软编性能
- 将 librtmp 库移植到 Android 平台,联合下面积攒的教训,实现 Android RTMP 推流性能
音视频编解码技术
- 音视频编解码技术(一):MPEG-4/H.264 AVC 编解码规范
- 音视频编解码技术(二):AAC 音频编码技术
流媒体协定
- 流媒体协定(一):HLS 协定
- 流媒体协定(二):RTMP协定
多媒体文件格式
- 多媒体文件格式(一):MP4 格局
- 多媒体文件格式(二):FLV 格局
- 多媒体文件格式(三):M3U8 格局
- 多媒体文件格式(四):TS 格局
- 多媒体文件格式(五):PCM / WAV 格局
FFmpeg 学习记录
- FFmpeg命令行工具学习(一):查看媒体文件头信息工具ffprobe
- FFmpeg命令行工具学习(二):播放媒体文件的工具ffplay
- FFmpeg命令行工具学习(三):媒体文件转换工具ffmpeg
- FFmpeg命令行工具学习(四):FFmpeg 采集设施
- FFmpeg命令行工具学习(五):FFmpeg 调整音视频播放速度
- FFmpeg 学习(一):FFmpeg 简介
- FFmpeg 学习(二):Mac下装置FFmpeg
- FFmpeg 学习(三):将 FFmpeg 移植到 Android平台
- FFmpeg 学习(四):FFmpeg API 介绍与通用 API 剖析
- FFmpeg 学习(五):FFmpeg 编解码 API 剖析
- FFmpeg 学习(六):FFmpeg 外围模块 libavformat 与 libavcodec 剖析
- FFmpeg 构造体学习(一): AVFormatContext 剖析
- FFmpeg 构造体学习(二): AVStream 剖析
- FFmpeg 构造体学习(三): AVPacket 剖析
- FFmpeg 构造体学习(四): AVFrame 剖析
- FFmpeg 构造体学习(五): AVCodec 剖析
- FFmpeg 构造体学习(六): AVCodecContext 剖析
- FFmpeg 构造体学习(七): AVIOContext 剖析
- FFmpeg 构造体学习(八):FFMPEG中重要构造体之间的关系
更多目录截图:
总结:以上就是对于音视频的材料最强整顿和概括了(还有局部内容没有截图进去),置信应该是全网最全了,所有材料都是收费分享给大家的,也省去了对音视频感兴趣的小伙伴们到处找材料的工夫,如果你正好须要能够点此处收费获取
音视频开发的前景,置信大家从相干的招聘网站上就能够看到,不论是流媒体开发还是音视频解决开发,都是大量招人的,并且因为入门门槛绝对较高,学习周期长,薪资也是居高不下。
另外:小编还收集整理一些音视频相干配套视频,置信能使大家学习起来更加疾速无效:
**文中所有材料都是收费分享给大家的,[只需你动动手指导击此处就可中转收费支付形式了。](https://github.com/zhireshini…
)**
Android架构师之路很漫长, 一起共勉吧!学习之路犹如逆水行舟,逆水行舟,如果你松散了, 那么你就退化了,而在Android开发工作中没有一门吃香独特的技术,想拿高薪也只能是可望不可即的。做个怠惰向上的人,加紧学习,抓住核心,宁精勿杂,宁专勿多。
如果你正好须要这份完整版Android音视频开发,只需你多多反对我这篇文章。
疾速动手通道:(点这里)下载!诚意满满!!!
整顿不易,感觉有帮忙的敌人能够帮忙点赞分享反对一下小编~
你的反对,我的能源;祝各位前程似锦,offer一直!!!
发表回复