Kurento学习一 流程拉流录制及相关功能

1.Kurento是什么

1.1 简介

Kurento Media Server(KMS)是一个多媒体服务器包,是一个从零开始创建WebRTC应用程序的底层平台。提供WebRTC和RTP发送器和接收器、音频/视频混合器、媒体录制等构建块。

官网:Writing Kurento Applications — Kurento 7.0-dev documentation

1.2 内置模块(功能)

Kurento 提供的一些开箱即用的媒体元素

  • WebRtcEndpoint 是一个输入输出终端,采用WebRTC技术

  • RtpEndpoint 是一个输入输出终端,采用RTP协议,并使用SDP协议协商媒体和建立会话。

  • HttpPostEndpoint 是一个输入终端,采用HTTP POST接受媒体文件输入

  • PlayerEndpoint 是一个输入终端,从文件系统,HTTP URL或者RTSP URL接受文件播放,并且把内容推向媒体流水线(Media Pipeline)

  • RecorderEndpoint 是一个输入终端,可以将媒体流存储到本地或远程文件系统中

  • ZBarFilter 检测视频流中的二维码和条形码。如果检测到,就发送一个事件 CodeFoundEvent,客户端可以监听此事件。

  • FaceOverlayFilter是一个简单的计算机视觉示例,它检测视频流上的人脸,并在其上添加覆盖图像

  • GstreamerFilter 是一个通用的过滤器,能够把一个 GStreamer 推向媒体流水线。

  • Composite 把多个视频流合并成一个网格状的单个视频流。 (比较耗内存)

  • DispatcherOneToMany 单个视频流分发

  • Dispatcher 路由视频流。

  • ChromaFilter 色度过滤器 可设置背景

  • Crowddetector 在视频中划定区域(ROI),区域中如果有人群出现,就会闪烁

  • Platedetector 通过摄像头识别车牌

Kurento本身是插件化的框架,所有插件(plugin)都被称为module

官方将所有module分为三大类:main、built-in、custome,

2.交互流程

应用程序:本地流被发送到Kurento媒体服务器,后者将其发送回客户端而无需修改。为了实现这种行为,我们需要创建一个由单个媒体元素组成的媒体管道,即WebRtcEndpoint,它具有交换全双工(双向)WebRTC媒体流的能力。这个媒体元素连接到自己,以便它(从浏览器)接收的媒体被发送回(到浏览器)。此媒体管道如下图所示

如果不具备WebRtc相关知识的话可以先了解下:webrtc流程必备知识(了解Kurento)-CSDN博客

3.项目中场景应用

拉取远端摄像头的视频流及录制视频

后续代码会分享出来

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值