CN110049355A - 多媒体文件播放方法及装置 - Google Patents

多媒体文件播放方法及装置 Download PDF

Info

Publication number
CN110049355A
CN110049355A CN201810044029.8A CN201810044029A CN110049355A CN 110049355 A CN110049355 A CN 110049355A CN 201810044029 A CN201810044029 A CN 201810044029A CN 110049355 A CN110049355 A CN 110049355A
Authority
CN
China
Prior art keywords
terminal
code rate
supported
highest
slicing files
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.)
Pending
Application number
CN201810044029.8A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810044029.8A priority Critical patent/CN110049355A/zh
Priority to PCT/CN2018/096116 priority patent/WO2019140877A1/zh
Publication of CN110049355A publication Critical patent/CN110049355A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • 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/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

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

Abstract

本公开提供了一种多媒体文件播放方法及装置,属于网络技术领域。所述方法包括:当接收到终端的索引文件获取请求时,获取多媒体文件的第一索引文件,第一索引文件包括所述多媒体文件的所***率以及所***率的分片文件的地址;获取所述终端支持的最高码率;根据所述终端支持的最高码率,从第一索引文件中删除指定码率以及指定码率的分片文件的地址,得到第二索引文件,所述指定码率高于所述最高码率;将第二索引文件发送给所述终端,第二索引文件用于所述终端根据第二索引文件对所述多媒体文件进行播放。本公开通过控制提供给终端的索引文件中的码率低于终端支持的最高码率,避免了由于终端选择分片文件的码率过大而导致播放效果差的问题。

Description

