WO2014173079A1 - 媒体文件接收、媒体文件发送方法和装置及系统 - Google Patents

媒体文件接收、媒体文件发送方法和装置及系统 Download PDF

Info

Publication number
WO2014173079A1
WO2014173079A1 PCT/CN2013/084513 CN2013084513W WO2014173079A1 WO 2014173079 A1 WO2014173079 A1 WO 2014173079A1 CN 2013084513 W CN2013084513 W CN 2013084513W WO 2014173079 A1 WO2014173079 A1 WO 2014173079A1
Authority
WO
WIPO (PCT)
Prior art keywords
mpd
fragment
media
server
mpd fragment
Prior art date
Application number
PCT/CN2013/084513
Other languages
English (en)
French (fr)
Inventor
艾常权
刘欣
许阳坡
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP13882840.5A priority Critical patent/EP2938091B1/en
Priority to JP2016506753A priority patent/JP2016519895A/ja
Priority to KR1020157021327A priority patent/KR101734168B1/ko
Publication of WO2014173079A1 publication Critical patent/WO2014173079A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 

Definitions

  • the present invention relates to a communication technology, and more particularly to a media file receiving, media file sending method, apparatus and system.
  • the htt-based adaptive adaptive streaming over HTTP (DASH) scheme is a new generation media transmission solution being implemented by the international standard organization 3gpp and MPEG.
  • the client player side
  • the client can automatically adjust according to the network situation and the client's own situation to obtain a suitable media stream for playback.
  • the client can request a good quality media stream to play, and when the network is degraded, the client can request a code stream with a slightly lower quality and a lower code rate to play, so that the client can be continuously played.
  • the server-side content preparation module in the DHSH system is responsible for preparing media content, slicing, and generating a Media Presentation Description (MPD) file.
  • MPD Media Presentation Description
  • a code stream of 2 Mbps, 1 Mbps, and 500 kbps is separately generated for adaptation, and the corresponding media files are a-2000.mp4, a-1000.mp4, and a-500.mp4.
  • Media slices generated by these different code rate file cuts are described by MPD files.
  • the DASH client broadcasts the code stream in the following steps:
  • the DHSH client requests the MPD file from the MPD distribution module, obtains the MPD file, parses the MPD file, and obtains the appropriate media from the media segment distribution module according to the media description information in the MPD file. The segment is played.
  • the DHSH client needs to request the MPD file from the server first when playing the media file.
  • the source time is long, and the cut media fragments are many.
  • the MPD file will be very large, causing the client to download the MPD file for a long time.
  • MPD file downloading and parsing will take a considerable amount of time due to limitations of network bandwidth and hardware capabilities of the handheld device, which seriously affects the user experience.
  • an embodiment of the first aspect of the present invention provides a media file receiving method, where the method includes:
  • the client obtains the MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the media fragment corresponding to the first MPD fragment is The play time includes the start play time point;
  • the server Receiving, by the client, the first MPD fragment that is fed back by the server, and sending a media fragment acquisition request to the server according to the media description information in the first MPD fragment, so that the server is configured according to the server
  • the media fragment obtains a media slice requesting to acquire and feed back the description of the first MPD fragment
  • the client receives the media slice described by the first MPD fragment fed back by the server.
  • the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the client obtains the first part from the media presentation description MPD fragment index file according to the starting play time point of the user request.
  • the method further includes:
  • the client sends an MPD fragment index file acquisition request to the server, and receives the service
  • the server obtains the MPD fragment index file that is requested to be fed back according to the MPD fragment index file.
  • the method further includes: if the client receives the first MPD fragment that is fed back by the server, The next play time point of the user request received by the client is in the playing time of the media segment described in the first MPD fragment, and the client is based on the media description information in the first MPD fragment. Obtaining a media slice corresponding to the next play time point from the server.
  • An embodiment of the second aspect of the present invention provides a media file receiving method, where the method includes: the client searches for a first MPD fragment in a media presentation description MPD fragment index file according to a starting playback time point requested by a user.
  • the playing time of the media segment corresponding to the first MPD segment includes the initial playing time point;
  • the media presentation description MPD fragment index file includes at least one MPD segment and includes at least one MPD segment Fragment address of the slice;
  • the client sends a media fragmentation request to the server according to the media description information in the first MPD fragment, and receives the first MPD fragment description fed back by the server according to the media fragmentation request.
  • Media shards According to the media file receiving method of the second aspect of the present invention, after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening The delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the method further includes:
  • the client searches for the MPD fragment index file in the media presentation description according to the starting playback time point requested by the user.
  • the MPD fragment address of the first MPD fragment
  • a third embodiment of the present invention provides a method for sending a media file, where the method includes: receiving, by a server, an MPD fragment acquisition request, including a media presentation description MPD fragment address, sent by a client, in a pre-stored MPD fragment file. Finding an MPD fragment corresponding to the MPD fragment address, and feeding back the found MPD fragment to the client;
  • the server receives the media fragmentation request sent by the client, and feeds back to the client a media fragment corresponding to the media fragmentation request.
  • the client after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the server before the server receives the MPD fragment acquisition request that is sent by the client, including the media presentation description MPD fragment address, the method also includes:
  • the method before the server receives an MPD fragment acquisition request that includes a media presentation description MPD fragment address sent by a client, Also includes:
  • the server segments the MPD file according to the preset media duration to obtain at least one MPD fragment
  • the server establishes index information for each MPD fragment and saves the file in the MPD fragment index file.
  • the index information of an MPD fragment in the MPD fragment index file includes a starting playback time point of the media fragment described by the MPD fragment, a media duration, and an MPD fragment address of the MPD fragment.
  • a fourth embodiment of the present invention provides a method for sending a media file, where the method includes: receiving, by a server, a media presentation description MPD fragment acquisition request sent by a client, where the MPD fragment acquisition request includes a starting playback time point And the length of the media;
  • the server Receiving, by the server, a media fragment acquisition request sent by the client, where the media fragment requested by the media fragment acquisition request is described by the MPD fragment; the server according to the media fragmentation Acquiring a request to feed back to the client the media fragment described by the MPD fragment.
  • the client after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the server determines, according to the initial playing time point and the media duration, the initial playing time point and The MPD fragment corresponding to the media duration includes:
  • the server parses the source MPD file according to the initial playing time point and the media duration, and locates or assembles the MPD corresponding to the initial playing time point and the media duration in the source MPD file. Fragmentation.
  • the server determines, according to the initial playing time point and the media duration, the initial playing time point and And the MPD fragment corresponding to the duration of the media, and feeding back the MPD fragment to the client, including:
  • the server is pre-stored according to the start play time point and the MPD fragment index file Finding, in the MPD fragment file, a first MPD fragment corresponding to the media segment corresponding to the playback time point;
  • the server feeds back the first MPD fragment to the client.
  • the server determines, according to the starting play time point and the media duration, the start Playing the time point and the MPD fragment corresponding to the media duration, and feeding back the MPD fragment to the client, further including:
  • the server searches for N MPD fragments backward from the first MPD fragment in the MPD fragment file, and The client feeds back the N pieces of the MPD fragments, and the total media duration of the media fragments described by the first MPD fragment and the N pieces of the MPD fragments is greater than or equal to the media requested by the client.
  • Duration, N is a natural number.
  • the fifth aspect of the present invention provides a media file receiving method, where the method includes: the client sends a media presentation description MPD fragment acquisition request including a start playing time point and a media duration to the server, so that the server Determining an MPD slice corresponding to the initial play time point and the media duration according to the initial play time point and the media duration;
  • the client receives the MPD score corresponding to the initial playing time point and the media duration fed back by the server.
  • the film includes:
  • the playing time that the client receives the feedback from the server includes a first MPD fragment corresponding to the media slice of the starting playback time point.
  • the receiving, by the client, the MPD fragment corresponding to the initial playing time point and the media duration returned by the server further includes:
  • the client receives the N MPD fragments fed back by the server until the first MPD fragment and the N
  • the total media duration of the media segment described by the MPD fragment is greater than or equal to the media duration requested by the client, and N is a natural number.
  • the method further includes:
  • the client obtains the location from the server according to the media description information in the MPD segment fed back by the server.
  • the media slice corresponding to the next play time point is described.
  • An embodiment of the sixth aspect of the present invention provides a media file receiving apparatus, where the apparatus includes: a searching module, configured to acquire, according to a starting play time point requested by a user, a first file from a media presentation description MPD fragment index file.
  • a sending module configured to send, to the server, a first MPD fragment obtaining request including an MPD fragment address of the first MPD fragment, so that the server is configured according to an MPD fragment address of the first MPD fragment Obtaining the first MPD fragment in a pre-stored MPD fragment file;
  • the sending module is further configured to send a media fragment obtaining request to the server according to the media description information in the first MPD fragment, so that the server obtains and feeds back according to the media fragment obtaining request.
  • a receiving module configured to receive the first MPD fragment fed back by the server
  • the receiving module is further configured to receive a media slice of the first MPD fragment description fed back by the server.
  • the client after acquiring the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the sending module is further configured to send an MPD fragment index file acquisition request to the server, where the receiving module is further used to Receiving, by the server, the MPD fragment index file that is fed back according to the MPD fragmentation index file.
  • An embodiment of the seventh aspect of the present invention provides a media file receiving apparatus, where the device includes: a searching module, configured to search for a first in a media presentation description MPD fragment index file according to a starting playback time point requested by a user.
  • An MPD fragment where a play time of the media slice corresponding to the first MPD slice includes the start play time point;
  • the media presentation description MPD slice index file includes at least one MPD slice and includes at least The fragment address of an MPD fragment;
  • a sending module configured to: if the searching module finds the first MPD fragment in the media presentation description MPD fragment index file, according to the media description information in the first MPD fragment, to the server Send a media shard request,
  • a receiving module configured to receive a media slice that is described by the server according to the first MPD fragment that is fed back by the media fragmentation request.
  • the client after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the searching module is further configured to: if the searching module searches for the MPD fragment index file in the media presentation description, Go to the first MPD fragment, and search for an MPD fragment address of the first MPD fragment in the media presentation description MPD fragment index file according to the initial playback time point requested by the user;
  • the sending module is further configured to send, to the server, a first MPD fragment obtaining request including an MPD fragment address of the first MPD fragment, so that the server is configured according to the MPD of the first MPD fragment The address is obtained in the pre-stored MPD fragment file to obtain the first MPD fragment;
  • the receiving module is further configured to receive the first MPD fragment that is fed back by the server, and the sending module is further configured to send the media to the server according to the media description information in the first MPD fragment. Fragment obtaining request, so that the server obtains the request according to the media fragmentation Taking and feeding back the media slice described by the first MPD slice;
  • the receiving module is further configured to receive a media slice of the first MPD fragment description fed back by the server.
  • An eighth embodiment of the present invention provides a media file sending apparatus, where the apparatus includes: a receiving module, configured to receive an MPD fragment obtaining request that is sent by a client, including a media presentation description MPD fragment address;
  • a searching module configured to search, in the pre-stored MPD fragment file, the MPD fragment corresponding to the MPD fragment address according to the MPD fragment acquisition request received by the receiving module;
  • a sending module configured to: feed back, to the client, the MPD fragment that is found by the searching module; the receiving module is further configured to receive a media fragmentation request sent by the client, where the sending module is further used to: And feeding back to the client a media fragment corresponding to the media fragmentation request.
  • the client after acquiring the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the receiving module is further configured to receive an MPD fragment index file acquisition request sent by the client, where the sending module further The MPD fragment index file corresponding to the MPD fragment index file acquisition request is sent to the client, where the index information of one MPD fragment in the MPD fragment index file includes the media described by the MPD fragment The starting playback time point of the slice, the media duration, and the MPD slice address of the MPD slice.
  • the apparatus further includes:
  • the MPD fragmentation module is configured to slice the MPD file according to a preset media duration to obtain at least one MPD fragment; and is further configured to establish index information for each MPD fragment and save the data in the MPD.
  • the index information of an MPD fragment in the MPD fragment index file includes a starting playback time point of the media fragment described by the MPD fragment, a media duration, and an MPD score of the MPD fragment.
  • Slice address The ninth aspect of the present invention provides a media file sending apparatus, where the apparatus includes:
  • a receiving module configured to receive a media presentation description MPD fragment acquisition request sent by the client, where the MPD fragment acquisition request includes a starting playback time point and a media duration;
  • An MPD fragment determining module configured to determine, according to the initial playing time point and the media duration, an MPD fragment corresponding to the initial playing time point and the media duration;
  • a sending module configured to feed back the MPD fragment to the client
  • the receiving module is further configured to receive a media fragment obtaining request sent by the client, where the media fragment requested by the media fragment obtaining request is described by the MPD fragment;
  • the sending module is further configured to feed back, to the client, the media slice of the MPD fragment description.
  • the MPD fragment determining module is specifically configured to:
  • the MPD fragment determining module is specifically configured to:
  • a tenth aspect of the present invention provides a media file transmission system, where the system includes: a client, a server;
  • the client is configured to obtain an MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the first MPD fragment corresponds to The playing time of the media segment includes the starting playing time point;
  • the client is further configured to send, to the server, a first MPD fragment acquisition request including an MPD fragment address of the first MPD fragment;
  • the server is configured to obtain the first MPD fragment in a pre-stored MPD fragment file according to the MPD fragment address of the first MPD fragment, and feed back to the client;
  • the client is further configured to receive the first MPD fragment that is fed back by the server, and send a media fragment acquisition request to the server according to the media description information in the first MPD fragment;
  • the server is further configured to: according to the media fragment acquisition request, obtain and feed back to the client, the media fragment of the first MPD fragment description;
  • the client is further configured to receive a media slice of the first MPD fragment description fed back by the server.
  • the client after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the client is further configured to send an MPD fragment index file acquisition request to the server, where the server is configured according to the MPD.
  • the fragmentation index file obtains the MPD fragmentation index file requested to be fed back to the client.
  • the eleventh embodiment of the present invention provides a media file transmission system, where the system includes: a client and a server;
  • the client is configured to send a media presentation description MPD fragment acquisition request to the server, where the MPD fragment acquisition request includes a starting playback time point and a media duration;
  • the server is configured to receive a media presentation description MPD fragment acquisition request sent by the client, and the server is further configured to determine, according to the initial playback time point and the media duration, the initial playback An MPD slice corresponding to the media duration at a time point, and feeding back the MPD slice to the client;
  • the client is further configured to receive the MPD fragment, and the client sends a media fragment acquisition request to the server according to the media fragment described by the MPD fragment;
  • the server is further configured to receive a media fragment acquisition request sent by the client;
  • the server is further configured to: feed back to the client according to the media fragmentation request
  • the media slice described by the MPD slice The media slice described by the MPD slice.
  • the client after the client obtains the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening
  • the delay of the client to start playing the media file achieves the purpose of quickly starting to play the media file.
  • the server is configured to: according to the starting play time point and the media duration, to the source MPD file. Performing an analysis to locate or assemble an MPD slice corresponding to the initial play time point and the media duration in the source MPD file.
  • the server is specifically configured to pre-store according to the start play time point and the MPD fragment index file. The first MPD fragment corresponding to the media segment corresponding to the starting playback time point is searched in the MPD fragment file; and the first MPD fragment is fed back to the client.
  • FIG. 1 is a flowchart of a method for receiving a media file according to an embodiment of the present invention
  • FIG. 2 is a flowchart of another method for receiving a media file according to an embodiment of the present invention
  • 3A is a flowchart of a method for sending a media file according to an embodiment of the present invention
  • FIG. 3B is a schematic diagram of a fragmentation of an MPD file by a server according to an embodiment of the present invention
  • FIG. 4A is a flowchart of another method for sending a media file according to an embodiment of the present invention
  • FIG. 4B is a schematic diagram of an implementation method of FIG. 4A;
  • FIG. 4C is a schematic diagram of another implementation method of FIG. 4A;
  • FIG. 5 is a flowchart of still another method for receiving a media file according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a media file receiving apparatus according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of another media file receiving apparatus according to an embodiment of the present disclosure
  • FIG. 8 is a schematic structural diagram of a media file sending apparatus according to an embodiment of the present invention
  • FIG. 9 is a schematic structural diagram of another media file sending apparatus according to an embodiment of the present invention
  • FIG. 11 is a schematic structural diagram of a media file transmission system according to an embodiment of the present invention
  • FIG. 12 is a schematic structural diagram of another media file transmission system according to an embodiment of the present invention.
  • the server performs fragmentation processing on the MPD file in advance, generates an MPD fragment file including at least one MPD fragment, and establishes an MPD fragment file for the MPD fragment file.
  • An MPD fragment index file that includes an MPD slice address.
  • FIG. 1 is a flowchart of a method for receiving a media file according to an embodiment of the present invention. As shown in FIG. 1, the method provided in this embodiment includes:
  • Step 11 The client obtains the MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the media corresponding to the first MPD fragment The play time of the slice includes the start play time point.
  • the server performs fragmentation processing on the MPD file according to the playing time of the media file described in the MPD file, and generates an MPD fragment file composed of a plurality of MPD fragments.
  • An MPD fragment describes one or more media fragments, including media description information describing the media fragments.
  • the media fragment described by one MPD fragment corresponds to the media data of a piece of media time.
  • the server creates index information for the MPD fragment and saves it in the MPD fragment index file.
  • the MPD fragment index file includes the fragment address of at least one MPD fragment.
  • the index information of an MPD fragment in the MPD fragment index file may include a starting playback time point of the media fragment described by the MPD fragment, a media duration, and an address of the MPD fragment.
  • the MPD slice index file can be described in the XML language.
  • the playback media is started.
  • the MPD fragment index file acquisition request is first sent to the server, and the MPD fragment index file generated by the server is obtained.
  • the MPD fragment index file acquisition request may be sent to the server to obtain the MPD fragment index file generated by the server.
  • the client After receiving the user play request sent by the user and carrying the start play time point, the client parses the MPD fragment index file, and searches for the media slice corresponding to the start play time in the MPD fragment index file.
  • the MPD slice address of the MPD slice For example, the user drags the play progress bar on the client, and the time point corresponding to the position where the drag is stopped is the start play time point of the user.
  • the client determines that the request requested by the user is played. Point, the parsing of the MPD fragment index file is started, and the first MPD fragment is searched in the MPD fragment index file, and the first MPD fragment is the MPD fragment corresponding to the media fragment whose playback time includes the starting playback time point. .
  • the client determines the playing time of the media segment described by the MPD fragment by using the starting playing time point and the media duration of the media segment in the MPD fragment index information, if the starting playing time point is in an MPD point.
  • the playing time of the media segment described by the slice that is, the playing time of the media segment described by the MPD segment is found to include the starting playing time point, it is determined that the media segment requested to be played is included in the MPD segment. Described within the media shard.
  • Step 12 The client sends the first MPD fragment address including the first MPD fragment to the server.
  • the MPD fragment acquires a request to cause the server to obtain the first MPD fragment in the pre-stored MPD fragment file according to the MPD fragment address of the first MPD fragment.
  • Step 13 The client receives the first MPD fragment fed back by the server, and sends a media fragment acquisition request to the server according to the media description information in the first MPD fragment, so that the server obtains and feeds back according to the media fragmentation request.
  • Step 14 The client receives the media slice described by the first MPD fragment fed back by the server.
  • the client After finding the MPD fragment address in the MPD fragment index file, the client obtains the corresponding MPD fragment from the server according to the found MPD fragment address. Then, according to the media description information of the MPD fragment fed back by the server, the media fragment of the MPD fragment description is obtained from the server.
  • the MPD fragment index file further includes an address of the MPD file.
  • MPD files can be obtained directly from the server with bandwidth and client capability licenses. You can also get a few MPD slices first, and then get the MPD file if possible.
  • the MPD fragment index index The first MPD slice of the MPD slice file is included in the file. If the initial playback time point requested by the user is within the playing time of the media segment described in the first MPD fragment, the client sends a media fragment obtaining request to the server according to the media description information in the first MPD fragment. And receiving the media slice described by the first MPD fragment fed back by the server. Therefore, when the client starts playing the media file from the beginning of the media, the first MPD fragment is not required to be requested from the server, and the first MPD can be directly obtained from the server according to the media description information in the first MPD fragment.
  • the first MPD fragment of the MPD fragment file is the first MPD fragment obtained when the MPD file is fragmented according to the media duration, and the first MPD fragment is also the MPD fragment including the earliest playback time point. .
  • the user when the user requests to play the media segment of the next playing time point, for example, during the playing process, the user drags the playing progress bar on the client, and stops for the last starting time point. The position of the drag is the next start play time point.
  • the client determines whether the play time of the media slice described by the first MPD slice that the server has feedback includes the next start play time point. If the next play time point of the user request received by the client is within the playing time of the media slice described by the first MPD fragment, the client does not need to obtain the repeated MPD fragment from the server again.
  • the client obtains the information from the server according to the method provided in steps 11 to 13. MPD sharding and described media sharding.
  • the client searches for the play time in the MPD fragment index file according to the starting play time point requested by the user, including starting playback.
  • the address of the MPD fragment corresponding to the media fragment at the time point, and the corresponding MPD fragment is requested from the server according to the found address. Therefore, the client does not obtain a complete MPD file from the server, but the playback time includes the MPD fragment corresponding to the media slice at the starting playback time point. Since the MPD fragment is small, the client takes a shorter time to acquire the MPD fragment and the time for parsing the MPD fragment is shorter.
  • the client After obtaining the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment according to the media description information of the MPD fragment. Therefore, the delay of starting the playback of the media file by the client is shortened, and the fast startup is achieved. The purpose of playing media files.
  • FIG. 2 is a flowchart of another method for receiving a media file according to an embodiment of the present invention.
  • the main difference between the corresponding embodiment of FIG. 2 and the corresponding embodiment of FIG. 1 is that the MPD fragment index file in FIG. 2 is included except In addition to the fragment address of one MPD fragment, at least one MPD fragment is included.
  • the method provided in this embodiment includes:
  • Step 21 The client searches for the first MPD fragment in the media presentation description MPD fragment index file according to the starting playback time point of the user request, where the playback time of the media fragment corresponding to the first MPD fragment includes At the start playback time point, the MPD slice index file includes at least one MPD slice and includes a slice address of at least one MPD slice.
  • the server performs fragmentation processing on the MPD file according to the playing time of the media file described in the MPD file, and generates an MPD fragment file composed of a plurality of MPD fragments. After the MPD fragment file is generated, the server indexes the MPD fragment and saves it in the MPD fragment index file.
  • the MPD fragment index file includes the fragment address of at least one MPD fragment.
  • the index information of an MPD fragment in the MPD fragment index file may include a starting playback time point of the media fragment described by the MPD fragment, a media duration, and an address of the MPD fragment.
  • the MPD slice index file can be described in XML language.
  • the server retains at least one MPD fragment in the MPD fragment index file. For example, the media description information with a short media length may not be decomposed, and the media description information with a short media duration may be reserved.
  • the client receives a user request including the starting playback time point, the playback media is started.
  • the client first sends an MPD fragment index file acquisition request to the server to obtain the MPD fragment index file generated by the server.
  • the client may also send an MPD fragment index file acquisition request to the server after receiving the user request including the super-start insertion time point, and obtain the MPD fragment index file generated by the server.
  • the client After receiving the user play request that is sent by the user and carrying the initial play time point, the client parses the MPD fragment index file, and searches for the first MPD fragment in the MPD fragment index file, where the first MPD fragment is The play time of the corresponding media slice includes the start play time point.
  • Step 22 If the first MPD fragment is found in the MPD fragment index file, the client sends a media fragmentation request to the server according to the media description information in the first MPD fragment, and receives the feedback from the server according to the media fragmentation request.
  • the client displays the MPD fragment index file in the media presentation according to the starting playback time point requested by the user.
  • Finding an MPD slice address of the first MPD slice and then going to the server Sending a first MPD fragment acquisition request including an MPD fragment address of the first MPD fragment, so that the server obtains the MPD fragment file in the pre-stored MPD fragment file according to the MPD address of the first MPD fragment.
  • the first MPD slice is described.
  • the client When receiving the first MPD fragment that is fed back by the server, the client sends a media fragment acquisition request to the server according to the media description information in the first MPD fragment, so that the server And obtaining, by the media fragment obtaining request, the media fragment described by the first MPD fragment, and then receiving, by the client, the media fragment of the first MPD fragment that is fed back by the server.
  • the client searches for the play time in the MPD fragment index file according to the starting play time point requested by the user, including starting playback.
  • the MPD fragment corresponding to the media fragment at the time point, and the media fragment described by the MPD fragment is obtained from the server according to the found MPD fragment. Therefore, before the media fragment is obtained, the client obtains not the complete MPD file from the server, but the playback time includes the MPD fragment corresponding to the media fragment of the starting playback time point. Since the MPD fragmentation is small, the time for the client to acquire the MPD fragment is shorter, and the time for parsing the MPD fragment is shorter.
  • the client After obtaining the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment according to the media description information of the MPD fragment. Therefore, the delay of starting the playback of the media file by the client is shortened, and the fast startup is achieved. The purpose of playing media files.
  • FIG. 3 is a flowchart of a method for sending a media file according to an embodiment of the present invention. As shown in FIG. 3A, the method provided in this embodiment includes:
  • Step 31 The server receives the MPD fragmentation request that is sent by the client, including the MPD fragmentation address, and searches for the MPD fragment corresponding to the MPD fragmentation address in the pre-stored MPD fragment file, and feeds back to the client.
  • the MPD slice The MPD slice.
  • Step 32 The server receives the media fragmentation request sent by the client, and feeds the media fragment corresponding to the media fragmentation request to the client.
  • the server performs fragmentation processing on the MPD file according to the playing time of the media file described in the MPD file, and generates an MPD fragment file composed of a plurality of MPD fragments. After the MPD fragment file is generated, the server creates index information for at least one MPD fragment and saves it in the MPD fragment index file.
  • the MPD fragment index file includes a fragment address of at least one MPD fragment.
  • MPD fragment index file The index information of an MPD fragment may include the initial broadcast of the media fragment described by the MPD fragment. The time point, the media duration, and the address of the MPD slice.
  • the MPD slice index file can be described in the XML language.
  • the server retains at least one MPD fragment in the MPD fragment index file.
  • the server may not decompose the media description information with a short media duration, and retain the media description information with a short media duration.
  • the server can also add the first MPD slice of the MPD slice file to the MPD slice index file.
  • the first MPD fragment of the MPD fragment file is the first MPD fragment obtained when the MPD file is fragmented according to the media duration.
  • the first MPD fragment is also the MPD fragment including the earliest playback time point. .
  • the server may also add the address of the MPD file in the MPD fragment index file.
  • MPD files can be obtained directly from the server with bandwidth and client capability licenses. You can also get MPD shards several times and get MPD files when possible.
  • the server adds the first MPD fragment of the MPD fragment file to the MPD fragmentation index file.
  • the first MPD fragment of the MPD fragment file is the first MPD fragment obtained when the MPD file is fragmented according to the media duration.
  • the first MPD fragment is also the MPD fragment including the earliest playback time point. . If the starting playback time point requested by the user is within the playing time of the media segment described in the first MPD fragment, the client sends a media fragment obtaining request to the server according to the media description information in the first MPD fragment. And receiving the media slice described by the first MPD fragment fed back by the server.
  • the client when the client starts to play the media file from the beginning of the media, the client does not need to request the first MPD fragment from the server, and can obtain the first MPD score directly from the server according to the media description information in the first MPD fragment.
  • the media segmentation described by the slice further shortens the delay for the client to start playing media files.
  • the server can use various methods to slice the MPD file according to the time dimension to generate an MPD fragment file, and establish an MPD fragment index file.
  • the following is an example of two methods.
  • the first method is to generate MPD fragments for the MPD files according to the media duration described by the Duration element in the MPD file, and establish the playback time point of the MPD fragments for each MPD fragment.
  • the duration element in the SegmentURL is used to describe the time information of each media slice, that is, the media duration.
  • the MPD processing module in the server may perform MPD fragmentation on the MPD file a.mpd according to the media duration described by the Duration element in the MPD file: al.mpd, a-2.mpd, a-3. Mpd, a-4.mpd, ...an.mpd.
  • the server creates index information for the above MPD fragment file and saves it in the MPD fragment index file.
  • the MPD fragment index file a.mpdindex created according to the above method is exemplified below:
  • the ORIGINALMPD element describes the URL of the MPD file
  • the MPDFRAGMENTS element describes the MPD fragment file composed of all MPD fragments.
  • the URL describing the MPD file can be kept in the MPD slice index file.
  • the FRAGMENT element describes the index information of an MPD slice.
  • the attribute Start describes the starting time point of the media fragment described by the MPD fragment
  • the attribute duration describes the media duration of the media fragment
  • the element url describes the url of the MPD fragment.
  • the start attribute can be omitted if it can be obtained according to the context.
  • the first FRAGMENT description message is: The MPD slice describing the media file starting at 0 seconds and 120 seconds long can be obtained from the URL: http ://www. example .com/a/fragments/a- 1.mpd grip
  • the first MPD fragment may also be included in the MPD fragment index file.
  • the MPD fragment index file a.mpdindex shown below adds an MPD element under the first FRAGMENT element to describe the first MPD fragment.
  • the client does not need to slave the server when playing media files from the beginning of the media. Requesting the first MPD fragment, the media description information in the first MPD fragment can be parsed, and the media fragment of the first MPD fragment description is directly obtained from the server. ⁇ MPDINDEX>
  • ⁇ FRAGMENT start 120s duration: 120s
  • Another MPD file fragmentation method and a method for establishing an MPD fragment index file are: the server segments the MPD file according to the media duration described by the Period element in the MPD file to generate an MPD fragment, and creates an MPD fragment for the MPD fragment. Index information, and saved in the MPD fragment index file.
  • the server segments the MPD file according to the media duration described by the Period element in the MPD file to generate an MPD fragment, and creates an MPD fragment for the MPD fragment. Index information, and saved in the MPD fragment index file.
  • a.mpd three Periods are described, and the durations of the three Periods are 2000 seconds, 200 seconds, and 1200 seconds, respectively.
  • the server can decompose a longer period of Period, and can keep the Period with a shorter duration.
  • the MPD fragment index file created according to the above method is exemplified below: ⁇ MPD>
  • the first Period in the original MPD file a.mpd is decomposed into 10 new Periods, each of which is 200 seconds long.
  • Each new phase that is decomposed is described by an MPD slice, and the new Period is described in the MPD slice index file.
  • the first newly generated Period is described as:
  • the duration indicates the duration of the new period, that is, the duration of an MPD fragment, and the attribute of the xlink is added, indicating the url of the MPD fragment corresponding to the new period.
  • the second Period is relatively short, and the media description information described in the second Period is not decomposed during processing, and remains unchanged; or, to further reduce the MPD fragment, the media description of the Period is The information is independent, and the attribute xlink description is also used in Period.
  • the MPD fragment index file as shown below can also be in the MPD fragment index file. It can also include the first MPD slice, which is the media description of the first Period.
  • the main difference between the method embodiment corresponding to the method embodiment of FIG. 4A and FIG. 5 is that the client does not need to obtain the MPD fragment index file from the server, but directly The server requests an MPD slice corresponding to the start play time point and the media duration.
  • FIG. 4A is a flowchart of another method for sending a media file according to an embodiment of the present invention. As shown in FIG. 4A, the method provided in this embodiment includes:
  • Step 41 The server receives a media presentation description MPD fragment acquisition request sent by the client, where the MPD fragment acquisition request includes a starting playback time point and a media duration.
  • the client can carry the media length of the MPD fragment requested by the server in the MPD fragment request, and the server feeds the MPD fragment to the client according to the starting playback time point and the media duration requested by the client.
  • the client can also not carry the media duration in the MPD fragment request, but pre-negotiate the media duration with the server.
  • the server After receiving the MPD fragment request, the server feeds back the MPD fragment to the client according to the playback time point and the default media duration.
  • Step 42 The server determines the MPD fragment corresponding to the starting playing time point and the media duration according to the starting playing time point and the media duration, and feeds back to the client the MPD fragment corresponding to the starting playing time point and the media duration.
  • the server may perform fragmentation processing on the MPD file in advance according to the playing time of the media file described in the MPD file, and generate an MPD fragment file composed of a plurality of MPD fragments.
  • Each MPD score A slice describes a media slice of a media time, and each MPD slice can describe one or more media slices.
  • the content in the MPD slice is the media description information describing the media slice.
  • the server establishes index information for the MPD fragment and saves it in the MPD fragment index file.
  • the index information of the MPD fragment includes the starting time point of the media fragment described by the MPD fragment, the media duration, and the address of the MPD fragment in the MPD fragment file.
  • the MPD fragment index file can be described in XML language.
  • the server After receiving the MPD fragment acquisition request from the client, the server starts the playback time point and the MPD fragment index file according to the client request, in the MPD fragment file.
  • the first MPD fragment is searched, and the playing time of the media fragment described by the first MPD fragment includes the starting playback time point requested by the client. Further, if the media length of the first MPD fragment is less than the media length requested by the client or the preset media length of the horse, the server continues to search for N MPD fragments in the MPD fragment file starting from the first MPD fragment. The search is stopped until the sum of the media lengths of all the MPD fragments found is greater than or equal to the media length requested by the client. Where N is a natural number.
  • the MPD request processing module searches and starts the playback time point in the MPD fragment index file.
  • the MPD segment corresponding to the media duration.
  • the MPD fragmentation module feeds back to the client the MPD fragment corresponding to the initial playback time point and the media duration found by the MPD request processing module.
  • the server may not fragment the MPD file to generate an MPD fragment file in advance, but dynamically slice the MPD file after receiving the MPD fragment request sent by the client.
  • the MPD request processing module parses the MPD file, locates or assembles and requests the MPD file.
  • the MPD slice corresponding to the start playback time point and the media duration.
  • the MPD fragmentation module feeds back the mapped MPD fragments to the client MPD request processing module.
  • Step 43 The server receives the media fragment acquisition request sent by the client, where the media fragment requested by the media fragment acquisition request is the media fragment described by the MPD fragment.
  • Step 44 The server feeds back, according to the media fragmentation request, the media fragment described by the MPD fragment to the client.
  • FIG. 5 is a flowchart of still another method for receiving a media file according to an embodiment of the present invention. As shown in FIG. 5, the method provided in this embodiment includes: Step 51: The client sends a media presentation description MPD fragment acquisition request including a start playing time point and a media duration to the server, so that the server starts the playback time point according to the start time. And the duration of the media, determine the MPD fragment corresponding to the starting playback time point and the media duration.
  • the client After receiving the user request including the start playing time point and the media duration, the client sends the initial playing time point and the media duration to the server in the MPD fragment obtaining request, and the server starts the playing time point and the media according to the request of the client. Duration, feedback MPD fragments to the client.
  • the user request may not include the media duration, and the client does not carry the media duration in the MPD fragment acquisition request, but the client and the server pre-negotiate the media duration.
  • the server After receiving the MPD fragment request, the server feeds back the MPD fragment to the client according to the playback time point and the default media duration. For example, when the client initiates playback, an MPD fragment acquisition request including a starting playback time point and a media duration is sent to the server.
  • Step 53 The client sends a media fragment acquisition request to the server according to the MPD fragment that is fed back by the server, so that the server searches for the media fragment described by the MPD fragment;
  • Step 54 Client And receiving, by the server, the media fragment of the MPD fragment that is fed back by the server.
  • the client when requesting to play the media, the client sends an MPD fragment acquisition request including a starting playback time point and a media duration to the server, and the server sends the request to the client.
  • the end responds to the MPD fragment corresponding to the starting playback time point and the media duration.
  • the client obtains not the complete MPD file from the server, but the MPD fragment, due to the MPD.
  • the fragmentation is small, the time for the client to obtain the MPD fragment is shorter, and the time for parsing the MPD fragment is shorter.
  • the client can obtain the MPD from the server according to the media description information of the MPD fragment.
  • the media segmentation described by the fragmentation therefore, shortens the delay for the client to start playing the media file, and achieves the purpose of quickly starting to play the media file.
  • the playing time fed back by the client receiving the server includes the first MPD fragment corresponding to the media segment starting the playing time point.
  • the client continues to receive the MPD fragments fed back by the server until the sum of the media durations of all the MPD fragments received by the client is greater than or equal to the client request.
  • Media length
  • the client receives the media fragment of the MPD fragment description fed back by the server, if the playback time of the media fragment described by the MPD fragment fed back by the server includes the next playback time
  • the client obtains the media fragment corresponding to the next playing time point from the server according to the media description information in the MPD fragment fed back by the server.
  • the media file sending apparatus performs fragmentation processing on the MPD file in advance, and generates an MPD fragment file including at least one MPD fragment, and is an MPD fragment.
  • the file establishes an MPD fragment index file including the MPD slice address.
  • the device sends an MPD fragment index file obtaining request to the media file sending device, and acquires an MPD fragment index file generated by the media file sending device.
  • FIG. 6 is a schematic structural diagram of a media file receiving apparatus according to an embodiment of the present invention.
  • the apparatus provided in this embodiment includes: a searching module 61, a sending module 62, and a receiving module 63.
  • the searching module 61 is configured to obtain an MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the first MPD fragment corresponds to The play time of the media slice includes the start play time point.
  • the sending module 62 is configured to send, to the server, a first MPD fragment obtaining request including an MPD fragment address of the first MPD fragment, so that the server is configured according to the MPD fragment of the first MPD fragment The address is obtained in the pre-stored MPD fragment file to obtain the first MPD fragment;
  • the sending module 62 is further configured to send, according to the media description information in the first MPD fragment, a media fragment obtaining request to the server, so that the server obtains and feeds back according to the media fragment obtaining request.
  • the receiving module 63 is configured to receive the first MPD fragment fed back by the server;
  • the receiving module 63 is further configured to receive the media fragment of the first MPD fragment description fed back by the server. Further, the sending module 62 is further configured to send an MPD fragment index file acquisition request to the server. The receiving module 63 is further configured to receive, by the server, the media presentation description MPD fragmentation index file that is fed back according to the MPD fragmentation index file acquisition request.
  • FIG. 8 is a schematic structural diagram of a media file sending apparatus according to an embodiment of the present invention.
  • the apparatus provided in this embodiment includes: a receiving module 81, a searching module 82, and a sending module 83.
  • the receiving module 81 is configured to receive an MPD fragment obtaining request that is sent by the client, including a media presentation description MPD fragment address.
  • the searching module 82 is configured to search, in the pre-stored MPD fragment file, the MPD fragment corresponding to the MPD fragment address according to the MPD fragment acquisition request received by the receiving module.
  • the sending module 83 is configured to feed back, to the client, the MPD fragment found by the searching module.
  • the receiving module 81 is further configured to receive a media fragmentation request sent by the client, where the sending module is further configured to feed back, to the client, a media fragment corresponding to the media fragmentation request.
  • the receiving module 81 is further configured to receive an MPD fragment index file obtaining request sent by the client.
  • the sending module 83 is further configured to send, to the client, an MPD fragment index file corresponding to the MPD fragment index file acquisition request, where the index information of an MPD fragment in the MPD fragment index file includes The initial play time point of the media slice described by the MPD slice, the media duration, and the MPD slice address of the MPD slice.
  • the apparatus shown in FIG. 8 may further include: an MPD fragmentation module.
  • the MPD fragmentation module is configured to slice an MPD file according to a preset media duration to obtain at least one MPD fragment.
  • the MPD fragmentation module is further configured to: establish an index information for each MPD fragment, and save the index information in an MPD fragment index file, where the index information of an MPD fragment in the MPD fragment index file includes the MPD score
  • the slice shows the starting play time point of the media slice, the media duration, and the MPD slice address of the MPD slice.
  • FIG. 11 is a schematic structural diagram of a media file transmission system according to an embodiment of the present invention.
  • the system shown in Figure 11 includes: a client 111 and a server 112.
  • the client 111 is configured to obtain an MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the first The playing time of the media segment corresponding to the MPD fragment includes the initial playing time point; the client 111 is further configured to send, to the server, an MPD fragment address including the first MPD fragment.
  • the client 111 is further configured to receive the first MPD fragment that is fed back by the server, and send the media fragmentation to the server according to the media description information in the first MPD fragment.
  • the server 112 is further configured to: according to the media fragmentation acquisition request, obtain and feed back to the client, the media fragment of the first MPD fragment description; the client 111 is further configured to receive the The media slice described by the first MPD fragment fed back by the server.
  • the client 111 is further configured to send an MPD fragment index file acquisition request to the server; the server displays the media feedback fed back to the client according to the MPD fragment index file acquisition request.
  • the MPD fragment index file. 6, 8 and 11 correspond to the technical solution provided by the embodiment, before the client obtains the media fragment of the starting play time point from the server, the client searches for the MPD fragment index file according to the starting play time point of the user request.
  • the play time includes the address of the MPD slice corresponding to the media slice at the start play time point, and requests the corresponding MPD slice from the server according to the found address. Therefore, the client obtains not the complete MPD file from the server, but the playback time includes the MPD fragment corresponding to the media segment of the starting playback time point. Since the MPD fragment is small, the time for the client to acquire the MPD fragment is shorter, and the time for parsing the MPD fragment is also shorter. After obtaining the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment according to the media description information of the MPD fragment. Therefore, the delay of starting the playback of the media file by the client is shortened, and the fast startup is achieved. The purpose of playing media files. FIG.
  • the apparatus provided in this embodiment includes: a searching module 71, a sending module 72, and a receiving module 73.
  • the searching module 71 is configured to search for a first MPD fragment in the media presentation description MPD fragment index file according to the initial playback time point requested by the user, where the media segment corresponding to the first MPD fragment plays The time includes the initial play time point; the media presentation describes the MPD slice index file
  • the piece includes at least one MPD slice and includes a slice address of at least one MPD slice.
  • the sending module 72 is configured to: if the lookup module displays the MPD score in the media presentation.
  • the first MPD fragment is found in the slice index file, and the media fragmentation request is sent to the server according to the media description information in the first MPD fragment.
  • the receiving module 73 is configured to receive a media slice that is described by the server according to the first MPD fragment that is fed back according to the media fragmentation request.
  • each module is as follows:
  • the searching module is further configured to: if the searching module does not find the first MPD fragment in the media presentation description MPD fragment index file, according to a starting time point of the user request, in the media presentation description
  • the MPD fragment index file searches for the MPD fragment address of the first MPD fragment.
  • the sending module is further configured to send, to the server, a first MPD fragment obtaining request including an MPD fragment address of the first MPD fragment, so that the server is configured according to the MPD of the first MPD fragment The address is obtained in the pre-stored MPD fragment file to obtain the first MPD fragment;
  • the receiving module is further configured to receive the first MPD fragment fed back by the server.
  • the sending module is further configured to send a media fragment obtaining request to the server according to the media description information in the first MPD fragment, so that the server obtains and feeds back according to the media fragment obtaining request.
  • the receiving module is further configured to receive a media slice of the first MPD fragment description fed back by the server.
  • the foregoing media device further obtains an MPD fragment index file from the server, as follows: the sending module is further configured to: before acquiring the MPD fragment address of the first MPD fragment from the media presentation description MPD fragment index file, The server sends an MPD fragment index file acquisition request;
  • the receiving module is further configured to receive the MPD fragment index file that is fed back by the server; the receiving module is further configured to acquire user request information, where the user request information includes a starting play point requested by a user.
  • the client obtains the starting play time point from the server. Before the media sharding, the client searches for the MPD shard corresponding to the media shard of the playback time in the MPD shard index file according to the initial playback time point of the user request, according to the found MPD shard. Obtain the media fragment of the MPD fragment description from the server. Therefore, before the media fragment is obtained, the client obtains not the complete MPD file from the server, but the playback time includes the MPD fragment corresponding to the media fragment of the starting playback time point. Since the MPD fragment is small, the time for the client to acquire the MPD fragment is shorter, and the time for parsing the MPD fragment is also shorter.
  • the client After obtaining the MPD fragment, the client can immediately obtain the media fragment described by the MPD fragment according to the media description information of the MPD fragment. Therefore, the delay of starting the playback of the media file by the client is shortened, and the fast startup is achieved. The purpose of playing media files.
  • the main difference between the device embodiment corresponding to FIG. 9, 10 and FIG. 12 and the device embodiment corresponding to FIG. 6, FIG. 7, FIG. 8 and FIG. 11 is that the media file receiving device does not need to obtain the MPD fragment index file from the media file sending device. Instead, the MPD slice corresponding to the start playback time point and the media duration is requested directly from the media file sending device.
  • FIG. 9 is a schematic structural diagram of a media file sending apparatus according to an embodiment of the present invention.
  • the apparatus provided in this embodiment includes: a receiving module 91, an MPD fragment determining module 92, and a transmitting module 93.
  • the receiving module 91 is configured to receive a media presentation description MPD fragment acquisition request sent by the client, where the MPD fragment acquisition request includes a starting playback time point and a media duration;
  • the MPD fragment determining module 92 is configured to determine an MPD fragment corresponding to the initial playing time point and the media duration according to the initial playing time point and the media duration;
  • a sending module 93 configured to feed back the MPD fragment to the client
  • the receiving module 91 is further configured to receive a media fragment obtaining request sent by the client, where the media fragment requested by the media fragment obtaining request is described by the MPD fragment;
  • the sending module 93 is further configured to feed back, to the client, the media fragment described by the MPD fragment.
  • the MPD fragment determining module 92 is configured to parse the MPD file according to the initial playing time point and the media duration, and locate or assemble the initial playing time in the MPD file. The point and the MPD slice corresponding to the media duration.
  • the MPD fragment determining module 92 is configured to: in the pre-stored MPD fragment file, search for a play time, including the start play time point, according to the initial play time point and the MPD fragment index file. The first MPD slice corresponding to the media slice.
  • the server searches for N pieces of MPDs backwards from the first MPD fragment in the MPD fragment file, and Feeding the N pieces of the MPD fragments to the client, until the total media duration of the media fragments described by the first MPD fragment and the N pieces of the MPD fragments is greater than or equal to the client request Media duration, N is a natural number.
  • FIG. 10 is a schematic structural diagram of still another media file receiving apparatus according to an embodiment of the present invention. As shown in FIG. 10, the apparatus provided in this embodiment includes: a sending module 100 and a receiving module 101.
  • the sending module 100 is configured to send, to the server, a media presentation description MPD fragment acquisition request including a starting playback time point and a media duration, so that the server determines the location according to the initial playback time point and the media duration An MPD slice corresponding to the start playing time point and the media duration;
  • the receiving module 101 is configured to receive an MPD fragment that is fed back by the server and corresponds to the initial playing time point and the media duration;
  • the sending module 100 is configured to send a media fragment obtaining request to the server according to the MPD fragment fed back by the server, so that the server searches for a media fragment of the MPD fragment description;
  • the receiving module 101 is further configured to receive a media slice of the MPD fragment description fed back by the server.
  • the receiving module 101 is configured to receive, by the server, a playback time that is a first MPD fragment corresponding to the media segment of the initial playback time point. Further, the receiving module 101 is further configured to: if the media duration of the first MPD fragment is less than the media duration, receive the N pieces of the MPD fragments fed back by the server, until the first MPD segment The total media duration of the media slice described by the slice and the N pieces of the MPD slice is greater than or equal to the media duration requested by the client, and N is a natural number.
  • the receiving module 101 is further configured to: after the client receives the media fragment of the MPD fragment description fed back by the server, if the media segment described by the server feeds back the MPD fragment The play time of the slice includes the next play time point, and the MPD slice according to the feedback of the server The media description information is obtained, and the media fragment corresponding to the next playback time point is obtained from the server.
  • FIG. 12 is a schematic structural diagram of another media file transmission system according to an embodiment of the present invention. As shown in FIG. 12, the system provided in this embodiment includes: a client 121 and a server 122. The client 121 is configured to send a media presentation description MPD fragment acquisition request to the server, where the MPD fragment acquisition request includes an initial playback time point and a media duration;
  • the server 122 is configured to receive a media presentation description MPD fragment acquisition request sent by the client;
  • the server 122 is further configured to determine, according to the initial playing time point and the media duration, an MPD fragment corresponding to the initial playing time point and the media duration, and feed back to the client.
  • the client 121 is further configured to receive the MPD fragment, and the client sends a media fragment acquisition request to the server according to the media fragment described by the MPD fragment;
  • the server 122 is further configured to receive a media fragment acquisition request sent by the client, where the server 122 is further configured to feed back, by the client, the MPD fragment description according to the media fragment acquisition request.
  • the media segmentation is further configured to receive a media fragment acquisition request sent by the client, where the server 122 is further configured to feed back, by the client, the MPD fragment description according to the media fragment acquisition request. The media segmentation.
  • the server 122 is configured to parse an MPD file according to the starting play time point and the media duration, and locate or assemble the MPD file with the start play time point and The MPD segment corresponding to the media duration.
  • the server 122 is specifically configured to: in the pre-stored MPD fragment file, search for a media score including the start playback time point according to the initial playback time point and the MPD fragment index file. a first MPD slice corresponding to the slice; feeding the first MPD slice to the client.
  • the client sends an MPD fragment acquisition request including a starting playback time point and a media duration to the server when requesting to play the media, and the server feeds back to the client.
  • the MPD slice corresponding to the start playback time point and the media duration.
  • the client obtains not the complete MPD file from the server, but the MPD fragment. Because the MPD fragment is small, the time for the client to acquire the MPD fragment is shorter, and the time for parsing the MPD fragment is shorter.
  • the client After obtaining the MPD fragment, the client can obtain the media fragment described by the MPD fragment from the server according to the media description information of the MPD fragment, thereby shortening the delay for the client to start playing the media file, and achieving the fast Start the purpose of playing a media file.
  • the aforementioned program can be stored in a computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Abstract

