CN110798706A - 视频转码方法和装置 - Google Patents
视频转码方法和装置 Download PDFInfo
- Publication number
- CN110798706A CN110798706A CN201810865696.2A CN201810865696A CN110798706A CN 110798706 A CN110798706 A CN 110798706A CN 201810865696 A CN201810865696 A CN 201810865696A CN 110798706 A CN110798706 A CN 110798706A
- Authority
- CN
- China
- Prior art keywords
- transcoding
- target
- video
- request
- equipment
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000006855 networking Effects 0.000 claims abstract description 69
- 238000012790 confirmation Methods 0.000 claims abstract description 12
- 238000003860 storage Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000015654 memory Effects 0.000 description 6
- 230000002457 bidirectional effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000006854 communication Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种视频转码方法及装置,应用于视联网中。其中方法包括:转码服务器接收视联网流媒体服务器发送的转码请求,依据转码请求判断是否存在支持转码请求的转码设备;若不存在,则确定目标转码设备,向目标转码设备发送重置请求;若接收到目标转码设备重置成功后返回的确认消息,则将转码请求发送至目标转码设备,将目标转码设备的信息上报给视联网流媒体服务器;目标转码设备接收视联网流媒体服务器发送的待转码的视频流,依据转码请求对待转码的视频流进行转码,并将转码后的视频流发送至视联网流媒体服务器。本发明能够避免因终端性能较差而导致的时延,丢包,花屏,卡顿,黑屏等现象;并且可以动态重置转码设备,进一步满足用户需求。
Description
技术领域
本发明涉及视联网技术领域,特别是涉及一种视频转码方法和一种视频转码装置。
背景技术
随着网络科技的快速发展,视频会议、视频教学等双向通信在用户的生活、工作、学习等方面广泛普及。
在通信过程中,各种类终端设备应需求而大量出现,终端设备种类参差不齐、性能各异。而在实时视音频业务中,传输的视频流基本上都是720p、1080p等高码率的视频流。因此,对于性能较低的终端设备(如手机)来说,其无法快速处理这些高码率视频流,从导致时延,丢包,花屏,卡顿,甚至于黑屏等现象,降低用户体验。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种视频转码方法和相应的一种视频转码装置。
为了解决上述问题,本发明实施例公开了一种视频转码方法,所述方法应用于视联网中,所述视联网包括视联网流媒体服务器、转码服务器及多个转码设备,所述方法包括:
所述转码服务器接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备;
所述转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求;
所述转码服务器若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器;
所述目标转码设备接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
优选地,所述转码请求包括目标转码参数,所述依据所述转码请求判断是否存在支持所述转码请求的转码设备的步骤,包括:所述转码服务器检测已注册的各转码设备转码能力信息;所述转码服务器判断是否存在转码能力信息满足所述目标转码参数的转码设备;所述转码能力信息满足所述目标转码参数的转码设备为支持所述转码请求的转码设备。
优选地,所述转码请求包括目标转码参数,所述重置请求包括所述目标转码参数,在所述转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求的步骤之后,还包括:所述目标转码设备将所述目标转码参数保存至预设的配置文件中后重新启动;所述目标转码设备在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。
优选地,所述确定目标转码设备的步骤,包括:查找当前处于空闲状态的转码设备,作为目标转码设备。
优选地,所述方法还包括:所述目标转码设备若接收到所述视联网流媒体服务器经由所述转码服务器发送的终止转码请求,则终止转码。
优选地,所述待转码的视频流为由视联网流媒体服务器对基于视联网协议的视频流进行协议转换后得到的、基于RTP协议的视频流。
另一方面,本发明实施例还公开了一种视频转码装置,所述装置应用于视联网中,视联网包括视联网流媒体服务器、转码服务器及多个转码设备,
所述转码服务器包括:
判断模块,用于接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备;
确定模块,用于若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求;
发送模块,用于若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器;
所述目标转码设备包括:
转码模块,用于接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
优选地,所述转码请求包括目标转码参数,所述判断模块包括:信息检测单元,用于检测已注册的各转码设备转码能力信息;信息判断单元,用于判断是否存在转码能力信息满足所述目标转码参数的转码设备;所述转码能力信息满足所述目标转码参数的转码设备为支持所述转码请求的转码设备。
优选地,所述转码请求包括目标转码参数,所述重置请求包括所述目标转码参数,所述目标转码设备还包括:保存模块,用于将所述目标转码参数保存至预设的配置文件中后重新启动;调整模块,用于在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。
优选地,所述确定模块,具体用于查找当前处于空闲状态的转码设备,作为目标转码设备。
本发明实施例中,转码服务器接收视联网流媒体服务器发送的转码请求,依据转码请求判断是否存在支持转码请求的转码设备;若判定不存在,则确定目标转码设备,并向目标转码设备发送重置请求;目标转码设备接收到重置请求后依据重置请求进行重置;转码服务器若接收到目标转码设备在重置成功后返回的确认消息,则将转码请求发送至目标转码设备,并将目标转码设备的信息上报给视联网流媒体服务器;目标转码设备接收视联网流媒体服务器依据目标转码设备的信息发送的待转码的视频流,依据转码请求对待转码的视频流进行转码,并将转码后的视频流发送至视联网流媒体服务器。由此可知,转码服务器与多个分布式转码设备连接,可以按照终端设备自身的需求对视频流进行转码,从而方便各种性能的终端设备根据自身性能从视联网流媒体服务器中获取对应的视频流,保证终端设备可以快速处理视频流,避免因终端性能较差而导致的时延,丢包,花屏,卡顿,黑屏等现象;并且,当转码设备均不能满足转码请求时,转码服务器可以动态重置转码设备,使其调整为能够满足转码请求的参数,进一步满足用户需求。
附图说明
图1是本发明的一种视联网的组网示意图;
图2是本发明的一种节点服务器的硬件结构示意图;
图3是本发明的一种接入交换机的硬件结构示意图;
图4是本发明的一种以太网协转网关的硬件结构示意图;
图5是本发明实施例一的一种视频转码方法的步骤流程图;
图6是本发明实施例一的一种分布式转码设备的示意图;
图7是本发明实施例二的一种视频转码方法的步骤流程图;
图8是本发明实施例三的一种视频转码方法的流程示意图;
图9是本发明实施例四的一种视频转码装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
为使本领域技术人员更好地理解本发明实施例,以下对视联网进行介绍:
视联网所应用的部分技术如下所述:
网络技术(Network Technology)
视联网的网络技术创新改良了传统以太网(Ethernet),以面对网络上潜在的巨大视频流量。不同于单纯的网络分组包交换(Packet Switching)或网络电路交换(CircuitSwitching),视联网技术采用Packet Switching满足Streaming需求。视联网技术具备分组交换的灵活、简单和低价,同时具备电路交换的品质和安全保证,实现了全网交换式虚拟电路,以及数据格式的无缝连接。
交换技术(Switching Technology)
视联网采用以太网的异步和包交换两个优点,在全兼容的前提下消除了以太网缺陷,具备全网端到端无缝连接,直通用户终端,直接承载IP数据包。用户数据在全网范围内不需任何格式转换。视联网是以太网的更高级形态,是一个实时交换平台,能够实现目前互联网无法实现的全网大规模高清视频实时传输,将众多网络视频应用推向高清化、统一化。
服务器技术(Server Technology)
视联网和统一视频平台上的服务器技术不同于传统意义上的服务器,它的流媒体传输是建立在面向连接的基础上,其数据处理能力与流量、通讯时间无关,单个网络层就能够包含信令及数据传输。对于语音和视频业务来说,视联网和统一视频平台流媒体处理的复杂度比数据处理简单许多,效率比传统服务器大大提高了百倍以上。
储存器技术(Storage Technology)
统一视频平台的超高速储存器技术为了适应超大容量和超大流量的媒体内容而采用了最先进的实时操作系统,将服务器指令中的节目信息映射到具体的硬盘空间,媒体内容不再经过服务器,瞬间直接送达到用户终端,用户等待一般时间小于0.2秒。最优化的扇区分布大大减少了硬盘磁头寻道的机械运动,资源消耗仅占同等级IP互联网的20%,但产生大于传统硬盘阵列3倍的并发流量,综合效率提升10倍以上。
网络安全技术(Network Security Technology)
视联网的结构性设计通过每次服务单独许可制、设备与用户数据完全隔离等方式从结构上彻底根除了困扰互联网的网络安全问题,一般不需要杀毒程序、防火墙,杜绝了黑客与病毒的攻击,为用户提供结构性的无忧安全网络。
服务创新技术(Service Innovation Technology)
统一视频平台将业务与传输融合在一起,不论是单个用户、私网用户还是一个网络的总合,都不过是一次自动连接。用户终端、机顶盒或PC直接连到统一视频平台,获得丰富多彩的各种形态的多媒体视频服务。统一视频平台采用“菜谱式”配表模式来替代传统的复杂应用编程,可以使用非常少的代码即可实现复杂的应用,实现“无限量”的新业务创新。
视联网的组网如下所述:
视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。
如图1所示,视联网分为接入网和城域网两部分。
接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。
其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。
类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。
其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。
城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。
由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。
形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。
视联网设备分类
1.1本发明实施例的视联网中的设备主要可以分为3类:服务器,交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。视联网整体上可以分为城域网(或者国家网、全球网等)和接入网。
1.2其中接入网部分的设备主要可以分为3类:节点服务器,接入交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。
各接入网设备的具体硬件结构为:
节点服务器:
如图2所示,主要包括网络接口模块201、交换引擎模块202、CPU模块203、磁盘阵列模块204;
其中,网络接口模块201,CPU模块203、磁盘阵列模块204进来的包均进入交换引擎模块202;交换引擎模块202对进来的包进行查地址表205的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器206的队列;如果包缓存器206的队列接近满,则丢弃;交换引擎模202轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块204主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;CPU模块203主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表205(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块204的配置。
接入交换机:
如图3所示,主要包括网络接口模块(下行网络接口模块301、上行网络接口模块302)、交换引擎模块303和CPU模块304;
其中,下行网络接口模块301进来的包(上行数据)进入包检测模块305;包检测模块305检测包的目地地址(DA)、源地址(SA)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块303,否则丢弃;上行网络接口模块302进来的包(下行数据)进入交换引擎模块303;CPU模块204进来的数据包进入交换引擎模块303;交换引擎模块303对进来的包进行查地址表306的操作,从而获得包的导向信息;如果进入交换引擎模块303的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃;如果进入交换引擎模块303的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃。
交换引擎模块303轮询所有包缓存器队列,在本发明实施例中分两种情形:
如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;
如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。
码率控制模块208是由CPU模块204来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。
CPU模块304主要负责与节点服务器之间的协议处理,对地址表306的配置,以及,对码率控制模块308的配置。
以太网协转网关:
如图4所示,主要包括网络接口模块(下行网络接口模块401、上行网络接口模块402)、交换引擎模块403、CPU模块404、包检测模块405、码率控制模块408、地址表406、包缓存器407和MAC添加模块409、MAC删除模块410。
其中,下行网络接口模块401进来的数据包进入包检测模块405;包检测模块405检测数据包的以太网MAC DA、以太网MAC SA、以太网length or frame type、视联网目的地址DA、视联网源地址SA、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由MAC删除模块410减去MAC DA、MAC SA、length or frame type(2byte),并进入相应的接收缓存,否则丢弃;
下行网络接口模块401检测该端口的发送缓存,如果有包则根据包的视联网目的地址DA获知对应的终端的以太网MAC DA,添加终端的以太网MAC DA、以太网协转网关的MACSA、以太网length or frame type,并发送。
以太网协转网关中其他模块的功能与接入交换机类似。
终端:
主要包括网络接口模块、业务处理模块和CPU模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、CPU模块;编码板主要包括网络接口模块、视音频编码引擎模块、CPU模块;存储器主要包括网络接口模块、CPU模块和磁盘阵列模块。
1.3城域网部分的设备主要可以分为2类:节点服务器,节点交换机,城域服务器。其中,节点交换机主要包括网络接口模块、交换引擎模块和CPU模块;城域服务器主要包括网络接口模块、交换引擎模块和CPU模块构成。
2、视联网数据包定义
2.1接入网数据包定义
接入网的数据包主要包括以下几部分:目的地址(DA)、源地址(SA)、保留字节、payload(PDU)、CRC。
如下表所示,接入网的数据包主要包括以下几部分:
DA | SA | Reserved | Payload | CRC |
其中:
目的地址(DA)由8个字节(byte)组成,第一个字节表示数据包的类型(例如各种协议包、组播数据包、单播数据包等),最多有256种可能,第二字节到第六字节为城域网地址,第七、第八字节为接入网地址;
源地址(SA)也是由8个字节(byte)组成,定义与目的地址(DA)相同;
保留字节由2个字节组成;
payload部分根据不同的数据包的类型有不同的长度,如果是各种协议包的话是64个字节,如果是单组播数据包话是32+1024=1056个字节,当然并不仅仅限于以上2种;
CRC有4个字节组成,其计算方法遵循标准的以太网CRC算法。
2.2城域网数据包定义
城域网的拓扑是图型,两个设备之间可能有2种、甚至2种以上的连接,即节点交换机和节点服务器、节点交换机和节点交换机、节点交换机和节点服务器之间都可能超过2种连接。但是,城域网设备的城域网地址却是唯一的,为了精确描述城域网设备之间的连接关系,在本发明实施例中引入参数:标签,来唯一描述一个城域网设备。
本说明书中标签的定义和MPLS(Multi-Protocol Label Switch,多协议标签交换)的标签的定义类似,假设设备A和设备B之间有两个连接,那么数据包从设备A到设备B就有2个标签,数据包从设备B到设备A也有2个标签。标签分入标签、出标签,假设数据包进入设备A的标签(入标签)是0x0000,这个数据包离开设备A时的标签(出标签)可能就变成了0x0001。城域网的入网流程是集中控制下的入网过程,也就意味着城域网的地址分配、标签分配都是由城域服务器主导的,节点交换机、节点服务器都是被动的执行而已,这一点与MPLS的标签分配是不同的,MPLS的标签分配是交换机、服务器互相协商的结果。
如下表所示,城域网的数据包主要包括以下几部分:
DA | SA | Reserved | 标签 | Payload | CRC |
即目的地址(DA)、源地址(SA)、保留字节(Reserved)、标签、payload(PDU)、CRC。其中,标签的格式可以参考如下定义:标签是32bit,其中高16bit保留,只用低16bit,它的位置是在数据包的保留字节和payload之间。
实施例一
参照图5,示出了本发明实施例一的一种视频转码方法的步骤流程图。
本发明实施例的视频转码方法可以应用于视联网中,该方法可以涉及到视联网流媒体服务器、转码服务器及多个转码设备。
本发明实施例的视频转码方法可以包括以下步骤:
步骤501,转码服务器接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备。
本发明实施例中,考虑到如果设置一个转码设备,并设置该转码设备可以实现多种不同转码参数的转码,则该转码设备在每次接收到待转码的视频流后,需要先分配一个用于处理该待转码的视频流的转码实例,并对该转码实例进行初始化,使其能够将该待转码的视频流转码成所需参数的视频流,初始化后才能利用该转码实例对待转码的视频流进行转码。但是,上述方式每次都要先对转码实例进行初始化然后才能执行转码,因此转码的时延较大,转码效率低,不能满足实时音视频业务的所需的高实时性。
针对上述问题,本发明实施例提出了一种分布式的方式,转码服务器与多个分布式转码设备连接,可以设置每个转码设备实现一种转码参数的转换。图6是本发明实施例一的一种分布式转码设备的示意图,如图6所示,转码服务器与n个分布式转码设备(转码设备1、转码设备2、……、转码设备n)连接,转码服务器可以服务区于这n个转码设备。
当终端具有视频转码需求时,可以根据自身的性能状况得到对应的转码请求,该转码请求可以包括终端的转码需求信息,比如转码的目标转码参数等,当然该转码请求还可以包括终端的相关信息,比如终端的标识等,本发明实施例对此并不加以限制。比如,终端可以为手机,由于手机的性能相对较低,可能无法快速处理高码率的视频,因此可以将高码率视频转换成较低码率视频,以满足手机的需求。
终端将转码请求经由视联网流媒体服务器发送至转码服务器,转码服务器依据该转码请求可以判断是否存在支持所述转码请求的转码设备。比如,可以根据目标转码参数判断是否存在支持所述转码请求的转码设备。
步骤502,转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求。
如果转码服务器判断出当前的各转码设备均不支持所述转码请求,则可以从其中确定将要被重置的目标转码设备,并且向该目标转码设备发送重置请求。目标转码设备接收到该重置请求后可以进行重置操作,如果重置成功,则可以向转码服务器返回确认消息。
步骤503,转码服务器若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器。
转码服务器若接收到所述目标转码设备返回的确认消息,则可以将转码请求发送至所述目标转码设备,并且将目标转码设备的信息上报给视联网流媒体服务器。目标转码设备的信息可以包括目标转码设备的标识、地址等信息。流媒体服务器能够根据目标转码设备的信息查找到目标转码设备,并向目标转码设备发送待转码的视频流。待转码的视频流即为初始的高码率视频流,比如视联网服务器发送过来的高码率的视频流等。
步骤504,目标转码设备接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
目标转码设备依据转码请求对待转码的视频流进行转码,得到转码后的视频流。转码后的视频流即为适用于上述发送转码请求的终端的视频流。
目标转码设备将转码后的视频流发送至视联网流媒体服务器。视联网流媒体服务器可以将转码后的视频流发送至上述发送转码请求的终端,终端即可以对该转码后的视频流进行相应处理,比如播放等。
本发明实施例中,转码服务器与多个分布式转码设备连接,可以按照终端设备自身的需求对视频流进行转码,从而方便各种性能的终端设备根据自身性能从视联网流媒体服务器中获取对应的视频流,保证终端设备可以快速处理视频流,避免因终端性能较差而导致的时延,丢包,花屏,卡顿,黑屏等现象;并且,当转码设备均不能满足转码请求时,转码服务器可以动态重置转码设备,使其调整为能够满足转码请求的参数,进一步满足用户需求。
实施例二
参照图7,示出了本发明实施例二的一种视频转码方法的步骤流程图。
本发明实施例的视频转码方法可以应用于视联网中。涉及到的设备可以包括视联网服务器、终端、视联网流媒体服务器、转码服务器及多个转码设备,视联网流媒体服务器集成了转码服务器。视联网服务器和视联网流媒体服务器可以基于视联网协议实现双向交互;终端和视联网流媒体服务器可以基于互联网协议实现双向交互;视联网流媒体服务器和转码服务器可以基于互联网协议实现双向交互;转码服务器和各个转码设备可以基于互联网协议实现双向交互,具体可以交互信令等信息;视联网流媒体服务器和各个转码设备可以基于互联网协议实现双向交互,具体可以交互媒体(如视频数据、音频数据)等信息。
本发明实施例的视频转码方法可以包括以下步骤:
步骤701,转码服务器接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备。若否(不存在),则执行步骤702;若是(存在),则执行步骤707。
本发明实施例中,转码设备要与转码服务器进行交互,要先在转码服务器中注册。注册过程可以包括:未注册的转码设备向转码服务器发送注册登记消息;转码服务器接收到注册登记消息后对注册登记消息进行验证,验证通过后向该未注册的转码设备返回注册成功消息;该未注册的转码设备接收到注册成功消息,注册成功。
未注册的转码设备将注册登记消息发送至转码服务器,该注册登记消息中可以包括转码设备的相关信息,比如转码设备的转码能力信息、转码设备的标识、IP地址等信息。其中,转码能力信息可以包括转码设备能够转码的路数(如转码实例的个数)、能够转码的码率、能够转码的分辨率等。转码服务器接收到转码设备发送的注册登记消息后,可以对注册登记消息执行验证等操作,验证通过后可以向转码设备返回注册成功消息,转码服务器还可以保存转码设备的相关信息。转码设备接收到注册成功消息,表明该转码设备成功注册,可以与转码服务器进行交互。
对于在转码服务器中已注册的转码设备,其可以定期向转码服务器发送心跳消息,以告知转码服务器该转码设备当前的状态。其中,心跳消息可以包括转码设备的负载信息、转码设备的标识、转码设备的工作状态是否正常等。定期发送可以为每隔15s、20s等时间向转码服务器发送心跳消息,本发明实施例对具体的时间间隔并不加以限制。
终端可以根据自身的性能状况发送转码请求,并经由视联网流媒体服务器将转码请求发送至转码服务器。也即,终端通过互联网将转码请求发送至视联网流媒体服务器,再由视联网流媒体服务器通过互联网发送至转码服务器。比如,可以在终端的APP界面中展示转码请求模块(比如可以显示为“转码”按钮),当用户点击该转码请求模块时可以触发转码请求。转码请求可以包括目标转码参数(如目标码率、目标帧率等)、终端的标识等信息,该目标转码参数可以依据终端的性能自动分析得到,也可以由用户手动输入,本发明实施例对此并不加以限制。
转码服务器接收到转码请求后,依据所述转码请求判断是否存在支持所述转码请求的转码设备。
在一种优选实施方式中,可以依据目标转码参数判断是否存在支持所述转码请求的转码设备,具体可以包括:转码服务器检测已注册的各转码设备转码能力信息;转码服务器判断是否存在转码能力信息满足所述目标转码参数的转码设备。其中,转码能力信息满足所述目标转码参数的转码设备即为支持所述转码请求的转码设备。
比如,目标转码参数为目标码率,则转码能力信息是否满足目标转码参数可以依据转码设备能够转码的码率是否能够达到目标码率判断,若能够达到,则可以确定转码能力信息满足目标转码参数;否则,可以确定转码能力信息不满足目标转码参数。再比如,目标转码参数为目标帧率,则转码能力信息是否满足目标转码参数可以依据转码设备能够转码的帧率是否能够达到目标帧率判断,若能够达到,则可以确定转码能力信息满足目标转码参数;否则,可以确定转码能力信息不满足目标转码参数。
转码设备中可以包括多个转码实例,每个转码实例可以对一路视频流进行该转码设备对应转码参数的转码操作。各转码设备在启动后可以初始化自身包括的各转码实例,后续接收到待转码的视频流后,无需再执行初始化操作,而是可以直接对待转码的视频流进行相关处理,从而降低转码时延。本发明实施例中,初始化转码实例可以包括重置转码实例对应的编码模块、解码模块、转码模块等,比如可以设置转码模块进行转码的码率、帧率、分辨率等参数。
步骤702,转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求。
如果在步骤701中判断出不存在支持转码请求的转码设备,则可以从已注册的多个转码设备中确定目标转码设备,后续对该目标转码设备进行重置,并利用重置后的目标转码设备进行本次转码操作。
在一种优选实施方式中,转码服务器可以从已注册的多个转码设备中查找当前处于空闲状态的转码设备,作为目标转码设备。其中,空闲状态表示转码设备当前没有在进行转码,也即转码设备的各个转码实例当前均没有在进行转码。因此,可以对当前处于空闲状态的转码设备进行重置,避免对转码设备的转码过程产生影响。需要说明的是,如果当前处于空闲状态的转码设备有多个,则转码服务器可以从其中选取任意一个转码设备作为目标转码设备。如果没有查找到当前处于空闲状态的转码设备,则转码服务器可以暂时不处理本次的转码请求,还可以定时循环查找当前处于空闲状态的转码设备,如果查找到则将其作为目标转码设备,之后再处理上述转码请求。
步骤703,目标转码设备依据重置请求进行重置,并在重置成功后向转码服务器返回确认消息。
转码服务器在确定出目标转码设备后,可以生成重置请求。比如,转码服务器可以从上述转码请求中提取目标转码参数,并依据该目标转码参数生成携带该目标转码参数的重置请求。
转码服务器将重置请求发送至目标转码设备,目标转码设备即可依据该重置请求进行重置。在一种优选实施方式中,重置过程可以包括:目标转码设备将所述目标转码参数保存至预设的配置文件中,之后重新启动;目标转码设备在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。因此,重置之后目标转码设备即可实现满足上述目标转码参数的转码。
步骤704,转码服务器若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器。
目标转码设备在重置成功后还可以向转码服务器返回确认消息,以通知转码服务器重置成功。转码服务器接收到目标转码设备重置成功返回的确认消息后,即可将转码请求发送至该重置后的目标转码设备。
目标转码设备接收到转码请求后,可以响应该转码请求,关联一个目标转码实例,该关联的目标转码实例即为后续针对该转码请求执行转码的转码实例。比如,目标转码设备可以查找一个当前处于空闲状态的转码实例作为目标转码实例。
步骤705,目标转码设备接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
视联网流媒体服务器可以接收来自视联网的数据(如视频数据、音频数据等)。比如在视频会议中,视联网服务器(如上述的节点服务器)可以将视频数据(该视频数据可以为会议发言方的视联网终端发送给视联网服务器的视频数据)发送至视联网流媒体服务器,视联网流媒体服务器可以将视频数据转发到参与会议的其他互联网终端(如上述发送转码请求的终端)中。
因此,转码服务器还可以将目标转码设备的信息上报给视联网流媒体服务器。视联网流媒体服务器可以依据该目标转码设备的信息查找到目标转码设备,并向目标转码设备发送待转码的视频流。
由于视联网服务器发送给视联网流媒体服务器的视频流为基于视联网协议的视频流,而参与会议的其他互联网终端能处理的视频流为基于互联网协议的视频流,因此视联网流媒体服务器在接收到视联网服务器发送的基于视联网协议的视频流后,还可以将基于视联网协议的视频流转换为基于互联网协议的视频流,将该基于互联网协议的视频流作为待转码的视频流发送给目标转码设备。具体地,视联网流媒体服务器与转码设备之间可以基于RTP(Real-time Transport Protocol,实时传输协议)进行通信,因此视联网流媒体服务器将基于视联网协议的流进行协议转换得到基于RTP协议的视频流,作为待转码的视频流。
目标转码设备接收到视联网流媒体服务器发送的待转码的视频流后,可以依据所述转码请求,按照该目标转码设备能够转码的目标转码参数对所述待转码的视频流进行转码。具体地,目标转码设备可以将待转码的视频流输入目标转码实例中,目标转码实例即可开始对待转码的视频流进行转码。
本发明实施例中,目标转码设备可以采用任意试用的转码技术进行转码。比如FFmpeg技术等,FFmpeg(Fast Forward Mpeg)是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。对于目标转码设备的具体转码过程,本领域技术人员根据实际经验进行相关处理即可,本发明实施例对此不再详细论述。
目标转码设备将对待转码的视频流进行转码得到的转码后的视频流,发送至视联网流媒体服务器。后续视联网流媒体服务器即可将该转码后的视频流返回至上述发送转码请求的终端。转码后的视频流更适用于终端的性能,终端接收到转码后的视频流之后,可以更加流畅地对转码后的视频流执行播放等操作。
步骤706,目标转码设备若接收到所述视联网流媒体服务器经由所述转码服务器发送的终止转码请求,则终止转码。
当终端不再需要转码时,可以发送终止转码请求,并将该终止转码请求经由视联网流媒体服务器发送至转码服务器。也即,终端将终止转码请求发送至视联网流媒体服务器,再由视联网流媒体服务器发送至转码服务器。比如,可以在终端的APP界面中展示终止转码请求模块(比如可以显示为“终止转码”按钮),当用户点击该终止转码请求模块时可以触发终止转码请求。其中,终止转码请求可以包括终端的标识等信息。
转码服务器将终止转码请求发送至目标转码设备,该目标转码设备接收到终止转码请求后,依据终止转码请求终止转码。具体可以为目标转码设备取消关联目标转码实例,释放目标转码实例的转码资源。比如,终端发送的转码请求中可以包括该终端的标识,目标转码设备在接收到转码请求后关联目标转码实例,可以依据其中的终端标识得知该目标转码实例处理该终端的转码请求;终端发送的终止转码请求中也可以包括该终端的标识,目标转码设备在接收到终止转码请求后,可以依据其中的终端标识查找到处理该终端的转码请求的目标转码实例,找到后取消关联该目标转码实例。
步骤707,转码服务器若判定存在,则确定执行转码的转码设备,将转码请求发送至执行转码的转码设备,并将执行转码的转码设备的信息上报给视联网流媒体服务器。
如果在步骤701中判断出存在支持转码请求的转码设备,则转码服务器可以依据所述转码请求从支持转码请求的转码设备中确定执行转码的转码设备。转码请求可以包括目标转码参数,转码服务器可以通过选取转码能力信息满足所述目标转码参数,且负载信息满足预设条件的转码设备确定目标转码设备。比如,转码服务器可以各支持转码请求的转码设备的负载信息及转码能力信息;选取转码能力信息满足所述目标转码参数,且所述负载信息满足预设条件的转码设备,作为执行转码的转码设备。
优选地,负载信息是否满足预设条件可以依据转码设备的负载是否小于设定阈值判断,若小于,则可以确定负载信息满足预设条件;否则,可以确定负载信息不满足预设条件。对于阈值的具体数值,本领域技术人员根据实际经验进行相关设定即可,本发明实施例对此并不加以限制。转码能力信息是否满足目标转码参数的过程可以参照上述步骤701的相关描述,本发明实施例在此不再详细论述。
转码服务器确定出执行转码的转码设备后,将转码请求发送至该执行转码的转码设备。执行转码的转码设备接收到转码请求后,可以响应该转码请求,关联一个目标转码实例,该关联的目标转码实例即为后续针对该转码请求执行转码的转码实例。比如,执行转码的转码设备可以查找一个当前处于空闲状态的转码实例作为目标转码实例。
步骤708,执行转码的转码设备接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
转码服务器还可以将执行转码的转码设备的信息上报给视联网流媒体服务器。视联网流媒体服务器可以依据该执行转码的转码设备的信息查找到执行转码的转码设备,并向该执行转码的转码设备发送待转码的视频流。
执行转码的转码设备接收到视联网流媒体服务器发送的待转码的视频流后,可以依据所述转码请求,按照该执行转码的转码设备能够转码的目标转码参数对所述待转码的视频流进行转码。具体地,执行转码的转码设备可以将待转码的视频流输入目标转码实例中,目标转码实例即可开始对待转码的视频流进行转码。
执行转码的转码设备将对待转码的视频流进行转码得到的转码后的视频流,发送至视联网流媒体服务器。后续视联网流媒体服务器即可将该转码后的视频流返回至上述发送转码请求的终端。转码后的视频流更适用于终端的性能,终端接收到转码后的视频流之后,可以更加流畅地对转码后的视频流执行播放等操作。
步骤709,执行转码的转码设备若接收到所述视联网流媒体服务器经由所述转码服务器发送的终止转码请求,则终止转码。
当终端不再需要转码时,可以发送终止转码请求,并将该终止转码请求经由视联网流媒体服务器发送至转码服务器。转码服务器将终止转码请求发送至执行转码的转码设备,该执行转码的转码设备接收到终止转码请求后,依据终止转码请求终止转码。
利用本发明实施例,可以预先配制转码设备的转码参数,以适应种种类型终端的需求。当遇上转码设备暂时不能支持的转码类型时,转码服务器可动态的利用空闲的转码设备进行指导性重置,以适应当前业务需要。
实施例三
本实施例将从整体方面描述视频转码方法。参照图8,示出了本发明实施例三的一种视频转码方法的流程示意图。该方法可以包括:
F1:流媒体服务器(也即上述视联网流媒体服务器)向转码服务器发起转码请求,转码请求中包含了对转码后码流的帧率与码率的要求。
P1:转码服务器检测当前所拥有的所有转码设备是否支持转码请求的要求,发现不支持,也即当前没有转码设备能对转码请求提供服务。
F2:转码服务器将查询当前处于完全空闲状态的转码设备,并向此转码设备(也即转码设备1)发起重置转码请求消息。请求中携带预制的帧率与码率参数。
P2:转码设备1接收到重置转码请求消息,根据要求,重置转码设备。具体可以为保存其中携带的预制帧率与码率参数到转码设备的配制文件中。然后重启转码设备,此时预制的参数将应用到转码设备中去。
F3:重置成功后,转码设备1将向转码服务器发送重置成功消息200OK。
F4:转码服务器接收到重置成功消息后,转发转码请求到转码设备1。
F5:转码设备1收到转码请求后响应转码服务器200OK消息。
F6:转码服务器响应流媒体服务器请求成功消息,上报转码设备1的信息。
F7:流媒体服务器发送需要转码的码流给转码设备1。
P3:转码设备1开始进行转码。
F8:转码设备1将转码后的码流回送给流媒体服务器。
本发明实施例可以适应不同终端的转码需求,提升用户体验。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例四
参照图9,示出了本发明实施例四的一种视频转码装置的结构框图。该装置可以应用于视联网中,视联网可以包括视联网流媒体服务器、转码服务器及多个转码设备。
本发明实施例的视频转码装置可以包括位于转码服务器和目标转码设备中的以下模块:
所述转码服务器可以包括:
判断模块901,用于接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备;
确定模块902,用于若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求;
发送模块903,用于若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器;
所述目标转码设备包括:
转码模块904,用于接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
优选地,所述转码请求包括目标转码参数,所述判断模块包括:信息检测单元,用于检测已注册的各转码设备转码能力信息;信息判断单元,用于判断是否存在转码能力信息满足所述目标转码参数的转码设备;所述转码能力信息满足所述目标转码参数的转码设备为支持所述转码请求的转码设备。
优选地,所述转码请求包括目标转码参数,所述重置请求包括所述目标转码参数,所述目标转码设备还包括:保存模块,用于将所述目标转码参数保存至预设的配置文件中后重新启动;调整模块,用于在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。
优选地,所述确定模块,具体用于查找当前处于空闲状态的转码设备,作为目标转码设备。
优选地,所述目标转码设备还包括:终止模块,用于若接收到所述视联网流媒体服务器经由所述转码服务器发送的终止转码请求,则终止转码。
优选地,所述待转码的视频流为由视联网流媒体服务器对基于视联网协议的视频流进行协议转换后得到的、基于RTP协议的视频流。
本发明实施例中,转码服务器与多个分布式转码设备连接,可以按照终端设备自身的需求对视频流进行转码,从而方便各种性能的终端设备根据自身性能从视联网流媒体服务器中获取对应的视频流,保证终端设备可以快速处理视频流,避免因终端性能较差而导致的时延,丢包,花屏,卡顿,黑屏等现象;并且,当转码设备均不能满足转码请求时,转码服务器可以动态重置转码设备,使其调整为能够满足转码请求的参数,进一步满足用户需求。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种视频转码方法和一种视频转码装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种视频转码方法,其特征在于,所述方法应用于视联网中,所述视联网包括视联网流媒体服务器、转码服务器及多个转码设备,所述方法包括:
所述转码服务器接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备;
所述转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求;
所述转码服务器若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器;
所述目标转码设备接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
2.根据权利要求1所述的方法,其特征在于,所述转码请求包括目标转码参数,所述依据所述转码请求判断是否存在支持所述转码请求的转码设备的步骤,包括:
所述转码服务器检测已注册的各转码设备转码能力信息;
所述转码服务器判断是否存在转码能力信息满足所述目标转码参数的转码设备;所述转码能力信息满足所述目标转码参数的转码设备为支持所述转码请求的转码设备。
3.根据权利要求1所述的方法,其特征在于,所述转码请求包括目标转码参数,所述重置请求包括所述目标转码参数,在所述转码服务器若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求的步骤之后,还包括:
所述目标转码设备将所述目标转码参数保存至预设的配置文件中后重新启动;
所述目标转码设备在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。
4.根据权利要求1所述的方法,其特征在于,所述确定目标转码设备的步骤,包括:
查找当前处于空闲状态的转码设备,作为目标转码设备。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述目标转码设备若接收到所述视联网流媒体服务器经由所述转码服务器发送的终止转码请求,则终止转码。
6.根据权利要求1所述的方法,其特征在于,所述待转码的视频流为由视联网流媒体服务器对基于视联网协议的视频流进行协议转换后得到的、基于RTP协议的视频流。
7.一种视频转码装置,其特征在于,所述装置应用于视联网中,所述视联网包括视联网流媒体服务器、转码服务器及多个转码设备,
所述转码服务器包括:
判断模块,用于接收所述视联网流媒体服务器发送的转码请求,依据所述转码请求判断是否存在支持所述转码请求的转码设备;
确定模块,用于若判定不存在,则确定目标转码设备,并向所述目标转码设备发送重置请求;
发送模块,用于若接收到所述目标转码设备在依据所述重置请求重置成功后返回的确认消息,则将所述转码请求发送至所述目标转码设备,并将所述目标转码设备的信息上报给所述视联网流媒体服务器;
所述目标转码设备包括:
转码模块,用于接收所述视联网流媒体服务器依据所述目标转码设备的信息发送的待转码的视频流,依据所述转码请求对所述待转码的视频流进行转码,并将转码后的视频流发送至所述视联网流媒体服务器。
8.根据权利要求7所述的装置,其特征在于,所述转码请求包括目标转码参数,所述判断模块包括:
信息检测单元,用于检测已注册的各转码设备转码能力信息;
信息判断单元,用于判断是否存在转码能力信息满足所述目标转码参数的转码设备;所述转码能力信息满足所述目标转码参数的转码设备为支持所述转码请求的转码设备。
9.根据权利要求7所述的装置,其特征在于,所述转码请求包括目标转码参数,所述重置请求包括所述目标转码参数,所述目标转码设备还包括:
保存模块,用于将所述目标转码参数保存至预设的配置文件中后重新启动;
调整模块,用于在重新启动时读取所述配置文件,将自身的转码参数调整为所述目标转码参数。
10.根据权利要求7所述的装置,其特征在于,所述确定模块,具体用于查找当前处于空闲状态的转码设备,作为目标转码设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865696.2A CN110798706A (zh) | 2018-08-01 | 2018-08-01 | 视频转码方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865696.2A CN110798706A (zh) | 2018-08-01 | 2018-08-01 | 视频转码方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110798706A true CN110798706A (zh) | 2020-02-14 |
Family
ID=69425871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810865696.2A Withdrawn CN110798706A (zh) | 2018-08-01 | 2018-08-01 | 视频转码方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110798706A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112584156A (zh) * | 2020-11-18 | 2021-03-30 | 卓旺(安徽)航空科技产业股份有限公司 | 一种基于2k视频数据深度学习转码4k视频算法 |
CN113051077A (zh) * | 2021-03-26 | 2021-06-29 | 深圳市优必选科技股份有限公司 | 一种用户请求的处理方法、装置、终端设备及存储介质 |
-
2018
- 2018-08-01 CN CN201810865696.2A patent/CN110798706A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112584156A (zh) * | 2020-11-18 | 2021-03-30 | 卓旺(安徽)航空科技产业股份有限公司 | 一种基于2k视频数据深度学习转码4k视频算法 |
CN113051077A (zh) * | 2021-03-26 | 2021-06-29 | 深圳市优必选科技股份有限公司 | 一种用户请求的处理方法、装置、终端设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109788314B (zh) | 一种视频流数据传输的方法和装置 | |
CN108462589B (zh) | 一种终端的网络连接方法和装置 | |
CN109996086B (zh) | 一种视联网业务状态查询方法及装置 | |
CN111193788A (zh) | 一种音视频流负载均衡方法和装置 | |
CN110417877B (zh) | 一种音视频业务的处理方法及装置 | |
CN108574820B (zh) | 一种转发器控制方法和装置 | |
CN109246486B (zh) | 一种组帧方法和装置 | |
CN110324580B (zh) | 一种基于视联网的监控视频播放方法及装置 | |
CN109547728B (zh) | 一种录播源入会以及会议录播的方法和系统 | |
CN109120879B (zh) | 一种视频会议的处理方法和系统 | |
CN110620896A (zh) | 一种会议建立方法、系统及装置 | |
CN110049273B (zh) | 一种基于视联网的会议录制方法和中转服务器 | |
CN110138728B (zh) | 一种视频数据的共享方法和装置 | |
CN110769310A (zh) | 一种基于视联网的视频处理方法和装置 | |
CN110149305B (zh) | 一种基于视联网的多方播放音视频的方法和中转服务器 | |
CN110557612A (zh) | 一种监控设备的控制方法和视联网系统 | |
CN110519331B (zh) | 一种视联网资源处理方法及装置 | |
CN110475128B (zh) | 一种视频转码方法、装置、电子设备和存储介质 | |
CN110798706A (zh) | 视频转码方法和装置 | |
CN110072154B (zh) | 一种基于视联网的建群方法和中转服务器 | |
CN109640016B (zh) | 一种实现在视联网会议中快速录制的方法和装置 | |
CN111447407A (zh) | 一种监控资源的传输方法和装置 | |
CN111131788A (zh) | 监控资源状态检测方法、装置及计算机可读存储介质 | |
CN110233872B (zh) | 一种基于视联网的数据传输方法和视联网终端 | |
CN110213533B (zh) | 一种视联网监控视频流的获取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200214 |
|
WW01 | Invention patent application withdrawn after publication |