多媒体文件播放方法及装置
技术领域
本公开涉及网络技术领域,特别涉及一种多媒体文件播放方法及装置。
背景技术
随着网络技术的发展,网络直播平台逐渐兴起,网络直播平台可以提供各种直播节目,如新闻直播、体育赛事直播、电视剧直播、综艺节目直播等等。当用户想要观看某个直播节目时,可以在终端上播放该直播节目对应的多媒体文件。
目前,终端播放多媒体文件的方法如下:终端向服务器发送播放某个多媒体文件的请求,服务器在接收到该请求后,可以向终端发送该多媒体文件的索引文件,该索引文件中包含了该多媒体文件的所***率以及每个码率的分片文件的地址。终端在接收到该索引文件后,可以根据当前的无线保真(Wireless Fidelity,WiFi)带宽,在索引文件包含的所***率中,选择与该WiFi带宽相匹配的码率,并根据该码率的分片文件的地址,下载该码率的分片文件进行播放。另外,终端可以根据该码率的分片文件的下载耗时,来选择下载不同码率的下一个分片文件,如当该分片文件下载耗时较大时,终端可以在所***率中,尝试选择下载更低码率的下一个分片文件来进行播放;当该分片文件下载耗时较小时,终端可以在所***率中,尝试选择下载更高码率的下一个分片文件来进行播放,直至调整至一个合适的码率,例如,该合适的码率是指下载耗时为预设阈值的码率。
在实现本公开的过程中,发明人发现相关技术至少存在以下问题:
上述技术在播放多媒体文件的过程中,终端根据接收到的索引文件中包含的所***率,不断尝试选择不同码率的分片文件进行下载,如果选择的码率过大,如大于终端支持的最高码率,则会导致播放效果差。
发明内容
本公开实施例提供了一种多媒体文件播放方法及装置,可以解决相关技术播放效果差的问题。所述技术方案如下:
第一方面,提供了一种多媒体文件播放方法,所述方法包括:
当接收到终端的索引文件获取请求时,获取多媒体文件的第一索引文件,所述第一索引文件包括所述多媒体文件的所***率以及所***率的分片文件的地址;
获取所述终端支持的最高码率;
根据所述终端支持的最高码率,从所述第一索引文件中删除指定码率以及所述指定码率的分片文件的地址,得到第二索引文件,所述指定码率高于所述最高码率;
将所述第二索引文件发送给所述终端,所述第二索引文件用于所述终端根据所述第二索引文件对所述多媒体文件进行播放。
本公开实施例提供的方法,通过获取终端支持的最高码率,并根据该最高码率对索引文件中的码率进行调整,使得终端接收到的索引文件中的码率低于终端支持的最高码率,避免了终端选择码率大于终端支持的最高码率的分片文件进行下载而导致播放效果差的问题。
在一种可能实现方式中,所述获取所述终端支持的最高码率,包括:
获取所述终端的业务信息;
根据所述终端的业务信息,获取所述终端支持的最高码率。
本公开实施例提供的方法,终端支持的最高码率可以根据终端的业务信息获取,从而实现根据运营商要求,定制对不同终端的码率限制,可控制为不同收费用户提供不同等级的多媒体文件播放服务。
在一种可能实现方式中,所述根据所述终端的业务信息,获取所述终端支持的最高码率,包括:
根据所述终端的业务信息,确定所述终端的业务等级;
根据所述终端的业务等级,确定所述终端支持的最高码率,不同的业务等级对应不同的最高码率。
本公开实施例提供的方法,通过终端的业务信息确定业务等级,进而确定终端支持的最高码率,提供了一种根据业务信息获取最高码率的实现方式。
在一种可能实现方式中,所述获取所述终端支持的最高码率,包括:
获取所述终端所属网关、所述终端所连接路由器或基站的性能信息;
根据所述性能信息,确定所述终端支持的最高码率。
本公开实施例提供的方法,终端支持的最高码率可以根据终端所属网关、所连接路由器或基站的性能信息获取,从而更精准的为终端提供可用的码率。
在一种可能实现方式中,所述性能信息包括广域网(Wide Area Network,WAN)侧单播可用带宽、WAN侧组播可用带宽、中央处理器(Central Processing Unit,CPU)占用比例、内存占用比例以及终端侧可用带宽中的至少一项。
本公开实施例提供的方法,终端支持的最高码率可以根据WAN侧可用带宽、WAN侧组播可用带宽、CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项获取,提供了一种获取最高码率的实现方式。
在一种可能实现方式中,所述根据所述性能信息,确定所述终端支持的最高码率,包括:
将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中任一项作为所述终端支持的最高码率;或,
根据所述内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定所述终端支持的最高码率;或,
根据所述CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定所述终端支持的最高码率;或,
将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中至少两项进行加权求和,得到所述终端支持的最高码率。
本公开实施例提供的方法,终端支持的最高码率可以根据WAN侧可用带宽或终端侧可用带宽获取,也可以根据CPU占用比例或内存占用比例获取,提供了一种获取最高码率的实现方式。
在一种可能实现方式中,所述根据所述内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定所述终端支持的最高码率,包括:
根据所述内存占用比例,确定剩余内存;
根据所述剩余内存、分片文件的缓存数目以及每个分片文件的时长,确定可缓存的最高码率;
将所述可缓存的最高码率作为所述终端支持的最高码率。
本公开实施例提供的方法,终端支持的最高码率可以根据内存占用比例、分片文件的缓存数目以及每个分片文件的时长获取,提供了一种获取最高码率的实现方式。
在一种可能实现方式中,所述根据所述CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定所述终端支持的最高码率,包括:
根据所述CPU占用比例,确定剩余CPU占用比例;
根据所述剩余CPU占用比例以及所述对应关系,获取所述剩余CPU占用比例对应的码率;
将所述剩余CPU占用比例对应的码率作为所述终端支持的最高码率。
本公开实施例提供的方法,终端支持的最高码率可以根据CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系获取,提供了一种获取最高码率的实现方式。
第二方面,提供了一种多媒体文件播放装置,所述装置包括多个功能模块,所述多个功能模块用于执行上述第一方面所提供的多媒体文件播放方法以及其任一种可能实现方式。
第三方面,提供了一种电子设备,该电子设备包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,该电子设备使得该处理器执行第一方面或第一方面的任一种可能实现方式中的多媒体文件播放方法。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述第一方面或第一方面的任一种可能实现方式中的多媒体文件播放方法。
附图说明
图1是本公开实施例提供的一种***结构示意图。
图2是本公开实施例提供的一种终端200的结构示意图。
图3是本公开实施例提供的一种电子设备300的结构示意图。
图4是本公开实施例提供的一种多媒体文件播放方法的流程图。
图5是本公开实施例提供的一种多媒体文件播放装置的结构示意图。
具体实施方式
图1是本公开实施例提供的一种***结构示意图。参见图1,该***结构包括:终端、业务平台(Service Platform)服务器、用户驻地设备(Customer Premise Equipment,CPE)、基于组播的自适应码率控制器(Multicast of Adaptive Bit Rate Controller,M-ABR Controller)、内容分发网络(Content Delivery Network,CDN)服务器和多重数字版权管理(Multi-Digital Rights Management,MultiDRM)服务器。
其中,终端上安装有指定应用,该指定应用可以是播放器(Player),该Player用于播放多媒体文件;业务平台服务器用于提供多媒体文件的统一资源定位符(UniformResource Locator,URL)地址;CPE设备可以是终端所属网关(Gateway)、终端所连接路由器或基站,例如,同轴电缆上行的家庭网关(Home Gateway)、企业接入路由器(AccessRouter)、边缘路由器(Edge Router)或无线基站(Wireless Basestation)等,CPE设备上可以部署有组播转单播代理(Multicast to Unicast agent,M2U agent),该M2U agent可以是一个应用软件;M-ABR Controller用于控制基于组播的多媒体文件传输;CDN服务器用于提供多媒体文件的分片文件;MultiDRM服务器用于提供分片文件的解密信息。
图2是本公开实施例提供的一种终端200的结构示意图,该终端可以用于执行下述各个实施例中提供的多媒体文件播放方法。参见图2,该终端200包括:
终端200可以包括射频(Radio Frequency,RF)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(Wireless Fidelity,WiFi)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图2中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(Global System ofMobilecommunication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端200的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端200的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图2中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
终端200还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端200移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端200还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端200之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端200的通信。
WiFi属于短距离无线传输技术,终端200通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图2示出了WiFi模块170,但是可以理解的是,其并不属于终端200的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是终端200的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端200的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;可选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端200还包括给各个部件供电的电源190(比如电池),可选的,电源可以通过电源管理***与处理器180逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端200还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及可执行指令,其中可执行指令存储于存储器中,且经配置以由一个或者一个以上处理器执行。该可执行指令用于执行下述各个实施例中终端侧的多媒体文件播放方法。
图3是本公开实施例提供的一种电子设备300的结构示意图。该电子设备300可以被提供为CPE设备(网关、路由器或基站)。参见图3,该电子设备300可以包括处理器310和存储器320,还可以包括收发器330。该存储器320存储有计算机程序,处理器310用于执行存储器320上所存放的计算机程序,以执行下述各个实施例中的多媒体文件播放方法。
处理器310从其它元素接收到命令,解密接收到的命令,根据解密的命令执行计算或数据处理。存储器320可以包括程序模块,例如内核(kernel),中间件(middleware),应用程序编程接口(Application Programming Interface,API)和应用。该程序模块可以是有软件、固件或硬件、或其中的至少两种组成。
在示例性实施例中,还提供了一种计算机可读存储介质,例如存储有计算机程序的存储器,上述计算机程序由处理器加载并执行以完成下述实施例中的多媒体文件播放方法。例如,计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random-Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
图4是本公开实施例提供的一种多媒体文件播放方法的流程示意图。参见图4,包括:
401、终端向业务平台服务器发送统一资源定位符(Uniform Resource Locator,URL)地址获取请求,该URL地址获取请求用于请求获取多媒体文件的URL地址。
其中,多媒体文件可以是直播节目对应的多媒体文件。
本公开实施例中,终端可以通过向业务平台服务器发送URL地址获取请求的方式,从业务平台服务器请求多媒体文件的URL地址,该URL地址获取请求可以由用户的操作触发。例如,当用户想要在终端上观看某个直播节目时,可以在Player的显示界面中对该直播节目进行点击操作,触发终端向业务平台服务器发送URL地址获取请求,如图4中的“GetChannelURL”。
402、当接收到终端的URL地址获取请求时,业务平台服务器向终端返回该多媒体文件的URL地址。
本公开实施例中,业务平台服务器可以根据URL地址获取请求中携带的多媒体文件的标识,向终端的返回对应的多媒体文件的URL地址,如图4中的“Return Channel URL”。
403、终端接收到该多媒体文件的URL地址后,发送域名***(Domain NameSystem,DNS)请求,该DNS请求携带该多媒体文件的URL地址的域名部分。
本公开实施例中,终端可以从业务平台服务器得到多媒体文件的URL地址,终端在得到多媒体文件的URL地址后,可以根据该URL地址的域名部分,做域名解析。例如,终端可以向DNS服务器发送DNS请求,如图4中的“Channel Domain DNS Request”,以请求将多媒体文件的URL地址的域名部分解析成IP地址。
404、网关截获终端的DNS请求,向终端返回网关的IP地址。
本公开实施例中,该网关上部署有M2U agent,网关可以截获终端的Player向DNS服务器发送的DNS请求,将网关的IP地址(也是M2U agent的IP地址)作为URL地址对应的IP地址,向终端返回网关的IP地址,也即是M2U agent的IP地址,以加速域名解析,如图4中的“Capture DNS Request,Return M2U Agent IP for Accelerate Domain”和“DNSResponse”。
405、终端向网关发送索引文件获取请求,该索引文件获取请求用于获取多媒体文件的第一索引文件。
其中,该第一索引文件包括该多媒体文件的所***率以及所***率的分片文件的地址。
本公开实施例中,终端在得到网关的IP地址后,可以通过向网关发送索引文件获取请求的方式,向网关请求获取多媒体文件的索引文件,如图4中的“Get Manifest”。
406、当接收到终端的索引文件获取请求时,网关向CDN服务器发送该索引文件获取请求。
本公开实施例中,CDN服务器可以针对同一多媒体文件提供不同码率的多组分片文件,每组分片文件对应一个码率。这些分片文件部署在CDN服务器上,终端可以使用HTTP协议顺序请求分片文件进行播放。为了终端选择合适的分片文件,CDN服务器还提供一个索引文件,记录了多媒体文件的所***率以及所***率的分片文件的地址。
在该步骤406中,网关在接收到终端发送的索引文件获取请求时,可以做代理,通过向CDN服务器发送索引文件获取请求的方式,向CDN服务器获取多媒体文件的第一索引文件,如图4中的“Get Manifest”。
407、当接收到网关的索引文件获取请求时,CDN服务器向网关发送多媒体文件的第一索引文件。
其中,第一索引文件包括该多媒体文件的所***率以及所***率的分片文件的地址。
本公开实施例中,CDN服务器可以将第一索引文件发送给网关,作为对索引文件获取请求的响应,如图4中的“HTTP Response”。
408、网关接收到多媒体文件的第一索引文件。
上述步骤406至408是当接收到终端的索引文件获取请求时,网关获取多媒体文件的第一索引文件的一种可能实现方式。
409、网关获取该终端支持的最高码率。
在一种可能实现方式中,网关获取该终端支持的最高码率,包括:获取该终端所属网关的性能信息;根据该性能信息,确定该终端支持的最高码率。其中,该性能信息包括广域网WAN侧单播可用带宽、WAN侧组播可用带宽、中央处理器CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项。
其中,网关该根据该性能信息,确定该终端支持的最高码率包括但不限于以下四种方式:
第一种方式,将该WAN侧单播可用带宽、该WAN侧组播可用带宽和该终端侧可用带宽中任一项作为该终端支持的最高码率。
该方式下,如果网关获取到的性能信息为WAN侧单播可用带宽、该WAN侧组播可用带宽和该终端侧可用带宽中任一项,则网关可以将该任一项可用宽带作为终端支持的最高码率。例如,网关获取到的WAN侧单播可用带宽为10Mbps,则网关可以得出终端支持的最高码率为10Mbps。
第二种方式,根据该内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定该终端支持的最高码率。
该方式下,如果网关获取到的性能信息为内存占用比例,则网关可以根据该内存占用比例,确定剩余内存;根据该剩余内存、分片文件的缓存数目以及每个分片文件的时长,确定可缓存的最高码率;将该可缓存的最高码率作为该终端支持的最高码率。
例如,网关获取到的内存占用比例为80%,剩余内存为5MByte=50Mbit,每个分片文件2秒,缓存2个分片,则可缓存的最高码率为50÷2÷2=10Mbps。因此,网关可以在本地文件中缓存码率等于或低于10Mbsp的分片文件,例如,网关可以将分片文件缓存在本地的cache文件中。
第三种方式,根据该CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定该终端支持的最高码率。
该方式下,转发分片文件所需CPU占用比例与码率之间存在对应关系。如果网关获取到的性能信息为CPU占用比例,则网关可以根据该CPU占用比例,确定剩余CPU占用比例;根据该剩余CPU占用比例以及该对应关系,获取该剩余CPU占用比例对应的码率;将该剩余CPU占用比例对应的码率作为该终端支持的最高码率。
例如,网关获取到M2U agent占用分配给它的CPU占用比例达到95%,则剩余CPU占用比例为5%,如果转发码率为10Mbps的分片文件所需CPU占用比例为5%,则网关可以将10Mbps作为该终端支持的最高码率。
第四种方式,将该WAN侧单播可用带宽、该WAN侧组播可用带宽和该终端侧可用带宽中至少两项进行加权求和,得到该终端支持的最高码率。
相比于第一种方式,如果网关获取到的性能信息为WAN侧单播可用带宽、该WAN侧组播可用带宽和该终端侧可用带宽中至少两项,则网关可以对该至少两项可用带宽进行加权求和,得到终端支持的最高码率。例如,终端可以设置该至少两项可用带宽中最小的可用宽带的权重高于其他可用宽带的权重。当然,网关也可以直接将最小的可用宽带作为终端支持的最高码率,本公开实施例对此不做限定。
需要说明的是,上述可能实现方式是网关根据自身的性能信息确定终端支持的最高码率,实际上,网关也可以通过其他方式获取终端支持的最高码率,在一种可能实现方式中,网关该获取该终端支持的最高码率,包括:获取该终端的业务信息;根据该终端的业务信息,获取该终端支持的最高码率。
其中,网关该根据该终端的业务信息,获取该终端支持的最高码率,包括:根据该终端的业务信息,确定该终端的业务等级;根据该终端的业务等级,确定该终端支持的最高码率,不同的业务等级对应不同的最高码率。终端的业务信息可以预先配置在网关上,例如,运营商可以根据终端用户办理的业务信息,通过配置开关,将该业务信息预先配置在网关的M2U agent中,使得网关可以从本地存储中获取该业务信息,这种情况下,网关上可以配置有多个终端的业务信息,该多个终端所属网关均为该网关。通过根据运营商要求,定制对用户的码率限制,从而提供不同等级业务时的权限控制,为不同用户提供不同等级的服务。当然,终端的业务信息也可以不预先配置在网关上,而是在需要获取业务信息时,临时激活该业务信息,使得网关可以获取激活后的该业务信息。
可见,网关既可以根据性能信息计算出最高码率的限制,实现对终端支持的最高码率的动态控制,从而提供不同等级业务时的权限控制,也可以根据业务信息得出最高码率的限制,实现对终端支持的最高码率的静态控制。
410、网关根据该终端支持的最高码率,从该第一索引文件中删除指定码率以及该指定码率的分片文件的地址,得到第二索引文件,该指定码率高于终端支持的最高码率。
本公开实施例中,网关在确定终端支持的最高码率后,可以根据该最高码率,对该第一索引文件进行处理,如将第一索引文件中高于该最高码率的码率以及对应的分片文件删除。
例如,网关通过上述步骤409得出终端支持的最高码率为10Mbps,则网关可以将第一索引文件中高于10Mbps的码率对应的分片文件删除。例如,第一索引文件中某些分片文件的码率是25Mbps,已经超出了10Mbps,则网关可以将25Mbps的所有分片文件从第一索引文件中删除,避免播放这些码率过大的分片文件时,由于码率大于终端支持的最高码率,而导致播放效果差的问题。
上述步骤是网关获取终端的最高码率后,调整索引文件中内容的过程,如果该最高码率是根据终端的业务信息获取,则网关可以实现根据业务信息调整索引文件的内容;如果该高码率是根据网关的性能信息获取,则网关可以实现根据网关的情况调整索引文件的内容,也即是,网关可以实现不仅仅根据WAN侧单播可用带宽、WAN侧组播可用带宽、CPU占用比例、内存占用比例以及终端侧可用带宽等对索引文件进行调整,还可以根据终端的业务信息对索引文件进行调整,从而限制终端可播放的最高码率,也即限制用户可用的最高视频分辨率。
411、网关根据第二索引文件,进行组播会话。
其中,第二索引文件包括该多媒体文件的部分码率以及该部分码率的分片文件的地址,该部分码率是指多媒体文件的所***率中删除指定码率后剩余的码率,该部分码率小于或等于终端支持的最高码率。
本公开实施例中,网关获取第二索引文件后,可以根据频道配置,开始组播会话,如图4中的“Start Multicast Session,According to Channel Config”。也即是,部署有M2U agent的网关可以向单播转组播代理(Unicast to Multicast agent,U2M agent)所在设备发送分片文件获取请求,该分片文件获取请求用于请求获取第二索引文件中各个码率的分片文件。U2M agent所在设备在接收到该分片文件获取请求后,可以向单播服务器获取各个码率的分片文件后,向网关返回该分片文件,其中,单播服务器以源形式来存储多媒体文件的分片文件。U2M agent所在设备和网关之间可以采用组播传输方式来传输分片文件。
412、网关将该第二索引文件发送给该终端,该第二索引文件用于该终端根据该第二索引文件对多媒体文件进行播放。
本公开实施例中,网关可以将经过处理后的第二索引文件发送给终端,以响应终端发送的索引文件获取请求,如图4中的“HTTP Response”。通过限制提供给终端的索引文件中的最高码率,使得终端可以更快的尝试选择合适码率的分片文件进行播放,实现更快的收敛。且由于第二索引文件中的码率小于或等于终端支持的最高码率,因而播放效果好。
413、网关组播分片文件,做FEC校正。
本公开实施例中,网关在进行组播会话时,U2M agent所在设备可能会向部署有U2M agent的网关冗余发一些额外的FEC报文(从内容报文计数得到的),网关可以根据这些冗余报文进行FEC校正,如图4中的“FEC Repair”。通过FEC校正,可以恢复少量的丢包,如0.1%的丢包。
414、如果FEC校正不成功,网关从CDN服务器获取丢失信息。
本公开实施例中,如果网关不能通过FEC校正,恢复丢失信息,如在组播传输过程中的少量丢包,则网关可以从CDN服务器获取该丢失信息,如网关可以向CDN服务器发送HTTP字节范围请求,以实现重传修复,如图4中的“Retransmission Repair(HTTP ByteRange)”。
415、当接收到第二索引文件时,终端向网关发送分片文件获取请求,该分片文件获取请求携带目标码率,该目标码率等于或低于终端支持的最高码率。
本公开实施例中,终端在获取到第二索引文件后,可以通过发送分片文件获取请求的方式,从网关获取第二索引文件中目标码率的分片文件,如图4中的“Get Fragment”。该目标码率可以是终端根据当前的WiFi带宽,在第二索引文件包含的所***率中,选择的一个与该WiFi带宽相匹配的码率。
416、当接收到终端的分片文件获取请求时,网关检查本地是否有目标码率的分片文件。
本公开实施例中,网关可以在本地缓存多媒体文件的分片文件,如网关可以将在进行组播会话时获取的分片文件缓存在本地,相应地,网关在接收到分片文件获取请求时,可以检查本地是否有该目标码率的分片文件,如果本地缓存有该目标码率的分片文件,则网关可以向终端返回该目标码率的分片文件,如图4中的“Return Multicast Fragmentfrom Cache”;如果本地没有缓存有该目标码率的分片文件,则网关可以通过执行后续步骤417和步骤418,从CDN服务器获取该目标码率的分片文件。
417、当本地没有目标码率的分片文件时,网关向CDN服务器发送分片文件获取请求,该分片文件获取请求携带目标码率。
本公开实施例中,如果网关本地没有目标码率的分片文件,则网关可以采用代理模式,从CDN服务器获取目标码率的分片文件后,再将该分片文件返回给终端。具体地,网关可以通过向CDN服务器发送分片文件获取请求,从CDN服务器获取目标码率的分片文件,如图4中的“Get Other Fragment in Proxy Mode”。
418、CDN服务器向网关发送目标码率的分片文件。
本公开实施例中,CDN服务器在接收到分片文件获取请求后,可以根据该分片文件获取请求中指示的目标码率,从本地存储中获取该目标码率的分片文件后,向网关返回该目标码率的分片文件,以作为对网关发送的分片文件获取请求的响应,使得网关可以得到该目标码率的分片文件,如图4中的“HTTP Response”。
上述步骤417至步骤418是当网关本地没有目标码率的分片文件时,网关从CDN服务器获取该目标码率的分片文件的过程。
419、网关接收到该目标码率的分片文件后,将该目标码率的分片文件发送给终端。
本公开实施例中,网关在从CDN服务器获取到该目标码率的分片文件后,可以将该目标码率的分片文件发送给终端,以作为对终端发送的分片文件获取请求的响应,如图4中的“HTTP Response”。
420、当接收到该目标码率的分片文件,且该目标码率的分片文件为经过加密的分片文件时,终端向MultiDRM服务器发送解密信息获取请求。
其中,该解密信息获取请求用于请求获取该目标码率的分片文件的解密信息。
本公开实施例中,终端获取到的该目标码率的分片文件可能是经过加密的分片文件,这样,终端可以通过解密信息获取请求,从MultiDRM服务器获取该分片文件的解密信息,如图4中的“Get DRM License”。
421、MultiDRM服务器向终端发送该目标码率的分片文件的解密信息。
本公开实施例中,MultiDRM服务器在接收到终端发送的解密信息获取请求时,可以响应该解密信息获取请求,例如,MultiDRM服务器可以向终端返回该目标码率的分片文件的解密信息,该解密信息即是MultiDRM服务器给终端播放该目标码率的分片文件的许可,如图4中的“Return DRM License”。
422、终端根据解密信息,本地解密该目标码率的分片文件,并播放该目标码率的分片文件。
本公开实施例中,终端在获取到解密信息后,可以使用该解密信息,对目标码率的分片文件进行本地解密和解码,如图4中的“Decrypt and Decode”,进而,终端可以通过player开始播放解密后的分片文件。
需要说明的是,上述步骤420至步骤422是以终端从CDN服务器获取到经过加密的分片文件,终端需要从MultiDRM服务器获取解密信息为例进行说明。实际上,终端从CDN服务器获取到的分片文件也可能是不加密的,这样,终端则不需要从MultiDRM服务器获取该分片文件的解密信息,而是可以在接收到该目标码率的分片文件后直接开始播放。
上述步骤415至步骤422是终端根据该第二索引文件进行多媒体文件播放的一种可能实现方式。由于第二索引文件中的码率均低于终端支持的最高码率,因此,终端只能获取并播放被限制码率的多媒体文件。
需要说明的是,上述步骤415至步骤422是以终端播放目标码率的分片文件为例进行说明,实际上,终端可以进行码率的切换,例如,该目标码率的分片文件可以只是0-2s的分片文件,终端在播放该目标码率的分片文件的过程中,可以获取不同码率的下一个分片文件,如0-4s的分片文件,这样终端在播放完该目标码率的分片文件后,可以接着播放不同码率的下一个分片文件,从而达到码率切换的效果。
423、网关向M-ABR Controller上报运行状态和统计信息。
本公开实施例中,在终端播放多媒体文件的过程中,网关可以向M-ABRController上报终端播放的多媒体文件、该多媒体文件的分片文件的重传次数、该多媒体文件的播放效果以及其他体验质量等运行状态和统计信息,如图4中的“ReportMulticast、Retrans、Play QOE”。通过上报多媒体文件的播放情况,从而更好的控制基于组播的多媒体文件传输。
需要说明的是,本公开实施例是以上述多媒体文件播放方法应用于终端所属网关,该网关上部署有M2U agent为例进行说明,实际上,该M2U agent也可以部署在终端所连接路由器或基站上,这样,上述多媒体文件播放方法也可以应用于路由器或基站,实现移动网络下的多媒体文件播放,具体过程与应用于网关时的上述步骤401至步骤423同理,不再赘述。
以基站为例,基站同样可以通过本身情况(如基站的性能信息)或终端的业务信息,获取终端支持的最高码率,并根据该最高码率调整索引文件中的码率。其中,基站获取该终端支持的最高码率,包括:获取基站的性能信息,根据该性能信息,确定该终端支持的最高码率;或者获取该终端的业务信息;根据该终端的业务信息,获取该终端支持的最高码率。其中,基站的性能信息同样包括WAN侧单播可用带宽、WAN侧组播可用带宽、CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项。基站根据该性能信息,确定该终端支持的最高码率的过程,或根据该终端的业务信息,获取该终端支持的最高码率与网关获取终端支持的最高码率同理,不再赘述。
本公开实施例提供的方法,通过获取终端支持的最高码率,并根据该最高码率对索引文件中的码率进行调整,使得终端接收到的索引文件中的码率低于终端支持的最高码率,避免了终端选择码率大于终端支持的最高码率的分片文件进行下载而导致播放效果差的问题。
另外,终端支持的最高码率既可以根据终端该网关、终端所连接路由器或基站的性能信息获取,从而更精准的为终端提供可用的码率,终端支持的最高码率也可以根据终端的业务信息获取,从而实现根据运营商要求,定制对不同终端的码率限制,可控制为不同收费用户提供不同等级的多媒体文件播放服务。
此外,由于提供给终端的索引文件是经过码率删除操作后的索引文件,因而相比于多媒体文件的所***率,终端接收到的索引文件中的码率更少,可选择的码率范围更小,使得终端可以更快的选择到合适的码率,从而更快的将码率调整到位。
图5是本公开实施例提供的一种多媒体文件播放装置的结构示意图。参照图5,该装置包括获取模块501、删除模块502和发送模块503。
获取模块501,用于当接收到终端的索引文件获取请求时,获取多媒体文件的第一索引文件,该第一索引文件包括该多媒体文件的所***率以及所***率的分片文件的地址;
该获取模块501,还用于获取该终端支持的最高码率;
删除模块502,用于根据该终端支持的最高码率,从该第一索引文件中删除指定码率以及该指定码率的分片文件的地址,得到第二索引文件,该指定码率高于该最高码率;
发送模块503,用于将该第二索引文件发送给该终端,该第二索引文件用于该终端根据该第二索引文件对该多媒体文件进行播放。
在一种可能实现方式中,获取模块501用于行上述步骤509中获取最高码率的过程。
在一种可能实现方式中,终端所属网关、终端所连接路由器或基站的性能信息包括广域网WAN侧单播可用带宽、WAN侧组播可用带宽、中央处理器CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项。
需要说明的是,获取模块501可以通过电子设备的收发器实现,删除模块502可以通过电子设备的处理器实现,发送模块503可以通过电子设备的收发器实现。
本公开实施例中,通过获取终端支持的最高码率,并根据该最高码率对索引文件中的码率进行调整,使得终端接收到的索引文件中的码率低于终端支持的最高码率,避免了终端选择码率大于终端支持的最高码率的分片文件进行下载而导致播放效果差的问题。
需要说明的是:上述实施例提供的多媒体文件播放装置在播放多媒体文件时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的多媒体文件播放装置与多媒体文件播放方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本公开的可选实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (16)

1.一种多媒体文件播放方法,其特征在于,所述方法包括:
当接收到终端的索引文件获取请求时,获取多媒体文件的第一索引文件,所述第一索引文件包括所述多媒体文件的所***率以及所***率的分片文件的地址;
获取所述终端支持的最高码率;
根据所述终端支持的最高码率,从所述第一索引文件中删除指定码率以及所述指定码率的分片文件的地址,得到第二索引文件,所述指定码率高于所述最高码率;
将所述第二索引文件发送给所述终端,所述第二索引文件用于所述终端根据所述第二索引文件对所述多媒体文件进行播放。
2.根据权利要求1所述的方法,其特征在于,所述获取所述终端支持的最高码率,包括:
获取所述终端的业务信息;
根据所述终端的业务信息,获取所述终端支持的最高码率。
3.根据权利要求2所述的方法,其特征在于,所述根据所述终端的业务信息,获取所述终端支持的最高码率,包括:
根据所述终端的业务信息,确定所述终端的业务等级;
根据所述终端的业务等级,确定所述终端支持的最高码率,不同的业务等级对应不同的最高码率。
4.根据权利要求1所述的方法,其特征在于,所述获取所述终端支持的最高码率,包括:
获取所述终端所属网关、所述终端所连接路由器或基站的性能信息;
根据所述性能信息,确定所述终端支持的最高码率。
5.根据权利要求4所述的方法,其特征在于,所述性能信息包括广域网WAN侧单播可用带宽、WAN侧组播可用带宽、中央处理器CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项。
6.根据权利要求5所述的方法,其特征在于,所述根据所述性能信息,确定所述终端支持的最高码率,包括:
将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中任一项作为所述终端支持的最高码率;或,
根据所述内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定所述终端支持的最高码率;或,
根据所述CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定所述终端支持的最高码率;或,
将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中至少两项进行加权求和,得到所述终端支持的最高码率。
7.根据权利要求6所述的方法,其特征在于,所述根据所述内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定所述终端支持的最高码率,包括:
根据所述内存占用比例,确定剩余内存;
根据所述剩余内存、分片文件的缓存数目以及每个分片文件的时长,确定可缓存的最高码率;
将所述可缓存的最高码率作为所述终端支持的最高码率。
8.根据权利要求6或7所述的方法,其特征在于,所述根据所述CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定所述终端支持的最高码率,包括:
根据所述CPU占用比例,确定剩余CPU占用比例;
根据所述剩余CPU占用比例以及所述对应关系,获取所述剩余CPU占用比例对应的码率;
将所述剩余CPU占用比例对应的码率作为所述终端支持的最高码率。
9.一种多媒体文件播放装置,其特征在于,所述装置包括:
获取模块,用于当接收到终端的索引文件获取请求时,获取多媒体文件的第一索引文件,所述第一索引文件包括所述多媒体文件的所***率以及所***率的分片文件的地址;
所述获取模块,还用于获取所述终端支持的最高码率;
删除模块,用于根据所述终端支持的最高码率,从所述第一索引文件中删除指定码率以及所述指定码率的分片文件的地址,得到第二索引文件,所述指定码率高于所述最高码率;
发送模块,用于将所述第二索引文件发送给所述终端,所述第二索引文件用于所述终端根据所述第二索引文件对所述多媒体文件进行播放。
10.根据权利要求9所述的装置,其特征在于,所述获取模块用于获取所述终端的业务信息;根据所述终端的业务信息,获取所述终端支持的最高码率。
11.根据权利要求10所述的装置,其特征在于,所述获取模块用于根据所述终端的业务信息,确定所述终端的业务等级;根据所述终端的业务等级,确定所述终端支持的最高码率,不同的业务等级对应不同的最高码率。
12.根据权利要求9所述的装置,其特征在于,所述获取模块用于获取所述终端所属网关、所述终端所连接路由器或基站的性能信息;根据所述性能信息,确定所述终端支持的最高码率。
13.根据权利要求12所述的装置,其特征在于,所述性能信息包括广域网WAN侧单播可用带宽、WAN侧组播可用带宽、中央处理器CPU占用比例、内存占用比例以及终端侧可用带宽中的至少一项。
14.根据权利要求13所述的装置,其特征在于,所述获取模块用于将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中任一项作为所述终端支持的最高码率;或,
所述获取模块用于根据所述内存占用比例、分片文件的缓存数目以及每个分片文件的时长,确定所述终端支持的最高码率;或,
所述获取模块用于根据所述CPU占用比例以及转发分片文件所需CPU占用比例与码率之间的对应关系,确定所述终端支持的最高码率;或,
所述获取模块用于将所述WAN侧单播可用带宽、所述WAN侧组播可用带宽和所述终端侧可用带宽中至少两项进行加权求和,得到所述终端支持的最高码率。
15.根据权利要求14所述的装置,其特征在于,所述获取模块用于根据所述内存占用比例,确定剩余内存;根据所述剩余内存、分片文件的缓存数目以及每个分片文件的时长,确定可缓存的最高码率;将所述可缓存的最高码率作为所述终端支持的最高码率。
16.根据权利要求14或15所述的装置,其特征在于,所述获取模块用于根据所述CPU占用比例,确定剩余CPU占用比例;根据所述剩余CPU占用比例以及所述对应关系,获取所述剩余CPU占用比例对应的码率;将所述剩余CPU占用比例对应的码率作为所述终端支持的最高码率。
CN201810044029.8A 2018-01-17 2018-01-17 多媒体文件播放方法及装置 Pending CN110049355A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810044029.8A CN110049355A (zh) 2018-01-17 2018-01-17 多媒体文件播放方法及装置
PCT/CN2018/096116 WO2019140877A1 (zh) 2018-01-17 2018-07-18 多媒体文件播放方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810044029.8A CN110049355A (zh) 2018-01-17 2018-01-17 多媒体文件播放方法及装置

Publications (1)

Publication Number Publication Date
CN110049355A true CN110049355A (zh) 2019-07-23

Family

ID=67273176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810044029.8A Pending CN110049355A (zh) 2018-01-17 2018-01-17 多媒体文件播放方法及装置

Country Status (2)

Country Link
CN (1) CN110049355A (zh)
WO (1) WO2019140877A1 (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6853650B1 (en) * 1998-02-05 2005-02-08 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Communication network, method for transmitting a signal, network connecting unit and method for adjusting the bit rate of a scaled data flow
CN103269331A (zh) * 2013-04-20 2013-08-28 华为技术有限公司 选择可播放码率内容的方法和装置
CN103987136A (zh) * 2014-04-29 2014-08-13 河南科技大学 一种用于有线网络和无线网络交互的智能网关
US20140325023A1 (en) * 2013-04-24 2014-10-30 Cisco Technology, Inc. Size prediction in streaming enviroments
CN104780393A (zh) * 2015-04-10 2015-07-15 天脉聚源(北京)教育科技有限公司 一种分配资源的方法及装置
CN104917688A (zh) * 2014-03-12 2015-09-16 中国科学院声学研究所 一种流媒体网关的码率控制方法
CN206712983U (zh) * 2017-04-25 2017-12-05 中信国安广视网络有限公司 流媒体服务器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102204268B (zh) * 2011-05-31 2012-12-12 华为技术有限公司 直播多码率切换的方法和设备
CN106658226B (zh) * 2015-10-28 2020-12-11 中兴通讯股份有限公司 一种播放方法及装置
CN106254548A (zh) * 2016-09-29 2016-12-21 天脉聚源(北京)科技有限公司 一种下载流媒体数据的方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6853650B1 (en) * 1998-02-05 2005-02-08 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Communication network, method for transmitting a signal, network connecting unit and method for adjusting the bit rate of a scaled data flow
CN103269331A (zh) * 2013-04-20 2013-08-28 华为技术有限公司 选择可播放码率内容的方法和装置
US20140325023A1 (en) * 2013-04-24 2014-10-30 Cisco Technology, Inc. Size prediction in streaming enviroments
CN104917688A (zh) * 2014-03-12 2015-09-16 中国科学院声学研究所 一种流媒体网关的码率控制方法
CN103987136A (zh) * 2014-04-29 2014-08-13 河南科技大学 一种用于有线网络和无线网络交互的智能网关
CN104780393A (zh) * 2015-04-10 2015-07-15 天脉聚源(北京)教育科技有限公司 一种分配资源的方法及装置
CN206712983U (zh) * 2017-04-25 2017-12-05 中信国安广视网络有限公司 流媒体服务器

Also Published As

Publication number Publication date
WO2019140877A1 (zh) 2019-07-25

Similar Documents

Publication Publication Date Title
US10659844B2 (en) Interaction method and system based on recommended content
JP6877808B2 (ja) ビデオストリームのデータを処理するための方法、装置、およびシステム
US11153620B2 (en) Media broadcasting method, server, terminal device, and storage medium
CN104821937B (zh) 令牌获取方法、装置及***
CN106331826B (zh) 一种设置直播模板和视频模式的方法、装置和***
CN106302325B (zh) 提供指定通信服务的方法、装置和***
CN109756758A (zh) 直播控制方法及装置
CN106791955B (zh) 一种确定直播时长的方法和***
KR102033986B1 (ko) 스트리밍 미디어를 전송하기 위한 방법과 시스템, 사용자 장비, 및 서버
CN104967608B (zh) 播放多媒体文件的方法、移动终端及固定终端
JP2021005898A (ja) インタラクティブ情報を獲得するための方法、端末、サーバ、およびシステム
CN104822090A (zh) 视频播放的方法、装置和***
CN110139131A (zh) 一种播放视频文件的方法和终端
CN103458305A (zh) 视频播放方法、装置、终端设备和服务器
WO2016184295A1 (zh) 即时通讯方法、用户设备及***
CN105049423A (zh) 权限管理***、装置及方法
CN107332976A (zh) K歌方法、装置、设备及***
CN104580177B (zh) 资源提供方法、装置和***
JP2021505081A (ja) ビデオ伝送方法、ビデオ伝送装置、およびビデオ伝送システム、ならびにコンピュータ可読記憶媒体
CN107277031A (zh) 一种网络视频下载方法、装置、存储介质和终端
CN108063840A (zh) 接入网络的方法及相关产品
CN106953898A (zh) 一种获取软件包的方法和装置
CN103581762A (zh) 一种播放网络视频的方法、装置及终端设备
CN104702634A (zh) 数据操作请求处理方法、装置及***
CN106534877B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190723

RJ01 Rejection of invention patent application after publication