webrtc的视频采集

主要由VideoCaptureFactory工厂产生DeviceInfo和VideoCaptureModule两个类。这两个类对象分别由Create()和CreateDeviceInfo()函数产生。前者用于捕获记录设备信息。后者用于采集视频帧。NumberOfDevices()记录有几个可采集的设备,GetCapability()函数用于获取设备的能力比如支持多大分辨率和帧率。VideoCaptureModule拥有DeviceInfo作为它的引用,同时有DirectShow的接口 ,CaptureSinkFilter用于存放采集好的视频帧。
RegisterCaptureDataCallback()函数用于上层的类对象注册近来,上册通过这种方式获取到采集层得到的视频数据。

webrtc在不同平台下使用的采集库不同,在windows下使用的DirectShow,因此VideoCaptureDS类中的DS即指代DirectShow。
在linux平台使用v4l2采集。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43466192/article/details/127144010