CN104301744B - 用于直播的流压缩方法和装置 - Google Patents

用于直播的流压缩方法和装置 Download PDF

Info

Publication number
CN104301744B
CN104301744B CN201310298969.7A CN201310298969A CN104301744B CN 104301744 B CN104301744 B CN 104301744B CN 201310298969 A CN201310298969 A CN 201310298969A CN 104301744 B CN104301744 B CN 104301744B
Authority
CN
China
Prior art keywords
compression
stream
live
key frame
frame interval
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.)
Active
Application number
CN201310298969.7A
Other languages
English (en)
Other versions
CN104301744A (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.)
GUANGZHOU QIANJUN NETWORK TECHNOLOGY DEVELOPMENT Co Ltd
Original Assignee
GUANGZHOU QIANJUN NETWORK TECHNOLOGY DEVELOPMENT 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 GUANGZHOU QIANJUN NETWORK TECHNOLOGY DEVELOPMENT Co Ltd filed Critical GUANGZHOU QIANJUN NETWORK TECHNOLOGY DEVELOPMENT Co Ltd
Priority to CN201310298969.7A priority Critical patent/CN104301744B/zh
Publication of CN104301744A publication Critical patent/CN104301744A/zh
Application granted granted Critical
Publication of CN104301744B publication Critical patent/CN104301744B/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/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/234363Processing 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 altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP

Abstract

本发明涉及一种用于直播的流压缩方法和装置。该方法包括:对待直播的流进行第一压缩,以获得第一压缩流;上传所述第一压缩流;对所述第一压缩流进行第二压缩,以获得第二压缩流。根据本发明的实施方式,可以在相对较少的上行带宽下直播较为清晰流畅的视频。

Description

