CN106375789B - 媒体直播方法和装置 - Google Patents

媒体直播方法和装置 Download PDF

Info

Publication number
CN106375789B
CN106375789B CN201610803009.5A CN201610803009A CN106375789B CN 106375789 B CN106375789 B CN 106375789B CN 201610803009 A CN201610803009 A CN 201610803009A CN 106375789 B CN106375789 B CN 106375789B
Authority
CN
China
Prior art keywords
live streaming
subparameter
parameter
strategy
target
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
CN201610803009.5A
Other languages
English (en)
Other versions
CN106375789A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201610803009.5A priority Critical patent/CN106375789B/zh
Publication of CN106375789A publication Critical patent/CN106375789A/zh
Application granted granted Critical
Publication of CN106375789B publication Critical patent/CN106375789B/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种媒体直播方法和装置。其中,该方法包括:获取目标设备中硬件的性能参数,其中,目标设备用于进行媒体直播;查找与性能参数相关联的目标直播策略,其中,目标直播策略用于表示目标设备在进行媒体直播时所采用的直播参数;按照目标直播策略对目标设备进行设置,其中,被设置后的目标设备按照直播参数进行媒体直播。本发明解决了现有技术中无法根据发起直播的设备采用个性化直播策略的技术问题。

Description

媒体直播方法和装置
技术领域
本发明涉及直播领域,具体而言,涉及一种媒体直播方法和装置。
背景技术
目前安卓端的(印客直播,Now直播等)直播策略对所有用户都是相同的,为了兼容所有机型和配置,使用相同的设置进行直播。这种方式会导致所有手机的直播分辨率被低端手机分辨率所限制,因为为了保证低配置手机直播,都统一使用了较低分辨率。高配手机也不能进行高清直播,严重影响用户体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种媒体直播方法和装置,以至少解决现有技术中无法根据发起直播的设备采用个性化直播策略的技术问题。
根据本发明实施例的一个方面,提供了一种媒体直播方法,包括:获取目标设备中硬件的性能参数,其中,目标设备用于进行媒体直播;查找与性能参数相关联的目标直播策略,其中,目标直播策略用于表示目标设备在进行媒体直播时所采用的直播参数;按照目标直播策略对目标设备进行设置,其中,被设置后的目标设备按照直播参数进行媒体直播。
根据本发明实施例的另一个方面,提供了一种媒体直播装置,包括:获取单元,用于获取目标设备中硬件的性能参数,其中,所述目标设备用于进行媒体直播;查找单元,用于查找与所述性能参数相关联的目标直播策略,其中,所述目标直播策略用于表示所述目标设备在进行媒体直播时所采用的直播参数;设置单元,用于按照所述目标直播策略对所述目标设备进行设置,其中,被设置后的所述目标设备按照所述直播参数进行媒体直播。
在本发明实施例中,根据目标设备的性能参数确定出直播策略,按照目标直播策略对目标设备进行设置,被设置后的目标设备按照目标直播策略进行媒体直播,达到了根据发起直播的设备采用个性化直播策略的技术效果,进而解决了现有技术中无法根据发起直播的设备采用个性化直播策略的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的硬件环境的示意图;
图2是根据本发明实施例的媒体直播方法的流程图;
图3是根据本发明实施例的引导用户检测设备性能的流程图;
图4是根据本发明实施例的用户主动检测设备性能的流程图;
图5是根据本发明实施例的一种检测界面的示意图;
图6是根据本发明实施例的另一种检测界面的示意图;
图7是根据本发明实施例的安卓端设备性能检测的流程图;
图8是根据本发明实施例的媒体直播装置的示意图;
图9是根据本发明实施例的服务器的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
技术术语解释:
安卓:即Android,是目前流行的开源移动操作系统,主要用于智能手机、平板等设备。
安卓设备:包括但不限于安卓手机、安卓平板等运行有安卓智能操作系统(或者根据厂商需求进行定制过的安卓操作系统)的硬件设备。
编码:即将视频数据进行压缩编码后可以以固定的格式和较小的数据内容进行传输,通过编码可节省存储资源和网络资源。
编码器(硬件编码器):本方法中提及的编码器若无特殊说明,均为硬件编码器。硬件编码器为设备硬件实现的逻辑处理单元,可以完成视频数据压缩编码,实时性非常强,速度比软件编码快。编码器包括视频编码器(编码视频信息)和音频编码器(编码音频信息)。
推流:即将压缩后的视频和音频数据传送给服务器。
通常在网络直播过程中,录制端因为需要音视频录制、音频编码、数据传输、显示绘制等大量CPU/GPU/VPU/IO密集型工作,所以对设备的处理能力要求非常苛刻。同时,因为安卓设备版本众多,型号配置各异,所以在实现支持大规模安卓设备直播时,无法实现用一种通用的策略能完成所有设备的高质量直播需求。
因为现有技术不支持直播策略的预估,均没有差异化处理。为了兼容所有机型和配置,使用相同的设置进行直播,比如都使用软件编码(以便兼容低端手机不支持硬件编码),都使用低分辨率(低端手机处理能力较弱)。所以会导致以下问题。
1.软件编码消耗CPU,会导致丢帧。视频编码是一项非常消耗CPU运算资源的工作,在使用CPU进行软件编码时,如果手机自身CPU运算能力较弱,会导致编码速率低下、丢帧严重。
2.软件编码导致CPU发热严重。长时间高密集的CPU运算会导致CPU严重发热,严重影响用户体验,同时移动手机端受限于电池电量,会极大降低直播可持续时间。
3.软件编码导致视频分辨率较低。分辨率的增加对编码来说工作量是平方级或者指数级的增加,所以软件编码导致视频分辨率被限制的非常低,现有方案一般都是360P。同时,对于各种机型和处理器,现有软件没有针对不同机型做个性化配置,所有机型都使用相同的分辨率,无法进行高清直播。
4.无法进行本地编码。现有软件受限于对全平台的兼容,同时CPU资源的紧张,所有的直播软件统一不支持本地高清备份。这样导致高配手机也不能进行本地高清备份,严重影响用户体验。
发明人发现,总体来说,现有技术因为使用软件编码导致对CPU资源非常依赖,大量消耗CPU资源,同时没有针对不同机型做个性化策略,会导致分辨率、帧率、网络传输丢帧、本地备份等方面表现不佳,影响用户体验。
根据本发明实施例,提供了一种媒体直播方法的实施例。
可选地,在本实施例中,上述媒体直播方法可以应用于如图1所示的由服务器102和终端104所构成的硬件环境中。如图1所示,服务器102通过网络与终端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的媒体直播方法可以由终端104来执行。终端104执行本发明实施例的媒体直播方法可以是由安装在其上的客户端来执行。安装在终端104上的直播客户端在用户发起直播时对终端104的摄像头、终端104的硬件配置、硬件编码器的支持、IO性能、GPU支持、内存大小等进行检测,直播客户端根据检测结果决定直播策略,直播策略包括直播的分辨率是高还是低、直播过程中是否开启本地备份、是否使用美颜功能等。终端104根据直播策略开启直播功能,录制视频、音频,并将视频数据和音频数据进行压缩,传送给服务器102。服务器102将视频数据和音频数据传送给其他终端104,这样观众即可看到直播。
本发明实施例提供了一种媒体直播方法。图2是根据本发明实施例的媒体直播方法的流程图。如图2所示,该方法包括:
步骤S202,获取目标设备中硬件的性能参数,其中,目标设备用于进行媒体直播。
步骤S204,查找与性能参数相关联的目标直播策略,其中,目标直播策略用于表示目标设备在进行媒体直播时所采用的直播参数。
步骤S206,按照目标直播策略对目标设备进行设置,其中,被设置后的目标设备按照直播参数进行媒体直播。
性能参数可以是CPU运算速度参数、GPU渲染效率参数、内存性能的参数等。直播参数可以是分辨率等参数。当CPU运算速度较快、GPU渲染效率较高、内存性能较好时,可以采用高分辨率进行直播。当CPU运算速度较慢、GPU渲染效率较低、内存性能较差时,可以采用低分辨率进行直播。
在本发明实施例中,根据目标设备的性能参数确定出直播策略,按照目标直播策略对目标设备进行设置,被设置后的目标设备按照目标直播策略进行媒体直播,解决了现有技术中无法根据发起直播的设备采用个性化直播策略的技术问题,达到了根据发起直播的设备采用个性化直播策略的技术效果。
可选地,在查找与性能参数相关联的目标直播策略之前,根据性能参数判断目标设备的摄像头能否正常打开;如果判断出摄像头无法正常打开,确定目标设备无法进行直播。
需要注意的是,一个直播策略能够指示直播过程的多个方面,例如分辨率的值、是否允许使用美颜功能、是否支持本地备份等。
例如,表1示出了5种直播策略,分别为直播策略A、直播策略B、直播策略C、直播策略D、直播策略E。其中,分辨率R1>分辨率R2>分辨率R3。
假设经过对手机P1进行性能测试,测试结果表明手机P1的CPU运算性能很强、GPU渲染效率很高、编码器支持多路同时编码并且编码器性能很好、内存性能很好,那么使用手机P1进行直播时可以使用直播策略A,即,使用高分辨率、使用美颜功能、支持本地备份,直播画面清晰度高、画面漂亮。由于启动本地高清备份,这样如果直播过程中出现由于网络抖动导致的直播画面不流畅也可以在直播后上传本地备份,方便观众观看高质量回放,提升用户体验,能够很好地发挥高配置手机的优势。
假设经过对手机P2进行性能测试,测试结果表明手机P2的CPU运算性能很强、GPU渲染效率很高、编码器不支持多路同时编码、内存性能很好,那么使用手机P2进行直播时可以使用直播策略B。
假设经过对手机P3进行性能测试,测试结果表明手机P3的CPU运算性能很差、GPU不支持渲染、编码器不支持多路同时编码、内存性能很差,那么使用手机P3进行直播时可以使用直播策略E。这样即使是配置很低的手机也能够进行直播。
表1
在本发明实施例中,根据设备性能设置合理的直播分辨率,可以让低端机型使用较低分辨率进行直播,让高端机型以高分辨率、高清晰度直播。根据GPU渲染性能,高性能设备可以启动美颜功能,低性能设备可以禁用美颜功能。对于支持硬件编码器的设备可以启动硬件编码加快编码速度,减少CPU使用。对于不支持硬件编码器的设备使用软件编码,虽然效率较低,但是可以保证直播编码。通过个性化的设置使直播客户端更好地利用设备资源,更好地发挥安卓设备性能,优化视频直播体验,个性化直播策略,提升用户体验。
直播的分辨率可以根据以下参数中的一个或者多个来确定:用于指示目标设备的CPU运算能力的参数、用于指示目标设备的内存性能的参数、用于指示目标设备的GPU渲染能力的参数、用于指示目标设备的硬件编码器编码能力的参数。以下列出几种直播的分辨率的确定方法进行详细说明。
以下方法一至方法四的特点是:根据一个参数确定直播的分辨率。方法五至方法七的特点是:根据至少两个参数确定直播的分辨率。
直播的分辨率的确定方法一:根据目标设备的CPU运算能力值(第一子参数)确定直播的分辨率。具体过程如下:
判断CPU运算能力值是否大于等于第一预设值;在CPU运算能力值大于等于第一预设值的情况下,确定第一直播参数为第一分辨率;在CPU运算能力值小于第一预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
直播的分辨率的确定方法二:根据目标设备的内存性能值(第一子参数)确定直播的分辨率。具体过程如下:
判断内存性能值是否大于等于第二预设值;在内存性能值大于等于第二预设值的情况下,确定第一直播参数为第一分辨率;在内存性能值小于第二预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
直播的分辨率的确定方法三:根据目标设备的GPU渲染能力值(第一子参数)确定直播的分辨率。具体过程如下:
判断GPU渲染能力值是否大于等于第三预设值;在GPU渲染能力值大于等于第三预设值的情况下,确定第一直播参数为第一分辨率;在GPU渲染能力值小于第三预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
直播的分辨率的确定方法四:根据目标设备的硬件编码器编码能力值(第一子参数)确定直播的分辨率。具体过程如下:
判断编码能力值是否大于等于第四预设值;在编码能力值大于等于第四预设值的情况下,确定第一直播参数为第一分辨率;在编码能力值小于第四预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
直播的分辨率的确定方法五:根据目标设备的CPU运算能力值(第一子参数)和GPU渲染能力值(第二子参数)确定直播的分辨率。具体过程如下:
判断设备的CPU运算能力值是否大于等于预设的CPU运算能力值(判断第一子参数是否满足第一预设条件),并且判断设备的GPU渲染能力值是否大于等于预设的GPU渲染能力值(判断第二子参数是否满足第二预设条件)。如果设备的CPU运算能力值大于等于预设的CPU运算能力值,并且设备的GPU渲染能力值大于等于预设的GPU渲染能力值,则说明设备的硬件性能好,此时,可以采用高分辨率(第三直播参数)的直播。
如果设备的CPU运算能力值小于预设的CPU运算能力值,并且设备的GPU渲染能力值小于预设的GPU渲染能力值,则说明设备的硬件性能不好,此时,可以采用低分辨率的直播。
如果设备的CPU运算能力值大于等于预设的CPU运算能力值,并且设备的GPU渲染能力值小于预设的GPU渲染能力值,则可以根据CPU运算能力值和GPU渲染能力值共同确定直播的分辨率。
直播的分辨率的确定方法六:根据目标设备的CPU运算能力值(第一子参数)和内存性能值(第二子参数)确定直播的分辨率。具体过程如下:
判断设备的CPU运算能力值是否大于等于预设的CPU运算能力值(判断第一子参数是否满足第一预设条件),并且判断设备的内存性能值是否大于等于预设的内存性能值(判断第二子参数是否满足第二预设条件)。如果设备的CPU运算能力值大于等于预设的CPU运算能力值,并且设备的内存性能值大于等于预设的内存性能值,则说明设备的硬件性能好,此时,可以采用高分辨率(第三直播参数)的直播,例如,分辨率为R11(第三直播参数)。
如果设备的CPU运算能力值远远大于等于预设的CPU运算能力值,并且设备的内存性能值略小于预设的内存性能值,则可以根据CPU运算能力值确定直播的分辨率,例如,采用较高的分辨率R12(第四直播参数)。
如果设备的CPU运算能力值略小于预设的CPU运算能力值,并且设备的内存性能值远远大于预设的内存性能值,则可以根据内存性能值确定直播的分辨率,例如,采用较高的分辨率R13(第五直播参数)。
如果设备的CPU运算能力值小于预设的CPU运算能力值,并且设备的内存性能值小于预设的内存性能值,则说明设备的硬件性能不好,此时,可以采用低分辨率的直播,例如,分辨率为R14。
其中,分辨率R11>分辨率R12>分辨率R14,并且,分辨率R11>分辨率R13>分辨率R14。
直播的分辨率的确定方法七:根据目标设备的CPU运算能力值、硬件编码器编码能力值、内存性能值、GPU渲染能力值综合确定直播的分辨率。当设备的CPU运算能力值较大、硬件编码器编码能力值较大、内存性能值较大、和GPU渲染能力值较大时,说明设备的硬件配置很好,可以在直播时使用高分辨率,以获得优良的画质和高清晰度。
直播的分辨率的确定方法还有很多种,不限于以上方法一至方法七。
在本发明实施例中,可以根据性能参数确定直播过程中是否允许使用美颜功能。具体过程如下:根据性能参数判断目标设备的GPU是否支持渲染,在判断出目标设备的GPU支持渲染的情况下,确定目标直播策略为第一直播策略,其中,第一直播策略允许使用美颜功能,在判断出目标设备的GPU不支持渲染的情况下,确定目标直播策略为第二直播策略,其中,第二直播策略禁止使用美颜功能。
使用美颜功能能够有效美化画面,使得画面更加漂亮,更加具有美感。软件开启美颜功能后需要GPU的渲染才能将美颜后的数据绘制在用户界面上,因此,如果设备的GPU支持渲染,那么该设备在直播时允许使用美颜功能,如果设备的GPU不支持渲染,那么该设备在直播时禁止使用美颜功能。
在本发明实施例中,可以根据性能参数确定直播过程中是否支持本地备份。具体过程如下:根据性能参数判断目标设备的硬件编码器是否支持多路同时编码,在判断出硬件编码器支持多路同时编码的情况下,确定目标直播策略为第一直播策略,其中,第一直播策略支持本地备份,在判断出硬件编码器不支持多路同时编码的情况下,确定目标直播策略为第二直播策略,其中,第二直播策略不支持本地备份。
本地备份的好处是:如果直播过程中出现由于网络抖动导致的直播画面不流畅也可以在直播后上传本地备份,方便观众观看高质量回放,提升用户体验。然而本地备份对硬件要求较高,如果硬件编码器性能较差,则无法在流畅直播的同时进行本地备份。多路同时编码能够提升硬件编码器的编码速度。如果硬件编码器支持多路同时编码,则说明硬件编码器的编码速度较快,则可以在直播时支持本地备份,如果硬件编码器不支持多路同时编码,那么很有可能硬件编码器的编码速度较慢,则在直播时不支持本地备份,以达到流畅直播的目的。
根据发起直播的设备的硬件性能确定合适的直播策略,根据直播策略对设备进行设置。当发起直播的设备的硬件性能较好时,例如CPU运算速度快、GPU渲染效率高、内存性能好、硬件编码器性能好时,可以采用高分辨率的直播,并支持美颜功能,支持本地备份。当发起直播的设备的硬件性能较差时,例如CPU运算速度慢、GPU渲染效率低、内存性能差、硬件编码器性能差时,可以采用低分辨率的直播,并禁用美颜功能,不支持本地备份。
本发明实施例提供的媒体直播方法,通过测试安卓设备的性能,预估安卓设备的处理能力、硬件配置等资源,差异化预估直播策略,一方面可以满足所有的直播需求,同时可以根据硬件配置选择更加合理的直播策略,获得更好的直播效果和用户体验。采用本发明实施例提供的媒体直播方法能够达到的有益效果至少包括以下几点。
1.可以支持硬件编码,减少发热。目前主流机型大都支持硬件编码,只是因为平台差异,各家编码器差异较大,但是,通过本发明实施例提供的媒体直播方法检测设备后,如果发现设备有硬件编码能力,就会启动硬件编码,可以减少CPU使用,减少发热。
2.能够减少CPU使用,减少丢帧。如果设备支持硬件加速,可以减少CPU参与,让CPU资源更多的用于推流,可以减少视频直播的丢帧,同时,硬件编码速度快,也可以减少编码丢帧,提高直播流畅度,总体会提高设备的直播效果,对低端手机的直播性能提升也非常有帮助。
3.能够支持较高分辨率。对于能启动硬件加速的设备,通常,硬件编码器都可以支持较高(高于360P)的分辨率的硬件编码,这会直接提升直播分辨率。同时,音频硬件编码器可以快速实时编码出音频数据,改善用户体验。
4.对于支持硬件编码同时CPU处理资源充足的设备,可以启动本地高清备份,这样如果直播过程中出现由于网络抖动导致的直播画面不流畅也可以在直播后上传本地备份,方便观众观看高质量回放,提升用户体验。
本发明实施例提供的媒体直播方法能够用于安卓端的直播客户端产品中,主要用来进行直播策略的预估,通过对安卓客户端进行设备性能和硬件检测,同时根据设备的处理、IO等一系列性能参数,针对不同机型选择不同的直播策略。
设备性能和硬件检测主要发生在以下三种情况下:
情况一、用户刚安装直播软件到手机(或者卸载后重新安装),且安装后未发起过直播。当用户在一部安卓设备上安装直播客户端后,本地设备上并没有关于该设备进行直播功能时的设备性能评估结果和直播策略。当用户使用新安装的直播客户端第一次发起直播的时候,如果软件检测到本地没有直播策略信息,则会引导用户进行一次该设备的硬件性能和硬件设备测试,也就是本发明实施例中的预估方法,当检测程序运行完毕后,会保存本设备的设备性能评估结果以及直播策略到本地。随后根据直播策略,发起直播。
情况二、用户安装了直播应用,也发起过直播,但是通过软件设置已经清除了本地保存的设备性能评估结果和直播策略。当用户使发起直播的时候,如果软件检测到本地没有直播策略信息,则会引导用户进行一次该设备的硬件性能和硬件设备测试,当检测程序运行完毕后,会保存本设备的设备性能评估结果以及直播策略到本地。随后根据直播策略,发起直播。
情况一和情况二的过程都是一个引导用户检测设备性能的过程,图3示出了该过程,如图3所示,该过程包括以下步骤:
步骤S302,安装/启动安卓应用。
步骤S304,发起直播。
步骤S306,判断本地是否有直播策略信息。如果判断结果为是,执行步骤S310;如果判断结果为否,执行步骤S308。
步骤S308,启动检测,并保存检测结果到本地。
步骤S310,根据直播策略启动直播。
情况三、用户主动进行设备直播策略的预估。用户可以在直播客户端的使用过程中通过设置菜单进行主动进行安卓设备的检测和直播策略的预估。每次进行的设备检测和预估的结果都会保存到本地或者覆盖(如果存在之前的结果)之前的结果。
情况三的过程是一个用户主动检测设备性能的过程,图4示出了该过程,如图4所示,该过程包括以下步骤:
步骤S402,安装/启动安卓应用。
步骤S404,打开设置界面。
步骤S406,启动检测,保存(或更新)检测结果到本地。
在上述情况一、情况二、情况三中任意一种情况下,用户通过软件引导或者通过设置界面进入检测界面后,检测界面主要由摄像头预览画面,点击开始检测按钮后,软件便会自动进行检测过程,并将中间结果进行输出,可以通过文本方式、图片方式、语音方式等输出,以告知用户当前程序在运行中。在图5示出的检测界面中,通过文本方式将中间结果进行输出,用户能够在检测界面看到性能检测进行到了哪个步骤,例如在图5中能够看出,编码器测试已经完成。当软件完成检测过程之后,可以通过文本方式、图片方式、语音方式等输出检测完成的提示,以告知用户当前程序已经运行完毕,测试完成(如图6所示)。
当程序检测完成后,软件根据本地设备的测试结果,预估一个直播策略,并保存在本地以方便下次使用。
本发明实施例提供的媒体直播方法在技术上主要包括两个方面内容:1.本地安卓客户端设备性能检测;2.根据性能检测结果进行直播策略预估。下面分别对这两个方面进行说明。
1.本地安卓客户端设备性能检测。
本地安卓客户端的设备性能检测主要包括以下几个方面:
摄像头的检测:直播需要使用摄像头获取视频数据,因此,需要对摄像头进行检测,以测试摄像头能否正常工作。
CPU运算性能检测:软件编码器会消耗大量CPU运算资源,因此,需要检测CPU运算速度等参数。
GPU渲染性能测试:软件开启美颜功能后需要GPU的渲染才能将美颜后的数据绘制在用户界面上,因此,需要检测GPU渲染性能。
硬件编码器性能测试:硬件编码器可以减少大量CPU参与运算,加快编码速度。提升直播分辨率,因此,需要检测硬件编码器性能。
内存性能测试:直播过程中视频的编码压缩等对内存的操作非常频繁,因此,需要检测内存大小和IO参数。
网络测速:网络速度决定了推流(视频客户端将音频/视频上传至服务器)的情况,但是该项不强制作为性能检测,其取决于当前网络环境,可以在直播过程中动态获取。
图7是根据本发明实施例的安卓端设备性能检测的流程图。如图7所示,该过程包括以下步骤:
步骤S702,打开摄像头。
步骤S704,判断摄像头是否成功打开。如果判断结果为是,执行步骤S708;如果判断结果为否,执行步骤S706。
步骤S706,关闭检测,输出结果。如果摄像头无法成功打开,则确定无法进行直播。
步骤S708,启动采集,输出摄像头结果。
步骤S710,数据分发管理。
步骤S712,CPU检测输出结果。
步骤S714,GPU渲染输出结果。
步骤S716,硬件编码器测试输出结果。
步骤S718,内存测试输出结果。
2.根据性能检测结果进行直播策略预估。
根据测试结果,参考实际的编码直播效果,进行直播策略的预估。以下给出了几种情况的例子。
如果摄像头无法打开,则确定设备无法进行直播。
如果CPU运算性能较差,需要考虑低分辨率的直播。
如果GPU渲染效率较低,需要考虑低分辨率的直播,以免高分辨率导致渲染时间过长。
如果GPU不支持渲染,则需要考虑禁用美颜功能。
如果编码器性能较低,需要考虑低分辨率直播,或者取消本地备份。
如果编码器不支持多路同时编码,需要考虑不支持本地备份。
如果内存性能较低,需要考虑低分辨率直播。
在本发明实施例中,根据设备性能设置合理的直播分辨率,可以让低端机型使用较低分辨率进行直播,让高端机型以高分辨率、高清晰度直播。根据GPU渲染性能,高性能设备可以启动美颜功能,低性能设备可以禁用美颜功能。对于支持硬件编码器的设备可以启动硬件编码加快编码速度,减少CPU使用。对于不支持硬件编码器的设备使用软件编码,虽然效率较低,但是可以保证直播编码。通过个性化的设置使直播客户端更好地利用设备资源,更好地发挥安卓设备性能,优化视频直播体验,个性化直播策略,提升用户体验。
现有技术中一些直播方案是通过当前机型对比机型白名单,如果该机型在白名单中可以支持直播,否则无法发起直播。在本发明实施例中,可以取消机型白名单策略,开放白名单,让更多用户参与直播,同时依据设备性能实现个性化直播策略预估,更好地发挥安卓设备性能,提升用户体验。
在本发明实施例中,还可以设置直播设备白名单。具体地说,通过预先测试,可以确定一些机器能否支持直播,将该机型保存在服务器白名单中,用户启动直播时,软件获取本地设备机型和服务器白名单对比,如果该设备存在白名单中,则启动直播,否则,不支持直播。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例,还提供了一种用于实施上述媒体直播方法的媒体直播装置,如图8所示,该装置包括:获取单元82、查找单元84、设置单元86。
获取单元82,用于获取目标设备中硬件的性能参数,其中,目标设备用于进行媒体直播。
查找单元84,用于查找与性能参数相关联的目标直播策略,其中,目标直播策略用于表示目标设备在进行媒体直播时所采用的直播参数。
设置单元86,用于按照目标直播策略对目标设备进行设置,其中,被设置后的目标设备按照直播参数进行媒体直播。
可选地,性能参数包括第一子参数,查找单元84包括第一判断子单元、第一确定子单元、第二确定子单元。第一判断子单元,用于判断第一子参数是否满足第一预设条件。第一确定子单元,用于在第一子参数满足第一预设条件的情况下,确定与第一子参数相关联的第一直播参数,并将第一直播参数作为目标直播策略。第二确定子单元,用于在第一子参数不满足第一预设条件的情况下,确定与第一子参数相关联的第二直播参数,并将第二直播参数作为目标直播策略。
可选地,性能参数包括第一子参数和第二子参数,查找单元84包括第二判断子单元、第三确定子单元。第二判断子单元,用于判断第一子参数是否满足第一预设条件,并且判断第二子参数是否满足第二预设条件。第三确定子单元,用于在第一子参数满足第一预设条件,并且第二子参数满足第二预设条件的情况下,确定与第一子参数、第二子参数均相关联的第三直播参数,并将第三直播参数作为目标直播策略。第四确定子单元,用于在第一子参数满足第一预设条件,并且第二子参数不满足第二预设条件的情况下,确定与第一子参数相关联的第四直播参数,并将第四直播参数作为目标直播策略。第五确定子单元,用于在第一子参数不满足第一预设条件,并且第二子参数满足第二预设条件的情况下,确定与第二子参数相关联的第五直播参数,并将第五直播参数作为目标直播策略。
可选地,第一子参数是目标设备的CPU运算能力值,第一判断子单元包括第一判断模块。第一判断模块,用于判断CPU运算能力值是否大于等于第一预设值。第一确定子单元包括第一确定模块。第一确定模块,用于在CPU运算能力值大于等于第一预设值的情况下,确定第一直播参数为第一分辨率。第二确定子单元包括第二确定模块。第二确定模块,用于在CPU运算能力值小于第一预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
可选地,第一子参数是目标设备的内存性能值,第一判断子单元包括第二判断模块。第二判断模块,用于判断内存性能值是否大于等于第二预设值。第一确定子单元包括第三确定模块。第三确定模块,用于在内存性能值大于等于第二预设值的情况下,确定第一直播参数为第一分辨率。第二确定子单元包括第四确定模块。第四确定模块,用于在内存性能值小于第二预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
可选地,第一子参数是目标设备的GPU渲染能力值,第一判断子单元包括第三判断模块。第三判断模块,用于判断GPU渲染能力值是否大于等于第三预设值。第一确定子单元包括第五确定模块。第五确定模块,用于在GPU渲染能力值大于等于第三预设值的情况下,确定第一直播参数为第一分辨率。第二确定子单元包括第六确定模块。第六确定模块,用于在GPU渲染能力值小于第三预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
可选地,第一子参数是目标设备的硬件编码器编码能力值,第一判断子单元包括第四判断模块。第四判断模块,用于判断编码能力值是否大于等于第四预设值。第一确定子单元包括第七确定模块。第七确定模块,用于在编码能力值大于等于第四预设值的情况下,确定第一直播参数为第一分辨率。第二确定子单元包括第八确定模块。第八确定模块,用于在编码能力值小于第四预设值的情况下,确定第二直播参数为第二分辨率,其中,第一分辨率高于第二分辨率。
可选地,查找单元84包括第三判断子单元、第六确定子单元、第七确定子单元。第三判断子单元,用于根据性能参数判断目标设备的GPU是否支持渲染。第六确定子单元,用于在判断出目标设备的GPU支持渲染的情况下,确定目标直播策略为第一直播策略,其中,第一直播策略允许使用美颜功能。第七确定子单元,用于在判断出目标设备的GPU不支持渲染的情况下,确定目标直播策略为第二直播策略,其中,第二直播策略禁止使用美颜功能。
可选地,查找单元84包括第四判断子单元、第八确定子单元、第九确定子单元。第四判断子单元,用于根据性能参数判断目标设备的硬件编码器是否支持多路同时编码。第八确定子单元,用于在判断出硬件编码器支持多路同时编码的情况下,确定目标直播策略为第一直播策略,其中,第一直播策略支持本地备份。第九确定子单元,用于在判断出硬件编码器不支持多路同时编码的情况下,确定目标直播策略为第二直播策略,其中,第二直播策略不支持本地备份。
可选地,在查找与性能参数相关联的目标直播策略之前,装置还包括判断单元、确定单元。判断单元,用于根据性能参数判断目标设备的摄像头能否正常打开。确定单元,用于如果判断出摄像头无法正常打开,确定目标设备无法进行直播。
根据本发明实施例,还提供了一种用于实施上述媒体直播方法的服务器,如图9所示,该服务器主要包括处理器901、显示器903、数据接口904、存储器905和网络接口906,其中:
数据接口904则主要通过数据传输的方式接收目标设备传输的视频数据和音频数据。
存储器905主要用于存储视频数据和音频数据。
网络接口906主要用于与终端和其他服务器进行网络通信,将视频数据和音频数据发送给观看直播的终端。
显示器903主要用于显示视频。
处理器901主要用于对视频数据和音频数据进行处理。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于存储本发明实施例的媒体直播方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于移动通信网络、广域网、城域网或局域网的网络中的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,获取目标设备中硬件的性能参数,其中,目标设备用于进行媒体直播。
S2,查找与性能参数相关联的目标直播策略,其中,目标直播策略用于表示目标设备在进行媒体直播时所采用的直播参数。
S3,按照目标直播策略对目标设备进行设置,其中,被设置后的目标设备按照直播参数进行媒体直播。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述第一子参数是否满足第一预设条件;在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数,并将所述第一直播参数作为所述目标直播策略;在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数,并将所述第二直播参数作为所述目标直播策略。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述第一子参数是否满足第一预设条件,并且判断所述第二子参数是否满足第二预设条件;在所述第一子参数满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第一子参数、所述第二子参数均相关联的第三直播参数,并将所述第三直播参数作为所述目标直播策略;在所述第一子参数满足所述第一预设条件,并且所述第二子参数不满足所述第二预设条件的情况下,确定与所述第一子参数相关联的第四直播参数,并将所述第四直播参数作为所述目标直播策略;在所述第一子参数不满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第二子参数相关联的第五直播参数,并将所述第五直播参数作为所述目标直播策略。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述CPU运算能力值是否大于等于第一预设值;在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述CPU运算能力值大于等于所述第一预设值的情况下,确定所述第一直播参数为第一分辨率;在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述CPU运算能力值小于所述第一预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述内存性能值是否大于等于第二预设值;在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述内存性能值大于等于所述第二预设值的情况下,确定所述第一直播参数为第一分辨率;在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述内存性能值小于所述第二预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述GPU渲染能力值是否大于等于第三预设值;在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述GPU渲染能力值大于等于所述第三预设值的情况下,确定所述第一直播参数为第一分辨率;在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述GPU渲染能力值小于所述第三预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:判断所述编码能力值是否大于等于第四预设值;在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述编码能力值大于等于所述第四预设值的情况下,确定所述第一直播参数为第一分辨率;在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述编码能力值小于所述第四预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:根据所述性能参数判断所述目标设备的GPU是否支持渲染;在判断出所述目标设备的GPU支持渲染的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略允许使用美颜功能;在判断出所述目标设备的GPU不支持渲染的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略禁止使用美颜功能。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:根据所述性能参数判断所述目标设备的硬件编码器是否支持多路同时编码;在判断出所述硬件编码器支持多路同时编码的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略支持本地备份;在判断出所述硬件编码器不支持多路同时编码的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略不支持本地备份。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:根据所述性能参数判断所述目标设备的摄像头能否正常打开;如果判断出所述摄像头无法正常打开,确定所述目标设备无法进行直播。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (20)

