CN115499673B - 一种直播方法及装置 - Google Patents

一种直播方法及装置 Download PDF

Info

Publication number
CN115499673B
CN115499673B CN202211045380.1A CN202211045380A CN115499673B CN 115499673 B CN115499673 B CN 115499673B CN 202211045380 A CN202211045380 A CN 202211045380A CN 115499673 B CN115499673 B CN 115499673B
Authority
CN
China
Prior art keywords
image quality
data
preset
quality parameter
sand 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.)
Active
Application number
CN202211045380.1A
Other languages
English (en)
Other versions
CN115499673A (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.)
Shenzhen Ideamake Software Technology Co Ltd
Original Assignee
Shenzhen Ideamake Software 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 Shenzhen Ideamake Software Technology Co Ltd filed Critical Shenzhen Ideamake Software Technology Co Ltd
Priority to CN202211045380.1A priority Critical patent/CN115499673B/zh
Publication of CN115499673A publication Critical patent/CN115499673A/zh
Application granted granted Critical
Publication of CN115499673B publication Critical patent/CN115499673B/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/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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

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

Abstract

本申请实施例提供了一种直播方法及装置,方法包括:获取电子沙盘数据和用户视频数据,获取推流服务器信息和预设画质参数,通过该推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,根据该第一画质参数显示该电子沙盘数据和该用户视频数据。采用该方法,可以获得电子沙盘直播的合理的画质参数,从而避免画质过高造成推流服务器的负担。

Description

一种直播方法及装置
技术领域
本申请属于互联网直播技术领域,具体涉及一种直播方法及装置。
背景技术
目前互联网技术的发展和移动终端的广泛普及,视频直播逐渐成为人们进行内容推介和产品推广的重要方式,以直播场景分类,可以包括户外直播、游戏直播、舞蹈直播等等。以直播方式分类,可以分为现场直播和推流直播。
电子沙盘直播是一种新的直播场景。通常情况下,可以通过推流直播方式进行电子沙盘直播。但是另一方面,由于电子沙盘需要主持人的现场讲解,因此又可以与现场直播相结合。在结合推流直播和现场直播进行电子沙盘直播时,由于目前各大直播平台并未对电子沙盘直播进行明确划分直播类别,导致在推流时服务器对其画质参数的要求并不明确,而如何将主持人直播的画质参数与电子沙盘直播的画质参数结合,也不明确。这可能导致电子沙盘直播画质不能达成用户需求,直播过程效果差等问题。
发明内容
本申请实施例提供了一种直播方法及装置,通过结合推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到直播的画质参数,可以得到电子沙盘直播的合理的画质参数,从而避免画质过高造成推流服务器的负担,或者画质过低造成直播效果差。
第一方面,本申请实施例提供了直播方法,其特征在于,应用于推流服务器,获取第一类直播数据和第二类直播数据,第一类直播数据包括电子沙盘数据,第二类直播数据包括用户视频数据;获取推流服务器信息和预设画质参数,预设画质参数与电子沙盘类目对应;根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数;根据第一画质参数显示电子沙盘数据和用户视频数据。
可以看出,本申请实施例中,获取电子沙盘数据和用户视频数据,获取推流服务器信息和预设画质参数,通过该推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,根据该第一画质参数显示该电子沙盘数据和该用户视频数据。采用该方法,可以获得电子沙盘直播的合理的画质参数,从而避免画质过高造成推流服务器的负担。
在一个可能的示例中,预设画质参数为根据不同时间段分别进行设置的画质参数,包括:获取推流服务器的历史内存占用比例;根据历史内存占用比例是否超出预设占用比例对预设画质参数进行设置,其中,第一时间段对应的预设占用比例为第一预设比例,第二时间段对应的预设比例为第二预设比例,第三时间段对应的预设比例为第三预设比例,其中,第一时间段、第二时间段和第三时间段满足从早到晚的顺序,第一预设比例大于第三预设比例,第三预设比例大于第二预设比例;当历史内存占用比例超出预设占用比例时,预设画质参数设置为一般画质,当历史内存占用比例未超出预设占用比例时,预设画质参数设置为高清画质。
在本申请示例中,将一天分为三个时间段,并根据三个时间段分别设置一个预设比例,其中最早的第一时间段对应的第一预设比例最大,说明第一时间段留给电子沙盘进行高清画质直播的内存空间最大,而在中间的第二时间段对应的第二预设比例最小,说明第二时间段留给电子沙盘进行高清画质播放的内存空间最小。这样一方面可以保障电子沙盘直播有尽可能多的时间进行高清画面直播,又能避免在资源紧张的时间段,沙盘直播占用过高内存导致整个推流服务器的服务质量下降。
在一个可能的示例中,推流服务器信息包括推流服务器的当前内存占用大小,根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,包括:若推流服务器的当前内存占用大小不大于预设内存占用大小,获取用户视频数据中的第二画质参数,将第二画质参数确定为第一画质参数;若推流服务器的当前内存占用大小大于预设内存占用大小,获取电子沙盘数据中的目标建筑,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,目标建筑为与当前直播主题相关的建筑;确定第三画质参数占用内存是否大于预设画质参数占用内存;若第三画质参数占用内存小于或等于预设画质参数占用内存,则将第三画质参数确定为第一画质参数;若第三画质参数占用内存大于预设画质参数占用内存,则将预设画质参数作为第一画质参数。
在本申请示例中,通过推流服务器的当前性能状态来对画质进行调节,当性能状态良好时,直接将画质清晰度最高的用户视频数据中的第二画质参数作为直播显示画质参数,当性能状态一般时,根据目标建筑在电子沙盘数据中的画面占比来对第二画质参数进行调节(主要是按比例缩小)得到第三画质参数,将第三画质参数与预设画质参数中的内存占用较小的画质参数作为直播显示画质参数。采用该方法进一步参照了推流服务器的性能,结合前述提出的预设画质参数,可以更精准地对画质参数进行调整,做到给观众更好的画质体验,又可以避免推流服务器的内存占用过高导致卡顿。
在一个可能的示例中,第二画质参数包括第二帧率、第二码率和第二分辨率,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,包括:根据目标建筑在电子沙盘数据中的画面占比大小缩放第二帧率、第二码率和第二分辨率,得到第三画质参数。
在本申请示例中,将第二画质参数中的第二帧率、第二码率和第二分辨率按照目标建筑在电子沙盘数据中的画面占比大小进行缩放得到第三画质参数。采用该方法可以根据更具体的参数得到直播显示的画质参数,提升画质参数控制的准确度。
在一个可能的示例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,该方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳;将用户音频数据和用户视频数据根据用户音频时间戳和用户视频时间戳进行上传队列同步合并;第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数显示电子沙盘数据,以及根据第一画质参数同步显示用户音频数据和用户视频数据。
在本申请示例中,推流服务器对用户视频数据和用户音频数据添加了对应的时间戳之后,基于该用户视频时间戳和用户音频时间戳进行音视频同步之后由一个上传队列进行合并上传。采用该方法可以避免由于音视频上传过程中产生的延迟导致音视频不同步。
在一个可能的示例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,该方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳,对电子沙盘数据添加电子沙盘时间戳;根据第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据。
在本申请示例中,推流服务器对电子沙盘数据、用户视频数据和用户音频数据都添加上对应的时间戳,并根据电子沙盘数据时间戳、用户视频时间戳和用户音频时间戳同步显示电子沙盘数据、用户视频数据和用户音频数据。采用该方法可以使得直播过程中推流服务器获取到的数据与显示的数据之间能够同步。
在一个可能的示例中,根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据之后,该方法还包括:若用户视频时间戳中的最先时间和最后时间之差小于第一预设时间,读取用户视频数据中的最后一帧画面,将用户视频数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示用户视频数据中的最后一帧画面、电子沙盘数据和用户音频数据;和/或若电子沙盘时间戳中的最先时间和最后时间之差小于第一预设时间,读取电子沙盘数据中的最后一帧画面,将电子沙盘数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据中的最后一帧画面、用户视频数据和用户音频数据。
在本申请示例中,对一次获取的用户视频数据和电子沙盘数据中时间戳的长度小于第一预设时间的,对该数据的最后一帧数据添加新的时间戳再进行显示。采用该方法可以避免因数据生成阶段出现问题导致的直播中断。
第二方面,本申请实施例提供了一种直播装置,装置包括:
第一获取单元,用于获取第一类直播数据和第二类直播数据,所述第一类直播数据包括电子沙盘数据,所述第二类直播数据包括用户视频数据;
第二获取单元,用于获取推流服务器信息和预设画质参数,所述预设画质参数与电子沙盘类目对应;
生成单元,用于根据所述推流服务器信息、所述预设画质参数、所述用户视频数据和所述电子沙盘数据得到第一画质参数;
显示单元,用于根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据。
第三方面,本申请实施例提供了一种电子设备,该设备包括处理器、存储器、通信接口,处理器、存储器和通信接口相互连接,并且完成相互间的通信工作,存储器上存储有可执行程序代码,通信接口用于进行无线通信,处理器用于调取存储器上存储的可执行程序代码,执行例如第一方面任一方法中所描述的部分或全部的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有程序数据,程序数据在被处理器执行时,用于执行程序数据以实现本申请实施例第一方面所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种直播***的结构示意图;
图2为本申请实施例提供的一种直播方法的流程示意图;
图3为本申请实施例提供的一种电子沙盘直播的结构示意图;
图4为本申请实施例提供的一种音视频同步的结构示意图;
图5为本申请实施例提供的一种直播显示方法的流程示意图;
图6a是本申请实施例提供的一种直播装置的功能单元组成框图;
图6b是本申请实施例提供的另一种直播装置的功能单元组成框图;
图7是本申请实施例提供的一种电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤的过程、方法、***、产品或设备没有限定于已列出的步骤,而是可选地还包括没有列出的步骤,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先对本申请实施例所涉及的***架构进行介绍。
请参阅图1,图1为本申请实施例提供的一种直播***的结构示意图,如图1所示,该直播***包括主播端设备、用户端设备和推流服务器。其中,主播端设备用于主播进行发起直播时人物视频和音频的录入以及设备软件的录屏,主播端设备可以是平板等移动设备;推流服务器用于对人物视频数据、人物音频数据及录屏数据进行处理并将其分发给多个用户设备;用户端设备用于观看直播,用户端设备也可以是平板等移动设备。
上述直播***的运作工程具体为:主播通过主播端设备进行人像和声音的录入,并对设备软件进行录屏,而后将其上传到推流服务器,推流服务器对该人像视频和音频数据以及录屏数据进行处理,得到视频合适的画质参数后将其在用户端设备进行显示。
基于此,本申请实施例提供了一种直播方法,下面结合附图对本申请实施例进行详细说明。
请参阅图2,图2为本申请实施例提供的一种直播方法的流程示意图,该直播方法应用于推流服务器,如图2所示,该方法包括如下步骤:
步骤201,获取第一类直播数据和第二类直播数据,第一类直播数据包括电子沙盘数据,第二类直播数据包括用户视频数据。
其中,第一类直播数据主要是设备进行屏幕录制后产生的视频直播数据,第二类直播数据主要是通过设备配置的摄像头进行实时录制的视频直播数据。
步骤202,获取推流服务器信息和预设画质参数,预设画质参数与电子沙盘类目对应。
其中,推流服务器信息主要是用于判断推流服务器的当前性能状态。由于当前各直播平台对于电子沙盘直播并没有明确的直播分类,以至于对其无法进行准确的推流,进而对直播的画质参数没有明确的标准,因此这里会预先对其设置一个画质参数,避免画质参数不明确而导致推流不准确问题。
在一个可行的实施例中,预设画质参数为根据不同时间段分别进行设置的画质参数,包括:获取推流服务器的历史内存占用比例;根据历史内存占用比例是否超出预设占用比例对预设画质参数进行设置,其中,第一时间段对应的预设占用比例为第一预设比例,第二时间段对应的预设比例为第二预设比例,第三时间段对应的预设比例为第三预设比例,其中,第一时间段、第二时间段和第三时间段满足从早到晚的顺序,第一预设比例大于第三预设比例,第三预设比例大于第二预设比例;当历史内存占用比例超出预设占用比例时,预设画质参数设置为一般画质,当历史内存占用比例未超出预设占用比例时,预设画质参数设置为高清画质。
其中,直播的人数从早到晚都是在一直变动的,而直播的人数多少决定着直播服务器的性能状态,根据获取推流服务器的历史内存占用比例可以了解到在不同时间段直播的人数,根据其推流服务器的内存占用比对其预设画质数据进行设置对推流服务器的运行稳定有一定的帮助。
其中,第一时间段、第二时间段和第三时间段满足从早到晚的顺序,根据一天二十四小时将第一时间段确定为零点到八点,将第二时间段确定为八点到十六点,将第三时间段确定为十六点到二十四点。一般情况下,第一时间段中的大多数时间都属于睡眠时间,第三时间段中少部分时间属于睡眠时间,而第二时间段中基本上都不属于睡眠时间,那么可以知晓,在第一时间段中直播的人数相对会很低,其次是第三时间段,最后是第二时间段。那么若直播人数过多,对于推流服务器内存的占用就会过高,从而引发推流服务器的卡顿,因此这里针对不同时间段设置有不同的预设比例,且为了预防直播人数过多而导致的服务器内存占用过高,该预设比例跟不同时间段中可能直播的人数大小呈反比,即第一预设比例大于第三预设比例,第三预设比例大于第二预设比例。
同理,第一预设比例、第二预设比例和第三预设比例的大小可以不是固定的,也可能会根据季节变化而变化,如冬季昼短夜长,晚上睡眠早且睡眠时间长,第二预设比例小于第三预设比例,夏季昼长夜短,晚上睡眠晚且时间短,那么第二预设比例可能会大于第三预设比例。同时,还可以将一天划分为三个以上的时段,根据更多的时段来进行预设参数画质的设置。
若历史内存占用比例中对应时间段的内存占用比例超过预设比例,那么就将该时间段进行直播的预设参数画质设置为一般参数,若历史内存占用比例中对应时间段的内存占用比例未超过预设比例,则将该时间段进行直播的预设参数画质设置为高清画质,其中,该高清画质和一般画质是推流服务器中的固定画质,高清画质可以是分辨率高于1280×720的画质,一般画质可以是分辨率低于1280×720的画质。
在本申请实施例中,将一天分为三个时间段,并根据三个时间段的可能直播人数来分别设置一个预设比例,其中最早的第一时间段对应的第一预设比例最大,说明第一时间段留给电子沙盘进行高清画质直播的内存空间最大,而在中间的第二时间段对应的第二预设比例最小,说明第二时间段留给电子沙盘进行高清画质播放的内存空间最小。这样一方面可以保障电子沙盘直播有尽可能多的时间进行高清画面直播,又能避免在资源紧张的时间段,沙盘直播占用过高内存导致整个推流服务器的服务质量下降。
步骤203,根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数。
其中,上述预设画质参数是针对电子沙盘类目直播的基本画质参数规范,是属于固定的画质参数,而第一画质参数是综合考虑了当前推流服务器性能状态以及直播时的情况等来进行设置的画质参数。
在一个可行的实施例中,推流服务器信息包括推流服务器的当前内存占用大小,根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,包括:若推流服务器的当前内存占用大小不大于预设内存占用大小,获取用户视频数据中的第二画质参数,将第二画质参数确定为第一画质参数;若推流服务器的当前内存占用大小大于预设内存占用大小,获取电子沙盘数据中的目标建筑,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,目标建筑为与当前直播主题相关的建筑;确定第三画质参数占用内存是否大于预设画质参数占用内存;若第三画质参数占用内存小于或等于预设画质参数占用内存,则将第三画质参数确定为第一画质参数;若第三画质参数占用内存大于预设画质参数占用内存,则将预设画质参数作为第一画质参数。
其中,推流服务器在获取用户视频数据和电子沙盘数据时,同时也包含有两个数据中的画质参数,但是在推流服务器将其向用户端进行显示时需要将其画质参数进行调整以契合推流服务器的当前性能状态。因此在进行第一画质参数的设置时,有将推流服务器信息考虑到其中,推流服务器信息就是用于反映推流服务器的当前性能状态。
用户视频数据中的第二画质参数是指主播端通过摄像设备获取人像视频后产生的参数,而由于在获取人像视频时会存在如美颜功能的模块的加入导致视频画质参数较高,因此,一般情况下用户视频数据的第二画质参数是高于电子沙盘数据中画质参数,那么当推流服务器的性能状态良好时,可以将其显示的最高画质直接调整到第二画质参数。以提供给用户更好的观看体验。
电子沙盘直播是伴随着主播对电子沙盘中的目标建筑进行讲解的过程,那么这里观众所观看的也是电子沙盘中的目标建筑,所以这里对于画质的最低要求可以是确保观众可以清楚看到目标建筑。因此,若推流服务器的当前性能状态一般时,可以根据目标建筑在电子沙盘数据中的画面占比大小来对第二画质参数进行调节得到第三画质参数,由于对于电子沙盘类目直播还设置有预设画质参数,该预设画质参数是结合了推流服务器历史性能状态设置的,有预防推流服务器内存占用过高的功能,因此得到了第三画质参数以后,还需要将第三画质参数与预设画质参数来进行比较,选取其中对推流服务器内存占用最小的画质参数来作为第一画质参数。
示例性地,请参阅图3,图3为本申请实施例提供的一种电子沙盘直播的结构示意图。如图3所示,该电子沙盘直播中包括用户视频数据和电子沙盘数据,该电子沙盘数据中包括三个建筑,若主播在直播过程中正在对建筑301进行讲解和描述,那么建筑301就是本实施例所提及的目标建筑。
在本申请实施例中,通过推流服务器的当前性能状态来对画质进行调节,当性能状态良好时,直接将用户视频数据中画质清晰度最高的第二画质参数作为直播显示画质参数,当性能状态一般时,根据目标建筑在电子沙盘数据中的画面占比来对第二画质参数进行调节得到第三画质参数,将第三画质参数与预设画质参数中的内存占用较小的画质参数作为直播显示画质参数。采用该方法进一步参照了推流服务器的性能,结合前述提出的预设画质参数,可以更精准地对画质参数进行调整,做到给观众更好的画质体验,又可以避免推流服务器的内存占用过高导致卡顿。
在一个可行的实施例中,第二画质参数包括第二帧率、第二码率和第二分辨率,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,包括:根据目标建筑在电子沙盘数据中的画面占比大小缩放第二帧率、第二码率和第二分辨率,得到第三画质参数。
其中,对直播有影响的画质参数一般包括帧率、码率和分辨率。帧率是是以帧称为单位的位图图像连续出现在显示器上的频率,其主要是影响画面的流畅度,帧率越高,流畅度越大,帧率越低,画面跳动感越强;码率是表示单位时间内传送比特的数目;分辨率决定了位图图像细节的精细程度,通常情况下,图像的分辨率越高,所包含的像素就越多,图像就越清晰。对于第二画质参数的调节是建立在推流服务器的当前性能状态一般的情况下,那么对于第二画质参数的调节主要是将其参数调低以使其对推流服务器的内存占用降低。即对于第二画质参数中的第二帧率、第二码率和第二分辨率按照目标建筑在电子沙盘数据中的画面占比大小进行缩放以得到第三画质参数。
示例性地,若此时第二帧率为a(单位fps),第二码率为b(单位kb/s),第二分辨率为c×d,若此时目标建筑在电子沙盘数据中的画面占比为2/3,则将其第二帧率、第二码率和第二分辨率按照目标建筑在电子沙盘数据中的画面占比大小2/3进行缩放得到第三画质参数,其中,第三画质包括第三帧率2a/3(单位fps),第三码率2b/3(单位kb/s),第三分辨率为(2c/3)×(2d/3)。
在本申请实施例中,将第二画质参数中的第二帧率、第二码率和第二分辨率按照目标建筑在电子沙盘数据中的画面占比大小进行缩放得到第三画质参数。采用该方法可以根据更具体的参数得到直播显示的画质参数,提升画质参数控制的准确度。
步骤204,根据第一画质参数显示电子沙盘数据和用户视频数据。
其中,该第一画质参数为直播时所显示的最高画质参数,即推流服务器将电子沙盘数据和用户视频数据根据第一画质参数进行显示后,观众可以在用户端设备上对该画质进行调节,但是其可调节的最高画质为第一画质参数。
在一个可行的实施例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,该方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳;将用户音频数据和用户视频数据根据用户音频时间戳和用户视频时间戳进行上传队列同步合并;第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数显示电子沙盘数据,以及根据第一画质参数同步显示用户音频数据和用户视频数据。
其中,推流服务器获取了用户音频数据和用户视频数据后,推流服务器基于用户视频数据和用户音频数据的采集驱动时间对每一帧的用户视频数据和用户音频数据添加对应的时间戳,即在驱动层,采集用户视频数据和用户音频数据时就已经对每一帧的用户视频数据和用户音频数据打上了对应的时间戳。时间戳是指使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。
在直播时经常会遇到的一个问题是人物视频跟音频不同步,而这个问题对观众的观看体验影响比较大。一般情况下,对于用户视频数据和用户音频数据进行显示时都是按照不同队列进行上传显示,这样就容易导致显示时人物视频跟音频不同步。为了解决这个问题,对每一帧用户视频数据和用户音频数据都添加了对应的时间戳之后,可以将用户视频数据和用户音频数据根据用户视频时间戳和用户音频时间戳按照上传队列进行同步合并,即将用户视频数据和用户音频数据根据用户视频时间戳和用户音频时间戳进行音视频同步之后由一个上传队列进行合并上传。
其中,由于用户音频数据时间戳和用户视频时间戳都是根据采集驱动时间来进行添加的,那么用户音频时间戳和用户视频时间戳之间存在一个统一的参考时钟,这个参考时钟可以是采集驱动设备的***时间,也可以是在推流服务器对其进行添加时间戳时根据采集驱动时间确定的一个参考时钟,对于用户视频数据和用户音频数据进行音视频同步需要依靠统一的参考时钟,按照每一帧的用户视频数据对应的时间戳和每一帧的用户音频数据对应的时间戳在参考时钟上的位置进行同步显示。
示例性地,请参阅图4,图4为本申请实施例提供的一种音视频同步的结构示意图。如图4所示,图4包括参考时钟、视频数据和音频数据。其中,视频数据对应的时间戳在参考时钟中是由0秒开始,而音频数据对应的时间戳在参考时钟中是由10秒开始,那么根据视频数据的时间戳和音频数据的时间戳来对视频数据和音频数据进行音视频同步,可以将音频数据中的第一帧数据排到视频数据对应时间戳为10秒的那一帧数据上,即在0秒的时候只播放视频数据,等到10秒的时候再播放音频数据。
请参阅图5,图5为本申请实施例提供的一种直播显示方法的流程示意图。如图5中方法51所示,方法51为本实施例所描述的显示方法,即将用户视频数据和用户音频数据根据时间戳进行同步后按照一个上传队列进行合并上传至用户端设备,同时将电子沙盘数据由另一个上传队列进行上传至用户端设备,以实现在用户端设备的直播显示。
在本申请实施例中,推流服务器对用户视频数据和用户音频数据添加了对应的时间戳之后,基于该用户视频时间戳和用户音频时间戳进行音视频同步之后由一个上传队列进行合并上传。采用该方法可以避免了由于音视频上传过程中产生的延迟导致音视频不同步。
在一个可行的实施例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,该方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳,对电子沙盘数据添加电子沙盘时间戳;根据第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据。
其中,上述实施例主要是针对人物视频和音频的同步的问题,但并未考虑电子沙盘数据的与人物视频音频的同步。因此本实施例中推流服务器除了对每一帧用户视频数据和用户音频数据添加对应时间戳之外,还对每一帧电子沙盘数据也添加对应的时间戳,并根据电子沙盘数据时间戳、用户视频时间戳和用户音频时间戳同步显示电子沙盘数据、用户视频数据和用户音频数据。同理,电子沙盘数据时间戳、用户视频时间戳和用户音频时间戳存在统一的参考时钟,并且也是依靠参考时钟来对电子沙盘数据、用户视频数据和用户音频数据进行同步显示。
请参阅图5,图5为本申请实施例提供的一种直播显示方法的流程示意图。如图5中方法52所示,方法52为本实施例所描述的显示方法,即将用户视频数据、用户音频数据和电子沙盘数据都根据时间戳进行同步后进行分别由不同的上传队列上传至用户端设备,以实现在用户端设备的直播显示。而在方法52中,之所以并未将用户视频数据、用户音频数据和电子沙盘数据按照一个上传队列合并上传至用户端设备,是因为若将这三种数据都按照一个上传队列上传会使得上传缓慢,导致直播延迟变高。
在本申请实施例中,推流服务器对电子沙盘数据、用户视频数据和用户音频数据都添加上对应的时间戳,并根据电子沙盘数据时间戳、用户视频时间戳和用户音频时间戳同步显示电子沙盘数据、用户视频数据和用户音频数据。采用该方法可以使得直播过程中电子沙盘数据、用户视频数据和用户音频数据都可以进行同步显示。
在一个可行的实施例中,根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据之后,该方法还包括:若用户视频时间戳中的最先时间和最后时间之差小于第一预设时间,读取用户视频数据中的最后一帧画面,将用户视频数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示用户视频数据中的最后一帧画面、电子沙盘数据和用户音频数据;和/或若电子沙盘时间戳中的最先时间和最后时间之差小于第一预设时间,读取电子沙盘数据中的最后一帧画面,将电子沙盘数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据中的最后一帧画面、用户视频数据和用户音频数据。
其中,在直播过程中,推流服务器会按照设定的频率来获取电子沙盘数据和用户视频数据,并且每一次获取的电子沙盘数据和用户视频数据分别都是同样的帧数。但是直播过程中主播端设备可能会出现问题,即在用户视频数据或电子沙盘数据的生成阶段存在问题,而用户视频数据或电子沙盘数据的生成中断可能会导致主播端设备跟推流服务器的连接断开。为了解决这个问题,本实施例对每一次获取到的用户视频数据和电子沙盘数据都会进行检测其对应时间戳的长度,即若用户视频数据时间戳或电子沙盘数据时间戳中的最先时间和最后时间之差小于第一预设时间,那么认为该数据在数据生成阶段存在问题,而为了避免其导致的直播中断,将该数据的最后一帧数据重新添加新的时间戳进行显示。
在本申请实施例中,对一次获取的用户视频数据和电子沙盘数据中时间戳的长度小于第一预设时间的,对该数据的最后一帧数据添加新的时间戳再进行显示。采用该方法可以避免因数据生成阶段出现问题导致的直播中断。
可以看出,本申请实施例中,获取电子沙盘数据和用户视频数据,获取推流服务器信息和预设画质参数,通过该推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,根据该第一画质参数显示该电子沙盘数据和该用户视频数据。采用该方法,可以获得电子沙盘直播的合理的画质参数,从而避免画质过高造成推流服务器的负担。
与上述所示的实施例一致的,请参阅图6a,图6a是本申请实施例提供的一种直播装置的功能单元组成框图,装置应用于推流服务器,如图6a所示,直播装置60包括:第一获取单元601,用于获取第一类直播数据和第二类直播数据,第一类直播数据包括电子沙盘数据,第二类直播数据包括用户视频数据;第二获取单元602,用于获取推流服务器信息和预设画质参数,预设画质参数与电子沙盘类目对应;生成单元603,用于根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数;显示单元604,用于根据第一画质参数显示电子沙盘数据和用户视频数据。
在一个可能的示例中,预设画质参数为根据不同时间段分别进行设置的画质参数,包括:获取推流服务器的历史内存占用比例;根据历史内存占用比例是否超出预设占用比例对预设画质参数进行设置,其中,第一时间段对应的预设占用比例为第一预设比例,第二时间段对应的预设比例为第二预设比例,第三时间段对应的预设比例为第三预设比例,其中,第一时间段、第二时间段和第三时间段满足从早到晚的顺序,第一预设比例大于第三预设比例,第三预设比例大于第二预设比例;当历史内存占用比例超出预设占用比例时,预设画质参数设置为一般画质,当历史内存占用比例未超出预设占用比例时,预设画质参数设置为高清画质。
在一个可能的示例中,推流服务器信息包括推流服务器的当前内存占用大小,根据推流服务器信息、预设画质参数、用户视频数据和电子沙盘数据得到第一画质参数,包括:若推流服务器的当前内存占用大小不大于预设内存占用大小,获取用户视频数据中的第二画质参数,将第二画质参数确定为第一画质参数;若推流服务器的当前内存占用大小大于预设内存占用大小,获取电子沙盘数据中的目标建筑,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,目标建筑为与当前直播主题相关的建筑;确定第三画质参数占用内存是否大于预设画质参数占用内存;若第三画质参数占用内存小于或等于预设画质参数占用内存,则将第三画质参数确定为第一画质参数;若第三画质参数占用内存大于预设画质参数占用内存,则将预设画质参数作为第一画质参数。
在一个可能的示例中,第二画质参数包括第二帧率、第二码率和第二分辨率,根据目标建筑在电子沙盘数据中的画面占比大小对第二画质参数进行调节得到第三画质参数,包括:根据目标建筑在电子沙盘数据中的画面占比大小缩放第二帧率、第二码率和第二分辨率,得到第三画质参数。
在一个可能的示例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳;将用户音频数据和用户视频数据根据用户音频时间戳和用户视频时间戳进行上传队列同步合并;第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数显示电子沙盘数据,以及根据第一画质参数同步显示用户音频数据和用户视频数据。
在一个可能的示例中,第二直播数据还包括用户音频数据,在根据第一画质参数显示电子沙盘数据和用户视频数据之前,方法还包括:对用户音频数据添加用户音频时间戳,对用户视频数据添加用户视频时间戳,对电子沙盘数据添加电子沙盘时间戳;根据第一画质参数显示电子沙盘数据和用户视频数据包括:根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据。
在一个可能的示例中,根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据、用户音频数据和用户视频数据之后,方法还包括:若用户视频时间戳中的最先时间和最后时间之差小于第一预设时间,读取用户视频数据中的最后一帧画面,将用户视频数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示用户视频数据中的最后一帧画面、电子沙盘数据和用户音频数据;和/或若电子沙盘时间戳中的最先时间和最后时间之差小于第一预设时间,读取电子沙盘数据中的最后一帧画面,将电子沙盘数据中的最后一帧画面添加新的时间戳,并根据第一画质参数,以及用户音频时间戳、用户视频时间戳和电子沙盘时间戳同步显示电子沙盘数据中的最后一帧画面、用户视频数据和用户音频数据。
可以理解的是,由于方法实施例与装置实施例为相同技术构思的不同呈现形式,因此,本申请中方法实施例部分的内容应同步适配于装置实施例部分,此处不再赘述。
在采用集成的单元的情况下,如图6b所示,图6b是本申请实施例提供的另一种直播装置的功能单元组成框图。在图6b中,直播装置61包括:处理模块612和通信模块611。处理模块612用于对直播装置的动作进行控制管理,例如,第一获取单元601、第二获取单元602、生成单元603和显示单元604的步骤,和/或用于执行本文所描述的技术的其它过程。通信模块611用于支持直播装置与其他设备之间的交互。如图6b所示,直播装置61还可以包括存储模块613,存储模块613用于存储直播装置的程序代码和数据。
其中,处理模块612可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块611可以是收发器、RF电路或通信接口等。存储模块613可以是存储器。
其中,上述方法实施例涉及的各场景的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。上述直播装置61均可执行上述图2所示的直播方法。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行计算机指令或计算机程序时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
图7是本申请实施例提供的一种电子设备的结构框图。如图7所示,电子设备700可以包括一个或多个如下部件:处理器701、与处理器701耦合的存储器702,其中存储器702可存储有一个或多个计算机程序,一个或多个计算机程序可以被配置为由一个或多个处理器701执行时实现如上述各实施例描述的方法。其中,电子设备700可以是上述推流服务器。
处理器701可以包括一个或者多个处理核。处理器701利用各种接口和线路连接整个电子设备700内的各个部分,通过运行或执行存储在存储器702内的指令、程序、代码集或指令集,以及调用存储在存储器702内的数据,执行电子设备700的各种功能和处理数据。可选地,处理器701可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogicArray,PLA)中的至少一种硬件形式来实现。处理器701可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、乘客界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器701中,单独通过一块通信芯片进行实现。
存储器702可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory,ROM)。存储器702可用于存储指令、程序、代码、代码集或指令集。存储器702可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等。存储数据区还可以存储电子设备700在使用中所创建的数据等。
可以理解的是,电子设备700可包括比上述结构框图中更多或更少的结构元件,例如,包括电源模块、物理按键、WiFi(Wireless Fidelity,无线保真)模块、扬声器、蓝牙模块、传感器等,在此不进行限定。
本申请实施例提供了一种计算机可读存储介质,其中,计算机可读存储介质中存储有程序数据,该程序数据在被处理器执行时,用于执行上述方法实施例中记载的任何一种直播方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种直播方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括接收端和/或发送端。
需要说明的是,对于前述的任一种直播方法的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现所公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域普通技术人员可以理解上述任一种直播方法的方法实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请一种直播方法及装置的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请一种直播方法及装置的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
本申请是参照本申请实施例的方法、硬件产品和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
可以理解的是,凡是被控制或者被配置以用于执行本申请一种直播方法的方法实施例所描述的流程图的处理方法的产品,如上述流程图的终端以及计算机程序产品,均属于本申请所描述的相关产品的范畴。
显然,本领域的技术人员可以对本申请提供的一种直播方法及装置进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (9)

