CN113727177B - 投屏资源播放方法及其装置、设备与介质 - Google Patents
投屏资源播放方法及其装置、设备与介质 Download PDFInfo
- Publication number
- CN113727177B CN113727177B CN202111015409.7A CN202111015409A CN113727177B CN 113727177 B CN113727177 B CN 113727177B CN 202111015409 A CN202111015409 A CN 202111015409A CN 113727177 B CN113727177 B CN 113727177B
- Authority
- CN
- China
- Prior art keywords
- application
- screen
- video data
- throwing
- video
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000004891 communication Methods 0.000 claims abstract description 130
- 230000015572 biosynthetic process Effects 0.000 claims description 29
- 238000003786 synthesis reaction Methods 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 9
- 230000002618 waking effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 19
- 238000005266 casting Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000003999 initiator Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000007306 functionalization reaction Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44016—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开一种投屏资源播放方法及其装置、设备与介质,所述方法包括:接收与本应用处于同一终端设备运行的第二应用的投屏请求;响应所述投屏请求,建立本应用与第二应用的投屏通信链路;解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;调用本应用内置播放器加载播放所述获取地址所指向的视频数据。本申请实现同机设备中跨应用的投屏功能,构建同一设备中各应用的投屏通信,使设备中各应用通过投屏的方式分享各自的视频资源,以丰富应用的播放资源。
Description
技术领域
本申请涉及网络视频领域,尤其涉及一种投屏资源播放方法,此外还涉及该方法相应的装置、设备以及非易失性存储介质。
背景技术
市面上的大部分流媒体软件会提供投屏功能,以便用户将软件中的流媒体数据通过投屏的方式推送到其他设备中进行播放,将一个视频的播放从一个界面转移到另一界面的一种现有技术是借助DLNA之类的无线投屏技术来实现,智能移动设备客户端可将本机的屏幕图像和声音通过无线投屏技术显示至另一台显示设备上,实现将一个设备的视频数据投放到另一个设备的屏幕进行播放的功能,一般将小屏设备的显示画面投放到大屏设备的屏幕进行播放,使用户享受到更好的视频播放效果。但是,显而易见的,此类投屏技术仅仅只能实现跨设备投屏分享数据媒体的视频内容,对于同一设备的跨应用分享则无能为力。
鉴于各种现有技术均无法满足同一设备中跨应用视频源分享的问题,本申请人出于满足该需求的考虑做出相应的探索。
发明内容
本申请的目的在于满足现有技术的需求或克服现有技术的至少部分不足而提供一种投屏资源播放方法及其相应的装置、电子设备、非易失性存储介质。
为实现本申请的目的,采用如下技术方案:
适应本申请的目的之一而提出的一种投屏资源播放方法,包括如下步骤:
接收与本应用处于同一终端设备运行的第二应用的投屏请求;
响应所述投屏请求,建立本应用与第二应用的投屏通信链路;
解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;
调用本应用内置播放器加载播放所述获取地址所指向的视频数据。
进一步的实施例中,所述接收与本应用处于同一终端设备运行的第二应用的投屏请求之前,还包括如下步骤:
展示可用程序列表,该列表罗列本机设备中的多个所述第二应用;
响应所述列表中任意一个第二应用的选定指令,启动或唤醒被选定的第二应用;
监听该第二应用发起的投屏请求而反馈所述的投屏请求。
进一步的实施例中,所述接收与本应用处于同一终端设备运行的第二应用的投屏请求之前,还包括如下步骤:
第二应用在其视频源播放界面响应投屏指令显示投屏接收方列表;
第二应用搜索本机设备中的适于与其建立所述投屏通信链路的包含本应用在内的第一应用,将第一应用的索引信息添加至投屏接收方列表;
第二应用响应作用于所述投屏接收方列表中的本应用的索引信息的选定指令,向本应用发送所述的投屏请求。
进一步的实施例中,响应所述投屏请求,建立本应用与第二应用的投屏通信链路的步骤,包括:
响应所述投屏请求而向第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息;
在第二应用根据所述通信配置信息完成配置后实现投屏通信链路的建立。
进一步的实施例中,解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址的步骤,包括:
经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的引用地址,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
解析视频数据信息,从中获取视频源的引用地址作为所述获取地址。
进一步的实施例中,解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址的步骤,包括:
经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的本地缓存路径,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
当前应用解析视频数据信息,从中获取第二应用送达的所述视频数据的本地缓存路径作为所述获取地址。
较佳的实施例中,调用本应用内置播放器加载播放所述获取地址所指向的视频数据的步骤,包括:
接收作用于所述视频数据的一个或多个合成操作指令,并将该些合成操作指令相对应的图文元素合成至所述视频数据中;
将合成该些图文元素的视频数据加载至内置播放器中进行播放。
进一步的实施例中,所述调用本应用内置播放器加载播放所述获取地址所指向的视频数据之后,还包括如下步骤:
获取所述内置播放器的播放状态信息,通过所述投屏通信链路向第二应用发送所述播放状态信息,以使所述第二应用根据所述播放状态信息同步相应的视频源的播放状态;
监听所述第二应用经所述投屏通信链路送达的播放状态信息,根据该播放状态信息控制内置播放器对所述视频数据的播放,使其播放状态与第二应用中所述视频源的播放状态同步。
进一步的实施例中,响应所述投屏请求,建立本应用与第二应用的投屏通信链路的步骤中,将本应用与第二应用配置为不同的虚拟设备,以便根据DLNA 协议的通信规范建立所述投屏通信链路符合。
适应本申请的目的而提出的一种投屏资源播放装置,其包括:
请求接收模块,用于接收与本应用处于同一终端设备运行的第二应用的投屏请求;
请求响应模块,用于响应所述投屏请求,建立本应用与第二应用的投屏通信链路;
地址获取模块,用于解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;
视频播放模块,用于调用本应用内置播放器加载播放所述获取地址所指向的视频数据。
进一步的实施例中,所述请求响应模块包括:
设备信息反馈子模块,用于响应所述投屏请求而向第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息;
链路建立子模块,用于在第二应用根据所述通信配置信息完成配置后实现投屏通信链路的建立。
进一步的实施例中,所述地址获取模块包括:
视频数据信息接收子模块,用于经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的引用地址,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
引用地址获取子模块,用于解析视频数据信息,从中获取视频源的引用地址作为所述获取地址。
较佳的实施例中,所述地址获取模块还包括:
视频数据信息接收子模块,用于经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的本地缓存路径,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
本地缓存路径获取子模块,用于当前应用解析视频数据信息,从中获取第二应用送达的所述视频数据的本地缓存路径作为所述获取地址。
进一步的实施例中,所述视频播放模块包括:
指令接收子模块,用于接收作用于所述视频数据的一个或多个合成操作指令,并将该些合成操作指令相对应的图文元素合成至所述视频数据中;
元素合成子模块,用于将合成该些图文元素的视频数据加载至内置播放器中进行播放。
较佳的实施例中,所述视频播放模块还包括:
信息发送子模块,用于获取所述内置播放器的播放状态信息,通过所述投屏通信链路向第二应用发送所述播放状态信息,以使所述第二应用根据所述播放状态信息同步相应的视频源的播放状态;
信息监听子模块,用于监听所述第二应用经所述投屏通信链路送达的播放状态信息,根据该播放状态信息控制内置播放器对所述视频数据的播放,使其播放状态与第二应用中所述视频源的播放状态同步。
适应本申请的目的而提出的一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行所述投屏资源播放方法的步骤。
适应本申请的目的而提出的一种非易失性存储介质,其存储有依据所述投屏资源播放方法所实现的计算机程序,所述计算机程序被计算机调用运行时,执行其相应的方法所包括的步骤。
相对于现有技术,本申请的优势如下:
本申请通过构造同一设备中不同应用之间的视频投屏功能,该功能允许同一设备中不同应用之间通过建立投屏通信链路的方式,通过投屏的方式从其他应用中获取相应的视频数据进行加载播放。
首先,本申请实现了同一设备中不同应用之间的视频投屏功能,以投屏的方式实现跨应用的视频数据分享,进而简化跨应用之间的视频数据的分享操作,使同一设备中的应用通过投屏通信链路,从其他应用中获取相应的视频数据进行加载播放,防止因提供视频源的应用程序不支持下载,导致无法实现分享,使获取视频数据方的应用可播放其无法从网络或设备的存储空间中获取的视频数据,丰富应用的视频资源。
其次,本申请的同一设备中的应用可作为其他应用的视频数据的播放控制方,通过自身更优于其他应用的内置播放器,使用不同的播放功能控制视频数据的播放方式,优化视频数据在设备中的播放效果,提升视频整体的播放观感。
另外,本申请的投屏资源接收应用可提供视频元素合成功能,应用提供响应用户的视频元素合成指令,将相应的视频元素合成至投屏接收的视频数据中,以提升投屏视频的画面表现能力,丰富其他应用的投屏的视频数据的播放画面。
再者,本申请的同一设备的直播应用可从其他应用中获取视频数据,以将投屏所获取的视频数据作为直播间的视频内容进行分享,将该视频数据的视频画面合成至直播流中推送至直播间进行播放,丰富直播流的视频素材,且可通过直播应用自身具有的视频合成功能,对所述视频数据实施相应的视频特效,提升直播流的播放效果。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的投屏资源播放方法的典型实施例的流程示意图;
图3为本申请的投屏通信链路符合DLNA协议的通信规范的情况下,当前应用与第二应用的产品架构示意图;
图4为图2中步骤S12的实施例的具体步骤所形成的流程示意图;
图5为图2中步骤S13的实施例的具体步骤所形成的流程示意图;
图6为本申请的第二应用的视频源列表的示意图;
图7为图2中步骤S13的另一实施例的具体步骤所形成的流程示意图;
图8为图2中步骤S14的实施例的具体步骤所形成的流程示意图;
图9为图2中步骤S14的另一实施例的具体步骤所形成的流程示意图;
图10为本申请的投屏资源播放方法的一种实施例的流程示意图,其相对添加了前置步骤;
图11为本申请的第二应用为建立投屏通信链路的发起者时,所述第二应用相关的图形用户界面的示意图;
图12为本申请的投屏资源播放方法的另一种实施例的流程示意图,其相对添加了前置步骤;
图13为本申请的当前应用(本应用)为建立投屏通信链路的发起者时,当前应用相关的图形用户界面的示意图;
图14为本申请的投屏资源播放方法的一种实施例的流程示意图,其相对添加了后置步骤;
图15为包含视频数据的直播流在直播间中展示播放时,当前应用(本应用) 的图形用户界面中的示意图;
图16为本申请的投屏资源播放装置的典型实施例的原理框图;
图17为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信***),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位***)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个业务服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81 和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
所述的应用程序,是指运行于服务器或终端设备上的应用程序,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
对时下流行的各类终端设备而言,特别是平板、手机之类的移动设备,通常都内置配备有摄像头之类的摄像设备,或者个人计算机也可外置接入所述的摄像设备,理论上,本申请的终端设备的应用程序对于这些情况下的摄像设备均可实现调用。
本申请中适于在终端设备实现的技术方案也可以被编程内置于提供网络直播的应用程序中,作为其一部分扩展功能。所述的网络直播,是指一种基于前述的网络部署架构所实现的一种直播间网络服务。
本申请所称的直播间,是指依靠互联网技术实现的一种视频聊天室,通常具备音视频播控功能,包括主播用户和观众用户,观众用户可以包括已经在平台中注册的注册用户,也可以是未注册的游客用户;可以是关注了主播用户的注册用户,也可以是未关注主播用户的注册或未注册用户。主播用户与观众用户之间可通过语音、视频、文字等公知的线上交互方式来实现互动,一般是主播用户以音视频流的形式为观众用户表演节目,并且在互动过程中还可产生经济交易行为。当然,直播间的应用形态并不局限于在线娱乐,也可推广到其他相关场景中,例如教育培训场景、视频会议场景、产品推介销售场景以及其他任何需要类似互动的场景中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
本申请即将揭示的各个实施例,除非明文指出彼此之间的相互排斥关系,否则,各个实施例所涉的相关技术特征可以交叉结合而灵活构造出新的实施例,只要这种结合不背离本申请的创造精神且可满足现有技术中的需求或解决现有技术中的某方面的不足即可。对此变通,本领域技术人员应当知晓。
请参阅图2,本申请的一种投屏资源播放方法,在其典型实施例中,其包括如下步骤:
步骤S11,接收与本应用处于同一终端设备运行的第二应用的投屏请求:
当前终端设备中的本应用接收由该设备中的所述第二应用推送的所述投屏请求,以建立双方的投屏通信链路。
所述投屏请求由同一终端所运行的所述第二应用所推送,以便当前应用(本应用)响应该投屏请求,建立当前应用与所述第二应用的所述投屏通信链路,以接收第二应用推送的视频数据信息,获取该视频数据信息所指向的视频数据加载至内置播放器中进行输出播放。
具体的,所述投屏通信链路一般是指符合DLNA协议的通信规范的投屏通信链路,所述投屏请求一般是指所述第二应用用于搜索适于与其建立符合DLNS协议的投屏通信链路的应用程序的组播报文,所述第二应用通过向处于同一局域网下的应用程序广播所述组播报文(投屏请求),以搜索适于与其建立搜索投屏通信链路的应用程序,当前应用程序(本应用)接收到该组播报文(投屏请求)并响应后,将被所述第二应用视为适于与其建立所述投屏通信链路的应用程序。
所述第二应用一般是指可独立播放视频数据,且可进行视频数据信息推送的应用程序,其可作为视频数据的输出方,将视频数据投屏至当前应用(本应用)的图形用户界面中进行播放,同时也可作为视频数据的播放控制方,控制该视频数据在当前应用中的播放,其通过与当前应用建立所述投屏通信链路,将所述其所选定的视频数据的所述视频数据信息推送至当前应用,以便当前应用加载该视频数据所指向的视频数据进行播放输出。
当前应用(本应用)与第二应用为运行于同机设备的应用程序,当前应用与第二应用通过在设备中建立所述投屏通信链路,进行所述视频数据信息的推送,以便当前应用将包含所述视频数据信息所指向的视频数据加载至自身内置的播放器中进行输出播放,相比一般的应用程序将自身的视频数据播放页面通过网络链接的方式分享至其他应用中,使其他应用通过该链接跳转至视频数据播放页面不同,当前应用获取该视频数据信息后,可通过该视频数据信息包含的获取地址获取相应的视频数据加载至自身的内置播放器进行播放,且第二应用也可参与控制当前应用的所述视频数据的播放,例如,暂停视频数据播放、开始视频数据播放或调节视频数据播放进度等。
步骤S12,响应所述投屏请求,建立本应用与第二应用的投屏通信链路:
当前应用响应所述投屏请求,以与该投屏请求所指向的第二应用建立所述投屏通信链路,进行相应的投屏操作。
当所述投屏通信链路为符合DLNA协议的通信规范的数据通信链路时,所述投屏请求将为所述第二应用推送的所述组播报文,当前应用(本应用)响应该投屏请求后,当前应用将被所述第二应用视为适于建立所述投屏通信链路的应用程序。
当前应用(本应用)响应所述投屏请求后,将向该投屏请求所属的第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息,以便所述第二应用根据该设备信息中包含的通信配置信息,建立该第二应用与当前应用的所述投屏通信链路。
请参考图3,所述投屏通信链路一般为符合DLNA协议的通信规范的投屏通信链路,通过将所述第一应用302与第二应用301配置为分别处于彼此通信地址不同的虚拟设备中,所述第二应用301具用DMS模块(数字媒体服务器),其通过该DMS模块,以作为所述视频数据的提供者,将所述视频数据信息通过符合DLNA协议的投屏通信链路推送至第一应用302中,且所述第二应用301具有DMC模块(数字媒体服务器),可控制至所述第一应用中根据所述视频数据信息所获取的视频数据的的播放;所述第一应用302具有DMP模块(数字媒体播放器),该模块具有DMC模块及DMR模块(数字媒体渲染器)的功能,通过该模块渲染根据所述视频数据信息所获取的视频数据进行播放,且控制该视频数据的播放。
请参考图4,关于当前应用(本应用)响应所述投屏请求后,与所述第二应用建立所述投屏通信链路的实施方式,其具体实施步骤如下:
步骤S121,响应所述投屏请求而向第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息:
所述第一应用响应所述投屏请求后,将获取该投屏请求中包含的地址及端口,以通过所述地址及端口向所述第二应用单播反馈自身预配置的包含所述通信配置信息的设备信息。
所述的配置信息是指当前应用自身的用于与其他应用(第二应用)建立所述投屏通信链路的信息,该设备信息中包含所述通信配置信息,该通信配置信息中包含当前应用的ip地址及upnp服务端口,所述第二应用接收所述配置信息后,根据该配置信息中包含的所述通信配置信息,与当前应用建立所述投屏通信链路。
步骤S122,在第二应用根据所述通信配置信息完成配置后实现投屏通信链路的建立:
所述第二应用接收所述当前应用单播反馈的所述设备信息,将根据该设备信息包含的所述通信配置信息,与所述当前应用建立所述投屏通信链路,以实现双方的所述投屏通信链路相互的绑定。
步骤S13,解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址:
当前应用(本应用)与第二应用建立所述投屏通信链路后,当前应用可接收所述第二应用通过该投屏通信链路推送的所述视频数据信息,并解析该视频数据信息,获取该视频数据信息中包含的所述获取地址,以便通过该获取地址获取视频数据加载至内置播放器中进行播放输出。
所述的视频数据一般由所述第二应用从网络中或本地中所获取的视频数据,该视频数据可被当前应用及第二应用进行加载播放,且当前应用及第二应用都可作为控制该视频数据的播放的控制方,以控制该视频数据的暂停播放、开始播放、调节播放进度,调节播放音量等操作。
当前应用通过触发获取视频事件,从与其建立的第二应用中选定相应的视频数据,该第二应用响应所述获取视频事件,确定该获取视频事件所指向的视频数据,以将指向该视频数据的所述视频数据信息推送至当前应用中。
一种实施例中,所述第二应用通过从自身应用中选定相应的视频数据,以触发推送视频事件,将指向该视频数据的所述视频数据信息推送至当前第一应用中,以便第一应用加载该视频数据信息所指向的视频数据至直播流中。
所述第一应用通过所述视频数据信息获取所述视频数据后,一般将调用自身的内置播放器加载该视频数据进行播放,所述第一应用除了可通过该内置播放器控制所述视频数据的播放操作外,还可在该视频数据中合成相应的动画特效进行展示,例如,合成视频滤镜或合成图片等,或者改变所述视频数据的播放音效,例如对播放音效进行调音等操作,具体的,请参考后续步骤的叙述,可以理解,本领域技术人员可根据实际业务场景设计所述内置播放器的编辑所述视频设计的功能,恕不赘述。
请参考图5及6,关于当前应用解析所述视频数据信息进行视频数据,以获取该视频数据信息的所述获取地址的实施方式,当所述获取地址为视频数据的引用地址时,其具体实施步骤如下:
步骤S131,经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的引用地址,所述视频源选定自第二应用的图形用户界面提供的视频源列表:
当前应用接收所述第二应用通过所述投屏通信链路送达的所述视频数据信息,以便解析该视频数据信息,以获取其所包括的视频源的所述引用地址。
所述第二应用与当前应用建立所述投屏通信链路后,可通过所述第二应用的图形用户界面中所提供的所述视频源列表选定相应的视频源进行视频数据信息的推送,该视频源列表中展示了所述第二应用通过互联网所获取的多个视频源,该些视频源以图文或纯文字的可视化格式展示至所述视频源列表中。
所述的引用地址一般是指URL,所述第一应用获取该引用地址后,可通过从该引用地址(URL)所指向的媒体服务器中,获取该URL所指向的视频数据进行加载播放。
具体的,请参考图6,所述视频源列表如图中的视频源列表601所示,其显示在与当前应用建立所述投屏通信链路的第二应用的图形用户界面中,该视频源列表601中展示着多个可投屏至第一应用的所述视频源,当触控投屏推送602 控件时,将生成视频源C的所述视频数据信息,并将该视频数据信息通过所述投屏通信链路推送至当前应用中。
步骤S132,解析视频数据信息,从中获取视频源的引用地址作为所述获取地址:
当前应用获取所述视频数据信息后,将解析该视频数据信息,获取该视频数据信息中的所述引用地址,并将该引用地址作为所述获取地址,以进行该获取地址所指向的视频数据的加载。
请参考图7,关于当前应用解析所述视频数据信息进行视频数据,以获取该视频数据信息的所述获取地址的实施方式,当所述获取地址为视频数据的本地缓存路径时,其具体实施步骤如下:
步骤S131’,经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的本地缓存路径,所述视频源选定自第二应用的图形用户界面提供的视频源列表:
当前应用接收所述第二应用通过所述投屏通信链路送达的所述视频数据信息,解析并获取该视频数据信息所包括的视频源的所述引用地址本地缓存路径,以加载第二应用通过其图形用户界面中提供的所述视频源列表所选定的视频源。
所述第二应用与当前应用建立所述投屏通信链路后,可通过所述第二应用的图形用户界面中所提供的所述视频源列表选定相应的视频源进行视频数据信息的推送,该视频源列表中展示了所述第二应用在设备的内存空间中所存储的多个视频源,该些视频源以图文或纯文字的可视化格式展示至所述视频源列表中。
步骤S132’,当前应用解析视频数据信息,从中获取第二应用送达的所述视频数据的本地缓存路径作为所述获取地址:
当前应用获取所述视频数据信息后,将解析该视频数据信息,获取该视频数据信息中的所述本地缓存路径,并将该本地缓存路径作为所述获取地址,以便根据该本地缓存路径,从本机设备的内存空间中获取该路径所指向的视频数据进行加载。
步骤S14,调用本应用内置播放器加载播放所述获取地址所指向的视频数据:
当前应用(本应用)获取所述获取地址后,通过该获取地址获取其所指向的视频数据,并将调用自身的内置播放器,以加载将该视频数据加载至该内置播放器中进行输出播放。
当前应用从所述视频数据信息中获取所述引用地址后,通过该引用地址从所述第二应用相对应的媒体服务器中获取该引用地址所指向的视频数据,并将该视频数据加载至所述内置播放器中,已将该视频数据输出播放至当前应用的图形用户界面中。
一种实施例中,前应用从所述视频数据信息中获取所述本地缓存路径后,将通过该本地缓存路径从本机设备的内存控件中获取相应的视频数据,并将该视频数据加载至所述内置播放器中,已将该视频数据输出播放至当前应用的图形用户界面中。
一种实施例中,请参考图8,当前应用获取所述视频数据后,可对该视频数据进行视频元素的合成操作,以丰富该视频数据在内置播放器中的播放效果,其具体实施步骤如下:
步骤S141,接收作用于所述视频数据的一个或多个合成操作指令,并将该些合成操作指令相对应的图文元素合成至所述视频数据中:
当前应用具有视频元素合成功能,用户提供该合成功能,对所述视频数据进行相应的视频元素的合成操作,触发生成个视频元素的合成操作指令,以便当前应用接收该些合成操作指令,确定该些合成操作指令相对应的视频元素及该些视频元素在所述视频元素的合成位置,将该些视频元素合成至所述视频数据中相应的位置中。
所述视频元素一般是指合成至视频流中的可视化图文信息,其用于美化所述视频数据在内置播放器中的播放效果,所述视频元素的类型包括:动态图片、静态图片、视频滤镜及文本信息等,操作用户可通过选择相应的视频元素进行合成操作,触发生成相对应的所述合成操作指令,以便当前应用接收该些合成操作指令,确定该些合成操作指令相对应的视频元素及该些视频元素在所述视频元素的合成位置,将该些视频元素合成至所述视频数据中相应的位置中。
步骤S142,将合成该些图文元素的视频数据加载至内置播放器中进行播放:
当前应用响应各所述合成操作指令,并将该些合成操作指令相对应的视频元素合成至所述视频数据的相应位置后,将该完成视频元素合成的视频数据加载至所述内置播放器中进行播放。
一种实施例中,请参考图9,当前应用与所述第二应用可同步双方播放所述视频数据或视频源的播放进度,其具体实施步骤如下:
步骤S141’,获取所述内置播放器的播放状态信息,通过所述投屏通信链路向第二应用发送所述播放状态信息,以使所述第二应用根据所述播放状态信息同步相应的视频源的播放状态:
当前应用程序获取所述内置播放器当前播放所述视频数据的所述播放状态信息,该播放状态信息记录了所述内置播放器当前播放所述视频数据的播放进度。
当前应用将获取的所述播放状态信息通过所述投屏通信链路推送至所述第二应用中,以便第二应用根据该播放状态信息,确定该播放状态信息所指向的视频源,以将该视频源在其自身的播放器中的播放进度与当前应用播放所述视频数据的播放进度进行同步播放。
所述播放状态信息除了可同步所述视频源的播放进度外,也可用于控制视频源的播放,例如,暂停视频源的播放,继续视频源的播放或终止视频源的播放等等。
步骤S142’,监听所述第二应用经所述投屏通信链路送达的播放状态信息,根据该播放状态信息控制内置播放器对所述视频数据的播放,使其播放状态与第二应用中所述视频源的播放状态同步:
当前应用实时监听所述第二应用通过所述投屏通信链路送达的所述播放状态信息,以根据该播放状态信息,控制其内置播放器播放所述视频数据的播放,使该视频数据与所述第二用于中所述视频源的播放状态同步。
所述第二应用为了控制当前应用的内置播放器播放所述视频数据的播放,将向当前应用推送所述视频播放状态信息,以控制该视频数据的播放状态与其播放视频源的播放状态进行同步,例如,当所述视频源的播放状态为暂停播放时,所述第二应用通过向当前应用推送表征暂停播放的所述播放状态信息,以暂停当前应用的内置播放器暂停所述视频数据的播放,当然,还可通过调整对视频源的播放进度,且向当前应用推送表征相应播放时间戳的所述播放状态信息,以控制当前应用的内置播放器中播放的视频数据的播放进度与所述视频源的播放进度同步。
以上的典型实施例及其变化实施例充分揭示了本申请的投屏资源播放方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参阅图10,本方法执行接收与本应用处于同一终端设备运行的第二应用的投屏请求的步骤之前,还包括如下步骤:
步骤S08,展示可用程序列表,该列表罗列本机设备中的多个所述第二应用:
当前应用程序的图形用户界面中展示所述可用程序列表,该可用程序列表中展示本机设备中的多个所述第二应用。
请参考图11,图11的图A示意当前应用的图形用户界面,通过触控选择视频数据输出方控件A-1101,以在当前图形用户界面中展示图B的可用程序列表 B-1101,该可用程序列表中展示多个所述第二应用程序。
步骤S09,响应所述列表中任意一个第二应用的选定指令,启动或唤醒被选定的第二应用:
当前应用响应所述可用程序列表中展示的任意一个所述第二应用的选定指令,以在触发本机设备启动或唤醒该第二应用。
请参考图11,当前应用的图形用户界面中展示图B的可用程序列表B-1101,当触控连接B-1102控件后,运行当前应用的设备将启动或唤醒B应用程序(第二应用)。
步骤S10,监听该第二应用发起的投屏请求而反馈所述的投屏请求:
当前应用程序实时监听所述可用程序列表中被选定的所述第二应用方式的所述投屏请求,当其监听到该投屏请求后,将接收并响应该投屏请求,以建立当前应用与第二应用的所述投屏通信链路。
一种实施例中,请参阅图12,本方法执行接收与本应用处于同一终端设备运行的第二应用的投屏请求的步骤之前,还包括如下步骤:
步骤S08’,第二应用在其视频源播放界面响应投屏指令显示投屏接收方列表:
同机设备中所述第二应用在其所述视频源播放界面中响应所述投屏指令,在当前界面中显示所述投屏接收方列表,该投屏接收方列表中用于展示适于与该第二应用建立所述投屏通信链路的第一应用。
请参考图13,图13的图A为所述第二应用的所述视频源播放界面,通过触控视频数据投屏控件A-1301以输出所述投屏指令,使所述第二应用响应该投屏指令,在当前视频源播放界面中显示图B中的投屏接收方列表B-1301。
步骤S09’,第二应用搜索本机设备中的适于与其建立所述投屏通信链路的包含本应用在内的第一应用,将第一应用的索引信息添加至投屏接收方列表:
第二应用在其视频源播放界面中显示所述投屏接收方列表后,将在本机设备中搜索适于与其建立搜索投屏通信链路的第一应用,该些第一应用中包含本申请的当前应用(本应用),以便将该些第一应用的所有信息添加至搜索投屏接收方列表中。
请参考图13,所述第二应用搜索本机设备中的适于与其建立所述投屏通信链路的包含本应用在内的第一应用后,图B的投屏接收方列表B-1301中将展示多个所述第一应用的摘要信息,该些摘要信息用于表征第一应用的名称,以便用户通过投屏接收方列表B-1301中展示的各所述第一应用,选定相应的本申请所述的当前应用(本应用)推送所述投屏请求。
步骤S10’,第二应用响应作用于所述投屏接收方列表中的本应用的索引信息的选定指令,向本应用发送所述的投屏请求:
所述第二应用响应所述选定指令,确定该选定指令所指向的第一应用为所述投屏接收方列表中的本申请所述的当前应用(本应用),以向当前应用(本应用)推送所述投屏请求。
请参考图13,假设图B中的B应用程序为本申请所述的当前应用(本应用),通过参考投屏接收方列表B-1301中的投屏B-1302控件,生成指向B应用程序的所述选定指令,以便第二应用响应该选定指令,向B应用程序推送所述投屏请求。
一种实施例中,请参阅图14,本方法执行调用本应用内置播放器加载播放所述获取地址所指向的视频数据的步骤之后,还包括如下步骤:
步骤S15,向由本应用控制的直播间推送包含所述视频数据的直播流:
当前应用(本应用)通过所述获取地址获取所述视频数据信息所指向的视频数据,并将该视频数据加载至内置播放器进行输出播放后,当前应用可向其所控制的直播间推送包含该视频数据的直播流。
当前应用通过将其所获取的视频数据推送至所述直播间相关联的业务服务器中,驱动该业务服务器将该视频数据合成至当前应用所属的直播流中,以将该直播流广播至该直播间中进行输出播放。
一种实施例中,当前应用将所述获取地址推送至服务于其直播服务的所述业务服务器中,以驱动该业务服务器根据该引用地址,从该引用地址所指向的服务器中获取相应的视频数据,并将该视频数据合成至当前应用所处的直播间的直播流中,将该直播流推送至该直播间中进行播放。
请参考图15,包含所述视频数据的直播流推至至当前应用的直播间后,该直播间的直播流播放窗口1501播放的直播流中将显示所述视频数据的视频数据视频画面1502,以丰富直播流的播放效果。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种投屏资源播放装置,按照这一思路,请参阅图16,其中的一个典型实施例中,该装置包括:请求接收模块11,用于接收与本应用处于同一终端设备运行的第二应用的投屏请求;请求响应模块12,用于响应所述投屏请求,建立本应用与第二应用的投屏通信链路;地址获取模块13,用于解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;视频播放模块14,用于调用本应用内置播放器加载播放所述获取地址所指向的视频数据。
一种实施例中,所述请求响应模块12包括:设备信息反馈子模块,用于响应所述投屏请求而向第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息;链路建立子模块,用于在第二应用根据所述通信配置信息完成配置后实现投屏通信链路的建立。
一种实施例中,所述地址获取模块13包括:视频数据信息接收子模块,用于经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的引用地址,所述视频源选定自第二应用的图形用户界面提供的视频源列表;引用地址获取子模块,用于解析视频数据信息,从中获取视频源的引用地址作为所述获取地址。
另一种实施例中,所述地址获取模块13还包括:视频数据信息接收子模块,用于经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的本地缓存路径,所述视频源选定自第二应用的图形用户界面提供的视频源列表;本地缓存路径获取子模块,用于当前应用解析视频数据信息,从中获取第二应用送达的所述视频数据的本地缓存路径作为所述获取地址。
一种实施例中,所述视频播放模块14包括:指令接收子模块,用于接收作用于所述视频数据的一个或多个合成操作指令,并将该些合成操作指令相对应的图文元素合成至所述视频数据中;元素合成子模块,用于将合成该些图文元素的视频数据加载至内置播放器中进行播放。
另一种实施例中,所述视频播放模块14还包括:信息发送子模块,用于获取所述内置播放器的播放状态信息,通过所述投屏通信链路向第二应用发送所述播放状态信息,以使所述第二应用根据所述播放状态信息同步相应的视频源的播放状态;信息监听子模块,用于监听所述第二应用经所述投屏通信链路送达的播放状态信息,根据该播放状态信息控制内置播放器对所述视频数据的播放,使其播放状态与第二应用中所述视频源的播放状态同步。
为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述投屏资源播放方法所实现的计算机程序。具体请参阅图17,图17为本实施例计算机设备基本结构框图。
如图17所示,计算机设备的内部结构示意图。该计算机设备包括通过***总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作***、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种投屏资源播放方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种投屏资源播放方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本发明的投屏资源播放装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有投屏资源播放装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的投屏资源播放方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例投屏资源播放方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM) 等。
综上所述,本申请实现同机设备中跨应用的投屏功能,构建同一设备中各应用的投屏通信,使设备中各应用通过投屏的方式分享各自的视频资源,以丰富应用的播放资源。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (13)
1.一种投屏资源播放方法,其特征在于,包括如下步骤:
接收与本应用处于同一终端设备运行的第二应用的投屏请求,本应用与第二应用分别处于具有不同通信地址的虚拟设备中;
响应所述投屏请求,建立本应用与第二应用的投屏通信链路;
解析第二应用的媒体服务器模块经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;
调用本应用内置播放器的数字媒体渲染器模块渲染播放所述获取地址所指向的视频数据,本应用内置播放器中具有控制所述视频数据播放的数字媒体控制器模块,且第二应用也具有控制本应用播放所述视频数据的数字媒体控制器模块。
2.根据权利要求1所述的方法,其特征在于,所述接收与本应用处于同一终端设备运行的第二应用的投屏请求之前,还包括如下步骤:
展示可用程序列表,该列表罗列本机设备中的多个所述第二应用;
响应所述列表中任意一个第二应用的选定指令,启动或唤醒被选定的第二应用;
监听该第二应用发起的投屏请求而反馈所述的投屏请求。
3.根据权利要求1所述的方法,其特征在于,所述接收与本应用处于同一终端设备运行的第二应用的投屏请求之前,还包括如下步骤:
第二应用在其视频源播放界面响应投屏指令显示投屏接收方列表;
第二应用搜索本机设备中的适于与其建立所述投屏通信链路的包含本应用在内的第一应用,将第一应用的索引信息添加至投屏接收方列表;
第二应用响应作用于所述投屏接收方列表中的本应用的索引信息的选定指令,向本应用发送所述的投屏请求。
4.根据权利要求1所述的方法,其特征在于,响应所述投屏请求,建立本应用与第二应用的投屏通信链路的步骤,包括:
响应所述投屏请求而向第二应用单播反馈当前应用预配置的设备信息,在该设备信息中包含通信配置信息;
在第二应用根据所述通信配置信息完成配置后实现投屏通信链路的建立。
5.根据权利要求1所述的方法,其特征在于,解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址的步骤,包括:
经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的引用地址,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
解析视频数据信息,从中获取视频源的引用地址作为所述获取地址。
6.根据权利要求1所述的方法,其特征在于,解析第二应用经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址的步骤,包括:
经所述投屏通信链路接收所述第二应用送达的视频数据信息,该视频数据信息包括视频源的本地缓存路径,所述视频源选定自第二应用的图形用户界面提供的视频源列表;
当前应用解析视频数据信息,从中获取第二应用送达的所述视频数据的本地缓存路径作为所述获取地址。
7.根据权利要求1所述的方法,其特征在于,调用本应用内置播放器加载播放所述获取地址所指向的视频数据的步骤,包括:
接收作用于所述视频数据的一个或多个合成操作指令,并将该些合成操作指令相对应的图文元素合成至所述视频数据中;
将合成该些图文元素的视频数据加载至内置播放器中进行播放。
8.根据权利要求1所述的方法,其特征在于,调用本应用内置播放器加载播放所述获取地址所指向的视频数据的步骤,包括:
获取所述内置播放器的播放状态信息,通过所述投屏通信链路向第二应用发送所述播放状态信息,以使所述第二应用根据所述播放状态信息同步相应的视频源的播放状态;
监听所述第二应用经所述投屏通信链路送达的播放状态信息,根据该播放状态信息控制内置播放器对所述视频数据的播放,使其播放状态与第二应用中所述视频源的播放状态同步。
9.根据权利要求1至8中任意一项所述的方法,其特征在于,所述调用本应用内置播放器加载播放所述获取地址所指向的视频数据之后,还包括如下步骤:
向由本应用控制的直播间推送包含所述视频数据的直播流。
10.根据权利要求1至8中任意一项所述的方法,其特征在于,响应所述投屏请求,建立本应用与第二应用的投屏通信链路的步骤中,将本应用与第二应用配置为不同的虚拟设备,以便根据DLNA协议的通信规范建立所述投屏通信链路符合。
11.一种投屏资源播放装置,其特征在于,其包括:
请求接收模块,用于接收与本应用处于同一终端设备运行的第二应用的投屏请求,本应用与第二应用分别处于具有不同通信地址的虚拟设备中;
请求响应模块,用于响应所述投屏请求,建立本应用与第二应用的投屏通信链路;
地址获取模块,用于解析第二应用的媒体服务器模块经所述投屏通信链路送达的视频数据信息,获取所述视频数据信息包含的获取地址;
视频播放模块,用于调用本应用内置播放器的数字媒体渲染器模块渲染播放所述获取地址所指向的视频数据,本应用内置播放器中具有控制所述视频数据播放的数字媒体控制器模块,且第二应用也具有控制本应用播放所述视频数据的数字媒体控制器模块。
12.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至10中任一项所述的方法的步骤。
13.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至10中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111015409.7A CN113727177B (zh) | 2021-08-31 | 2021-08-31 | 投屏资源播放方法及其装置、设备与介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111015409.7A CN113727177B (zh) | 2021-08-31 | 2021-08-31 | 投屏资源播放方法及其装置、设备与介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113727177A CN113727177A (zh) | 2021-11-30 |
CN113727177B true CN113727177B (zh) | 2024-01-19 |
Family
ID=78680134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111015409.7A Active CN113727177B (zh) | 2021-08-31 | 2021-08-31 | 投屏资源播放方法及其装置、设备与介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113727177B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205664B (zh) * | 2021-12-06 | 2023-09-12 | 抖音视界有限公司 | 投屏方法、投屏装置、投屏显示装置、投屏***及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870123A (zh) * | 2014-02-26 | 2014-06-18 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
WO2018001218A1 (zh) * | 2016-06-27 | 2018-01-04 | 北京奇虎科技有限公司 | 视频播放方法、装置、程序及介质 |
CN108027706A (zh) * | 2016-08-31 | 2018-05-11 | 华为技术有限公司 | 一种应用界面显示方法以及终端设备 |
CN108174256A (zh) * | 2017-12-29 | 2018-06-15 | 深圳Tcl数字技术有限公司 | 视频播放方法、装置及计算机可读存储介质 |
CN112312222A (zh) * | 2019-10-31 | 2021-02-02 | 北京字节跳动网络技术有限公司 | 视频发送方法、装置和电子设备 |
-
2021
- 2021-08-31 CN CN202111015409.7A patent/CN113727177B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870123A (zh) * | 2014-02-26 | 2014-06-18 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
WO2018001218A1 (zh) * | 2016-06-27 | 2018-01-04 | 北京奇虎科技有限公司 | 视频播放方法、装置、程序及介质 |
CN108027706A (zh) * | 2016-08-31 | 2018-05-11 | 华为技术有限公司 | 一种应用界面显示方法以及终端设备 |
CN108174256A (zh) * | 2017-12-29 | 2018-06-15 | 深圳Tcl数字技术有限公司 | 视频播放方法、装置及计算机可读存储介质 |
CN112312222A (zh) * | 2019-10-31 | 2021-02-02 | 北京字节跳动网络技术有限公司 | 视频发送方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113727177A (zh) | 2021-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106658205B (zh) | 直播间视频流合成控制方法、装置及终端设备 | |
CN113727178B (zh) | 投屏资源控制方法及其装置、设备与介质 | |
US9549007B2 (en) | User interface widget unit sharing for application user interface distribution | |
US7669206B2 (en) | Dynamic redirection of streaming media between computing devices | |
WO2022077881A1 (zh) | 虚拟直播方法、装置、设备及存储介质 | |
CN101502111B (zh) | 同步化媒体体验 | |
CN105264902B (zh) | 用于多用户、多平台、多设备环境中的通用远程媒体控制的*** | |
US11227598B2 (en) | Method for controlling terminal by voice, terminal, server and storage medium | |
CN102474671B (zh) | 信息处理***及信息处理装置 | |
CN111757171A (zh) | 一种显示设备及音频播放方法 | |
CN104602133A (zh) | 多媒体文件共享方法和终端及服务器 | |
CN112714334B (zh) | 音乐礼物赠送方法及其装置、设备与介质 | |
CN105357562A (zh) | 一种信息处理方法及终端 | |
CN113727177B (zh) | 投屏资源播放方法及其装置、设备与介质 | |
US20240137617A1 (en) | Video playing method and apparatus, and storage medium | |
JP2021534606A (ja) | デジタルコンテンツ消費の同期 | |
CN113965785A (zh) | 一种资源同步播放方法及显示设备 | |
CN113727180B (zh) | 投屏播放控制方法及其装置、设备与介质 | |
CN1972447A (zh) | 基于流媒体技术的多画面播放器及其播放方法 | |
CN114222190B (zh) | 远程控制处理、响应方法及其装置、设备、介质、产品 | |
CN113556610B (zh) | 视频合成控制方法及其装置、设备与介质 | |
CN113596495B (zh) | 直播推流处理方法及其装置、设备与介质 | |
CN113727133B (zh) | 直播控制方法及其装置、设备与介质 | |
CN114979756B (zh) | 一种实现一分多的投屏独立显示和交互方法、装置及设备 | |
CN114765695B (zh) | 一种直播数据处理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |