public static extern void cdo_stop_playing_test_sound(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque);
 public static extern void cdo_stop_render(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, int rendererId);
 public static extern void cdo_stop_local_video(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque);
 public static extern void cdo_stop_measuring_stats(cdo_void_rclbck_t rclbck, CDOH handle, 
     IntPtr opaque, ref CDOString scopeId);
 public static extern void cdo_set_video_capture_device(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque,
     ref CDOString device_id);
 public static extern void cdo_set_volume(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque, int volume);
 public static extern void cdo_set_application_id(cdo_void_rclbck_t rclbck,
 CDOH handle, IntPtr opaque, long applicationId);
 public static extern void cdo_connect_string(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, ref CDOString connDescr);
 public static extern void cdo_send_echo_notification(
     cdo_void_rclbck_t resultHandler, CDOH handle, IntPtr opaque,
     ref CDOString content);
 public static extern void cdo_send_message(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, ref CDOString scopeId,
     [MarshalAs(UnmanagedType.LPStr)]string msgBody,
     UIntPtr msgSize, ref Int64 recipientId);
 public static extern void cdo_publish(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, ref CDOString scopeId,
     ref CDOString what, ref CDOMediaPublishOptions options);
 public static extern void cdo_monitor_mic_activity(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque, bool monitor);
 public static extern void cdo_disconnect(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, ref CDOString scopeId);
 public static extern void cdo_unpublish(cdo_void_rclbck_t rclbck,
     CDOH handle, IntPtr opaque, ref CDOString scopeId,
     ref CDOString what);
 public static extern void cdo_set_audio_output_device(
     cdo_void_rclbck_t rclbck, CDOH handle, IntPtr opaque,
     ref CDOString device_id);
 /// <summary>
 /// 
 /// </summary>
 /// <param name="runPreDisposeDelegate"></param>
 internal void stop(bool runPreDisposeDelegate = true)
 {
     if (_rendererId < 0)
     {
         return;
     }
     stoppedEvent = new ManualResetEvent(false);
     _stopRHandler = new cdo_void_rclbck_t(stopRHandler);
     NativeAPI.cdo_stop_render(_stopRHandler, _platformHandle,
         IntPtr.Zero, _rendererId);
     stoppedEvent.WaitOne(2000);
     if (runPreDisposeDelegate)
         _preDisposeDelegate(_rendererId);
     _rendererId = -1;
 }
 public static extern void cdo_add_service_listener(
     cdo_void_rclbck_t resultHandler, CDOH handle, IntPtr opaque,
     ref CDOServiceListener listener);