公众号回复:OpenGL,领取学习资源大礼包

直播 中有提到几个不错的开源项目,这里再重点推荐一下:

目前,市面上关于音视频学习的相关书籍并不多,而且即使看了书籍学了理论,最终还是要回归到代码上来。

毕竟 IT 行业实践性要求高,强调动手能力,音视频这方面就更得多操作和探索了。

推荐下面几个项目会各有侧重,分别涵盖了 Android 音视频录制 API 、OpenGL 渲染和综合运用的例子。

  • GPUImage

Github 地址:

https://github.com/cats-oss/android-gpuimage

GPUImage 毫无疑问是音视频项目里面必读工程了,它的侧重点在于渲染方面。

有些公司的招聘要求上可能都会写明熟悉GPUImage ,重要性可见一斑。

通过阅读 GPUImage 的源码,能够让你掌握 OpenGL 的渲染以及渲染链的搭建,同时工程里面很多特效 Shader 代码,通过阅读和实践这些 Shader 代码,能够让你掌握初步的 Shader 编写能力。

比如常见的滤镜效果,在 GPUImage 就有现成的代码例子,这一点在我的直播中也有讲到。有兴趣的可以翻阅视频,掌握常见滤镜效果的代码编写。

如果需要 GPUImage 相关的源码分析文档,也可以参考我之前写过的一篇文章:

OpenGL 之 GPUImage 源码分析

  • AudioVideoRecordingSample

Github 地址

https://github.com/saki4510t/AudioVideoRecordingSample

此项目的侧重点在于 Android 音视频相关 API 的使用,尤其是在 录制和编码方面的。

该项目运行后能够将 Camera 采集的视频和音频内容编码成一个 MP4 文件。

这其中用到了 MediaCodec 做编码,用到了 MediaMuxer 将音频和视频混合。

这样的一个完整示例对于掌握 Android 上音视频相关 API 帮忙非常大,因为它能够成功正确运行,而且可以通过去修改其源码来做自己的实验,验证自己对于 API 的理解和掌握。

当你能够熟练掌握其内容,或者你就可以试着更进一步,尝试用 FFmpeg 做音视频的编码和混合,实现和 Android 音视频 API 一样的功能。

  • Grafika

Github 地址

https://github.com/google/grafika

此项目是 Google 提供的一个非官方的项目,它的侧重点在于将 OpenGL 与 Android 音视频 API 综合运用。

它包含了很多个完整小示例,比如如何使用 TextureView 显示 OpenGL 内容、使用三种方式进行 OpenGL 内容的录制、如何进行硬编码操作等。

通过阅读这些例子,能够让你掌握更多的技巧,把前面学会的 OpenGL 和 Android 音视频 API 更灵活运用了,进一步加深理解。

甚至有些例子都可以用到项目早期需求中去的,比如如何进行 EGL 的封装、渲染线程与主线程的分离。

另外,以上三个例子都会包含 Camera 相关的操作,比如如何将 Camera 内容展示到 SurfaceView 、TextureView 上,如何进行 Camera 拍摄等。

最后

之前这三个项目堪称教科学书级别的,不是没有理由的。至少我都源码阅读了两边以上。

第一次阅读的时候会觉得 " 嗯,明白怎么回事了 ",等到项目实践了,需要自己从头搞一遍,这时再回头看,会有新的感悟 "哦,原来要这样设计呀" ,等到更熟练的时候,在来看,可能就会觉得 "咦,这块能优化一波了"。

以上,希望对于想从事音视频开发的你,也能够看看上面几个项目源码,学习到更多技巧,共同进步。

技术交流,欢迎加我微信:ezglumes ,拉你入技术交流群。

扫码关注公众号【音视频开发进阶】,一起学习多媒体音视频开发~~~

喜欢就点个「在看」吧 ▽

推荐几个堪称教科书级别的 Android 音视频入门项目相关推荐

  1. 堪称教科书级别的Android音视频入门进阶学习手册,开源分享

    概述 随着整个互联网的崛起,数据传递的形式也在不断升级变化,总的流行趋势如下: 纯文本的短信,QQ -> 空间,微博,朋友圈的图片文字结合 -> 微信语音 -> 各大直播软件 -&g ...

  2. 吹爆系列:教科书级别的Android音视频入门进阶学习手册,学完我成功“挤进”了抖音音视频开发岗

    Android开发工作两年,真的是感觉Android应用层开发没什么前景了,于是打算在网络安全,智能硬件,音视频这几个方向发展,考虑了一段时间,最终决定选择音视频.理由就不说了,既然选择了就要好好深耕 ...

  3. 未来十年的音视频,教科书级别的Android音视频开发教程,学完我成功“挤进”了抖音音视频开发岗

    未来的趋势 现在客户端卷的风起云涌,很多安卓开发者都是抱怨连天,上有闭灯苦读,下有图书馆黑丝诱惑.内卷之下,相比本来就堪忧的发量,前途未卜的迷茫带来的精神折磨更是雪上加霜 ,在这脉脉上的一位朋友给出了 ...

  4. Android 音视频入门之音频采集、编码、播放

    今天我们学习音频的采集.编码.生成文件.转码等操作,我们生成三种格式的文件格式,pcm.wav.aac 三种格式,并且我们用 AudioStack 来播放音频,最后我们播放这个音频. 本篇文章你将学到 ...

  5. Android 音视频入门/进阶教程

    后续的音视频文章,都会在这里更新 作为安卓开发仔,对音视频这块,一直是比较感兴趣的,所以,本着学习和记录的态度,我也把我所学的知识记录起来,希望对想音视频感兴趣的小伙伴有所帮忙. 一. 基础文章系列 ...

  6. Android音视频入门及架构介绍

    一.多媒体基础 音视频格式 一个视频文件的格式由封装格式+音频码流格式+视频码流格式+字幕流组成. 如下为一个视频文件的信息,是asf封装的wmav2音频+mpeg4视频. 常用的视频格式 MPEG系 ...

  7. Android 音视频开发学习思路

    Android 音视频开发这块目前的确没有比较系统的教程或者书籍,网上的博客文章也都是比较零散的.只能通过一点点的学习和积累把这块的知识串联积累起来. 初级入门篇: Android 音视频开发(一) ...

  8. Android 音视频开发入门指南

    最近收到很多网友通过邮件或者留言说想学习音视频开发,该如何入门,我今天专门写篇文章统一回复下吧. 音视频这块,目前的确没有比较系统的教程或者书籍,网上的博客文章也都是比较零散的,希望我后面能挤出时间整 ...

  9. android音视频指南-支持的媒体格式

    android音视频指南-支持的媒体格式 本文描述了Android平台提供的媒体编解码器.容器和网络协议支持. 作为应用程序开发人员,您可以使用任何可以在任何Android设备上使用的媒体编解码器,包 ...

最新文章

  1. led伏安特性实验误差分析_检测实验室误差分析知识汇编
  2. bind函数作用、应用场景以及模拟实现
  3. Almost Sorted Array HDU - 5532
  4. 第一篇:服务的注册与发现Eureka(Finchley版本)V2.0_dev
  5. OpenShift 4 - DevSecOps Workshop (13) - 将镜像推送到Quay,并进行漏洞扫描
  6. Python 之父:移动设备中的 Python 应用“又大又慢”!
  7. 最新基于高德地图的android进阶开发(6)感兴趣点(POI)周边搜索源码浅析
  8. 四川传媒学院计算机应用技术分数,四川传媒学院历年各专业录取文化最低控制分数线一览表...
  9. 【Python】用pip安装python库下载超时的解决办法
  10. 在word中无法使用输入法解决方法
  11. 关于马尔科夫链的期望收益在matlab中的实现
  12. 汉印扫描器设置软件_汉印HPRTK180打印机驱动
  13. 【JavaScript设计模式】装饰器模式
  14. 项目邮件[置顶] 失业的程序员(十二):潜意识的智商
  15. 转载:MATLAB中怎么表示对数函数及e
  16. 计算机科学与技术反思录。
  17. 12. 查询表product——查询库存商品中,最高单价、最低单价分别是多少
  18. 《设计模式》设计模式的基本原则
  19. js处理blur事件触发多次
  20. 股权激励和员工持股计划有什么不同

热门文章

  1. Linux系统及应用复习题
  2. 数字证书原理详细介绍 单向认证 双向认证
  3. 2012多校联盟第二场1009 还是BFS
  4. 协处理器CP15介绍—MCR/MRC指令(6)
  5. Tiktok运营知识:刚开始如何快速涨粉?上热门
  6. 11虚幻4【UE4】 让物体/图标始终朝向相机
  7. 【洛谷P3258】松鼠的新家
  8. 【BYM】Android 实现相机快门动画
  9. STM32学习笔记1——软硬件基础之keil5编程与GPIO开发
  10. Android Studio 实现单选对话框