音视频的应用越来越广泛,特别是移动端的音视频应用,包括短视频、音视频直播、音视频通话等;移动端的音视频开发需求也会非常大。作为一名移动开发者,学习和了解音视频开发也是非常必要的。
但 Android 音视频开发这块目前没有比较系统的教程和书籍,这里给大家分享两份音视频资料《Android音视频开发进阶指南》《音视频精编源码解析》,相信可以给大家在音视频的学习上提供一些帮助。
音视频开发学习路线图
Android音视频开发进阶指南
《Android音视频开发进阶指南》分为五个大章节:Android音视频硬解码篇、使用OpenGL渲染视频画面篇、Android FFmpeg音视频解码篇、直播系统聊天技术、直播系统聊天技术、阿里IM技术分享。最后两个章节分享了包括阿里电商,微信,百度等技术实践。
一、Android音视频硬解码篇
- 音视频基础知识
- 音视频硬解码流程:封装基础解码框架
- 音视频播放:音视频同步
- 音视频解封和封装:生成一个MP4
二、使用OpenGL渲染视频画面篇
- 初步了解OpenGL ES
- 使用OpenGL渲染视频画面
- OpenGL渲染多视频,实现画中画
- 深入了解OpenGL之EGL
- OpenGL FBO数据缓冲区
- Android音视频硬编码:生成一个MP4
三、Android FFmpeg音视频解码篇
- FFmpeg so库编译
- Android 引入FFmpeg
- Android FFmpeg视频解码播放
- Android FFmpeg+OpenSL ES音频解码播放
- Android FFmpeg+OpenGL ES播放视频
- FFmpeg简单合成MP4:视屏解封与重新封装
- Android FFmpeg 视频编码
四、直播系统聊天技术
- 百万在线的美拍直播弹幕系统的实时推送技术实践之路
- 阿里电商IM消息平台,在群聊、直播场景下的技术实践
- 微信直播聊天室单房间1500万在线的消息架构演进之路
- 百度直播的海量用户实时消息系统架构演进实践
- 微信小游戏直播在Android端的跨进程渲染推流实践
五、阿里IM技术分享
- 企业级IM王者——钉钉在后端架构上的过人之处
- 闲鱼IM基于Flutter的移动端跨端改造实践
- 闲鱼亿级IM消息系统的架构演进之路
- 闲鱼亿级IM消息系统的可靠投递优化实践
音视频精编源码解析
《音视频精编源码解析》,内容分为7个章节,涵盖 WebRTC Native 源码导读、X264 源码解读、FFmpeg、ijkplayer 源码分析系列、jsmpeg 源码解析、Live555 源码解析、Opus 源码解析,一共 675 页。
第一章 WebRTC Native 源码导读
- 第一节-安卓相机采集实现分析
- 第二节-安卓预览实现分析
- 第三节-安卓视频硬编码实现分析
- 第四节-VideoCRE 与内存抖动优化
- 第五节-安卓 P2P 连接过程和 DataChannel 使用
- 第六节-视频数据 native 层之旅
- 第七节-混音
- 第八节-P2P 连接过程完全解析
- 第九节-API 概览
- 第十节-RTP H.264 封包与解包
第二章 X264源码解读
- 第一节-概述
- 第二节-x264命令行工具
- 第三节-编码器主干部分-2
- 第四节-x264_slice_write()
- 第五节-滤波(Filter)部分
- 第六节-宏块分析(Analysis)部分-帧内宏块(Intra)
第三章 FFmpeg
- 第一节-FFmpeg 编译和集成
- 第二节-FFmpeg + ANativeWindow 实现视频解码播放
- 第三节-FFmpeg + OpenSLES 实现音频解码播放
- 第四节-FFmpeg + OpenGLES 实现音频可视化播放
- 第五节-FFmpeg + OpenGLES 实现视频解码播放和视频滤镜
- 第六节-FFmpeg 播放器实现音视频同步的三种方式
- 第七节-FFmpeg + OpenGLES 实现 3D 全景播放器
- 第八节-FFmpeg 播放器视频渲染优化
- 第九节-FFmpeg、x264以及fdk-aac 编译整合
- 第十节-FFmpeg 视频录制 - 视频添加滤镜和编码
- 第十一节-FFmpeg + Android AudioRecorder 音频录制编码
- 第十二节-Android FFmpeg 实现带滤镜的微信小视频录制功能
第四章 ijkplayer 源码分析系列
- 第一节-整体结构总结
- 第二节-read_thread流程
- 第三节-解码流程
- 第四节-渲染流程
第五章 jsmpeg 源码解析
- 第一节-基础知识 字符处理 ArrayBuffer TypedArray
- 第二节-TS码流 PAT PMT
- 第三节-源码buffer.js对Uint8Array的封装
- 第四节-源码ts.js TS格式解析流程
- 第五节-源码mpeg1.js MPEG1码流结构
- 第六节-概要总结
第六章 Live555源码解析
- 第一节-GROUPSOCK
- 第二节-MEDIUM媒体基础类
- 第三节-MEDIASOURCE、MEDIASINK、MEDIASESSION、MEDIASUBSESSION
- 第四节-FRAMEDSOURCE、RTPSOURCE、RTPSINK
- 第五节-GENERICMEDIASERVER、RTSPSERVER、RTSPCLIENT
- 第六节-testRTSPClient
- 第七节-ServerMediaSession、ServerMediaSubsession、live555MediaServer
第七章 Opus源码解析
- 第一节-简介
- 第二节-编解码器使用
- 第三节-手撸一个Opus编码程序
- 第四节-Opus解码程序实现
- 第五节-OggOpus封装器全解析
- 第六节-Opus编码基础之认识声音
- 第七节-Opus编码基础之压缩编码
以上音视频资料内容较多,展示了部分内容截图和目录,需要完整版文档的朋友可以点击这里免费领取!