一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视频直播方法、装置及计算机设备与流程

2021-10-29 23:19:00 来源:中国专利 TAG:直播 装置 实施 计算机 方法


1.本技术实施例涉及网络直播技术领域,尤其涉及一种视频直播方法、装置及计算机设备。


背景技术:

2.随着网络通信技术的进步,用户可参与的线上娱乐项目越来越多,其中,网络直播由于实时性强且交互性强的特点,受到越来越多用户的喜爱。
3.在网络直播场景下,观众可以通过访问安装在观众客户端上的直播应用程序,选择进入任一直播间,触发观众客户端为观众加载直播界面,在直播间内观看直播。
4.但是,由于目前直播间中显示的视频画面无法很好地满足观众的观看需求,导致观众难以感受到优质的直播观看体验,进而不利于提高观众的留存率和观看时长。


技术实现要素:

5.本技术实施例提供了一种视频直播方法、装置及计算机设备,可以解决直播观看体验不佳,观众的留存率和观看时长较低的技术问题,该技术方案如下:
6.第一方面,本技术实施例提供了一种视频直播方法,包括步骤:
7.主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器;
8.服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流;
9.观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
10.第二方面,本技术实施例提供了一种视频直播方法,包括步骤:
11.获取主播客户端发送的横向显示视频流和竖向显示视频流;
12.响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端,使观众客户端接收与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流。
13.第三方面,本技术实施例提供了一种视频直播装置,包括:
14.双视频流采集单元,用于主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器;
15.下发单元,用于服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端;
其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流;
16.显示单元,用于观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
17.第四方面,本技术实施例提供了一种计算机设备,处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第二方面所述方法的步骤。
18.第五方面,本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如第一方面或第二方面所述方法的步骤。
19.在本技术实施例中,主播客户端控制第一摄像头采集横向显示视频流,控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流上传至服务器,服务器会接收该横向显示视频流和竖向显示视频流,从而在响应观众客户端的直播界面加载指令时,实现根据观众客户端类型进行分端推流,下发与观众客户端类型对应的视频流至观众客户端,该观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流,进而观众客户端能够将类型对应的视频流显示在其直播界面中,从而有效地避免了视频流无法很好地呈现在直播界面中的问题,能够有效提升观众的视频观看体验,提高观众的留存率和观看时长。
20.为了更好地理解和实施,下面结合附图详细说明本技术的技术方案。
附图说明
21.图1为本技术实施例提供的视频直播方法的应用场景示意图;
22.图2为相关技术直播界面中视频画面的显示示意图;
23.图3为本技术第一实施例提供的视频直播方法的流程示意图;
24.图4为本技术实施例提供的显示有双摄像头直播选择控件的操作界面示意图;
25.图5为本技术实施例提供的直播界面中视频画面的显示示意图;
26.图6为本技术实施例提供的直播界面中视频画面的另一显示示意图;
27.图7为本技术第一实施例提供的视频直播方法的另一流程示意图;
28.图8为本技术实施例提供的直播界面中视频画面的又一显示示意图;
29.图9为本技术第一实施例提供的视频直播方法的又一流程示意图;
30.图10为本技术第二实施例提供的视频直播方法的流程示意图;
31.图11为本技术第三实施例提供的视频直播方法的流程示意图;
32.图12为本技术第四实施例提供的视频直播方法的流程示意图;
33.图13为本技术第五实施例提供的视频直播装置的结构示意图;
34.图14为本技术第六实施例提供的计算机设备的结构示意图。
具体实施方式
35.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附
权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
36.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
37.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”/“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
38.本领域技术人员可以理解,本技术所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personalcommunications service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personal digital assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(global positioningsystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobile internet device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
39.本技术所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的计算机设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
40.需要指出的是,本技术所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本技术的网络部署方式的实施方式。
41.请参阅图1,图1为本技术实施例提供的视频直播方法的应用场景示意图,该应用场景包括本技术实施例提供的主播客户端101、服务器102和观众客户端103,主播客户端101与观众客户端103通过服务器102进行交互。
42.其中,主播客户端101是指发送网络直播视频的一端,通常来说是网络直播中主播
(即,直播主播用户)所采用的客户端。
43.观众客户端103是指接收和观看网络直播视频的一端,通常来说是网络直播中观看视频的观众(即,直播观众用户)所采用的客户端。
44.主播客户端101和观众客户端103所指向的硬件,本质上是指计算机设备,具体地,如图1所示,其可以是智能手机、智能交互平板和个人计算机等类型的计算机设备。主播客户端101和所述观众客户端103均可以通过公知的网络接入方式接入互联网,与服务器102建立数据通信链路。
45.服务器102作为一个业务服务器,其可以负责进一步连接起相关音频数据服务器、视频流服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备,例如图1中所示的主播客户端101和观众客户端103提供服务。
46.本技术实施例中,主播客户端101与观众客户端103可以加入同一个直播间(即直播频道),上述的直播间是指依靠互联网技术实现的一种聊天室,通常具备音视频播控功能。主播通过主播客户端101在直播间内进行直播,观众客户端103的观众可以登录服务器102进入直播间观看上直播。
47.在直播间内,主播与观众之间可通过语音、视频、文字等公知的线上交互方式来实现互动,一般是主播以音视频流的形式为观众表演节目,并且在互动过程中还可产生经济交易行为。当然,直播间的应用形态并不局限于在线娱乐,也可推广到其他相关场景中,例如:视频会议场景、产品推介销售场景以及其他任何需要类似互动的场景中。
48.具体地,观众观看直播的过程如下:观众可以点击访问安装在观众客户端103上的直播应用程序,并选择进入任意一个直播间,触发观众客户端103为该观众加载直播界面,该直播界面内包括若干交互组件,例如:音视频组件、虚拟礼物栏组件以及公屏组件等,通过加载这些交互组件可以使观众在直播间内观看直播,并进行多种线上互动。
49.在相关技术中,主播在直播间进行直播时,主播客户端采集的视频流若是横向显示视频流,其则会发送该横向显示视频流至服务器,那么在观众进入该直播间时,服务器下发至观众客户端的也会是横向显示视频流。此时,若观众客户端的屏幕模式是竖屏模式,则观众仅能在直播界面中的部分区域内看到主播的视频画面。
50.具体地,请参阅图2,图2为相关技术直播界面中视频画面的显示示意图。图2中显示直播界面201的观众客户端为智能手机等移动设备,用户的常用屏幕模式为竖屏模式。若主播客户端采集的视频流是横向显示视频流,那么在观众通过该观众客户端观看直播时,直播界面201中的视频画面202就是横向显示的,因而,观众只能在直播界面201中的部分区域看到视频画面202,从而会影响观众的视频观看体验。
51.相应可以理解的是,若主播客户端采集的视频流是竖向显示视频流,观众客户端的屏幕模式是横屏模式,那么观众同样也只能在直播界面中的部分区域内看到主播的视频画面。
52.在本技术实施例中,考虑到观众用户使用的观众客户端的类型不同,故其常用的屏幕模式也是不同的,因而,为了提升观众的视频观看体验,提出了一种视频直播方法。请参阅图3,图3为本技术第一实施例提供的视频直播方法的流程示意图,该方法包括如下步骤:
53.s101:主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频
流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器。
54.s102:服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流。
55.s103:观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
56.在本实施例中,是从客户端和服务器两个执行主体对视频直播方法进行描述的。其中,客户端包括主播客户端和观众客户端。
57.关于步骤s101,主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器。
58.其中,第一摄像头和第二摄像头可以均为主播客户端的内置摄像头(即,主播客户端的自带摄像头),也可以均为与主播客户端建立连接的外接摄像头,还可以其中一个摄像头为主播客户端的内置摄像头,另一个摄像头为与主播客户端建立连接的外接摄像头。
59.一般情况下,若主播客户端为pc机(个人计算机)等类型的设备时,其通常只会配置至多一个的内置摄像头,因此,需要至少一个外接摄像头与pc机建立连接,实现双视频流采集。若主播客户端为手机等类型的设备时,其通常会配置至少一个内置摄像头,因此,往往最多需要外接一个摄像头与手机建立连接,实现双视频流采集。
60.外接摄像头与pc机、手机等设备建立连接的方式可以为有线连接或无线连接,在此不进行限定。
61.在本技术实施例中,第一摄像头用于采集横向显示视频流,第二摄像头用于采集竖向显示视频流。
62.其中,横向显示视频流是指视频分辨率的水平方向上的像素点数量大于垂直方向上的像素点的视频流,竖向显示视频流是指视频分辨率的水平方向上的像素点数量小于垂直方向上的像素点的视频流。
63.具体地,对于内置摄像头来说,可以通过调节内置摄像头的拍摄参数,设置内置摄像头拍摄的视频流是横向显示视频流还是竖向显示视频流,还可以通过旋转主播客户端的拍摄角度(常见于智能手机等移动设备),达到旋转内置摄像头的拍摄角度的目的,设置其拍摄的视频流是横向显示视频流还是竖向显示视频流。
64.对于外接摄像头来说,除了上述方式外,还可以通过调整摄像头本身的拍摄角度,设置其拍摄的视频流是横向显示视频流还是竖向显示视频流,例如:将原拍摄横向显示视频流的摄像头旋转90度之后,即可拍摄竖向显示视频流。
65.在一个可选的实施例中,在主播客户端响应于双视频流采集指令之前,会预先在主播客户端内进行第一摄像头和第二摄像头的配置,确定由哪一摄像头作为第一摄像头,哪一摄像头作为第二摄像头,从而,在响应双视频流采集指令时,主播客户端能够直接确定控制哪两个摄像头分别进行横向显示视频流和竖向显示视频流的采集。
66.下面将说明服务器在何种情况下会下发双视频流采集指令至主播客户端。
67.首先,在主播开启直播之前,主播客户端会先获取摄像头参数,根据摄像头参数判
断主播客户端是否支持双摄像头直播,若是,在操作界面中显示双摄像头直播选择控件。
68.其中,摄像头参数包括但不限于可控制的摄像头数量、以及摄像头拍摄的视频流的视频分辨率等。
69.操作界面是指开启直播前在主播客户端中显示的操作界面。
70.双摄像头直播选择控件是指用于接收主播的双摄像头直播选择信息的控件。
71.具体地,在主播客户端根据摄像头参数判断主播客户端支持双摄像头直播时,主播客户端获取双摄像头直播选择控件数据,根据双摄像头直播选择控件数据,在操作界面中显示双摄像头直播选择控件。
72.其中,双摄像头直播选择控件数据可以是主播客户端中预存储的控件数据,也可以是主播客户端从服务器调取的控件数据。
73.该双摄像头直播选择控件数据包括双摄像头直播选择控件的显示数据和功能数据。显示数据用于确定双摄像头直播选择控件的显示样式、显示尺寸和显示位置等,功能数据用于实现获取主播的双摄像头直播选择信息的功能。
74.请参阅图4,图4为本技术实施例提供的显示有双摄像头直播选择控件的操作界面示意图,图4所示的操作界面401中显示有双摄像头直播选择控件402和直播开启控件403,主播可以通过与双摄像头直播选择控件402交互,输入双摄像头直播选择信息,实现启动双摄像头直播或不启动双摄像头直播。
75.在一个可选的实施例中,若主播选择启动双摄像头直播,还可以在操作界面401中先显示第一摄像头采集的横向显示视频流和第二摄像头采集的竖向显示视频流,以使主播可以在操作界面401进行双摄像头直播下的视频预览。
76.之后,主播可以通过与直播开启控件403交互,例如:点击直播开启控件403,触发主播客户端发送直播开启指令至服务器。
77.服务器响应于主播客户端发送的直播开启指令,获取主播的双摄像头直播选择信息,若主播的双摄像头直播选择信息为启用双摄像头直播,则发送双视频流采集指令至主播客户端。
78.在一个可选的实施例中,直播开启指令中可包括主播标识、直播间标识和双摄像头直播选择信息,因而,服务器解析直播开启指令后,可以直接获取到双摄像头直播选择信息,确定是否发送双视频流采集指令至主播客户端。
79.在另一个可选的实施例中,直播开启指令中可以不包括双摄像头直播选择信息,那么服务器在响应于主播客户端发送的直播开启指令时,还需从主播客户端调取该双摄像头直播选择信息,之后再根据该双摄像头直播选择信息,确定是否发送双视频流采集指令至主播客户端。
80.关于步骤s102,服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端。
81.观众在选择进入某一直播间观看直播时,会触发观众客户端发送直播界面加载指令至服务器,服务器响应于该直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端。
82.在本技术实施例中,观众客户端类型分为两种,一类为常用屏幕模式为竖屏模式的计算机设备,例如:智能手机等,另一类为常用屏幕模式为横屏模式的计算机设备,例如:
pc机等。
83.在一个可选的实施例中,在服务器中需要预先设置哪些型号的计算机设备为常用屏幕模式为竖屏模式的计算机设备,哪些型号的计算机设备为常用屏幕模式为横屏模式的计算机设备,从而使服务器能够根据观众客户端型号确定观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端。
84.具体地,对于常用屏幕模式为横屏模式的观众客户端,观众客户端类型对应的视频流为横向显示视频流,对于常用屏幕模式为竖屏模式的观众客户端,观众客户端类型对应的视频流为竖向显示视频流。
85.通过将与观众客户端类型对应的视频流下发至观众客户端,可以使得在直播间播放的视频的显示方向更适配于该类型的观众客户端。
86.针对步骤s103,观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
87.请参阅图5和图6,图5为本技术实施例提供的直播界面中视频画面的显示示意图,图6为本技术实施例提供的直播界面中视频画面的另一显示示意图。
88.其中,图5中显示直播界面的观众客户端为智能手机等计算机设备,用户的常用屏幕模式为竖屏模式,因此,服务器下发至该观众客户端的视频流为竖向显示视频流,可以看到,相较于图2所示的视频画面,该视频画面501能在观众客户端中全屏展示。
89.需要说明的是,视频流在直播界面中显示是通过逐帧显示视频画面的方式实现的,因此,图2、图5以及图6中提供的显示示意图仅能以显示视频画面的形式示出。
90.图6中显示直播界面的观众客户端为pc机等计算机设备,用户的常用屏幕模式为横屏模式,因此,服务器下发至该观众客户端的视频流为横向显示视频流,同样地,由于观众客户端显示的是与客户端类型对应的视频流,因而,该视频画面601能在观众客户端的显示屏中全屏展示。
91.在本技术实施例中,主播客户端控制第一摄像头采集横向显示视频流,控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流上传至服务器,服务器会接收该横向显示视频流和竖向显示视频流,从而在响应观众客户端的直播界面加载指令时,实现根据观众客户端类型进行分端推流,下发与观众客户端类型对应的视频流至观众客户端,该观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流,进而观众客户端能够将类型对应的视频流显示在其直播界面中,从而有效地避免了视频流无法很好地呈现在直播界面中的问题,能够有效提升观众的视频观看体验,提高观众的留存率和观看时长。
92.为进一步满足观众的视频观看需求,提高观众的视频观看体验,请参阅图7,图7为本技术第一实施例提供的视频直播方法的另一流程示意图,该视频直播方法还包括步骤s104~s105,具体如下:
93.s104:服务器响应于观众客户端发送的视频流切换指令,若观众客户端的直播界面中显示的当前显示视频流为横向显示视频流,则将竖向显示视频流下发至观众客户端;若观众客户端的直播界面中显示的当前显示视频流为竖向显示视频流,则将横向显示视频流下发至观众客户端。
94.s105:观众客户端接收横向显示视频流,将在直播界面中显示的当前显示视频流
切换为横向显示视频流,或者,观众客户端接收竖向显示视频流,将在直播界面中显示的当前显示视频流切换为竖向显示视频流。
95.下面将先说明观众客户端发送视频流切换指令至服务器的过程,具体如下:
96.在一个可选的实施例中,在观众客户端的直播界面中显示有视频流切换控件,观众通过与该视频流切换控件交互,可以触发观众客户端生成视频流切换指令,将该视频流切换指令发送至服务器。
97.请参阅图5,其直播界面中显示有视频流切换控件502,通过点击该视频流切换控件502,则可以触发观众客户端生成视频流切换指令。
98.在另一个可选的实施例中,观众可以通过切换观众客户端的屏幕模式,触发观众客户端生成视频流切换指令,将该视频流切换指令发送至服务器。
99.具体地,观众切换观众客户端的屏幕模式的方式可以通过设置屏幕模式参数,也可以通过重力感应的方式。
100.在本技术实施例中,服务器可以根据当前下发至该观众客户端的视频流,确定该观众客户端的直播界面中显示的当前显示视频流是横向显示视频流还是竖向显示视频流。
101.服务器还可以根据视频流切换指令中的当前显示视频流的类型标识,确定该观众客户端的直播界面中显示的当前显示视频流是横向显示视频流还是竖向显示视频流。此种情况下,观众客户端生成的视频流切换指令不仅要包括观众客户端标识等,还需要包括当前显示视频流的类型标识。
102.观众客户端在接收到横向显示视频流时,将在直播界面中显示的当前显示视频流切换为横向显示视频流,或者,观众客户端在接收到竖向显示视频流,将在直播界面中显示的当前显示视频流切换为竖向显示视频流。
103.下面以观众客户端当前显示视频流为竖向显示视频流,在其接收到横向显示视频流时,如何进行视频流切换显示进行说明。
104.在一个可选的实施例中,若观众仅通过与视频流切换控件交互,切换当前显示视频流,而未切换观众客户端的屏幕模式,那么观众客户端接收到横向显示视频流时,该横向显示视频流将在原屏幕模式下的观众客户端中播放。
105.请同时参阅图5和图2,图5中,观众客户端采用的原屏幕模式为竖屏模式,其播放的视频流为竖向显示视频流,因此,图5的直播界面中呈现的视频画面501是竖向显示视频画面,若观众点击该视频流切换控件502,观众客户端会接收到服务器发送的横向显示视频流,将该横向显示视频流显示在直播界面中,此时由于观众客户端的屏幕模式依旧为竖屏模式,因此,会在竖屏模式下的直播界面中显示横向显示视频画面,类似于图2所示的视频画面。
106.需要说明的是,在切换当前显示视频流时,直播界面中视频窗口的尺寸和位置通常也会发生改变,即,视频窗口也会从竖向显示的视频窗口转化为横向显示的视频窗口,但是,在本技术实施例中,也可以不改变视频窗口的尺寸和位置,直接在原竖向显示的视频窗口中的子区域内显示横向显示视频画面。可选的,观众还可以通过在原竖向显示的视频窗口中拖动该横向显示视频画面,调整其在视频窗口中的显示位置。
107.在另一个可选的实施例中,若观众是通过切换观众客户端的屏幕模式,切换当前显示视频流,或者,观众通过与视频流切换控件交互切换当前显示视频流,并且切换了观众
客户端的屏幕模式,那么观众客户端在接收到横向显示视频流时,该视频流将在切换屏幕模式后的观众客户端中播放。
108.请参阅图8,图8为本技术实施例提供的直播界面中视频画面的又一显示示意图。图8中观众客户端切换屏幕模式后,采用的是横屏模式,其播放的视频流为横向显示视频流,因此,图8中直播界面中呈现的视频画面801是横向显示视频画面,视频画面801可以在观众客户端中全屏展示。
109.上述图2、图5和图8中显示直播界面的观众客户端均为智能手机等移动设备,可以理解的是,在显示直播界面的观众客户端为pc机的情况下,切换显示的方式与上述是相同的,不同点在于一般pc机不具备重力感应功能,在切换屏幕模式时,仅能通过设置屏幕模式参数切换屏幕模式。
110.在主播启用双摄像头直播时,为了提高主播的直播体验,请参阅图9,图9为本技术第一实施例提供的视频直播方法的又一流程示意图,该视频直播方法还包括步骤s106,具体如下:
111.s106:主播客户端获取混流后的视频流,将所混流后的视频流显示在主播客户端的直播界面中;其中,混流后的视频流是将横向显示视频流和竖向显示视频流混流后得到的。
112.在一个可选的实施例中,服务器对横向显示视频流和竖向显示视频流进行混流,之后再将混流后的视频流发送至主播客户端。
113.在另一个可选的实施例中,服务器发送横向显示视频流和竖向显示视频流至主播客户端,由主播客户端对横向显示视频流和竖向显示视频流进行混流。
114.主播客户端在获取到混流后的视频流后,将混流后的视频流显示在主播客户端的直播界面中,此时主播可以在直播界面中看到双视频画面。
115.对于混流的方式来说,可以将横向显示视频流和竖向显示视频流以并列显示的形式进行混流,即,混流后的视频流中各帧视频画面中,横向显示视频画面和竖向显示视频画面不存在相互遮挡的情况。
116.也可以是将横向显示视频流叠加在竖向显示视频流内的子区域的形式进行混流,即,混流后的视频流中各帧视频画面中,横向显示视频画面叠加在竖向显示视频画面的子区域上,可以简单理解为是画中画的形式。
117.还可以将竖向显示视频流叠加在横向显示视频流内的子区域的形式进行混流,即,混流后的视频流中各帧视频画面中,竖向显示视频画面叠加在横向显示视频画面的子区域上。
118.在一个可选的实施例中,主播客户端或服务器可以不对横向显示视频流和竖向显示视频流进行混流,而是将竖向显示视频流显示在直播界面内的第一视频窗口中,将横向显示视频流显示在直播界面内的第二视频窗口中,其中,第二视频窗口悬浮显示在第一视频窗口之上,实现通过在一个直播界面中布局两个视频窗口,分别播放横向显示视频流和竖向显示视频流。
119.为了进一步提高观众的直播观看体验,请参阅图10,图10为本技术第二实施例提供的视频直播方法的流程示意图,该方法包括如下步骤:
120.s201:主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频
流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器。
121.s202:服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端,并获取观众客户端对应的观众用户标识,若观众用户标识对应的权限信息满足预设的双视频流开启权限,下发双视频流开启控件数据至对应的观众客户端;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流。
122.s203:观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
123.s204:对应的观众客户端接收双视频流开启控件数据,根据双视频流开启控件数据将双视频流开启控件显示在其直播界面中。
124.s205:服务器响应于对应的观众客户端对双视频流开启控件的触发指令,将横向显示视频流和竖向显示视频流下发至对应的观众客户端。
125.s206:对应的观众客户端接收服务器下发的横向显示视频流和竖向显示视频流,将横向显示视频流和竖向显示视频流显示在其直播界面中。
126.在本实施例中,步骤s201、步骤s202中的部分步骤以及步骤s203均可以参见第一实施例中的相关说明,在此不进行赘述,仅针对不同的步骤进行解释。
127.关于步骤s202,服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,还会获取观众客户端对应的观众用户标识,判断观众用户标识对应的权限信息是否满足预设的双视频流开启权限,也即,判断该观众是否具有双视频流开启的权限,若是,下发双视频流开启控件数据至对应的观众客户端。
128.其中,该观众用户标识对应的权限信息可以是观众的用户等级,相应的,预设的双视频流开启权限是指用户等级阈值,观众用户标识对应的权限信息是否满足预设的双视频流开启权限是指,观众的用户等级不小于用户等级阈值。
129.该观众用户标识对应的权限信息也可以是观众的累计送礼价值,相应的,预设的双视频流开启权限是指累计送礼价值阈值,观众用户标识对应的权限信息是否满足预设的双视频流开启权限是指,观众的累计送礼价值不小于累计送礼价值阈值。
130.关于步骤s204至s206,对应的观众客户端接收双视频流开启控件数据,根据双视频流开启控件数据将双视频流开启控件显示在其直播界面中。
131.双视频流开启控件数据用于在直播界面中显示双视频流开启控件,具体包括双视频流开启控件的显示数据和功能数据,其中,显示数据用于确定双视频流开启控件的显示样式、显示尺寸和显示位置等,功能数据用于实现开启/关闭双视频流直播的功能。
132.具体地,观众通过与双视频流开启控件进行交互,使观众客户端发出对双视频流开启控件的触发指令,并将该触发指令发送至服务器,服务器响应于对应的观众客户端对双视频流开启控件的触发指令,将横向显示视频流和竖向显示视频流下发至对应的观众客户端,之后,对应的观众客户端接收服务器下发的横向显示视频流和竖向显示视频流,将横向显示视频流和竖向显示视频流显示在其直播界面中。
133.关于横向显示视频流和竖向显示视频流显示在其直播界面中的方式,与主播客户端显示双视频流的方式相同,具体可以参见步骤s106中的相关说明。
134.在本实施例中,通过在观众用户标识对应的权限信息满足预设的双视频流开启权限时,下发双视频流开启控件数据至对应的观众客户端,使对应的观众客户端接收双视频流开启控件数据,根据双视频流开启控件数据将双视频流开启控件显示在其直播界面中,从而使权限信息满足预设的双视频流开启权限的观众能够选择是否开启双视频流直播,并且通过服务器响应于对应的观众客户端对双视频流开启控件的触发指令,将横向显示视频流和竖向显示视频流下发至对应的观众客户端,使对应的观众客户端将横向显示视频流和竖向显示视频流显示在其直播界面中,从而使观众能够在直播界面中同时观看到横向显示视频流和竖向显示视频流,提高观众与主播之间的直播互动体验。
135.为了进一步增进观众与主播之间的直播互动行为,改善直播互动体验,请参阅图11,图11为本技术第三实施例提供的视频直播方法的流程示意图,该方法包括如下步骤:
136.s301:主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器。
137.s302:服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端,并获取直播间标识,判断直播间标识对应的直播间是否为已启动双摄像头直播的直播间,若是,则下发双视频流虚拟礼物数据至观众客户端;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流。
138.s303:观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中,且观众客户端根据双视频流虚拟礼物数据,将双视频流虚拟礼物数据添加至虚拟礼物栏数据中,在响应虚拟礼物栏显示指令时,根据虚拟礼物栏数据,将包括双视频流虚拟礼物控件的虚拟礼物栏显示在直播界面中。
139.s304:服务器响应于目标观众客户端发送的双视频流虚拟礼物赠送指令,将横向显示视频流和竖向显示视频流下发至目标观众客户端。
140.s305:目标观众客户端接收服务器下发的横向显示视频流和竖向显示视频流,将横向显示视频流和竖向显示视频流显示在目标观众客户端的直播界面中。
141.在本实施例中,步骤s301以及步骤s302、s303中的部分步骤均可以参见第一实施例中的相关说明,在此不进行赘述,仅针对不同的步骤进行解释。
142.关于步骤s302,服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,还会获取直播间标识,并判断直播间标识对应的直播间是否为已启动双摄像头直播的直播间,若是,则下发双视频流虚拟礼物数据至观众客户端。
143.在一个可选的实施例中,若主播选择在创建的直播间中启动双摄像头直播,服务器可以对直播间进行标记,标记其为已启动双摄像头直播的直播间,进而,服务器可以通过该标记判断直播间标识对应的直播间是否为已启动双摄像头直播的直播间。
144.在另一个可选的实施例中,服务器也可以通过判断其发送至主播客户端的视频流是否包括横向显示视频流和竖向显示视频流,从而判断直播间标识对应的直播间是否为已启动双摄像头直播的直播间。
145.其中,该双视频流虚拟礼物数据是指用于在虚拟礼物栏中显示双视频流虚拟礼物的数据。
146.关于步骤s303:观众客户端根据双视频流虚拟礼物数据,将双视频流虚拟礼物数据添加至虚拟礼物栏数据中,在响应虚拟礼物栏显示指令时,根据虚拟礼物栏数据,将包括双视频流虚拟礼物控件的虚拟礼物栏显示在直播界面中。
147.其中,虚拟礼物栏数据是指用于实现虚拟礼物显示、选择以及赠送等功能所需要的数据,包括但不限于虚拟礼物列表、虚拟礼物列表数据、虚拟礼物栏内的操作控件等。
148.虚拟礼物列表中包括若干个虚拟礼物,虚拟礼物列表数据可以用于确定虚拟礼物在虚拟礼物列表内的布局方式、虚拟礼物列表的显示样式以及虚拟礼物列表支持的触控方式等,虚拟礼物栏内的操作控件包括虚拟礼物栏滑动控件以及赠送确认控件等。
149.上述虚拟礼物栏数据可以是从观众客户端的缓存资源中调取的,可以是从服务器调取的,在此不进行限定。
150.观众客户端通过将双视频流虚拟礼物数据添加至虚拟礼物栏数据中,在观众点击直播界面中的虚拟礼物栏时,触发观众客户端生成虚拟礼物栏显示指令,之后,观众客户端再响应于虚拟礼物栏显示指令,根据虚拟礼物栏数据,将包括双视频流虚拟礼物控件的虚拟礼物栏显示在直播界面中。
151.关于步骤s304至s305,服务器响应于目标观众客户端发送的双视频流虚拟礼物赠送指令,将横向显示视频流和竖向显示视频流下发至目标观众客户端,目标观众客户端接收服务器下发的横向显示视频流和竖向显示视频流,将横向显示视频流和竖向显示视频流显示在目标观众客户端的直播界面中。
152.其中,目标观众客户端是指赠送双视频流虚拟礼物的观众对应的观众客户端。
153.具体地,观众可以通过与虚拟礼物栏滑动控件交互,浏览虚拟礼物栏中虚拟礼物,在选择其中的双视频流虚拟礼物之后,点击虚拟礼物栏中的赠送确认控件,则会触发目标观众客户端发送双视频流虚拟礼物赠送指令至服务器,进而服务器响应于目标观众客户端发送的双视频流虚拟礼物赠送指令,将横向显示视频流和竖向显示视频流下发至目标观众客户端,目标观众客户端接收服务器下发的横向显示视频流和竖向显示视频流,将横向显示视频流和竖向显示视频流显示在目标观众客户端的直播界面中。
154.关于横向显示视频流和竖向显示视频流显示在直播界面中的方式,与主播客户端显示双视频流的方式相同,具体可以参见步骤s106中的相关说明。
155.在本实施例中,在观众加入已启动双摄像头直播的直播间时,服务器通过下发双视频流虚拟礼物数据至观众客户端,显示双视频流虚拟礼物在虚拟礼物栏中,从而使得观众可以在虚拟礼物栏中通过选择赠送双视频流虚拟礼物,实现在直播界面中一同观看横向显示视频流和竖向显示视频流,提高了观众的直播交互体验和视频观看效果,有利于提高观众的留存率和观看时长。
156.在一个可选的实施例中,对于赠送双视频流虚拟礼物的观众,其观看双视频流直播的时间会有一定限制,具体地,服务器还会获取双视频流显示时长,将双视频流显示时长下发至目标观众客户端,目标观众客户端接收服务器下发的横向显示视频流、竖向显示视频流和双视频流显示时长,在双视频流显示时长内将横向显示视频流和竖向显示视频流显示在目标观众客户端的直播界面中。
157.在本实施例中,通过限制双视频流直播的观看时间,有利于促进观众与主播之间互动行为的产生,进一步提升视频直播互动体验。
158.请参见图12,图12为本技术第四实施例提供的视频直播方法的流程示意图,该方法包括如下步骤:
159.s401:获取主播客户端发送的横向显示视频流和竖向显示视频流。
160.s402:响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端,使观众客户端接收与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流。
161.本实施例是以服务器为执行主体对视频直播方法进行描述的,关于服务器所执行步骤的说明可以参见上述实施例中对于服务器执行步骤的说明。
162.请参见图13,为本技术第五实施例提供的视频直播装置的结构示意图。该装置可以通过软件、硬件或两者的结合实现成为服务器的全部或一部分。该装置13包括:
163.双视频流采集单元131,用于主播客户端响应于双视频流采集指令,控制第一摄像头采集横向显示视频流和控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流发送至服务器;
164.下发单元132,用于服务器响应于观众客户端发送的直播界面加载指令,解析直播界面加载指令,获取观众客户端类型,将与观众客户端类型对应的视频流下发至观众客户端;其中,与观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流;
165.显示单元133,用于观众客户端接收服务器下发的与观众客户端类型对应的视频流,将与观众客户端类型对应的视频流显示在各自的直播界面中。
166.在本技术实施例中,主播客户端控制第一摄像头采集横向显示视频流,控制第二摄像头采集竖向显示视频流,并将横向显示视频流和竖向显示视频流上传至服务器,服务器会接收该横向显示视频流和竖向显示视频流,从而在响应观众客户端的直播界面加载指令时,实现根据观众客户端类型进行分端推流,下发与观众客户端类型对应的视频流至观众客户端,该观众客户端类型对应的视频流为横向显示视频流或竖向显示视频流,进而观众客户端能够将类型对应的视频流显示在其直播界面中,从而有效地避免了视频流无法很好地呈现在直播界面中的问题,能够有效提升观众的视频观看体验,提高观众的留存率和观看时长。
167.需要说明的是,上述实施例提供的视频直播装置在执行视频直播方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分为不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的视频直播装置与视频直播方法属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
168.请参见图14,为本技术第六实施例提供的计算机设备的结构示意图。如图14所示,该计算机设备14可以包括:处理器140、存储器141以及存储在该存储器141并可以在该处理器140上运行的计算机程序142,例如:视频直播程序;该处理器140执行该计算机程序142时实现上述第一实施例至第三实施例中的步骤。
169.其中,该处理器140可以包括一个或多个处理核心。处理器140利用各种接口和线路连接计算机设备14内的各个部分,通过运行或执行存储在存储器141内的指令、程序、代码集或指令集,以及调用存储器141内的数据,执行计算机设备14的各种功能和处理数据,
可选的,处理器140可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field

programmable gate array,fpga)、可编程逻辑阵列(programble logic array,pla)中的至少一个硬件形式来实现。处理器140可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责触摸显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器140中,单独通过一块芯片进行实现。
170.其中,存储器141可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read

only memory)。可选的,该存储器141包括非瞬时性计算机可读介质(non

transitory computer

readable storage medium)。存储器141可用于存储指令、程序、代码、代码集或指令集。存储器141可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控指令等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器141可选的还可以是至少一个位于远离前述处理器140的存储装置。
171.本技术实施例还提供了一种计算机存储介质,该计算机存储介质可以存储有多条指令,该指令适用于由处理器加载并执行上述实施例的方法步骤,具体执行过程可以参见上述实施例的具体说明,在此不进行赘述。
172.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
173.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
174.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
175.在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
176.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的
部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
177.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
178.集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。
179.本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