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 特效等功能看到没这⼀条⼀条的.列的多好,我准备花半年的时间来学习.
实现第⼀条
在 Android 平台绘制⼀张图⽚,使⽤⾄少 3 种不同的 API,ImageView,SurfaceView,⾃定义 View
ImageView,⾃定义就不⽤说了吧,下⾯重点看看SurfaceView的绘制图⽚.
直接上代码:
image.png 第⼀步很好实现了!继续努⼒!!,坚持下去