CN108495141A - 一种音视频的合成方法及系统 - Google Patents

一种音视频的合成方法及系统 Download PDF

Info

Publication number
CN108495141A
CN108495141A CN201810179713.7A CN201810179713A CN108495141A CN 108495141 A CN108495141 A CN 108495141A CN 201810179713 A CN201810179713 A CN 201810179713A CN 108495141 A CN108495141 A CN 108495141A
Authority
CN
China
Prior art keywords
video
stream
audio
coding
client
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
Application number
CN201810179713.7A
Other languages
English (en)
Other versions
CN108495141B (zh
Inventor
黄学辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201810179713.7A priority Critical patent/CN108495141B/zh
Priority to US16/316,137 priority patent/US20210337248A1/en
Priority to EP18877316.2A priority patent/EP3562163B1/en
Priority to PCT/CN2018/081554 priority patent/WO2019169682A1/zh
Publication of CN108495141A publication Critical patent/CN108495141A/zh
Application granted granted Critical
Publication of CN108495141B publication Critical patent/CN108495141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • H04N21/2335Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio 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/265Mixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio 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/268Signal distribution or switching

Abstract

本发明公开了一种音视频的合成方法及系统,其中,所述方法包括:接收导播客户端发来的视频合成指令,并基于多个视频输入流合成第一视频流,以及基于所述多个视频流和所述第一视频流,合成第二视频流;接收所述导播客户端发来的音频合成指令,并基于多个音频输入流,分别合成第一音频流和第二音频流;分别对音视频流进行编码,得到对应的第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合;基于编码流集合整合得到第一输出流和第二输出流,并分别向用户客户端和导播客户端提供所述第一输出流和所述第二输出流。本申请提供的技术方案,能够降低音视频合成过程中的成本。

Description

一种音视频的合成方法及系统
技术领域
本发明涉及互联网技术领域,特别涉及一种音视频的合成方法及系统。
背景技术
在当前的一些应用场景中,通常需要对多路音视频信号进行整合,从而可以将多路音视频信号的画面在同一个视频画面中进行展示。例如,在视频会议、电视台导播的过程中,通常需要从多角度、多场景采集音视频信号,然后根据预先设定的方式或者导播的操控,将采集得到的音视频信号按照所需的画面和声音效果进行合成处理,最终可以将合成处理后的音视频信号提供给用户观看。
然而,传统的这种音视频合成的方式,通常需要比较昂贵的专用硬件设备,例如导播控制台,并且还需要比较专业的人员对专用硬件设备进行调控,因此,现有技术中音视频合成的方式成本较高。
发明内容
本申请的目的在于提供一种音视频的合成方法及系统,能够降低音视频合成过程中的成本。
为实现上述目的,本申请一方面提供一种音视频的合成方法,所述方法包括:接收导播客户端发来的视频合成指令,并基于多个视频输入流合成第一视频流,以及基于所述多个视频流和所述第一视频流,合成第二视频流;接收所述导播客户端发来的音频合成指令,并基于多个音频输入流,分别合成第一音频流和第二音频流;分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码,得到对应的第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合;分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流;分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
为实现上述目的,本申请另一方面还提供一种音视频的合成系统,所述系统包括指令控制模块、数据流合成处理模块、数据流多版本编码模块以及数据合流输出模块,其中:所述指令控制模块,用于接收导播客户端发来的视频合成指令和音频合成指令;所述数据流合成处理模块,用于基于多个视频输入流合成第一视频流,并基于所述多个视频流和所述第一视频流,合成第二视频流;以及用于基于多个音频输入流,分别合成第一音频流和第二音频流;所述数据流多版本编码模块,用于分别对所述第一视频流和所述第二视频流进行编码,得到对应的第一视频编码流集合和第二视频编码流集合;以及用于分别对所述第一音频流以及所述第二音频流进行编码,得到对应的第一音频编码流集合和第二音频编码流集合;所述数据合流输出模块,用于分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流;分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。由上可见,本申请提供的技术方案,导播客户端只需要下达音视频合成过程中的操控指令,音视频的合成过程均可以在云端的系统中完成。具体地,云端的系统在合成视频时,可以针对多个视频输入流,合成供用户客户端观看的第一视频流,该第一视频流的视频画面中可以同时显示至少一路视频输入流的画面。此外,云端的系统还可以合成供导播客户端观看的第二视频流,该第二视频流的视频画面中,除了包含第一视频流的视频画面,还可以包含各个视频输入流的视频画面。这样,可以方便导播控制人员实时观测用户观看的视频画面以及当前可用的视频输入流的视频画面。在合成音频时,云端的系统可以根据多个音频输入流,分别合成用于提供给用户客户端的第一音频流以及用于提供给导播客户端的第二音频流。后续在对视频流和音频流进行编码时,可以采用多版本编码的方式,生成第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合。每个集合中,可以包含多个不同版本的编码流。这样,根据当前用户客户端和导播客户端所需的编码类型,可以从各个集合中确定出对应的视频编码流和音频编码流,并且可以将视频编码流和音频编码流整合为一路输出流,并将输出流提供给用户客户端或者导播客户端。这样,可以避免用户客户端和导播客户端花费较多的带宽去加载多路音视频数据,而是只需加载一路输出流,从而节省了用户客户端和导播客户端的带宽。此外,在现有技术中,输出推流端通常只采用一种编码方式,再通过直播转码服务器进行转码,转码成多种不同编码方式的直播流,分发给不同的用户,从而造成较高的直播延时,并且可能会对输出流的质量有影响。而在本申请中,可以根据用户客户端和导播客户端所需的编码方式,灵活地调整输出流的编码方式,从而可以直接给用户客户端和导播客户端提供相符的输出流,进而省去了转码的步骤,不仅节省了用户等待的时间,还能减少音视频合成过程中的资源消耗。本申请提供的技术方案,导播客户端并不需要专业的硬件设备,只需要具备网络通信功能和页面显示功能即可,从而极大地减少了音视频合成过程中的成本,也提高了音视频合成方法的普适性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中服务器与客户端的架构示意图;
图2是本发明实施例中音视频合成方法的流程图;
图3是本发明实施例中主画面的示意图;
图4是本发明实施例中使用者画面的示意图;
图5是本发明实施例中音视频合成系统的结构示意图;
图6是本发明实施例中主画面合成的结构示意图;
图7是本发明实施例中使用者画面合成的结构示意图
图8为本发明实施例中计算机终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本申请提供一种音视频的合成方法,所述方法可以应用于音视频的合成系统中。其中,所述音视频的合成系统可以部署于云端服务器上,所述服务器可以是独立的服务器,也可以是分布式的服务器集群,具体地可以根据所需的运算资源灵活配置。请参阅图1,所述音视频的合成系统可以与导播客户端以及用户客户端进行数据交互。其中,所述导播客户端,可以是音视频合成的指令下达方。所述用户客户端,可以是用户使用的终端设备,在所述终端设备上可以播放合成的视频画面和音频信息。当然,在实际应用中,在云端服务器和用户客户端之间,还可以包括直播平台或者点播平台的服务器。合成的音视频输出流可以被传输至直播平台或者点播平台的服务器中,然后再由直播平台或者点播平台的服务器下发至各个用户客户端。
请参阅图2,上述的音视频的合成方法可以包括以下步骤。
S1:接收导播客户端发来的视频合成指令,并基于多个视频输入流合成第一视频流,以及基于所述多个视频流和所述第一视频流,合成第二视频流。
在本实施方式中,云端服务器可以接收导播客户端发来的拉流指令,该拉流指令可以指向多路音视频数据流。这样,云端服务器可以获取多路音视频数据流,并对获取的音视频数据流进行解码。所述多路音视频数据流可以是音视频合成过程中所需的数据流。在解码得到视频数据流和音频数据流后,云端服务器可以将解码得到的所述视频数据流和所述音频数据流分开缓存,后续从而可以独立地调用所需的视频数据流和/或音频数据流。
在本实施方式中,导播客户端可以向云端服务器发送视频合成指令,云端服务器在接收到所述视频合成指令之后,可以从视频数据流的缓存中读取出各个视频数据流。读取的所述各个视频数据流便可以作为步骤S1中所述的多个视频输入流。
在本实施方式中,云端服务器可以合成两种不同的视频画面。其中一种视频画面可供用户观看,请参阅图3,在该视频画面中,可以包含多个视频输入流的视频画面。例如在图3中,A’、B’、E’分别表示对视频输入流A、B、E进行处理后的视频画面。这三个视频输入流的视频画面可以被整合至同一个视频画面中,从而供用户观看。上述供用户观看的视频画面对应的视频流便可以是步骤S1中所述的第一视频流,该供用户观看的视频画面可以称为主画面。这样,所述视频合成指令可以指向至少两路视频数据流。云端服务器可以从所述多个视频输入流中确定所述视频合成指令指向的至少一个目标视频输入流,并将所述目标视频输入流的视频画面整合至一个视频画面中。整合得到的视频画面对应的视频流便可以作为所述第一视频流。
在本实施方式中,云端服务器合成的另一种视频画面可供导播人员观看。其中,导播人员需要对用户观看的视频画面进行监控,并且需要观看当前可用的视频输入流的视频画面,从而可以对视频画面进行进一步地合成。因此,供导播人员观看的视频画面可以如图4所示,在图4中,除了包含第一视频流的视频画面,还可以包含当前可用的各个视频输入流的视频画面。例如,视频输入流A至H当前均可用,那么在供导播人员观看的视频画面中,可以包含视频输入流A至H的视频画面。上述的供导播人员观看的视频画面对应的视频流便可以是步骤S1中所述的第二视频流,该供导播人员观看的视频画面可以称为使用者画面。具体地,在合成第二视频流时,可以将所述第一视频流的视频画面以及所述多个视频输入流的视频画面整合至一个视频画面中,并将整合得到的视频画面对应的视频流作为所述第二视频流。
在一个实施方式中,无论是合成第一视频流还是第二视频流,均会涉及到将多个视频画面整合至同一个视频画面中的操作过程。具体地,可以根据整合后的视频画面的分辨率,预先创建与该分辨率相符的一个背景画面。通常,该背景画面可以是纯色的画面。例如,所述背景画面可以是黑色的背景画面。然后,针对待整合的各个视频画面,可以分别确定每个视频画面的整合参数。其中,所述整合参数包括画面大小、所处位置、叠加层级等。所述画面大小可以表征待整合的视频画面在整合后的视频画面中的尺寸;所述所处位置可以表征待整合的视频画面在整合后的视频画面中的具体位置;所述叠加层级则可以控制多个待整合的视频画面在整合后的视频画面中的叠加顺序,即如果两路输入流的视频画面在整合后的视频画面中有重合,叠加层级可以决定哪路视频画面在上,哪路视频画面在下。这样,在确定了待整合的各个视频画面的整合参数之后,可以按照所述整合参数,将所述待整合的各个视频画面添加于所述背景画面上,以形成整合的视频画面。
需要说明的是,设置上述的纯色的背景画面的意义在于,有时候待整合的视频画面无法填充满整个整合后的视频画面,那么为了完整地展示整合后的视频画面,就需要一个纯色的背景画面作为底色。此外,在一些应用场景中,纯色的背景画面还可以通过后期处理去除,并在去除后的区域中添加一些自定义的特效画面。例如,可以通过抠像的技术,将绿色的背景画面从整合后的视频画面中抠除,然后在抠除的区域中填充与视频画面的主题相符的特效画面。
在一个实施方式中,在对多路输入流进行合成之前,还可以根据对每路输入流进行预处理。所述的预处理包括但不限于:噪点去除、背景滤除、透明度设置、对比度增强等。此外,在合成主画面之后,可以对主画面进行进一步的后处理,所述后处理包括但不限于添加图片水印、添加文字、添加预设画面效果(如直播虚拟礼物效果)等。
S2:接收所述导播客户端发来的音频合成指令,并基于多个音频输入流,分别合成第一音频流和第二音频流。
在本实施方式中,云端服务器还可以针对导播客户端发出的音频合成指令,对多个音频输入流进行合成。同样地,合成后的音频流也可以分为提供给用户客户端的和提供给导播客户端的。其中,提供给用户客户端的音频流可以作为主音频,即步骤S2中所述的第一音频流;而提供给导播客户端的音频流可以作为使用者音频,即步骤S2中所述的第二音频流。
在本实施方式中,可以从前述的音频数据流的缓存中获取多个音频输入流,进行主音频和使用者音频和合成。具体地,所述音频合成指令中可以包括主音频的合成参数,根据主音频的合成参数,可以从多个音频输入流中获取所需要的音频输入流的音频帧。然后,可以对所选的音频帧进行预处理,包括但不限于音频音量调整、音调变换等。接着,可以按照主音频的混音参数,对预处理后的音频帧进行混音。混音的过程可以包括不同声道的融合和声音响度的混合。在合成得到主音频后,可以对主音频进行后处理,后处理的过程包括但不限于添加预设音效如口哨声、掌声、欢呼声等。这样,便可以生成用于提供给用户客户端的第一音频流。
在本实施方式中,在合成第二音频流时,云端服务器可以判断所述音频合成指令中是否包含音频复制指令,若包含,则可以复制所述第一音频流,并将复制的数据作为所述第二音频流。若没有包含,则可以根据音频合成指令中包含的使用者音频的合成参数,按照上述合成主音频的过程,完成使用者音频的合成。
在一个实施方式中,在合成第二音频流之后,导播客户端的操作人员可以试听该第二音频流,并可以对第二音频流进行进一步地修正。具体地,云端服务器可以接收所述导播客户端发来的包含音频合成参数的调控指令,该调控指令中的音频合成参数,可以使得云端服务器对所述第二音频流进行调整。例如,云端服务器可以将第二音频流中的部分音效去除,或者添加新的音效,或者修改其中的部分音效等。在调整之后,云端服务器可以向所述导播客户端反馈调整后的第二音频流。导播客户端在接收到调整后的第二音频流之后,操作人员可以继续试听,如果觉得调整后的第二音频流符合预期,操作人员可以通过导播客户端向云端服务器下达音频同步指令。云端服务器在接收到所述导播客户端发来的音频同步指令后,可以按照调整所述第二音频流时使用的音频合成参数,对提供给用户客户端的第一音频流进行调整,并向所述用户客户端提供调整后的第一音频流。这样,提供给用户客户端的音频流可以预先在导播客户端中进行试听和修正,在修正完成之后,便可以按照修正时使用的音频合成参数,对提供给用户客户端的第一音频流进行同样的处理,这样可以保证用户听到的都是符合操作人员预期的音效。
在另一个实施方式中,导播客户端处除了可以接收上述的第二音频流,还可以监听用户客户端接收的第一音频流。具体地,导播客户端可以向云端服务器发送音频切换指令,云端服务器在接收到该音频切换指令后,便可以响应于该音频切换指令,将提供给用户客户端的第一输出流发送至所述导播客户端。这样,导播客户端便可以监听用户能够听到的音效。当导播客户端再次向云端服务器发送音频切换指令后,云端服务器便可以再次向导播客户端提供第二音频流。这样,导播客户端可以在第一音频流和第二音频流之间来回切换。
由此可见,按照本申请上述的技术方案,可以合成出不同用途的两套音视频数据,一套可以提供给用户客户端,另一套可以提供给导播客户端。其中,控制直播内容在线合成的操作人员,通过观看使用者画面,除了能看到观众所看到的主画面外,还能够看到当前可用的视频输入流的实时画面,从而总览全局;同时,操作人员既可以听到输出给观众的音频,又能够切换至使用者音频,并可以对使用者音频进行测试和试听,当试听满意时可以把使用者音频的合成参数下发到主音频的合成参数中,从而对主音频也进行调整。
S3:分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码,得到对应的第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合。
在本实施方式中,在上述视频画面或音频合成完毕后,云端服务器可以对产生的第一视频流、第二视频流、第一音频流以及第二音频流进行编码。传统的音视频合成中,通常只会编码出一种版本的音视频数据,推流出去后由网络中转服务器进行多种不同音视频属性的转码。然而传统中的这种方式,存在较多的弊端,例如,中转服务器进行多种不同属性的转码,会造成由于两次编解码引起的画质损失,同时也会造成较高的延时。在本实施方式中,为了适应不同的终端(例如机顶盒、个人电脑、智能手机等),以及不同的网络接入情况(例如光纤、移动蜂窝网络等),可以对合成的音频流和视频流进行多版本的编码。
在本实施方式中,在对第一音频流和第二音频流进行多版本编码时,首先可以根据音频多版本编码参数集合中的采样率、声道数进行转换,生成多种不同采样率、声道数的音频数据,然后对于每个采样率、声道数的音频数据,再根据不同的音频编码配置进行编码。所述的不同的音频编码配置,包括但不限于不同的码率、编码格式等。
在本实施方式中,在对第一视频流和第二视频流进行多版本编码时,首先可以根据视频多版本编码参数集合中的分辨率进行缩放,生成多种不同分辨率的视频帧,然后对于每个不同分辨率的视频帧,再根据不同的视频编码配置如帧率、编码格式、码率等进行编码。
在一个实施方式中,在对合成的音视频流进行多版本编码时,可以根据用户客户端的不同,实时地对多版本编码参数进行调整。具体地,可以获取每一路输出流所需的视频编码参数和音频编码参数,以确定所需的编码参数集合。所述所需的编码参数集合中可以汇总了当前的输出流所需的音频编码参数和视频编码参数。然后,可以将所述所需的编码参数集合与当前的编码参数集合进行对比。所述当前的编码参数集合可以是云端服务器正在使用的编码参数集合。若两者不一致,表明当前的用户客户端对应的输出流相比于正在使用的编码参数集合已经发生了变化。此时,可以确定在所述所需的编码参数集合中新增的视频编码参数和/或音频编码参数,并将所述新增的视频编码参数和/或音频编码参数添加至所述当前的编码参数集合中。此外,还可以确定包含于所述当前的编码参数集合中,但不包含于所述所需的编码参数集合中的目标视频编码参数和/或目标音频编码参数,并将所述目标视频编码参数和/或目标音频编码参数从所述当前的编码参数集合中去除。这样,可以对当前的编码参数集合中的编码参数进行相应的增加和删除等操作。经过上述调整后的当前的编码参数集合中,便可以仅包含当前输出流所需的编码参数。这样,可以按照调整之后的当前的编码参数集合中的视频编码参数和音频编码参数,分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码。
由于是进行多版本编码,那么每个音频流/视频流均可以对应多个不同的编码版本,从而可以得到对应的第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合。每个集合中均可以包含多个不同版本的编码流。
S4:分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流。
S5:分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
在本实施方式中,在向用户客户端或者导播客户端推送输出流时,可以根据用户客户端或者导播客户端所支持的编解码版本,从对应的编码流集合中挑选出适配的音视频编码流。具体地,针对提供给用户客户端的输出流,可以分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,该第一输出流便可以提供给用户客户端。需要说明的是,在整合第一输出流时,可以只选择音频流而不选择视频流,此时对应于纯音频的情况,可以用于网络电台等应用;也可以选择多于一路的音频流或者视频流,此时对应于多音轨或者多视频轨的情况,此时用户客户端可以自由切换音视频轨;甚至也可以只选择视频流而不选择音频流进行输出,此时对应于类似默片效果的情况。
相应地,针对提供给导播客户端的输出流,可以分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
在本实施方式中,对于每路输出流,从编码流集合中选择对应的音频流和视频流,并进行整合后,可以按照对应输出流的推流地址进行推流,从而对应直播场景;也可以在整合后保存为本地文件,从而对应点播回放、审查等场景。在向用户客户端和/或导播客户端推流的过程中,云端服务器可以实时地接收用户客户端或者导播客户端发来的增加、删除、修改推流地址和推流合流参数的指令,从而相应地进行实时地更改。
在一个实施方式中,在向用户客户端提供所述第一输出流以及在向所述导播客户端提供所述第二输出流时,可以对比所需的输出流集合和当前的输出流集合。若两者不一致,可以确定在所述所需的输出流集合中新增的输出流,并根据所述新增的输出流的推流地址建立额外的输出推流连接,这些额外建立的输出推流连接可以对应到用户客户端和/或导播客户端处,以向所述用户客户端和/或导播客户端提供所述新增的输出流。此外,还可以确定包含于所述当前的输出流集合中,但不包含于所述所需的输出流集合中的目标输出流,并取消所述目标输出流的推流连接,以停止提供所述目标输出流。
在一个实施方式中,在向所述用户客户端和/或导播客户端提供所述新增的输出流之前,还可以配置每路新增的输出流对应的整合参数,所述整合参数可以用于限定所述新增的输出流中包含的视频编码流和/或音频编码流。这样,根据所述整合参数,便可以从对应的编码流集合中挑选出相应的音视频编码流。
由上可见,本申请支持多路输出流,每路输出流可以具有不同的分辨率、码率、采样率等信息。当云端服务器收到添加、删除、修改输出流配置的指令时,会通过分析所需的多版本编码配置,然后和当前正在使用的多版本编码配置进行比较,从而实时动态地新增、改变或者取消相应的多版本编码配置,同时增加、取消或者修改输出推流和相关参数。
实施例二
本申请还提供一种音视频的合成系统,该系统可以部署于云端服务器中。请参阅图5,所述系统包括指令控制模块、数据流合成处理模块、数据流多版本编码模块以及数据合流输出模块,其中:
所述指令控制模块,用于接收导播客户端发来的视频合成指令和音频合成指令;
本实施例中,数据流合成处理模块可以包括视频画面合成处理模块和音效合成处理模块;数据流多版本编码模块可以把包括视频多版本编码模块和音频多版本编码模块。
所述视频画面合成处理模块,用于基于多个视频输入流合成第一视频流,以及基于所述多个视频流和所述第一视频流,合成第二视频流;
所述音效合成处理模块,用于基于多个音频输入流,分别合成第一音频流和第二音频流;
所述视频多版本编码模块,用于分别对所述第一视频流和所述第二视频流进行编码,得到对应的第一视频编码流集合和第二视频编码流集合;
所述音频多版本编码模块,用于分别对所述第一音频流以及所述第二音频流进行编码,得到对应的第一音频编码流集合和第二音频编码流集合;
所述数据合流输出模块,用于分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流;分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
如图5所示,在一个实施方式中,所述系统还包括:
数据输入模块,用于接收导播客户端发来的拉流指令,并获取多路音视频数据流。
此外,所述系统还可以包括解码缓存模块,用于将所述音视频数据流解码为视频数据流和音频数据流,并将解码得到的所述视频数据流和所述音频数据流分开缓存。
相应地,所述多个视频输入流和所述多个音频输入流分别从视频数据流和音频数据流各自的缓存中读取得到。
其中,上述的视频画面合成处理模块、音效合成处理模块、视频多版本编码模块、音频多版本编码模块可以集成于音视频合成与编码模块中。
请参阅图6,在合成主画面和使用者画面时,数据输入模块可以将多个视频输入流传输至输入视频处理模块,所述输入视频处理模块可以对每路输入流进行预处理。所述的预处理包括但不限于:噪点去除、背景滤除、透明度设置、对比度增强等。然后可以通过主画面合成模块合成主画面,此外,在合成主画面之后,可以通过主画面后处理模块对主画面进行进一步的后处理,所述后处理包括但不限于添加图片水印、添加文字、添加预设画面效果(如直播虚拟礼物效果)等。
在合成使用者画面时,可以将主画面和多个视频输入流一并作为输入,并通过使用者画面合成模块合成使用者画面。同样地,在合成使用者画面之后,可以通过使用者画面后处理模块对使用者画面进行进一步的后处理,所述后处理包括但不限于添加图片水印、添加文字、添加预设画面效果(如直播虚拟礼物效果)等。
请参阅图7,在合成主音频和使用者音频时,数据输入模块可以将提供的多个音频输入流分别作为合成主音频和使用者音频所使用的输入流,然后,通过输入音频处理模块,可以对音频输入流进行预处理。预处理包括但不限于音频滤波、音调处理、音量调节等操作。
然后,可以通过主音效合成模块和使用者音效合成模块,分别合成主音频和使用者音频。具体地,可以按照主音频和使用者音频的混音参数,对预处理后的音频帧进行混音。混音的过程可以包括不同声道的融合和声音响度的混合。在合成得到主音频和使用者音频之后,可以分别通过主音效后处理模块和使用者音效后处理模块对主音频和使用者音频进行后处理,后处理操作包括但不限于添加外部预设声音如掌声、欢呼声、吹口哨声等音频预设效果。
在一个实施方式中,所述视频画面合成处理模块还用于将所述第一视频流的视频画面以及所述多个视频输入流的视频画面整合至一个视频画面中,并将整合得到的视频画面对应的视频流作为所述第二视频流。
在一个实施方式中,所述视频画面合成处理模块包括:
整合参数确定单元,用于预先创建与整合后的视频画面的分辨率相符的背景画面,并确定待整合的各个视频画面的整合参数,其中,所述整合参数包括画面大小、所处位置、叠加层级等;
画面添加单元,用于按照所述整合参数,将所述待整合的各个视频画面添加于所述背景画面上,以形成整合的视频画面。
在一个实施方式中,所述系统还包括:
音频调整模块,用于接收所述导播客户端发来的包含音频合成参数的调控指令,并按照所述音频合成参数对所述第二音频流进行调整,并向所述导播客户端反馈调整后的第二音频流;
音频同步模块,用于接收所述导播客户端发来的音频同步指令,按照所述音频合成参数对所述第一音频流进行调整,并向所述用户客户端提供调整后的第一音频流。
在一个实施方式中,所述系统还包括:
参数获取模块,用于获取每一路输出流所需的视频编码参数和音频编码参数,以确定所需的编码参数集合;
参数新增模块,用于将所述所需的编码参数集合与当前的编码参数集合进行对比,若两者不一致,确定在所述所需的编码参数集合中新增的视频编码参数和/或音频编码参数,并将所述新增的视频编码参数和/或音频编码参数添加至所述当前的编码参数集合中;
参数删减模块,用于确定包含于所述当前的编码参数集合中,但不包含于所述所需的编码参数集合中的目标视频编码参数和/或目标音频编码参数,并将所述目标视频编码参数和/或目标音频编码参数从所述当前的编码参数集合中去除;
编码模块,用于按照调整之后的当前的编码参数集合中的视频编码参数和音频编码参数,分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码。
在一个实施方式中,所述系统还包括:
输出流新增模块,用于对比所需的输出流集合和当前的输出流集合,若两者不一致,确定在所述所需的输出流集合中新增的输出流,并根据所述新增的输出流的推流地址建立额外的输出推流连接,这些额外建立的输出推流连接可以与用户客户端和/或导播客户端相对应,以向所述用户客户端和/或导播客户端提供所述新增的输出流;
输出流删减模块,用于确定包含于所述当前的输出流集合中,但不包含于所述所需的输出流集合中的目标输出流,并取消所述目标输出流所对应的推流连接,以停止提供所述目标输出流。
请参阅图8,在本申请中,上述实施例中的技术方案可以应用于如图8所示的计算机终端10上。计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图8所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
由上可见,本申请提供的技术方案,导播客户端只需要下达音视频合成过程中的操控指令,音视频的合成过程均可以在云端的系统中完成。具体地,云端的系统在合成视频时,可以针对多个视频输入流,合成供用户客户端观看的第一视频流,该第一视频流的视频画面中可以同时显示至少一路视频输入流的画面。此外,云端的系统还可以合成供导播客户端观看的第二视频流,该第二视频流的视频画面中,除了包含第一视频流的视频画面,还可以包含各个视频输入流的视频画面。这样,可以方便导播控制人员实时观测用户观看的视频画面以及当前可用的视频输入流的视频画面。在合成音频时,云端的系统可以根据多个音频输入流,分别合成用于提供给用户客户端的第一音频流以及用于提供给导播客户端的第二音频流。后续在对视频流和音频流进行编码时,可以采用多版本编码的方式,生成第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合。每个集合中,可以包含多个不同版本的编码流。这样,根据当前用户客户端和导播客户端所需的编码类型,可以从各个集合中确定出对应的视频编码流和音频编码流,并且可以将视频编码流和音频编码流整合为一路输出流,并将输出流提供给用户客户端或者导播客户端。这样,可以避免用户客户端和导播客户端花费较多的带宽去加载多路音视频数据,而是只需加载一路输出流,从而节省了用户客户端和导播客户端的带宽。此外,在现有技术中,输出推流端通常只采用一种编码方式,再通过直播转码服务器进行转码,转码成多种不同编码方式的直播流,分发给不同的用户,从而造成较高的直播延时,并且可能会对输出流的质量有影响。而在本申请中,可以根据用户客户端和导播客户端所需的编码方式,灵活地调整输出流的编码方式,从而可以直接给用户客户端和导播客户端提供相符的输出流,进而省去了转码的步骤,不仅节省了用户等待的时间,还能减少音视频合成过程中的资源消耗。本申请提供的技术方案,导播客户端并不需要专业的硬件设备,只需要具备网络通信功能和页面显示功能即可,从而极大地减少了音视频合成过程中的成本,也提高了音视频合成方法的普适性。
此外,一般的音视频合成过程中,操作人员的控制台一般通过分别拉流每个输入流以及合成输出流,从而显示出合成的观众画面和所有输入流的画面。这种方式存在两个问题:
1)控制台需要拉流多个输入流,从而使得控制台的带宽需求很大
2)无法保证控制台显示的每路流的画面和合成的直播内容画面中,每路流的画面是一致的。
而本发明所述的使用者画面,能够把合成输出的画面(主画面)和当前所需的输入流的画面进行合成为一个视频帧,使得前端的导播客户端只需要拉一路使用者画面的流,就能实现传统导播控制台的功能。这样,一方面节省了导播客户端的网络带宽,另一方面,由于所有的输入流都是由云端服务器获取的,并且是在云端服务器合成的,因此可以保证各路流画面的同步。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (18)

1.一种音视频的合成方法,其特征在于,所述方法包括:
接收导播客户端发来的视频合成指令,并基于多个视频输入流合成第一视频流,以及基于所述多个视频流和所述第一视频流,合成第二视频流;
接收所述导播客户端发来的音频合成指令,并基于多个音频输入流,分别合成第一音频流和第二音频流;
分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码,得到对应的第一视频编码流集合、第二视频编码流集合、第一音频编码流集合以及第二音频编码流集合;
分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流;
分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
2.根据权利要求1所述的方法,其特征在于,在接收导播客户端发来的视频合成指令之前,所述方法还包括:
接收所述导播客户端发来的拉流指令,并获取多路音视频数据流;
将所述音视频数据流解码为视频数据流和音频数据流,并将解码得到的所述视频数据流和所述音频数据流分开缓存;
相应地,所述多个视频输入流和所述多个音频输入流分别从所述视频数据流和所述音频数据流各自的缓存中读取得到。
3.根据权利要求1所述的方法,其特征在于,基于多个视频输入流合成第一视频流包括:
响应于所述视频合成指令,从所述多个视频输入流中确定一个或者多个目标视频输入流,并将所述一个或者多个目标视频输入流的视频画面整合至一个视频画面中,并将整合得到的视频画面对应的视频流作为所述第一视频流。
4.根据权利要求1所述的方法,其特征在于,基于所述多个视频流和所述第一视频流,合成第二视频流包括:
将所述第一视频流的视频画面以及所述多个视频输入流的视频画面整合至一个视频画面中,并将整合得到的视频画面对应的视频流作为所述第二视频流。
5.根据权利要求3或4所述的方法,其特征在于,在将多个视频画面整合至一个视频画面中时,所述方法还包括:
预先创建与整合后的视频画面的分辨率相符的背景画面,并确定待整合的各个视频画面的整合参数,其中,所述整合参数包括画面大小、所处位置、叠加层级中的至少一种;
按照所述整合参数,将所述待整合的各个视频画面添加于所述背景画面上,以形成整合的视频画面。
6.根据权利要求1所述的方法,其特征在于,在合成第二音频流之后,所述方法还包括:
接收所述导播客户端发来的包含音频合成参数的调控指令,并按照所述音频合成参数对所述第二音频流进行调整,并向所述导播客户端反馈调整后的第二音频流;
接收所述导播客户端发来的音频同步指令,按照所述音频合成参数对所述第一音频流进行调整,并向所述用户客户端提供调整后的第一音频流。
7.根据权利要求1所述的方法,其特征在于,在分别合成第一音频流和第二音频流时,所述方法还包括:
判断所述音频合成指令中是否包含音频复制指令,若包含,复制所述第一音频流,并将复制的数据作为所述第二音频流。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述导播客户端发来的音频切换指令,并响应于所述音频切换指令,将所述第一输出流发送至所述导播客户端。
9.根据权利要求1所述的方法,其特征在于,分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码包括:
获取每一路输出流所需的视频编码参数和音频编码参数,以确定所需的编码参数集合;
将所述所需的编码参数集合与当前的编码参数集合进行对比,若两者不一致,确定在所述所需的编码参数集合中新增的视频编码参数和/或音频编码参数,并将所述新增的视频编码参数和/或音频编码参数添加至所述当前的编码参数集合中;
确定包含于所述当前的编码参数集合中,但不包含于所述所需的编码参数集合中的目标视频编码参数和/或目标音频编码参数,并将所述目标视频编码参数和/或目标音频编码参数从所述当前的编码参数集合中去除;
按照调整之后的当前的编码参数集合中的视频编码参数和音频编码参数,分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码。
10.根据权利要求1所述的方法,其特征在于,在向用户客户端提供所述第一输出流以及在向所述导播客户端提供所述第二输出流时,所述方法还包括:
对比所需的输出流集合和当前的输出流集合,若两者不一致,确定在所述所需的输出流集合中新增的输出流,并与所述新增的输出流的推流地址相应的用户客户端和/或导播客户端建立对应关系,以向所述用户客户端和/或导播客户端提供所述新增的输出流;
确定包含于所述当前的输出流集合中,但不包含于所述所需的输出流集合中的目标输出流,并停止提供所述目标输出流。
11.根据权利要求10所述的方法,其特征在于,在向所述用户客户端和/或导播客户端传输所述新增的输出流之前,所述方法还包括:
配置每路新增的输出流对应的整合参数,所述整合参数用于限定所述新增的输出流中包含的视频编码流和/或音频编码流。
12.一种音视频的合成系统,其特征在于,所述系统包括指令控制模块、数据流合成处理模块、数据流多版本编码模块以及数据合流输出模块,其中:
所述指令控制模块,用于接收导播客户端发来的视频合成指令和音频合成指令;
所述数据流合成处理模块,用于基于多个视频输入流合成第一视频流,并基于所述多个视频流和所述第一视频流,合成第二视频流;以及用于基于多个音频输入流,分别合成第一音频流和第二音频流;
所述数据流多版本编码模块,用于分别对所述第一视频流和所述第二视频流进行编码,得到对应的第一视频编码流集合和第二视频编码流集合;以及用于分别对所述第一音频流以及所述第二音频流进行编码,得到对应的第一音频编码流集合和第二音频编码流集合;
所述数据合流输出模块,用于分别从所述第一视频编码流集合和所述第一音频编码流集合中确定第一视频编码流和/或第一音频编码流,并将所述第一视频编码流和/或所述第一音频编码流整合为第一输出流,并向用户客户端提供所述第一输出流;分别从所述第二视频编码流集合和所述第二音频编码流集合中确定第二视频编码流和/或第二音频编码流,并将所述第二视频编码流和/或所述第二音频编码流整合为第二输出流,并向所述导播客户端提供所述第二输出流。
13.根据权利要求12所述的系统,其特征在于,所述系统还包括:
数据输入模块,用于接收所述导播客户端发来的拉流指令,并获取多路音视频数据流;
解码缓存模块,用于将所述音视频数据流解码为视频数据流和音频数据流,并将解码得到的所述视频数据流和所述音频数据流分开缓存;
相应地,所述多个视频输入流和所述多个音频输入流分别从所述视频数据流和所述音频数据流各自的缓存中读取得到。
14.根据权利要求12所述的系统,其特征在于,所述视频画面合成处理模块还用于将所述第一视频流的视频画面以及所述多个视频输入流的视频画面整合至一个视频画面中,并将整合得到的视频画面对应的视频流作为所述第二视频流。
15.根据权利要求14所述的系统,其特征在于,所述视频画面合成处理模块包括:
整合参数确定单元,用于预先创建与整合后的视频画面的分辨率相符的背景画面,并确定待整合的各个视频画面的整合参数,其中,所述整合参数包括画面大小、所处位置、叠加层级中的至少一种;
画面添加单元,用于按照所述整合参数,将所述待整合的各个视频画面添加于所述背景画面上,以形成整合的视频画面。
16.根据权利要求12所述的系统,其特征在于,所述系统还包括:
音频调整模块,用于接收所述导播客户端发来的包含音频合成参数的调控指令,并按照所述音频合成参数对所述第二音频流进行调整,并向所述导播客户端反馈调整后的第二音频流;
音频同步模块,用于接收所述导播客户端发来的音频同步指令,按照所述音频合成参数对所述第一音频流进行调整,并向所述用户客户端提供调整后的第一音频流。
17.根据权利要求12所述的系统,其特征在于,所述系统还包括:
参数获取模块,用于获取每一路输出流所需的视频编码参数和音频编码参数,以确定所需的编码参数集合;
参数新增模块,用于将所述所需的编码参数集合与当前的编码参数集合进行对比,若两者不一致,确定在所述所需的编码参数集合中新增的视频编码参数和/或音频编码参数,并将所述新增的视频编码参数和/或音频编码参数添加至所述当前的编码参数集合中;
参数删减模块,用于确定包含于所述当前的编码参数集合中,但不包含于所述所需的编码参数集合中的目标视频编码参数和/或目标音频编码参数,并将所述目标视频编码参数和/或目标音频编码参数从所述当前的编码参数集合中去除;
编码模块,用于按照调整之后的当前的编码参数集合中的视频编码参数和音频编码参数,分别对所述第一视频流、所述第二视频流、所述第一音频流以及所述第二音频流进行编码。
18.根据权利要求12所述的系统,其特征在于,所述系统还包括:
输出流新增模块,用于对比所需的输出流集合和当前的输出流集合,若两者不一致,确定在所述所需的输出流集合中新增的输出流,并与所述新增的输出流的推流地址相应的用户客户端和/或导播客户端建立对应关系,以向所述用户客户端和/或导播客户端提供所述新增的输出流;
输出流删减模块,用于确定包含于所述当前的输出流集合中,但不包含于所述所需的输出流集合中的目标输出流,并停止提供所述目标输出流。
CN201810179713.7A 2018-03-05 2018-03-05 一种音视频的合成方法及系统 Active CN108495141B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201810179713.7A CN108495141B (zh) 2018-03-05 2018-03-05 一种音视频的合成方法及系统
US16/316,137 US20210337248A1 (en) 2018-03-05 2018-04-02 Method and system for synthesizing audio/video
EP18877316.2A EP3562163B1 (en) 2018-03-05 2018-04-02 Audio-video synthesis method and system
PCT/CN2018/081554 WO2019169682A1 (zh) 2018-03-05 2018-04-02 一种音视频的合成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810179713.7A CN108495141B (zh) 2018-03-05 2018-03-05 一种音视频的合成方法及系统

