CN112312187A - 对视频进行投屏播放的方法、装置、设备及存储介质 - Google Patents

对视频进行投屏播放的方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112312187A
CN112312187A CN201910700191.5A CN201910700191A CN112312187A CN 112312187 A CN112312187 A CN 112312187A CN 201910700191 A CN201910700191 A CN 201910700191A CN 112312187 A CN112312187 A CN 112312187A
Authority
CN
China
Prior art keywords
video
playing
index file
target
screen
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.)
Granted
Application number
CN201910700191.5A
Other languages
English (en)
Other versions
CN112312187B (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 CN201910700191.5A priority Critical patent/CN112312187B/zh
Publication of CN112312187A publication Critical patent/CN112312187A/zh
Application granted granted Critical
Publication of CN112312187B publication Critical patent/CN112312187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • 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/4508Management of client data or end-user data

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Projection Apparatus (AREA)

Abstract

本申请是关于一种对视频进行投屏播放的方法。该方法由投屏终端执行,该方法包括:接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。通过上述方案,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。

Description

对视频进行投屏播放的方法、装置、设备及存储介质
技术领域
本申请实施例涉及视频播放技术领域,特别涉及一种对视频进行投屏播放的方法、装置、设备及存储介质。
背景技术
随着视频播放应用的不断发展,用户对将智能手机等小屏幕的投屏终端中的视频投屏到智能电视等大屏幕的播放终端中进行播放的需求也越来越高。
在相关技术中,投屏终端和智能电视或者智能电视机顶盒等播放设备中分别安装投屏应用和播放应用,投屏终端向智能电视或者智能电视机顶盒等播放设备进行投屏时,投屏终端中的投屏应用通常将目标视频的视频地址发送给播放设备中的播放应用,由播放应用根据该视频地址向网络侧请求视频数据并进行播放。
然而,相关技术中的播放设备通常只支持较为简单的网络协议,比如,只支持超文本传输协议(Hyper Text Transfer Protocol,HTTP)协议,而简单的网络协议通常无法对加密保护的视频进行投屏播放,从而影响投屏的应用场景。
发明内容
本申请实施例提供了一种对视频进行投屏播放的方法、装置、设备及存储介质,可以支持对经过加密保护的视频进行投屏,从而扩展投屏的应用场景,该技术方案如下:
一方面,提供了一种对视频进行投屏播放的方法,所述方法由投屏终端执行,所述方法包括:
接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;
根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;
根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。
另一方面,提供了一种对视频进行投屏播放的装置,所述装置用于投屏终端中,所述装置包括:
原始地址获取模块,用于接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;
地址改写模块,用于根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;
投屏模块,用于根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。
在一种可能的实现方式中,所述投屏模块,包括:
密钥及数据获取单元,用于根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据;
解密单元,用于通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据;
投屏单元,用于将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述密钥及数据获取单元,用于
根据所述目标索引文件地址向视频数据服务器获取所述目标视频的索引文件,所述索引文件中包含所述目标视频的文件标识以及鉴权信息;
向鉴权服务器发送鉴权请求,所述鉴权请求中包含所述目标视频的文件标识以及所述鉴权信息;
接收所述鉴权服务器根据所述鉴权请求鉴权成功后返回的所述数据密钥;
根据所述索引文件中的视频数据地址向所述视频数据服务器获取所述第一视频数据。
在一种可能的实现方式中,所述投屏终端与所述播放设备处于同一局域网,所述投屏模块还包括:
局域网服务器建立单元,用于在所述投屏单元将所述第二视频数据投屏至所述播放设备中进行播放之前,在所述投屏终端中建立虚拟局域网服务器;
所述投屏单元,用于通过所述虚拟局域网服务器,将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述投屏单元,用于,
对所述索引文件进行重写,获得重写后的索引文件,所述重写后的索引文件中包含的视频数据地址指向所述虚拟局域网服务器;
将所述重写后的索引文件发送给所述播放设备;
当接收到所述播放设备根据所述重写后的索引文件发送给所述虚拟局域网服务器的视频数据获取请求时,将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述投屏模块,包括:
指示信息发送单元,用于向所述播放设备发送包含所述目标索引文件地址的投屏指示信息,所述投屏指示信息用于指示所述播放设备根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据,通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据,并根据所述第二视频数据播放所述目标视频。
在一种可能的实现方式中,所述指示信息发送单元,用于,
向所述播放设备中安装的投屏模拟器发送所述投屏指示信息,所述投屏模拟器是支持与所述投屏终端之间的投屏协议的模拟器程序。
在一种可能的实现方式中,所述原始地址获取模块,包括:
投屏界面展示单元,用于展示投屏界面,所述投屏界面中包含所述目标视频的播放入口;
第一获取单元,用于接收到对所述播放入口的触发操作时,获取所述目标视频的原始索引文件地址。
在一种可能的实现方式中,所述原始地址获取模块,包括:
播放界面展示单元,用于展示视频播放界面,所述视频播放界面中包含所述目标视频的播放入口,以及对应所述播放入口显示的投屏控件;
第二获取单元,用于接收到对所述投屏控件的触发操作时,获取所述目标视频的原始索引文件地址。
在一种可能的实现方式中,所述地址改写模块,用于将所述投屏终端的身份标识添加到所述原始索引文件地址中的指定位置,获得所述目标索引文件地址。
另一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的对视频进行投屏播放的方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上所述的对视频进行投屏播放的方法。
本申请提供的技术方案可以包括以下有益效果:
通过投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,然后根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请各个实施例涉及的一种投屏系统的系统构成图;
图2是根据一示例性实施例示出的对视频进行投屏播放的方法的流程图;
图3是根据一示例性实施例示出的对视频进行投屏播放的方法的流程图;
图4是图3所示实施例涉及的通过智能手机作为代理服务器进行投屏的时序图;
图5是图3所示实施例涉及的投屏过程的交互流程图;
图6是根据一示例性实施例示出的对视频进行投屏播放的方法的流程图;
图7是图6所示实施例涉及的投屏过程的交互流程图;
图8是根据一示例性实施例示出的对视频进行投屏播放的装置的结构方框图;
图9是根据一示例性实施例示出的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提出了一种对视频进行投屏播放的方案,该方案能够通过在投屏终端侧的辅助操作实现对加密保护的视频的投屏支持,从而扩展投屏的应用场景。
请参考图1,其示出了本申请各个实施例涉及的一种投屏系统的系统构成图。如图1所示,该系统包括投屏终端110、播放设备120以及服务器130。
投屏终端110可以是具有网络连接能力,且支持加密视频播放的终端设备。比如,投屏终端110可以是智能手机、平板电脑以及电子书阅读器等移动式便携终端,或者,该投屏终端也可以是智能眼镜、智能手表等智能可穿戴设备。
可选的,投屏终端110中可以安装有投屏应用,该投屏应用是用于将投屏终端110可播放的视频投屏到其它设备中的应用程序。
播放设备120可以是具有网络连接能力的计算机设备,比如,播放设备120可以是智能电视、与智能电视/非智能电视相连的智能电视机顶盒等专用的电视设备,或者,播放设备120也可以是通用的个人计算机,比如台式计算机、笔记本电脑等等。
可选的,播放设备120中可以安装有播放应用,该播放应用是用于根据投屏终端110中的投屏应用的投屏操作,播放该投屏应用投屏过来的视频的应用程序。
可选的,上述投屏终端110与播放设备120之间可以通过有线网络或者无线网络相连。进一步的,上述投屏终端110与播放设备120之间可以通过同一个局域网相连。
服务器130可以是一台服务器,或者服务器130可以是由若干台服务器构成的服务器集群,或者服务器130可以包含一个或多个虚拟化平台,或者服务器130也可以是一个云计算服务中心。
服务器130可以由一个或多个功能单元组成。可选的,如图1所示,服务器130可以包括鉴权服务器130a和视频数据服务器130b等等。
其中,鉴权服务器130a用于基于投屏终端110/播放设备120的鉴权请求对加密视频进行鉴权。
视频数据服务器130b用于向投屏终端110/播放设备120发送视频数据,以便在播放设备120上进行投屏播放。
可选的,上述系统还可以包含数据库140。
上述数据库140可以是Redis数据库,或者,也可以是其它类型数据库。其中,数据库140用于存储各类数据,比如,鉴权服务器130a使用的鉴权相关的数据,以及,视频数据服务器130b使用的视频相关数据等等。
投屏终端110和播放设备120可以分别与服务器130之间通过通信网络相连。可选的,该通信网络是有线网络或无线网络。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与服务器130之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图2是根据一示例性实施例示出的一种对视频进行投屏播放的方法的流程图,该对视频进行投屏播放的方法可以用于计算机设备中,比如,该计算机设备可以是上述图1所示系统中的投屏终端110。如图2所示,该对视频进行投屏播放的方法可以包括如下步骤:
步骤21,接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,该原始索引文件地址指向该目标视频的索引文件。
其中,目标视频的索引文件可以是包含目标视频的索引,比如,包含目标视频中的各个传输流(Transport Stream,TS)分片的索引;可选的,该目标视频的索引文件还可以包含目标视频的鉴权信息。
比如,在一种可能的实现方式中,上述索引文件可以是m3u8文件。
步骤22,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址。
步骤23,根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放。
目前对网络中视频进行加密时,可以通过防盗链的形式对视频的索引文件地址进行加密保护,而本申请实施例,针对通过防盗链的形式进行加密的视频,投屏终端在将视频投屏至播放设备进行播放之前可以在投屏终端侧生成带有防盗链的目标索引文件地址,并根据带有防盗链的目标索引文件地址将目标视频投屏到播放设备中进行播放,在此过程中,无论播放设备是否支持对防盗链加密视频的处理,都可以实现目标视频的投屏播放。
综上所述,本申请实施例所示的方案,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,然后根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。
在上述图2所示的方案中,投屏终端获取到带有防盗链的目标索引文件地址后,在一种可能的实现方案中,可以在投屏终端侧通过目标索引文件地址请求视频数据,并将请求到的视频数据投屏到播放设备进行播放;或者,在另一种可能的实现方案中,也可以由播放设备直接根据该目标索引文件地址请求视频数据并播放,以实现投屏应用效果。本申请后续实施例,将分别对上述两种实现方案进行说明介绍。
图3是根据一示例性实施例示出的一种对视频进行投屏播放的方法的流程图,该对视频进行投屏播放的方法可以由投屏终端、播放设备以及服务器执行,比如,上述投屏终端、播放设备以及服务器可以是上述图1所示的系统中的投屏终端110、播放设备120以及服务器130。以通过投屏终端获取视频数据并投屏到播放设备进行播放为例,请参考图3,该对视频进行投屏播放的方法可以包括如下步骤:
步骤301,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,该原始索引文件地址指向该目标视频的索引文件。
在本申请实施例中,投屏终端中可以安装并运行有投屏应用,该投屏应用可以接收用户对目标视频的投屏播放的操作,此时,投屏应用可以获取目标视频的原始索引文件地址。
在一种可能的实现方式中,上述接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址的过程可以包括如下步骤:
S301a,投屏终端展示投屏界面,该投屏界面中包含该目标视频的播放入口。
在本申请实施例中,上述投屏应用可以展示一个投屏界面,该投屏界面中包含各个视频的播放入口,且投屏界面中每个视频默认投屏至投屏终端之外的播放设备上进行播放。
S301b,投屏终端接收到对该播放入口的触发操作时,获取该目标视频的原始索引文件地址。
其中,当用户想要将投屏界面中的目标视频投屏至播放设备时,用户可以直接触发目标视频的播放入口,比如,用户可以直接点击该目标视频的播放入口,此时,投屏应用确认接收到对目标视频进行投屏播放的操作,并获取目标视频的原始索引文件地址。
在另一种可能的实现方式中,上述接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址的过程也可以包括如下步骤:
S301c,投屏终端展示视频播放界面,该视频播放界面中包含该目标视频的播放入口,以及对应该播放入口显示的投屏控件。
在本申请实施例中,上述投屏应用也可以展示一个视频播放界面,该视频播放界面中包含各个视频的播放入口,且该视频播放界面可以兼具直接视频播放以及视频投屏播放的功能,例如,该视频播放界面中除了显示有各个视频的播放入口之外,还对应每个视频的播放入口显示一个投屏控件。
其中,上述投屏控件可以在视频播放界面中默认展示,比如,视频播放界面中默认展示每个视频的播放入口,该播放入口之上叠加有投屏控件,或者,视频播放界面中默认展示每个视频的播放入口,且该播放入口旁边展示由投屏控件。
或者,上述投屏控件也可以通过对视频的触发操作唤出展示,比如,视频播放界面中默认展示每个视频的播放控件,当用户触发目标视频的播放控件后,在该视频播放界面中叠加展示目标视频的播放方式选择界面,该播放方式选择界面可以是视频播放界面的子界面,或者,该播放方式选择界面可以是对应目标视频的一个下拉框;该播放方式选择界面中至少包含直接播放选项和投屏播放选项,其中,该投屏播放选项即为上述投屏控件,而直接播放选项即为上述播放入口。
S301d,投屏终端接收到对该投屏控件的触发操作时,获取该目标视频的原始索引文件地址。
其中,当用户想要将投屏界面中的目标视频投屏至播放设备时,用户可以触发目标视频的投屏控件,比如,用户可以点击该目标视频的投屏控件,此时,投屏应用确认接收到对目标视频进行投屏播放的操作,并获取目标视频的原始索引文件地址。
或者,当用户想要在投屏终端中直接播放目标视频时,用户可以直接点击目标视频的播放入口,此时,投屏终端将通过投屏应用直接播放上述目标视频。
在一种可能的实现方式中,投屏终端在获取目标视频的原始索引文件地址时,可以直接获取本地存储的该目标视频的原始索引文件地址,其中,该目标视频的原始索引文件地址可以是投屏应用在展示上述投屏界面或者视频播放界面时,从服务器获取到的索引文件地址。
步骤302,投屏终端根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址。
其中,上述投屏终端的身份标识可以是投屏应用启动或者登录用户账号之后,服务器为投屏终端分配的身份密钥(secret key,SK),该SK可以是一个服务器按照字符串(Token)机制为投屏终端分配的Token。
在本申请实施例中,投屏终端中的投屏应用可以按照预先设置好的地址改写规则,根据投屏终端的身份标识对该原始索引文件地址进行改写。
比如,在一种可能的实现方式中,上述投屏应用按照预先设置好的地址改写规则对原始索引文件地址进行改写时,可以将该投屏终端的身份标识添加到该原始索引文件地址中的指定位置,获得该目标索引文件地址。
比如,以索引文件是m3u8文件为例,目标视频的原始索引文件地址如下:
https://125389702.vod2.myqcloud.com/ebdeab95vodtransgzp125389702/df73189a9031868223075911400/XGMrGA8rE81A.f210.m3u8。
其中,投屏终端的身份标识SK为:voddrm.token.SK。
在一个示例性的方案中,投屏应用按照预先设置好的地址改写规则,将投屏终端的身份标识SK添加到原始索引文件地址中的指定位置,得到新的索引文件地址如下:
https://125389702.vod2.myqcloud.com/ebdeab95vodtransgzp125389702/df73189a9031868223075911400/voddrm.token.SK.XGMrGA8rE81A.f210.m3u8。
其中,上述添加SK之后的新的索引文件地址即为带有防盗链的目标索引文件地址。
步骤303,投屏终端根据该目标索引文件地址,向服务器获取该目标视频的数据密钥,以及该目标视频的第一视频数据,该第一视频数据是加密后的视频数据。
在本申请实施例中,投屏终端可以自行获取目标视频的数据密钥和加密后的视频数据,在一个示例性的方案中,投屏终端获取目标视频的数据密钥和加密后的视频数据的过程可以如下:
S303a,投屏终端根据该目标索引文件地址向视频数据服务器获取该目标视频的索引文件,该索引文件中包含该目标视频的文件标识以及鉴权信息。
在本申请实施例中,服务器可以分为视频数据服务器和鉴权服务器,投屏终端中的投屏应用首先根据带有防盗链的目标索引文件地址,向视频数据服务器请求索引文件,从而实现对通过防盗链加密的索引文件的获取。
在一种示例性的方案中,上述视频数据服务器可以用于管理视频数据的云服务器,上述鉴权服务器可以是投屏终端中的投屏应用对应的后台服务器。
比如,当上述索引文件是m3u8文件时,上述目标视频的文件标识可以是目标视频的视频文件的ID,即file ID。上述鉴权信息可以包括译码索引(keySource)、加密后的数据密钥(Encrypted Data Key,EDK)以及SK等。
S303b,投屏终端向鉴权服务器发送鉴权请求,该鉴权请求中包含该目标视频的文件标识以及该鉴权信息。
其中,投屏应用获取到上述索引文件之后,即可以根据该索引文件向鉴权服务器发起鉴权请求,以对投屏终端播放该目标视频的权限进行鉴权。
比如,以上述索引文件是m3u8文件为例,该m3u8文件中的EXT-X-KEY标签(tag)指向目标视频的统一资源标识符(Uniform Resource Identifier,URI),该URI中包含fileID、keySource、EDK以及SK等信息,投屏应用可以访问上述m3u8文件中的EXT-X-KEY所指向的URI,以向鉴权服务器发送鉴权请求。
S303c,投屏终端接收该鉴权服务器根据该鉴权请求鉴权成功后返回的数据密钥。
在本申请实施例中,目标视频的加密方式除了上述防盗链之外,还可以包括数字版权管理(Digital Rights Management,DRM)加密,比如,直接对目标视频的TS分片进行加密。
以上述索引文件是m3u8文件为例,在本申请实施例中,鉴权服务器通过fileID、keySource、EDK以及SK等信息对投屏终端播放目标视频的权限进行鉴权,当鉴权通过后,鉴权服务器可以向投屏终端返回数据密钥(Data Key,DK),该数据密钥用于对目标视频的视频数据进行解密。
S303d,投屏终端根据该索引文件中的视频数据地址向该视频数据服务器获取该第一视频数据。
在本申请实施例中,投屏应用除了向鉴权服务器发起鉴权并获取数据密钥之外,还根据索引文件中的视频数据地址向视频数据服务器获取目标视频的加密后的TS分片,即上述第一视频数据。
步骤304,投屏终端通过该数据密钥对该第一视频数据进行解密,获得该目标视频的第二视频数据。
在本申请实施例中,目标视频可以分为多个TS分片,投屏应用在获取视频数据并解密的过程中,每向视频数据获取一个TS分片时,可以向鉴权服务器获取该TS分片对应的数据密钥,并根据获取到的数据密钥对相应的TS分片进行解密。
步骤305,投屏终端将该第二视频数据投屏至该播放设备中进行播放。
在本申请实施例中,支持经过防盗链加密和DRM加密的视频的投屏终端,可以通过投屏应用在本地对经过防盗链加密和DRM加密的视频进行处理,获得解密后的视频数据,并将解密后的视频数据投屏至播放设备中进行播放,在此过程中,无论播放设备是否支持对防盗链加密和DRM加密的视频的处理,都可以实现目标视频的投屏播放。
在一种可能的实现方式中,投屏终端将解密后的第二视频数据投屏至该播放设备中进行播放时,可以通过投屏应用和播放设备中的播放应用之间的私有协议,将该第二视频数据传输给播放应用进行播放。
在另一种可能的实现方式中,投屏终端也可以借助于代理服务器,向播放设备提供上述解密后的第二视频数据。比如,上述投屏终端与该播放设备处于同一局域网,在将该第二视频数据投屏至该播放设备中进行播放之前,投屏应用可以在该投屏终端中建立虚拟局域网服务器,在将该第二视频数据投屏至该播放设备中进行播放时,投屏应用通过该虚拟局域网服务器,将该第二视频数据投屏至该播放设备中进行播放。
其中,投屏应用通过该虚拟局域网服务器,将该第二视频数据投屏至该播放设备中进行播放的过程可以如下:
S305a,投屏终端对该索引文件进行重写,获得重写后的索引文件,该重写后的索引文件中包含的视频数据地址指向该虚拟局域网服务器。
上述索引文件中包含目标视频的视频数据地址,且该目标视频的视频数据地址指向网络侧的视频数据服务器,而上述播放设备可能并不支持直接从视频数据服务器获取加密后的视频数据并解密,因此,在本申请实施例中,投屏终端在投屏时,可以对目标视频的索引文件进行重写,将索引文件中原来的视频数据地址修改为虚拟局域网服务器的地址,从而获得重写后的索引文件。
S305b,投屏终端将该重写后的索引文件发送给该播放设备。
投屏终端将索引文件中原来的视频数据地址修改为虚拟局域网服务器的地址后,将重写后的索引文件发送给该播放设备,播放设备接收到重写后的索引文件后,可以向重写后的索引文件中的视频数据地址发起视频数据请求,也就是向投屏终端侧的虚拟局域网服务器发送该视频数据请求。
S305c,当接收到该播放设备根据该重写后的索引文件发送给该虚拟局域网服务器的视频数据获取请求时,投屏终端将该第二视频数据投屏至该播放设备中进行播放。
通过上述方案,投屏终端通过重写前的索引文件中携带的视频数据地址,向视频数据服务器请求加密的视频数据,并通过从鉴权服务器获得的数据密钥对加密的视频数据进行解密,获得解密的视频数据,在接收到播放设备根据重写后的索引文件中的视频数据地址发送给投屏终端本地的虚拟局域网服务器的视频数据请求后,将解密的视频数据发送给播放设备进行播放,在此过程中,播放设备不需要支持对DRM加密视频数据的处理能力,直接可以获得解密后的视频数据并投屏播放,从而扩展了投屏应用对DRM加密视频的投屏场景。
步骤306,播放设备根据该第二视频数据播放目标视频。
在本申请实施例中,播放设备中的播放应用获取到投屏终端中的投屏应用提供的,解密后的第二视频数据之后,即可以对该第二视频数据进行渲染和显示,以播放上述目标视频。
在一种示例性的方案中,通过上述图3所示实施例的方案,可以通过支持超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS)和加密视频处理的智能手机,实现对不支持HTTPS和加密视频的智能电视/智能电视机顶盒进行加密视频的投屏。其中,请参考图4,其示出了本申请实施例涉及的一种通过智能手机作为代理(proxy)服务器进行投屏的时序图。如图4所示,该投屏过程可以如下:
S41,智能手机启动虚拟局域网服务器。
其中,智能手机端建立一个局域网内的代理服务器(即上述虚拟局域网服务器),以智能手机作为局域网服务器。
S42,智能手机向服务器请求目标视频的视频数据和数据密钥。
其中,智能手机中的投屏应用接收到用户对目标视频的投屏操作时,向服务器获取目标视频的加密后的视频数据以及数据密钥。该过程可以参考上述图3所示实施例中的步骤301至步骤303,此处不再赘述。
S43,在投屏时,智能手机将目标视频的索引文件中的视频数据的统一资源定位符(Uniform Resource Locator,URL)指向的IP改写成局域网内IP,即指向虚拟局域网服务器的IP地址。
S44,智能手机将改写后的索引文件发送给智能电视或者智能电视机顶盒。
S45,智能电视或者智能电视机顶盒根据改写后的索引文件向智能手机中的虚拟局域网服务器请求视频数据。
S46,智能手机通过数据密钥进行解密获得解密后的视频数据。
S47,智能手机将解密后的视频数据回包给智能电视或者智能电视机顶盒进行播放。
以目标视频是HTTP直播流(HTTP Live Streaming,HLS)格式的视频为例,智能电视或者智能电视机顶盒发送请求时,会根据改写后的索引文件,将请求发送到智能手机端,智能手机端作为proxy,将向网络侧的服务器请求回的HLS直播流的数据密钥Key和TS分片,在智能手机端通过Key对TS分片进行解密之后,回包给智能电视或者智能电视机顶盒进行播放,即保证视频数据的安全,又能实现HLS视频在智能电视或者智能电视机顶盒端的稳定播放。
请参考图5,其示出了本申请实施例涉及的投屏过程的交互流程图。以索引文件是m3u8文件,目标视频是HLS格式的视频为例,如图5所示,上述图4所示方案的流程可以如下:
首先,智能手机中的投屏应用启动且登录用户账号后,投屏应用获得投屏应用的后台服务器(即鉴权服务器)分配的身份标识SK(步骤S51)。用户在投屏应用的界面中点击某个在线课程的目标视频后,投屏应用获得该目标视频的原始m3u8URL(步骤S52)。然后,投屏应用将SK和原始m3u8URL组合成带有防盗链的m3u8URL(步骤S53)。
投屏应用访问带有防盗链的m3u8URL(步骤S54),云后台(即上述视频数据服务器)向投屏应用返回目标视频的m3u8文件(步骤S55),其中的EXT-X-KEY标签中的URI包含目标视频的file ID、keySource、EDK以及SK等信息。投屏应用解析目标视频的m3u8文件获得上述URI(步骤S56)。
投屏应用启动虚拟局域网服务器后,访问上述解析得到的URI(步骤S57)。投屏应用的后台服务器根据URI进行鉴权(步骤S58),并在鉴权成功后,向投屏应用返回目标视频的数据密钥DK(步骤S59),例如,后台服务器可以向投屏应用启动的虚拟局域网服务器返回该DK,其中,目标视频的每个TS分片对应不同的DK。
投屏应用根据m3u8文件中的TS分片的地址向云后台请求TS分片(步骤S510),云后台向投屏应用返回TS分片(步骤S511),例如,云后台可以向投屏应用启动的虚拟局域网服务器返回该TS分片。同时,投屏应用还将m3u8文件中的TS分片的地址进行重写为虚拟局域网服务器的地址,获得重写后的m3u8文件(步骤S512),并将重写后的m3u8文件发送给智能电视或者智能电视机顶盒中的播放应用(步骤S513)。
智能电视或者智能电视机顶盒中的播放应用根据重写后的m3u8文件,向智能手机中的虚拟局域网服务器请求TS分片(步骤S514),虚拟局域网服务器通过DK对播放应用请求的TS分片进行解密(步骤S515),并将解密后的TS分片返回给播放应用进行播放(步骤S516)。
综上所述,本申请实施例所示的方案,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,然后根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。
此外,本申请实施例所示的方案,投屏终端通过重写前的索引文件中携带的视频数据地址,向视频数据服务器请求加密的视频数据,并通过从鉴权服务器获得的数据密钥对加密的视频数据进行解密,获得解密的视频数据,在接收到播放设备根据重写后的索引文件中的视频数据地址发送给投屏终端本地的虚拟局域网服务器的视频数据请求后,将解密的视频数据发送给播放设备进行播放,在此过程中,播放设备不需要支持对DRM加密视频数据的处理能力,直接可以获得解密后的视频数据并投屏播放,从而扩展了投屏应用对DRM加密视频的投屏场景。
图6是根据一示例性实施例示出的一种对视频进行投屏播放的方法的流程图,该对视频进行投屏播放的方法可以由投屏终端、播放设备以及服务器执行,比如,上述投屏终端、播放设备以及服务器可以是上述图1所示的系统中的投屏终端110、播放设备120以及服务器130。以播放设备直接根据该目标索引文件地址请求视频数据并播放,以实现投屏应用效果为例,请参考图6,该对视频进行投屏播放的方法可以包括如下步骤:
步骤601,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,该原始索引文件地址指向该目标视频的索引文件。
步骤602,投屏终端根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址。
其中,上述步骤601和步骤602的执行过程可以参考上述图3所示实施例中的步骤301和步骤302下的描述,此处不再赘述。
步骤603,投屏终端向该播放设备发送包含该目标索引文件地址的投屏指示信息。
在本申请实施例中,投屏终端中安装有投屏应用,播放设备可以是个人计算机,播放设备中安装有的播放应用可以是投屏模拟器,该投屏模拟器是支持与投屏应用之间的投屏协议的模拟器程序,并且,该投屏模拟器还支持对DRM加密视频的请求以及解密的能力,投屏终端中的投屏应用在获取到带有防盗链的目标索引文件地址后,可以向该播放设备中安装的投屏模拟器发送该投屏指示信息;例如,投屏应用可以通过与投屏模拟器之间的投屏协议向投屏模拟器发送该带有防盗链的目标索引文件地址。
步骤604,播放设备根据该目标索引文件地址获取该目标视频的数据密钥,以及该目标视频的第一视频数据,该第一视频数据是加密后的视频数据。
步骤605,播放设备通过该数据密钥对该第一视频数据进行解密,获得该目标视频的第二视频数据。
其中,播放设备可以通过投屏模拟器向视频数据服务器获取第一视频数据,并向鉴权服务器发送鉴权请求并获取数据密钥,再通过数据密钥对第一视频数据进行解密获得第二视频数据,其中,播放设备通过投屏模拟器获得第二视频数据的过程,与上述图3所示实施例中投屏终端获取第二视频数据的过程(对应步骤303和步骤304)类似,此处不再赘述。
步骤606,播放设备根据该第二视频数据播放该目标视频。
在本申请实施例中,播放设备中的投屏模拟器(即播放应用)从服务器获取到解密后的第二视频数据之后,即可以对该第二视频数据进行渲染和显示,以播放上述目标视频。
在一种示例性的方案中,请参考图7,其示出了本申请实施例涉及的投屏过程的交互流程图。以索引文件是m3u8文件,目标视频是HLS格式的视频,播放应用是个人计算机中的投屏模拟器为例,如图7所示,上述图6所示方案的流程可以如下:
首先,智能手机中的投屏应用启动且登录用户账号后,投屏应用获得投屏应用的后台服务器(即鉴权服务器)分配的身份标识SK(步骤S71)。用户在投屏应用的界面中点击某个在线课程的目标视频后,投屏应用获得该目标视频的原始m3u8URL(步骤S72)。然后,投屏应用将SK和原始m3u8URL组合成带有防盗链的m3u8URL(步骤S73)。
投屏应用将带有防盗链的m3u8URL传递给个人电脑中的投屏模拟器(步骤S74),投屏模拟器访问带有防盗链的m3u8URL(步骤S75),云后台(即上述视频数据服务器)向投屏模拟器返回目标视频的m3u8文件(步骤S76),其中的EXT-X-KEY标签中的URI包含目标视频的file ID、keySource、EDK以及SK等信息。投屏模拟器解析目标视频的m3u8文件获得上述URI(步骤S77)。
投屏模拟器访问上述解析得到的URI(步骤S78),投屏应用的后台服务器根据URI进行鉴权(步骤S79),并在鉴权成功后,向投屏模拟器返回目标视频的数据密钥DK(步骤S710),其中,目标视频的每个TS分片对应不同的DK。
投屏模拟器根据m3u8文件中的TS分片的地址向云后台请求TS分片(步骤S711),云后台向投屏模拟器返回TS分片(步骤S712),投屏模拟器通过DK对TS分片进行解密(步骤S713),并对解密后的TS分片进行播放(步骤S714)
在一种示例性的方案中,本申请实施例涉及的投屏模拟器,可以模拟市场上主流的智能电视或者智能电视机顶盒,投屏应用的开发者可以通过投屏模拟器完成开发调试,不依赖智能电视或者智能电视机顶盒,极大降级开发成本,例如,开发者首先在个人计算机上安装投屏模拟器,启动投屏模拟器,投屏模拟器实现了智能电视或者智能电视机顶盒的投屏接收协议、解复用、渲染等功能,支持播放主流的音频和视频格式,例如HLS/MP4等,然后开发者可以运行智能手机上或者智能手机模拟器上的投屏应用,保证和投屏模拟器在同一个局域网里,通过投屏协议,智能手机即可搜索到投屏模拟器建立连接,此时的投屏模拟器即承担个人电脑上的智能电视或者智能电视机顶盒的作用,开发者可以直接进行投屏各项操作并调试,投屏模拟器接收到投屏连接会通过投屏模拟器内部的网络库请求相关数据,然后进行解复用、渲染等操作。
在另一种示例性的方案中,本申请涉及的投屏模拟器,也可以提供给用户使用,使得用户可以将智能手机上的点播的视频投屏到个人电脑上进行播放,从而扩展了投屏的应用场景。
综上所述,本申请实施例所示的方案,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,然后根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。
在一种示例性的方案中,以网络视频教学的应用场景为例,鉴于版权保护的原因,网络视频教学采用的HLS是HTTPS且加密的形式,HLS的加密主要有两种,一种是防盗链,也就是说给M3U8和TS文件的URL动态生成一个Token,另一种是DRM加密,也就是对TS分片的内容加密,比如,M3U8中包含tag:#EXT-X-KEY,根据该tag,可以通过URL获取对TS分片的内容加密的Key,然后对TS分片解密来播放文件,其中,1个TS分片可以对应1个Key,网络视频教学的视频可以采用两种结合的加密方式。
其中,网络视频教学场景中,将教学视频投屏到电视是刚需,然而目前智能电视或者智能电视机顶盒通常都不支持HTTPS,同时对于加密的视频更无法解密,而通过本申请上述图3所示实施例的方案,在网络视频教学场景中,在智能手机端建立一个局域网内的代理,智能手机端作为局域网服务器,智能手机端向智能电视/智能电视机顶盒建立连接,在向智能电视/智能电视机顶盒发送HLS视频的URL时,智能手机端对HLS视频的URL进行改写,将HLS视频的URL指向的IP改写为局域网内IP,智能电视/智能电视机顶盒发送请求时,则会发送到智能手机端,由智能手机端作为proxy向远端服务器请求,以请求回HLS视频的Key和TS分片,在智能手机端通过Key对TS分片进行解密之后,回包给智能电视/智能电视机顶盒进行播放,即保证安全又能稳定播放。
除了投屏到智能电视/智能电视机顶盒之外,通过上述图6所示实施例的方案,智能手机还支持将教学视频投屏到个人电脑的方案,这样即极大的方便了开发者开发调试,即开发调试时不依赖智能电视/智能电视机顶盒,通过个人电脑即可调试,又能保证用户对大屏幕的诉求,不强制依赖智能电视/智能电视机顶盒,支持通过模拟器投屏到电脑上。上述方案可以通过投屏模拟器来实现,也就是说该模拟器可以模拟市场上主流的智能电视/智能电视机顶盒,该投屏模拟器可以使用通用语言比如C++开发,可以同时运行在windows或者iOS等多种操作系统的计算机设备上。
图8是根据一示例性实施例示出的一种对视频进行投屏播放的装置的结构方框图。该对视频进行投屏播放的装置可以用于计算机设备,比如投屏终端中,以执行图2、图3或图6所示实施例中由投屏终端执行的全部或者部分步骤。该对视频进行投屏播放的装置可以包括:
原始地址获取模块801,用于接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;
地址改写模块802,用于根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;
投屏模块803,用于根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。
在一种可能的实现方式中,所述投屏模块803,包括:
密钥及数据获取单元,用于根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据;
解密单元,用于通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据;
投屏单元,用于将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述密钥及数据获取单元,用于
根据所述目标索引文件地址向视频数据服务器获取所述目标视频的索引文件,所述索引文件中包含所述目标视频的文件标识以及鉴权信息;
向鉴权服务器发送鉴权请求,所述鉴权请求中包含所述目标视频的文件标识以及所述鉴权信息;
接收所述鉴权服务器根据所述鉴权请求鉴权成功后返回的所述数据密钥;
根据所述索引文件中的视频数据地址向所述视频数据服务器获取所述第一视频数据。
在一种可能的实现方式中,所述投屏终端与所述播放设备处于同一局域网,所述投屏模块803还包括:
局域网服务器建立单元,用于在所述投屏单元将所述第二视频数据投屏至所述播放设备中进行播放之前,在所述投屏终端中建立虚拟局域网服务器;
所述投屏单元,用于通过所述虚拟局域网服务器,将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述投屏单元,用于,
对所述索引文件进行重写,获得重写后的索引文件,所述重写后的索引文件中包含的视频数据地址指向所述虚拟局域网服务器;
将所述重写后的索引文件发送给所述播放设备;
当接收到所述播放设备根据所述重写后的索引文件发送给所述虚拟局域网服务器的视频数据获取请求时,将所述第二视频数据投屏至所述播放设备中进行播放。
在一种可能的实现方式中,所述投屏模块803,包括:
指示信息发送单元,用于向所述播放设备发送包含所述目标索引文件地址的投屏指示信息,所述投屏指示信息用于指示所述播放设备根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据,通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据,并根据所述第二视频数据播放所述目标视频。
在一种可能的实现方式中,所述指示信息发送单元,用于,
向所述播放设备中安装的投屏模拟器发送所述投屏指示信息,所述投屏模拟器是支持与所述投屏终端之间的投屏协议的模拟器程序。
在一种可能的实现方式中,所述原始地址获取模块801,包括:
投屏界面展示单元,用于展示投屏界面,所述投屏界面中包含所述目标视频的播放入口;
第一获取单元,用于接收到对所述播放入口的触发操作时,获取所述目标视频的原始索引文件地址。
在一种可能的实现方式中,所述原始地址获取模块801,包括:
播放界面展示单元,用于展示视频播放界面,所述视频播放界面中包含所述目标视频的播放入口,以及对应所述播放入口显示的投屏控件;
第二获取单元,用于接收到对所述投屏控件的触发操作时,获取所述目标视频的原始索引文件地址。
在一种可能的实现方式中,所述地址改写模块802,用于将所述投屏终端的身份标识添加到所述原始索引文件地址中的指定位置,获得所述目标索引文件地址。
综上所述,本申请实施例所示的方案,投屏终端接收到对目标视频进行投屏播放的操作时,获取该目标视频的原始索引文件地址,根据该投屏终端的身份标识对该原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,然后根据该目标索引文件地址,将该目标视频投屏至播放设备中进行播放,无论播放设备是否支持对防盗链加密视频的处理,都可以通过投屏终端侧的预处理实现对防盗链加密视频的投屏播放,从而扩展了视频的投屏应用场景。
此外,本申请实施例所示的方案,投屏终端通过重写前的索引文件中携带的视频数据地址,向视频数据服务器请求加密的视频数据,并通过从鉴权服务器获得的数据密钥对加密的视频数据进行解密,获得解密的视频数据,在接收到播放设备根据重写后的索引文件中的视频数据地址发送给投屏终端本地的虚拟局域网服务器的视频数据请求后,将解密的视频数据发送给播放设备进行播放,在此过程中,播放设备不需要支持对DRM加密视频数据的处理能力,直接可以获得解密后的视频数据并投屏播放,从而扩展了投屏应用对DRM加密视频的投屏场景。
图9是根据一示例性实施例示出的计算机设备900的结构框图。该计算机设备900可以是上述图1所示系统中的投屏终端。
通常,计算机设备900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中各个方法实施例提供的方法中由投屏终端执行的方法。
在一些实施例中,计算机设备900还可选包括有:外围设备接口903和至少一个外围设备。处理器901、存储器902和外围设备接口903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口903相连。具体地,外围设备包括:射频电路904、触摸显示屏905、图像采集组件906、音频电路907、定位组件908和电源909中的至少一种。
外围设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器901和存储器902。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。
显示屏905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏905是触摸显示屏时,显示屏905还具有采集在显示屏905的表面或表面上方的触摸信号的能力。
图像采集组件906用于采集图像或视频。可选地,图像采集组件906包括前置摄像头和后置摄像头。在一些实施例中,图像采集组件906还可以包括闪光灯。
音频电路907可以包括麦克风和扬声器。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位计算机设备900的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。
电源909用于为计算机设备900中的各个组件进行供电。
在一些实施例中,计算机设备900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器915以及接近传感器916。
本领域技术人员可以理解,图9中示出的结构并不构成对计算机设备900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括计算机程序(指令)的存储器,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法中由投屏终端执行的全部或者部分步骤;或者,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法中由服务器执行的全部或者部分步骤;或者,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法中由播放终端执行的全部或者部分步骤。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (15)

1.一种对视频进行投屏播放的方法,其特征在于,所述方法由投屏终端执行,所述方法包括:
接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;
根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;
根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放,包括:
根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据;
通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据;
将所述第二视频数据投屏至所述播放设备中进行播放。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标索引文件获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,包括:
根据所述目标索引文件地址向视频数据服务器获取所述目标视频的索引文件,所述索引文件中包含所述目标视频的文件标识以及鉴权信息;
向鉴权服务器发送鉴权请求,所述鉴权请求中包含所述目标视频的文件标识以及所述鉴权信息;
接收所述鉴权服务器根据所述鉴权请求鉴权成功后返回的所述数据密钥;
根据所述索引文件中的视频数据地址向所述视频数据服务器获取所述第一视频数据。
4.根据权利要求2所述的方法,其特征在于,所述投屏终端与所述播放设备处于同一局域网,所述将所述第二视频数据投屏至所述播放设备中进行播放之前,还包括:
在所述投屏终端中建立虚拟局域网服务器;
所述将所述第二视频数据投屏至所述播放设备中进行播放,包括:
通过所述虚拟局域网服务器,将所述第二视频数据投屏至所述播放设备中进行播放。
5.根据权利要求4所述的方法,其特征在于,所述通过所述虚拟局域网服务器,将所述第二视频数据投屏至所述播放设备中进行播放,包括:
对所述索引文件进行重写,获得重写后的索引文件,所述重写后的索引文件中包含的视频数据地址指向所述虚拟局域网服务器;
将所述重写后的索引文件发送给所述播放设备;
当接收到所述播放设备根据所述重写后的索引文件发送给所述虚拟局域网服务器的视频数据获取请求时,将所述第二视频数据投屏至所述播放设备中进行播放。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放,包括:
向所述播放设备发送包含所述目标索引文件地址的投屏指示信息,所述投屏指示信息用于指示所述播放设备根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据,通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据,并根据所述第二视频数据播放所述目标视频。
7.根据权利要求6所述的方法,其特征在于,所述向所述播放设备发送包含所述目标索引文件地址的投屏指示信息,包括:
向所述播放设备中安装的投屏模拟器发送所述投屏指示信息,所述投屏模拟器是支持与所述投屏终端之间的投屏协议的模拟器程序。
8.根据权利要求1至7任一所述的方法,其特征在于,所述接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,包括:
展示投屏界面,所述投屏界面中包含所述目标视频的播放入口;
接收到对所述播放入口的触发操作时,获取所述目标视频的原始索引文件地址。
9.根据权利要求1至7任一所述的方法,其特征在于,所述接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,包括:
展示视频播放界面,所述视频播放界面中包含所述目标视频的播放入口,以及对应所述播放入口显示的投屏控件;
接收到对所述投屏控件的触发操作时,获取所述目标视频的原始索引文件地址。
10.根据权利要求1至7任一所述的方法,其特征在于,所述根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址,包括:
将所述投屏终端的身份标识添加到所述原始索引文件地址中的指定位置,获得所述目标索引文件地址。
11.一种对视频进行投屏播放的装置,其特征在于,所述装置用于投屏终端中,所述装置包括:
原始地址获取模块,用于接收到对目标视频进行投屏播放的操作时,获取所述目标视频的原始索引文件地址,所述原始索引文件地址指向所述目标视频的索引文件;
地址改写模块,用于根据所述投屏终端的身份标识对所述原始索引文件地址进行改写,获得带有防盗链的目标索引文件地址;
投屏模块,用于根据所述目标索引文件地址,将所述目标视频投屏至播放设备中进行播放。
12.根据权利要求11所述的装置,其特征在于,所述投屏模块,包括:
密钥及数据获取单元,用于根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据;
解密单元,用于通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据;
投屏单元,用于将所述第二视频数据投屏至所述播放设备中进行播放。
13.根据权利要求11所述的装置,其特征在于,所述投屏模块,包括:
指示信息发送单元,用于向所述播放设备发送包含所述目标索引文件地址的投屏指示信息,所述投屏指示信息用于指示所述播放设备根据所述目标索引文件地址获取所述目标视频的数据密钥,以及所述目标视频的第一视频数据,所述第一视频数据是加密后的视频数据,通过所述数据密钥对所述第一视频数据进行解密,获得所述目标视频的第二视频数据,并根据所述第二视频数据播放所述目标视频。
14.一种计算机设备,其特征在于,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至10任一所述的对视频进行投屏播放的方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至10任一所述的对视频进行投屏播放的方法。
CN201910700191.5A 2019-07-31 2019-07-31 对视频进行投屏播放的方法、装置、设备及存储介质 Active CN112312187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910700191.5A CN112312187B (zh) 2019-07-31 2019-07-31 对视频进行投屏播放的方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910700191.5A CN112312187B (zh) 2019-07-31 2019-07-31 对视频进行投屏播放的方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112312187A true CN112312187A (zh) 2021-02-02
CN112312187B CN112312187B (zh) 2022-09-06

