资讯专栏INFORMATION COLUMN

Android 音视频开发核心知识点笔记整合

lily_wang / 1233人阅读

摘要:这里给大家推荐一套学习路线,并附有相关音视频开发核心知识点笔记,相信可以给大家提供一些帮助,有需要的朋友们也可以下载下来随时查漏补缺。

很多开发者都知道Android音视频开发这个概念,音视频开发不仅需要掌握图像、音频、视频的基础知识,并且还需要掌握如何对它们进行采集、渲染、处理、传输等一系列的开发和应用,因此,音视频开发是一门涉及到很多内容的领域。

随着5G的普及,可以明确感知到目前市场上对于音视频人才的需求,市场招聘音视频岗位薪资亦是水涨船高,但Android 音视频开发这块目前的确没有比较系统的教程或者书籍,网上的博客文章也都是比较零散的。只能通过一点点的学习和积累把这块的知识串联积累起来。

这里给大家推荐一套学习路线,并附有相关《音视频开发核心知识点笔记》,相信可以给大家提供一些帮助,有需要的朋友们也可以下载下来随时查漏补缺。

音视频初级入门

音视频初级入门主要是接触Android多媒体展示相关的API,通过多带带的列举和使用这些API,对Android音视频处理有一个基本的轮廓,虽然知识点相对来说是比较散的,但是点成线、线成面,基本的基础掌握了,通过学习Android音视频核心的API将音视频的流程串联起来,这样对于音视频的了解和控制就不仅仅局限于最外层的API了,而是能够通过相对底层的方式来加深对Android 音视频开发的认知。

  • Android 音视频开发(一):通过三种方式绘制图片
  • Android 音视频开发(二):使用 AudioRecord 采集音频PCM并保存到文件
  • Android 音视频开发(三):使用 AudioTrack 播放PCM音频
  • Android 音视频开发(四):使用 Camera API 采集视频数据
  • Android 音视频开发(五):使用 MediaExtractor 和 MediaMuxer API 解析和封装 mp4 文件
  • Android 音视频开发(六):MediaCodec API 详解
  • Android 音视频开发(七):音视频录制流程总结
  • ……

音视频中级进阶:OpenSL ES 学习

学习 Android 平台 OpenSL ES API,了解 OpenSL 开发的基本流程,使用OpenSL播放PCM数据,并了解相关API的简单使用

  • Android OpenSL ES 开发:Android OpenSL 介绍和开发流程说明
  • Android OpenSL ES 开发:使用 OpenSL 播放 PCM 数据
  • Android OpenSL ES 开发:Android OpenSL 录制 PCM 音频数据
  • Android OpenSL ES 开发:OpenSL ES利用SoundTouch实现PCM音频的变速和变调

这一部分主要是动手实践,积累实战经验,可以试试给自己定以下目标:

  • 使用 OpenGL 显示一张图片
  • GLSurfaceviw 绘制 Camera 预览画面及实现拍照
  • 使用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 响应触摸事件
  • Android OpenGL ES 开发(八): OpenGL ES 着色器语言GLSL
  • Android OpenGL ES 开发(九): OpenGL ES 纹理贴图
  • Android OpenGL ES 开发(十): 通过GLES20与着色器交互
  • ……

由于文章篇幅长多有限,不能一一的展现该学习文档中的所有内容,大家与需要参考学习可以点击下方小卡片进行访问查阅。

音视频高级探究

  • 深入学习音视频编码,如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中重要结构体之间的关系
  • ……

  • FFmpeg 开发之 AVFilter 使用流程总结
  • FFmpeg 过时 Api 汇总整理
  • ……

由于文章篇幅长多有限,不能一一的展现该学习文档中的所有内容,大家与需要参考学习可以点击下方小卡片进行访问查阅。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/122312.html

相关文章

  • 开源集锦

    摘要:密码服务层分片分片新思路目前国内流行的开源数据库分片实现都基于的改写分发与结果归并。虽然独立开发人员仍是开源社区的重要组成部分,但如今开源项目的大部分工作由企业开发人员完成。 Android2017 这些技术 —— 你都了解过吗 插件化 热更新 对Android平台,我们通常所说的在线热更新就是,例如对已经发布在应用市场上的宿主APK,当我们从crash统计平台上发现某个函数调用有bu...

    Simon 评论0 收藏0
  • 菜鸟程序员如何才能快速提高自己的技术

    摘要:当初弄这个公众号的本意就是为广大的开发者提供各种技术分享,发布最前沿的科技信息和技术。学会了自己查文档,就提高了自己解决问题的能力了,也提高了学习新技术的能力。多去浏览一些技术博客和网站,提高自己。 导语:很久没有这么悠闲的在家撸一篇文章了,最近也在思考怎样才能写一些对程序员帮助非常大的文章,怎样去运营好我们这个移动开发者聚集地的公众号:非著名程序员。当初弄这个公众号的本意就是为广大的...

    Paul_King 评论0 收藏0
  • 从零开发一款Android RTMP播放器

    摘要:本文主要介绍这款播放器的实现思路。这里我们使用基于音频帧同步的方法,渲染画面时,判断音频时间戳与视频画面渲染周期,如果大于周期,则等待,如果大于小于周期,如果小于则立马绘制。 ...

    nemo 评论0 收藏0
  • 有用的框架级的东西

    摘要:多个可以提高你安卓开发技能的开源学习的最佳方式就是阅读,对程序员来说也是如此。如何做一个崩溃率少于千分之三噶应用章节列表这个系列的有关架构的概念,适合有大概三年以上经验的同学理解。 Android 开源图表库 - SmallChart SmallChart 是一个开源的 Android 图表库,拥有 5 种不同的图表类型来展示数据。可以通过输入的数据以及可设置的颜色、画笔大小等属性方便...

    MadPecker 评论0 收藏0
  • 刷到就是赚到!八月阿里 Android 高级岗面经(年薪百万)

    摘要:前段时间,前同事跳槽,机缘巧合下面了阿里,本来凭着试一试的态度,却不料好事成双,拿到了,而且薪资也了。面就没啥东西可聊的,基本上就是对此次面试的一个评价定薪等等一些之内的话题。如果是现场面试,记得关注当天的天气,提前查一下路线。 ...

    aisuhua 评论0 收藏0

发表评论

0条评论

lily_wang

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<