本发明实施例提供一种媒体文件接收、媒体文件发送方法和装置及系统。一种媒体文件接收的方法包括:客户端根据用户请求的起始播放时间点,从媒体展示描述MPD分片索引文件中获取第一MPD分片的MPD分片地址;所述客户端向服务器发送包括所述第一MPD分片的MPD分片地址的第一MPD分片获取请求;所述客户端接收所述服务器反馈的所述第一MPD分片,并根据所述第一MPD分片中的媒体描述信息,向所述服务器发送媒体分片获取请求;所述客户端接收所述服务器反馈的所述第一MPD分片描述的媒体分片。根据本发明实施例的媒体接收方法可以实现快速启动播放媒体文件的目的。

Description

媒体文件接收、 媒体文件发送方法和装置及系统
本申请要求于 2013年 4月 24日提交中国专利局、申请号为 201310144851.9, 发明名称为 "媒体文件接收、 媒体文件发送方法和装置及系统" 的中国专利申 请优先权, 上述专利的全部内容通过引用结合在本申请中。 技术领域
本发明涉及一种通信技术, 尤其涉及一种媒体文件接收、 媒体文件发送方 法和装置及系统。
背景技术 基于 htt 的自适应流媒体 ( Dynamic adaptive streaming over HTTP, 简称 DASH )方案是国际标准组织 3gpp和 MPEG正在推行的新一代媒体传输解决方 案。 与现有基于 http的媒体传输方案 (例如优酷等)相比, 其最大的区别在于 客户端 (播放器端) 能够根据网络情况、 客户端自身情况等自动调节, 获取合 适的媒体流进行播放。 当网络情况好的时候, 客户端可以请求质量好的媒体流 播放, 而当网络变差时, 客户端可以请求质量稍差、 码率较小的码流播放, 这 样可以保证客户端播放连续, 提高用户体验。
DHSH 系统中位于服务器端的内容准备模块, 负责准备媒体内容、 切片和 产生媒体展现描述 ( Media Presentation Description, 简称 MPD )文件。 例如准 备 a.mp4节目时, 为了自适应的需要分别生成 2Mbps、 1Mbps、 500kbps的码流, 对应的媒体文件为 a— 2000.mp4、 a— 1000.mp4和 a— 500.mp4。 为了方便客户端随 时切换码流, 还需要将这些文件切割成小的分片文件(segment ), 例如按时间 5 秒钟一个片段)。 这些不同码率的文件切割生成的媒体分片通过 MPD文件来描 述。 MPD文件产生后传送给服务器端的 MPD分发模块处理, 媒体分片文件传 送给服务器端的媒体片段分发模块即 Http Server来处理。 DASH客户端播放码 流的步骤通常为: DHSH客户端向 MPD分发模块请求 MPD文件, 获取 MPD 文件后, 对 MPD文件进行解析, 根据 MPD文件中的媒体描述信息向媒体片段 分发模块获取合适的媒体片段 (segment)进行播放。
上述技术方案中, DHSH客户端在播放媒体文件时需先向服务器端请求 MPD文件, 然而, 在某些情况下, 例如, 片源时间很长, 切割的媒体片段很多 等情况, MPD文件将会很大, 导致客户端下载 MPD文件的时间很长。 而且在 MPD文件 ^艮大时客户端解析 MPD文件也需要一定的时间, 导致客户端启动播 放时间很长。 尤其是, 这种方案应用于手持设备时, 由于网络带宽、 手持设备 硬件能力的限制, MPD文件下载、解析将花费相当的时间,严重影响用户体验。 发明内容 本发明提供一种媒体文件接收、 媒体文件发送方法和装置及系统, 用于缩 短 MPD文件的获取时间和解析时间, 达到快速启动播放媒体文件的目的。
为实现上述目的, 本发明第一方面的实施例提供了一种媒体文件接收方法, 所述方法包括:
客户端根据用户请求的起始播放时间点,从媒体展示描述 MPD分片索引文 件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分片所对应 的媒体分片的播放时间包括所述起始播放时间点;
所述客户端向服务器发送包括所述第一 MPD分片的 MPD分片地址的第一 MPD分片获取请求,以使所述服务器根据所述第一 MPD分片的 MPD分片地址 在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述客户端接收所述服务器反馈的所述第一 MPD 分片, 并根据所述第一 MPD分片中的媒体描述信息, 向所述服务器发送媒体分片获取请求, 以使所述 服务器根据所述媒体分片获取请求获取并反馈所述第一 MPD分片描述的媒体分 片;
所述客户端接收所述服务器反馈的所述第一 MPD分片描述的媒体分片。 根据本发明第一方面实施例的媒体文件接收方法,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第一方面实施例的本发明第一方面第一种可能实现的方式中, 在所述客户端根据用户请求的起始播放时间点,从媒体展示描述 MPD分片索引 文件中获取第一 MPD分片的 MPD分片地址之前, 所述方法还包括:
所述客户端向所述服务器发送 MPD分片索引文件获取请求,并接收所述服 务器根据所述 MPD分片索引文件获取请求反馈的所述 MPD分片索引文件。 结合上述任意之一实施例的本发明第一方面第二种可能实现的方式中, 在 所述客户端接收所述服务器反馈的所述第一 MPD分片之后, 所述方法还包括: 如果所述客户端接收的用户请求的下一个播放时间点在所述第一 MPD分片 描述的媒体分片的播放时间内,则所述客户端根据所述第一 MPD分片中的媒体 描述信息 , 从所述服务器获取所述下一个播放时间点对应的媒体分片。
本发明第二方面的实施例提供了一种媒体文件接收方法, 所述方法包括: 客户端根据用户请求的起始播放时间点,在媒体展示描述 MPD分片索引文 件中查找第一 MPD分片, 其中, 所述第一 MPD分片所对应的媒体分片的播放 时间包括所述起始播放时间点; 所述媒体展示描述 MPD分片索引文件包括至少 一个 MPD分片且包括至少一个 MPD分片的分片地址;
如果所述客户端在所述媒体展示描述 MPD分片索引文件中查找到了所述第 一 MPD分片, 贝' J
所述客户端根据所述第一 MPD分片中媒体描述信息,向所述服务器发送媒 体分片请求,并接收所述服务器根据所述媒体分片请求反馈的所述第一 MPD分 片描述的媒体分片。 根据本发明第二方面实施例的媒体文件接收方法,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第二方面实施例的本发明第二方面第一种可能实现的方式中, 所述方法还包括:
如果所述客户端在所述 MPD分片索引文件中查找不到所述第一 MPD分片, 则客户端根据用户请求的起始播放时间点,在媒体展示描述 MPD分片索引文件 中查找所述第一 MPD分片的 MPD分片地址;
所述客户端向所述服务器发送包括所述第一 MPD分片的 MPD分片地址的 第一 MPD分片获取请求, 以使所述服务器根据所述第一 MPD分片的 MPD地 址在预存储的 MPD分片文件中得到所述第一 MPD分片; 所述客户端接收所述服务器反馈的所述第一 MPD 分片, 并根据所述第一 MPD分片中的媒体描述信息, 向所述服务器发送媒体分片获取请求, 以使所述 服务器根据所述媒体分片获取请求获取并反馈所述第一 MPD分片描述的媒体分 片;
所述客户端接收所述服务器反馈的所述第一 MPD分片描述的媒体分片。 本发明第三方面实施例提供了一种媒体文件发送方法, 所述方法包括: 服务器接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD分片获 取请求, 在预存储的 MPD分片文件中查找与所述 MPD分片地址对应的 MPD 分片, 向所述客户端反馈查找到的所述 MPD分片;
所述服务器接收所述客户端发送的媒体分片请求, 并向所述客户端反馈与 所述媒体分片请求对应的媒体分片。
根据本发明第三方面实施例的媒体文件发送方法,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第三方面实施例的本发明第三方面第一种可能实现的方式中, 在所述服务器接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD 分片获取请求之前, 所述方法还包括:
所述服务器接收所述客户端发送的 MPD分片索引文件获取请求,并向所述 客户端发送与所述 MPD分片索引文件获取请求对应的 MPD分片索引文件, 所 述 MPD分片索引文件中一个 MPD分片的索引信息包括所述 MPD分片描述的 媒体分片的起始播放时间点、 媒体时长和所述 MPD分片的 MPD分片地址。 结合上述任意之一实施例的本发明第三方面第二种可能实现的方式中, 在 所述服务器接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD分片获 取请求之前, 所述方法还包括:
所述服务器按照预设的媒体时长对 MPD 文件进行分片, 得到至少一个的 MPD分片;
所述服务器为每个 MPD分片建立索引信息, 并保存在 MPD分片索引文件 中, 所述 MPD分片索引文件中一个 MPD分片的索引信息包括所述 MPD分片 描述的媒体分片的起始播放时间点、 媒体时长和所述 MPD分片的 MPD分片地 址。
本发明第四方面实施例提供了一种媒体文件发送方法, 所述方法包括: 服务器接收客户端发送的媒体展示描述 MPD分片获取请求,其中所述 MPD 分片获取请求包括起始播放时间点和媒体时长;
所述服务器根据所述起始播放时间点和所述媒体时长, 确定与所述起始播 放时间点和所述媒体时长对应的 MPD分片, 并向所述客户端反馈所述 MPD分 片;
所述服务器接收所述客户端发送的媒体分片获取请求, 其中, 所述媒体分 片获取请求所请求的媒体分片为所述 MPD分片所描述的; 所述服务器根据所述媒体分片获取请求,向所述客户端反馈所述 MPD分片 描述的所述媒体分片。 根据本发明第四方面实施例的媒体文件发送方法,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第四方面实施例的本发明第四方面第一种可能实现的方式中, 所述服务器根据所述起始播放时间点和所述媒体时长, 确定与所述起始播 放时间点以及所述媒体时长对应的 MPD分片, 包括:
所述服务器根据所述起始播放时间点和所述媒体时长,对源 MPD文件进行 解析,在所述源 MPD文件中定位或组装与所述起始播放时间点以及所述媒体时 长对应的 MPD分片。 结合本发明第四方面实施例的本发明第四方面第二种可能实现的方式中, 所述服务器根据所述起始播放时间点和所述媒体时长, 确定与所述起始播放时 间点以及所述媒体时长对应的 MPD分片,并向所述客户端反馈所述 MPD分片, 包括:
所述服务器根据所述起始播放时间点和 MPD 分片索引文件, 在预存储的 MPD分片文件中查找播放时间包括所述起始播放时间点的媒体分片对应的第一 MPD分片;
所述服务器向所述客户端反馈所述第一 MPD分片。 结合本发明第四方面第二种可能实现方式的本发明第四方面第三种可能实 现的方式中, 所述服务器根据所述起始播放时间点和所述媒体时长, 确定与所 述起始播放时间点以及所述媒体时长对应的 MPD分片,并向所述客户端反馈所 述 MPD分片, 还包括:
如果所述第一 MPD分片描述的媒体时长小于所述媒体时长,所述服务器在 所述 MPD分片文件中从所述第一 MPD分片开始向后查找 N个 MPD分片, 并 向所述客户端反馈所述 N个所述 MPD分片, 直至所述第一 MPD分片和所述 N 个所述 MPD分片描述的媒体分片的总媒体时长大于等于所述客户端请求的媒体 时长, N为自然数。
本发明第五方面实施例提供了一种媒体文件接收方法, 所述方法包括: 客户端向服务器发送包括起始播放时间点和媒体时长的媒体展示描述 MPD 分片获取请求, 以使所述服务器根据所述起始播放时间点和所述媒体时长, 确 定与所述起始播放时间点和所述媒体时长对应的 MPD分片;
所述客户端接收所述服务器反馈的与所述起始播放时间点以及所述媒体时 长对应的 MPD分片;
所述客户端根据所述服务器反馈的所述 MPD分片,向所述服务器发送媒体 分片获取请求, 以使所述服务器查找所述 MPD分片描述的所述媒体分片; 所述客户端接收所述服务器反馈的 MPD分片对应的媒体分片。 结合本发明第五方面实施例的本发明第五方面第一种可能实现的方式中, 所述客户端接收所述服务器反馈的与所述起始播放时间点以及所述媒体时 长对应的 MPD分片包括:
所述客户端接收所述服务器反馈的播放时间包括所述起始播放时间点的媒 体分片对应的第一 MPD分片。
结合上述任意之一实施例的本发明第五方面第二种可能实现的方式中, 所 述客户端接收所述服务器反馈的与所述起始播放时间点以及所述媒体时长对应 的 MPD分片还包括:
如果所述第一 MPD分片描述的媒体时长小于所述媒体时长,所述客户端接 收所述服务器反馈的 N个所述 MPD分片,直至所述第一 MPD分片和所述 N个 所述 MPD分片描述的媒体分片的总媒体时长大于等于所述客户端请求的媒体时 长, N为自然数
结合上述任意之一实施例的本发明第五方面第三种可能实现的方式中, 所 述方法还包括:
如果所述服务器反馈的 MPD分片所描述的媒体分片的播放时间包括下一个 播放时间点, 所述客户端根据所述服务器反馈的 MPD分片中的媒体描述信息, 从所述服务器获取所述下一个播放时间点对应的媒体分片。
本发明第六方面的实施例提供了一种媒体文件接收装置, 所述装置包括: 查找模块, 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD分 片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分 片所对应的媒体分片的播放时间包括所述起始播放时间点;
发送模块, 用于向所述服务器发送包括所述第一 MPD分片的 MPD分片地 址的第一 MPD分片获取请求,以使所述服务器根据所述第一 MPD分片的 MPD 分片地址在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述发送模块还用于根据所述第一 MPD分片中的媒体描述信息,向所述服 务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获取 并反馈所述第一 MPD分片描述的媒体分片;
接收模块, 用于接收所述服务器反馈的所述第一 MPD分片;
所述接收模块还用于接收所述服务器反馈的所述第一 MPD分片描述的媒体 分片。
根据本发明第六方面实施例的媒体文件接收装置,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。 结合本发明第六方面实施例的本发明第六方面第一种可能实现的方式中, 所述发送模块还用于向所述服务器发送 MPD分片索引文件获取请求,所述接收 模块还用于接收所述服务器根据所述 MPD 分片索引文件获取请求反馈的所述 MPD分片索引文件。
本发明第七方面的实施例提供了一种媒体文件接收装置, 所述装置包括: 查找模块, 用于根据用户请求的起始播放时间点, 在媒体展示描述 MPD分 片索引文件中查找第一 MPD分片, 其中, 所述第一 MPD分片所对应的媒体分 片的播放时间包括所述起始播放时间点; 所述媒体展示描述 MPD分片索引文件 包括至少一个 MPD分片且包括至少一个 MPD分片的分片地址;
发送模块,用于如果所述查找模块在所述媒体展示描述 MPD分片索引文件 中查找到了所述第一 MPD分片 , 根据所述第一个 MPD分片中媒体描述信息, 向所述服务器发送媒体分片请求,
接收模块, 用于接收所述服务器根据所述媒体分片请求反馈的所述第一个 MPD分片描述的媒体分片。
根据本发明第七方面实施例的媒体文件接收装置,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第七方面实施例的本发明第七方面第一种可能实现的方式中, 所述查找模块,还用于如果所述查找模块在所述媒体展示描述 MPD分片索引文 件中查找不到所述第一 MPD分片, 根据用户请求的起始播放时间点, 在媒体展 示描述 MPD分片索引文件中查找所述第一 MPD分片的 MPD分片地址;
所述发送模块, 还用于向所述服务器发送包括所述第一 MPD分片的 MPD 分片地址的第一 MPD分片获取请求, 以使所述服务器根据所述第一 MPD分片 的 MPD地址在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述接收模块, 还用于接收所述服务器反馈的所述第一 MPD分片; 所述发送模块, 还用于根据所述第一 MPD分片中的媒体描述信息, 向所述 服务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获 取并反馈所述第一 MPD分片描述的媒体分片;
所述接收模块,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒 体分片。
本发明第八方面实施例提供了一种媒体文件发送装置, 所述装置包括: 接收模块,用于接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD 分片获取请求;
查找模块, 用于根据所述接收模块接收的 MPD 分片获取请求在预存储的 MPD分片文件中查找与所述 MPD分片地址对应的 MPD分片;
发送模块, 用于向所述客户端反馈所述查找模块查找到的所述 MPD分片; 所述接收模块还用于接收所述客户端发送的媒体分片请求, 所述发送模块 还用于向所述客户端反馈与所述媒体分片请求对应的媒体分片。
根据本发明第八方面实施例的媒体文件发送装置,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第八方面实施例的本发明第八方面第一种可能实现的方式中, 所述接收模块还用于接收所述客户端发送的 MPD分片索引文件获取请求,所述 发送模块还用于向所述客户端发送与所述 MPD 分片索引文件获取请求对应的 MPD分片索引文件,所述 MPD分片索引文件中一个 MPD分片的索引信息包括 所述 MPD分片描述的媒体分片的起始播放时间点、 媒体时长和所述 MPD分片 的 MPD分片地址。
结合上述任意之一实施例的本发明第八方面第二种可能实现的方式中, 所 述装置还包括:
MPD分片模块,所述 MPD分片模块用于按照预设的媒体时长对 MPD文件 进行分片, 得到至少一个 MPD分片; 还用于为每个 MPD分片建立索引信息, 并保存在 MPD分片索引文件中, 所述 MPD分片索引文件中一个 MPD分片的 索引信息包括所述 MPD分片描述的媒体分片的起始播放时间点、媒体时长和所 述 MPD分片的 MPD分片地址。 本发明第九方面实施例提供了一种媒体文件发送装置, 其特征在于, 所述 装置包括:
接收模块, 用于接收客户端发送的媒体展示描述 MPD分片获取请求, 其中 所述 MPD分片获取请求包括起始播放时间点和媒体时长;
MPD分片确定模块, 用于根据所述起始播放时间点和所述媒体时长, 确定 与所述起始播放时间点和所述媒体时长对应的 MPD分片;
发送模块, 用于向所述客户端反馈所述 MPD分片;
所述接收模块, 还用于接收所述客户端发送的媒体分片获取请求, 其中, 所述媒体分片获取请求所请求的媒体分片为所述 MPD分片所描述的;
所述发送模块,还用于向所述客户端反馈所述 MPD分片描述的所述媒体分 片。
结合本发明第九方面实施例的本发明第九方面第一种可能实现的方式中, 所述 MPD分片确定模块具体用于:
根据所述起始播放时间点和所述媒体时长, 对源 MPD文件进行解析, 在所 述源 MPD 文件中定位或组装与所述起始播放时间点以及所述媒体时长对应的 MPD分片。 结合本发明第九方面实施例的本发明第九方面第二种可能实现的方式中, 所述 MPD分片确定模块具体用于:
根据所述起始播放时间点和 MPD分片索引文件, 在预存储的 MPD分片文 件中查找播放时间包括所述起始播放时间点的媒体分片对应的第一 MPD分片。 本发明第十方面实施例提供了一种媒体文件传输系统, 所述系统包括: 客户端, 服务器;
所述客户端, 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD 分片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD 分片所对应的媒体分片的播放时间包括所述起始播放时间点;
所述客户端, 还用于向所述服务器发送包括所述第一 MPD分片的 MPD分 片地址的第一 MPD分片获取请求; 所述服务器, 用于根据所述第一 MPD 分片的 MPD 分片地址在预存储的 MPD分片文件中得到所述第一 MPD分片, 并向所述客户端反馈;
所述客户端, 还用于接收所述服务器反馈的所述第一 MPD分片, 并根据所 述第一 MPD分片中的媒体描述信息 , 向所述服务器发送媒体分片获取请求; 所述服务器, 还用于根据所述媒体分片获取请求获取并向所述客户端反馈 所述第一 MPD分片描述的媒体分片;
所述客户端,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒体 分片。
根据本发明第十方面实施例的媒体文件传输系统,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第十方面实施例的本发明第十方面第一种可能实现的方式中, 所述客户端还用于向所述服务器发送 MPD分片索引文件获取请求; 所述服 务器根据所述 MPD分片索引文件获取请求向所述客户端反馈的所述 MPD分片 索引文件。
本发明第十一方面实施例提供了一种媒体文件传输系统, 所述系统包括: 客户端, 服务器;
所述客户端, 用于向所述服务器发送媒体展示描述 MPD分片获取请求, 其 中所述 MPD分片获取请求包括起始播放时间点和媒体时长;
所述服务器,用于接收所述客户端发送的媒体展示描述 MPD分片获取请求; 所述服务器, 还用于根据所述起始播放时间点和所述媒体时长, 确定与所 述起始播放时间点和所述媒体时长对应的 MPD分片,并向所述客户端反馈所述 MPD分片;
所述客户端, 还用于接收所述 MPD分片, 所述客户端根据所述 MPD分片 所描述的媒体分片向所述服务器发送媒体分片获取请求;
所述服务器, 还用于接收所述客户端发送的媒体分片获取请求; 所述服务器, 还用于根据所述媒体分片获取请求, 向所述客户端反馈所述
MPD分片描述的所述媒体分片。
根据本发明第十方面实施例的媒体文件传输系统,客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
结合本发明第十一方面实施例的本发明第十一方面第一种可能实现的方式 中,所述服务器,具体用于根据所述起始播放时间点和所述媒体时长,对源 MPD 文件进行解析,在所述源 MPD文件中定位或组装与所述起始播放时间点以及所 述媒体时长对应的 MPD分片。 结合本发明第十一方面实施例的本发明第十一方面第二种可能实现的方式 中, 所述服务器, 具体用于根据所述起始播放时间点和 MPD分片索引文件, 在 预存储的 MPD分片文件中查找播放时间包括所述起始播放时间点的媒体分片对 应的第一 MPD分片; 向所述客户端反馈所述第一 MPD分片。
附图说明 图 1为本发明实施例提供的一种媒体文件接收方法流程图;
图 2为本发明实施例提供的另一种媒体文件接收方法流程图;
图 3A为本发明实施例提供的一种媒体文件发送方法流程图;
图 3B为本发明实施例提供的一种服务器对 MPD文件进行分片的示意图; 图 4A为本发明实施例提供的另一种媒体文件发送方法流程图;
图 4B为图 4A的一种实现方法示意图;
图 4C为图 4A的另一种实现方法示意图;
图 5为本发明实施例提供的又一种媒体文件接收方法流程图;
图 6为本发明实施例提供的一种媒体文件接收装置结构示意图;
图 7为本发明实施例提供的另一种媒体文件接收装置结构示意图; 图 8为本发明实施例提供的一种媒体文件发送装置结构示意图; 图 9为本发明实施例提供的另一种媒体文件发送装置结构示意图; 图 10为本发明实施例提供的又一种媒体文件接收装置结构示意图; 图 11为本发明实施例提供的一种媒体文件传输系统结构示意图;
图 12为本发明实施例提供的另一种媒体文件传输系统结构示意图。
具体实施方式 图 1、 图 2和图 3A对应方法实施例中, 服务器预先对 MPD文件进行了分 片处理, 生成了包括至少一个 MPD分片的 MPD分片文件, 并为 MPD分片文 件建立了包括 MPD分片地址的 MPD分片索引文件。 客户端从服务器获取媒体 分片之前, 先向服务器发送 MPD 分片索引文件获取请求, 获取服务器生成的
图 1为本发明实施例提供的一种媒体文件接收方法流程图。 如图 1所示, 本实施例提供的方法包括:
步骤 11 :客户端根据用户请求的起始播放时间点,从媒体展示描述 MPD分 片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分 片所对应的媒体分片的播放时间包括所述起始播放时间点。
服务器按照对 MPD文件所描述媒体文件的播放时间, 对 MPD文件进行分 片处理, 生成了由多个 MPD分片组成的 MPD分片文件。 一个 MPD分片描述 一个或多个媒体分片, 包括描述媒体分片的媒体描述信息。 MPD分片文件中, 一个 MPD分片描述的媒体分片对应一段媒体时间的媒体数据。 生成 MPD分片 文件后,服务器为 MPD分片建立索引信息并保存在 MPD分片索引文件中, MPD 分片索引文件中包括至少一个 MPD分片的分片地址。 MPD分片索引文件中一 个 MPD分片的索引信息可以包括所述 MPD分片所描述的媒体分片的起始播放 时间点、 媒体时长和所述 MPD分片的地址。 MPD分片索引文件可以采用 XML 语言描述。
如果客户端接收到包括起始播放时间点的用户请求后, 启动播放媒体。 在 初始阶段, 也就是说客户端没有保存 MPD 分片索引文件时, 先向服务器发送 MPD分片索引文件获取请求, 获取服务器生成的 MPD分片索引文件。 客户端 也可以在初次接收到包括超始插放时间点的用户请求后,向服务器发送 MPD分 片索引文件获取请求, 获取服务器生成的 MPD分片索引文件。
客户端接收到用户发送的携带有起始播放时间点的用户播放请求后, 解析 MPD分片索引文件, 在 MPD分片索引文件中查找播放时间包括所述起始播放 时间点的媒体分片对应 MPD分片的 MPD分片地址。 例如, 用户拖动客户端上 的播放进度条, 停止拖动的位置对应的时间点为用户的起始播放时间点, 用户 启动客户端上的播放按钮后, 客户端确定用户请求的请求播放时点, 开始解析 MPD分片索引文件, 在 MPD分片索引文件中查找第一 MPD分片, 第一 MPD 分片为播放时间包括所述起始播放时间点的媒体分片所对应的 MPD分片。具体 地, 客户端通过 MPD分片索引信息中媒体分片的起始播放时间点和媒体时长, 确定该 MPD 分片所描述的媒体分片的播放时间, 如果起始播放时间点在一个 MPD分片所描述媒体分片的播放时间内, 也就是查找到一个 MPD分片所描述 的媒体分片的播放时间包括起始播放时间点, 则确定请求播放的媒体分片包括 在该 MPD分片所描述的媒体分片内。
步骤 12: 客户端向服务器发送包括第一 MPD分片的 MPD分片地址的第一
MPD分片获取请求,以使服务器根据所述第一 MPD分片的 MPD分片地址在预 存储的 MPD分片文件中得到第一 MPD分片。
步骤 13: 客户端接收服务器反馈的第一 MPD分片, 并根据第一 MPD分片 中的媒体描述信息, 向服务器发送媒体分片获取请求, 以使服务器根据媒体分 片获取请求获取并反馈所述第一 MPD分片描述的媒体分片。
步骤 14: 客户端接收服务器反馈的第一 MPD分片描述的媒体分片。
客户端在 MPD 分片索引文件中查找到 MPD 分片地址后, 根据查找到的 MPD分片地址,从服务器获取相应的 MPD分片。之后,根据服务器反馈的 MPD 分片的媒体描述信息, 从服务器获取该 MPD分片描述的媒体分片。
可选地, MPD分片索引文件中还包括 MPD文件的地址。 在带宽及客户端 能力许可的情况下可以直接从服务器获取 MPD文件。 也可以先获取几次 MPD 分片, 在情况允许时再获取 MPD文件。
可选地, 为进一步缩短客户端启动播放媒体文件的时延, MPD分片索引文 件中包括 MPD分片文件的第一个 MPD分片。 如果用户请求的起始播放时间点 在第一个 MPD分片所描述的媒体分片的播放时间内, 客户端根据第一个 MPD 分片中媒体描述信息, 向服务器发送媒体分片获取请求, 并接收服务器反馈的 第一个 MPD分片描述的媒体分片。 因此, 从而客户端在从媒体开始处开始播放 媒体文件时, 不需要从服务器请求第一个 MPD分片, 可以根据第一个 MPD分 片中的媒体描述信息, 直接从服务器获取第一个 MPD分片描述的媒体分片。 其 中, MPD分片文件的第一个 MPD分片是,根据媒体时长对 MPD文件进行分片 时得到的第一个 MPD分片,第一个 MPD分片也是包括最早播放时间点的 MPD 分片。
进一步, 在播放过程中, 用户请求播放下一个播放时间点的媒体分片时, 例如, 在播放过程中, 用户拖动客户端上的播放进度条, 对于上次起始播放时 间点来说停止拖动的位置为下一个起始播放时间点, 此时客户端判断服务器已 反馈的第一 MPD分片所描述的媒体分片的播放时间是否包括所述下一个起始播 放时间点。 如果所述客户端接收的用户请求的下一个播放时间点在所述第一 MPD分片描述的媒体分片的播放时间内, 所述客户端不需要再次从服务器获取 重复的 MPD分片, 而是根据所述第一 MPD分片中的媒体描述信息, 从所述服 务器获取所述下一个播放时间点对应的媒体分片; 否则, 客户端根据步骤 11至 步骤 13提供的方法, 从服务器获取 MPD分片和所描述的媒体分片。
本实施例提供的技术方案中, 客户端从服务器获取起始播放时间点的媒体 分片之前,客户端根据用户请求的起始播放时间点在 MPD分片索引文件中查找 播放时间包括起始播放时间点的媒体分片对应的 MPD分片的地址,根据查找到 的地址向服务器请求对应的 MPD分片。 因此, 客户端从服务器获取的不是完整 的 MPD文件,而是播放时间包括起始播放时间点的媒体分片对应的 MPD分片。 由于 MPD分片较小, 客户端获取 MPD分片的时间较短, 解析 MPD分片的时 间也较短。 客户端获取到 MPD分片后, 即刻可根据 MPD分片的媒体描述信息 从服务器获取被 MPD分片描述的媒体分片, 因此, 缩短了客户端启动播放媒体 文件的时延, 达到了快速启动播放媒体文件的目的。
图 2为本发明实施例提供的另一种媒体文件接收方法流程图。 图 2对应实 施例与图 1对应实施例的主要区别在于, 图 2中 MPD分片索引文件中除包括至 少一个 MPD分片的分片地址外, 还包括至少一个 MPD分片。 如图 2所示, 本 实施例提供的方法包括:
步骤 21 : 客户端根据用户请求的起始播放时间点, 在媒体展示描述 MPD 分片索引文件中查找第一 MPD分片, 其中, 第一 MPD分片所对应的媒体分片 的播放时间包括所述起始播放时间点, MPD 分片索引文件包括至少一个 MPD 分片且包括至少一个 MPD分片的分片地址。
服务器按照对 MPD文件所描述媒体文件的播放时间, 对 MPD文件进行分 片处理, 生成了由多个 MPD分片组成的 MPD分片文件。 生成 MPD分片文件 后, 服务器为 MPD分片建立索引信息并保存在 MPD分片索引文件中, MPD分 片索引文件中包括至少一个 MPD分片的分片地址。 MPD分片索引文件中一个 MPD分片的索引信息可以包括所述 MPD分片所描述的媒体分片的起始播放时 间点、媒体时长和所述 MPD分片的地址。 MPD分片索引文件可以采用 XML语 言描述。 并且, 本实施例中服务器在 MPD分片索引文件中保留至少一个 MPD 分片, 举例来说, 可以不对媒体时长较短的媒体描述信息进行分解, 保留媒体 时长较短的媒体描述信息。
如果客户端接收到包括起始播放时间点的用户请求后, 启动播放媒体。 在 初始阶段, 也就是说客户端没有保存 MPD 分片索引文件时, 先向服务器发送 MPD分片索引文件获取请求, 获取服务器生成的 MPD分片索引文件。 客户端 也可以在初次接收到包括超始插放时间点的用户请求后,向服务器发送 MPD分 片索引文件获取请求, 获取服务器生成的 MPD分片索引文件。
客户端接收到用户发送的携带有起始播放时间点的用户播放请求后, 解析 MPD分片索引文件, 在 MPD分片索引文件中查找第一 MPD分片, 其中, 所述 第一 MPD分片所对应的媒体分片的播放时间包括所述起始播放时间点。
步骤 22: 如果在 MPD分片索引文件中查找到了第一 MPD分片, 客户端根 据第一 MPD分片中媒体描述信息, 向服务器发送媒体分片请求, 并接收服务器 根据媒体分片请求反馈的第一 MPD分片描述的媒体分片。
如果所述客户端在所述媒体展示描述 MPD分片索引文件中查找不到所述第 一 MPD分片, 客户端根据用户请求的起始播放时间点, 在媒体展示描述 MPD 分片索引文件中查找所述第一 MPD分片的 MPD分片地址, 然后向所述服务器 发送包括所述第一 MPD分片的 MPD分片地址的第一 MPD分片获取请求, 以 使所述服务器根据所述第一 MPD分片的 MPD地址在预存储的 MPD分片文件 中得到所述第一 MPD分片。所述客户端接收到所述服务器反馈的所述第一 MPD 分片时, 根据所述第一 MPD分片中的媒体描述信息, 向所述服务器发送媒体分 片获取请求, 以使所述服务器根据所述媒体分片获取请求获取并反馈所述第一 MPD分片描述的媒体分片,之后,客户端接收所述服务器反馈的所述第一 MPD 分片描述的媒体分片。
本实施例提供的技术方案中, 客户端从服务器获取起始播放时间点的媒体 分片之前,客户端根据用户请求的起始播放时间点在 MPD分片索引文件中查找 播放时间包括起始播放时间点的媒体分片对应的 MPD分片,根据查找到的 MPD 分片,从服务器获取该 MPD分片描述的媒体分片。 因此,在获取媒体分片之前, 客户端从服务器获取的不是完整的 MPD文件, 而是播放时间包括起始播放时间 点的媒体分片对应的 MPD分片。 由于 MPD分片较小, 客户端获取 MPD分片 的时间较短, 解析 MPD分片的时间也较短。 客户端获取到 MPD分片后, 即刻 可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放媒体文件 的目的。
图 3A为本发明实施例提供的一种媒体文件发送方法流程图。如图 3A所示, 本实施例提供的方法包括:
步骤 31: 服务器接收客户端发送的包括 MPD分片地址的 MPD分片获取请 求, 在预存储的 MPD分片文件中查找与 MPD分片地址对应的 MPD分片, 向 所述客户端反馈查找到的所述 MPD分片。
步骤 32: 服务器接收所述客户端发送的媒体分片请求, 并向所述客户端反 馈与所述媒体分片请求对应的媒体分片。
服务器按照对 MPD文件所描述媒体文件的播放时间, 对 MPD文件进行分 片处理, 生成了由多个 MPD分片组成的 MPD分片文件。 生成 MPD分片文件 后,服务器为至少一个 MPD分片建立索引信息并保存在 MPD分片索引文件中, MPD分片索引文件中包括至少一个 MPD分片的分片地址。 MPD分片索引文件 一个 MPD分片的索引信息可以包括所述 MPD分片所描述的媒体分片的起始播 放时间点、媒体时长和所述 MPD分片的地址。 MPD分片索引文件可以采用 XML 语言描述。 并且, 服务器在 MPD分片索引文件中保留至少一个 MPD分片, 举 例来说, 服务器可以不对媒体时长较短的媒体描述信息进行分解, 保留媒体时 长较短的媒体描述信息。 服务器还可以在 MPD分片索引文件中添加 MPD分片 文件的第一个 MPD分片。 其中, MPD分片文件的第一个 MPD分片是, 根据媒 体时长对 MPD文件进行分片时得到的第一个 MPD分片, 第一个 MPD分片也 是包括最早播放时间点的 MPD分片。
可选地, 服务器还可以在 MPD分片索引文件中添加 MPD文件的地址。 在 带宽及客户端能力许可的情况下可以直接从服务器获取 MPD文件。也可以先获 取几次 MPD分片, 在情况允许时再获取 MPD文件。
可选地,服务器在 MPD分片索引文件中添加 MPD分片文件的第一个 MPD 分片。 其中, MPD分片文件的第一个 MPD分片是, 根据媒体时长对 MPD文件 进行分片时得到的第一个 MPD分片, 第一个 MPD分片也是包括最早播放时间 点的 MPD分片。 如果用户请求的起始播放时间点在第一个 MPD分片所描述的 媒体分片的播放时间内, 客户端根据第一个 MPD分片中媒体描述信息, 向服务 器发送媒体分片获取请求,并接收服务器反馈的第一个 MPD分片描述的媒体分 片。 因此, 客户端在从媒体开始处开始播放媒体文件时, 不需要从服务器请求 第一个 MPD分片, 可以根据第一个 MPD分片中的媒体描述信息, 直接从服务 器获取第一个 MPD分片描述的媒体分片,进一步缩短客户端启动播放媒体文件 的时延。
服务器可以采用多种方法按照时间维度对 MPD文件进行分片生成 MPD分 片文件, 并建立 MPD分片索引文件。 下面举例说明两种方法, 第一种方法是, 服务器按照 MPD文件中 Duration元素描述的媒体时长对 MPD文件进行分片生 成 MPD分片,为每个 MPD分片建立 MPD分片的播放时间点与 MPD分片地址 的对应关系, 并保存在 MPD分片索引文件中。
以下示例性给出了一个 MPD文件 a.mpd:
<?xml version:" 1.0" encoding="UTF- 8 " ?>
<MPD
Figure imgf000020_0001
<llOlll=uoTimn isi iu9iu§9s> <ι,0008Ζΐι,=ΨΡΐ Ρ^ς "乙, =Ρΐ uoTiBiu9S3ad9-a>
<U0TlBlU9S9jd9¾/>
<lsniu3m§9s/>
Figure imgf000020_0002
<llOl11=uoTimnp isi iu9iu§3s> <"0008 1"=輕 "ΐ"=Ρΐ uoTiBiu9S9ad9-a> <ll ABll=so9poo ^tzdui/ospTA.-sdX aiuTiu i9SuoiiBidB v>
<lsiqiu3iu§3S/>
<isiqiu3iu§9s> <llS00O00Udll=uonmnp "S00OlL,=l^is pou9j>
<l¾n9S¾8/>/u-IO0'3l(itUBX9-AAA//:dlll{<q¾Q3SBa>
<" nO :ui¾m"JJosi:S3lTJ°-lcI:qsB :§9diu:iunl -s9|Tjojd
" SOOO ΐ丄i"=3u¾J,auiu
unOZ:adIA[:¾m9^os:HSVG:§3CItti:iurill=uoTiBOoqBiu9qos:TS
" Π OZOcIIAI:舰 9ips :HS VQ^dimn^suiiux ll9OUBism-Bm9qosq] [ / 00:/§JOX " A^//:dlliill=TS :su{iu
61 <SegmentURL media="seg-m2-3.mp4"/>
<此处省略若干 SegmentURL >
</SegmentList>
</Representation>
...... < J¾处省略若干 Representation >
</AdaptationS et>
</Period>
...... <此处省略若干 Period >
<Period duration="PT200.00S">
(媒体描述信息)
</Period>
<Period duration="PT1200.00S">
(媒体描述信息)
</Period>
</MPD>
上述 Mpd文件中用 SegmentURL中的 duration元素描述了每个媒体分片的 时间信息即媒体时长。 如图 3B所示, 服务器中 MPD处理模块可以按照 MPD 文件中 Duration元素描述的媒体时长对 MPD文件 a.mpd进行分片生成 MPD分 片: a-l.mpd、 a-2.mpd、 a-3.mpd、 a-4.mpd、 ...a-n.mpd。 月良务器为上述 MPD分 片文件建立索引信息, 并保存在 MPD分片索引文件中。 以下示例性给出了根据 上述方法建立的 MPD分片索引文件 a.mpdindex:
<MPDINDEX>
<ORIGINALMPD url="http://www.example.com/a.mpd" />
<MPDFRAGMENTS>
<FRAGMENT start=0s duration=120s url=" http: //www. example. com/a/fragments/a- 1.mpd" />
<FRAGMENT start=120s duration=120s
url=" htt : //www. example . com/a/fragments/a-2.mpd" />
<FRAGMENT start=240s duration=120s
url=" http://www.example.eom/a/fragments/a-3.mpd'' />
<FRAGMENT start=360s duration=120s
url=" htt : //www. example . com/a/fragments/a-4.mpd" />
<FRAGMENT start=7200s duration=120s
url=" http://www.example.eom/a/fragments/a-n.mpd'' />
</MPDFRAGMENTS>
</ MPDINDEX >
上述 MPD分片索引文件中, ORIGINALMPD元素描述 MPD文件的 URL, MPDFRAGMENTS 元素描述所有的 MPD分片组成的 MPD分片文件。描述 MPD 文件的 URL可以保留在 MPD分片索引文件中。 MPDFRAGMENTS 元素中, FRAGMENT元素描述一个 MPD分片的索引信息。 属性 Start描述 MPD分片所 描述的媒体分片的起始时间点, 属性 duration描述该媒体分片的媒体时长, 元 素 url描述该 MPD分片的 url。其中 start属性根据上下文可以获取的情况下可以 省略。例如上述 MPD分片索引文件中除了第一个 FRAGMENT中 start属性,其 余 FRAGMENT的 start属性都可以省略。 第一个 FRAGMENT描述信息为: 描 述从 0秒开始且 120秒时长的媒体文件的 MPD分片可以根据 URL 中获取: http ://www. example .com/a/fragments/a- 1.mpd„
可选地, 在 MPD分片索引文件中还可以包括第一个 MPD分片。 如下所示 的 MPD分片索引文件 a.mpdindex, 在第一个 FRAGMENT元素下增加了 MPD 元素, 描述第一个 MPD分片, 客户端在从媒体开始处开始播放媒体文件时, 不 需要从服务器请求第一个 MPD分片, 可以解析第一个 MPD分片中的媒体描述 信息, 直接从服务器获取第一个 MPD分片描述的媒体分片。 <MPDINDEX>
<ORIGINALMPD url="http://www.example.com/a.mpd" />
<MPDFRAGMENTS>
<FRAGMENT start=0s duration=120s
url=" htt ://www. example . com/a/fragments/a- 1.mpd"
<MPD>
</MPD>
<FRAGMENT />
<FRAGMENT start= 120s duration: 120s
url=" htt : //www. example . com/a/fragments/ a-2.mpd" />
<FRAGMENT start=240s duration=120s
url=" htt : //www. example . com/a/fragments/a- 3. mpd" />
<FRAGMENT start=360s duration=120s
url=" http://www.example.eom/a/fragments/a-4.mpd" />
<FRAGMENT start=7200s duration=120s
url=" htt : //www. example . com/a/fragments/a-n. mpd" />
</MPDFRAGMENTS>
</ MPDINDEX >
本发明提供的另外一种 MPD文件分片方法和建立 MPD分片索引文件的方 法是, 服务器按照 MPD文件中 Period元素描述的媒体时长对 MPD文件进行分 片生成 MPD分片, 为 MPD分片建立索引信息, 并保存在 MPD分片索引文件 中。 在上述 MPD文件 a.mpd中, 描述了三个 Period, 这三个 Period的时长分别 为 2000秒、 200秒、 1200秒。 服务器可以分解时长比较长的 Period, 可以保留 时长比较短的 Period不变。 以下示例性给出了根据上述方法建立的 MPD分片索引文件: <MPD>
<Period start="PT0.00S" duration="PT200.00S" xlink="a-l.mpd" />
<Period duration="PT200.00S" xlink="a-2.mpd" />
<Period duration="PT200.00S" xlink="a-3.mpd" />
<Period duration="PT200.00S" xlink="a-10.mpd" />
<Period duration="PT200.00S" >
(媒体描述信息)
</Period>
<Period duration="PT200.00S" xlink="a-l l.mpd" />
<Period duration="PT200.00S" xlink="a-16.mpd" />
</ MPD>
将原始 MPD文件 a.mpd中第一个 Period分解成 10个新的 Period, 每个新 Period时长为 200秒。 分解出来的每个新 Period用一个 MPD分片来描述, 同时 在 MPD分片索引文件中对新 Period进行描述。例如第一个新产生的 Period描述 为:
<Period start="PT0.00S" duration="PT200.00S" xlink="a-l.mpd" />
其中 duration表示新 Period的时长即一个 MPD分片的时长, 新增 xlink的 属性, 表示新 Period对应的 MPD分片的 url。
原始 MPD文件 a.mpd中, 第 2个 Period时长比较短, 处理时不分解第 2个 Period描述的媒体描述信息, 保持不变; 或者, 为进一步减小 MPD分片, 将该 Period的媒体描述信息独立出来, 在 Period中同样采用属性 xlink描述。
进一步, 如下所示的 MPD分片索引文件, 还可以在 MPD分片索引文件中 还可以包括第一个 MPD分片, 也就是第一个 Period的媒体描述信息。
<MPD>
<Period start="PT0.00S" duration="PT200.00S" >
(保留第一个 Period的媒体描述信息 )
</Period>
<Period duration="PT200.00S" xlink="a-l.mpd" />
<Period duration="PT200.00S" xlink="a-2.mpd" />
</ MPD>
以下图 4A和图 5对应方法实施例与图 1、 图 2和图 3A对应方法实施例的 主要区别在于,客户端启动播放媒体时,不需向服务器获取 MPD分片索引文件, 而是直接向服务器请求与起始播放时间点和媒体时长对应的 MPD分片。
图 4A为本发明实施例提供的另一种媒体文件发送方法流程图。 如图 4A所 示, 本实施例提供的方法包括:
步骤 41 :服务器接收客户端发送的媒体展示描述 MPD分片获取请求,其中 所述 MPD分片获取请求包括起始播放时间点和媒体时长。
客户端可以在 MPD分片请求中携带向服务器请求的 MPD分片的媒体时长, 服务器根据客户端请求的起始播放时间点和媒体时长向客户端反馈 MPD分片。 客户端也可以在 MPD分片请求中不携带媒体时长, 而是与服务器预先协商媒体 时长。 服务器接收到 MPD分片请求后, 根据播放时间点和默认的媒体时长, 向 客户端反馈 MPD分片。
步骤 42: 服务器根据起始播放时间点和媒体时长, 确定与起始播放时间点 和媒体时长对应的 MPD分片,并向客户端反馈与起始播放时间点和媒体时长对 应的 MPD分片。
服务器可以按照对 MPD文件所描述媒体文件的播放时间, 预先对 MPD文 件进行分片处理, 生成由多个 MPD分片组成的 MPD分片文件。 每个 MPD分 片描述一段媒体时间的媒体分片,每个 MPD分片可以描述一个或多个媒体分片。 MPD分片中的内容是描述媒体分片的媒体描述信息。 服务器为 MPD分片建立 了索引信息并保存在 MPD分片索引文件中。 MPD分片的索引信息包括 MPD分 片所描述的媒体分片的起始时间点、 媒体时长和 MPD分片在 MPD分片文件中 的地址。 MPD分片索引文件可以采用 XML语言描述。
在服务器预先已对 MPD文件进行静态分片的情况下,服务器接收到客户端 的 MPD分片获取请求后, 根据客户端请求的起始播放时间点和 MPD分片索引 文件, 在 MPD分片文件中查找第一 MPD分片, 第一 MPD分片描述的媒体分 片的播放时间包括客户端请求的起始播放时间点。 进一步, 如果第一 MPD分片 描述的媒体时长小于客户端请求的或马预设的媒体时长,服务器继续在 MPD分 片文件中从第一 MPD分片开始向后顺序查找 N个 MPD分片。 直至查找到的所 有 MPD分片的媒体时长的总和大于等于客户端请求的媒体时长时, 停止查找。 其中, N为自然数。
如图 4B所示,服务器接收到客户端发送的包括起始播放时间点和媒体时长 的 MPD分片获取请求后, MPD请求处理模块在 MPD分片索引文件中, 查找与 起始播放时间点和媒体时长对应的 MPD 分片。 MPD 分片模块向客户端反馈 MPD请求处理模块查找到的与起始播放时间点和媒体时长对应的 MPD分片。 1*列 ^口,客户端发送的是 http:〃 www.example.com/a.mpd?start=0&timespan=120,表 示客户端向服务器请求描述从 0秒开始且 120秒时长的媒体分片的 MPD分片。 服务器也可以预先不对 MPD文件进行分片生成 MPD分片文件, 而是在接 收到客户端发送的 MPD分片请求后, 对 MPD文件进行动态分片。 如图 4C所 示,服务器接收到客户端发送的包括起始播放时间点和媒体时长的 MPD分片获 取请求后 , MPD请求处理模块对 MPD文件进行解析 , 在 MPD文件中定位或组 装与请求的起始播放时间点和媒体时长对应的 MPD分片。 MPD分片模块向客 户端 MPD请求处理模块反馈定位到的 MPD分片。
步骤 43 : 服务器接收客户端发送的媒体分片获取请求, 其中, 媒体分片获 取请求所请求的媒体分片为所述 MPD分片描述的媒体分片。 步骤 44:服务器根据媒体分片获取请求,向客户端反馈所述 MPD分片描述 的所述媒体分片。 图 5为本发明实施例提供的又一种媒体文件接收方法流程图。 如图 5所示, 本实施例提供的方法包括: 步骤 51 : 客户端向服务器发送包括起始播放时间点和媒体时长的媒体展示 描述 MPD分片获取请求, 以使服务器根据起始播放时间点和媒体时长, 确定与 起始播放时间点和媒体时长对应的 MPD分片。 客户端接收包括起始播放时间点和媒体时长的用户请求后,在 MPD分片获 取请求中携带起始播放时间点和媒体时长发送给服务器, 服务器根据客户端请 求的起始播放时间点和媒体时长, 向客户端反馈 MPD分片。 可选地, 用户请求 中也可以不包括媒体时长, 客户端在 MPD分片获取请求中不携带媒体时长, 而 是客户端与服务器预先协商媒体时长。 服务器接收到 MPD分片请求后, 根据播 放时间点和默认的媒体时长, 向客户端反馈 MPD分片。 例如, 客户端启动播放时, 向服务器发送包括起始播放时间点和媒体时长 的 MPD分片获取请求。 例如, 请求 a.mpd分片时, 可以采用如下 URL访问服 务器: http://www.example.com/a.mpd?start=0&timespan=120„ 其中 start表示媒体 起始播放时间点, timespan表示媒体时长。 上述 URL表示客户端向服务器请求 从节目时间 0秒开始且时长为 120秒的 MPD分片。 步骤 52: 客户端接收服务器反馈的与起始播放时间点和媒体时长对应的 MPD分片。 步骤 53:客户端根据所述服务器反馈的所述 MPD分片,向所述服务器发送 媒体分片获取请求, 以使所述服务器查找所述 MPD分片描述的媒体分片; 步骤 54: 客户端接收服务器反馈的所述 MPD分片描述的媒体分片。 上述技术方案中, 客户端在请求播放媒体时, 向服务器发送包括起始播放 时间点和媒体时长的 MPD分片获取请求,服务器向客户端反馈与起始播放时间 点和媒体时长对应的 MPD分片。客户端从服务器获取的不是完整的 MPD文件, 而是 MPD分片, 由于 MPD分片较小, 客户端获取 MPD分片的时间较短, 解 析 MPD分片的时间也较短。 客户端获取到 MPD分片后, 即刻可根据 MPD分 片的媒体描述信息从服务器获取被 MPD分片描述的媒体分片, 因此, 缩短了客 户端启动播放媒体文件的时延, 达到了快速启动播放媒体文件的目的。 可选地, 客户端接收服务器反馈的播放时间包括起始播放时间点的媒体分 片对应的第一 MPD分片。 如果第一 MPD分片描述的媒体时长小于客户端请求 的媒体时长, 客户端继续接收服务器反馈的 MPD分片, 直至客户端接收到的所 有 MPD分片的媒体时长的总和大于等于客户端请求的媒体时长。
可选地,在所述客户端接收所述服务器反馈的所述 MPD分片描述的媒体分 片之后,如果所述服务器反馈的 MPD分片所描述的媒体分片的播放时间包括下 一个播放时间点,所述客户端根据所述服务器反馈的 MPD分片中的媒体描述信 息, 从所述服务器获取所述下一个播放时间点对应的媒体分片。
图 6、图 7、图 8和图 11对应装置实施例中,媒体文件发送装置预先对 MPD 文件进行了分片处理, 生成了包括至少一个 MPD分片的 MPD分片文件, 并为 MPD分片文件建立了包括 MPD分片地址的 MPD分片索引文件。媒体文件接收 装置从媒体文件发送装置获取媒体分片之前, 先向媒体文件发送装置发送 MPD 分片索引文件获取请求, 获取媒体文件发送装置生成的 MPD分片索引文件, 之
图 6为本发明实施例提供的一种媒体文件接收装置结构示意图。 如图 6所 示, 本实施例提供的装置包括: 查找模块 61、 发送模块 62和接收模块 63。
查找模块 61 , 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD 分片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD 分片所对应的媒体分片的播放时间包括所述起始播放时间点。
发送模块 62, 用于向所述服务器发送包括所述第一 MPD分片的 MPD分片 地址的第一 MPD 分片获取请求, 以使所述服务器根据所述第一 MPD 分片的 MPD分片地址在预存储的 MPD分片文件中得到所述第一 MPD分片;
发送模块 62,还用于根据所述第一 MPD分片中的媒体描述信息,向所述服 务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获取 并反馈所述第一 MPD分片描述的媒体分片;
接收模块 63 , 用于接收所述服务器反馈的所述第一 MPD分片;
接收模块 63 ,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒体 分片。 进一步,所述发送模块 62,还用于向所述服务器发送 MPD分片索引文件获 取请求。所述接收模块 63,还用于接收所述服务器根据所述 MPD分片索引文件 获取请求反馈的所述媒体展示描述 MPD分片索引文件。
图 8为发明实施例提供的一种媒体文件发送装置结构示意图。 如图 8所示, 本实施例提供的装置包括: 接收模块 81、 查找模块 82和发送模块 83。
接收模块 81 , 用于接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD分片获取请求。
查找模块 82,用于根据所述接收模块接收的 MPD分片获取请求在预存储的 MPD分片文件中查找与所述 MPD分片地址对应的 MPD分片。
发送模块 83 , 用于向所述客户端反馈所述查找模块查找到的所述 MPD分 片。
所述接收模块 81 , 还用于接收所述客户端发送的媒体分片请求, 所述发送 模块还用于向所述客户端反馈与所述媒体分片请求对应的媒体分片。
可选地,接收模块 81 ,还用于接收所述客户端发送的 MPD分片索引文件获 取请求。所述发送模块 83 ,还用于向所述客户端发送与所述 MPD分片索引文件 获取请求对应的 MPD分片索引文件, 所述 MPD分片索引文件中一个 MPD分 片的索引信息包括所述 MPD分片描述的媒体分片的起始播放时间点、媒体时长 和所述 MPD分片的 MPD分片地址。
可选地, 图 8所示的装置还可包括: MPD分片模块。
MPD分片模块, 用于按照预设的媒体时长对 MPD文件进行分片, 得到至 少一个 MPD分片。 所述 MPD分片模块, 还用于为每个 MPD分片建立索引信 息, 并保存在 MPD分片索引文件中, 所述 MPD分片索引文件中一个 MPD分 片的索引信息包括所述 MPD分片描述的媒体分片的起始播放时间点、媒体时长 和所述 MPD分片的 MPD分片地址。
图 11 为本发明实施例提供的一种媒体文件传输系统结构示意图。 如图 11 所示的系统包括: 客户端 111和服务器 112。
所述客户端 111 , 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD分片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分片所对应的媒体分片的播放时间包括所述起始播放时间点; 所述客户端 111 ,还用于向所述服务器发送包括所述第一 MPD分片的 MPD 分片地址的第一 MPD分片获取请求; 所述服务器 112, 用于根据所述第一 MPD分片的 MPD分片地址在预存储 的 MPD分片文件中得到所述第一 MPD分片, 并向所述客户端反馈; 所述客户端 111 , 还用于接收所述服务器反馈的所述第一 MPD分片, 并根 据所述第一 MPD分片中的媒体描述信息 ,向所述服务器发送媒体分片获取请求; 所述服务器 112,还用于根据所述媒体分片获取请求获取并向所述客户端反 馈所述第一 MPD分片描述的媒体分片; 所述客户端 111 , 还用于接收所述服务器反馈的所述第一 MPD分片描述的 媒体分片。 可选地, 所述客户端 111 , 还用于向所述服务器发送 MPD分片索引文件获 取请求; 所述服务器根据所述 MPD分片索引文件获取请求向所述客户端反馈的 所述媒体展示描述 MPD分片索引文件。 图 6、 8和 11对应实施例提供的技术方案中, 客户端从服务器获取起始播 放时间点的媒体分片之前,客户端根据用户请求的起始播放时间点在 MPD分片 索引文件中查找播放时间包括起始播放时间点的媒体分片对应的 MPD分片的地 址, 根据查找到的地址向服务器请求对应的 MPD分片。 因此, 客户端从服务器 获取的不是完整的 MPD文件, 而是播放时间包括起始播放时间点的媒体分片对 应的 MPD分片。 由于 MPD分片较小, 客户端获取 MPD分片的时间较短, 解 析 MPD分片的时间也较短。 客户端获取到 MPD分片后, 即刻可根据 MPD分 片的媒体描述信息从服务器获取被 MPD分片描述的媒体分片, 因此, 缩短了客 户端启动播放媒体文件的时延, 达到了快速启动播放媒体文件的目的。 图 7 为本发明实施例提供的另一种媒体文件接收装置结构示意图。 如图 7 所示, 本实施例提供的装置包括: 查找模块 71、 发送模块 72和接收模块 73。 查找模块 71 , 用于根据用户请求的起始播放时间点, 在媒体展示描述 MPD 分片索引文件中查找第一 MPD分片, 其中, 所述第一 MPD分片所对应的媒体 分片的播放时间包括所述起始播放时间点; 所述媒体展示描述 MPD分片索引文 件包括至少一个 MPD分片且包括至少一个 MPD分片的分片地址。
发送模块 72,用于如果所述查找模块在所述媒体展示描述 MPD分。 片索引 文件中查找到了所述第一 MPD分片, 根据所述第一个 MPD分片中媒体描述信 息, 向所述服务器发送媒体分片请求,
接收模块 73 , 用于接收所述服务器根据所述媒体分片请求反馈的所述第一 个 MPD分片描述的媒体分片。
进一步,如果所述查找模块在所述媒体展示描述 MPD分片索引文件中查找 不到所述第一 MPD分片, 上述各模块的功能如下:
所述查找模块,还用于如果所述查找模块在所述媒体展示描述 MPD分片索 引文件中查找不到所述第一 MPD分片, 根据用户请求的起始播放时间点, 在媒 体展示描述 MPD分片索引文件中查找所述第一 MPD分片的 MPD分片地址。
所述发送模块, 还用于向所述服务器发送包括所述第一 MPD分片的 MPD 分片地址的第一 MPD分片获取请求, 以使所述服务器根据所述第一 MPD分片 的 MPD地址在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述接收模块, 还用于接收所述服务器反馈的所述第一 MPD分片。
所述发送模块, 还用于根据所述第一 MPD分片中的媒体描述信息, 向所述 服务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获 取并反馈所述第一 MPD分片描述的媒体分片。
所述接收模块,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒 体分片。
进一步, 上述媒体装置还从服务器获取 MPD分片索引文件, 具体如下: 所述发送模块,还用于从媒体展示描述 MPD分片索引文件中获取第一 MPD 分片的 MPD分片地址之前, 向服务器发送 MPD分片索引文件获取请求;
所述接收模块, 还用于接收所述服务器反馈的所述 MPD分片索引文件; 所述接收模块, 还用于获取用户请求信息, 所述用户请求信息包括用户请 求的起始播放点。
图 7对应实施例提供的技术方案中, 客户端从服务器获取起始播放时间点 的媒体分片之前,客户端根据用户请求的起始播放时间点在 MPD分片索引文件 中查找播放时间包括起始播放时间点的媒体分片对应的 MPD分片,根据查找到 的 MPD分片, 从服务器获取该 MPD分片描述的媒体分片。 因此, 在获取媒体 分片之前, 客户端从服务器获取的不是完整的 MPD文件, 而是播放时间包括起 始播放时间点的媒体分片对应的 MPD分片。 由于 MPD分片较小, 客户端获取 MPD分片的时间较短, 解析 MPD分片的时间也较短。客户端获取到 MPD分片 后, 即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片描述的媒 体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速启动播放 媒体文件的目的。
以下图 9、 10和图 12对应装置实施例与图 6、 图 7、 图 8和图 11对应装置 实施例的主要区别在于, 媒体文件接收装置不需从媒体文件发送装置获取 MPD 分片索引文件, 而是直接向媒体文件发送装置请求与起始播放时间点和媒体时 长对应的 MPD分片。
图 9为本发明实施例提供的一种媒体文件发送装置结构示意图。 如图 9所 示, 本实施例提供的装置包括: 接收模块 91、 MPD分片确定模块 92和发送模 块 93。
接收模块 91 ,用于接收客户端发送的媒体展示描述 MPD分片获取请求,其 中所述 MPD分片获取请求包括起始播放时间点和媒体时长;
MPD分片确定模块 92, 用于根据所述起始播放时间点和所述媒体时长, 确 定与所述起始播放时间点和所述媒体时长对应的 MPD分片;
发送模块 93 , 用于向所述客户端反馈所述 MPD分片;
所述接收模块 91 ,还用于接收所述客户端发送的媒体分片获取请求, 其中, 所述媒体分片获取请求所请求的媒体分片为所述 MPD分片所描述的;
所述发送模块 93 ,还用于向所述客户端反馈所述 MPD分片描述的所述媒体 分片。
可选地, MPD分片确定模块 92, 具体用于根据所述起始播放时间点和所述 媒体时长, 对 MPD文件进行解析, 在所述 MPD文件中定位或组装与所述起始 播放时间点以及所述媒体时长对应的 MPD分片。 可选地, MPD分片确定模块 92,具体用于根据所述起始播放时间点和 MPD 分片索引文件,在预存储的 MPD分片文件中查找播放时间包括所述起始播放时 间点的媒体分片对应的第一 MPD分片。 进一步, 如果所述第一 MPD分片描述 的媒体时长小于所述媒体时长,所述服务器在所述 MPD分片文件中从所述第一 MPD分片开始向后查找 N个 MPD分片, 并向所述客户端反馈所述 N个所述 MPD分片, 直至所述第一 MPD分片和所述 N个所述 MPD分片描述的媒体分 片的总媒体时长大于等于所述客户端请求的媒体时长, N为自然数。
图 10为本发明实施例提供的又一种媒体文件接收装置结构示意图。如图 10 所示, 本实施例提供的装置包括: 发送模块 100和接收模块 101。
发送模块 100,用于向服务器发送包括起始播放时间点和媒体时长的媒体展 示描述 MPD分片获取请求, 以使所述服务器根据所述起始播放时间点和所述媒 体时长, 确定与所述起始播放时间点和所述媒体时长对应的 MPD分片;
接收模块 101 ,用于接收所述服务器反馈的与所述起始播放时间点和所述媒 体时长对应的 MPD分片;
所述发送模块 100, 用于根据所述服务器反馈的所述 MPD分片, 向所述服 务器发送媒体分片获取请求, 以使所述服务器查找所述 MPD分片描述的媒体分 片;
所述接收模块 101 , 还用于接收所述服务器反馈的所述 MPD分片描述的媒 体分片。
可选地, 所述接收模块 101 , 具体用于接收所述服务器反馈的播放时间包括 所述起始播放时间点的媒体分片对应的第一 MPD分片。 进一步, 所述接收模块 101 , 还用于如果所述第一 MPD分片描述的媒体时长小于所述媒体时长, 接收 所述服务器反馈的 N个所述 MPD分片,直至所述第一 MPD分片和所述 N个所 述 MPD 分片描述的媒体分片的总媒体时长大于等于所述客户端请求的媒体时 长, N为自然数。
可选地, 所述接收模块 101 , 还用于在所述客户端接收所述服务器反馈的所 述 MPD分片描述的媒体分片之后, 如果所述服务器反馈的 MPD分片所描述的 媒体分片的播放时间包括下一个播放时间点,根据所述服务器反馈的 MPD分片 中的媒体描述信息, 从所述服务器获取所述下一个播放时间点对应的媒体分片。 图 12为本发明实施例提供的另一种媒体文件传输系统结构示意图。如图 12 所示, 本实施例提供的系统包括; 客户端 121和服务器 122。 所述客户端 121 ,用于向所述服务器发送媒体展示描述 MPD分片获取请求, 其中所述 MPD分片获取请求包括起始播放时间点和媒体时长;
所述服务器 122, 用于接收所述客户端发送的媒体展示描述 MPD分片获取 请求;
所述服务器 122, 还用于根据所述起始播放时间点和所述媒体时长, 确定与 所述起始播放时间点和所述媒体时长对应的 MPD分片,并向所述客户端反馈所 述 MPD分片; 所述客户端 121 , 还用于接收所述 MPD分片, 所述客户端根据所述 MPD 分片所描述的媒体分片向所述服务器发送媒体分片获取请求;
所述服务器 122, 还用于接收所述客户端发送的媒体分片获取请求; 所述服务器 122, 还用于根据所述媒体分片获取请求, 向所述客户端反馈所 述 MPD分片描述的所述媒体分片。
可选地, 所述服务器 122, 具体用于根据所述起始播放时间点和所述媒体时 长, 对 MPD文件进行解析, 在所述 MPD文件中定位或组装与所述起始播放时 间点以及所述媒体时长对应的 MPD分片。
可选地, 所述服务器 122, 具体用于根据所述起始播放时间点和 MPD分片 索引文件,在预存储的 MPD分片文件中查找播放时间包括所述起始播放时间点 的媒体分片对应的第一 MPD分片; 向所述客户端反馈所述第一 MPD分片。
图 9、 图 10和图 12对应实施例提供的技术方案中,客户端在请求播放媒体 时, 向服务器发送包括起始播放时间点和媒体时长的 MPD分片获取请求, 服务 器向客户端反馈与起始播放时间点和媒体时长对应的 MPD分片。客户端从服务 器获取的不是完整的 MPD文件, 而是 MPD分片, 由于 MPD分片较小, 客户 端获取 MPD 分片的时间较短, 解析 MPD 分片的时间也较短。 客户端获取到 MPD分片后,即刻可根据 MPD分片的媒体描述信息从服务器获取被 MPD分片 描述的媒体分片, 因此, 缩短了客户端启动播放媒体文件的时延, 达到了快速 启动播放媒体文件的目的。
本领域普通技术人员可以理解: 实现上述各方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成。 前述的程序可以存储于一计算机可读取 存储介质中。 该程序在执行时, 执行包括上述各方法实施例的步骤; 而前述的 存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对其 限制; 尽管参照前述各实施例对本发明进行了详细的说明, 本领域的普通技术 人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或者 对其中部分或者全部技术特征进行等同替换; 而这些修改或者替换, 并不使相 应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims

权 利 要 求
1、 一种媒体文件接收方法, 其特征在于, 所述方法包括:
客户端根据用户请求的起始播放时间点,从媒体展示描述 MPD分片索引文 件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分片所对应 的媒体分片的播放时间包括所述起始播放时间点;
所述客户端向服务器发送包括所述第一 MPD分片的 MPD分片地址的第一 MPD分片获取请求,以使所述服务器根据所述第一 MPD分片的 MPD分片地址 在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述客户端接收所述服务器反馈的所述第一 MPD 分片, 并根据所述第一 MPD分片中的媒体描述信息, 向所述服务器发送媒体分片获取请求, 以使所述 服务器根据所述媒体分片获取请求获取并反馈所述第一 MPD分片描述的媒体分 片;
所述客户端接收所述服务器反馈的所述第一 MPD分片描述的媒体分片。
2、 根据权利要求 1所述的方法, 其特征在于, 在所述客户端根据用户请求 的起始播放时间点, 从媒体展示描述 MPD分片索引文件中获取第一 MPD分片 的 MPD分片地址之前 , 所述方法还包括:
所述客户端向所述服务器发送 MPD分片索引文件获取请求,并接收所述服 务器根据所述 MPD分片索引文件获取请求反馈的所述媒体展示描述 MPD分片 索引文件。
3、 根据权利要求 1或 2所述的方法, 其特征在于, 在所述客户端接收所述 服务器反馈的所述第一 MPD分片之后, 所述方法还包括:
如果所述客户端接收的用户请求的下一个播放时间点在所述第一 MPD分片 描述的媒体分片的播放时间内,则所述客户端根据所述第一 MPD分片中的媒体 描述信息 , 从所述服务器获取所述下一个播放时间点对应的媒体分片。
4、 一种媒体文件接收方法, 其特征在于, 所述方法包括:
客户端根据用户请求的起始播放时间点,在媒体展示描述 MPD分片索引文 件中查找第一 MPD分片, 其中, 所述第一 MPD分片所对应的媒体分片的播放 时间包括所述起始播放时间点; 所述媒体展示描述 MPD分片索引文件包括至少 一个 MPD分片且包括至少一个 MPD分片的分片地址;
如果所述客户端在所述媒体展示描述 MPD分片索引文件中查找到了所述第 一 MPD分片, 贝' J
所述客户端根据所述第一 MPD分片中媒体描述信息,向所述服务器发送媒 体分片请求,并接收所述服务器根据所述媒体分片请求反馈的所述第一 MPD分 片描述的媒体分片。
5、 根据权利要求 4所述的方法, 其特征在于, 所述方法还包括: 如果所述客户端在所述媒体展示描述 MPD分片索引文件中查找不到所述第 一 MPD分片,
所述客户端根据用户请求的起始播放时间点,在媒体展示描述 MPD分片索 引文件中查找所述第一 MPD分片的 MPD分片地址;
所述客户端向所述服务器发送包括所述第一 MPD分片的 MPD分片地址的 第一 MPD分片获取请求, 以使所述服务器根据所述第一 MPD分片的 MPD地 址在预存储的 MPD分片文件中得到所述第一 MPD分片;
所述客户端接收所述服务器反馈的所述第一 MPD 分片, 并根据所述第一 MPD分片中的媒体描述信息, 向所述服务器发送媒体分片获取请求, 以使所述 服务器根据所述媒体分片获取请求获取并反馈所述第一 MPD分片描述的媒体分 片;
所述客户端接收所述服务器反馈的所述第一 MPD分片描述的媒体分片。
6、 根据权利要求 4或 5所述的方法, 其特征在于, 在所述客户端根据用户 请求的起始播放时间点, 从媒体展示描述 MPD分片索引文件中获取第一 MPD 分片的 MPD分片地址之前 , 所述方法还包括:
所述客户端向所述服务器发送 MPD分片索引文件获取请求,并接收所述服 务器根据所述 MPD分片索引文件获取请求反馈的所述媒体展示描述 MPD分片 索引文件。
7、 一种媒体文件发送方法, 其特征在于, 所述方法包括: 服务器接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD分片获 取请求, 在预存储的 MPD分片文件中查找与所述媒体展示描述 MPD分片地址 对应的 MPD分片, 向所述客户端反馈查找到的所述 MPD分片;
所述服务器接收所述客户端发送的媒体分片请求, 并向所述客户端反馈与 所述媒体分片请求对应的媒体分片。
8、 根据权利要求 7所述的方法, 其特征在于, 在所述服务器接收客户端发 送的包括媒体展示描述 MPD分片地址的 MPD分片获取请求之前, 所述方法还 包括:
所述服务器接收所述客户端发送的 MPD分片索引文件获取请求,并向所述 客户端发送与所述 MPD分片索引文件获取请求对应的 MPD分片索引文件, 所 述 MPD分片索引文件中一个 MPD分片的索引信息包括所述 MPD分片描述的 媒体分片的起始播放时间点、 媒体时长和所述 MPD分片的 MPD分片地址。
9、 根据权利要求 7或 8所述的方法, 其特征在于, 在所述服务器接收客户 端发送的包括媒体展示描述 MPD分片地址的 MPD分片获取请求之前, 所述方 法还包括:
所述服务器按照预设的媒体时长对 MPD文件进行分片,得到至少一个 MPD 分片;
所述服务器为每个 MPD分片建立索引信息, 并保存在 MPD分片索引文件 中, 所述 MPD分片索引文件中一个 MPD分片的索引信息包括所述 MPD分片 描述的媒体分片的起始播放时间点、 媒体时长和所述 MPD分片的 MPD分片地 址。
10、 一种媒体文件发送方法, 其特征在于, 所述方法包括:
服务器接收客户端发送的媒体展示描述 MPD分片获取请求,其中所述 MPD 分片获取请求包括起始播放时间点和媒体时长;
所述服务器根据所述起始播放时间点和所述媒体时长, 确定与所述起始播 放时间点和所述媒体时长对应的 MPD分片, 并向所述客户端反馈所述 MPD分 片;
所述服务器接收所述客户端发送的媒体分片获取请求, 其中, 所述媒体分 片获取请求所请求的媒体分片为所述 MPD分片描述的媒体分片; 所述服务器根据所述媒体分片获取请求,向所述客户端反馈所述 MPD分片 描述的所述媒体分片。
11、 根据权利要求 10所述的方法, 其特征在于, 所述服务器根据所述起始 播放时间点和所述媒体时长, 确定与所述起始播放时间点和所述媒体时长对应 的 MPD分片, 包括:
所述服务器根据所述起始播放时间点和所述媒体时长,对 MPD文件进行解 析,在所述 MPD文件中定位或组装与所述起始播放时间点和所述媒体时长对应 的 MPD分片。
12、 根据权利要求 10所述的方法, 其特征在于, 所述服务器根据所述起始 播放时间点和所述媒体时长, 确定与所述起始播放时间点和所述媒体时长对应 的 MPD分片, 并向所述客户端反馈所述 MPD分片, 包括:
所述服务器根据所述起始播放时间点和 MPD 分片索引文件, 在预存储的 MPD分片文件中查找播放时间包括所述起始播放时间点的媒体分片对应的第一 MPD分片;
所述服务器向所述客户端反馈所述第一 MPD分片。
13、 根据权利要求 12所述的方法, 其特征在于, 所述服务器根据所述起始 播放时间点和所述媒体时长, 确定与所述起始播放时间点和所述媒体时长对应 的 MPD分片, 并向所述客户端反馈所述 MPD分片, 还包括:
如果所述第一 MPD分片描述的媒体时长小于所述媒体时长,所述服务器在 所述 MPD分片文件中从所述第一 MPD分片开始向后查找 N个 MPD分片, 并 向所述客户端反馈所述 N个所述 MPD分片, 直至所述第一 MPD分片和所述 N 个所述 MPD分片描述的媒体分片的总媒体时长大于等于所述客户端请求的媒体 时长, N为自然数。
14、 一种媒体文件接收方法, 其特征在于, 所述方法包括:
客户端向服务器发送包括起始播放时间点和媒体时长的媒体展示描述 MPD 分片获取请求, 以使所述服务器根据所述起始播放时间点和所述媒体时长, 确 定与所述起始播放时间点和所述媒体时长对应的 MPD分片; 所述客户端接收所述服务器反馈的与所述起始播放时间点和所述媒体时长 对应的 MPD分片;
所述客户端根据所述服务器反馈的所述 MPD分片,向所述服务器发送媒体 分片获取请求, 以使所述服务器查找所述 MPD分片描述的媒体分片;
所述客户端接收所述服务器反馈的所述 MPD分片描述的媒体分片。
15、 根据权利要求 14所述的方法, 其特征在于, 所述客户端接收所述服务 器反馈的与所述起始播放时间点和所述媒体时长对应的 MPD分片包括:
所述客户端接收所述服务器反馈的播放时间包括所述起始播放时间点的媒 体分片对应的第一 MPD分片。
16、 根据权利要求 15所述的方法, 其特征在于, 所述客户端接收所述服务 器反馈的与所述起始播放时间点和所述媒体时长对应的 MPD分片, 还包括: 如果所述第一 MPD分片描述的媒体时长小于所述媒体时长,所述客户端接 收所述服务器反馈的 N个所述 MPD分片,直至所述第一 MPD分片和所述 N个 所述 MPD分片描述的媒体分片的总媒体时长大于等于所述客户端请求的媒体时 长, N为自然数。
17、根据权利要求 14-16任意一项所述的方法, 其特征在于, 在所述客户端 接收所述服务器反馈的所述 MPD分片描述的媒体分片之后, 还包括:
如果所述服务器反馈的 MPD分片所描述的媒体分片的播放时间包括下一个 播放时间点, 所述客户端根据所述服务器反馈的 MPD分片中的媒体描述信息, 从所述服务器获取所述下一个播放时间点对应的媒体分片。
18、 一种媒体文件接收装置, 其特征在于, 所述装置包括:
查找模块, 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD分 片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD分 片所对应的媒体分片的播放时间包括所述起始播放时间点;
发送模块, 用于向所述服务器发送包括所述第一 MPD分片的 MPD分片地 址的第一 MPD分片获取请求,以使所述服务器根据所述第一 MPD分片的 MPD 分片地址在预存储的 MPD分片文件中得到所述第一 MPD分片; 所述发送模块, 还用于根据所述第一 MPD分片中的媒体描述信息, 向所述 服务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获 取并反馈所述第一 MPD分片描述的媒体分片;
接收模块, 用于接收所述服务器反馈的所述第一 MPD分片;
所述接收模块,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒 体分片。
19、 根据权利要求 18所述的装置, 其特征在于:
所述发送模块, 还用于向所述服务器发送 MPD分片索引文件获取请求; 所述接收模块,还用于接收所述服务器根据所述 MPD分片索引文件获取请 求反馈的所述媒体展示描述 MPD分片索引文件。
20、 一种媒体文件接收装置, 其特征在于, 所述装置包括:
查找模块, 用于根据用户请求的起始播放时间点, 在媒体展示描述 MPD分 片索引文件中查找第一 MPD分片, 其中, 所述第一 MPD分片所对应的媒体分 片的播放时间包括所述起始播放时间点; 所述媒体展示描述 MPD分片索引文件 包括至少一个 MPD分片且包括至少一个 MPD分片的分片地址;
发送模块,用于如果所述查找模块在所述媒体展示描述 MPD分片索引文件 中查找到了所述第一 MPD分片 , 根据所述第一个 MPD分片中媒体描述信息, 向所述服务器发送媒体分片请求,
接收模块, 用于接收所述服务器根据所述媒体分片请求反馈的所述第一个 MPD分片描述的媒体分片。
21、 根据权利要求 20所述的接收装置, 其特征在于:
所述查找模块,还用于如果所述查找模块在所述媒体展示描述 MPD分片索 引文件中查找不到所述第一 MPD分片, 根据用户请求的起始播放时间点, 在媒 体展示描述 MPD分片索引文件中查找所述第一 MPD分片的 MPD分片地址; 所述发送模块, 还用于向所述服务器发送包括所述第一 MPD分片的 MPD 分片地址的第一 MPD分片获取请求, 以使所述服务器根据所述第一 MPD分片 的 MPD地址在预存储的 MPD分片文件中得到所述第一 MPD分片; 所述接收模块, 还用于接收所述服务器反馈的所述第一 MPD分片; 所述发送模块, 还用于根据所述第一 MPD分片中的媒体描述信息, 向所述 服务器发送媒体分片获取请求, 以使所述服务器根据所述媒体分片获取请求获 取并反馈所述第一 MPD分片描述的媒体分片;
所述接收模块,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒 体分片。
22、 根据权利要求 20或 21所述的接收装置, 其特征在于:
所述发送模块,还用于从媒体展示描述 MPD分片索引文件中获取第一 MPD 分片的 MPD分片地址之前, 向服务器发送 MPD分片索引文件获取请求;
所述接收模块, 还用于接收所述服务器反馈的所述 MPD分片索引文件; 所述接收模块, 还用于获取用户请求信息, 所述用户请求信息包括用户请 求的起始播放点。
23、 一种媒体文件发送装置, 其特征在于, 所述装置包括:
接收模块,用于接收客户端发送的包括媒体展示描述 MPD分片地址的 MPD 分片获取请求;
查找模块, 用于根据所述接收模块接收的 MPD 分片获取请求在预存储的 MPD分片文件中查找与所述 MPD分片地址对应的 MPD分片;
发送模块, 用于向所述客户端反馈所述查找模块查找到的所述 MPD分片; 所述接收模块, 还用于接收所述客户端发送的媒体分片请求, 所述发送模 块还用于向所述客户端反馈与所述媒体分片请求对应的媒体分片。
24、 根据权利要求 23所述的装置, 其特征在于:
所述接收模块,还用于接收所述客户端发送的 MPD分片索引文件获取请求; 所述发送模块,还用于向所述客户端发送与所述 MPD分片索引文件获取请 求对应的 MPD分片索引文件, 所述 MPD分片索引文件中一个 MPD分片的索 引信息包括所述 MPD分片描述的媒体分片的起始播放时间点、媒体时长和所述 MPD分片的 MPD分片地址。
25、 根据权利要求 23或 24所述的装置, 其特征在于, 所述装置还包括: MPD分片模块, 用于按照预设的媒体时长对 MPD文件进行分片, 得到至 少一个 MPD分片;
所述 MPD 分片模块, 还用于为每个 MPD 分片建立索引信息, 并保存在 MPD分片索引文件中,所述 MPD分片索引文件中一个 MPD分片的索引信息包 括所述 MPD分片描述的媒体分片的起始播放时间点、 媒体时长和所述 MPD分 片的 MPD分片地址。
26、 一种媒体文件发送装置, 其特征在于, 所述装置包括:
接收模块, 用于接收客户端发送的媒体展示描述 MPD分片获取请求, 其中 所述 MPD分片获取请求包括起始播放时间点和媒体时长;
MPD分片确定模块, 用于根据所述起始播放时间点和所述媒体时长, 确定 与所述起始播放时间点和所述媒体时长对应的 MPD分片;
发送模块, 用于向所述客户端反馈所述 MPD分片;
所述接收模块, 还用于接收所述客户端发送的媒体分片获取请求, 其中, 所述媒体分片获取请求所请求的媒体分片为所述 MPD分片所描述的;
所述发送模块,还用于向所述客户端反馈所述 MPD分片描述的所述媒体分 片。
27、 根据权利要求 26所述的装置, 其特征在于, 所述 MPD分片确定模块 具体用于:
根据所述起始播放时间点和所述媒体时长, 对 MPD文件进行解析, 在所述 MPD 文件中定位或组装与所述起始播放时间点以及所述媒体时长对应的 MPD 分片。
28、 根据权利要求 26所述的装置, 其特征在于, 所述 MPD分片确定模块 具体用于:
根据所述起始播放时间点和 MPD分片索引文件, 在预存储的 MPD分片文 件中查找播放时间包括所述起始播放时间点的媒体分片对应的第一 MPD分片。
29、 一种媒体文件传输系统, 其特征在于, 所述系统包括: 客户端和服务 所述客户端, 用于根据用户请求的起始播放时间点, 从媒体展示描述 MPD 分片索引文件中获取第一 MPD分片的 MPD分片地址, 其中, 所述第一 MPD 分片所对应的媒体分片的播放时间包括所述起始播放时间点;
所述客户端, 还用于向所述服务器发送包括所述第一 MPD分片的 MPD分 片地址的第一 MPD分片获取请求;
所述服务器, 用于根据所述第一 MPD 分片的 MPD 分片地址在预存储的 MPD分片文件中得到所述第一 MPD分片, 并向所述客户端反馈;
所述客户端, 还用于接收所述服务器反馈的所述第一 MPD分片, 并根据所 述第一 MPD分片中的媒体描述信息 , 向所述服务器发送媒体分片获取请求; 所述服务器, 还用于根据所述媒体分片获取请求获取并向所述客户端反馈 所述第一 MPD分片描述的媒体分片;
所述客户端,还用于接收所述服务器反馈的所述第一 MPD分片描述的媒体 分片。
30、 根据权利要求 29所述的系统, 其特征在于, 所述客户端, 还用于向所 述服务器发送 MPD分片索引文件获取请求; 所述服务器根据所述 MPD分片索 引文件获取请求向所述客户端反馈的所述媒体展示描述 MPD分片索引文件。
31、 一种媒体文件传输系统, 其特征在于, 包括: 客户端和服务器; 所述客户端, 用于向所述服务器发送媒体展示描述 MPD分片获取请求, 其 中所述 MPD分片获取请求包括起始播放时间点和媒体时长;
所述服务器,用于接收所述客户端发送的媒体展示描述 MPD分片获取请求; 所述服务器, 还用于根据所述起始播放时间点和所述媒体时长, 确定与所 述起始播放时间点和所述媒体时长对应的 MPD分片,并向所述客户端反馈所述 MPD分片;
所述客户端, 还用于接收所述 MPD分片, 所述客户端根据所述 MPD分片 所描述的媒体分片向所述服务器发送媒体分片获取请求;
所述服务器, 还用于接收所述客户端发送的媒体分片获取请求;
所述服务器, 还用于根据所述媒体分片获取请求, 向所述客户端反馈所述 MPD分片描述的所述媒体分片。
32、 根据权利要求 31所述的系统, 其特征在于, 所述服务器, 具体用于根 据所述起始播放时间点和所述媒体时长, 对 MPD文件进行解析, 在所述 MPD 文件中定位或组装与所述起始播放时间点以及所述媒体时长对应的 MPD分片。
33、 根据权利要求 31所述的系统, 其特征在于, 所述服务器, 具体用于根 据所述起始播放时间点和 MPD分片索引文件, 在预存储的 MPD分片文件中查 找播放时间包括所述起始播放时间点的媒体分片对应的第一 MPD分片; 向所述 客户端反馈所述第一 MPD分片。
PCT/CN2013/084513 2013-04-24 2013-09-27 媒体文件接收、媒体文件发送方法和装置及系统 WO2014173079A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP13882840.5A EP2938091B1 (en) 2013-04-24 2013-09-27 Method and device for receiving and sending media file and system
JP2016506753A JP2016519895A (ja) 2013-04-24 2013-09-27 メディアファイル受信およびメディアファイル送信方法、装置、およびシステム
KR1020157021327A KR101734168B1 (ko) 2013-04-24 2013-09-27 미디어 파일 수신 및 미디어 파일 송신 방법들, 장치들, 및 시스템들

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310144851.9A CN104125516B (zh) 2013-04-24 2013-04-24 媒体文件接收、媒体文件发送方法和装置及系统
CN201310144851.9 2013-04-24

Publications (1)

Publication Number Publication Date
WO2014173079A1 true WO2014173079A1 (zh) 2014-10-30

Family

ID=51770756

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/084513 WO2014173079A1 (zh) 2013-04-24 2013-09-27 媒体文件接收、媒体文件发送方法和装置及系统

Country Status (6)

Country Link
US (1) US9628547B2 (zh)
EP (1) EP2938091B1 (zh)
JP (1) JP2016519895A (zh)
KR (1) KR101734168B1 (zh)
CN (1) CN104125516B (zh)
WO (1) WO2014173079A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020211731A1 (zh) * 2019-04-19 2020-10-22 华为技术有限公司 一种视频播放方法及相关设备

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9954930B2 (en) * 2015-08-06 2018-04-24 Airwatch Llc Generating content fragments for content distribution
CN105872721A (zh) * 2015-12-14 2016-08-17 乐视云计算有限公司 起播速度的处理方法及装置
CN107925669B (zh) * 2016-01-28 2021-01-26 联发科技股份有限公司 一种消息交互的方法和提供媒体服务的系统
CN107027058B (zh) * 2016-01-29 2020-03-17 腾讯科技(北京)有限公司 在线媒体文件的价格评估方法、客户端及服务器
CN107438051A (zh) * 2016-05-25 2017-12-05 中兴通讯股份有限公司 流媒体快速启动方法、装置和系统
CN108574706B (zh) * 2017-03-09 2020-12-01 腾讯科技(北京)有限公司 媒体文件的推送方法及装置
CN108632642B (zh) * 2017-03-16 2021-09-03 杭州海康威视数字技术股份有限公司 流媒体推送方法及装置
CN108668179B (zh) * 2017-03-27 2021-05-14 华为技术有限公司 媒体索引文件的传输方法及相关设备
JP7175658B2 (ja) * 2018-07-25 2022-11-21 キヤノン株式会社 映像配信装置、配信方法及びプログラム
CN111510789B (zh) * 2019-01-30 2021-09-21 上海哔哩哔哩科技有限公司 视频播放方法、系统、计算机设备及计算机可读存储介质
CN112218166A (zh) * 2020-10-13 2021-01-12 湖南快乐阳光互动娱乐传媒有限公司 一种对点播视频记忆播放的启播方法及相关装置
CN113794898B (zh) * 2021-08-13 2023-03-07 网宿科技股份有限公司 Dash媒体流传输方法、电子设备及存储介质
CN114422831B (zh) * 2022-01-20 2024-03-19 北京奇艺世纪科技有限公司 媒体播放方法及装置、电子设备和可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202900B (zh) * 2007-03-12 2010-09-29 深圳市同洲电子股份有限公司 一种数字电视直播与回放的切换方法及视频服务器
CN102130936A (zh) * 2010-08-17 2011-07-20 华为技术有限公司 一种在动态http流传输方案中支持时移回看的方法和装置
CN102714662A (zh) * 2010-01-18 2012-10-03 瑞典爱立信有限公司 用于http媒体流分发的方法和装置
US20130042013A1 (en) * 2011-08-10 2013-02-14 Nokia Corporation Methods, apparatuses and computer program products for enabling live sharing of data

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
EP2114027A1 (en) * 2008-04-30 2009-11-04 Gemplus Method of detecting TV off event on a mobile terminal
KR101786051B1 (ko) * 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
US20130117413A1 (en) 2010-07-20 2013-05-09 Sharp Kabushiki Kaisha Content distribution device, content playback device, content distribution system, method for controlling a content distribution device, control program, and recording medium
KR20120010089A (ko) * 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9456015B2 (en) * 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
CN102137137B (zh) * 2010-09-17 2013-11-06 华为技术有限公司 基于http流的媒体内容动态插播方法、装置及系统
CN102148851B (zh) 2010-09-30 2014-09-17 华为技术有限公司 一种在动态http流传输中应用父母控制的方法和装置
MY168733A (en) * 2010-11-02 2018-11-29 Ericsson Telefon Ab L M Methods and devices for media description delivery
CN107071588A (zh) 2011-01-12 2017-08-18 夏普株式会社 再生装置
JP2013021574A (ja) 2011-07-12 2013-01-31 Sharp Corp 生成装置、配信サーバ、生成方法、再生装置、再生方法、再生システム、生成プログラム、再生プログラム、記録媒体およびデータ構造
US9590814B2 (en) * 2011-08-01 2017-03-07 Qualcomm Incorporated Method and apparatus for transport of dynamic adaptive streaming over HTTP (DASH) initialization segment description fragments as user service description fragments
EP2753045B2 (en) * 2011-09-30 2018-06-13 Huawei Technologies Co., Ltd. Method and device for transmitting stream media
US9294531B2 (en) * 2012-07-12 2016-03-22 Futurewei Technologies, Inc. Signaling and processing content with variable bitrates for adaptive streaming
US9716982B2 (en) * 2012-07-27 2017-07-25 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for providing interactive services in a network
US9438654B2 (en) * 2013-04-18 2016-09-06 Futurewei Technologies, Inc. Fragment interface into dynamic adaptive streaming over hypertext transfer protocol presentations

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202900B (zh) * 2007-03-12 2010-09-29 深圳市同洲电子股份有限公司 一种数字电视直播与回放的切换方法及视频服务器
CN102714662A (zh) * 2010-01-18 2012-10-03 瑞典爱立信有限公司 用于http媒体流分发的方法和装置
CN102130936A (zh) * 2010-08-17 2011-07-20 华为技术有限公司 一种在动态http流传输方案中支持时移回看的方法和装置
US20130042013A1 (en) * 2011-08-10 2013-02-14 Nokia Corporation Methods, apparatuses and computer program products for enabling live sharing of data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2938091A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020211731A1 (zh) * 2019-04-19 2020-10-22 华为技术有限公司 一种视频播放方法及相关设备

Also Published As

Publication number Publication date
CN104125516A (zh) 2014-10-29
US9628547B2 (en) 2017-04-18
KR101734168B1 (ko) 2017-05-11
EP2938091B1 (en) 2017-12-27
US20140325018A1 (en) 2014-10-30
KR20150104188A (ko) 2015-09-14
JP2016519895A (ja) 2016-07-07
EP2938091A1 (en) 2015-10-28
CN104125516B (zh) 2018-09-28
EP2938091A4 (en) 2016-02-24

Similar Documents

Publication Publication Date Title
WO2014173079A1 (zh) 媒体文件接收、媒体文件发送方法和装置及系统
US9807452B2 (en) Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
EP2391086B1 (en) Method and apparatus for playing live content
Sodagar The mpeg-dash standard for multimedia streaming over the internet
US20150256600A1 (en) Systems and methods for media format substitution
EP3425921B1 (en) Method and apparatus for transmitting and receiving adaptive streaming mechanism-based content
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
WO2013053326A1 (zh) 回看节目录制、播放方法、服务器、客户端及系统
CN105828096B (zh) 媒体流文件的处理方法和装置
WO2011147352A1 (zh) 一种在动态http流传输方案中支持时移回看的方法和装置
US9356821B1 (en) Streaming content delivery system and method
TWI616097B (zh) 串流裝置及方法、串流服務系統及記錄介質
WO2012171507A1 (zh) 向客户端传输数据文件的方法和装置
WO2016015419A1 (zh) 流媒体的播放方法与播放装置
US9876840B2 (en) Method and apparatus for dynamically generating media sequences on demand for HTTP live streaming
WO2011039614A1 (en) Systems, methods and apparatuses for media file streaming
WO2011150644A1 (zh) 一种启动阶段的流媒体数据获取、发送方法及装置
WO2015109847A1 (zh) 一种分段节目快速分发的方法、服务器及客户端
CN109151614B (zh) 一种降低hls直播播放延迟的方法及装置
WO2020078388A1 (zh) 一种流媒体数据传输方法、设备、装置和计算机存储介质
CN106658150B (zh) 一种实现回看处理的方法及装置
WO2011110117A2 (zh) 基于超文本传输协议的多码率定位播放方法、设备及系统
CN106791993B (zh) P2p直播系统及p2p直播方法
WO2012071932A1 (zh) 一种分段节目快速启动的方法及系统
CN114173145A (zh) 一种基于hls协议动态码率低延迟直播方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13882840

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013882840

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20157021327

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2016506753

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE