CN108270758A - 一种视频处理方法及装置 - Google Patents
一种视频处理方法及装置 Download PDFInfo
- Publication number
- CN108270758A CN108270758A CN201710002052.6A CN201710002052A CN108270758A CN 108270758 A CN108270758 A CN 108270758A CN 201710002052 A CN201710002052 A CN 201710002052A CN 108270758 A CN108270758 A CN 108270758A
- Authority
- CN
- China
- Prior art keywords
- video
- video flowing
- output
- input
- mapping table
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/268—Signal distribution or switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Abstract
本发明公开了一种视频处理方法及装置,其中,方法包括:接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于网络协议(IP)的视频流的输入输出映射关系;根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输流出至所述第二标识对应的视频输出地址;基于启动的和停止的视频流连接任务,更新所述视频流映射表。
Description
技术领域
本发明涉及视频流技术,尤其涉及一种视频处理方法及装置。
背景技术
视频矩阵是一类通过阵列切换的方法将M路视频信号任意输出至N路输出视频信号的装置或者系统,其中,某一路输入视频信号可以给到多个输出视频信号。
然而,目前的视频矩阵主要存在以下缺陷:视频矩阵采用专有设备实现视频的切换,所以考虑到较大的成本,现有的视频矩阵不能部署在云端。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种视频处理方法及装置。
本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种视频处理方法,应用于视频处理装置,所述方法包括:
接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;
响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于网络协议IP的视频流的输入输出映射关系;
根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输流出至所述第二标识对应的视频输出地址;
基于启动的和停止的视频流连接任务,更新所述视频流映射表。
上述方案中,所述方法还包括:
在基于IP的视频流的输入和输出过程,生成视频流映射表;其中,
所述在基于IP的视频流的输入和输出过程,生成视频流映射表,包括:
基于视频流输入指令对应的输入视频流、视频流输出请求对应的输入及输出视频流以及启动的视频流连接任务,更新所述视频流映射表中对应视频流的输入输出映射关系;
响应所述视频流输入指令所更新的视频流映射表中至少包含输入视频标识;
所述视频流输出请求携带所述第三标识、第四标识及第五标识;所述第三标识为输入视频标识;第四标识表征输出地址;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系时,利用所述第三标识,查找所述视频流映射表;
在查找到的记录中记录所述第三标识及第四标识。
上述方案中,所述启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址,包括:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址;
所述输入视频地址及视频输出地址采用统一资源定位符(URL,Uniform ResourceLocator)表征。
上述方案中,从所述输入视频地址获取视频流后,且输出至对应的视频输出地址之前,所述方法还包括:
对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址;
所述对获取的视频流进行输出格式处理包括以下至少之一:
根据输出格式对获取的视频流中的视频数据进行编码格式的转换处理;
根据输出格式对获取的视频流中的音频数据进行编码格式的转换处理;
根据输出格式对获取的视频流进行封装格式的转换处理。
上述方案中,所述方法还包括:
对获取的视频流进行缓存;
相应地,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址。
上述方案中,所述方法还包括:
所述视频处理装置初始化时,将所述视频流映射表置为空。
本发明实施例还提供了一种视频处理装置,包括:
接收单元,用于接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;
更新单元,用于响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;
处理单元,用于根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
所述更新单元,还用于基于启动的和停止的视频流连接任务,更新所述视频流映射表。
上述方案中,所述装置还包括:
生成单元,用于在基于IP的视频流的输入和输出过程,生成视频流映射表。
上述方案中,所述处理单元包括视频流连接模块,用于执行所述第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
所述视频流连接模块,具体用于:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址。
所述视频流连接模块,还用于:
对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址。
上述方案中,所述装置还包括:初始化单元,用于所述视频处理装置初始化时,将所述视频流映射表置为空。
本发明实施例提供的视频处理方法及装置,接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输流出至所述第二标识对应的视频输出地址;基于启动的和停止的视频流连接任务,更新所述视频流映射表,通过视频流连接任务来实现视频的切换并结合视频流映射表来管理输入输出视频,如此,能够实现输入视频流与输出视频流之间的任意切换(实现输出视频流的切换)。同时,实施本发明实施例的方案时,只需要可以接收和发送基于IP的视频流即可,不需要专有设备进行切换,因此可以部署在云端,大大降低了成本。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为视频矩阵结构示意图;
图2为相关技术中视频矩阵的实现方案示意图;
图3为本发明实施例一视频处理方法流程示意图;
图4为本发明实施例二视频处理装置结构示意图;
图5为本发明实施例三视频矩阵的切换实现流程示意图;
图6为本发明实施例三视频流连接器结构示意图;
图7为本发明实施例三一个具体的视频切换流程示意图;
图8为本发明实施例三视频矩阵结构示意图。
具体实施方式
下面结合附图及实施例对本发明再作进一步详细的描述。
如图1所示,视频矩阵是一种通过阵列切换的方法将M路视频信号任意输出至N路输出视频信号的装置或者系统。
通常,视频矩阵需要采用专用的硬件和接口,实现视频切换的功能。举个例子来说,图2所示的视频矩阵的实现方案采用了高速总线交换芯片来实现视频矩阵的视频切换功能。
经过发明人的仔细研究发现:由于当前的视频矩阵输入输出以原始视频信号(数字信号或模拟信号),所以需要采用专用的硬件和接口来实现视频的切换,因此这种实现方式对于互联网视频流的支持不多。也就是说,由于当前的视频矩阵针对的视频信号是原始视频信号(需要采用专用的硬件和接口),所以这种实现方案,不能部署在云端,不然会造成成本较高。
基于此,在本发明的各种实施例中,接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输流出至所述第二标识对应的视频输出地址;基于启动的和停止的视频流连接任务,更新所述视频流映射表。
实施例一
本发明实施例视频处理的方法,应用于视频处理装置,如图3所示,该方法包括以下步骤:
步骤300:在基于IP的视频流的输入和输出过程,生成视频流映射表;
这里,所述视频流映射表表征基于IP的视频流的输入输出映射关系。
具体地,基于视频流输入指令对应的输入视频流、视频流输出请求对应的输入及输出视频流以及启动的视频流连接任务,更新所述视频流映射表中对应视频流的输入输出映射关系。
更具体地来说,接收视频流输入指令;
响应所述视频流输入指令,更新所述视频流映射表;
接收视频流输出请求;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系;
利用更新后的视频流映射表,启动对应的第三视频流连接任务;
基于启动的第三视频流连接任务,更新视频流映射表。
这里,实际应用时,响应所述视频流输入指令所更新的视频流映射表中至少包含输入视频标识;
相应地,所述视频流输出请求携带所述第三标识、第四标识及第五标识;所述第三标识为输入视频标识;第四标识表征输出地址;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系时,利用所述第三标识,查找所述视频流映射表;在查找到的记录中记录所述第三标识及第四标识。
实际应用时,所述视频流映射表只要可以反映输入输出视频流之间的关系即可,其具体实现形式可以根据需要确定,比如视频流映射表可以包含输入视频身份标识(ID)、接入地址、输出映射ID、输出地址、视频流连接任务ID等。
实际应用时,在执行本步骤之前,对所述视频处理装置初始化时,需要将所述视频流映射表置为空,以便后续能利用所述视频流映射表对输入、输出的视频流进行准确管理。
步骤301:接收视频切换请求;
这里,所述视频切换请求中携带第一标识和第二标识。
其中,所述第一标识为输入视频标识;第二标识为视频输出标识。
步骤302:响应所述视频切换请求,利用所述第一标识和第二标识,更新所述视频流映射表中对应的输入输出映射关系;
具体来说,将所述第一标识和第二标识添加至所述视频流映射表中对应的记录中(每个记录对应一个输入输出映射关系)。
步骤303:根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
这里,所述启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址,具体包括:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址。
其中,实际应用时,输入视频地址及视频输出地址采用唯一的URL表征。也就是说,输入视频地址及视频输出地址具有不同的URL,以区分每个视频流的不同地址。
实际应用时,当输出格式与输入格式不同时,需要对获取的视频流进行格式转换处理,然后再输出。
基于此,在一实施例中,从所述输入视频地址获取视频流后,且输出至对应的视频输出地址之前,该方法还可以包括:
对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址。
其中,所述对获取的视频流进行输出格式处理包括以下至少之一:
根据输出格式对获取的视频流中的视频数据进行编码格式的转换处理;
根据输出格式对获取的视频流中的音频数据进行编码格式的转换处理;
根据输出格式对获取的视频流进行封装格式的转换处理。
这里,实际应用时,为了考虑处理效率,一般会将数据进行缓存。
基于此,在一实施例中,该方法还可以包括:
对获取的视频流进行缓存;
相应地,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址。
当然,实际应用时,当不需要对视频流进行输出格式处理时,也可以先将获取的视频流进行缓存;然后将缓存的视频流输出至对应的视频输出地址。
步骤304:基于启动的和停止的视频流连接任务,更新所述视频流映射表。
从步骤302和303中可以看出,在进行视频切换的过程中,需要对视频流映射表进行两次更新,具体地,先根据视频切换请求中的第一标识和第二标识,更新一次视频流映射表(将这些标识补充至对应的记录中);然后再基于启动的和停止的视频流连接任务,对视频流映射表进行第二次更新(更新视频流映射表中的视频流连接任务标识,具体地,将启动的视频流连接任务标识补充至对应的记录中,并将停止的视频流连接任务标识从对应的记录中删除)。
实际应用时,本发明实施例所述的视频处理装置可以称为视频矩阵。
需要说明的是:由于本发明实施例方案应用于在视频矩阵中,所以在所述视频流映射表中,至少有两条记录,也即是说,至少有一路基于IP的视频流输入,至少有两路基于IP的视频流输出。
本发明实施例提供的视频处理方法,接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;基于启动的和停止的视频流连接任务,更新所述视频流映射表,通过视频流连接任务来实现视频的切换并结合视频流映射表来管理输入输出视频,如此,能够实现输入视频流与输出视频流之间的任意切换(实现输出视频流的切换)。同时,实施本发明实施例的方案时,只需要可以接收和发送基于IP的视频流即可,不需要专有设备进行切换,因此可以部署在云端,大大降低了成本。
另外,对获取的视频流进行缓存,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址,如此,可以大大提高处理效率。
实施例二
为实现本发明实施例的方法,本实施例提供一种视频处理装置,如图4所示,该装置包括:
生成单元41,用于在基于IP的视频流的输入和输出过程,生成视频流映射表;所述视频流映射表表征基于IP的视频流的输入输出映射关系;
接收单元42,用于接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;
更新单元43,用于响应所述视频切换请求,利用所述第一标识和第二标识,更新所述视频流映射表中对应的输入输出映射关系;
处理单元44,用于根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
所述更新单元43,还用于基于启动的和停止的视频流连接任务,更新所述视频流映射表。
所述生成单元41,具体用于:
基于视频流输入指令对应的输入视频流、视频流输出请求对应的输入及输出视频流以及启动的视频流连接任务,更新所述视频流映射表中对应视频流的输入输出映射关系。
更具体地来说,所述生成单元41用于:
接收视频流输入指令;
响应所述视频流输入指令,更新所述视频流映射表;
接收视频流输出请求;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系;
利用更新后的视频流映射表,启动对应的第三视频流连接任务;
基于启动的第三视频流连接任务,更新视频流映射表。
这里,实际应用时,响应所述视频流输入指令所更新的视频流映射表中至少包含输入视频标识;
相应地,所述视频流输出请求携带所述第三标识、第四标识及第五标识;所述第三标识为输入视频标识;第四标识表征输出地址;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系时,所述生成单元41利用所述第三标识,查找所述视频流映射表;在查找到的记录中记录所述第三标识及第四标识。
实际应用时,所述视频流映射表只要可以反映输入输出视频流之间的关系即可,其具体实现形式可以根据需要确定,比如视频流映射表可以包含输入视频ID、接入地址、输出映射ID、输出地址、视频流连接任务ID等。
实际应用时,在执行本步骤之前,对所述视频处理装置初始化时,需要将所述视频流映射表置为空,以便后续能利用所述视频流映射表对输入、输出的视频流进行准确管理。
基于此,在一实施例中,该装置还可以包括:
初始化单元,用于所述视频处理装置初始化时,将所述视频流映射表置为空。
所述更新单元43利用所述第一标识和第二标识,更新所述视频流映射表中对应的输入输出映射关系,具体来说,所述更新单元43将所述第一标识和第二标识添加至所述视频流映射表中对应的记录中(每个记录对应一个输入输出映射关系)。
在一实施例中,所述处理单元44包括视频流连接模块,用于执行所述第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址。
也就是说,实际应用时,每个视频流连接任务可以由一个视频流连接模块来执行。
所述视频流连接模块,具体用于:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址。
其中,实际应用时,输入视频地址及视频输出地址采用唯一的URL表征。也就是说,输入视频地址及视频输出地址具有不同的URL,以区分每个视频流的不同地址。
实际应用时,当输出格式与输入格式不同时,需要对获取的视频流进行格式转换处理,然后再输出。
基于此,在一实施例中,所述视频流连接模块,还用于对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址。
其中,所述对获取的视频流进行输出格式处理可以包括以下至少之一:
所述视频里连接模块根据输出格式对获取的视频流中的视频数据进行编码格式的转换处理;
所述视频里连接模块根据输出格式对获取的视频流中的音频数据进行编码格式的转换处理;
所述视频流连接模块根据输出格式对获取的视频流进行封装格式的转换处理。
这里,实际应用时,为了考虑处理效率,一般会将数据进行缓存。
基于此,在一实施例中,所述视频流连接模块,还用于对获取的视频流进行缓存;
相应地,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址。
当然,实际应用时,当不需要对视频流进行输出格式处理时,所述视频流连接模块也可以先将获取的视频流进行缓存;然后将缓存的视频流输出至对应的视频输出地址。
从上面的描述中可以看出,在进行视频切换的过程中,所述更新单元43需要对视频流映射表进行两次更新,具体地,所述更新单元43先根据视频切换请求中的第一标识和第二标识,更新一次视频流映射表(将这些标识补充至对应的记录中);然后再基于启动的和停止的视频流连接任务,对视频流映射表进行第二次更新(更新视频流映射表中的视频流连接任务标识,具体地,所述更新单元43将启动的视频流连接任务标识补充至对应的记录中,并将停止的视频流连接任务标识从对应的记录中删除)。
实际应用时,本发明实施例所述的视频处理装置可以称为视频矩阵,可以设置在服务器端。
需要说明的是:由于本发明实施例方案应用于在视频矩阵中,所以在所述视频流映射表中,至少有两条记录,也即是说,至少有一路基于IP的视频流输入,至少有两路基于IP的视频流输出。
实际应用时,所述生成单元41、处理单元44及视频流连接模块可由视频处理装置中的处理器结合通信芯片实现;所述接收单元42可由视频处理装置中的通信芯片实现;所述更新单元43及初始化单元可由视频处理装置中的处理器实现。
本发明实施例提供的方案,所述接收单元42接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;所述更新单元43响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;所述处理单元44根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;所述更新单元43基于启动的和停止的视频流连接任务,更新所述视频流映射表,通过视频流连接任务来实现视频的切换并结合视频流映射表来管理输入输出视频,如此,能够实现输入视频流与输出视频流之间的任意切换(实现输出视频流的切换)。同时,实施本发明实施例的方案时,只需要可以接收和发送基于IP的视频流即可,不需要专有设备进行切换,因此可以部署在云端,大大降低了成本。
另外,所述视频流连接模块对获取的视频流进行缓存,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址,如此,可以大大提高处理效率。
实施例三
在实施例一、二的基础上,本实施例详细描述对视频进行切换的过程。
如前所述,由于目前的视频矩阵需要专有设备实现切换,且不支持视频流,因此为了能够满足当前互联网视频业务的开展,需要引入一种能够在云端部署的支持视频流切换的视频矩阵,针对这些问题,为了实现能够在服务器端应用,以实现互联网视频业务,本发明实施例提供了视频流连接器(实施例二中的视频流连接模块),并通过对视频流映射表的维护和更新来最终实现视频矩阵的切换功能。
视频矩阵的切换实现过程,如图5所示,主要包括以下步骤:
步骤500:在视频矩阵初始化时,将视频流映射表置空;
步骤501:当一路视频流输入信息更新时,更新视频流映射表中对应的记录;当一路视频流输出信息更新时,更新视频流映射表中对应的记录;当输出发生变化,即发生切换时,更新视频流映射表中对应的记录;
步骤502:更新视频流映射表中对应的记录后,响应视频流输出请求或切换请求,启动对应的视频流连接器,以根据视频流映射表读取对应的输入视频流并发送,以进行视频流输出。
其中,在本发明实施例中,引入了视频流连接器来实现输入视频流到输出视频流的切换。视频流连接器的功能为:在被创建(软件实现的视频流连接器被作为一个任务进程启动)后,根据视频流映射表主动获取一个指定的视频流作为输入,这个视频流有唯一的URL描述;并视频流进行处理(可能包括流拷贝、视频处理、音频处理、流格式处理等);然后将处理后的视频流推送到指定的输出上,这个输出视频流有和输入视频流区别的唯一的URL。
举个例子来说,一种可能的视频流连接器工作时,输入为视频流RTSP://192.168.10.11/input/stream1,输出为RTSP://192.168.10.12/output/stream3。视频流连接器需要进行流拷贝处理。
再举个例子来说,另一种可能的视频流连接器工作时,输入为视频流RTSP://192.168.10.11/input/stream3,输出为RTMP://192.168.10.12/output/stream6。视频流连接器需要进行视频流格式的转换,从实时流传输协议(RTSP)格式转换为实时消息传输协议(RTMP)。
这里,输入,输出的视频流URL中已经标明了视频流的格式,视频流连接器据此可以获知是否需要进行视频流格式的转换。
实际应用时,视频流连接器可以此阿勇软件实现,也可以采用硬件实现。当视频矩阵部署在通用服务器或者云平台上时,可采用软件实现。
如图6所示,视频流连接器的主要功能模块包括:输入视频流获取模块61、视频缓存模块62、输出视频流发送模块63、视频处理模块64、音频处理模块65、流封装处理模块66。
其中,输入视频流获取模块61主要完成从指定的输入URL获取到视频流;视频缓存模块62将获取到的视频流内容进行缓存;视频处理模块64根据输出格式,确定需要对缓存的视频流中的视频进行编码格式的转换处理时,对视频进行编码格式的转换处理,并在处理后进行缓存;音频处理模块65根据输出格式确定需要对视频流中的音频进行编码格式的转换处理,对音频进行编码格式的转换处理,并在处理后进行缓存;流封装处理模块66根据输出格式,确定需要对视频流进行封装格式的转换处理时,对视频流进行封装格式的转换处理,并在处理后进行缓存;输出视频流发送模块63将视频缓冲模块62中处理后的视频流,发送到指定的输出视频URL上。
下面结合具体例子来说明如何通过对视频流映射表的维护和更新和视频流连接器,来实现视频的切换功能。如图7所示,该过程主要包括以下步骤:
步骤700:视频矩阵初始化,将视频流映射表置空;
这里,如表1所示,视频流映射表可以包括输入视频ID、接入地址、输出映射、输出地址、视频流连接器ID等这些项。
表1
步骤701:用户发起视频输入,视频矩阵根据用户的视频输入端口,更新视频流映射表;
具体地,如表1所示,写入输入视频ID、接入地址。假设有两路输入。
表2
步骤702:用户发起视频输出请求,视频矩阵根据用户的视频输出请求,更新视频流映射表;
这里,输出请求中包括了输入视频的ID、视频输出的ID和输出地址,视频矩阵在视频流映射表中写入输出视频ID及映射关系。在写入时,首先找到输入视频ID的记录,然后在输出映射和输出地址中补充当前请求的ID和地址,从而得到表3所示的内容。
表3
步骤703:响应所述视频输出请求,输出视频给用户;
具体地,视频矩阵根据更新后的视频映射关系,启动一个视频流连接器,视频流连接器的输入为从接入地址获取的视频流,输出为记录表中的输出地址。视频连接器需要从接入地址读取视频流,并发送到输出地址。启动成功后,更新视频流映射表,写入视频流连接器ID,得到如表4所示的内容。
表4
步骤704:用户发起视频切换请求,视频矩阵根据用户的视频切换请求,更新视频流映射表;
这里,请求中包括输入视频ID、视频输出ID,视频矩阵更新视频流映射表时,修改输出视频ID和映射关系。具体地,首先找到输出视频ID所在的记录,将输出映射和输出地址中信息删除,记录对应视频流连接器的ID;然后找到输入视频ID所在的记录,在输出映射和输出地址中补充当前请求的输出视频ID和地址,以及视频流连接器ID,得到如表5所示的内容。
表5
步骤705:输出视频给用户。
具体地,视频矩阵查找更新后的视频映射关系表,找到输出ID所在的记录,读取视频流连接器ID并停止此视频流连接器。然后,视频矩阵根据当前视频映射关系表中视频输入ID和视频输出ID的关联关系,启动一个新的视频流连接器,新视频流连接器的输入为接入地址,输出为表中记录的输出地址。新视频流连接器需要从接入地址读取视频流,并发送到输出地址。启动成功后,更新视频流映射表,写入视频流连接器ID,得到如表6所示的内容。
表6
综上所述,本发明实施例提供了一种视频矩阵及其实现方法,如图8所示,包括:视频流接入模块81、多个视频连接器82、视频流输出模块83;其中,
视频流接入模块81为视频输出接口,完成用户输入视频的接入;视频输出模块83完成用户视频输出的请求。同时,视频流映射关系表记录了各个输入视频、输出视频的信息,以及映射关系,同时记录了视频连接器ID。视频流连接器完成某个输入视频的读入,并根据视频流映射关系表,输出至对应的URL,即视频流连接器完成输入到输出的连接。由视频流输出模块83最终完成视频流的输出。
这里,实际应用时,视频流连接器的数目根据用户的输出请求个数动态变化。视频流输出模块83可以输出多个相同的视频流以支持多个用户同时访问。
综上所述,本发明实施例提出了的方案,能够支持输出视频流在输入视频流中任意切换,并且能够在云端部署,降低了互联网视频业务的研发和运维成本。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种视频处理方法,其特征在于,应用于视频处理装置,所述方法包括:
接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;
响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于网络协议IP的视频流的输入输出映射关系;
根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输流出至所述第二标识对应的视频输出地址;
基于启动的和停止的视频流连接任务,更新所述视频流映射表。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在基于IP的视频流的输入和输出过程,生成视频流映射表;其中,
所述在基于IP的视频流的输入和输出过程,生成视频流映射表,包括:
基于视频流输入指令对应的输入视频流、视频流输出请求对应的输入及输出视频流以及启动的视频流连接任务,更新所述视频流映射表中对应视频流的输入输出映射关系;
响应所述视频流输入指令所更新的视频流映射表中至少包含输入视频标识;
所述视频流输出请求携带所述第三标识、第四标识及第五标识;所述第三标识为输入视频标识;第四标识表征输出地址;
响应所述视频流输出请求,更新视频流映射表中对应的输入输出映射关系时,利用所述第三标识,查找所述视频流映射表;
在查找到的记录中记录所述第三标识及第四标识。
3.根据权利要求1所述的方法,其特征在于,所述启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址,包括:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址;
所述输入视频地址及视频输出地址采用统一资源定位符URL表征。
4.根据权利要求3所述的方法,其特征在于,从所述输入视频地址获取视频流后,且输出至对应的视频输出地址之前,所述方法还包括:
对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址;
所述对获取的视频流进行输出格式处理包括以下至少之一:
根据输出格式对获取的视频流中的视频数据进行编码格式的转换处理;
根据输出格式对获取的视频流中的音频数据进行编码格式的转换处理;
根据输出格式对获取的视频流进行封装格式的转换处理。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
对获取的视频流进行缓存;
相应地,对缓存的视频流进行输出格式处理;并将处理后的视频流进行缓存;将缓存的处理后的视频流输出至所述第二标识对应的视频输出地址。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:
所述视频处理装置初始化时,将所述视频流映射表置为空。
7.一种视频处理装置,其特征在于,所述装置包括:
接收单元,用于接收视频切换请求;所述视频切换请求中携带第一标识和第二标识;所述第一标识为输入视频标识;第二标识为视频输出标识;
更新单元,用于响应所述视频切换请求,利用所述第一标识和第二标识,更新视频流映射表中对应的输入输出映射关系;所述视频流映射表表征基于IP的视频流的输入输出映射关系;
处理单元,用于根据更新后的视频流映射表,停止所述第二标识对应的正在执行的第一视频流连接任务;并启动对应的第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
所述更新单元,还用于基于启动的和停止的视频流连接任务,更新所述视频流映射表。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
生成单元,用于在基于IP的视频流的输入和输出过程,生成视频流映射表。
9.根据权利要求7所述的装置,其特征在于,所述处理单元包括视频流连接模块,用于执行所述第二视频流连接任务,将所述第一标识表征的输入视频输出至所述第二标识对应的视频输出地址;
所述视频流连接模块,具体用于:
利用根据所述视频切换请求更新的视频流映射表,获得所述第一标识所对应的输入视频地址,从所述输入视频地址获取视频流,并将获取的视频流输出至所述第二标识对应的视频输出地址;
所述视频流连接模块,还用于:
对获取的视频流进行输出格式处理,将处理后的视频流输出至所述第二标识对应的视频输出地址。
10.根据权利要求7至9任一项所述的装置,其特征在于,所述装置还包括:初始化单元,用于所述视频处理装置初始化时,将所述视频流映射表置为空。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710002052.6A CN108270758B (zh) | 2017-01-03 | 2017-01-03 | 一种视频处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710002052.6A CN108270758B (zh) | 2017-01-03 | 2017-01-03 | 一种视频处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108270758A true CN108270758A (zh) | 2018-07-10 |
CN108270758B CN108270758B (zh) | 2020-10-16 |
Family
ID=62770672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710002052.6A Active CN108270758B (zh) | 2017-01-03 | 2017-01-03 | 一种视频处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108270758B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022537A (zh) * | 2006-12-15 | 2007-08-22 | 清华大学 | 一种基于光场渲染的自由视点视频在ip网传输方法 |
CN101102302A (zh) * | 2006-07-04 | 2008-01-09 | 北京江南天安科技有限公司 | 多路音视频信号输出切换器和音视频监控系统及切换方法 |
CN101547317A (zh) * | 2009-05-14 | 2009-09-30 | 武汉新宏博科技有限公司 | 多路视频矩阵软切换系统和方法 |
CN102231824A (zh) * | 2011-08-04 | 2011-11-02 | 深圳市超视科技有限公司 | 视频监控任意编码格式数字矩阵系统及其实现方法 |
CN102595054A (zh) * | 2012-02-20 | 2012-07-18 | 深圳市深艾普科技有限公司 | 一种用于矩阵的视频切换方法和装置 |
CN103442207A (zh) * | 2013-08-19 | 2013-12-11 | 中国传媒大学 | 基于ip网络化的舞台调度视频监控系统 |
CN104639874A (zh) * | 2013-11-06 | 2015-05-20 | 北京航天长峰科技工业集团有限公司 | 一种数模混合视频一键切换控制方法 |
US20150256790A1 (en) * | 2014-03-04 | 2015-09-10 | Black Diamond Video | Converter device and system including converter device |
-
2017
- 2017-01-03 CN CN201710002052.6A patent/CN108270758B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101102302A (zh) * | 2006-07-04 | 2008-01-09 | 北京江南天安科技有限公司 | 多路音视频信号输出切换器和音视频监控系统及切换方法 |
CN101022537A (zh) * | 2006-12-15 | 2007-08-22 | 清华大学 | 一种基于光场渲染的自由视点视频在ip网传输方法 |
CN101547317A (zh) * | 2009-05-14 | 2009-09-30 | 武汉新宏博科技有限公司 | 多路视频矩阵软切换系统和方法 |
CN102231824A (zh) * | 2011-08-04 | 2011-11-02 | 深圳市超视科技有限公司 | 视频监控任意编码格式数字矩阵系统及其实现方法 |
CN102595054A (zh) * | 2012-02-20 | 2012-07-18 | 深圳市深艾普科技有限公司 | 一种用于矩阵的视频切换方法和装置 |
CN103442207A (zh) * | 2013-08-19 | 2013-12-11 | 中国传媒大学 | 基于ip网络化的舞台调度视频监控系统 |
CN104639874A (zh) * | 2013-11-06 | 2015-05-20 | 北京航天长峰科技工业集团有限公司 | 一种数模混合视频一键切换控制方法 |
US20150256790A1 (en) * | 2014-03-04 | 2015-09-10 | Black Diamond Video | Converter device and system including converter device |
Also Published As
Publication number | Publication date |
---|---|
CN108270758B (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103248684B (zh) | 一种互联网中资源获取方法和装置 | |
US10754869B2 (en) | Managing data format of data received from devices in an internet of things network | |
CN103401909B (zh) | 基于bs的数据交互方法与系统、客户端及服务器 | |
US10360913B2 (en) | Speech recognition method, device and system based on artificial intelligence | |
CN106817388B (zh) | 虚拟机、宿主机获取数据的方法、装置及访问数据的系统 | |
KR20080108442A (ko) | 선택적 주소 변환을 위한 컴퓨팅 시스템 및 방법 | |
CN101977218A (zh) | 一种互联网播放文件转码方法和系统 | |
US10390076B2 (en) | Image receiving/reproducing device, image generating/transmitting device, display system, image receiving/reproducing method, image generating/transmitting method, and computer readable medium | |
CN102572012A (zh) | 一种消息处理方法、交换机及系统 | |
CN109327397A (zh) | 数据发送、数据重发、数据处理方法与装置 | |
CN113038192B (zh) | 视频处理方法、装置、电子设备和存储介质 | |
CN105357260B (zh) | 实现虚拟桌面的系统、vdi数据缓存方法和vdi缓存设备 | |
WO2015172391A1 (zh) | 快速数据读写方法和装置 | |
CN104753811A (zh) | 一种流媒体业务优化方法、设备及系统 | |
CN114793223A (zh) | Dns记录的存储方法、装置、存储介质及电子设备 | |
CN108270758A (zh) | 一种视频处理方法及装置 | |
CN102902630A (zh) | 一种访问本地文件的方法和装置 | |
CN111930510B (zh) | 电子设备和数据处理方法 | |
CN107967184A (zh) | 远程协助中复制粘贴方法、装置及电子设备 | |
CN108833906B (zh) | 一种有线电视信号的传输方法、系统、服务器和存储介质 | |
CN112884942A (zh) | 一种数据记录与回放系统及其回放方法 | |
CN109710183A (zh) | 一种数据同步方法及装置 | |
CN110677693A (zh) | 基于安卓系统的加密视频离线播放方法及装置、电子设备 | |
CN110221995B (zh) | 一种集成智能网卡的数据管理方法及系统 | |
JP3347400B2 (ja) | 画像処理システム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |