【课程介绍】3 @. Z3 J- W% v, c. ^
FFmpeg打造Android万能音频播放器视频教程,移植FFmpeg到Android平台,利用FFmpeg解码音频数据并用OpenSL ES来播放,打造Android万能播放器。 M$ L' t. s7 L" E a6 L; j' h- ]5 {
2 V: o0 q6 _+ {5 P: N5 y% p
【课程收益】
1、学会FFmpeg编译Android平台。
2、学会FFmpeg解码音频数据流程。
3、学会Android中用OpenSL ES来播放PCM音频。 % C! H2 T5 u! p# {2 h9 n! c
4、学会Android中调用C++方法。
〖课程目录〗:
1.课程简介和功能演示 3:10
2.FFmpeg移植Android平台(arm和x86) 17:52 m1 u! B* \3 E, ]/ d$ a
3.创建C++项目并导入FFmpeg动态库 41:08/ E, x- i" O6 W4 W$ N
4.FFmpeg解码流程 9:17* ]1 [! r4 ^( K* ?- F1 k
5.C++多线程、生产者和消费者模型以及C++全局调用Java方法 01:06:41" R/ m/ d2 }/ T# c- \/ j8 {7 F& k
6.C++多线程解码音频数据 01:01:20
7.C++队列缓存AVpacket 30:19* L$ Z& s4 i1 d- i' |
8.OpenSL ES介绍并实现播放PCM数据 57:42
9.FFmpeg对音频数据重采样生成PCM数据 52:02% m: \5 S8 j. `: v' p% d, k
10.FFmpeg+OpenSL ES完成音频播放 19:190 n/ `& p! l0 B8 k
11.添加加载、暂停、播放状态和相应回调功能 22:17
12.计算当前播放时长和获取总时长以及实现回调 32:13
13.添加停止播放功能并释放内存 36:09( o; L. F# g9 h! I6 s. c
14.添加播放器出错回调 14:153 {0 d- l% R) ~( y5 ]7 ]
15.添加seek功能和完成播放回调 31:03
16.实现当前播放页面切换播放功能 7:166 s2 b' a: q" N/ K8 s; F& j: s. w, D
17.课程计划变更(原APP实例改为添加SDK高级功能) 1:08
18.音频控制 33:52
19.实现左右声道切换 15:18
20.实现变速变调功能(一) 14:30
21.实现变速变调功能(二) 38:294 s1 O* o0 v' J) p
22.计算PCM数据的分贝值 15:42! o- x1 C9 U5 u; a4 K
23.MediaCodec编码PCM为aac音频实现边播边录(一) 47:13
24.MediaCodec编码PCM为aac音频实现边播边录(二) 19:36/ J* R! Y. M- ]; p
25.解决变速变调卡顿问题和添加边播边录时间回调 12:52& ~) i. z- h! c& m
26.优化SDK 10:51
27.课程总结 9:033 N# z4 W/ N, }+ L, ?
28.后续一:播放.ape音乐异常原因分析和解决 13:328 Z! w- ?% m( _" t7 V2 c
29.后续二:音频裁剪并返回PCM数据可进行二次开发 46:52+ N/ {- e% F6 ~: O- B
30.后续三:PCM大数据分包(解决录音崩溃问题) 30:58! r/ A- n8 J8 S: h6 N2 N5 x( Q
31.升级FFmpeg到当前最新版本(v4.0.2) 17:22
下载地址:
|