Publications (2)

Publication Number Publication Date
CN108495141A true CN108495141A (zh) 2018-09-04
CN108495141B CN108495141B (zh) 2021-03-19

Family

ID=63341547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810179713.7A Active CN108495141B (zh) 2018-03-05 2018-03-05 一种音视频的合成方法及系统

Country Status (4)

Country Link
US (1) US20210337248A1 (zh)
EP (1) EP3562163B1 (zh)
CN (1) CN108495141B (zh)
WO (1) WO2019169682A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108965904A (zh) * 2018-09-05 2018-12-07 北京优酷科技有限公司 一种直播间的音量调节方法及客户端
CN109862019A (zh) * 2019-02-20 2019-06-07 联想(北京)有限公司 数据处理方法、装置以及系统
CN111031274A (zh) * 2019-11-14 2020-04-17 杭州当虹科技股份有限公司 一种在不加入视频会话的前提下观看视频会议的方法
CN111083396A (zh) * 2019-12-26 2020-04-28 北京奇艺世纪科技有限公司 视频合成方法、装置、电子设备及计算机可读存储介质
CN111669538A (zh) * 2020-06-17 2020-09-15 上海维牛科技有限公司 一种实时音视频动态合流技术
EP3748978A4 (en) * 2019-04-24 2020-12-09 Wangsu Science & Technology Co., Ltd. METHOD, CLIENT AND TERMINAL DEVICE FOR SCREEN RECORDING
CN112135155A (zh) * 2020-09-11 2020-12-25 上海七牛信息技术有限公司 音视频的连麦合流方法、装置、电子设备及存储介质
WO2021083175A1 (zh) * 2019-10-28 2021-05-06 阿里巴巴集团控股有限公司 数据处理方法、设备、系统、可读存储介质及服务器
CN112788350A (zh) * 2019-11-01 2021-05-11 上海哔哩哔哩科技有限公司 直播控制方法、装置及系统
CN113077534A (zh) * 2021-03-22 2021-07-06 上海哔哩哔哩科技有限公司 图片合成云平台及图片合成方法
CN115243063A (zh) * 2022-07-13 2022-10-25 广州博冠信息科技有限公司 视频流的处理方法、处理装置以及处理系统

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6590388B1 (ja) * 2018-12-17 2019-10-16 株式会社Medi Plus 医療映像配信システム及び医療映像配信方法
CN112004030A (zh) * 2020-07-08 2020-11-27 北京兰亭数字科技有限公司 一种用于会场控制的可视化vr导播系统
CN114125480A (zh) * 2021-11-17 2022-03-01 广州方硅信息技术有限公司 直播合唱互动方法、系统、装置及计算机设备
US20240107128A1 (en) * 2022-09-22 2024-03-28 InEvent, Inc. Live studio
CN116668763B (zh) * 2022-11-10 2024-04-19 荣耀终端有限公司 录屏方法及装置

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101370140A (zh) * 2008-09-25 2009-02-18 浙江大华技术股份有限公司 一种多码流生成的方法
CN101702777A (zh) * 2009-10-30 2010-05-05 深圳创维数字技术股份有限公司 Iptv系统、音视频编码切换处理方法及设备
US20120163447A1 (en) * 2010-12-22 2012-06-28 Mudit Mehrotra 3:2 Pull Down Detection in Video
CN102724551A (zh) * 2012-06-13 2012-10-10 天脉聚源(北京)传媒科技有限公司 一种视频编码系统和方法
CN104754366A (zh) * 2015-03-03 2015-07-01 腾讯科技(深圳)有限公司 音视频文件直播方法、装置和系统
CN105430424A (zh) * 2015-11-26 2016-03-23 广州华多网络科技有限公司 一种视频直播的方法、装置和系统
CN105847709A (zh) * 2016-03-30 2016-08-10 乐视控股(北京)有限公司 云导播台以及多路视频拼接方法
CN106254913A (zh) * 2016-08-22 2016-12-21 北京小米移动软件有限公司 多媒体数据的处理方法及装置
CN106303663A (zh) * 2016-09-27 2017-01-04 北京小米移动软件有限公司 直播处理方法和装置、直播服务器
CN106791919A (zh) * 2016-12-05 2017-05-31 乐视控股(北京)有限公司 多媒体信息处理方法、装置和电子设备
CN107018448A (zh) * 2017-03-23 2017-08-04 广州华多网络科技有限公司 数据处理方法及装置
CN107197172A (zh) * 2017-06-21 2017-09-22 北京小米移动软件有限公司 视频直播方法、装置和系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8818175B2 (en) * 2010-03-08 2014-08-26 Vumanity Media, Inc. Generation of composited video programming
CN102014262A (zh) * 2010-10-27 2011-04-13 杭州海康威视软件有限公司 一种硬盘录像机、多媒体格式转换的系统及方法
CN103458271A (zh) * 2012-05-29 2013-12-18 北京数码视讯科技股份有限公司 音视频文件拼接方法和装置
JP6135958B2 (ja) * 2013-01-16 2017-05-31 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ダウンロード及びストリーミングのためのコンテンツの記憶及び送信
US20140267395A1 (en) * 2013-03-13 2014-09-18 Ross Video Limited Low-latency interactive multiviewer interfaces and methods for video broadcast equipment
CN103686210B (zh) * 2013-12-17 2017-01-25 广东威创视讯科技股份有限公司 实时音视频转码方法和系统
US9491495B2 (en) * 2015-01-16 2016-11-08 Analog Devices Global Method and apparatus for providing input to a camera serial interface transmitter

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101370140A (zh) * 2008-09-25 2009-02-18 浙江大华技术股份有限公司 一种多码流生成的方法
CN101702777A (zh) * 2009-10-30 2010-05-05 深圳创维数字技术股份有限公司 Iptv系统、音视频编码切换处理方法及设备
US20120163447A1 (en) * 2010-12-22 2012-06-28 Mudit Mehrotra 3:2 Pull Down Detection in Video
CN102724551A (zh) * 2012-06-13 2012-10-10 天脉聚源(北京)传媒科技有限公司 一种视频编码系统和方法
CN104754366A (zh) * 2015-03-03 2015-07-01 腾讯科技(深圳)有限公司 音视频文件直播方法、装置和系统
CN105430424A (zh) * 2015-11-26 2016-03-23 广州华多网络科技有限公司 一种视频直播的方法、装置和系统
CN105847709A (zh) * 2016-03-30 2016-08-10 乐视控股(北京)有限公司 云导播台以及多路视频拼接方法
CN106254913A (zh) * 2016-08-22 2016-12-21 北京小米移动软件有限公司 多媒体数据的处理方法及装置
CN106303663A (zh) * 2016-09-27 2017-01-04 北京小米移动软件有限公司 直播处理方法和装置、直播服务器
CN106791919A (zh) * 2016-12-05 2017-05-31 乐视控股(北京)有限公司 多媒体信息处理方法、装置和电子设备
CN107018448A (zh) * 2017-03-23 2017-08-04 广州华多网络科技有限公司 数据处理方法及装置
CN107197172A (zh) * 2017-06-21 2017-09-22 北京小米移动软件有限公司 视频直播方法、装置和系统

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108965904A (zh) * 2018-09-05 2018-12-07 北京优酷科技有限公司 一种直播间的音量调节方法及客户端
CN109862019A (zh) * 2019-02-20 2019-06-07 联想(北京)有限公司 数据处理方法、装置以及系统
CN109862019B (zh) * 2019-02-20 2021-10-22 联想(北京)有限公司 数据处理方法、装置以及系统
US11115706B2 (en) 2019-04-24 2021-09-07 Wangsu Science & Technology Co., Ltd. Method, client, and terminal device for screen recording
EP3748978A4 (en) * 2019-04-24 2020-12-09 Wangsu Science & Technology Co., Ltd. METHOD, CLIENT AND TERMINAL DEVICE FOR SCREEN RECORDING
WO2021083175A1 (zh) * 2019-10-28 2021-05-06 阿里巴巴集团控股有限公司 数据处理方法、设备、系统、可读存储介质及服务器
CN112788350B (zh) * 2019-11-01 2023-01-20 上海哔哩哔哩科技有限公司 直播控制方法、装置及系统
CN112788350A (zh) * 2019-11-01 2021-05-11 上海哔哩哔哩科技有限公司 直播控制方法、装置及系统
CN111031274A (zh) * 2019-11-14 2020-04-17 杭州当虹科技股份有限公司 一种在不加入视频会话的前提下观看视频会议的方法
CN111083396A (zh) * 2019-12-26 2020-04-28 北京奇艺世纪科技有限公司 视频合成方法、装置、电子设备及计算机可读存储介质
CN111669538A (zh) * 2020-06-17 2020-09-15 上海维牛科技有限公司 一种实时音视频动态合流技术
CN112135155A (zh) * 2020-09-11 2020-12-25 上海七牛信息技术有限公司 音视频的连麦合流方法、装置、电子设备及存储介质
CN113077534A (zh) * 2021-03-22 2021-07-06 上海哔哩哔哩科技有限公司 图片合成云平台及图片合成方法
CN113077534B (zh) * 2021-03-22 2023-11-28 上海哔哩哔哩科技有限公司 图片合成云平台及图片合成方法
CN115243063A (zh) * 2022-07-13 2022-10-25 广州博冠信息科技有限公司 视频流的处理方法、处理装置以及处理系统
CN115243063B (zh) * 2022-07-13 2024-04-19 广州博冠信息科技有限公司 视频流的处理方法、处理装置以及处理系统