1.一种媒体直播方法,应用于网络直播的录制端,其特征在于,包括:
获取目标设备中硬件的性能参数,其中,所述目标设备用于进行媒体直播;
查找与所述性能参数相关联的目标直播策略,其中,所述目标直播策略用于表示所述目标设备在进行媒体直播时所采用的直播参数;
按照所述目标直播策略对所述目标设备进行设置,其中,被设置后的所述目标设备按照所述直播参数进行媒体直播;
其中,所述性能参数包括第一子参数,所述第一子参数包括以下至少之一:所述目标设备的CPU运算能力值、所述目标设备的内存性能值、所述目标设备的GPU渲染能力值、所述目标设备的硬件编码器编码能力值。
2.根据权利要求1所述的方法,其特征在于,所述性能参数包括第一子参数,查找与所述性能参数相关联的目标直播策略包括:
判断所述第一子参数是否满足第一预设条件;
在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数,并将所述第一直播参数作为所述目标直播策略;
在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数,并将所述第二直播参数作为所述目标直播策略。
3.根据权利要求1所述的方法,其特征在于,所述性能参数包括第一子参数和第二子参数,查找与所述性能参数相关联的目标直播策略包括:
判断所述第一子参数是否满足第一预设条件,并且判断所述第二子参数是否满足第二预设条件;
在所述第一子参数满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第一子参数、所述第二子参数均相关联的第三直播参数,并将所述第三直播参数作为所述目标直播策略;
在所述第一子参数满足所述第一预设条件,并且所述第二子参数不满足所述第二预设条件的情况下,确定与所述第一子参数相关联的第四直播参数,并将所述第四直播参数作为所述目标直播策略;
在所述第一子参数不满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第二子参数相关联的第五直播参数,并将所述第五直播参数作为所述目标直播策略。
4.根据权利要求2所述的方法,其特征在于,所述第一子参数是所述目标设备的CPU运算能力值,
判断所述第一子参数是否满足第一预设条件包括:判断所述CPU运算能力值是否大于等于第一预设值;
在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述CPU运算能力值大于等于所述第一预设值的情况下,确定所述第一直播参数为第一分辨率;
在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述CPU运算能力值小于所述第一预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
5.根据权利要求2所述的方法,其特征在于,所述第一子参数是所述目标设备的内存性能值,
判断所述第一子参数是否满足第一预设条件包括:判断所述内存性能值是否大于等于第二预设值;
在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述内存性能值大于等于所述第二预设值的情况下,确定所述第一直播参数为第一分辨率;
在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述内存性能值小于所述第二预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
6.根据权利要求2所述的方法,其特征在于,所述第一子参数是所述目标设备的GPU渲染能力值,
判断所述第一子参数是否满足第一预设条件包括:判断所述GPU渲染能力值是否大于等于第三预设值;
在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述GPU渲染能力值大于等于所述第三预设值的情况下,确定所述第一直播参数为第一分辨率;
在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述GPU渲染能力值小于所述第三预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
7.根据权利要求2所述的方法,其特征在于,所述第一子参数是所述目标设备的硬件编码器编码能力值,
判断所述第一子参数是否满足第一预设条件包括:判断所述编码能力值是否大于等于第四预设值;
在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数包括:在所述编码能力值大于等于所述第四预设值的情况下,确定所述第一直播参数为第一分辨率;
在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数包括:在所述编码能力值小于所述第四预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
8.根据权利要求1所述的方法,其特征在于,查找与所述性能参数相关联的目标直播策略包括:
根据所述性能参数判断所述目标设备的GPU是否支持渲染;
在判断出所述目标设备的GPU支持渲染的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略允许使用美颜功能;
在判断出所述目标设备的GPU不支持渲染的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略禁止使用美颜功能。
9.根据权利要求1所述的方法,其特征在于,查找与所述性能参数相关联的目标直播策略包括:
根据所述性能参数判断所述目标设备的硬件编码器是否支持多路同时编码;
在判断出所述硬件编码器支持多路同时编码的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略支持本地备份;
在判断出所述硬件编码器不支持多路同时编码的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略不支持本地备份。
10.根据权利要求1所述的方法,其特征在于,在查找与所述性能参数相关联的目标直播策略之前,所述方法还包括:
根据所述性能参数判断所述目标设备的摄像头能否正常打开;
如果判断出所述摄像头无法正常打开,确定所述目标设备无法进行直播。
11.一种媒体直播装置,应用于网络直播的录制端,其特征在于,包括:
获取单元,用于获取目标设备中硬件的性能参数,其中,所述目标设备用于进行媒体直播;
查找单元,用于查找与所述性能参数相关联的目标直播策略,其中,所述目标直播策略用于表示所述目标设备在进行媒体直播时所采用的直播参数;
设置单元,用于按照所述目标直播策略对所述目标设备进行设置,其中,被设置后的所述目标设备按照所述直播参数进行媒体直播;
其中,所述性能参数包括第一子参数,所述第一子参数包括以下至少之一:所述目标设备的CPU运算能力值、所述目标设备的内存性能值、所述目标设备的GPU渲染能力值、所述目标设备的硬件编码器编码能力值。
12.根据权利要求11所述的装置,其特征在于,所述性能参数包括第一子参数,所述查找单元包括:
第一判断子单元,用于判断所述第一子参数是否满足第一预设条件;
第一确定子单元,用于在所述第一子参数满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第一直播参数,并将所述第一直播参数作为所述目标直播策略;
第二确定子单元,用于在所述第一子参数不满足所述第一预设条件的情况下,确定与所述第一子参数相关联的第二直播参数,并将所述第二直播参数作为所述目标直播策略。
13.根据权利要求11所述的装置,其特征在于,所述性能参数包括第一子参数和第二子参数,所述查找单元包括:
第二判断子单元,用于判断所述第一子参数是否满足第一预设条件,并且判断所述第二子参数是否满足第二预设条件;
第三确定子单元,用于在所述第一子参数满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第一子参数、所述第二子参数均相关联的第三直播参数,并将所述第三直播参数作为所述目标直播策略;
第四确定子单元,用于在所述第一子参数满足所述第一预设条件,并且所述第二子参数不满足所述第二预设条件的情况下,确定与所述第一子参数相关联的第四直播参数,并将所述第四直播参数作为所述目标直播策略;
第五确定子单元,用于在所述第一子参数不满足所述第一预设条件,并且所述第二子参数满足所述第二预设条件的情况下,确定与所述第二子参数相关联的第五直播参数,并将所述第五直播参数作为所述目标直播策略。
14.根据权利要求12所述的装置,其特征在于,所述第一子参数是所述目标设备的CPU运算能力值,
所述第一判断子单元包括:第一判断模块,用于判断所述CPU运算能力值是否大于等于第一预设值;
所述第一确定子单元包括:第一确定模块,用于在所述CPU运算能力值大于等于所述第一预设值的情况下,确定所述第一直播参数为第一分辨率;
所述第二确定子单元包括:第二确定模块,用于在所述CPU运算能力值小于所述第一预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
15.根据权利要求12所述的装置,其特征在于,所述第一子参数是所述目标设备的内存性能值,
所述第一判断子单元包括:第二判断模块,用于判断所述内存性能值是否大于等于第二预设值;
所述第一确定子单元包括:第三确定模块,用于在所述内存性能值大于等于所述第二预设值的情况下,确定所述第一直播参数为第一分辨率;
所述第二确定子单元包括:第四确定模块,用于在所述内存性能值小于所述第二预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
16.根据权利要求12所述的装置,其特征在于,所述第一子参数是所述目标设备的GPU渲染能力值,
所述第一判断子单元包括:第三判断模块,用于判断所述GPU渲染能力值是否大于等于第三预设值;
所述第一确定子单元包括:第五确定模块,用于在所述GPU渲染能力值大于等于所述第三预设值的情况下,确定所述第一直播参数为第一分辨率;
所述第二确定子单元包括:第六确定模块,用于在所述GPU渲染能力值小于所述第三预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
17.根据权利要求12所述的装置,其特征在于,所述第一子参数是所述目标设备的硬件编码器编码能力值,
所述第一判断子单元包括:第四判断模块,用于判断所述编码能力值是否大于等于第四预设值;
所述第一确定子单元包括:第七确定模块,用于在所述编码能力值大于等于所述第四预设值的情况下,确定所述第一直播参数为第一分辨率;
所述第二确定子单元包括:第八确定模块,用于在所述编码能力值小于所述第四预设值的情况下,确定所述第二直播参数为第二分辨率,其中,所述第一分辨率高于所述第二分辨率。
18.根据权利要求11所述的装置,其特征在于,所述查找单元包括:
第三判断子单元,用于根据所述性能参数判断所述目标设备的GPU是否支持渲染;
第六确定子单元,用于在判断出所述目标设备的GPU支持渲染的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略允许使用美颜功能;
第七确定子单元,用于在判断出所述目标设备的GPU不支持渲染的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略禁止使用美颜功能。
19.根据权利要求11所述的装置,其特征在于,所述查找单元包括:
第四判断子单元,用于根据所述性能参数判断所述目标设备的硬件编码器是否支持多路同时编码;
第八确定子单元,用于在判断出所述硬件编码器支持多路同时编码的情况下,确定所述目标直播策略为第一直播策略,其中,所述第一直播策略支持本地备份;
第九确定子单元,用于在判断出所述硬件编码器不支持多路同时编码的情况下,确定所述目标直播策略为第二直播策略,其中,所述第二直播策略不支持本地备份。
20.根据权利要求11所述的装置,其特征在于,在查找与所述性能参数相关联的目标直播策略之前,所述装置还包括:
判断单元,用于根据所述性能参数判断所述目标设备的摄像头能否正常打开;
确定单元,用于如果判断出所述摄像头无法正常打开,确定所述目标设备无法进行直播。
CN201610803009.5A 2016-09-05 2016-09-05 媒体直播方法和装置 Active CN106375789B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610803009.5A CN106375789B (zh) 2016-09-05 2016-09-05 媒体直播方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610803009.5A CN106375789B (zh) 2016-09-05 2016-09-05 媒体直播方法和装置