1.一种直播方法,其特征在于,应用于推流服务器,所述方法包括:
获取第一类直播数据和第二类直播数据,所述第一类直播数据包括电子沙盘数据,所述第二类直播数据包括用户视频数据;
获取推流服务器信息和预设画质参数,所述预设画质参数与电子沙盘类目对应;
根据所述推流服务器信息、所述预设画质参数、所述用户视频数据和所述电子沙盘数据得到第一画质参数;
根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据;
其中,所述预设画质参数为根据不同时间段分别进行设置的画质参数,包括:
获取所述推流服务器的历史内存占用比例;
根据所述历史内存占用比例是否超出预设占用比例对所述预设画质参数进行设置,其中,第一时间段对应的预设占用比例为第一预设比例,第二时间段对应的预设比例为第二预设比例,第三时间段对应的预设比例为第三预设比例,其中,所述第一时间段、所述第二时间段和所述第三时间段满足从早到晚的顺序,所述第一预设比例大于所述第三预设比例,所述第三预设比例大于所述第二预设比例;
当所述历史内存占用比例超出预设占用比例时,所述预设画质参数设置为一般画质,当所述历史内存占用比例未超出预设占用比例时,所述预设画质参数设置为高清画质。
2.根据权利要求1所述的方法,其特征在于,所述推流服务器信息包括所述推流服务器的当前内存占用大小,根据所述推流服务器信息、所述预设画质参数、所述用户视频数据和所述电子沙盘数据得到第一画质参数,包括:
若所述推流服务器的当前内存占用大小不大于预设内存占用大小,获取所述用户视频数据中的第二画质参数,将所述第二画质参数确定为所述第一画质参数;
若所述推流服务器的当前内存占用大小大于所述预设内存占用大小,获取所述电子沙盘数据中的目标建筑,根据所述目标建筑在所述电子沙盘数据中的画面占比大小对所述第二画质参数进行调节得到第三画质参数,所述目标建筑为与当前直播主题相关的建筑;
确定所述第三画质参数占用内存是否大于所述预设画质参数占用内存;
若所述第三画质参数占用内存小于或等于所述预设画质参数占用内存,则将所述第三画质参数确定为所述第一画质参数;
若所述第三画质参数占用内存大于所述预设画质参数占用内存,则将所述预设画质参数作为所述第一画质参数。
3.根据权利要求2所述的方法,其特征在于,所述第二画质参数包括第二帧率、第二码率和第二分辨率,所述根据所述目标建筑在所述电子沙盘数据中的画面占比大小对所述第二画质参数进行调节得到所述第三画质参数,包括:
根据所述目标建筑在所述电子沙盘数据中的画面占比大小缩放所述第二帧率、所述第二码率和所述第二分辨率,得到所述第三画质参数。
4.根据权利要求1所述的方法,其特征在于,所述第二类直播数据还包括用户音频数据,在根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据之前,所述方法还包括:
对所述用户音频数据添加用户音频时间戳,对所述用户视频数据添加用户视频时间戳;
将所述用户音频数据和所述用户视频数据根据所述用户音频时间戳和所述用户视频时间戳进行上传队列同步合并;
所述第一画质参数显示所述电子沙盘数据和所述用户视频数据包括:
根据所述第一画质参数显示所述电子沙盘数据,以及根据所述第一画质参数同步显示所述用户音频数据和所述用户视频数据。
5.根据权利要求1所述的方法,其特征在于,所述第二类直播数据还包括用户音频数据,在根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据之前,所述方法还包括:
对所述用户音频数据添加用户音频时间戳,对所述用户视频数据添加用户视频时间戳,对所述电子沙盘数据添加电子沙盘时间戳;
所述根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据包括:
根据所述第一画质参数,以及所述用户音频时间戳、所述用户视频时间戳和所述电子沙盘时间戳同步显示所述电子沙盘数据、所述用户音频数据和所述用户视频数据。
6.根据权利要求5所述的方法,其特征在于,根据所述第一画质参数,以及所述用户音频时间戳、所述用户视频时间戳和所述电子沙盘时间戳同步显示所述电子沙盘数据、所述用户音频数据和所述用户视频数据之后,所述方法还包括:
若所述用户视频时间戳中的最先时间和最后时间之差小于第一预设时间,读取所述用户视频数据中的最后一帧画面,将所述用户视频数据中的最后一帧画面添加新的时间戳,并根据所述第一画质参数,以及所述用户音频时间戳、所述用户视频时间戳和所述电子沙盘时间戳同步显示所述用户视频数据中的最后一帧画面、所述电子沙盘数据和所述用户音频数据;和/或
若所述电子沙盘时间戳中的最先时间和最后时间之差小于第一预设时间,读取所述电子沙盘数据中的最后一帧画面,将所述电子沙盘数据中的最后一帧画面添加新的时间戳,并根据所述第一画质参数,以及所述用户音频时间戳、所述用户视频时间戳和所述电子沙盘时间戳同步显示所述电子沙盘数据中的最后一帧画面、所述用户视频数据和所述用户音频数据。
7.一种直播装置,其特征在于,所述装置包括:
第一获取单元,用于获取第一类直播数据和第二类直播数据,所述第一类直播数据包括电子沙盘数据,所述第二类直播数据包括用户视频数据;
第二获取单元,用于获取推流服务器信息和预设画质参数,所述预设画质参数与电子沙盘类目对应;
生成单元,用于根据所述推流服务器信息、所述预设画质参数、所述用户视频数据和所述电子沙盘数据得到第一画质参数;
显示单元,用于根据所述第一画质参数显示所述电子沙盘数据和所述用户视频数据;
其中,所述预设画质参数为根据不同时间段分别进行设置的画质参数,包括:
获取所述推流服务器的历史内存占用比例;
根据所述历史内存占用比例是否超出预设占用比例对所述预设画质参数进行设置,其中,第一时间段对应的预设占用比例为第一预设比例,第二时间段对应的预设比例为第二预设比例,第三时间段对应的预设比例为第三预设比例,其中,所述第一时间段、所述第二时间段和所述第三时间段满足从早到晚的顺序,所述第一预设比例大于所述第三预设比例,所述第三预设比例大于所述第二预设比例;
当所述历史内存占用比例超出预设占用比例时,所述预设画质参数设置为一般画质,当所述历史内存占用比例未超出预设占用比例时,所述预设画质参数设置为高清画质。
8.一种电子装置,其特征在于,所述装置包括:
处理器、存储器、通信接口,所述处理器、所述存储器和所述通信接口相互连接,并且完成相互间的通信工作;
所述存储器上存储有可执行程序代码,所述通信接口用于进行无线通信;
所述处理器用于调取所述存储器上存储的所述可执行程序代码,执行如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-6任一项所述的方法。
CN202211045380.1A 2022-08-30 2022-08-30 一种直播方法及装置 Active CN115499673B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211045380.1A CN115499673B (zh) 2022-08-30 2022-08-30 一种直播方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211045380.1A CN115499673B (zh) 2022-08-30 2022-08-30 一种直播方法及装置