Family

ID=74486069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910700191.5A Active CN112312187B (zh) 2019-07-31 2019-07-31 对视频进行投屏播放的方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112312187B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163261A (zh) * 2021-03-17 2021-07-23 深圳乐播科技有限公司 加密视频的解密推送方法、装置、设备及存储介质
CN113207035A (zh) * 2021-04-16 2021-08-03 乐视致新信息技术(武汉)有限公司 视频投屏方法、装置、设备和计算机可读存储介质
CN113422985A (zh) * 2021-06-15 2021-09-21 读书郎教育科技有限公司 一种对加密视频进行投屏的系统及方法
CN113938704A (zh) * 2021-10-15 2022-01-14 北京小度互娱科技有限公司 一种投屏方法、投屏端、被投屏端以及云端服务器
CN114157884A (zh) * 2021-12-02 2022-03-08 瑞森网安(福建)信息科技有限公司 一种高效云视频跨设备投屏方法、系统及存储介质
CN114157904A (zh) * 2021-12-02 2022-03-08 瑞森网安(福建)信息科技有限公司 基于移动终端的云视频投屏播放方法、系统及存储介质
CN115225934A (zh) * 2022-07-25 2022-10-21 未来电视有限公司 视频播放方法、系统、电子设备以及存储介质
CN115412758A (zh) * 2022-09-01 2022-11-29 北京奇艺世纪科技有限公司 一种视频处理方法及相关装置

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070073843A1 (en) * 2003-11-25 2007-03-29 Sagem Communication Method and device for video projection
CN103546823A (zh) * 2013-09-09 2014-01-29 Tcl商用信息科技(惠州)股份有限公司 基于本地网络的多屏互动系统及其实现方法
CN104519397A (zh) * 2013-09-29 2015-04-15 北大方正集团有限公司 音视频投屏播放方法、机顶盒和终端设备
CN104837035A (zh) * 2015-04-30 2015-08-12 华为软件技术有限公司 一种视频播放方法及终端
WO2016025479A1 (en) * 2014-08-11 2016-02-18 Browseplay, Inc. System and method for secure cross-platform video transmission
CN105516796A (zh) * 2015-12-18 2016-04-20 深圳市九洲电器有限公司 机顶盒多屏互动管理方法及系统
JP2017143319A (ja) * 2016-02-08 2017-08-17 Necディスプレイソリューションズ株式会社 投影システム、投影装置、無線通信装置、投影装置と無線通信装置との接続方法およびプログラム
CN107071550A (zh) * 2017-04-01 2017-08-18 北京奇艺世纪科技有限公司 一种视频数据共享方法和装置
CN107241640A (zh) * 2017-06-26 2017-10-10 中广热点云科技有限公司 一种移动设备和电视设备同步播放的方法
CN107707504A (zh) * 2016-08-08 2018-02-16 中国电信股份有限公司 一种流媒体的播放方法、系统以及服务器和客户端
CN107786526A (zh) * 2016-08-31 2018-03-09 北京优朋普乐科技有限公司 防盗链方法、客户端和服务器系统
CN207135116U (zh) * 2017-07-07 2018-03-23 浙江神州量子网络科技有限公司 一种基于真随机数密钥的无线投屏接收装置及系统
CN108111876A (zh) * 2017-12-21 2018-06-01 北京四达时代软件技术股份有限公司 一种局域网流媒体视频内容安全保护方法、终端及服务器
CN109408015A (zh) * 2018-09-30 2019-03-01 珠海市君天电子科技有限公司 一种多媒体文件处理方法、发送终端和显示终端
CN109639697A (zh) * 2018-12-24 2019-04-16 广州微算互联信息技术有限公司 云手机安全投屏的方法、移动终端和服务器

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070073843A1 (en) * 2003-11-25 2007-03-29 Sagem Communication Method and device for video projection
CN103546823A (zh) * 2013-09-09 2014-01-29 Tcl商用信息科技(惠州)股份有限公司 基于本地网络的多屏互动系统及其实现方法
CN104519397A (zh) * 2013-09-29 2015-04-15 北大方正集团有限公司 音视频投屏播放方法、机顶盒和终端设备
WO2016025479A1 (en) * 2014-08-11 2016-02-18 Browseplay, Inc. System and method for secure cross-platform video transmission
CN104837035A (zh) * 2015-04-30 2015-08-12 华为软件技术有限公司 一种视频播放方法及终端
CN105516796A (zh) * 2015-12-18 2016-04-20 深圳市九洲电器有限公司 机顶盒多屏互动管理方法及系统
JP2017143319A (ja) * 2016-02-08 2017-08-17 Necディスプレイソリューションズ株式会社 投影システム、投影装置、無線通信装置、投影装置と無線通信装置との接続方法およびプログラム
CN107707504A (zh) * 2016-08-08 2018-02-16 中国电信股份有限公司 一种流媒体的播放方法、系统以及服务器和客户端
CN107786526A (zh) * 2016-08-31 2018-03-09 北京优朋普乐科技有限公司 防盗链方法、客户端和服务器系统
CN107071550A (zh) * 2017-04-01 2017-08-18 北京奇艺世纪科技有限公司 一种视频数据共享方法和装置
CN107241640A (zh) * 2017-06-26 2017-10-10 中广热点云科技有限公司 一种移动设备和电视设备同步播放的方法
CN207135116U (zh) * 2017-07-07 2018-03-23 浙江神州量子网络科技有限公司 一种基于真随机数密钥的无线投屏接收装置及系统
CN108111876A (zh) * 2017-12-21 2018-06-01 北京四达时代软件技术股份有限公司 一种局域网流媒体视频内容安全保护方法、终端及服务器
CN109408015A (zh) * 2018-09-30 2019-03-01 珠海市君天电子科技有限公司 一种多媒体文件处理方法、发送终端和显示终端
CN109639697A (zh) * 2018-12-24 2019-04-16 广州微算互联信息技术有限公司 云手机安全投屏的方法、移动终端和服务器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SRIRANJAN RASAKATLA等: "WAY-GO torch: An intelligent flash light", 《2013 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND BIOMIMETICS (ROBIO)》 *
张磊: "无线传屏系统的研究与实现", 《中国优秀硕士学位论文全文数据库》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163261A (zh) * 2021-03-17 2021-07-23 深圳乐播科技有限公司 加密视频的解密推送方法、装置、设备及存储介质
CN113207035A (zh) * 2021-04-16 2021-08-03 乐视致新信息技术(武汉)有限公司 视频投屏方法、装置、设备和计算机可读存储介质
CN113422985A (zh) * 2021-06-15 2021-09-21 读书郎教育科技有限公司 一种对加密视频进行投屏的系统及方法
CN113938704A (zh) * 2021-10-15 2022-01-14 北京小度互娱科技有限公司 一种投屏方法、投屏端、被投屏端以及云端服务器
CN113938704B (zh) * 2021-10-15 2023-03-21 北京小度互娱科技有限公司 投屏方法、投屏端、被投屏端、云端服务器以及投屏系统
CN114157884A (zh) * 2021-12-02 2022-03-08 瑞森网安(福建)信息科技有限公司 一种高效云视频跨设备投屏方法、系统及存储介质
CN114157904A (zh) * 2021-12-02 2022-03-08 瑞森网安(福建)信息科技有限公司 基于移动终端的云视频投屏播放方法、系统及存储介质
CN115225934A (zh) * 2022-07-25 2022-10-21 未来电视有限公司 视频播放方法、系统、电子设备以及存储介质
CN115225934B (zh) * 2022-07-25 2023-11-28 未来电视有限公司 视频播放方法、系统、电子设备以及存储介质
CN115412758A (zh) * 2022-09-01 2022-11-29 北京奇艺世纪科技有限公司 一种视频处理方法及相关装置
CN115412758B (zh) * 2022-09-01 2023-11-14 北京奇艺世纪科技有限公司 一种视频处理方法及相关装置

