2016-05-16 19 views
4

私はSinchを使用してAndroidビデオコールを開発しています。私はSinchチュートリアルとサンプルに従っています。彼らのほとんどはうまくいっていますが、私はそれを解決する方法がわからない2つの問題に遭遇しました。Android Sinchビデオコールはカメラを切り替えてビデオカメラを再開できません

1)ビデオレンダリングを再開できません。 シナリオ:すべてのコールが正常に動作したら、電話を切らずにアクティビティを終了します(ビデオコールはまだ進行中です)。アクティビティを再開すると、localview(自分のカメラ)はレンダリングを続行しません。これにより、他の電話機が、ビデオ通話がハング/チャットしたように見せてしまいます。

@Override 
    public void onServiceConnected(ComponentName name, IBinder svc) 
    { 
     service = ((ServiceChat.ChatBinder) svc).getService(); 
     VideoController controller = service.GetSinchVideoController(); 
     if(controller != null) 
     { 
      // your own face 
      localVideo.addView(controller.getLocalView()); 
      // contact face 
      remoteVideo.addView(controller.getRemoteView()); 
     } 
    } 
    @Override 
    protected void onDestroy() 
    { 
     VideoController controller = service.GetSinchVideoController(); 
     if(controller != null) 
     { 
      localVideo.removeView(controller.getLocalView()); 
      remoteVideo.removeView(controller.getRemoteView()); 
     } 
     super.onDestroy(); 
    } 

2)私が遭遇したもう一つの問題は、私はカメラ

private void SwitchCamera() 
{ 
    VideoController controller = service.GetSinchVideoController(); 
    if(controller.getCaptureDevicePosition() == Camera.CameraInfo.CAMERA_FACING_FRONT) 
    { 
     controller.setCaptureDevicePosition(Camera.CameraInfo.CAMERA_FACING_BACK); 
    } 
    else 
    { 
     controller.setCaptureDevicePosition(Camera.CameraInfo.CAMERA_FACING_FRONT); 
    } 
    //controller.toggleCaptureDevicePosition(); 
} 

を切り替えることはできませんが、私は

org.webrtc.Logging: VideoCapturerAndroid: Ignoring camera switch request. 
org.webrtc.Logging: VideoCapturerAndroid: Could not switch to camera with id 0 

誰もがどのようにこれらを解決するために、任意のアイデアを持って、このエラーを得たということでしょうか?事前のおかげで、私の悪い英語

答えて

0

のため申し訳ありませんが、コード

vcLocal.toggleCaptureDevicePosition(); 
次お使いのカメラ(2つ目の質問)いくつかのボタンをクリックして、使用上の

VideoController vcLocal = getSinchServiceInterface().getVideoController(); 

を切り替えるための次のコードを試すことができます

関連する問題