Windows电脑如何启动RTSP服务实现本地摄像头数据共享

技术背景

提起Windows共享本地摄像头,好多人想到的是通过ffmepg或vlc串流到服务器,实际上,用轻量级RTSP服务更简单,本文就介绍下,如何用大牛直播SDK的Windows轻量级RTSP服务,采集摄像头,生成本地RTSP串流,供其他终端访问。

技术实现

启动大牛直播SDK的SmartPublisherDemo.exe,先选择摄像头,配置分辨率、帧率码率,"采集摄像头"-->选择需要共享的摄像头,并选择分辨率和帧率,如果需要采集麦克风或扬声器,勾选即可。

点击"配置查看Rtsp服务"按钮,选择一个端口,点"启动服务",如需启动多端口服务(对应多个拉流url),点"确定",返回上级界面:

点"发布Rtsp流",播放地址会回调生成可拉流的rtsp的url。

把rtsp url拷贝到播放器进行播放:

如果需要查看本地摄像头数据,或比较整体延迟,可点击"预览"按钮,实现本地摄像头数据预览。

总结

之前说过多次,轻量级RTSP服务的优势是,无需用户单独部署RTSP或者RTMP服务,即可实现本地的音视频数据(如摄像头、屏幕、窗体、麦克风、扬声器),编码后,汇聚到内置RTSP服务,然后,对外提供可供拉流的RTSP URL。

轻量级RTSP服务,仅限于内网环境下使用,如模块名字,适用于并发不大的场景,支持H.264/H.265,支持RTSP鉴权、单播、组播模式,考虑到单个服务承载能力,也支持同时创建多个RTSP服务,并支持获取当前RTSP服务会话连接数。

除了可以采集编码前数据外,还可以对接编码后的H.264、H.265、AAC数据,也可以配合拉流模块,拉取外部RTSP或RTMP流,汇聚到轻量级RTSP服务。

总体技术架构设计如下:

Windows平台轻量级RTSP服务功能设计如下:

  • 音频编码:AAC;
  • 视频编码:H.264、H.265;
  • 协议类型:RTSP;
  • 音视频\]支持纯音频/纯视频/音视频推送;

  • 屏幕\]支持屏幕裁剪,根据帧率和推送分辨率,自动推荐码流;

  • 摄像头\]摄像头支持水平反转、垂直反转、0° 90° 180° 270°旋转;

  • 音频\]采集麦克风;

  • 预览\]支持推送端实时预览;

  • 屏幕和摄像头合成/多层合成;
  • 支持窗口采集(一般不建议使用);
  • 支持实时动态水印;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制、VAD端点检测;
  • 支持扬声器和麦克风混音;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持特定机型硬编码;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持RTSP端口设置;
  • 支持RTSP鉴权用户名、密码设置;
  • 支持获取当前RTSP服务会话连接数。
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持Windows7及以上版本。

如需在现有工程,集成轻量级RTSP服务,Windows平台,大牛直播SDK提供了C++/C#两套接口,对外提供32/64位debug/release库,C++和C#接口一一对应,C#接口比C++接口增加前缀NT_PB_。

C++头文件:

  • 类型定义\]nt_type_define.h

  • Log定义\]smart_log_define.h

  • base code定义\]nt_base_code_define.h

  • publisher接口\]nt_smart_publisher_sdk.h

  • Log定义\]smart_log.cs

  • 音视频类型定义\]nt_common_media_define.cs

  • publisher接口\]nt_smart_publisher_define.cs

相关Lib:

  • SmartLog.dll
  • SmartLog.lib
  • SmartPublisherSDK.dll
  • SmartPublisherSDK.lib
  • NTSmartPublisherWinRTSDK.dll
  • avcodec-56.dll
  • avdevice-56.dll
  • avfilter-5.dll
  • avformat-56.dll
  • avutil-54.dll
  • postproc-53.dll
  • swresample-1.dll
  • swscale-3.dll

轻量级RTSP服务模块,可满足安防监控、内网无纸化、智慧教室等内网场景,通过接口即可实现和自身业务逻辑对接,无需单独部署流媒体服务,使用更便捷,除Windows平台外,Linux(x64_64架构|aarch64)、Android、iOS平台也都覆盖,感兴趣的开发者,可以单独跟我沟通。

相关推荐
极术社区2 天前
【Mini-F5265-OB开发板试用测评】显示RTC日历时钟
单片机·嵌入式硬件·实时音视频
nangonghen4 天前
实时通信RTC与传统直播的异同
实时音视频·直播·rtc
eguid_15 天前
WebRTC中sdp多媒体会话协议报文详细解读
音视频·webrtc·实时音视频·sdp·sdp交换·ice协商
NYFEA5 天前
RTC实时时钟DS1338Z-33/PT7C433833WEX国产替代FRTC1338S
实时音视频
智者知已应修善业6 天前
【C#朗读文本DLL动态按钮控件组及按钮事件文本框拖放数据】2022-1-21
windows·经验分享·笔记·c#·实时音视频·visual studio
EasyDSS6 天前
EasyRTC嵌入式音视频通信SDK助力1v1实时音视频通话全场景应用
人工智能·音视频·实时音视频
腾讯云音视频6 天前
理解并解决高丢包率问题,构建清晰流畅的实时音视频通话
实时音视频·丢包
音视频牛哥6 天前
RTMP播放器谁更强?深入解析SmartPlayer与VLC、PotPlayer等方案的技术差异
音视频·大牛直播sdk·rtmp播放器·rtmp低延迟播放·rtmp延迟·rtmpplayer·rtmp毫秒级延迟
音视频牛哥8 天前
技术创新如何赋能音视频直播行业?
音视频·大牛直播sdk·程序员创富·gb28181·rtsp播放器·rtmp播放器·职场人生
音视频牛哥8 天前
超低延迟与高稳定性的行业领先直播解决方案
大牛直播sdk·gb28181·rtsp播放器·rtmp播放器·linux rtmp播放器·linux rtsp播放器·rtsp player