protected void DoRenderFrame(DefaultVideoRenderer view, IntPtr frame) { var format = Opentok.VideoFrame.otc_video_frame_get_format(frame); var copy = Opentok.VideoFrame.otc_video_frame_copy(format, frame); view.RenderFrame(copy.ToInt64()); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); Java.Lang.JavaSystem.LoadLibrary("opentok"); Opentok.Base.otc_init(this.Handle); SetContentView(Resource.Layout.Main); publisherView = FindViewById <DefaultVideoRenderer> (Resource.Id.publisherView); subscriberView = FindViewById <DefaultVideoRenderer> (Resource.Id.subscriberView); sessCb = new Session.otc_session_cb(); sessCb.on_connected = on_connected_cb; sessCb.on_stream_received = on_stream_received_cb; sess = Opentok.Session.otc_session_new(API_KEY, SESSION_ID, ref sessCb); Opentok.Session.otc_session_connect(sess, TOKEN); Button button = FindViewById <Button> (Resource.Id.myButton); button.Click += delegate { Opentok.Android.VideoCapturer.otc_video_capturer_toggle_camera_position(otcapturer); }; }