摄像头被占用后如何录像。

毛毛丶 2015-07-15 02:41:22
摄像头被占用后,用camera.open的方法会报错。
原来的是MediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA),
能不能直接从摄像头那边获取当前摄像头的一个存储帧的BUFFER,然后进行录像。从而跳过打开摄像头这一步?
或者有没有别的方案能解决摄像头被占用后录像的问题?请大神帮忙解答。
...全文
528 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sagittarius1988 2015-07-15
  • 打赏
  • 举报
回复
引用 3 楼 tu1824 的回复:
[quote=引用 2 楼 sagittarius1988 的回复:] 你这就是从占用摄像头的进程获取数据了啊,基本上不可行。 要么你把占用摄像头的进程给kill掉?
我想实现的是视频通话同时录像。都是在同一个软件中实现的。 视频通话是用PJSIP实现,现在在想有没有一种办法直接获取到摄像头中的数据,或者获取我视频通话中的那个view的图像并且录制下来也行。[/quote] 那就直接自己对视频流数据进行操作咯。只开一个线程读视频流,你视频通话和录像都从这个线程中取数据
毛毛丶 2015-07-15
  • 打赏
  • 举报
回复
引用 2 楼 sagittarius1988 的回复:
你这就是从占用摄像头的进程获取数据了啊,基本上不可行。 要么你把占用摄像头的进程给kill掉?
我想实现的是视频通话同时录像。都是在同一个软件中实现的。 视频通话是用PJSIP实现,现在在想有没有一种办法直接获取到摄像头中的数据,或者获取我视频通话中的那个view的图像并且录制下来也行。
sagittarius1988 2015-07-15
  • 打赏
  • 举报
回复
你这就是从占用摄像头的进程获取数据了啊,基本上不可行。 要么你把占用摄像头的进程给kill掉?
大盗懒羊羊 2015-07-15
  • 打赏
  • 举报
回复
在源码中如若出现摄像头占用的话,一般都是发送广播将正在使用摄像头的应用给停掉的。 比如,打开camera时,手电筒正在打开占用闪光灯,则camera发送广播,手电筒接收后关闭闪光灯,camera就能够使用了。 如果是第三方APK的话,暂时不知道怎么处理。 此外,我记得在底层驱动文件中,好像有一个值是可以修改闪光灯摄像头的占用模式的,可以修改为允许多应用同时占用。不过一般没有手机会这么改的。

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