Also Published As

Publication number Publication date
CN112312187B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
CN112312187B (zh) 对视频进行投屏播放的方法、装置、设备及存储介质
US10567809B2 (en) Selective media playing method and apparatus according to live streaming and recorded streaming
KR102312755B1 (ko) 수신 장치, 수신 방법, 송신 장치 및 송신 방법
JP6293269B2 (ja) コンテンツ視聴確認装置及びその方法
CN113411642B (zh) 投屏方法、装置、电子设备和存储介质
CN109891907B (zh) 使用可信平台模块验证在客户端设备处对视频内容的渲染
CN112995759A (zh) 互动业务处理方法、系统、装置、设备及存储介质
CN107968783B (zh) 流量管理方法、装置、终端及计算机可读存储介质
US20180373736A1 (en) Method and apparatus for storing resource and electronic device
WO2022057575A1 (zh) 一种多媒体数据的发布方法、装置、设备及介质
CN112073421B (zh) 通信处理方法、装置、终端及存储介质
CN112969093B (zh) 互动业务处理方法、装置、设备及存储介质
CN113676485A (zh) 虚拟现实交互方法、装置、存储介质与电子设备
US10459534B2 (en) System and method for large data augmented reality applications on smartglasses
CN115065487A (zh) 隐私保护云计算方法、保护金融隐私数据的云计算方法
US10231004B2 (en) Network recording service
KR101701625B1 (ko) 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템
CN112714331B (zh) 信息提示方法和装置、存储介质、电子设备
CN112434327A (zh) 信息保护方法、装置及电子设备
KR100931500B1 (ko) 리치미디어 서버와 리치미디어 전송 시스템 및 리치미디어전송 방법
KR101837283B1 (ko) 360도 영상 재생 시 사용자 단말 기울기 정보를 이용하여 재생 영역을 보정하는 방법 및 시스템
CN111901637A (zh) 网络直播房间的管理方法、装置以及存储介质
WO2017206401A1 (zh) 视频解密方法及装置
JP6457938B2 (ja) 受信装置、受信方法、及び、送信方法
CN111770373B (zh) 基于直播的内容同步方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40038270

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant