mac获取屏幕源 屏幕共享开发

mac获取屏幕视频源和获取camera源类似,找个camera采集的例子,然后把session的input从AVCaptureDeviceInput改成AVCaptureScreenInput。

self.device = [videoCaptureDevices objectAtIndex:0];

self.input = [AVCaptureDeviceInput deviceInputWithDevice:self.device error:&error];

改成

 _screenDisplay = CGMainDisplayID();

_screenInput = [[AVCaptureScreenInput alloc] initWithDisplayID:_screenDisplay];

获取采集屏幕分辨率:

CGDisplayModeRef modeRef = CGDisplayCopyDisplayMode(_screenDisplay);

self.targetWidth = CGDisplayModeGetPixelWidth(modeRef);

self.targetHeight = CGDisplayModeGetHeight(modeRef);

从didOutputSampleBuffer回调函数可以拿到原始屏幕帧。

其他的小feature,比如光标是否显示,截取屏幕部分区域,主屏还是副屏等,官方api有描述。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容