Publications (2)

Publication Number Publication Date
CN106375789A CN106375789A (zh) 2017-02-01
CN106375789B true CN106375789B (zh) 2019-02-26

Family

ID=57899098

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610803009.5A Active CN106375789B (zh) 2016-09-05 2016-09-05 媒体直播方法和装置

Country Status (1)

Country Link
CN (1) CN106375789B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337465B (zh) * 2017-02-09 2021-05-14 腾讯科技(深圳)有限公司 视频处理方法和装置
CN107147782B (zh) * 2017-04-27 2020-05-19 北京酷我科技有限公司 一种手机直播录制的方法
CN108961380B (zh) * 2017-05-26 2022-06-14 创新先进技术有限公司 图形渲染方法及装置
CN107680157B (zh) * 2017-09-08 2020-05-12 广州华多网络科技有限公司 一种基于直播的互动方法及直播系统、电子设备
CN108769825B (zh) * 2018-06-21 2020-11-06 北京密境和风科技有限公司 直播的实现方法和装置
CN109379629A (zh) * 2018-11-27 2019-02-22 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN109587511A (zh) * 2018-12-24 2019-04-05 网易(杭州)网络有限公司 多设备视频直播方法、设备、系统及存储介质
CN111263113B (zh) * 2020-01-22 2021-04-30 浙江大华技术股份有限公司 数据包的发送方法及装置、数据包的处理方法及装置
CN113992540B (zh) * 2021-11-01 2023-06-16 创盛视联数码科技(北京)有限公司 设备检测方法及电子设备
CN114173160B (zh) * 2021-12-01 2023-11-21 上海哔哩哔哩科技有限公司 直播推流方法及装置
CN114501017A (zh) * 2022-03-04 2022-05-13 百果园技术(新加坡)有限公司 一种视频编码适配方法、装置、设备及存储介质
CN116028206A (zh) * 2022-05-16 2023-04-28 荣耀终端有限公司 资源调度方法、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101115021A (zh) * 2006-07-28 2008-01-30 腾讯科技(深圳)有限公司 一种即时通信视频质量调节方法及装置
CN103607564A (zh) * 2013-11-11 2014-02-26 天脉聚源(北京)传媒科技有限公司 一种基于摄像头的视频采集实现的方法及装置
CN104394486A (zh) * 2014-11-26 2015-03-04 中标软件有限公司 一种基于云桌面的视频流处理方法及装置
CN105657321A (zh) * 2015-11-09 2016-06-08 乐视致新电子科技(天津)有限公司 视频清晰度自适应调节方法、装置及终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8159960B2 (en) * 2006-12-18 2012-04-17 Verizon Patent And Licensing Inc. Content processing device monitoring
CN102014301A (zh) * 2010-11-26 2011-04-13 优视科技有限公司 一种视频播放方法、系统及服务器
CN105898291A (zh) * 2015-12-14 2016-08-24 乐视云计算有限公司 网络视频播放方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101115021A (zh) * 2006-07-28 2008-01-30 腾讯科技(深圳)有限公司 一种即时通信视频质量调节方法及装置
CN103607564A (zh) * 2013-11-11 2014-02-26 天脉聚源(北京)传媒科技有限公司 一种基于摄像头的视频采集实现的方法及装置
CN104394486A (zh) * 2014-11-26 2015-03-04 中标软件有限公司 一种基于云桌面的视频流处理方法及装置
CN105657321A (zh) * 2015-11-09 2016-06-08 乐视致新电子科技(天津)有限公司 视频清晰度自适应调节方法、装置及终端

