设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3496|回复: 1
打印 上一主题 下一主题

关于安卓端anyChat连接USB摄像头的问题。

[复制链接]

1

主题

1

帖子

19

积分

新手上路

Rank: 1

积分
19
跳转到指定楼层
楼主
发表于 2017-8-30 21:32:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在做一个安卓板卡开发,要实现的功能是能通过HelloAnyChat这个apk使用USB摄像头和另一方视频。

现在我遇到的情况如下:
1.我的摄像头是UVC协议的USB摄像头。
2.安卓板卡是ARM架构的,我浏览网友之前发的帖,你们说只支持x86架构的CPU。
所以我的摄像头默认是不支持的。

于是我想改下代码,我看了HelloAnyChat Demo中的VideoActivity和AnyChatCameraHelper类。
我发现在AnyChatCameraHelper类中需要设置如下信息:
1.画面frame的 byte[] 数组:AnyChatCoreSDK.InputVideoData(data, data.length, 0);
2.是否是外部视频输入?:AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_CORESDK_EXTVIDEOINPUT, 1);
3.视频格式、宽高、预览帧率:AnyChatCoreSDK.SetInputVideoFormat(mVideoPixfmt, previewSize.width, previewSize.height, iCurPreviewRange[1]/1000, 0);
4.前置后置摄像头:AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_CAMERAFACE, cameraInfo.facing);

我现在的问题是这样:
1.是不是只有获取了如上的数据,也能我的摄像头也能被支持。
2.能够解释一下BRAC_SO_CORESDK_EXTVIDEOINPUT是什么参数。
3.我调用的驱动有onFrame回调方法,和系统Camera的onPreviewFrame一样,但是onFrame回调的参数是ByteBuffer,不是byte[],
   我试着将ByteBuffer转换成byte[],但是还有问题,能否给AnyChatCoreSDK增加一个InputVideoData方法,参数是ByteBuffer。
4.上面提到的数据必须都得传入才行吗?目前BRAC_SO_LOCALVIDEO_CAMERAFACE肯定只能传一个虚的,预览帧率这边也没法获取,也只能传入一个自定义的值。


目前改了AnyChatCameraHelper,但视频接收端(手机端)没有画面这个usb摄像头的画面,板卡这边usb摄像头的预览是有的。
看了一下手机端的log,
AnyChatCoreSDK中的private void OnVideoDataCallBack(int userid, byte[] buf, int len, int width, int height)方法,根本没有执行。


麻烦贵公司的大神帮我解答一下。
最终目的就是usbCamera能掉起来,谢谢

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

沙发
发表于 2017-8-31 09:46:44 | 只看该作者
本帖最后由 佰锐科技-刘冬明 于 2017-8-31 09:51 编辑

您好,我们安卓API目前只支持本地摄像头。如果安卓USB外接摄像头,要获得支持,必须针对您的需求进行修改,须走定制。具体定制方案可咨询我们商务。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-4-20 17:53 , Processed in 0.104393 second(s), 21 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表