用于直播的流压缩方法和装置
技术领域
本发明的实施方式总体上涉及直播领域,更具体地,涉及用于直播的流压缩方法和装置。
背景技术
随着网络和计算机技术的不断发展,直播应用变得越来越流行。一个直播过程往往包括采集流信号,对其进行压缩,然后上传到服务器等一系列流程。在对流进行压缩的过程中,如果采用较大的关键帧间隔,则可以获得较小大小的流文件,这样利于流文件的上传,然而,由于关键帧间隔较大,不利于文件的拖动,也会造成加载时间较长等问题。反之,如果采用较小的关键帧间隔进行压缩,虽然利于文件的拖动和加载,但由于流文件的大小较大,不利于流文件的上传。
在现有技术中缺乏对这种情形的有效解决方案,从而不能同时达到上传方便并且直播顺畅的效果。
发明内容
为了解决现有技术中存在的上述问题,本发明颠覆了传统意义上的对流文件仅进行一次压缩的构思,而是提出对流文件进行两次压缩的方案,从而既利于上传,也可以获得直播顺畅的流。
根据本发明的第一方面,提供一种用于直播的流压缩方法,包括:对待直播的流进行第一压缩,以获得第一压缩流;上传所述第一压缩流;以及对所述第一压缩流进行第二压缩,以获得第二压缩流。
在本发明的可选实施方式中,所述方法还包括:直播所述第二压缩流。
在本发明的可选实施方式中,所述第一压缩流的关键帧间隔大于所述第二压缩流的关键帧间隔。
在本发明的可选实施方式中,所述第一压缩在直播端进行,并且所述第二压缩在服务器端进行。
在本发明的可选实施方式中,所述流包括视频流。
根据本发明的第二方面,提供一种用于直播的流压缩装置,包括:第一压缩装置,被配置为对待直播的流进行第一压缩,以获得第一压缩流;上传装置,被配置为上传所述第一压缩流;以及第二压缩装置,被配置为对所述第一压缩流进行第二压缩,以获得第二压缩流。
在本发明的可选实施方式中,所述装置进一步包括:直播装置,被配置为直播所述第二压缩流。
在本发明的可选实施方式中,所述第一压缩流的关键帧间隔大于所述第二压缩流的关键帧间隔。
在本发明的可选实施方式中,所述第一压缩在直播端进行,并且所述第二压缩在服务器端进行。
在本发明的可选实施方式中,所述流包括视频流。
附图说明
通过结合附图对所示出的实施方式进行详细说明,本发明的上述以及其他特征将变得明显。在附图中,相同的参考标号表示相同或相似的元素。
图1是示出了根据本发明第一实施方式的用于直播的流压缩方法100的流程图。
图2是示出了根据本发明第二实施方式的用于直播的流压缩装置200的框图。
图3示出了适于用来实践本发明实施方式的计算机系统的示意性框图。
应当注意,附图中的流程图和框图,图示了按照本发明各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
图1是示出了根据本发明第一实施方式的用于直播的流压缩方法100的流程图。应当理解,方法100中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。方法100还可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
方法100开始之后,在步骤S102处,首先对待直播的流进行第一压缩,以获得第一压缩流。这里所称的“待直播的流”优选地可以是视频流,但本发明并不局限于此,其完全可以是例如音频流之类的其它类型的流。此外,步骤S102优选地可以在直播端(或者流采集端)进行,直播端既可以是计算机,也可以是手机,或者其它具有视频采集和直播功能的设备,本发明在此方案不受限制。本领域技术人员可以理解,在对流进行压缩的过程中,采用越大的关键帧间隔(也即越大的压缩比)进行压缩可以获得大小越小的流文件,因此在步骤S102处所采用的关键帧间隔优选地较大,从而可以在上行带宽相对较少时也利于流文件的上传。
接下来,方法100进到步骤S104,上传第一压缩流。这一步骤将经过第一次压缩的流上传到例如服务器端,以便于后续的直播。
接着,方法100进到步骤S106,对第一压缩流进行第二压缩,以获得第二压缩流。步骤S106优选地在服务器端进行。优选地,用于第二压缩的关键帧间隔可以较小,例如小于用于第一压缩的关键帧间隔,从而获得关键帧间隔比较小的流。这样,在将流用于直播时,便于流文件的拖动等操作。
此外,方法100还可选地包括将第二压缩流进行直播的步骤(图1中未示出)。
至此,方法100结束。
图2是示出了根据本发明第二实施方式的用于直播的流压缩装置200的框图。
如图所示,装置200包括第一压缩装置201,被配置为对待直播的流进行第一压缩,以获得第一压缩流;上传装置202,被配置为上传所述第一压缩流;以及第二压缩装置203,被配置为对所述第一压缩流进行第二压缩,以获得第二压缩流。在优选情况下,装置200还可以包括直播装置204,被配置为直播所述第二压缩流。
在本发明的可选实施方式中,所述第一压缩流的关键帧间隔大于所述第二压缩流的关键帧间隔。
在本发明的另一可选实施方式中,所述第一压缩在直播端进行,并且所述第二压缩在服务器端进行。
在本发明的另一可选实施方式中,所述流包括视频流。
图3示出了适于用来实践本发明实施方式的计算机系统的示意性框图。如图3所示,计算机系统可以包括:CPU(中央处理单元)301、RAM(随机存取存储器)302、ROM(只读存储器)303、系统总线304、硬盘控制器305、键盘控制器306、串行接口控制器307、并行接口控制器308、显示控制器309、硬盘310、键盘311、串行外部设备312、并行外部设备313和显示器314。在这些设备中,与系统总线303耦合的有CPU301、RAM302、ROM303、硬盘控制器305、键盘控制器306、串行控制器307、并行控制器308和显示控制器309。硬盘310与硬盘控制器305耦合,键盘311与键盘控制器306耦合,串行外部设备312与串行接口控制器307耦合,并行外部设备313与并行接口控制器308耦合,以及显示器314与显示控制器309耦合。
应当理解,图3所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
特别地,除硬件实施方式之外,本发明的实施方式可以通过计算机程序产品的形式实现。例如,参考图1描述的方法100可以通过计算机程序产品来实现。该计算机程序产品可以存储在例如图3所示的RAM302、ROM303、硬盘310和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机系统300上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备(例如,图3中示出的CPU301)执行的程序指令。所述程序指令至少可以包括:用于对待直播的流进行第一压缩,以获得第一压缩流的指令;用于上传所述第一压缩流的指令;以及用于对所述第一压缩流进行第二压缩,以获得第二压缩流的指令。
上文已经结合若干具体实施方式阐释了本发明的精神和原理。根据本发明的实施方式,在直播端用间隔较大的关键帧对流进行压缩,从而获得大小较小的流以便于上传,而在服务器端再压缩出关键帧间隔较小的视频流,从而可以在相对较少的上行带宽下直播较为清晰流畅的视频。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
说明书中提及的网络可以包括各类网络,包括但不限于局域网(“LAN”),广域网(“WAN”),根据IP协议的网络(例如,因特网)以及端对端网络(例如,ad hoc对等网络)。
应当注意,尽管在上文详细描述中提及了设备的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤规约为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明,但是应该理解,本发明并不限于所公开的具体实施方式。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。

Claims (8)

