廖斌 发表于 2013-10-15 11:54:12

是这样,这样不行吗?另外切换摄像头的时候需要再次调用AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 0);

KeepGoing2013 发表于 2013-10-16 09:29:51

廖斌 发表于 2013-10-15 11:54
是这样,这样不行吗?另外切换摄像头的时候需要再次调用AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRA ...

嗯还是不起作用.0-6 没有任何变化.

KeepGoing2013 发表于 2013-10-17 10:55:33

KeepGoing2013 发表于 2013-10-16 09:29
嗯还是不起作用.0-6 没有任何变化.

您好
竖屏显示调整无结果,于是切换为横屏显示.
但是官方的demo,本地前置和后置摄像头传输到对方手机的图像都是旋转180度的
我自己修改代码设置
1.调用mCamera.setDisplayOrientation(180);                       
2.注释public void onOrientationChanged(int degree) 中的代码                       
3.调用
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION,1);
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);
经过以上操作,本地前置摄像头和传输到对方的图像均是正常的,但是当我切换到后置摄像头时,本地摄像头是正常的,传输到对方的图像就是旋转180度的,当我再切换为前置摄像头的时候 ,本地摄像头是正常的,传输到对方的图像又旋转180度了。
我在切换摄像头的时候也调用了
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION,1);
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);
请问是什么问题,
谢谢.

廖斌 发表于 2013-10-17 11:11:50

你在切换摄像头的什么地方调用的呢?需要在前一个摄像头关闭之后,后一个摄像头开启之前调用AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);

KeepGoing2013 发表于 2013-10-17 11:28:22

廖斌 发表于 2013-10-17 11:11
你在切换摄像头的什么地方调用的呢?需要在前一个摄像头关闭之后,后一个摄像头开启之前调用AnyChatCoreSDK ...

        public void onClick(View v) {
                // TODO Auto-generated method stub
                if (v == mCameraSwitchImage) {
                       
                        AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_AUTOROTATION,1);
                        AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);
                        showToast("摄像头切换");
                        // 如果是采用Java视频采集,则在Java层进行摄像头切换
                        if(AnyChatCoreSDK.GetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_CAPDRIVER) == AnyChatDefine.VIDEOCAP_DRIVER_JAVA) {
                                AnyChatCoreSDK.mCameraHelper.SwitchCamera();
                                return;
                        }

                        String strVideoCaptures[] = anychat.EnumVideoCapture();
                        ;
                        String temp = anychat.GetCurVideoCapture();
                        for (int i = 0; i < strVideoCaptures.length; i++) {
                                if (!temp.equals(strVideoCaptures)) {
                                        anychat.UserCameraControl(-1, 0);
                                        bSelfVideoOpened = false;
                                        anychat.SelectVideoCapture(strVideoCaptures);
                                        anychat.UserCameraControl(-1, 1);
                                        break;
                                }
                        }

                }
        }
这样不对吗?

廖斌 发表于 2013-10-17 14:08:39

AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);对于内核模式要放到    anychat.UserCameraControl(-1, 0);之后。对于java模式要放到AnyChatCameraHelper的mCamera = Camera.open(iCurrentCameraId);之前

KeepGoing2013 发表于 2013-10-17 16:10:37

廖斌 发表于 2013-10-17 14:08
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);对于内核模式要放到 ...

通过与贵公司电话沟通,已解决.谢谢解答

KeepGoing2013 发表于 2013-10-18 15:45:20

廖斌 发表于 2013-10-17 14:08
AnyChatCoreSDK.SetSDKOptionInt(AnyChatDefine.BRAC_SO_LOCALVIDEO_ORIENTATION, 4);对于内核模式要放到 ...

竖屏后,传输到对方手机的图像如何全屏?
谢谢

廖斌 发表于 2013-10-18 16:16:19

您好,调整装载视频的surfaceview大小就行了

KeepGoing2013 发表于 2013-10-18 16:19:20

廖斌 发表于 2013-10-18 16:16
您好,调整装载视频的surfaceview大小就行了

surfaceview 是全屏的 但是图像不是全屏的。
页: 1 2 3 4 [5] 6 7 8 9 10 11
查看完整版本: AnyChat视频呼叫业务逻辑详解