桌面端视频设备管理

  • C#

更新时间不可用

EnumerateVideoDevices

获取系统中所有的视频设备列表。

C#
public abstract DeviceInfo[] EnumerateVideoDevices();

详情

返回值

  • 方法调用成功:返回一个 DeviceInfo 数组,其中包含系统中所有视频设备。
  • 方法调用失败: 返回空列表。

GetCapability

获取视频采集设备在指定的视频格式下的详细视频帧信息。

C#
public abstract int GetCapability(string deviceIdUTF8, uint deviceCapabilityNumber, out VideoFormat capability);

详情

在调用 NumberOfCapabilities 获取视频采集设备支持的视频格式数量后,你可以调用该方法获取指定索引号支持的具体视频帧信息。

参数

参数名描述
deviceIdUTF8

视频采集设备的 ID。

deviceCapabilityNumber

视频格式的索引号。如果 NumberOfCapabilities 的返回值为 i,则该参数取值范围为[0,i)。

capability

输出参数。表示指定视频格式的具体信息,包括宽度(px),高度(px)和帧率(fps)。详见 VideoFormat。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

GetVideoDeviceManager

获取 IVideoDeviceManager 对象,以管理视频设备。

C#
public abstract IVideoDeviceManager GetVideoDeviceManager();

返回值

一个 IVideoDeviceManager 对象。

GetDevice

获取当前使用的视频采集设备。

C#
public abstract int GetDevice(ref string deviceIdUTF8);

详情

参数

参数名描述
deviceIdUTF8

输出参数。设备 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

OnVideoDeviceStateChanged

视频设备变化回调。

C#
public virtual void OnVideoDeviceStateChanged(string deviceId, int deviceType, int deviceState)

详情

该回调提示系统视频设备状态发生改变,比如被拔出或移除。如果设备已使用外接摄像头采集,外接摄像头被拔开后,视频会中断。

参数

参数名描述
deviceId

设备 ID。

deviceType

设备类型。详见 MEDIA_DEVICE_TYPE。

deviceState

设备状态。详见 MEDIA_DEVICE_STATE_TYPE 。

表格内容超出当前宽度,可横向滚动查看更多列。

NumberOfCapabilities

获取指定视频采集设备支持的视频格式数量。

C#
public abstract int NumberOfCapabilities(string deviceIdUTF8);

详情

视频采集设备可能支持多种视频格式,每一种格式都支持不同的视频帧宽度、视频帧高度、帧率组合。

你可以通过调用该方法,获取指定的视频采集设备可支持多少种视频格式,然后调用 GetCapability 获取指定视频格式下的具体视频帧信息。

参数

参数名描述
deviceIdUTF8

视频采集设备的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • > 0: 方法调用成功。返回该设备支持的视频格式数量。例如:如果指定的摄像头支持 10 种不同的视频格式,则返回值为 10。
  • ≤ 0: 方法调用失败。详见错误码了解详情和解决建议。

QueryCodecCapability

查询 SDK 支持的视频编解码能力。

C#
public abstract int QueryCodecCapability(ref CodecCapInfo[] codecInfo, ref int size);

详情

参数

参数名描述
codecInfo

输入和输出参数,表示 SDK 的视频编码能力数组。详见 CodecCapInfo。

  • 输入值:用户执行该方法时定义的 CodecCapInfo,表示待查询的视频编解码能力。
  • 输出值:方法执行完毕后输出的 CodecCapInfo,表示 SDK 实际支持的视频编解码能力。
size

输入和输出参数,表示 CodecCapInfo 数组的大小。

  • 输入值:用户执行该方法时定义的 CodecCapInfo 的大小。
  • 输出值:方法执行完毕后输出的 CodecCapInfo 的大小。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

所属接口类