DesktopSharing<转>

https://github.com/PHZ76/DesktopSharing/tree/e1543975576e6c4fc5c2404b2f4c9c99c0350bd3

git:https://github.com/PHZ76/DesktopSharing.git

===================================================

DesktopSharing

项目介绍

  • 抓取屏幕和麦克风的音视频数据,编码后进行RTSP转发, RTSP推流, RTMP推流。

目前情况

  • 完成屏幕采集和H.264编码。
  • 完成音频采集和AAC编码。
  • 完成RTSP本地转发音视频数据。
  • 完成RTSP推流到流媒体服务器EasyDarwin。
  • 完成RTMP推流到流媒体服务器SRS。

后续计划

  • 增加硬件编码
  • 增加声卡音频捕获
  • RTMP转发

编译环境

  • win10, vs2017, windows-sdk-version-10.0.17134.0
  • 项目使用的模块都是开源项目, 在vs2017下编译通过。

设计思路

image

库文件说明

  • 屏幕采集: 使用开源项目 screen_capture,因为抓屏使用了DXGI技术, 所以项目只适合运行在win8以上的系统。
  • 音频采集: 使用开源项目 portaudio
  • 编码器, RTMP推流器: 使用开源项目 ffmpeg4.0,ffmpeg的dll文件太大,请到官网下载(4.0版本)。
  • RTSP服务器,推流器: RtspServer

VLC播放效果

image

原文地址:https://www.cnblogs.com/wainiwann/p/11806812.html