CN108668179B - Transmission method of media index file and related equipment - Google Patents

Transmission method of media index file and related equipment Download PDF

Info

Publication number
CN108668179B
CN108668179B CN201710188774.5A CN201710188774A CN108668179B CN 108668179 B CN108668179 B CN 108668179B CN 201710188774 A CN201710188774 A CN 201710188774A CN 108668179 B CN108668179 B CN 108668179B
Authority
CN
China
Prior art keywords
mpd
segment
file
download address
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710188774.5A
Other languages
Chinese (zh)
Other versions
CN108668179A (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 CN201710188774.5A priority Critical patent/CN108668179B/en
Publication of CN108668179A publication Critical patent/CN108668179A/en
Application granted granted Critical
Publication of CN108668179B publication Critical patent/CN108668179B/en
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/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/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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26291Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client

Abstract

The application provides a transmission method of a media index file and related equipment, wherein the content format of a media file to be requested is screened firstly according to a terminal playing capability parameter set, so that the download address of a segment corresponding to the content format which cannot be played at a terminal side in an MPD file is removed, the complexity of MPD file generation is reduced, the problem of long playing initial pause time is solved, and the problem of bandwidth waste is also solved. The content formats in the content format set which can be played by the terminal all conform to the playing capability of the terminal side, so that the fragments of the download addresses of the fragments in the MPD file are also suitable for the playing environment of the terminal side, and the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file to select the fragments of the content formats which do not match with the playing environment of the terminal side for downloading can not occur when the fragments are downloaded from the download addresses of the fragments which are suitable for the playing environment of the terminal side.

Description

Transmission method of media index file and related equipment
Technical Field
The present application relates to the field of streaming media, and in particular, to a dynamic adaptive streaming technology based on HTTP.
Background
The Dynamic Adaptive Streaming over HTTP (DASH) technology based on HTTP is a new Streaming media transmission technology based on HTTP code rate adaptation, and is mainly used for solving the problem of redundancy in deployment and receiving mechanisms caused by different video distributors using different HTTP Streaming media technologies.
In a Media playing process based on the DASH technology, when a Media Presentation Description (MPD) server sends an MPD file to a DASH client on a terminal side, all available content formats corresponding to the Media file are included in the MPD file; when the capabilities of the decoder and the display device on the terminal side are limited, a large number of content formats cannot be played in the playing environment on the terminal side actually, and the DASH client cannot select the segments of the content formats for downloading actually, so that the process of downloading a lot of unusable content formats from the MPD server by the DASH client causes waste of bandwidth. In addition, since the MPD file includes all available content formats corresponding to the media file, the time for generating the MPD file by the MPD server is long, and the initial pause time of playing is extended.
Furthermore, if the DASH client cannot identify the characteristics of the media file, and thus selects a content format that does not match the playing environment of the terminal side, it may cause a problem of media file playing failure (such as white screen, color misregistration, etc.).
Disclosure of Invention
The application provides a transmission method of a media index file and related equipment, and aims to solve the problems of bandwidth resource waste, long playing initial pause time and media file playing existing in a media playing process based on a DASH technology.
In order to achieve the above object, the following solutions are proposed:
a first aspect of the present application provides a method for transmitting a media index file, which is applied to an MPD server, where the method includes: receiving an MPD request sent by a DASH client, wherein the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set; according to the terminal playing capability parameter set, determining a content format set which can be played by the terminal from the content formats of the media files corresponding to the content identifiers of the media files to be requested; acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set; sending the MPD file to the DASH client; wherein the MPD file comprises a set of download addresses of the first type of segment.
From the above process, it can be seen that: the MPD server screens the content format of the media file to be requested before generating the MPD file according to the terminal playing capability parameter set sent by the DASH client, so that the download address of a segment corresponding to the content format which cannot be played at the terminal side in the MPD file is removed, the complexity of generating the MPD file is reduced, the problem that the initial pause time of playing is prolonged due to long generation time of the MPD file is solved, the transmission cost of the MPD file is reduced, and the problem of bandwidth waste is solved. Moreover, the content formats in the content format set that can be played by the terminal all conform to the playing capability of the terminal, so that the generated fragments of the download addresses of the fragments in the MPD file are also suitable for the playing environment of the terminal, and the fragments are downloaded from the download addresses of the fragments suitable for the playing environment of the terminal for playing, so that the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file, and therefore the fragments of the content formats that do not match with the playing environment of the terminal are selected for downloading is avoided.
In one implementation, the obtaining the set of download addresses of the first type fragment includes: sending fragmentation request information to a fragmentation server, wherein the fragmentation request information comprises the content identification of the media file to be requested and a content format set which can be played by the terminal; and receiving the download address set of the first type of fragments sent by the fragment server. It can be seen from the above process that: the MPD server sends segment request information to the segment server to obtain a download address set of the first type of segment, which can be used for adapting to a scene that the MPD server and the segment server are set as different servers.
In one implementation, the obtaining the set of download addresses of the first type fragment includes: searching the fragment corresponding to the media file to be requested; and generating a download address set of the first type of fragments according to the download addresses of the fragments meeting the content format requirements in the content format set in the fragments corresponding to the media file to be requested. It can be seen from the above process that: the MPD server may obtain the download address of the first type segment according to the scheme disclosed in this implementation manner, and may be applied to a scenario in which the MPD server and the segment server are set as the same server.
In one implementation, the method further comprises: receiving an MPD update request sent by a DASH client, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a presentation selected to be played by the DASH client currently; obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; sending an updated MPD file to the DASH client, wherein the updated MPD file comprises a download address set of the second type segment.
From the above process, it can be seen that: by adding the download address of the first segment displayed by the DASH client which is selected to play currently in the MPD update request, the MPD server can identify the content format selected by the DASH client, and can remove the content format which is not suitable for dynamic switching in the update process of the MPD file, so that the download address of the segment corresponding to the content format which is not suitable for dynamic switching is reduced for the updated MPD file, the complexity of MPD file generation is further reduced, the problem that the initial pause time of playing is prolonged due to long generation time of the MPD file is solved, the transmission overhead of the MPD file is also reduced, and the problem of bandwidth waste is solved. And updating the content format set which can be played by the terminal according to the content format selected by the DASH client, further obtaining the download address of the fragment meeting the content format requirement in the updated content format set which can be played by the terminal, and regenerating the updated MPD file, therefore, the fragment of the download address of the fragment in the updated MPD file is also suitable for the playing environment of the terminal side, and further solving the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristic of the media file, and further selects the fragment of the content format which is not matched with the playing environment of the terminal side for downloading.
In one implementation, the obtaining the set of download addresses of the second type segment includes: sending a fragmentation request to a fragmentation server, where the fragmentation request includes an identifier of the MPD file and a content format set that can be played by a terminal corresponding to the identifier of the MPD file in the updated MPD distribution list; and receiving the download address set of the second type of fragments sent by the fragment server. It can be seen from the above process that: and the MPD server sends a fragmentation request to the fragmentation server to obtain a download address set of the second type of fragments, so that the method is suitable for the scenes that the MPD server and the fragmentation server are set as different servers.
In one implementation, the obtaining the set of download addresses of the second type segment includes: and combining the download addresses of the segments meeting the content format requirement in the content format set which can be played by the terminal and corresponds to the identifier of the MPD file in the updated MPD distribution list to form a download address set of the second segment. It can be seen from the above process that: the MPD server may obtain the download address of the second type segment by using the scheme disclosed in this implementation manner, and may be applied to a scenario in which the MPD server and the segment server are set as the same server.
In one implementation, the method further comprises: receiving a fragmentation request sent by a DASH client; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file; obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; and sending segment response information to the DASH client, wherein the segment response information carries an updated MPD file, and the updated MPD file comprises a download address set of the second segment.
From the above process, it can be seen that: the MPD updating parameters are added in the download address of the first segment displayed by the DASH client end which is selected to be played currently in the segment request, so that the MPD server updates the content format set which can be played by the terminal according to the content format of the first segment, removes the content format which is unsuitable for dynamic switching in the content format set which can be played by the terminal, reduces the download address of the segment corresponding to the content format which is unsuitable for dynamic switching in the updated MPD file, further reduces the complexity of generating the MPD file, solves the problem of prolonging the initial pause time of playing due to long generation time of the MPD file, reduces the transmission overhead of the MPD file, and solves the problem of bandwidth waste. And the content format set which can be played by the terminal is updated according to the content format of the first segment, so that the content formats in the updated content format set which can be played by the terminal all meet the playing environment of the terminal, therefore, the segments of the download addresses of the segments in the updated MPD file are also suitable for the playing environment of the terminal, and the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file, so that the segments of the content format which is not matched with the playing environment of the terminal are selected for downloading is solved.
In one implementation, the method further comprises: receiving a first fragmentation request notification sent by a fragmentation server; the first segment request notification carries an identifier of an MPD file and a content format of a first segment; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the content format of the head segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; and sending an updated MPD file to the segment server, wherein the updated MPD file comprises a download address set of the second segment.
It can be seen from the above process that: the fragmentation server sends a first fragmentation request notification to the MPD server to obtain an updated MPD file, and the method can be suitable for scenes in which the MPD server and the fragmentation server are set as different servers. Moreover, the updated MPD file is updated by adopting the preset updating principle, so that the download addresses of the segments corresponding to the content formats which are not suitable for dynamic switching are reduced for the updated MPD file, the complexity of the generation of the MPD file is further reduced, the problem that the initial pause time of playing is prolonged due to long generation time of the MPD file is solved, the transmission cost of the MPD file is reduced, and the problem of bandwidth waste is solved. And then, the content format set playable by the terminal is updated according to the content format of the first segment, so that the content formats in the updated content format set playable by the terminal all meet the playing environment of the terminal, therefore, the segments of the download addresses of the segments in the updated MPD file are also suitable for the playing environment of the terminal, and the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file, so that the segments of the content format which is not matched with the playing environment of the terminal are selected for downloading is solved.
A second aspect of the present application provides an MPD server, including: a first receiving unit, configured to receive an MPD request sent by a DASH client, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set; a determining unit, configured to determine, according to the terminal playback capability parameter set, a content format set that can be played by the terminal from content formats of media files corresponding to the content identifiers of the media files to be requested; the first obtaining unit is used for obtaining a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set; a first sending unit, configured to send an MPD file to a DASH client; wherein the MPD file comprises a set of download addresses of the first type of segment.
A third aspect of the present application provides an MPD server, including: a memory for storing a program and data generated in the operation of the program; a processor for performing the methods as provided in the first aspect of the present application and its various implementations by executing the program in the memory.
A fourth aspect of the present application provides a method for transmitting a media index file, which is applied to a DASH client, and the method includes: sending an MPD request to an MPD server; the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set; and receiving an MPD file sent by the MPD server, wherein the MPD file comprises a download address set of a first type of segment, and the first type of segment is a segment which corresponds to a media file corresponding to the content identifier of the media file to be requested and meets the content format requirement in a content format set.
In one implementation, the method further comprises: sending an MPD update request to an MPD server, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a presentation currently selected to be played by the DASH client; receiving an updated MPD file sent by the MPD server, where the updated MPD file includes a download address set of the second type segment, and the download address set of the second type segment includes: and the download address of the fragment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met.
In one implementation, the method further comprises: sending a fragmentation request to a fragmentation server; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file; and receiving segment response information sent by the segment server, wherein the segment response information carries the updated MPD file and the first segment.
A fifth aspect of the present application provides a DASH client, comprising: the first sending unit is used for sending an MPD request to an MPD server; the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set; a first receiving unit, configured to receive an MPD file sent by the MPD server, where the MPD file includes a download address set of a first type of segment, where the first type of segment is a segment that corresponds to a media file corresponding to a content identifier of the media file to be requested and meets a content format requirement in a content format set.
A sixth aspect of the present application provides a DASH client comprising: a memory for storing a program and data generated in the operation of the program; a processor configured to perform the methods as provided in the fourth aspect of the present application and its various implementations by executing the program in the memory.
In the DASH client disclosed in the sixth aspect of the present application, the processor may be further configured to execute the schemes in the implementation manners in the fourth aspect, and a specific execution process of the processor may refer to contents in the implementation manners in the fourth aspect, which is not described herein again.
A seventh aspect of the present application provides a media playing system, including: the system comprises a DASH client and a server, wherein the DASH client is used for sending an MPD request to the server, and the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set; the server is used for determining a content format set which can be played by the terminal from the content formats of the media files corresponding to the content identifiers of the media files to be requested according to the terminal playing capability parameter set; acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set; sending the MPD file to the DASH client; wherein the MPD file comprises a set of download addresses of the first type of segment.
In an implementation, the DASH client is further configured to send an MPD update request, where the MPD update request includes an identifier of an MPD file and a download address of a first segment of a presentation currently selected to be played by the DASH client; the server is further configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; sending an updated MPD file to the DASH client, wherein the updated MPD file comprises a download address set of the second type segment.
In one implementation, the DASH client is further configured to send a fragmentation request; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file; the server is further configured to: obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; and sending segment response information to the DASH client, wherein the segment response information carries an updated MPD file, and the updated MPD file comprises a download address set of the second segment.
An eighth aspect of the present application provides a method for updating a media index file, which is applied to an MPD server, and the method includes: receiving an MPD update request sent by a DASH client, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a presentation selected to be played by the DASH client currently; obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode; updating an MPD distribution list according to a preset updating principle according to the identification of the MPD file and the content format of the obtained first segment, wherein the preset updating principle is as follows: removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set corresponding to the identification of the MPD file under the condition of dynamic self-adaptive switching; optionally, the content format set may be a content format set playable by the terminal; acquiring a download address set of a second type of segment, wherein the download address set of the second type of segment comprises download addresses of segments meeting content format requirements in a content format set which can be played by a terminal corresponding to an identifier of an MPD file in an updated MPD distribution list; sending an updated MPD file to a DASH client, wherein the updated MPD file comprises: and the download address set of the second type of fragment.
In one implementation, the obtaining the set of download addresses of the second type segment includes: sending a fragmentation request to a fragmentation server, wherein the fragmentation request comprises an identification of an MPD file and a content format set which can be played by a terminal and corresponds to the identification of the MPD file in an updated MPD distribution list; and receiving a download address set of the second type of fragments generated and sent by the fragment server.
In one implementation, the obtaining the set of download addresses of the second type segment includes: and combining the download addresses of the fragments meeting the content format requirement in the content format set which can be played by the terminal and corresponds to the identifier of the MPD file in the updated MPD distribution list into the download address set of the second type of fragments.
A ninth aspect of the present application provides a method for updating a media index file, which is applied to a segment server, and the method includes: receiving a fragmentation request sent by a DASH client; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file; obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode; obtaining an updated MPD file, wherein the updated MPD file comprises a download address set of a second type of segment, and the download address set of the second type of segment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; the updated MPD distribution list is obtained by updating the MPD distribution list according to a preset updating principle, where the preset updating principle is: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; and sending segment response information to the DASH client, wherein the segment response information carries the updated MPD file and the first segment.
In one implementation, the obtaining an updated MPD file includes: finding a corresponding content format set which can be played by the terminal in the MPD distribution list according to the identification of the MPD file; judging whether the content formats in the content format set capable of being played by the terminal meet the preset updating requirement or not according to the content formats of the first fragments; wherein the preset update requirement comprises: the content format in the content format set which can be played by the terminal belongs to the content format which can not be switched with the content format of the first fragment under the condition of dynamic self-switching; if the content formats meeting the preset updating requirement in the content format set capable of being played by the terminal are judged to be the content formats meeting the preset updating requirement, deleting the content formats meeting the preset updating requirement in the content format set capable of being played by the terminal to form an updated MPD distribution list; and generating an updated MPD file according to the updated MPD distribution list.
In one implementation, the MPD parameter further includes an IP address of an MPD server, where the obtaining an updated MPD file includes: sending a first segment request notification to the MPD server according to the IP address of the MPD server; the first segment request notification carries an identifier of an MPD file and a content format of a first segment; receiving an updated MPD file sent by the MPD server, wherein the updated MPD file comprises a download address set of a second type of segment, and the download address set of the second type of segment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; the updated MPD distribution list is obtained by updating the MPD distribution list according to a preset updating principle, where the preset updating principle is: and removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching.
A tenth aspect of the present application provides a computer program product for performing the method performed by the DASH client described above when the computer program product is executed.
An eleventh aspect of the present application also provides a computer-readable storage medium having stored therein instructions for executing the method performed by the DASH client described above.
A twelfth aspect of the present application provides a computer program product for performing the method performed by the MPD server described above when the computer program product is executed.
The thirteenth aspect of the present application further provides a computer-readable storage medium having stored therein instructions for executing the method performed by the MPD server described above.
Drawings
Fig. 1 is a diagram of an application scenario of a media playing process based on DASH technology;
fig. 2 is a flowchart of a method for transmitting a media index file according to an embodiment of the present application;
FIG. 3 is a flowchart illustrating a method for updating a media index file according to an embodiment of the present disclosure;
FIG. 4 is a flowchart illustrating a method for updating a media index file according to an embodiment of the present disclosure;
fig. 5 is a schematic diagram of a module combination of an MPD server according to an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of an MPD server disclosed in an embodiment of the present application;
fig. 7 is a schematic diagram of a module combination of a DASH client disclosed in an embodiment of the present application;
fig. 8 is a schematic structural diagram of a DASH client disclosed in an embodiment of the present application;
fig. 9 is a schematic structural diagram of a media playing system disclosed in an embodiment of the present application.
Detailed Description
Referring to fig. 1, the media playing process based on DASH technology involves two parts, namely, a server side and a terminal side, where the server side includes an MPD server 101 and a segment server 102, and the terminal side includes a DASH client 103, a decoder 104, and a display device 105. It should be noted that, in an actual product form, the terminal side may be divided into three separate devices, namely, a DASH client, a decoder and a display device, or may be a terminal (e.g., a kiosk) including the functions of the three devices. The MPD server and the segment server on the server side may be the same server or different servers, and one MPD server may correspond to multiple segment servers, and one segment server may also correspond to multiple MPD servers.
The media playing process based on the DASH technology may include an MPD file transmission process and an MPD file update process according to the sequence of the processes. The MPD file transmission process comprises the following steps: the DASH client requests an MPD file from an MPD server, wherein the request comprises the content identification of the requested media file; the MPD server sends the content identification of the requested media file to the fragmentation server; the fragment server prepares a corresponding fragment URL according to the content identifier and returns the fragment URL to the MPD server; and the MPD server generates an MPD file according to the fragment URL and sends the MPD file to the DASH client. It should be further noted that, after receiving the MPD file, the DASH client may use the segment URL in the MPD file to request segment content from the segment server according to its own condition, and after downloading the segment from the segment server, the DASH client provides the segment for decoding; the decoder is responsible for decoding the slices into a sequence of video frames; the display device is responsible for displaying the video stream sequence to the end user as a continuous sequence of images.
It should be noted that media files are transmitted based on DASH technology, such as: as can be seen from the characteristics of UHD video, there are 10+ different formats in the industry at present, both from the viewpoint of color format, color gamut and HDR (High Dynamic Range) conversion function, and although not any combination can be applied in actual deployment, there are still many combinations. In actual deployment, for a certain video, the headend server may transcode the UHD video into a plurality of videos according to several combination forms for storage, so as to adapt to different playing environments. Therefore, when the MPD server transmits the MPD file, all available content formats corresponding to the UHD video are included in the MPD file; when the capabilities of the decoder and the display device on the terminal side are limited, a large number of content formats cannot be actually played in the playing environment on the terminal side, and the DASH client does not actually select the fragments of these content formats for downloading, for example: a certain video content X, which has 3 codec formats, 3 UHD coding frame types, 3 resolutions, 3 frame rates, 2 conversion functions, 2 color gamuts and 2 color space formats, and is divided into 100 segments, then an MPD file needs to include: 3 × 2 × 100 ═ 64800 fragmented download addresses; and when the DASH client receives the MPD file, selecting a proper fragment from the MPD file for downloading according to the decoder capability and the color space conversion capability. In this example, assuming that the DASH client supports one of the 3 codec formats described in the MPD file, the DASH client needs to select an appropriate segment from the download addresses of 64800/3 ═ 21600 segments for downloading.
Therefore, the DASH client downloads a lot of unusable content formats from the MPD server, which results in a problem of bandwidth waste caused by the transmission process of the MPD file. Moreover, since the MPD file contains all available content formats corresponding to the UHD video, the time for generating the MPD file by the MPD server is long, and the initial pause time for playing is prolonged.
In addition, after receiving the MPD file, according to the self condition, when requesting segment content from the segment server by using the segment URL in the MPD file, a problem may occur that a video playing failure may be caused when a segment URL that does not match the playing environment of the terminal side is selected because UHD video characteristics cannot be identified.
When the content of the media file changes, the MPD file of the DASH client needs to be updated. Specifically, the MPD file is updated in the following two ways: the DASH client side actively applies for updating, and the MPD server pushes the updating.
Wherein, the active application update process of the DASH client includes: the DASH client sends an MPD updating request to an MPD server, wherein the request comprises MPDID needing to be updated; the MPD server finds out a corresponding MPD file locally according to the MPDID and sends a corresponding content identifier to the segment server; the fragment server returns the fragment URL of the corresponding content according to the content identifier; and the MPD server updates the MPD file according to the segment URL and sends the updated MPD file to the DASH client. The MPD server push updating process comprises the following steps: the MPD server finds that the MPD file needs to be updated, completes MPD updating locally and sends the new MPD file to the segment server; the DASH client sends a fragmentation request to a fragmentation server; and the fragmentation server contains the updated MPD file in the header field of the response message and sends the MPD file to the DASH client.
It should be noted that, the MPD server updates the MPD file by updating download addresses of all available segments in the original MPD file, and directly sending the updated MPD file to the DASH client or sending the updated MPD file to the DASH client via the segment server, and also by including all available content formats of corresponding media files in the MPD file, in fact, the updated MPD file has substantially no great difference from the original MPD file, therefore, the MPD file including all available content formats of a media file is directly sent to the DASH client or sent to the DASH client via the segment server in the MPD file update process, there is also a problem of bandwidth waste due to the fact that the DASH client downloads the MPD file including many unavailable content formats from the MPD server, and the time for the MPD server to update and generate the MPD file is also long, the initial pause time of the play-out is also extended.
Similarly, after the MPD file is updated, the DASH client also selects a segment address in the MPD file to download a segment according to its own condition, so that a problem of video playback failure may occur, because UHD video characteristics cannot be identified, a segment in a content format that is not matched with a playback environment of the terminal side is selected to download.
It should be further noted that, in the media playing process based on the DASH technology, after the DASH client requests a plurality of segments in a certain content format and delivers the segments to the decoder and the display device for playing, if the DASH client selects a segment with a proper bitrate according to the current bandwidth for switching playing during dynamic adaptive switching, segments with parameters different from the original playing content, such as aspect ratio, frame rate, bit depth, color gamut, and conversion function, may be selected, so that the decoder is to be reinitialized, resulting in a problem of stuttering during switching due to too long initialization time of the decoder.
Based on the problems in the MPD file playing process disclosed above, an embodiment of the present application discloses a method for transmitting a media index file. It should be noted that, in the first place, the media index file may be understood as an address file of a media file, such as an MPD file. Referring to fig. 2, a method for transmitting a media index file disclosed in an embodiment of the present application includes:
s201, the DASH client sends an MPD request to an MPD server.
The MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
before requesting a media file, a DASH client needs to request an MPD file corresponding to the media file from an MPD server. The DASH client sends an MPD request to the MPD Server, where the request is an HTTP GET request, where the request includes a content identifier of a media file to be requested and a terminal playing capability parameter set, where the content identifier is a unique identifier of the media file and may be a Uniform Resource Locator (URL) or an ID.
The terminal playing capability parameter set includes parameters for reflecting the playing capabilities of the decoder and the display device, such as color gamut, conversion function, frame rate, bit depth, etc. which can be supported by the decoder and the display device, and its representation form may be a list, as shown in the following table:
play capability parameter Parameter name Type of parameter Parameter value
Color gamut colorPrimaries {int}
Transfer function transferFunction {int}
Frame rate frameRate int
Bit depth bitDepth int
It should be noted that, in the actual implementation of the solution of the present embodiment, a list of parameter values in the table above selects the values defined in the standard according to the actual playing capability of the terminal-side device.
S202, the MPD server acquires the content identification of the media file to be requested in the MPD request and a terminal playing capability parameter set.
S203, the MPD server screens the content formats of the media files to be requested according to the terminal playing capability parameter set to obtain a content format set which can be played by the terminal.
The MPD server screens the content formats of the media files existing in the MPD server according to the parameter values of the playing capacity parameters in the terminal playing capacity parameter set, and a plurality of screened content formats of the media files to be requested are combined to form a content format set which can be played by the terminal. The content format of the media file contains the content format of each of the playability parameters of the media file.
Optionally, in another embodiment of the present application, if the terminal playing capability parameter in the terminal playing capability parameter set includes: the method comprises the following steps of color gamut, conversion function, frame rate and bit depth, and the steps comprise the following steps:
and screening the content format of the media file to be requested according to a preset screening principle from the aspects of four terminal playing capability parameters of color gamut, conversion function, frame rate and bit depth. Specifically, the method comprises the following steps:
1. gamut, if a terminal side supports a large gamut range when the white point chromaticity is the same, a subset of the gamut range can be supported: for example: when the parameter value of the color gamut in the terminal playing capability parameter is {12}, the color gamut range corresponding to the parameter value includes the color gamut ranges corresponding to the parameter values of 12,5,22,1,6 and 7, and based on this, the parameter values of the color gamut in the content format set which can be played by the terminal can be obtained after screening, wherein the parameter values of the color gamut are {12,5,22,1,6,7 }. Therefore, the principle of filtering the content format of the media file to be requested from the parameter of color gamut is as follows: and selecting white point chromaticities which are the same as the white point chromaticities corresponding to the color gamut parameter values in the terminal playing capability parameter set, wherein the color gamut range corresponding to the parameter values is smaller than or equal to the color gamut range corresponding to the color gamut parameter values in the terminal playing capability parameter set.
2. For example, when the parameter values of the conversion function in the terminal playing capability parameter are {4,5,6}, and the values of the conversion function parameters in the existing content formats are {1,5,17}, because the conversion functions corresponding to the parameter values 1,6, 14, and 15 are the same, the parameter values of the conversion function in the content format set supported by the terminal can be obtained after the screening is finished, and the parameter values of the conversion function are {1,5 }. Therefore, the filtering principle of this parameter of the transfer function is: and selecting the parameter value with the same type as the conversion function corresponding to the parameter value of the parameter of the conversion function in the terminal playing parameters.
3. If a frame rate is supported at a higher frame rate, a lower frame rate value can be supported. For example: when the parameter value of the frame rate in the terminal playing capability parameter is {60} and the basic parameter values of the frame rate are 30,60, 120, 25, 50 and 100, the parameter value of the frame rate in the content format set which can be played by the terminal after the filtering is {30,60 }. Based on this, the principle of screening for this parameter is: selecting a frame rate with a parameter value less than or equal to a frame rate parameter value in the terminal playback capability parameter set.
4. The bit depth, i.e. the bit depth parameter, is typically 8,10,12,14,16, and when the terminal side supports a larger bit depth, it can also support a smaller bit depth content format, such as: the parameter value of the bit depth in the terminal playing capability parameter is {10}, and the parameter value of the bit depth in the content format set which can be played by the terminal can be obtained after screening is {8,10 }. Based on this, the principle of screening for this parameter is: the bit depth of a parameter value less than or equal to the bit depth in the terminal playback capability parameter set is selected.
Therefore, in the above example, the set of terminal-playable content formats obtained in step S203 is: {12,5,22,1,6,7}{1,5}{30,60}{8,10}.
It should be further noted that the terminal playing capability parameter includes, but is not limited to, the above 4 parameters, and may further include: sample aspect ratio and pixel aspect ratio, among other parameters.
Wherein, the screening principle of the sampling length-width ratio is as follows: the content format of the media file is retained, which is the same as the parameter value of the sampling aspect ratio. Similarly, the pixel aspect ratio screening principle is: the content format of the media file is retained, which is the same as the parameter values of the aspect ratio of the pixels.
And S204, the MPD server sends fragmentation request information to the fragmentation server, wherein the fragmentation request information comprises the content identification of the media file to be requested and a content format set which can be played by the terminal.
Specifically, the MPD server sends segment request information to the segment server, and requests a segment URL corresponding to the content identifier of the media file to be requested.
S205, the fragment server searches for the download address of the fragment corresponding to the media file to be requested.
S206, the fragment server generates a download address set of the first type of fragments, wherein the download address set of the first type of fragments comprises download addresses of the fragments which correspond to the media files to be requested and meet the content format requirements in the content format set capable of being played by the terminal.
The fragment server comprises fragments which belong to media files and have different content formats, after receiving fragment request information, the fragment server searches for the fragments which belong to the media files to be requested, determines the fragments with the content format same as the content format requirement in a content format set which can be played by the terminal in the fragments as first-class fragments, and combines download addresses of the first-class fragments to form a download address set of the first-class fragments.
S207, the fragment server sends the download address set of the first type of fragments to the MPD server.
It should be noted that steps S204 to S207 are an embodiment of obtaining the download address set of the first type segment, and are applicable to a case where the MPD server and the segment server are two different servers. If the MPD server and the segment server are one server, which may also be referred to as an MPD server, in this case, one embodiment of obtaining the download address set of the first type segment includes:
the MPD server searches segments corresponding to the media files to be requested;
and the MPD server combines the download addresses of the fragments meeting the content format requirement in the content format set in the fragments corresponding to the media file to be requested to form a download address set of the first type of fragments.
And S208, the MPD server generates an MPD file according to the download address set of the first type of fragments.
The implementation manner of generating the MPD file by the MPD server is as follows: and adding description information in the download address set of the first type of segment to form an MPD file, and allocating a locally unique identifier, such as MPDID, to the MPD file.
Optionally, in another embodiment of the present application, the implementation manner of step S208 may further include:
s2081, the MPD server adds an MPD update parameter to a download address of a first segment belonging to each replication in the first segment, where the MPD parameter includes an IP address of the MPD server and an identifier of an MPD file, and the identifier of the MPD file may be an MPDID.
The MPD file is divided into 4 layers including Period, Adaptation Set, replication, and Segment. Wherein, an MPD file is composed of one or more consecutive periods, which are typically larger media segments played consecutively. A period contains one or more Adaptation sets (hereinafter referred to as Adaptation sets), each of which contains one or more media components and different encoded versions of the media components, and typically each Adaptation Set can only be one of video, audio and subtitles. Each Adaptation Set generally includes a plurality of presentations (hereinafter, referred to as "representations"), different bit rates, resolutions, channel numbers or other characteristics of one media component are encoded into different representations, and dynamic adaptive switching can be performed between the plurality of representations included in the same Adaptation Set; each replication consists of the download address of one or more Segment segments, a Segment is a temporary block of media stream sequence, and each Segment has a download address URL.
S2082, adding description information into the download address set of the first type of fragments to which the MPD update parameters are added, and generating an MPD file;
the MPD file may be divided into 4 layers, namely Period, Adaptation Set, replication and Segment, and when generating the MPD file, the MPD file is generally generated layer by layer according to a sequence from a bottom layer to a top layer, which is represented by Segment, replication, Adaptation Set and Period, and the MPD file is finally obtained. And after the download address sets of the first type of fragments are distributed to form different replication, adding description information to each replication formed by partial download address sets of the first type of fragments for describing the format of the fragment corresponding to the download address of the fragment contained in the replication. Wherein, the added description information may include: resolution, code rate, color gamut, conversion function, frame rate, and bit depth.
S2083, a locally unique identifier, such as MPDID, is allocated to the generated MPD file.
For example, the download address URL of the first segment of a certain replication is: com/video-1, and the IP address of the MPD server is 202.119.10.10 and the MPDID is MPD001, in which case:
after MPD update parameters are added, the first segment download address URL of the replication becomes: http:// dash.com/video-1mpdsip ═ 202.119.10.10& mpdid ═ mpd 001.
It should be noted that the first slice of each replication also contains the necessary information for decoding other slices of the replication, so when a DASH client requests a certain replication content, it must first request and obtain the content of the first slice.
S209, the MPD server sends the MPD file to the DASH client.
It should be noted that, the MPD server filters the content format of the media file to be requested according to the terminal playing capability parameter set sent by the DASH client, before the MPD file is generated, so as to remove the download address of the segment corresponding to the content format that cannot be played at the terminal side in the MPD file, reduce the complexity of generating the MPD file, solve the problem of prolonging the initial pause time of playing due to long generation time of the MPD file, reduce the transmission overhead of the MPD file, and solve the problem of bandwidth waste.
Moreover, the content formats in the content format set that can be played by the terminal all conform to the playing capability of the terminal, so that the generated fragments of the download addresses of the fragments in the MPD file are also suitable for the playing environment of the terminal, and the fragments are downloaded from the download addresses of the fragments suitable for the playing environment of the terminal for playing, so that the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file, and therefore the fragments of the content formats that do not match with the playing environment of the terminal are selected for downloading is avoided.
Optionally, in another embodiment of the present application, if the MPD file generated by the MPD server needs to be updated periodically, after step S208, the step of storing the information of the MPD file by the MPD server is further executed.
Specifically, one embodiment of the MPD server storing the information of the MPD file is as follows: the MPD server adds information of the MPD file to the MPD distribution list.
The MPD distribution list includes information of all MPD files generated by the MPD server, and for each MPD file, the information of the MPD file includes: the identifier of the MPD file, the content identifier of the media file, and the set of content formats that can be played by the terminal are specifically shown in the following table:
MPDID CID videoType
Mpd001 cid001 {12,5,22,1,6,7}{1,5}{30,60}{8,10}
…… …… ……
in the above table, MPDID refers to an identifier of an MPD file, CID refers to a content identifier of a media file, and videoType refers to a set of content formats that can be played by a terminal. In addition, the content format set videoType that can be played by the terminal includes the result of filtering the content formats of the media files in terms of the four terminal playing capability parameters, i.e., the color gamut, the conversion function, the frame rate, and the bit depth in step S203.
It should be further noted that another type of MPD distribution list is shown in the following table, where the information of the MPD file includes, in addition to the identification of the MPD file, the identification of the content of the media file, and the set of content formats that can be played by the terminal, the identification of the client, for example: and the client ID is used for determining a receiving object of the updated MPD file.
MPDID CID ClientID videoType
Mpd001 cid001 Client001 {12,5,22,1,6,7}{1,5}{30,60}{8,10}
…… …… ……
First, it should be noted that the method for updating a media index file disclosed in this embodiment may be continuously executed after step S209 in a media index file request flow. As shown in fig. 3, the method for updating a media index file disclosed in this embodiment includes:
s301, the DASH client periodically sends an MPD update request to the MPD server, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a playback currently selected to be played by the DASH client.
If the value of the type is dynamic in the MPD server, it indicates that the MPD file needs to be updated periodically, and when a predetermined update time arrives, the DASH client sends an MPD update request to the MPD server.
And S302, the MPD server obtains the content format of the first segment according to the download address of the first segment.
Specifically, the MPD server stores a content format set that can be played by the terminal, and receives, from the segment server, a download address set of the first segment corresponding to the content format set that can be played by the terminal, so that according to a correspondence between the download address set of the first segment and the content format set that can be played by the terminal, a download address of a first segment of playback that is currently selected to be played by the DASH client in step S301 and a corresponding content format can be obtained.
And S303, the MPD server updates the MPD distribution list according to the identification of the MPD file and the obtained content format.
Specifically, the MPD server finds, in the MPD distribution list, a content format set that can be played by the terminal and corresponds to the identifier of the MPD file, and updates the found content format set that can be played by the terminal according to a principle of removing a content format that is unsuitable for switching under the dynamic adaptive switching condition. In the above mentioned principle of removing the content format unsuitable for switching under the dynamic adaptive switching condition, the evaluation criterion of the content format unsuitable for switching under the dynamic adaptive switching condition is: after switching from the obtained content format to a certain content format in case of dynamic adaptive switching, the decoder needs to be restarted.
Specifically, if the terminal playing capability parameter includes: the set of content formats playable by the terminal corresponding to the identification of the MPD file in the MPD distribution list includes content formats of four parameters, that is, the color gamut, the conversion function, the frame rate, and the bit depth, and similarly, in the content format of the download address of the corresponding first segment obtained by the MPD server in step S302, the content formats of the four parameters are also the color gamut, the conversion function, the frame rate, and the bit depth. Therefore, the specific updating manner of step S303 is: in the content format set which can be played by the terminal and corresponds to the identifier of the MPD file, the content formats which are different from the parameter value of each of the four parameters of the color gamut, the conversion function, the frame rate and the bit depth and correspond to the content format of the download address of the corresponding first segment obtained by the MPD server in step S302 are removed, and only the content formats which are the same as the parameter value of each of the four parameters of the color gamut, the conversion function, the frame rate and the bit depth are reserved.
It should be further noted that, if the terminal playing capability parameter further includes: the sample aspect ratio and the pixel aspect ratio, that is, a content format different from the parameter values of the two parameters, i.e., the sample aspect ratio and the pixel aspect ratio, needs to be removed in updating the MPD distribution list.
And S304, the MPD server sends a fragmentation request to the fragmentation server, wherein the fragmentation request comprises the identification of the MPD file and a content format set which can be played by a terminal and corresponds to the identification of the MPD file in the updated MPD distribution list.
S305, the fragment server generates a download address set of the second type of fragments, wherein the download address set of the second type of fragments comprises download addresses of fragments meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list.
S306, the fragment server sends the download address set of the second type of fragments to the MPD server.
It should be noted that steps S304 to S306 are an embodiment of obtaining the download address set of the second type segment, and are also applicable to a case where the MPD server and the segment server are two different servers. If the MPD server and the segment server are one server, which is also called MPD server, in this case, one embodiment of obtaining the download address set of the second type segment includes:
and the MPD server combines the download addresses of the fragments meeting the content format requirement in the content format set which can be played by the terminal and corresponds to the identifier of the MPD file in the updated MPD distribution list into a download address set of the second type of fragments.
And S307, the MPD server generates an updated MPD file according to the download address set of the second type segment.
For a specific implementation process of generating the updated MPD file by the MPD server, reference may be made to the content in step S208, which is not described herein again.
And S308, the MPD server sends the updated MPD file to the DASH client.
It should be noted that, in this embodiment, by adding the download address of the first segment of the selected replication in the MPD update request, the MPD server can identify the content format selected by the DASH client, and can remove the content format unsuitable for dynamic switching in the update process of the MPD file, so that the download address of the segment corresponding to the content format unsuitable for dynamic switching is reduced in the updated MPD file, thereby reducing the complexity of generating the MPD file, solving the problem of prolonging the initial pause time of playing due to long generation time of the MPD file, and also reducing the transmission overhead of the MPD file, and solving the problem of bandwidth waste.
And updating the content format set which can be played by the terminal according to the content format selected by the DASH client, further obtaining the download address of the fragment meeting the content format requirement in the updated content format set which can be played by the terminal, and regenerating the updated MPD file, therefore, the fragment of the download address of the fragment in the updated MPD file is also suitable for the playing environment of the terminal side, and further solving the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristic of the media file, and further selects the fragment of the content format which is not matched with the playing environment of the terminal side for downloading.
It should be further noted that the MPD server can remove content formats that are not suitable for dynamic switching from the MPD update process, and can also avoid the problem of stuttering during switching due to too long initialization time of the decoder, which is caused by re-initializing the decoder when switching segment playing during dynamic adaptive switching.
The present application further discloses an updating method of a media index file, which is the same as the above embodiments, and the updating method of the media index file disclosed in this embodiment may also be continuously executed after step S209 in the media index file request flow. As shown in fig. 4, the method for updating a media index file disclosed in this embodiment includes:
s401, the DASH client sends a segment request to a segment server, wherein the segment request carries a download address of a first segment of a playback currently selected by the DASH client to be played, the download address is added with MPD update parameters, and the MPD update parameters comprise an IP address of the MPD server and an identification of an MPD file.
Specifically, the DASH client sends a fragmentation request to the fragmentation server to request the fragments stored in the fragmentation server. In this step, the fragment request carries the download address of the first fragment of the playback currently selected by the DASH client, so that the DASH client requests the fragment server for the first fragment of the playback selected by the DASH client.
It should be noted that, in the method for updating a media index file disclosed in this embodiment, since the MPD update parameter is added to the download address of the first segment, it is required that the MPD update parameter is added to the download address of the first segment in the process of generating the MPD file in the transmission flow of the media index file.
S402, the fragment server analyzes the fragment request, detects an update parameter in a download address of a first fragment of the playback currently selected by the DASH client, and acquires an IP address of the MPD server and an identification of the MPD file in the update parameter.
S403, the fragment server obtains the content format of the first fragment according to the download address of the first fragment.
In the transmission process of the MPD file, the segment server receives the content format set that can be played by the terminal and is sent by the MPD server, and generates the download address set of the first segment according to the set, so that according to the correspondence between the download address set of the first segment and the content format set that can be played by the terminal, the download address of the first segment of the playback currently selected by the DASH client in the segment request in step S401 and the content format of the corresponding first segment can be known.
S404, the fragment server sends a first fragment request notification to the MPD server according to the IP address of the MPD server, wherein the first fragment request carries the identification of the MPD file and the content format of the first fragment.
S405, the MPD server finds the corresponding content format set which can be played by the terminal in the MPD distribution list according to the identification of the MPD file, and updates the content format set which can be played by the terminal and corresponds to the identification of the MPD file according to the content format of the first segment.
The principle of this update is as follows: if the content format of the head segment in the head segment request notification is switched to one of the content format sets which can be played by the terminal and correspond to the identification of the MPD file in the MPD distribution list, the decoder is restarted, the content format needs to be deleted, and the updated content format set which can be played by the terminal is obtained; if the content format of the header segment in the header segment request notification is switched to each content format in the terminal-playable content format set corresponding to the identification of the MPD file in the MPD distribution list, the decoder is not restarted, and the terminal-playable content format set does not need to be updated.
It should be further noted that whether or not switching the content format of the first segment in the first segment request notification to a certain content format in the terminal-playable content format set corresponding to the identifier of the MPD file in the MPD distribution list causes restart of the decoder may be understood as a specific evaluation criterion that the content format of the first segment in the first segment request notification is not suitable for switching with a certain content format in the terminal-playable content format set under the dynamic adaptive switching condition.
S406, the MPD server deletes the update parameters in the download addresses of all the first segments of the replication in the MPD file, and starts an MPD file update process.
The MPD server deletes the update parameters in the download addresses of all the first segments of the playback in the MPD file, and the main purpose is to avoid the first segments except the first segment of the playback selected by the DASH client currently, and when the DASH client needs to make a segment request, the MPD file update process is triggered.
And S407, the MPD server generates an updated MPD file according to the updated content format set which can be played by the terminal.
It should be noted that, after the update process of the MPD file is started, the MPD server generates an updated MPD file according to a content format set that can be played by the updated terminal, and an implementation manner of generating the updated MPD file by the MPD server is as follows: and adjusting the content in the MPD file according to the updated content format set which can be played by the terminal to obtain the updated MPD file.
Specifically, the initial MPD file generated in the MPD server includes a download address set of the first type segment, and the first type segment is a segment component that satisfies a content format set that can be played by the terminal, so that after the content format set that can be played by the terminal is updated, the content of the initial MPD file can be correspondingly adjusted, and the download addresses of the segments in the download address set of the first type segment that are included in the initial MPD file are modified to form an updated MPD file.
It should be further noted that, if the segments of the media file are adjusted and the download addresses of the segments are also changed, another implementation manner may be further adopted by the MPD server to generate the updated MPD file, specifically:
the MPD server sends segment request information to a segment server, the segment request information comprises an updated content format set which can be played by the terminal and a content identifier of a media file to be requested, the segment server screens a download address of a segment corresponding to the media file to be requested to obtain the download address of the segment corresponding to the media file to be requested and meeting the content format requirement in the updated content format set which can be played by the terminal, and sends the download address to the MPD server, and the MPD server generates an updated MPD file according to the download address of the received segment.
And S408, the MPD server sends the updated MPD file to the fragment server.
And S409, adding the updated MPD file into the header domain by the fragmentation server.
And S410, the fragmentation server sends fragmentation response information to the DASH client, wherein the fragmentation response information carries the header field and the first fragment added with the updated MPD file.
It should be noted that, in this embodiment, an MPD update parameter is added to a download address of a first segment of a playback currently selected by a DASH client and played in a segment request, so that a segment server can obtain a content format of the first segment, and update a content format set that can be played by a terminal according to the content format of the first segment, so as to remove a content format that is unsuitable for dynamic switching in the content format set that can be played by the terminal, reduce the download address of a segment corresponding to the content format that is unsuitable for dynamic switching in an updated MPD file, further reduce complexity of generating the MPD file, solve a problem of prolonging an initial pause time of playing due to a long generation time of the MPD file, and also reduce transmission overhead of the MPD file, and solve a problem of bandwidth waste.
And the content format set which can be played by the terminal is updated according to the content format of the first segment, so that the content formats in the updated content format set which can be played by the terminal all meet the playing environment of the terminal, therefore, the segments of the download addresses of the segments in the updated MPD file are also suitable for the playing environment of the terminal, and the problem of video playing failure caused by the fact that the DASH client cannot identify the characteristics of the media file, so that the segments of the content format which is not matched with the playing environment of the terminal are selected for downloading is solved.
It should be further noted that, the updated MPD file reduces the download address of the segment corresponding to the content format that is not suitable for dynamic switching, and may also avoid the problem of stutter during switching due to too long initialization time of the decoder, which is caused by re-initializing the decoder when switching the segment playing during dynamic adaptive switching.
It should be further noted that the MPD server and the segment server may be set as the same server, or may be set as two servers, where the method for updating a media index file disclosed in this embodiment is applicable to a scenario in which the MPD server and the segment server are set as the same server, and if the MPD server and the segment server are set as the same server, in the foregoing embodiment, step S404 and step S408 are steps of internal data interaction between one server. In step S401, the MPD update parameter in the fragmentation request sent by the DASH client may only include the identifier of the MPD file.
Another embodiment of the present application further discloses an MPD server, referring to fig. 5, including:
a first receiving unit 501, configured to receive an MPD request sent by a DASH client, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set.
A determining unit 502, configured to determine, according to the terminal playing capability parameter set, a content format set that can be played by the terminal from content formats of the media files corresponding to the content identifiers of the media files to be requested.
Optionally, if the terminal playing capability parameter in the terminal playing capability parameter set includes: color gamut, conversion function, frame rate, and bit depth, wherein the determining unit 502 comprises:
the filtering unit 5021 is configured to filter the content format of the media file to be requested according to a preset filtering principle from the aspects of color gamut, conversion function, frame rate, and bit depth, where: the preset screening principle comprises the following steps: selecting white point chromaticities which are the same as the white point chromaticities corresponding to the color gamut parameter values in the terminal playing capability parameter set, wherein the color gamut range corresponding to the parameter values is smaller than or equal to the color gamut range corresponding to the color gamut parameter values in the terminal playing capability parameter set: selecting a parameter value with the same type as a conversion function corresponding to the parameter value of the conversion function in the terminal playing capacity parameter set; selecting a frame rate with a parameter value less than or equal to a parameter value of a frame rate in a terminal playing capability parameter set; the bit depth of a parameter value less than or equal to the bit depth in the terminal playback capability parameter set is selected.
A first obtaining unit 503, configured to obtain a set of download addresses of the first type segment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set.
Optionally, according to a difference in a specific working manner of the first obtaining unit 503, the first obtaining unit 503 may include different working modules, and in an embodiment, referring to fig. 5, the first obtaining unit 503 includes:
a second sending unit 5031, configured to send fragmentation request information to a fragmentation server, where the fragmentation request information includes a content identifier of a media file to be requested and a content format set that can be played by a terminal; a second receiving unit 5032, configured to receive the set of download addresses of the first type of fragments sent by the fragment server.
In addition, referring also to fig. 5, in another embodiment, the first obtaining unit 503 includes:
a searching unit 5033, configured to search for a segment corresponding to a media file to be requested; the first generating unit 5034 is configured to generate a download address set of the first type of segment according to a download address of a segment that meets a content format requirement in the content format set, in a segment corresponding to the media file to be requested.
A first sending unit 504, configured to send an MPD file to a DASH client; and the MPD file comprises a download address set of the first type of fragments.
Optionally, in another embodiment of the present application, the MPD server further includes: a saving unit 505, configured to save information of an MPD file, where the information of the MPD file includes: the identification of the MPD file, the content identification of the media file to be requested and the content format set which can be played by the terminal.
It should be noted that, in the MPD server disclosed in the foregoing embodiment of the present application, for a specific working process of each unit, reference may be made to the content of the method embodiment in fig. 2, which is not described herein again.
Optionally, in another embodiment of this application, the first download address in the download address set of the first segment included in the MPD file sent by the first sending unit 504 may further include: and updating the MPD parameters, wherein the MPD updating parameters comprise an IP address of an MPD server and an identifier of an MPD file, and the first download address is a download address of a first segment belonging to each presentation in the first segment.
Based on this, the MPD server may perform an update process of the MPD file, and the MPD server may be composed of different working modules according to different update processes, where, in an embodiment, referring to fig. 5, when the MPD server performs the update process, the MPD server includes:
a third receiving unit 506, configured to receive an MPD update request sent by the DASH client, where the MPD update request includes an identifier of an MPD file and a download address of a first segment currently selected to be played by the DASH client.
A second obtaining unit 507, configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client.
Optionally, the second obtaining unit 507 may include different working modules according to different working processes, wherein in an embodiment, the second obtaining unit 507 includes: a fourth sending unit, configured to send a segment request to the segment server, where the segment request includes an identifier of an MPD file and a content format set that can be played by a terminal corresponding to the identifier of the MPD file in the updated MPD distribution list; and the fourth receiving unit is used for receiving the download address set of the second type of fragments sent by the fragment server. In another embodiment, the second obtaining unit 507 includes: and the second generation unit is used for combining the download addresses of the fragments meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list to form a download address set of the second type of fragments.
A first updating unit 508, configured to update the MPD distribution list according to the identifier of the MPD file and the obtained content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: and removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching.
A third obtaining unit 509, configured to obtain a download address set of the second type segment, where the download address set of the second type segment includes: and the download addresses of the fragments meeting the content format requirements in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list are met.
A third sending unit 510, configured to send an updated MPD file to the DASH client, where the updated MPD file includes a download address set of the second type segment.
It should be noted that, for the specific working process of each unit in this embodiment, reference may be made to the content of the method embodiment corresponding to fig. 3, and details are not described here again. In this embodiment, it is not required that the MPD file includes an MPD update parameter in the first download address of the download address set of the first segment.
In another embodiment of the update process, the MPD server further includes:
a fifth receiving unit 511, configured to receive a fragmentation request sent by a DASH client; the segment request carries a download address of a first segment currently selected and played by the DASH client, the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file.
A third obtaining unit 512, configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client.
A second updating unit 513, configured to update the MPD distribution list according to the identifier of the MPD file and the obtained content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: and removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching.
A fourth obtaining unit 514, configured to obtain a download address set of the second type segment, where the download address set of the second type segment includes: and the download addresses of the fragments meeting the content format requirements in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list are met.
A fifth sending unit 515, configured to send segment response information to the DASH client, where the segment response information carries an updated MPD file, and the updated MPD file includes a download address set of the second type of segment.
In another embodiment of the update process, the MPD server further includes:
a sixth receiving unit 516, configured to receive a first fragmentation request notification sent by the fragmentation server; the first segment request notification carries the identification of the MPD file and the content format of the first segment.
A third updating unit 517, configured to update the MPD distribution list according to the identifier of the MPD file and the content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: and removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching.
A fifth obtaining unit 518, configured to obtain a download address set of the second type segment, where the download address set of the second type segment includes: and the download addresses of the fragments meeting the content format requirements in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list are met.
A sixth sending unit 519, configured to send an updated MPD file to the segment server, where the updated MPD file includes a download address set of the second type segment.
It should be noted that, for the specific working processes of each unit in the two embodiments, reference may be made to the content of the method embodiment corresponding to fig. 4, and details are not described here again. The difference between the two embodiments is whether the MPD server and the segment server are the same server, that is, whether the function of the segment server is compatible with the MPD server, and in the former embodiment, the content of performing the update procedure of the MPD file is performed in a scenario where the function of the segment server is compatible with the MPD server, and in the latter embodiment, the content of performing the update procedure of the MPD file is performed in a scenario where the function of the segment server is not compatible with the MPD server.
Another embodiment of the present application further discloses an MPD server, as shown in fig. 6, including:
the processor 601 (the number of the processors 601 in the MPD server 600 may be one or more, and one processor is taken as an example in fig. 6), the memory 602, the communication port 603, and other hardware structures, and further include a power supply, an operating system installed on hardware, and other parts, which are not specifically listed in fig. 6, but do not limit the MPD server in the embodiments of the present application. In some embodiments of the present application, the processor 601, the memory 602, and the communication port 603 may be connected by a bus or other means, which is not limited herein. Fig. 6 illustrates an example of connection via a bus.
The processor 601 is used to control the operation of the MPD server 600, and the processor 601 may also be referred to as a Central Processing Unit (CPU). In a specific application, the various components of MPD server 600 are coupled together by a bus system, where the bus system may include a power bus, a control bus, a status signal bus, etc. in addition to a data bus, but for clarity of illustration, the various buses are referred to as a bus system in fig. 6.
The Memory 602 may include a Read-Only Memory (ROM) and a Random Access Memory (RAM), and may be other memories or storage media, and provides instructions and data to the processor 601. A portion of the memory 602 may also include a non-volatile random access memory (NVRAM). The memory 602 stores an operating system and operating instructions, executable modules or data structures, or a subset or an expanded set thereof, wherein the operating instructions may include various operating instructions for performing various operations. The operating system may include various system programs for implementing various basic services and for handling hardware-based tasks. The memory 602 also stores data, programs, and the like according to the embodiments of the present application. The processor 601 is used for executing the program in the memory 602 to perform the method executed by the MPD server in the above embodiments
The processor 601 may be an integrated circuit chip having signal processing capabilities. In the implementation process of the embodiment of the present application, the steps performed by the MPD server in the embodiment of the present application may be completed through an integrated logic circuit of hardware in the processor 601 or instructions in the form of software. The processor 601 may be a general-purpose processor, a Digital Signal Processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in the memory 602, and the processor 601 reads information in the memory 602, and completes the steps of the MPD server in the transmission method of the media index file according to the embodiment of the present application in combination with hardware of the processor.
The communication port 603 may be used to receive or transmit information/data, such as MPD requests sent by DASH clients, etc.
Another embodiment of the present application further discloses a DASH client, as shown in fig. 7, including:
a first sending unit 701, configured to send an MPD request to an MPD server; the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set.
A first receiving unit 702, configured to receive an MPD file sent by an MPD server, where the MPD file includes a download address set of a first type of segment, where the first type of segment is a segment that corresponds to a media file corresponding to a content identifier of a media file to be requested and meets a content format requirement in a content format set.
It should be noted that, in the DASH client disclosed in the embodiment of the present application, for a specific working process of each unit, reference may be made to the content corresponding to the method embodiment in fig. 2, which is not described herein again.
Optionally, in another embodiment of the present application, the DASH client further includes:
a second sending unit 703, configured to send an MPD update request to the MPD server, where the MPD update request includes an identifier of an MPD file and a download address of a first segment currently selected to be played by the DASH client;
a second receiving unit 704, configured to receive an updated MPD file sent by an MPD server, where the updated MPD file includes a download address set of a second type of segment, and the download address set of the second type of segment includes: and the download addresses of the fragments meeting the content format requirements in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list are met.
It should be noted that, in the DASH client disclosed in the embodiment of the present application, for a specific working process of each unit, reference may be made to the content corresponding to the method embodiment in fig. 3, which is not described herein again.
Optionally, in another embodiment of the present application, the DASH client further includes:
a third sending unit 705, configured to send a fragmentation request to a fragmentation server; the segment request carries a download address of a first segment currently selected and played by the DASH client, the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file.
A third receiving unit 706, configured to receive segment response information sent by the segment server, where the segment response information carries the updated MPD file and the first segment.
It should be noted that, in the DASH client disclosed in the embodiment of the present application, for a specific working process of each unit, reference may be made to the content corresponding to the method embodiment in fig. 4, which is not described herein again.
Another embodiment of the present application further discloses a DASH client, as shown in fig. 8, including:
the MPD server in the embodiment of the present application is not limited to the specific example shown in fig. 8, and the MPD server in the embodiment of the present application may be implemented by a hardware structure including one or more processors 801 in the DASH client 800, a memory 802, a communication port 803, and the like, and further includes a power supply, an operating system installed on the hardware, and the like. In some embodiments of the present application, the processor 801, the memory 802, and the communication port 803 may be connected by a bus or other means, which is not limited herein. Fig. 8 illustrates an example of connection via a bus.
The processor 801 is used to control the operation of the DASH client 800, and the processor 801 may also be referred to as a Central Processing Unit (CPU). In particular applications, the various components of the DASH client 800 are coupled together by a bus system that may include a power bus, a control bus, and status signal buses, among others, in addition to a data bus, although the various buses are referred to in fig. 8 as a bus system for clarity of illustration.
The Memory 802 may include a Read-Only Memory (ROM) and a Random Access Memory (RAM), and may be other memories or storage media and provide instructions and data to the processor 801. A portion of the memory 802 may also include a non-volatile random access memory (NVRAM). The memory 802 stores an operating system and operating instructions, executable modules or data structures, or subsets thereof, or expanded sets thereof, wherein the operating instructions may include various operating instructions for performing various operations. The operating system may include various system programs for implementing various basic services and for handling hardware-based tasks. The memory 802 also stores data, programs, and the like according to the embodiments of the present application. The processor 801 executes the program in the memory 802 to perform the method performed by the DASH client in the above embodiments
The processor 801 may be an integrated circuit chip having signal processing capabilities. In the implementation process of the embodiment of the present application, the steps performed by the DASH client in the embodiment of the present application may be completed by an integrated logic circuit of hardware in the processor 801 or instructions in the form of software. The processor 801 may be a general-purpose processor, a Digital Signal Processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in the storage 802, and the processor 801 reads information in the storage 802, and completes the steps of the DASH client in the method for transmitting a media index file according to the embodiment of the present application in combination with hardware of the processor.
The communication port 803 may be used to receive or transmit information/data, such as to transmit an MPD update request to an MPD server, receive an MPD file transmitted by the MPD server, and so on.
It should also be noted that, in the above embodiments of the present application, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The procedures or functions described in accordance with the embodiments of the present application are all or partially generated when the computer program instructions are loaded and executed on a computer, which may be through a computer, a special purpose computer, a computer network, or other editable device. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, such as: the computer instructions may be transmitted from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
Another embodiment of the present application further discloses a media playing system, as shown in fig. 9, including:
the DASH client 901 is configured to send an MPD request to the server 902, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set.
The server 902 is configured to determine, according to the terminal playback capability parameter set, a content format set that can be played by the terminal from content formats of media files corresponding to content identifiers of the media files to be requested; acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set; send the MPD file to DASH client 901; and the MPD file comprises a download address set of the first type of fragments.
It should be noted that, in the media playing system disclosed in the embodiment of the present application, for specific working processes of the DASH client and the server, reference may be made to the content of the method embodiment in fig. 2, which is not described herein again.
Optionally, in another embodiment of the present application, the DASH client 901 is further configured to send an MPD update request, where the MPD update request includes an identifier of an MPD file and a download address of a first segment of a presentation that the DASH client currently selects to play.
The server 902 is further configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of the second type of fragments, wherein the download address set of the second type of fragments comprises: the download address of the fragment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; and sending an updated MPD file to the DASH client 901, where the updated MPD file includes the download address set of the second segment.
It should be noted that, in the media playing system disclosed in the embodiment of the present application, for specific working processes of the DASH client and the server, reference may be made to the content of the method embodiment in fig. 3, which is not described herein again.
Optionally, in another embodiment of the present application, the DASH client 901 is further configured to send a fragmentation request; the segment request carries a download address of a first segment currently selected to be played by the DASH client 901, the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file.
The server 902 is further operable to: obtaining a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client 901; updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing the content format which is not suitable for switching with the content format of the obtained first segment in the content format set which can be played by the terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching; obtaining a download address set of the second type of fragments, wherein the download address set of the second type of fragments comprises: the download address of the fragment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met; and sending segment response information to the DASH client 901, where the segment response information carries an updated MPD file, and the updated MPD file includes a download address set of the second segment.
It should be noted that, in the media playing system disclosed in the embodiment of the present application, for specific working processes of the DASH client and the server, reference may be made to the content of the method embodiment in fig. 4, which is not described herein again.
It should be noted that, in the media playing system disclosed in the above embodiment, as shown in fig. 9, in an actual product form, the server 902 may include: the MPD server 9021 and the segment server 9022 are two servers, but the server 902 may also be configured as one server, that is, the MPD server 9021 and the segment server 9022 may be configured as one server.

Claims (26)

1. A method for transmitting a media index file is applied to an MPD server, and the method comprises the following steps:
receiving an MPD request sent by a DASH client, wherein the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
according to the terminal playing capability parameter set, determining a content format set which can be played by the terminal from the content formats of the media files corresponding to the content identifiers of the media files to be requested;
acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
sending the MPD file to the DASH client; wherein the MPD file comprises a download address set of the first type of segment;
receiving an MPD update request sent by a DASH client, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a presentation selected to be played by the DASH client currently;
obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode;
updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
sending an updated MPD file to the DASH client, wherein the updated MPD file comprises a download address set of the second type segment.
2. The method of claim 1, wherein obtaining the set of download addresses for the first type of segment comprises:
sending fragmentation request information to a fragmentation server, wherein the fragmentation request information comprises the content identification of the media file to be requested and a content format set which can be played by the terminal;
and receiving the download address set of the first type of fragments sent by the fragment server.
3. The method of claim 1, wherein obtaining the set of download addresses for the first type of segment comprises:
searching the fragment corresponding to the media file to be requested;
and generating a download address set of the first type of fragments according to the download addresses of the fragments meeting the content format requirements in the content format set in the fragments corresponding to the media file to be requested.
4. The method of claim 1, wherein the first download address in the set of download addresses of the first type of segment included in the MPD file further comprises: and updating MPD parameters, wherein the MPD updating parameters comprise an IP address of an MPD server and an identifier of the MPD file, and the first download address is a download address of a first segment belonging to each presentation in the first segment.
5. The method of claim 1, wherein prior to sending the MPD file to the DASH client, the method further comprises:
and storing the information of the MPD file, wherein the information of the MPD file comprises: the identifier of the MPD file, the content identifier of the media file to be requested and the content format set which can be played by the terminal.
6. The method of claim 1, wherein the terminal playback capability parameter in the terminal playback capability parameter set comprises: the method includes determining a content format set that can be played by a terminal from content formats of media files corresponding to content identifiers of the media files to be requested according to the terminal playing capability parameter set, and includes:
according to a preset screening principle, screening the content format of a media file to be requested from the aspects of four terminal playing capacity parameters of color gamut, conversion function, frame rate and bit depth, wherein: the preset screening principle comprises the following steps:
selecting white point chromaticities which are the same as the white point chromaticities corresponding to the color gamut parameter values in the terminal playing capability parameter set, wherein the color gamut range corresponding to the parameter values is smaller than or equal to the color gamut range corresponding to the color gamut parameter values in the terminal playing capability parameter set;
selecting a parameter value with the same type as a conversion function corresponding to the parameter value of the conversion function in the terminal playing capacity parameter set;
selecting a frame rate with a parameter value less than or equal to a parameter value of a frame rate in the terminal playing capability parameter set;
and selecting the bit depth of the parameter value which is less than or equal to the bit depth in the set of terminal playing capability parameters.
7. The method of claim 1, wherein obtaining the set of download addresses for the second type of segment comprises:
sending a fragmentation request to a fragmentation server, where the fragmentation request includes an identifier of the MPD file and a content format set that can be played by a terminal corresponding to the identifier of the MPD file in the updated MPD distribution list;
and receiving the download address set of the second type of fragments sent by the fragment server.
8. The method of claim 1, wherein obtaining the set of download addresses for the second type of segment comprises:
and combining the download addresses of the segments meeting the content format requirement in the content format set which can be played by the terminal and corresponds to the identifier of the MPD file in the updated MPD distribution list to form a download address set of the second segment.
9. A method for transmitting a media index file is applied to an MPD server, and the method comprises the following steps:
receiving an MPD request sent by a DASH client, wherein the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
according to the terminal playing capability parameter set, determining a content format set which can be played by the terminal from the content formats of the media files corresponding to the content identifiers of the media files to be requested;
acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
sending the MPD file to the DASH client; wherein the MPD file comprises a download address set of the first type of segment;
receiving a fragmentation request sent by a DASH client; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file;
obtaining the content format of the first fragment according to the download address of the first fragment displayed by the DASH client in the current selection and play mode;
updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the obtained content format of the first segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
and sending segment response information to the DASH client, wherein the segment response information carries an updated MPD file, and the updated MPD file comprises a download address set of the second segment.
10. A method for transmitting a media index file is applied to an MPD server, and the method comprises the following steps:
receiving an MPD request sent by a DASH client, wherein the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
according to the terminal playing capability parameter set, determining a content format set which can be played by the terminal from the content formats of the media files corresponding to the content identifiers of the media files to be requested;
acquiring a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
sending the MPD file to the DASH client; wherein the MPD file comprises a download address set of the first type of segment;
receiving a first fragmentation request notification sent by a fragmentation server; the first segment request notification carries an identifier of an MPD file and a content format of a first segment;
updating an MPD distribution list by adopting a preset updating principle according to the identification of the MPD file and the content format of the head segment to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
obtaining a download address set of a second type of fragment, wherein the download address set of the second type of fragment comprises: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
and sending an updated MPD file to the segment server, wherein the updated MPD file comprises a download address set of the second segment.
11. A method for transmitting a media index file, applied to a DASH client, includes:
sending an MPD request to an MPD server; the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
receiving an MPD file sent by the MPD server, wherein the MPD file comprises a download address set of a first type of segment, and the first type of segment is a segment which corresponds to a media file corresponding to the content identifier of the media file to be requested and meets the content format requirement in a content format set;
sending an MPD update request to an MPD server, wherein the MPD update request comprises an identification of an MPD file and a download address of a first segment of a presentation currently selected to be played by the DASH client;
receiving an updated MPD file sent by the MPD server, wherein the updated MPD file includes a download address set of a second type of segment, and the download address set of the second type of segment includes: and the download address of the fragment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met.
12. The transmission method according to claim 11, further comprising:
sending a fragmentation request to a fragmentation server; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file;
and receiving segment response information sent by the segment server, wherein the segment response information carries the updated MPD file and the first segment.
13. An MPD server, comprising:
a first receiving unit, configured to receive an MPD request sent by a DASH client, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set;
a determining unit, configured to determine, according to the terminal playback capability parameter set, a content format set that can be played by the terminal from content formats of media files corresponding to the content identifiers of the media files to be requested;
the first obtaining unit is used for obtaining a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
a first sending unit, configured to send an MPD file to a DASH client; wherein the MPD file comprises a download address set of the first type of segment;
a third receiving unit, configured to receive an MPD update request sent by a DASH client, where the MPD update request includes an identifier of an MPD file and a download address of a first segment currently selected to be played by the DASH client;
a second obtaining unit, configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client;
a first updating unit, configured to update an MPD distribution list according to the identifier of the MPD file and the obtained content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
a third obtaining unit, configured to obtain a download address set of a second type of segment, where the download address set of the second type of segment includes: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
a third sending unit, configured to send an updated MPD file to the DASH client, where the updated MPD file includes a download address set of the second segment.
14. The MPD server of claim 13, wherein said first obtaining unit comprises:
a second sending unit, configured to send fragmentation request information to a fragmentation server, where the fragmentation request information includes a content identifier of the media file to be requested and a content format set that can be played by the terminal;
and the second receiving unit is used for receiving the download address set of the first type of fragment sent by the fragment server.
15. The MPD server of claim 13, wherein said first obtaining unit comprises:
the searching unit is used for searching the fragments corresponding to the media files to be requested;
and the first generation unit is used for generating a download address set of the first type of fragments according to the download addresses of the fragments meeting the content format requirements in the content format set in the fragments corresponding to the media file to be requested.
16. The MPD server of claim 13, wherein the first download address in the set of download addresses of the first type of segment contained in the MPD file further comprises: and updating MPD parameters, wherein the MPD updating parameters comprise an IP address of an MPD server and an identifier of the MPD file, and the first download address is a download address of a first segment belonging to each presentation in the first segment.
17. The MPD server of claim 13, further comprising:
a storing unit, configured to store information of the MPD file, where the information of the MPD file includes: the identifier of the MPD file, the content identifier of the media file to be requested and the content format set which can be played by the terminal.
18. The MPD server of claim 13, wherein the terminal playability parameters in the terminal playability parameter set comprise: color gamut, conversion function, frame rate and bit depth, the determining unit comprising:
the screening unit is used for screening the content format of the media file to be requested from the aspects of four terminal playing capability parameters of color gamut, conversion function, frame rate and bit depth according to a preset screening principle, wherein: the preset screening principle comprises the following steps:
selecting white point chromaticities which are the same as the white point chromaticities corresponding to the color gamut parameter values in the terminal playing capability parameter set, wherein the color gamut range corresponding to the parameter values is smaller than or equal to the color gamut range corresponding to the color gamut parameter values in the terminal playing capability parameter set; selecting a parameter value with the same type as a conversion function corresponding to the parameter value of the conversion function in the terminal playing capacity parameter set; selecting a frame rate with a parameter value less than or equal to a parameter value of a frame rate in the terminal playing capability parameter set; and selecting the bit depth of the parameter value which is less than or equal to the bit depth in the set of terminal playing capability parameters.
19. The MPD server according to claim 13, wherein said second obtaining unit comprises:
a fourth sending unit, configured to send a segment request to a segment server, where the segment request includes an identifier of the MPD file and a content format set that can be played by a terminal corresponding to the identifier of the MPD file in the updated MPD distribution list;
and the fourth receiving unit is used for receiving the download address set of the second type of fragments sent by the fragment server.
20. The MPD server according to claim 13, wherein said second obtaining unit comprises:
and a second generating unit, configured to combine the download addresses of the segments that meet the content format requirement in a content format set that can be played by a terminal corresponding to the identifier of the MPD file in the updated MPD distribution list, to form a download address set of the second type of segments.
21. An MPD server, comprising:
a first receiving unit, configured to receive an MPD request sent by a DASH client, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set;
a determining unit, configured to determine, according to the terminal playback capability parameter set, a content format set that can be played by the terminal from content formats of media files corresponding to the content identifiers of the media files to be requested;
the first obtaining unit is used for obtaining a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
a first sending unit, configured to send an MPD file to a DASH client; wherein the MPD file comprises a download address set of the first type of segment;
a fifth receiving unit, configured to receive a fragmentation request sent by a DASH client; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file;
a third obtaining unit, configured to obtain a content format of a first segment according to a download address of the first segment currently selected and played by the DASH client;
a second updating unit, configured to update an MPD distribution list according to the identifier of the MPD file and the obtained content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
a fourth obtaining unit, configured to obtain a download address set of a second type of segment, where the download address set of the second type of segment includes: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
a fifth sending unit, configured to send segment response information to the DASH client, where the segment response information carries an updated MPD file, and the updated MPD file includes a download address set of the second type of segment.
22. An MPD server, comprising:
a first receiving unit, configured to receive an MPD request sent by a DASH client, where the MPD request includes a content identifier of a media file to be requested and a terminal playing capability parameter set;
a determining unit, configured to determine, according to the terminal playback capability parameter set, a content format set that can be played by the terminal from content formats of media files corresponding to the content identifiers of the media files to be requested;
the first obtaining unit is used for obtaining a download address set of the first type fragment; the first type of fragments are fragments which correspond to the media files to be requested and meet the requirements of the content formats in the content format set;
a first sending unit, configured to send an MPD file to a DASH client; wherein the MPD file comprises a download address set of the first type of segment;
a sixth receiving unit, configured to receive a first fragmentation request notification sent by the fragmentation server; the first segment request notification carries an identifier of an MPD file and a content format of a first segment;
a third updating unit, configured to update an MPD distribution list according to the identifier of the MPD file and the content format of the first segment by using a preset updating principle, so as to obtain an updated MPD distribution list; wherein, the preset updating principle is as follows: removing content formats which are not suitable for switching with the content formats of the obtained first segments from a content format set which can be played by a terminal and corresponds to the identification of the MPD file under the condition of dynamic self-adaptive switching;
a fifth obtaining unit, configured to obtain a download address set of a second type of fragment, where the download address set of the second type of fragment includes: the download address of the segment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met;
a sixth sending unit, configured to send an updated MPD file to the segment server, where the updated MPD file includes the download address set of the second segment.
23. A DASH client, comprising:
the first sending unit is used for sending an MPD request to an MPD server; the MPD request comprises a content identifier of a media file to be requested and a terminal playing capability parameter set;
a first receiving unit, configured to receive an MPD file sent by the MPD server, where the MPD file includes a download address set of a first type of segment, where the first type of segment is a segment that corresponds to a media file corresponding to a content identifier of the media file to be requested and meets a content format requirement in a content format set;
a second sending unit, configured to send an MPD update request to an MPD server, where the MPD update request includes an identifier of an MPD file and a download address of a first segment currently selected to be played by the DASH client;
a second receiving unit, configured to receive an updated MPD file sent by the MPD server, where the updated MPD file includes a download address set of a second type of segment, and the download address set of the second type of segment includes: and the download address of the fragment meeting the content format requirement in the content format set which can be played by the terminal corresponding to the identifier of the MPD file in the updated MPD distribution list is met.
24. The DASH client of claim 23, further comprising:
a third sending unit, configured to send a fragmentation request to a fragmentation server; the segment request carries a download address of a first segment currently selected and played by the DASH client, wherein the download address is added with an MPD update parameter, and the MPD update parameter at least includes an identifier of an MPD file;
a third receiving unit, configured to receive segment response information sent by the segment server, where the segment response information carries an updated MPD file and a first segment.
25. An MPD server, comprising a processor and a memory, wherein,
a computer readable program stored in the memory;
the processor is configured to execute the method of any one of claims 1 to 10 by executing a program in the memory.
26. A client comprising a processor and a memory, wherein,
a computer readable program stored in the memory;
the processor is configured to execute the program stored in the memory to perform the method of any one of claims 11 to 12.
CN201710188774.5A 2017-03-27 2017-03-27 Transmission method of media index file and related equipment Active CN108668179B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710188774.5A CN108668179B (en) 2017-03-27 2017-03-27 Transmission method of media index file and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710188774.5A CN108668179B (en) 2017-03-27 2017-03-27 Transmission method of media index file and related equipment

Publications (2)

Publication Number Publication Date
CN108668179A CN108668179A (en) 2018-10-16
CN108668179B true CN108668179B (en) 2021-05-14

Family

ID=63786258

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710188774.5A Active CN108668179B (en) 2017-03-27 2017-03-27 Transmission method of media index file and related equipment

Country Status (1)

Country Link
CN (1) CN108668179B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756762B (en) * 2019-01-29 2020-10-02 北京奇艺世纪科技有限公司 Method and device for determining terminal category
CN110062255B (en) * 2019-03-27 2021-05-04 东南大学 Method for identifying YouTube DASH video transmitted by QUIC protocol encryption
CN112104897B (en) * 2020-11-04 2021-03-12 北京达佳互联信息技术有限公司 Video acquisition method, terminal and storage medium
CN113395592A (en) * 2020-11-18 2021-09-14 腾讯科技(北京)有限公司 Video playing control method, device, equipment and computer storage medium
CN112698769B (en) 2020-12-25 2023-09-26 北京字节跳动网络技术有限公司 Information interaction method, device, equipment, storage medium and program product

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102238419A (en) * 2010-04-26 2011-11-09 三星电子株式会社 Method and apparatus for playing live content
CN102577411A (en) * 2009-09-22 2012-07-11 高通股份有限公司 Enhanced block-request streaming system using signaling or block creation
CN103354618A (en) * 2013-06-24 2013-10-16 西安交通大学 HLS-based multi-scenario streaming media adaptive live broadcast method
CN103369467A (en) * 2012-04-09 2013-10-23 英特尔公司 Signal transmission of three-dimensional video information in communication networks
CN103858440A (en) * 2011-08-31 2014-06-11 高通股份有限公司 Switch signaling methods providing improved switching between representations for adaptive http streaming
CN103905841A (en) * 2014-03-18 2014-07-02 深圳市云宙多媒体技术有限公司 Multi-protocol multi-player video playing method and system based on self-adaptive network bandwidth
CN103999033A (en) * 2011-08-31 2014-08-20 索尼克Ip股份有限公司 Systems and methods for automatically generating top level index files
CN104125516A (en) * 2013-04-24 2014-10-29 华为技术有限公司 Media file receiving method and apparatus, media file sending method and apparatus, and system
CN104221390A (en) * 2012-04-26 2014-12-17 高通股份有限公司 Enhanced block-request streaming system for handling low-latency streaming
WO2015000142A1 (en) * 2013-07-02 2015-01-08 华为技术有限公司 Method, system and equipment for transmitting service data
CN104429090A (en) * 2012-07-10 2015-03-18 夏普株式会社 Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium
CN105122828A (en) * 2013-04-19 2015-12-02 索尼公司 Information processing apparatus, content requesting method, and computer program
CN105474672A (en) * 2013-09-17 2016-04-06 英特尔Ip公司 Delivery of targeted media content
CN105659240A (en) * 2013-10-28 2016-06-08 华为技术有限公司 System and method for signaling and verifying url signatures for both url authentication and url-based content access authorization in adaptive streaming
CN105900445A (en) * 2014-01-16 2016-08-24 高通股份有限公司 Robust live operation of DASH
CN107197386A (en) * 2017-05-31 2017-09-22 西安理工大学 A kind of cross-platform video playback implementation method without client

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6064249B2 (en) * 2012-07-09 2017-01-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Dynamic adaptive streaming over hypertext transfer protocol client behavior framework and session management implementation

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102577411A (en) * 2009-09-22 2012-07-11 高通股份有限公司 Enhanced block-request streaming system using signaling or block creation
CN102238419A (en) * 2010-04-26 2011-11-09 三星电子株式会社 Method and apparatus for playing live content
CN103999033A (en) * 2011-08-31 2014-08-20 索尼克Ip股份有限公司 Systems and methods for automatically generating top level index files
CN103858440A (en) * 2011-08-31 2014-06-11 高通股份有限公司 Switch signaling methods providing improved switching between representations for adaptive http streaming
CN103369467A (en) * 2012-04-09 2013-10-23 英特尔公司 Signal transmission of three-dimensional video information in communication networks
CN104221390A (en) * 2012-04-26 2014-12-17 高通股份有限公司 Enhanced block-request streaming system for handling low-latency streaming
CN104429090A (en) * 2012-07-10 2015-03-18 夏普株式会社 Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium
CN105122828A (en) * 2013-04-19 2015-12-02 索尼公司 Information processing apparatus, content requesting method, and computer program
CN104125516A (en) * 2013-04-24 2014-10-29 华为技术有限公司 Media file receiving method and apparatus, media file sending method and apparatus, and system
CN103354618A (en) * 2013-06-24 2013-10-16 西安交通大学 HLS-based multi-scenario streaming media adaptive live broadcast method
WO2015000142A1 (en) * 2013-07-02 2015-01-08 华为技术有限公司 Method, system and equipment for transmitting service data
CN105474672A (en) * 2013-09-17 2016-04-06 英特尔Ip公司 Delivery of targeted media content
CN105659240A (en) * 2013-10-28 2016-06-08 华为技术有限公司 System and method for signaling and verifying url signatures for both url authentication and url-based content access authorization in adaptive streaming
CN105900445A (en) * 2014-01-16 2016-08-24 高通股份有限公司 Robust live operation of DASH
CN103905841A (en) * 2014-03-18 2014-07-02 深圳市云宙多媒体技术有限公司 Multi-protocol multi-player video playing method and system based on self-adaptive network bandwidth
CN107197386A (en) * 2017-05-31 2017-09-22 西安理工大学 A kind of cross-platform video playback implementation method without client

Also Published As

Publication number Publication date
CN108668179A (en) 2018-10-16

Similar Documents

Publication Publication Date Title
CN108668179B (en) Transmission method of media index file and related equipment
JP5936805B2 (en) Method, system, and computer software for streaming parallel user sessions
US10516904B2 (en) Controlling delivery of requested content based on delivery bandwidth limitations
KR102286957B1 (en) Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device
US20110088076A1 (en) System and Method for Media Adaptation
CN110933517B (en) Code rate switching method, client and computer readable storage medium
US20130302016A1 (en) Media content shifting
CN108462899B (en) Streaming media code stream self-adaptive transmission method based on equipment capability, playing equipment and playing system
US20090282448A1 (en) Set top box and parameter setting method
CN105100134A (en) Screen shared cache management
US11381885B2 (en) Method and device for managing processing of media content, and computer-readable recording medium
US10104143B1 (en) Manifest segmentation
US10116719B1 (en) Customized dash manifest
JP2013517674A (en) Method and apparatus for supporting content deployment
WO2009034483A1 (en) Method of transcoding content, transcoder unit, and upnp network system
WO2019128668A1 (en) Method and apparatus for processing video bitstream, network device, and readable storage medium
US10708667B1 (en) Combining fragments with different encodings
CN112243136B (en) Content playing method, video storage method and device
CN108271039B (en) File sending method and device
US10944982B1 (en) Rendition switch indicator
CN110602555B (en) Video transcoding method and device
CN102439946A (en) Data transmission method and device
WO2019193991A1 (en) Distribution device, distribution method and program
KR102024642B1 (en) Live Steaming Server device and operating method thereof
CN109479121B (en) Video monitoring system, client, signaling interaction server and control method

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