CN102006311A - 一种流媒体多功能分发系统和方法 - Google Patents
一种流媒体多功能分发系统和方法 Download PDFInfo
- Publication number
- CN102006311A CN102006311A CN2010106081165A CN201010608116A CN102006311A CN 102006311 A CN102006311 A CN 102006311A CN 2010106081165 A CN2010106081165 A CN 2010106081165A CN 201010608116 A CN201010608116 A CN 201010608116A CN 102006311 A CN102006311 A CN 102006311A
- Authority
- CN
- China
- Prior art keywords
- instruction
- streaming media
- plug
- unit
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种流媒体多功能分发系统,包括:控制模块,接收业务端发出的指令,产生内部控制指令;接收模块,收到所述的接收指令,接收编码器发出的流媒体数据;中间处理模块,若内部控制指令中包括中间处理指令,将接收模块接收的流媒体数据进行拆包、转换以及封包处理;发送模块,将接收模块接收的流媒体数据或者中间处理模块处理的流媒体数据发送至客户端。本发明同时公开了一种流媒体多功能分发方法,通过设置中间处理步骤以及功能插件,丰富了转发服务的功能,增加了转发服务的灵活性和实用性。
Description
技术领域
本发明属于流媒体分发技术领域,具体地说,是涉及一种流媒体多功能分发系统。
背景技术
现在市面上有很多流媒体的分发方案,如已经申请专利的:1.一种动态转发媒体源的方法(专利号:200710137275);2.一种转发流媒体的方法(专利号:200610138092);这些方法虽然实现了流媒体的分发,但是只是针对特定网络环境下的特定流媒体而设计的。在规模庞大的系统集成项目中,会面对不同格式的网络流媒体,不同的网络环境。在这种情况下,以上提及的流媒体分发方法很难适应这种复杂的环境,当流媒体源提供的编码格式与客户端需要的不匹配时,很难实现流媒体的转发,而且增加功能模块的话需要将程序写入整个系统中,灵活性较差。
发明内容
本发明为了解决现有流媒体转发服务适应性差的问题,提供了一种流媒体多功能分发方法,可以适合多种复杂的网络环境,增加流转发服务功能。
为了解决上述技术问题,本发明采用以下技术方案予以实现:
一种流媒体多功能分发系统,包括:
控制模块,接收业务端发出的指令,并对所述指令解析,产生内部控制指令,所述的内部控制指令至少包括接收指令和发送指令;
接收模块,收到所述的接收指令,接收编码器发出的流媒体数据;
中间处理模块,若内部控制指令中包括中间处理指令,则中间处理模块接收中间处理指令,将接收模块接收的流媒体数据进行拆包、转换以及封包处理;
发送模块,收到所述的发送指令,将接收模块接收的流媒体数据或者中间处理模块处理的流媒体数据发送至客户端。
进一步的,所述的流媒体多功能分发系统具体包括:
控制模块接收业务端发出的指令,并对所述指令解析,产生接收指令和发送指令;
接收模块收到所述的接收指令,接收流媒体数据;
发送模块收到所述的发送指令,将接收模块接收的流媒体数据发送至客户端。
又进一步的,所述的流媒体多功能分发系统具体包括:
控制模块接收业务端发出的指令,并对所述指令解析,产生接收指令、中间处理指令和发送指令;
接收模块收到所述的接收指令,接收流媒体数据;
中间处理模块收到所述的中间处理指令,将接收模块接收的流媒体数据进行拆包、转换以及封包处理;
发送模块收到所述的发送指令,将中间处理模块处理的流媒体数据发送至客户端。
再进一步的,所述的流媒体包括基于UDP的流媒体和基于TCP的流媒体。
优选的,所述的接收模块包括UDP接收插件和TCP接收插件,所述的中间处理模块包括拆包插件,转换插件和封装插件,所述的发送模块包括UDP发送插件和以点对点方式具有局域网穿透功能的UDP发送插件。
优选的,各插件利用GStreamer多媒体处理框架架构。
基于上述的流媒体多功能分发系统,本发明同时提出了一种流媒体多功能分发方法,包括以下步骤:
(1)、接收业务端发出的指令,并对所述指令解析,产生内部控制指令,所述的内部控制指令至少包括接收指令和发送指令,判断流媒体数据格式与客户端的接收格式是否一致,若不一致,所述的内部控制指令还包括中间处理指令;
(2)、根据所述的接收指令接收编码器发出的流媒体数据;
(3)、若内部控制指令中包括中间处理指令,则将接收的流媒体数据进行拆包、转换以及封包处理;
(4)、根据发送指令,将接收的流媒体数据或者经过处理的流媒体数据发送至客户端。
进一步的,所述的流媒体包括基于UDP的流媒体和基于TCP的流媒体。
又进一步的,步骤(2)中包括用于接收基于UDP的流媒体的UDP接收插件和用于接收基于TCP流媒体的TCP接收插件。
步骤(3)中包括拆包插件,转换插件和封装插件,步骤(4)中包括UDP发送插件和以点对点方式具有局域网穿透功能的UDP发送插件,各插件利用GStreamer多媒体处理框架架构。
与现有技术相比,本发明的优点和积极效果是:本发明的一种流媒体多功能分发系统,采用插件模式,使得流转发服务更加灵活和实用,以及增加了中间处理框架,采用GStreamer框架架构所有功能插件,使得流转发功能容易实现,提高了转发速度,更适合实时流媒体的转发,而且有利于后期维护,本发明的一种流媒体多功能分发方法,通过设置中将处理步骤,丰富了转发服务的功能;通过采用功能插件形式,减轻了流转发服务的开发难度,提高了网络吞吐量。
结合附图阅读本发明实施方式的详细描述后,本发明的其他特点和优点将变得更加清楚。
附图说明
图1是本发明所提出的流媒体多功能分发系统的一种实施例示意图;
图2是本发明所提出的流媒体多功能分发方法的一种实施例流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步详细地说明。
实施例一,图1为本发明一种流媒体多功能分发系统实施例结构示意图,包括:控制模块1、接收模块2、中间处理模块3和发送模块4。
控制模块1用于接收业务端发出的指令,并对所述指令解析,产生内部控制指令,所述的内部控制指令至少包括接收指令和发送指令,控制模块1通过根据流媒体格式信息向接收模块发出接收指令。
接收模块2收到所述的接收指令,其中接收模块2中包括UDP接收插件和TCP接收插件,控制模块产生的接收指令中包括控制调用与流媒体相一致的接收插件来接收所述的流媒体数据,其中,所述的流媒体包括基于UDP的流媒体和基于TCP的流媒体。
控制模块1中通过解析判断流媒体数据格式是否与客户端接收格式一致,若不一致时,控制模块1发送中间处理指令至中间处理模块3,所述的中间处理模块3中包括拆包插件、转换插件和封装插件,所述的中间处理指令中包括调用与流媒体相匹配的拆包插件、转换插件以及与客户端接收格式一致的封装插件,将接收模块接收的流媒体数据进行拆包、转换以及封包处理。
发送模块4收到控制模块1发出的发送指令,发送模块4中包括有用于发送所述流媒体的UDP发送插件和以点对点方式具有局域网穿透功能的UDP发送插件,所述的发送指令中包括调用与客户端相对应的发送插件,若不需要格式转换时,发送模块4将接收模块接收的流媒体数据发送至客户端,需要格式转换时,发送模块4将中间处理模块处理的流媒体数据发送至客户端。
比如,若控制模块1接收到业务端指令,要接收基于UDP的RTP H264流,客户端接收UDP的RTP H264解码器,控制模块1通过解析、判断不需要格式转换,因此依次调用接收模块2的udp_src插件,发送模块4的multi_udp_sink插件,分别用于接收和发送流媒体,省略了中间处理模块。
再比如,若控制模块1接收到业务端指令,要接收基于TCP的RTP H264流,客户端接收UDP的TS流播放程序,控制模块1通过解析、判断需要进行格式转换,因此依次调用接收模块2的tcp_src插件,中间处理模块3的rtp_h264_depay插件、mpeg_ts_mux插件和rtp_ts_pay插件,发送模块4的multi_udp_sink插件,功能分别为接收TCP包、拆分RTP H264包、H264转TS、RTP TS封包以及UDP发送。
各插件优选采用GStreamer多媒体处理框架架构,增加了流转发服务的灵活性和实用性。
本实施例的流媒体多功能分发系统,通过设置中间处理框架,增加了流转发服务的功能,各功能模块采用插件模式,使得流转发服务更加灵活和实用,所有功能插件采用GStreamer框架进行架构,流转发功能更加容易实现,转发速度也得到有效提高,后期维护方便。
基于上述一种流媒体多功能分发系统,本发明提供了一种流媒体多功能分发方法,如图2所示,为本实施例流媒体多功能分发方法的流程图,包括:
S01,接收业务端发出的指令,并对所述指令解析。
具体的,接收业务端发出的指令,并对指令进行解析,所述的指令中包括接收流媒体格式信息,并且根据流媒体格式信息发出接收指令,即确定调用与所述格式相一致的接收插件。
S02,判断接收流媒体格式与客户端接收流媒体格式是否一致。
具体的,通过判断解析的流媒体格式与客户端接收流媒体格式是否一致,确定是否需要将格式进行转换,若流媒体格式与客户端接收流媒体格式是一致的,则不需要格式转换,并根据流媒体格式信息发出发送指令,即确定调用与所述客户端接收流媒体格式相一致的发送插件,若流媒体格式与客户端接收流媒体格式不一致,则还包括发出中间处理指令。
S03,接收流媒体数据。
具体的,由于流媒体数据包括基于UDP的流媒体和基于TCP的流媒体,所以接收流媒体数据时包括UDP接收插件和TCP接收插件,其中,UDP接收插件用于接收基于UDP的流媒体,TCP接收插件用于接收基于TCP的流媒体,通过步骤S01的解析,根据不同的流媒体调用与其相应的流媒体插件来接收。
S04,格式转换。
具体的,若流媒体数据格式与客户端的接收格式不一致,则需要将流媒体数据格式进行转换,依次进行将流媒体拆包、转换以及封装,使其与客户端接收格式相一致,比如流媒体格式为基于UDP的RTP H264流,而客户端接收UDP的TS流播放程序,则需要启动rtp_h264_depay插件将其拆包,启动mpeg_ts_mux插件将RTP H264流转换成为TS流播放程序,然后启动rtp_ts_pay插件将转换后的数据封装,等待发送。
若流媒体数据格式与客户端的接收格式一致,则不需要将流媒体数据格式进行转换,直接将流媒体接收,然后等待发送至客户端。
S05,发送至客户端。
具体的,将上述步骤的不需要转换的流媒体或者经过转换的流媒体发送至客户端,用于发送所述流媒体的插件有UDP发送插件和以点对点方式具有局域网穿透功能的UDP发送插件,需要根据流媒体格式选择与其相一致的插件。
为了简化实现方法,提高流媒体分发工作性能,所述的各种功能插件优选采用GStreamer多媒体处理框架架构。
本实施例的流媒体多功能分发方法,通过对业务端发出的指令进行解析,确定调用与流媒体相匹配的接收插件,并且根据客户端接收格式,防止流媒体格式与客户端接收格式不一致,设置了中间处理步骤,将流媒体格式转换成为与客户端接收格式相一致的格式,丰富了转发服务的功能;通过采用功能插件形式,增加了转发服务的灵活性和实用性;利用GStreamer框架,减轻了流转发服务的开发难度,提高了网络吞吐量,更适合实时流媒体的转发。
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的普通技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (10)
1.一种流媒体多功能分发系统,其特征在于:包括:
控制模块,接收业务端发出的指令,并对所述指令解析,产生内部控制指令,所述的内部控制指令至少包括接收指令和发送指令;
接收模块,收到所述的接收指令,接收流媒体数据;
中间处理模块,若内部控制指令中包括中间处理指令,则中间处理模块收到中间处理指令,将接收模块接收的流媒体数据进行拆包、转换以及封包处理;
发送模块,收到所述的发送指令,将接收模块接收的流媒体数据或者中间处理模块处理的流媒体数据发送至客户端。
2.根据权利要求1所述的流媒体多功能分发系统,其特征在于:所述的流媒体多功能分发系统具体包括:
控制模块接收业务端发出的指令,并对所述指令解析,产生接收指令和发送指令;
接收模块收到所述的接收指令,接收流媒体数据;
发送模块收到所述的发送指令,将接收模块接收的流媒体数据发送至客户端。
3.根据权利要求1所述的流媒体多功能分发系统,其特征在于:所述的流媒体多功能分发系统具体包括:
控制模块接收业务端发出的指令,并对所述指令解析,产生接收指令、中间处理指令和发送指令;
接收模块收到所述的接收指令,接收流媒体数据;
中间处理模块收到所述的中间处理指令,将接收模块接收的流媒体数据进行拆包、转换以及封包处理;
发送模块收到所述的发送指令,将中间处理模块处理的流媒体数据发送至客户端。
4.根据权利要求1至3任一项权利要求所述的流媒体多功能分发系统,其特征在于:所述的流媒体包括基于UDP的流媒体和基于TCP的流媒体。
5.根据权利要求2所述的流媒体多功能分发系统,其特征在于:所述的接收模块包括UDP接收插件和TCP接收插件,所述的中间处理模块包括拆包插件,转换插件和封装插件,所述的发送模块包括UDP发送插件和以点对点方式具有局域网穿透功能的UDP发送插件。
6.根据权利要求5所述的流媒体多功能分发系统,其特征在于:各插件利用GStreamer多媒体处理框架架构。
7.一种流媒体多功能分发方法,其特征在于:包括以下步骤:
(1)、接收业务端发出的指令,并对所述指令解析,产生内部控制指令,所述的内部控制指令至少包括接收指令和发送指令,判断流媒体数据格式与客户端的接收格式是否一致,若不一致,所述的内部控制指令还包括中间处理指令;
(2)、根据所述的接收指令接收编码器发出的流媒体数据;
(3)、若内部控制指令中包括中间处理指令,则将接收的流媒体数据进行拆包、转换以及封包处理;
(4)、根据发送指令,将接收的流媒体数据或者经过处理的流媒体数据发送至客户端。
8.根据权利要求7所述的流媒体多功能分发方法,其特征在于:所述的流媒体包括基于UDP的流媒体和基于TCP的流媒体。
9.根据权利要求8所述的流媒体多功能分发方法,其特征在于:步骤(2)中包括用于接收基于UDP的流媒体的UDP接收插件和用于接收基于TCP流媒体的TCP接收插件。
10.根据权利要求9所述的流媒体多功能分发方法,其特征在于:步骤(3)中包括拆包插件,转换插件和封装插件,步骤(4)中包括UDP发送插件和以点对点方式发送的UDP发送插件,各插件利用GStreamer多媒体处理框架架构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106081165A CN102006311A (zh) | 2010-12-28 | 2010-12-28 | 一种流媒体多功能分发系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106081165A CN102006311A (zh) | 2010-12-28 | 2010-12-28 | 一种流媒体多功能分发系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102006311A true CN102006311A (zh) | 2011-04-06 |
Family
ID=43813383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106081165A Pending CN102006311A (zh) | 2010-12-28 | 2010-12-28 | 一种流媒体多功能分发系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102006311A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404645A (zh) * | 2011-11-14 | 2012-04-04 | 黄广宇 | 一种远程智能控制方法 |
CN102984571A (zh) * | 2012-12-07 | 2013-03-20 | 青岛海信信芯科技有限公司 | 数字电视中Gstreamer读取外部数据的方法及其装置 |
CN104484181A (zh) * | 2014-12-23 | 2015-04-01 | 北京元心科技有限公司 | 在glibc环境下控制安卓相机的方法、装置及移动设备 |
CN106060061A (zh) * | 2016-06-22 | 2016-10-26 | 新奥特(北京)视频技术有限公司 | 一种流媒体交互的实现方法和装置 |
CN111562945A (zh) * | 2020-04-01 | 2020-08-21 | 杭州博雅鸿图视频技术有限公司 | 一种多媒体处理方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863054A (zh) * | 2006-03-03 | 2006-11-15 | 华为技术有限公司 | 数字用户线接入复用器和流媒体数据传输系统及方法 |
CN1941903A (zh) * | 2006-03-31 | 2007-04-04 | 中山大学 | 一种实现多码流同时输出的转码系统及方法 |
CN1964481A (zh) * | 2005-11-11 | 2007-05-16 | 中兴通讯股份有限公司 | 一种交互式网络电视系统 |
WO2008066958A1 (en) * | 2006-11-30 | 2008-06-05 | Sony Ericsson Mobile Communications Ab | Bundling of multimedia content and decoding means |
CN101668189A (zh) * | 2009-10-13 | 2010-03-10 | 中国电信股份有限公司 | 基于iptv的视频监控方法及系统 |
CN101827116A (zh) * | 2010-01-04 | 2010-09-08 | 山东大学 | 一种基于dm6446的嵌入式p2p流媒体直播系统及其工作方法 |
-
2010
- 2010-12-28 CN CN2010106081165A patent/CN102006311A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1964481A (zh) * | 2005-11-11 | 2007-05-16 | 中兴通讯股份有限公司 | 一种交互式网络电视系统 |
CN1863054A (zh) * | 2006-03-03 | 2006-11-15 | 华为技术有限公司 | 数字用户线接入复用器和流媒体数据传输系统及方法 |
CN1941903A (zh) * | 2006-03-31 | 2007-04-04 | 中山大学 | 一种实现多码流同时输出的转码系统及方法 |
WO2008066958A1 (en) * | 2006-11-30 | 2008-06-05 | Sony Ericsson Mobile Communications Ab | Bundling of multimedia content and decoding means |
CN101668189A (zh) * | 2009-10-13 | 2010-03-10 | 中国电信股份有限公司 | 基于iptv的视频监控方法及系统 |
CN101827116A (zh) * | 2010-01-04 | 2010-09-08 | 山东大学 | 一种基于dm6446的嵌入式p2p流媒体直播系统及其工作方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404645A (zh) * | 2011-11-14 | 2012-04-04 | 黄广宇 | 一种远程智能控制方法 |
CN102984571A (zh) * | 2012-12-07 | 2013-03-20 | 青岛海信信芯科技有限公司 | 数字电视中Gstreamer读取外部数据的方法及其装置 |
CN102984571B (zh) * | 2012-12-07 | 2015-04-22 | 青岛海信信芯科技有限公司 | 数字电视中Gstreamer读取外部数据的方法及其装置 |
CN104484181A (zh) * | 2014-12-23 | 2015-04-01 | 北京元心科技有限公司 | 在glibc环境下控制安卓相机的方法、装置及移动设备 |
CN104484181B (zh) * | 2014-12-23 | 2018-05-18 | 北京元心科技有限公司 | 在glibc环境下控制安卓相机的方法、装置及移动设备 |
CN106060061A (zh) * | 2016-06-22 | 2016-10-26 | 新奥特(北京)视频技术有限公司 | 一种流媒体交互的实现方法和装置 |
CN106060061B (zh) * | 2016-06-22 | 2019-02-22 | 新奥特(北京)视频技术有限公司 | 一种流媒体交互的实现方法和装置 |
CN111562945A (zh) * | 2020-04-01 | 2020-08-21 | 杭州博雅鸿图视频技术有限公司 | 一种多媒体处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103986942B (zh) | 基于cdn网络的数据分发系统及方法 | |
EP2223492B1 (en) | Real-time network transport protocol interface method and apparatus | |
CN101212654B (zh) | 一种网络视频监控系统及其数据获取方法 | |
CN102006311A (zh) | 一种流媒体多功能分发系统和方法 | |
CN104702909A (zh) | 视频数据的处理方法及装置 | |
CN102347947B (zh) | 一种流媒体适配器、流媒体网络交互的系统及方法 | |
WO2010081328A1 (zh) | 一种数据传输方法和传输系统、及数据发送端 | |
JP2009260818A5 (zh) | ||
CN103873568A (zh) | 基于云计算实现远程虚拟桌面显示的系统及方法 | |
CN101304494B (zh) | 用于数字电视的数据交换方法及系统 | |
EP2429150A1 (en) | Apparatus, web service component and method based on web service | |
CN101895737A (zh) | 多媒体解码方法及装置、视频监控方法及系统 | |
WO2023108871A1 (zh) | 一种v2x协议栈的通讯方法 | |
CN103647706A (zh) | 一种自适配协议通信网关及通信平台 | |
CN102802024A (zh) | 在服务器端实现的转码方法以及转码系统 | |
CN112673605B (zh) | 用于动态多端点生成的方法、装置和计算机程序 | |
CN105898434A (zh) | 不同密级网络信息交换系统 | |
CN104080015A (zh) | 一种视频编码方法 | |
CN102427523A (zh) | 基于fpga芯片的多路ip视频编码卡 | |
CN110337045A (zh) | 一种对视频源添加二维码的系统及二维码添加方法 | |
CN101217413A (zh) | 可扩展系统中可扩展单元的集中调试系统及集中调试方法 | |
CN101072227A (zh) | 一种视频广播系统中的发送系统、方法和接收系统 | |
CN102427524A (zh) | 基于网络交换的多路ip视频编码卡 | |
TWI600319B (zh) | A method for capturing video and audio simultaneously for one-to-many video streaming | |
CN100574430C (zh) | 基于嵌入式系统的多路实时音视频数据发送方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110406 |