Also Published As

Publication number Publication date
CN106375789A (zh) 2017-02-01

Similar Documents

Publication Publication Date Title
CN106375789B (zh) 媒体直播方法和装置
CN106936671B (zh) 多屏互动方法、装置及终端设备
CN107465936B (zh) 一种直播列表镜像展示方法、直播平台服务器及客户端
CN102265578B (zh) 从流式传输的内容切换到本地内容的系统和方法
CN109445918B (zh) 任务调度方法、装置、终端及存储介质
CN105740010B (zh) 一种开机方法及终端设备
CN103517135B (zh) 一种连续播放mp4格式视频文件的方法、系统及电视
CN105142009B (zh) 音视频播放控制方法及装置
WO2022022019A1 (zh) 投屏数据处理方法和装置
CN105354042B (zh) 应用安装的处理方法及装置
CN112203034B (zh) 帧率控制方法、装置以及电子设备
CN103634556B (zh) 一种信息传输、接收方法及电子设备
CN109688465A (zh) 视频增强控制方法、装置以及电子设备
CN104683781B (zh) 视频播放处理方法及装置
CN107333163A (zh) 一种视频处理方法及装置、一种终端及存储介质
CN109600654A (zh) 弹幕处理方法、装置以及电子设备
CN113572669B (zh) 场景处理方法、装置、智能网关及处理器
CN204013943U (zh) 一种在ott盒子上进行视频截取并处理的装置
CN107484016A (zh) 视频的配音切换方法、电视机及计算机可读存储介质
CN109151541A (zh) 主播离开的提示弹框的实现方法、存储介质、设备及系统
CN106998495A (zh) 一种视频播放方法及装置
CN110784731B (zh) 一种数据流转码方法、装置、设备及介质
CN108235075A (zh) 视频质量等级匹配方法、计算机可读存储介质及终端
WO2022110939A1 (zh) 一种设备推荐方法及电子设备
CN110575670B (zh) 游戏数据的配置策略的生成方法及相关产品

Legal Events

Date Code Title Description
C06 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