一个可播放的网络视频url http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4
由于项目中用到了视频认证功能,所以想到了采用与微信小视频录制类似的界面功能来实现,只是多了个切换前后置摄像头而已。
由于时间仓促,先贴出效果图,如下(只是简单实现):

源码托管在Github上

目前该Demo还存在一个严重的bug,就是点击按钮就崩溃,报错如下:

08-30 16:44:21.894 30628-30628/com.xmliu.littlevideodemo E/AndroidRuntime: FATAL EXCEPTION: mainProcess: com.xmliu.littlevideodemo, PID: 30628java.lang.RuntimeException: Fail to connect to camera serviceat android.hardware.Camera.<init>(Camera.java:669)at android.hardware.Camera.open(Camera.java:499)at com.xmliu.littlevideodemo.RecordVideoActivity.recorder(RecordVideoActivity.java:346)at com.xmliu.littlevideodemo.RecordVideoActivity$2.onTouch(RecordVideoActivity.java:134)at android.view.View.dispatchTouchEvent(View.java:8657)at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)

Fail to connect to camera service,关于这个问题stackoverflow上有两个回答数较高的相关问题,http://stackoverflow.com/questions/7829162/failed-to-connect-to-camera-service http://stackoverflow.com/questions/33276517/android-6-0-runtimeexception-fail-to-connect-to-camera-service

网上大概的解决方法就是添加权限,如下

    <uses-feature android:name="android.hardware.camera.autofocus" /><uses-feature android:name="android.hardware.camera" /><uses-permission android:name="android.permission.CAMERA" />

以及在surfaceDestroyed方法中release掉camera

@Overridepublic void surfaceDestroyed(SurfaceHolder holder) {if (myCamera != null) {myCamera.stopPreview();myCamera.release();myCamera = null;}}

还有说是Android 6.0系统后的权限有调整,然而我的测试机是5.1,而且这个功能是从一个完整项目中分离出来的,在完整项目中是可以正常使用的,然而在此demo中却莫名crash。。。
调试中,我去掉了以下两行代码却可以正常录制了

recorder.setAudioSource(MediaRecorder.AudioSource.MIC); // 录音源为麦克风
recorder.setAudioEncoder(profile.audioCodec);

该Demo中大概涉及到以下几个知识点:
1、控制镜头变焦,参考此文
2、创建视频缩略图,包括本地或者网络视频,参考此文
3、切换前后镜头,参考此文
4、本地或网络视频播放
5、双向进度条的使用,参考此文
6、定时器的使用
7、触摸事件的处理

Android仿微信小视频的简单实现相关推荐

  1. Android仿微信小视频录制功能(二)

    Android仿微信小视频录制功能(二) 接着上一篇,在完成了录制功能后,伟大的哲学家沃兹基索德曾经说过:"有录就有放.",那么紧接着就来实现播放功能,按照国际惯例,先上下效果图: ...

  2. Android 仿微信小视频录制

    Android 仿微信小视频录制 WechatShortVideo和WechatShortVideo文章

  3. Android仿微信小视频录制功能

    还没看完,应该还不错,先收藏,觉得可以开拓 https://blog.csdn.net/u012227600/article/details/50835633 -------------------- ...

  4. Android录制视频,仿微信小视频录制(一)

    Android录制视频,第一部分自定义控件 简述 公司有一个录制视频并上传的功能,录制视频具体使用类如下:硬件控制使用Camera,视频录制的格式音频等具体配置与录制使用MediaRecorder,预 ...

  5. Android 仿微信小程序开屏页加载loading

    Android 仿微信小程序开屏页加载loading 废话不多说,先上效果图~ 首先就是底层有一个灰色的圆,然后按照圆形的轨迹进行绘制. 啊~说那么多也没用,还是直接上代码吧,哈哈哈哈 绘制底部圆形及 ...

  6. 仿微信朋友圈,仿微信小视频 ,录制视频功能

    https://github.com/Naoki2015/VCameraDemo 仿微信小视频    CircleDemo  https://github.com/Naoki2015/CircleDe ...

  7. Android 仿微信短视频录制

    VideoRecorder 项目地址:junerver/VideoRecorder 简介: Android 仿微信短视频录制 更多:作者   提 Bug 标签: Android 仿微信短视频录制 项目 ...

  8. 仿android微信视频编辑,Android 仿微信短视频录制

    VideoRecorder Android 仿微信短视频录制 预览 Bug 修复与更新日志: 更新日志: 1.2.0:仿照微信,短按拍照长按拍摄 --19.06.21 1.1.5:增加进度条,修改依赖 ...

  9. android高仿微信小视频,Android仿微信录制小视频

    本文实例为大家分享了Android仿微信录制小视频的具体代码,供大家参考,具体内容如下 先上张图片看看效果 简单叙述下 首先通过Camera类调用系统相机 通过surfaceview绘制出来 通过Me ...

最新文章

  1. 计算机组成原理思维导图
  2. leetcode算法题--学生分数的最小差值
  3. python获取url参数 类继承_python之类的继承
  4. html5本地缓存如何提交,HTML5: 本地缓存
  5. linux第一季运维001
  6. 长能耐了?想造反了?你老婆没了.......
  7. 可视化数据包分析工具-CapAnalysis
  8. VMware16虚拟机怎么共享文件夹?
  9. 用ajax下载字节流形式的excel文件
  10. VSCode设置中文语言
  11. visio反向工程 mysql_Visio 2010对MySQL数据库反向工程生成ER数据库模型图
  12. 第五章-畅销书排行榜
  13. echarts实现世界地图,给不同数值的国家着色,并根据经纬度在对应位置上添加标签(一)
  14. vr全景拍摄教程,怎样拍摄vr全景照片?
  15. python写一个简单的12306抢票
  16. 中国古代美女才女不完全记录
  17. eclipse 上传代码到github,我花费了一个月测的。就这样了
  18. 【Atcoder】Atcoder Beginner Contest 50
  19. Android官方技术文档翻译——新构建系统概述
  20. 布袋除尘器过滤风速多少_布袋除尘器过滤风速的选择

热门文章

  1. 一体化闸门控制机如何使用
  2. DJ14 简单接口电路及应用
  3. stm32f407驱动am2302温湿度传感器驱动代码
  4. ctyoung显示服务器错误,电信ct-young服务终端错误怎么弄
  5. Android软件去广告教程
  6. 按键精灵简单demo
  7. 北京地铁10号线今晨发生故障 部分列车晚点
  8. java基于微信小程序的在线学习平台 uniapp小程序
  9. 星际战甲计算机硬盘不够,我家电脑这配置能不能玩星际战甲(Warframe)
  10. hexo排坑——页面跳转变成了下载