做者:林冠宏 / 指尖下的幽灵 掘金:juejin.im/user/587f0d… 博客:www.cnblogs.com/linguanh/ GitHub : github.com/af913337456…git
为了您的直观体验,请务必看完下面 gif 图,源码 gitHub 连接在其以后。github
作这个东西的目的是: 完善毕设: 一个没依赖各类云,而使用C++和Golang作后端的仿微信APP后端
为了不你们浪费时间,直接先看下面的 Gif,略大,请耐心点。看完后,若你以为会须要到,那么就请听我继续。缓存
git显示,略大,请耐心微信
废话一句:这个显示只是其中一部分,重点是:FFmpeg + Camera 的录制部分,因此,你的星星(star)也是一种更新通知 (我通知你)。网络
若是你看完上面的gif图,你会发现以下几点功能 (Function list):this
1,直观的3d
2,隐藏的code
直观的功能点,几乎就是和新版微信
的同样,从朋友圈点击一个视频,而后进入到一个 Activity 页面进行加载以及播放。
由于采用的是 SurfaceView 而不是 TextureView,图与视频切换的切换延迟也是这个缘由。
自定义 AsyncTask。PS:AsyncTask 比 Thread + handler 重量级却方便(回调进度),可是,若是是 即放即用,结束即销毁,那么,no need to think about this;
surfaceView 用做显示,mediaPlayer 用来解码 二者关系: mediaPlayer 绑定 surfaceView。
自定义 View,3个画笔绘制,一个圆,一个边,一个扇区。