前言
这就只做使用MediaCodec+SurfaceView播放视频
PS 这里不涉及音频播放,只显示视频帧出来。
正文
这里只简单记录一下,推荐看我参考的文章,我用的就是他的代码。
原理
- 通过MediaExtractor获取媒体的编码信息[Track索引,MediaMime,MediaFormat]
- 根据编码信息进行创建MediaCodec
- 在子线程循环dequeueInputBuffer和queueInputBuffer等获取视频帧信息,并刷新给SurfaceView
参考文章
- 《使用MediaCodec+AudioTrack进行简单的音视频播放_leilu000的博客-CSDN博客》
- 《深入理解Android音视频同步机制(五)如何从零开始写一个音视频同步的播放器_zhanghui_cuc的博客-CSDN博客》
- 等,其他的忘了
历史上的今天
暂无评论...
随机推荐
JNI动态注册封装C语言版
前言在上一篇《JNI调用Java方法》的动态注册并调用Java方法,上次也说了可以把公共部分封装一下。说干就干,今天就把上次代码封装一下。正文我这不介绍完整的动态注册,有需要可以看《JNI动态注册》。这里只是个人流水账。Hello.javapackage com.biumall.dyn...
[摘]Android音频焦点处理
概要Android系统允许多个应用同时播放音频,这种特性有利有弊。例如当我们正在听音乐的时候突然点开了一个视频,如果我们发现音乐的声音和视频的的声音混合了在一起,这显然让我们非常不爽。而如果我们在播放音乐的时候,突然来了一条信息,这个时候,我们既希望能听到短信的提示音,又不希望音乐此刻停止,而是...
戴望舒:致萤火
萤火,萤火,你来照我。 照我,照这沾露的草,照这泥土,照到你老。 我躺在这里,让一颗芽穿过我的躯体,我的心,长成树,开花; 让一片青色的藓苔,那么轻,那么轻把我全身遮盖, 象一双小手纤纤,当往日我在昼眠,把一条薄被在我身上轻披...
沈从文 : 独处
在我一个自传里,我曾经提到过水给我种种的印象。檐溜、小小的河流、汪洋万顷的大海,莫不对于我有过极大的帮助。我学会用小小脑子去思索一切,全亏得是水。我对于宇宙认识得深一点,也亏得是水。“孤独一点,在你缺少一切的时节,你就会发现,原来还有个你自己。”这是一句真话。我有我自己的生活与理想,可以说是...
lateinit和by lazy简单使用
前言记录一下Kotlin中lateinit和by lazy简单使用。正文lateinit为延迟初始化属性。lateinit用于延迟初始化一个var可变属性。属性类型必须是非空的且不能是原始类型(如 Int, Double)。经常在类中定义属性时class Person{ v...
老舍:春风
济南与青岛是多么不相同的地方呢!一个设若比作穿肥袖马褂的老先生,那一个便应当是摩登的少女。可是这两处不无相似之点。拿气候说吧,济南的夏天可以热死人,而青岛是有名的避暑所在;冬天,济南也比青岛冷。但是,两地的春秋颇有点相同。济南到春天多风,青岛也是这样;济南的秋天是长而晴美,青岛亦然。对于秋天,我不...