1.一种用于直播的流压缩方法,包括:
对待直播的流进行第一压缩,以获得第一压缩流;
上传所述第一压缩流;以及
对所述第一压缩流进行第二压缩,以获得第二压缩流;
其中,所述第一压缩流的关键帧间隔大于所述第二压缩流的关键帧间隔;
其中,所述第一压缩流的关键帧间隔较大以利于流文件的上传,所述第二压缩流的关键帧间隔较小以利于流文件的拖动和/或加载。
2.根据权利要求1所述的方法,还包括:直播所述第二压缩流。
3.根据权利要求1或2所述的方法,其中,所述第一压缩在直播端进行,并且所述第二压缩在服务器端进行。
4.根据权利要求1或2所述的方法,其中,所述流包括视频流。
5.一种用于直播的流压缩装置,包括:
第一压缩装置,被配置为对待直播的流进行第一压缩,以获得第一压缩流;
上传装置,被配置为上传所述第一压缩流;以及
第二压缩装置,被配置为对所述第一压缩流进行第二压缩,以获得第二压缩流;
其中,所述第一压缩流的关键帧间隔大于所述第二压缩流的关键帧间隔;
其中,所述第一压缩流的关键帧间隔较大以利于流文件的上传,所述第二压缩流的关键帧间隔较小以利于流文件的拖动和/或加载。
6.根据权利要求5所述的装置,进一步包括:直播装置,被配置为直播所述第二压缩流。
7.根据权利要求5或6所述的装置,其中,所述第一压缩在直播端进行,并且所述第二压缩在服务器端进行。
8.根据权利要求5或6所述的装置,其中,所述流包括视频流。
CN201310298969.7A 2013-07-15 2013-07-15 用于直播的流压缩方法和装置 Active CN104301744B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310298969.7A CN104301744B (zh) 2013-07-15 2013-07-15 用于直播的流压缩方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310298969.7A CN104301744B (zh) 2013-07-15 2013-07-15 用于直播的流压缩方法和装置

Publications (2)

Publication Number Publication Date
CN104301744A CN104301744A (zh) 2015-01-21
CN104301744B true CN104301744B (zh) 2018-05-11

Family

ID=52321277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310298969.7A Active CN104301744B (zh) 2013-07-15 2013-07-15 用于直播的流压缩方法和装置

Country Status (1)

Country Link
CN (1) CN104301744B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008027850A3 (en) * 2006-09-01 2008-05-22 Freedom Broadcast Network Llc Dynamically configurable processing system
CN101242513A (zh) * 2008-03-10 2008-08-13 杭州华三通信技术有限公司 一种视频会议中的双流传送方法和一种视频会议系统
CN101296184A (zh) * 2008-05-30 2008-10-29 华为技术有限公司 一种数据传输的方法、系统及装置
CN101931783A (zh) * 2010-09-21 2010-12-29 天地阳光通信科技(北京)有限公司 一种视频会议双流发送系统及方法
CN102333243A (zh) * 2010-07-14 2012-01-25 北京泓润光谷数字媒体技术有限责任公司 一种流媒体直播时移点播装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008027850A3 (en) * 2006-09-01 2008-05-22 Freedom Broadcast Network Llc Dynamically configurable processing system
CN101242513A (zh) * 2008-03-10 2008-08-13 杭州华三通信技术有限公司 一种视频会议中的双流传送方法和一种视频会议系统
CN101296184A (zh) * 2008-05-30 2008-10-29 华为技术有限公司 一种数据传输的方法、系统及装置
CN102333243A (zh) * 2010-07-14 2012-01-25 北京泓润光谷数字媒体技术有限责任公司 一种流媒体直播时移点播装置
CN101931783A (zh) * 2010-09-21 2010-12-29 天地阳光通信科技(北京)有限公司 一种视频会议双流发送系统及方法

Also Published As

Publication number Publication date
CN104301744A (zh) 2015-01-21

Similar Documents

Publication Publication Date Title
CN102473115B (zh) 用于高效数据处理的装置和方法
CN102473117B (zh) 用于存储器管理和高效数据处理的装置和方法
CN106162229A (zh) 改善公平性的平滑码率自适应方法及装置
AU2015101604B4 (en) Remote configuration and operation of fitness studios from a central server
CN104796155A (zh) 数据压缩方法及装置
CN107424184B (zh) 一种基于卷积神经网络的图像处理方法、装置及移动终端
CN1801124A (zh) 采用照相手机作为计算机摄像头获取视频数据的方法
CN104461300B (zh) 图片预览方法及系统
Bhandari et al. High speed dynamic partial reconfiguration for real time multimedia signal processing
CN104301744B (zh) 用于直播的流压缩方法和装置
CN115034358A (zh) 神经网络计算图的处理方法及处理装置
CN110445977A (zh) 图像信号处理器的参数设置方法及终端设备
CN104202656A (zh) 网络音频mp3流乱序分段解码方法
CN103685765A (zh) 提高移动终端续航能力的方法及其系统
CN103729865A (zh) 拉伸图片的方法和设备
Voss et al. Convolutional neural networks on dataflow engines
CN104301291A (zh) 用于直播的流压缩方法和装置
CN107172504B (zh) 一种面向流式音视频数据的分布式处理方法及其装置
JP2010011228A5 (zh)
CN105847943A (zh) 一种播放设备播放音视频的方法、装置及播放设备
US20170301070A1 (en) Automated tonal balancing
CN105323652B (zh) 播放多媒体文件的方法和装置
TWI286693B (en) Method for dynamically adjusting the data transfer order of PCI Express root ports
CN103826067B (zh) 用于流帧的时间稳定的方法和设备
CN104333765A (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
GR01 Patent grant
GR01 Patent grant