Publications (2)

Publication Number Publication Date
CN115499673A CN115499673A (zh) 2022-12-20
CN115499673B true CN115499673B (zh) 2023-10-20

Family

ID=84467280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211045380.1A Active CN115499673B (zh) 2022-08-30 2022-08-30 一种直播方法及装置

Country Status (1)

Country Link
CN (1) CN115499673B (zh)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017113734A1 (zh) * 2015-12-30 2017-07-06 乐视控股(北京)有限公司 一种视频的多点同屏播放方法及***
WO2017148413A1 (zh) * 2016-03-03 2017-09-08 腾讯科技(深圳)有限公司 一种内容呈现的方法、用户设备及***
CN109068157A (zh) * 2018-08-21 2018-12-21 北京潘达互娱科技有限公司 一种直播中推流参数的调整方法、装置及服务器
CN109274981A (zh) * 2018-09-27 2019-01-25 深圳点猫科技有限公司 一种用于教育云平台的直播互动方法及装置
CN109348279A (zh) * 2018-09-26 2019-02-15 广州虎牙信息科技有限公司 一种推流方法、装置、设备及存储介质
CN109413508A (zh) * 2018-10-26 2019-03-01 广州虎牙信息科技有限公司 图像混合的方法、装置、设备、推流方法及直播***
CN109462773A (zh) * 2018-08-31 2019-03-12 北京潘达互娱科技有限公司 一种推流方法、装置、电子设备及存储介质
CN109862384A (zh) * 2019-03-13 2019-06-07 北京河马能量体育科技有限公司 一种音视频自动同步方法及同步***
CN110120087A (zh) * 2019-04-15 2019-08-13 深圳市思为软件技术有限公司 三维虚拟沙盘的标签标注方法、装置及终端设备
CN111405312A (zh) * 2020-04-26 2020-07-10 广州酷狗计算机科技有限公司 直播推流方法、装置、终端、服务器及存储介质
WO2021179783A1 (zh) * 2020-03-11 2021-09-16 叠境数字科技(上海)有限公司 基于自由视点的视频直播处理方法、设备、***、芯片及介质
CN113423018A (zh) * 2021-08-24 2021-09-21 腾讯科技(深圳)有限公司 一种游戏数据处理方法、装置及存储介质
CN114281449A (zh) * 2021-12-07 2022-04-05 万翼科技有限公司 建筑可视化显示处理方法及相关设备
CN114363663A (zh) * 2021-12-28 2022-04-15 苏州铁头电子信息科技有限公司 一种直播观看方法、装置及云视频服务器
CN114640864A (zh) * 2022-03-08 2022-06-17 广州方硅信息技术有限公司 直播间内播放小视频的方法、装置、计算机设备及介质
WO2022142481A1 (zh) * 2020-12-31 2022-07-07 杭州星犀科技有限公司 音视频数据的处理方法、直播装置、电子设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701018B2 (en) * 2015-08-27 2020-06-30 Mobilitie, Llc System and method for customized message delivery

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017113734A1 (zh) * 2015-12-30 2017-07-06 乐视控股(北京)有限公司 一种视频的多点同屏播放方法及***
WO2017148413A1 (zh) * 2016-03-03 2017-09-08 腾讯科技(深圳)有限公司 一种内容呈现的方法、用户设备及***
CN109068157A (zh) * 2018-08-21 2018-12-21 北京潘达互娱科技有限公司 一种直播中推流参数的调整方法、装置及服务器
CN109462773A (zh) * 2018-08-31 2019-03-12 北京潘达互娱科技有限公司 一种推流方法、装置、电子设备及存储介质
CN109348279A (zh) * 2018-09-26 2019-02-15 广州虎牙信息科技有限公司 一种推流方法、装置、设备及存储介质
CN109274981A (zh) * 2018-09-27 2019-01-25 深圳点猫科技有限公司 一种用于教育云平台的直播互动方法及装置
CN109413508A (zh) * 2018-10-26 2019-03-01 广州虎牙信息科技有限公司 图像混合的方法、装置、设备、推流方法及直播***
CN109862384A (zh) * 2019-03-13 2019-06-07 北京河马能量体育科技有限公司 一种音视频自动同步方法及同步***
CN110120087A (zh) * 2019-04-15 2019-08-13 深圳市思为软件技术有限公司 三维虚拟沙盘的标签标注方法、装置及终端设备
WO2021179783A1 (zh) * 2020-03-11 2021-09-16 叠境数字科技(上海)有限公司 基于自由视点的视频直播处理方法、设备、***、芯片及介质
CN111405312A (zh) * 2020-04-26 2020-07-10 广州酷狗计算机科技有限公司 直播推流方法、装置、终端、服务器及存储介质
WO2022142481A1 (zh) * 2020-12-31 2022-07-07 杭州星犀科技有限公司 音视频数据的处理方法、直播装置、电子设备和存储介质
CN113423018A (zh) * 2021-08-24 2021-09-21 腾讯科技(深圳)有限公司 一种游戏数据处理方法、装置及存储介质
CN114281449A (zh) * 2021-12-07 2022-04-05 万翼科技有限公司 建筑可视化显示处理方法及相关设备
CN114363663A (zh) * 2021-12-28 2022-04-15 苏州铁头电子信息科技有限公司 一种直播观看方法、装置及云视频服务器
CN114640864A (zh) * 2022-03-08 2022-06-17 广州方硅信息技术有限公司 直播间内播放小视频的方法、装置、计算机设备及介质

