AnyChat技术支持论坛

标题: C#怎么枚举本地摄像头,有没有参考代码? [打印本页]

作者: 华旗科技    时间: 2013-9-9 15:50
标题: C#怎么枚举本地摄像头,有没有参考代码?
如题,谢谢。
作者: admin    时间: 2013-9-9 15:58
您好,请参考如下的代码:
  1. int iDeviceCount = -1;
  2. IntPtr[] lpDevicePtrs;

  3. // 枚举系统所有的视频设备
  4. int ret = AnyChatCoreSDK.EnumVideoCapture(null, ref iDeviceCount);
  5. if(ret != 0 || iDeviceCount == 0)
  6.         return;
  7. lpDevicePtrs = new IntPtr[iDeviceCount];
  8. ret = AnyChatCoreSDK.EnumVideoCapture(lpDevicePtrs, ref iDeviceCount);

  9. cbxCamera.Items.Clear();
  10. foreach (IntPtr p in lpDevicePtrs)
  11. {
  12.         string device = Marshal.PtrToStringAnsi(p);    // 如果是Unicode版本,需要使用:Marshal.PtrToStringUni(p);
  13.         if (string.IsNullOrEmpty(device) == false)
  14.         {
  15.                 cbxCamera.Text = device;
  16.                 cbxCamera.Items.Add(device);
  17.         }
  18. }

  19. // 获取当前视频采集设备
  20. StringBuilder sb = new StringBuilder(1024);
  21. AnyChatCoreSDK.GetCurVideoCapture(sb, sb.Capacity);
  22. if (string.IsNullOrEmpty(sb.ToString()) == false)
  23.         cbxCamera.Text = sb.ToString();
  24. else if (cbxCamera.Items.Count > 0)
  25.         cbxCamera.Text = cbxCamera.Items[0].ToString();
复制代码

作者: Cherrie    时间: 2016-7-9 19:51
admin 发表于 2013-9-9 15:58
您好,请参考如下的代码:

你好!请问这段代码的使用除了BRAnyChat.h以外还需要包含什么头文件吗?




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3