Also Published As

Publication number Publication date
EP3562163B1 (en) 2022-01-19
WO2019169682A1 (zh) 2019-09-12
US20210337248A1 (en) 2021-10-28
EP3562163A1 (en) 2019-10-30
EP3562163A4 (en) 2019-10-30
CN108495141B (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
CN108495141A (zh) 一种音视频的合成方法及系统
US8791978B2 (en) Scalable video encoding in a multi-view camera system
JP6371416B2 (ja) オーディオ・デコーダ及びレンダラーのためのユーザー制御データのデータ処理装置及びトランスポート
CN103843301B (zh) 经译码多媒体数据的网络串流期间的表示之间的切换
EP3697083B1 (en) System for adaptively streaming audio objects
TWI530941B (zh) 用於基於物件音頻之互動成像的方法與系統
JP2013516847A (ja) クライアントデバイスへのマネージドネットワーク上でのテレビ放送およびアンマネージドネットワーク上での双方向コンテンツの提供
CN106303663B (zh) 直播处理方法和装置、直播服务器
JP2015513717A (ja) データ、マルチメディアおよびビデオの送信の更新システム
KR20120133006A (ko) Iptv 파노라마 영상의 스트리밍 서비스 제공 방법 및 그 서비스 제공 시스템
KR101861929B1 (ko) 관심 영역을 고려한 가상 현실 서비스 제공
CN109688365A (zh) 视频会议的处理方法和计算机可读存储介质
CN113507574A (zh) 一种超高清视频的制播处理系统
CN105898370A (zh) 用于多机位的视频播放器、播放系统及播放方法
US20210132898A1 (en) Method for transmitting and receiving audio data related to transition effect and device therefor
CN111083427B (zh) 嵌入式终端、4k视频会议系统的数据处理方法
CN112272281A (zh) 一种区域分布式视频会议系统
CN108200358A (zh) 一种音视频导播方法、系统及控制服务器
Dong et al. Ultra-low latency, stable, and scalable video transmission for free-viewpoint video services
JP2001145103A (ja) 送信装置及び通信システム
KR102184131B1 (ko) 입체 오디오를 제공하는 다채널 전송 시스템 및 이의 제어 방법
KR100317299B1 (ko) Mpeg-4 화상회의를 위한 멀티미디어 정보구조와mpeg-4 화상회의 시스템
CN209402583U (zh) 一种数据收发设备和录播系统
WO2023195426A1 (ja) 復号装置、符号化装置、復号方法及び符号化方法
CN117336279A (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
GR01 Patent grant
GR01 Patent grant