Also Published As

Publication number Publication date
CN115499673A (zh) 2022-12-20

Similar Documents

Publication Publication Date Title
US20180061364A1 (en) Variable refresh rate video capture and playback
US20220103873A1 (en) Computer program, method, and server apparatus
CN108924582B (zh) 视频录制方法、计算机可读存储介质及录播***
JP2009111972A (ja) 時間ベースのメタデータを用いた動的なメディアのインタラクション
CN106507200B (zh) 视频播放内容***方法和***
WO2023104102A1 (zh) 一种直播评论展示方法、装置、设备、程序产品及介质
CN108882055B (zh) 视频直播方法及***、合成视频流的方法及装置
CN112272327B (zh) 数据处理方法、装置、存储介质及设备
WO2021139359A1 (zh) 图像处理方法、装置、电子设备及存储介质
CN112118472A (zh) 用于播放多媒体的方法和装置
US20230283888A1 (en) Processing method and electronic device
US11076197B1 (en) Synchronization of multiple video-on-demand streams and methods of broadcasting and displaying multiple concurrent live streams
CN114584821A (zh) 视频处理方法及装置
CN114554277B (zh) 多媒体的处理方法、装置、服务器及计算机可读存储介质
CN115499673B (zh) 一种直播方法及装置
CN109862385B (zh) 直播的方法、装置、计算机可读存储介质及终端设备
CN110913118A (zh) 视频处理方法、装置及存储介质
US20230239525A1 (en) Server, method and terminal
CN115767158A (zh) 同步播放方法、终端设备及存储介质
CN113727125B (zh) 直播间的截图方法、装置、***、介质以及计算机设备
CN107135407B (zh) 一种钢琴视频教学中的同步方法及***
CN111064981A (zh) 一种视频串流的***及方法
CN107004018B (zh) 数据处理方法及装置
CN114866829A (zh) 同步播放的控制方法及装置
JP2022188335A (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