设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

AnyChat打开远程视频后本地消失

[复制链接]

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
跳转到指定楼层
楼主
发表于 2016-1-7 11:33:34 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <SurfaceView
        android:id="@+id/surface_large"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <SurfaceView
        android:id="@+id/surface_small"
        android:layout_width="180dp"
        android:layout_height="220dp"
        android:layout_gravity="bottom" />

</FrameLayout>

Large 为远程,small为小, 我按照流程链接服务器,登录,进入房间,然后打开本地视频,当有人进入时打开远程,但是打开了远程,服务器端可以看到本地图像,本地的SMALL显示的不是本地图像是为什么。

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

使用道具 举报

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
推荐
 楼主| 发表于 2016-1-7 11:43:09 | 只看该作者
佰锐科技-李友勤 发表于 2016-1-7 11:40
在sd卡的根目录下,名称为BRAnyChatCore.log

MI3 如图,根目录没有日志文件!

QQ截图20160107114206.jpg (14.91 KB, 下载次数: 3336)

QQ截图20160107114206.jpg
回复 支持 0 反对 1

使用道具 举报

26#
发表于 2016-1-8 10:43:34 | 只看该作者
本帖最后由 佰锐科技-邵光清 于 2016-1-8 11:04 编辑
lilei0807 发表于 2016-1-7 14:31
这是你们的布局。。。。。结尾啊,我已经测试过了,在我 ...

抱歉,问题回复错了,没看到是视频界面的布局。是可以用帧布局的!试把本地视频设置在view最上层:mMyView.setZOrderOnTop(true);
回复 支持 反对

使用道具 举报

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
25#
 楼主| 发表于 2016-1-7 17:10:12 | 只看该作者
佰锐科技-邵光清 发表于 2016-1-7 16:53
调用了Release();之后需要重新初始化SDK,如果不是退出程序的话,不需要调用Release();只要调用.Logout() ...

Release() 之后 AnyChatCoreSDK =null了吗? 如果没有变成null,那我就没有重新初始化,。
        /**
         * 视频服务、初始化
         * @return
         */
        public AnyChatCoreSDK getAnyChatService(){
                if(anyChat == null){
                        anyChat = AnyChatCoreSDK.getInstance(this);
                        anyChat.InitSDK(android.os.Build.VERSION.SDK_INT, 0);
                        AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION, 1);
                }
                return anyChat;
        }
我在application 里做了一个函数来初始化。
回复 支持 反对

使用道具 举报

24#
发表于 2016-1-7 16:53:25 | 只看该作者
lilei0807 发表于 2016-1-7 16:38
补充:
        @Override
        public void OnAnyChatConnectMessage(boolean bSuccess) {

调用了Release();之后需要重新初始化SDK,如果不是退出程序的话,不需要调用Release();只要调用.Logout();即可。
回复 支持 反对

使用道具 举报

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
23#
 楼主| 发表于 2016-1-7 16:38:27 | 只看该作者

补充:
        @Override
        public void OnAnyChatConnectMessage(boolean bSuccess) {
                if(bSuccess){
                        Toast.makeText(VideoHrActivity.this, "链接服务器成功", Toast.LENGTH_SHORT).show();
                        anyChat.Login("jereli","");
                }else{
                        Toast.makeText(VideoHrActivity.this, "链接视频服务器失败", Toast.LENGTH_SHORT).show();
                        finish();
                }
        }
这个是因为登录失败,我就结束当前activity ,然后返回上一次,从上一个再次进入。基本没啥反应。

       
        /**
         * 视频服务、初始化
         * @return
         */
        public AnyChatCoreSDK getAnyChatService(){
                if(anyChat == null){
                        anyChat = AnyChatCoreSDK.getInstance(this);
                        anyChat.InitSDK(android.os.Build.VERSION.SDK_INT, 0);
                        AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION, 1);
                }
                return anyChat;
        }

上面是在appliaction初始化的。
回复 支持 反对

使用道具 举报

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
22#
 楼主| 发表于 2016-1-7 16:37:01 | 只看该作者


@Override        protected void onDestroy() {
super.onDestroy();
anyChat.LeaveRoom(roomId);
anyChat.Logout();                anyChat.Release();
}
这是在程序结束后调用的方法。

anyChat = MFHRApplication.getInstance().getAnyChatService();
                surfaceLarge = (SurfaceView)findViewById(R.id.surface_large);
                surfaceSmall = (SurfaceView)findViewById(R.id.surface_small);
                anyChat.SetBaseEvent(this);
                AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION, 1);
                AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_OVERLAY, 1);
                anyChat.mSensorHelper.InitSensor(this);
                AnyChatCoreSDK.mCameraHelper.SetContext(this);
                AnyChatCoreSDK.mCameraHelper.SelectVideoCapture(0);
                surfaceSmall.getHolder().addCallback(AnyChatCoreSDK.mCameraHelper);
                anyChat.Connect("demo.anychat.cn", 8906);


上面是onCreate
回复 支持 反对

使用道具 举报

21#
发表于 2016-1-7 15:51:26 | 只看该作者
lilei0807 发表于 2016-1-7 15:48
LogCat里一大堆,你们有没有TAG,我用TAG筛选后给你们发上来。

你好,ANYCHAT
回复 支持 反对

使用道具 举报

2

主题

23

帖子

52

积分

注册会员

Rank: 2

积分
52
20#
 楼主| 发表于 2016-1-7 15:48:08 | 只看该作者
佰锐科技-邵光清 发表于 2016-1-7 14:58
请将控制台的日志发上来分析!

LogCat里一大堆,你们有没有TAG,我用TAG筛选后给你们发上来。
回复 支持 反对

使用道具 举报

0

主题

3

帖子

10

积分

新手上路

Rank: 1

积分
10
19#
发表于 2016-1-7 15:34:17 | 只看该作者
本帖最后由 yuanyk 于 2016-1-7 15:51 编辑
lilei0807 发表于 2016-1-7 14:39
还有你们的链接anyChat.Connect("192.168.0.215", 8906); 只可以调用一次?我从A到B,B链接服务器,这时 ...

当连接服务器成功之后,用户便在系统中有一个ID,再次登陆时需退出系统(返回A时调用Anychat.Logout()),之后可以再次连接服务器。
回复 支持 反对

使用道具 举报

18#
发表于 2016-1-7 14:58:26 | 只看该作者
lilei0807 发表于 2016-1-7 14:39
还有你们的链接anyChat.Connect("192.168.0.215", 8906); 只可以调用一次?我从A到B,B链接服务器,这时 ...

请将控制台的日志发上来分析!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 21:26 , Processed in 0.137957 second(s), 26 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

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