WO2016172967A1 - Media stream transmission method and device - Google Patents
Media stream transmission method and device Download PDFInfo
- Publication number
- WO2016172967A1 WO2016172967A1 PCT/CN2015/078125 CN2015078125W WO2016172967A1 WO 2016172967 A1 WO2016172967 A1 WO 2016172967A1 CN 2015078125 W CN2015078125 W CN 2015078125W WO 2016172967 A1 WO2016172967 A1 WO 2016172967A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- code rate
- media
- server
- media segment
- user equipment
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
Definitions
- the present invention relates to the field of communications technologies, and in particular, to a media stream transmission method and apparatus.
- Hyper Adaptive Transfer Streaming Protocol (English: Dynamic Adaptive Streaming over HTTP, abbreviation: DASH) is a rate-adaptive media streaming technology loaded on the HTTP protocol.
- the DASH technology is used to divide the media stream files (for example, video files, audio files, etc.) to be transmitted into multiple consecutive media segments (English: segment). For each media segment, the server provides multiple versions with different bitrates. For user equipment selection. The user equipment sends a media transmission request to the server according to the media presentation description (English: Media Presentation Description, MPD) file of the media stream file to be transmitted and the network condition (eg, wireless channel quality) evaluated by itself, to request to acquire the specific code. Rate of media clips.
- the MPD file is used to describe a storage format of the media stream file to be transmitted, including a storage format of each media segment. After receiving the media transmission request sent by the user equipment, the server sends the media segment of the specific code rate to the user equipment.
- the prior art provides a method: setting a DASH proxy entity with caching capability on a network node close to the user equipment, and the DASH proxy entity may obtain the data from the server.
- Each media segment is cached.
- the DASH proxy entity receives the media transmission request of the specific code rate sent by the user equipment, if the DASH proxy entity caches the specific code rate a media segment, the DASH proxy entity sends the media segment of the code rate to the user equipment; if the media segment of the specific bit rate is not cached in the DASH proxy entity, the DASH proxy entity needs to further send a media transmission request to the server to request to obtain the media segment.
- the media segment of the code rate after the DASH proxy entity receives the media segment of the code rate sent by the server, sends the media segment of the code rate to the user equipment.
- the problem with the above method is that the server sends the media segment of the specific bit rate to the DASH proxy entity only after receiving the media transmission request sent by the DASH proxy entity. Therefore, if no other user equipment requests the DASH proxy entity.
- the media segment of the specific bit rate is not cached in the DASH proxy entity, and the server still needs to wait for a media transmission request from the DASH client forwarded from the DASH proxy entity, and then forwards the request to the user equipment through the DASH proxy entity.
- the media segment of the specific code rate still cannot effectively solve the problem that the user equipment acquires the real-time performance of the media stream file to be transmitted by using the above method.
- the embodiment of the invention provides a media stream transmission method and device, which can improve the real-time performance of the user equipment to obtain the media stream file.
- a first aspect of the embodiments of the present invention provides a media stream transmission method, including:
- the server receives the first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the ith of the media stream file to be transmitted.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the server sends, to the downstream node, an i+1th media slice whose code rate is the first code rate. Segments, including:
- the server sends a code to the downstream node according to the first media transmission request
- the ith media segment of the first code rate comprising:
- the server sends the i-th media segment whose code rate is the first code rate to the downstream node.
- the first media transmission request further carries first code rate information, where The code rate information is used to indicate that the code rate of the requested media segment is the first code rate;
- the server sends the i-th media segment whose code rate is the first code rate to the downstream node.
- the method further includes:
- the server sends the i+2th media segment whose code rate is the first code rate to the downstream node.
- the method further includes:
- the second media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N, j is a positive integer, the second code rate information is used to indicate that the code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
- the server sends, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- the method before the server receives the first media transmission request sent by the downstream node, the method further includes:
- the server establishes a hypertext transfer protocol HTTP session connection with the downstream node
- the server receives a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
- the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive flow DASH proxy entity.
- a second aspect of the embodiments of the present invention provides a media stream transmission method, including:
- the user equipment sends a first media transmission request to the server, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the method further includes:
- the user equipment accesses the local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
- the user equipment receives, at a first code rate, the code rate sent by the server After the ith media segment, the method further includes:
- the user equipment plays a code rate of the ith media segment of the first code rate
- the method further includes:
- the user equipment accesses a local cache of the user equipment, and finds, in a local cache of the user equipment, an i+1th media segment whose code rate is the first code rate, and the play rate is the number The i+1th media segment of a bit rate.
- the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
- the user equipment receives the code rate sent by the server. After the i+1th media segment of the first code rate, the method further includes:
- the user equipment receives an i+2th media segment whose code rate sent by the server is the first code rate.
- the method further includes:
- the user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, where 1 ⁇ j ⁇ N, j is a positive integer.
- the second code rate is different from the first code rate;
- the user equipment sends a second media transmission request to the server, where the second media transmission request carries the second fragment information and the second rate information, the second fragment
- the information is used to indicate that the requested media segment is the jth media segment
- the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate
- the user equipment receives the jth media segment sent by the server and the code rate is the jth media segment of the second code rate.
- the method before the user equipment sends the first media transmission request to the server, the method further includes:
- the user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
- the user equipment sends a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
- a third aspect of the embodiments of the present invention provides a media stream transmission method, including:
- the hypertext transfer protocol dynamic adaptive stream DASH proxy entity receives the first media transmission request sent by the user equipment, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is The i-th media segment of the media stream file to be transmitted;
- the DASH proxy entity If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends the first media transmission request to the server;
- the DASH proxy entity receives an i+1th media segment of the first code rate sent by the server;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i, N are positive integers.
- the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
- the DASH proxy entity receives the After the code rate sent by the server is the i+1th media segment of the first code rate, the method further includes:
- the DASH proxy entity receives the i+2th media segment that the code rate sent by the server is the first code rate.
- the method further includes:
- the DASH proxy entity receives the second media transmission request sent by the user equipment, where the second media transmission request carries the second fragment information and the second rate information, where the second fragment information is used to indicate the requested media.
- the fragment is the j-th media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N, j is a positive integer, and the second rate information is used to indicate that the code rate of the requested media segment is the second code rate.
- the second code rate is different from the first code rate;
- the DASH proxy entity sends the second media transmission request to the server;
- the method before the receiving, by the DASH proxy entity, the first media transmission request sent by the user equipment, the method further includes:
- the DASH proxy entity establishes a hypertext transfer protocol HTTP session connection with the user equipment, and the DASH proxy entity establishes an HTTP session connection with the server;
- a fourth aspect of the embodiments of the present invention provides a server, including:
- a receiving unit configured to receive a first media transmission request sent by a downstream node, where the first media transmission request carries a first segment information, where the first segment information is used to indicate that the requested media segment is a media stream file to be transmitted.
- a sending unit configured to send, according to the first media transmission request, the i th media segment with a code rate of a first code rate to the downstream node;
- the sending unit is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the server further includes:
- a processing unit configured to determine, according to a play duration of the i-th media segment, a first time, where the first time is a time when the (i+1)th media segment is sent;
- the sending unit is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- the processing unit is further configured to send, by the sending unit, the downstream node Before the code rate is the ith media segment of the first code rate, the first code rate is determined according to a predefined policy.
- the first media transmission request further carries first code rate information, where The code rate information is used to indicate that the code rate of the requested media segment is the first code rate;
- the processing unit is further configured to determine, according to the first code rate information, before the sending unit sends the i th media segment whose code rate is the first code rate to the downstream node One bit rate.
- the sending unit is further configured to: after sending the i+1th media segment whose code rate is the first code rate to the downstream node, Transmitting, to the downstream node, an i+2th media segment whose code rate is the first code rate.
- the receiving unit is further configured to receive a second media transmission request that is sent by the downstream node, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
- the sending unit is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- the processing unit is further configured to: before the receiving unit receives the first media transmission request sent by the downstream node, Controlling, by the server, a hypertext transfer protocol HTTP session connection with the downstream node;
- the receiving unit is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node.
- Media clips are further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node.
- the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive flow DASH proxy entity.
- a fifth aspect of the embodiments of the present invention provides a user equipment, including:
- a sending unit configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the media stream file to be transmitted.
- a receiving unit configured to receive the ith media segment that is sent by the server to a first code rate
- the receiving unit is further configured to receive a code rate sent by the server as the first The i+1th media segment of the code rate;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the user equipment further includes:
- the processing unit is configured to access the local cache of the user equipment before the sending unit sends the first media transmission request to the server, and the i-th media segment is not found in the local cache of the user equipment.
- the user equipment further includes:
- a playing unit configured to: after the receiving unit receives the ith media segment that is sent by the server and the code rate is the first code rate, play the ith media of the first code rate Fragment
- the processing unit is further configured to: after receiving, by the receiving unit, the i+1th media segment of the first code rate sent by the server, accessing a local cache of the user equipment, and Finding an i+1th media segment whose code rate is the first code rate in a local cache of the user equipment;
- the playing unit is further configured to play the i+1th media segment whose code rate is the first code rate.
- the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
- the receiving unit is further configured to receive the sending by the server, if 1 ⁇ i ⁇ N-1 After the code rate is the i+1th media segment of the first code rate, the first and second media segments of the first code rate are received by the server.
- the processing unit is further configured to access a local part of the user equipment Caching, and not finding the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, 1 ⁇ j ⁇ N, j is a positive integer, the second code rate and the first One code rate is different;
- the sending unit is further configured to send a second media transmission request to the server, where the second media transmission request carries second segment information and second code rate information, where the second segment information is used to indicate the request
- the media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;
- the receiving unit is further configured to receive, by the server, the jth media segment whose code rate is the second code rate;
- the playing unit is further configured to play the j-th media segment whose code rate is the second code rate.
- the processing unit is further configured to: before the sending unit sends the first media transmission request to the server, Determining that the user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
- the sending unit is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media of the same media stream file of the same code rate to the user equipment. Fragment.
- a sixth aspect of the embodiments of the present invention provides a hypertext transfer protocol dynamic adaptive stream DASH proxy entity, including:
- a receiving unit configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries a first fragment information, where the first fragment information is used to indicate that the requested media segment is a media stream file to be transmitted The i-th media segment;
- a sending unit configured to send the first media transmission request to a server if the ith media segment is not cached by the DASH proxy entity;
- the receiving unit is further configured to receive the ith media segment that is sent by the server to a first code rate
- the sending unit is further configured to send, to the user equipment, the ith media segment whose code rate is the first code rate;
- the receiving unit is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i, N are positive integers.
- the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment
- the code rate is the first code rate.
- the receiving unit is further configured to: if 1 ⁇ i ⁇ N-1, After receiving the i+1th media segment of the first code rate sent by the server, receiving the i+2 media segment of the first code rate sent by the server.
- the receiving unit is further configured to receive a second media transmission request that is sent by the user equipment, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
- the sending unit is further configured to: if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, send the second media transmission request to the server;
- the receiving unit is further configured to receive, by the server, the jth media segment whose code rate is the second code rate;
- the sending unit is further configured to send, to the user equipment, the jth media segment whose code rate is the second code rate.
- the DASH proxy entity further includes:
- a processing unit configured to receive, by the receiving unit, the first media sent by the user equipment Before transmitting the request, controlling the DASH proxy entity to establish a hypertext transfer protocol HTTP session connection with the user equipment, and controlling the DASH proxy entity to establish an HTTP session connection with the server;
- the sending unit is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity.
- Media clips are used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity.
- a seventh aspect of the embodiments of the present invention provides a server, including:
- the receiver is configured to receive a first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the media stream file to be transmitted.
- a transmitter configured to send, according to the first media transmission request, the i th media segment with a code rate of a first code rate to the downstream node;
- the transmitter is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the server further includes:
- a processor configured to determine a first time according to a playing duration of the i-th media segment, where the first time is a time when the (i+1)th media segment is sent;
- the transmitter is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- the processor is further configured to send, at the sender, the downstream node Before the code rate is the ith media segment of the first code rate, the first code rate is determined according to a predefined policy.
- the first media transmission request further carries first code rate information, where A code rate information is used to indicate the bit rate of the requested media segment The first code rate;
- the processor is further configured to determine, according to the first code rate information, before the transmitter sends the i th media segment whose code rate is the first code rate to the downstream node One bit rate.
- the device is further configured to send to the downstream node, if 1 ⁇ i ⁇ N-1 After the code rate is the i+1th media segment of the first code rate, the i+2th media segment whose code rate is the first code rate is sent to the downstream node.
- the receiver is further configured to receive a second media transmission request that is sent by the downstream node, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
- the transmitter is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- the processor is further configured to: before the receiver receives the first media transmission request sent by the downstream node, Controlling, by the server, a hypertext transfer protocol HTTP session connection with the downstream node;
- the receiver is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node.
- Media clips are further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node.
- the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive stream DASH proxy entity.
- An eighth aspect of the embodiments of the present invention provides a user equipment, including:
- a transmitter configured to send a first media transmission request to the server, the first media
- the first fragment information is carried in the transmission request, where the first fragment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted;
- a receiver configured to receive the ith media segment that is sent by the server to a first code rate
- the receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the user equipment further includes:
- a processor configured to access a local cache of the user equipment, and not find the i-th media segment in a local cache of the user equipment, before the sender sends the first media transmission request to the server.
- the user equipment further includes:
- the processor is further configured to: after receiving, by the receiver, the i+1th media segment of the first code rate sent by the server, accessing a local cache of the user equipment, and Finding an i+1th media segment whose code rate is the first code rate in a local cache of the user equipment;
- the player is further configured to play the i+1th media segment whose code rate is the first code rate.
- the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
- the receiver is further configured to: after receiving the i+1th media segment of the first code rate sent by the server, Receiving, by the server, a code rate of the i+2 media segments of the first code rate.
- the processor is further configured to access a local cache of the user equipment, and is not in the user equipment Finding, in the local cache, the jth media segment whose code rate is the second code rate, 1 ⁇ j ⁇ N, j is a positive integer, and the second code rate is different from the first code rate;
- the transmitter is further configured to send a second media transmission request to the server, where the second media transmission request carries second segment information and second code rate information, where the second segment information is used to indicate the request
- the media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;
- the receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;
- the player is further configured to play the j-th media segment whose code rate is the second code rate.
- the processor is further configured to: before the sending, by the sender, the first media transmission request to the server, Determining that the user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
- the transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media of the same media stream file of the same code rate to the user equipment. Fragment.
- a ninth aspect of the embodiments of the present invention provides a hypertext transfer protocol dynamic adaptive stream DASH proxy entity, including:
- a receiver configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries a first fragment information, where the first fragment information is used to indicate that the requested media segment is a media stream file to be transmitted.
- a transmitter if the ith media is not cached by the DASH proxy entity Fragment, sending the first media transmission request to the server;
- the receiver is further configured to receive the ith media segment that is sent by the server to a first code rate
- the transmitter is further configured to send, to the user equipment, the i th media segment whose code rate is the first code rate;
- the receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i, N are positive integers.
- the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment
- the code rate is the first code rate.
- the receiver is further configured to: if 1 ⁇ i ⁇ N-1, After receiving the i+1th media segment of the first code rate sent by the server, receiving the i+2 media segment of the first code rate sent by the server.
- the receiver is further configured to receive a second media transmission request that is sent by the user equipment, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1 ⁇ j ⁇ N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
- the transmitter is further configured to: if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, send the second media transmission request to the server;
- the receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;
- the transmitter is further configured to send, to the user equipment, the jth media segment whose code rate is the second code rate.
- the DASH proxy entity further includes:
- a processor configured to: after the receiver receives the first media transmission request sent by the user equipment, control the DASH proxy entity to establish a hypertext transfer protocol HTTP session connection with the user equipment, and control the DASH proxy entity and The server establishes an HTTP session connection;
- the transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity.
- Media clips are used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity.
- the media stream transmission method and apparatus provided by the embodiment of the present invention, after the server sends the i-th media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the code rate is sent to the downstream node.
- the i+1th media segment of the code rate does not need to wait for the request of the downstream node, so that the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced.
- the waiting delay can improve the real-time performance of the downstream node to obtain the media stream file.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- FIG. 1 is a flowchart of a media stream transmission method according to an embodiment of the present invention
- FIG. 2 is a flowchart of another media stream transmission method according to an embodiment of the present invention.
- FIG. 3 is a flowchart of another media stream transmission method according to an embodiment of the present invention.
- FIG. 4 is a flowchart of another media stream transmission method according to an embodiment of the present invention.
- FIG. 5 is a flowchart of another media stream transmission method according to an embodiment of the present invention.
- FIG. 6 is a schematic structural diagram of a server according to an embodiment of the present disclosure.
- FIG. 7 is a schematic structural diagram of another server according to an embodiment of the present disclosure.
- FIG. 8 is a schematic structural diagram of a user equipment according to an embodiment of the present disclosure.
- FIG. 9 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure.
- FIG. 10 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure.
- FIG. 11 is a schematic structural diagram of a DASH proxy entity according to an embodiment of the present disclosure.
- FIG. 12 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present disclosure.
- FIG. 13 is a schematic structural diagram of another server according to an embodiment of the present disclosure.
- FIG. 14 is a schematic structural diagram of another server according to an embodiment of the present disclosure.
- FIG. 15 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure.
- FIG. 16 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure.
- FIG. 17 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure.
- FIG. 18 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present disclosure.
- FIG. 19 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present invention.
- the embodiment of the present invention is applied to the DASH technology.
- the DASH technology is used, and the media stream files to be transmitted (including video files and audio files, etc.) are divided into multiple consecutive media segments.
- the server For each media segment, the server provides multiple different Rate version For user equipment selection.
- the server in this document is a server that stores all media segments of a media stream file to be transmitted.
- the user equipment in this article can be a mobile phone, a personal computer (English: personal computer, abbreviation: PC), a notebook computer, a tablet computer, and the like.
- This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a server.
- the media stream transmission method provided by the embodiment of the present invention includes:
- the server receives a first media transmission request sent by a downstream node.
- the downstream node is specifically a network node that is located downstream of the server and has a cache capability.
- the downstream node may be a user equipment, or the downstream node may be a DASH proxy entity.
- the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted, and the media stream file to be transmitted is divided into N consecutive media segments.
- the media segment, 1 ⁇ i ⁇ N, i and N are positive integers.
- the media stream file to be transmitted may be a video file or an audio file or the like.
- the media stream file to be transmitted is a video file with a playing time of 1 minute.
- the video file is divided into 10 consecutive media segments with a playback duration of 6 seconds, that is, the first media segment contains the 0th to the second of the video file.
- the second media segment contains the 6th to 12th video of the video file
- the third media segment contains the 12th to 18th video of the video file and so on.
- the video file may be divided into N consecutive media files whose playing durations are not equal, as long as the content of the video images of the N media segments are continuous, which is not limited in this embodiment of the present invention.
- the server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
- the first code rate is determined by the server, and the server may determine the first code rate according to a predefined policy, or may determine the first code rate by using other methods.
- the embodiment here does not limit the manner of determining the first code rate.
- the predefined policies include: the correspondence between the current load situation of the server and the code rate, the correspondence between the current network congestion and the code rate, and the user type of the user equipment (eg, gold medal users, silver medal users, bronze users, etc.) and codes.
- the corresponding relationship between the rate and the like is not specifically limited in the embodiment of the present invention.
- the server sends, to the downstream node, an i+1th media segment whose code rate is the first code rate.
- the i+1th media segment is a media segment that is continuous with the i th media segment.
- the code rate of the media segment of the media stream file transmitted in a certain period of time remains unchanged. Therefore, the code rate of the i+1th media segment sent by the server to the downstream node and the code rate of the i th media segment The same, all are the first code rate.
- the server sends a code rate of 500 kbps to the downstream node after transmitting the first media segment with a code rate of 500 kbps to the downstream node.
- the second media clip may be further send the third media segment, the fourth media segment, and the like with a code rate of 500 kbps to the downstream node.
- the media stream transmission method provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the code rate is sent to the downstream node as the first code.
- the i+1th media segment of the rate does not need to wait for the request of the downstream node. Therefore, the waiting in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced.
- the delay can improve the real-time performance of the downstream node to obtain the media stream file.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a user equipment.
- the media stream transmission method provided by the embodiment of the present invention includes:
- the user equipment sends a first media transmission request to the server.
- the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
- the media stream file to be transmitted is divided into N consecutive media segments, 1 ⁇ i ⁇ N, and i and N are both positive integers.
- the user equipment receives an ith media segment whose code rate is the first code rate.
- the user equipment receives, by the server, a code rate of the i+1th media segment of the first code rate.
- the media stream transmission method provided by the embodiment of the present invention after the user equipment receives the ith media segment of the first code rate sent by the server, and does not need to request the server again, the code rate sent by the receiving server is the first.
- the i+1th media segment of the code rate so that the waiting time delay in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art can be reduced, and the user equipment can be improved.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a DASH proxy entity.
- the media stream transmission method provided by the embodiment of the present invention includes:
- the DASH proxy entity receives the first media transmission request sent by the user equipment.
- the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
- the media stream file to be transmitted is divided into N consecutive media segments, 1 ⁇ i ⁇ N, and i and N are both positive integers.
- the DASH proxy entity If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends a first media transmission request to the server.
- the DASH proxy entity does not cache the i-th media segment.
- the DASH proxy entity receives the ith media segment of the first code rate sent by the server, and sends the ith media segment whose code rate is the first code rate to the user equipment.
- the DASH proxy entity receives the i+1th media segment sent by the server with a code rate of the first code rate.
- the DASH proxy entity may send the receiving server by sending the i+1th media segment whose code rate is the first bit rate after receiving the ith media segment of the first bit rate sent by the server.
- the code rate is the i+1th media segment of the first code rate.
- the DASH proxy entity has cached the i+1th media segment whose code rate is the first code rate. Therefore, the DASH proxy entity may The i+1th media segment whose code rate is the first code rate is sent to the user equipment.
- the media stream transmission method provided by the embodiment of the present invention, after the DASH proxy entity receives the ith media segment of the first code rate sent by the server, and does not need to request the server again, the code rate sent by the server can be received.
- the i+1th media segment of the code rate can reduce the waiting time delay in the process of obtaining the i+1th media segment of the first bit rate by the DASH proxy entity in the prior art.
- the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code.
- the waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of the server interacting with the user equipment.
- the media stream transmission method provided by the embodiment of the present invention includes:
- S401 The server establishes a hypertext transfer protocol (English: HyperText Transfer Protocol, abbreviation: HTTP) session connection with the user equipment.
- HTTP HyperText Transfer Protocol
- the user equipment sends a push function enable message to the server.
- the push (PUSH) function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment, that is, the server does not need to wait for the media transmission request message sent by the user equipment, and directly sends the media transmission request message to the user equipment. Send consecutive media segments of the same media stream file of the same code rate.
- the format of the push function enable message can be:
- the server sends a media presentation description (English: Media Presentation Description, MPD) file to the user equipment.
- a media presentation description English: Media Presentation Description, MPD
- the MPD file is used to indicate a storage format of each media segment of the media stream file to be transmitted. After the user equipment obtains the MPD file, the user equipment can request the media segment from the server as needed.
- the MPD file For a detailed description of the MPD file, reference may be made to the related description in the prior art, and details are not described herein again.
- the user equipment accesses the local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers. If there is no i-th media segment in the local cache of the user equipment, the user equipment needs to request the i-th media segment from the server.
- the user equipment sends a first media transmission request to the server.
- the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
- the first segment information may be an identifier of the ith media segment, and is represented by an ID.
- the identifier of the i-th media segment is an ID
- the identifier of the i+1th media segment is ID+2
- the identifier of the i+1th media segment is ID+4.
- the server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate.
- the server determines the first code rate according to the predefined policy, and sends the code rate to the user equipment. i media clips.
- the predefined policies include: the correspondence between the current load situation of the server and the code rate, the correspondence between the current network congestion and the code rate, and the user type of the user equipment (eg, gold medal users, silver medal users, bronze users, etc.) and codes.
- the corresponding relationship between the rate and the like is not specifically limited in the embodiment of the present invention.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the server determines the first code rate according to the first code rate information, and sends the ith media segment whose code rate is the first code rate to the user equipment.
- the user equipment plays the ith media segment of the first code rate.
- the server sends, to the user equipment, an i+1th media segment whose code rate is the first code rate.
- S408 may include: S408a and S408b.
- the server determines, according to the playing duration of the i-th media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
- the first moment may be a time earlier than or equal to the end of the ith media segment.
- the playing time of the i-th media segment is 6 seconds. If the server sends the i-th media segment with the first bit rate to the user equipment at the first minute and 0 seconds, regardless of the transmission time of the i-th media segment, Then the server can determine that the first time is any time between 1 minute 0 seconds and 1 minute 6 seconds.
- S408b The server sends, to the user equipment, the i+1th media segment whose code rate is the first code rate.
- the user equipment accesses the local cache of the user equipment, and finds the i+1th media segment whose code rate is the first code rate in the local cache of the user equipment, and plays the i+1th of the first code rate.
- Media clips are included in the local cache of the user equipment.
- the server sends, to the user equipment, an i+2th media segment whose code rate is the first code rate.
- the user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment.
- the first code rate is 500 kbps and the second code rate is 1000 kbps.
- the server After the user equipment receives a plurality of media segments with a code rate of 500 kbps, if it detects that the current network condition is good (for example, the quality of the wireless channel of the user equipment is superior), the server is requested to send the media with a code rate of 1000 kbps. Fragments for a better user experience.
- the user equipment sends a second media transmission request to the server.
- the second media transmission request carries the second segment information and the second code rate information, the second segment information is used to indicate that the requested media segment is the jth media segment, and the second rate information is used to indicate the requested media segment.
- the code rate is the second code rate.
- the server sends, to the user equipment, a jth media segment with a code rate of a second code rate according to the second media transmission request.
- the server When the server receives the second media transmission request, if the media segment whose code rate is the first code rate is still being transmitted, the server terminates the transmission of the media segment whose code rate is the first code rate.
- the user equipment plays the jth media segment with the second bit rate.
- the server may further send, to the user equipment, a plurality of consecutive media segments with a code rate of a first code rate; after S413, the server may further send the code rate to the user equipment for a second code rate.
- the plurality of consecutive media segments are merely exemplified in the embodiment of the present invention, and do not limit the number of consecutive media segments that the server pushes to the user equipment.
- the media stream transmission method provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the user equipment according to the first media transmission request, the code rate is sent to the user equipment as the first code.
- the i+1th media segment of the rate does not need to wait for the request of the user equipment, therefore, the waiting in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art can be reduced.
- the delay can improve the real-time performance of the user equipment to obtain the media stream file.
- the server may send the media rate to the user equipment at a new code rate (the changed code rate, that is, the second code rate in this embodiment). Fragment.
- the embodiment of the present invention adopts a method for actively sending by a server, no user is needed.
- the device sends the media transmission request multiple times, which can reduce the signaling burden between the devices compared with the prior art request-response message interaction.
- This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of interaction between a server, a DASH proxy entity, and a user equipment.
- the media stream transmission method provided by the embodiment of the present invention includes:
- S501 The server establishes an HTTP session connection with the DASH proxy entity, and the DASH proxy entity establishes an HTTP session connection with the user equipment.
- the DASH proxy entity sends a push function enable message to the server.
- the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity, that is, the server does not need to wait for the media transmission request message sent by the DASH proxy entity, and directly sends the media transfer request message to the DASH proxy entity. Send consecutive media segments of the same media stream file of the same code rate.
- the server sends an MPD file to the DASH proxy entity.
- the DASH proxy entity sends an MPD file to the user equipment.
- the user equipment accesses a local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers. If there is no i-th media segment in the local cache of the user equipment, the user equipment needs to request the i-th media segment from the server.
- the user equipment sends a first media transmission request to the DASH proxy entity.
- the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
- the DASH proxy entity If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends a first media transmission request to the server.
- the server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the DASH proxy entity.
- the server determines the first code rate according to the predefined policy, and sends the ith media segment whose code rate is the first code rate to the DASH proxy entity.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the server determines the first code rate according to the first code rate information, and sends the ith media segment whose code rate is the first code rate to the DASH proxy entity.
- the DASH proxy entity sends the ith media segment whose code rate is the first code rate to the user equipment.
- the user equipment plays the ith media segment of the first code rate.
- the server sends, to the DASH proxy entity, an i+1th media segment whose code rate is the first code rate.
- S511 may include: S511a and S511b.
- the server determines, according to the playing duration of the i-th media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
- the first moment may be a time earlier than or equal to the end of the ith media segment.
- the playing time of the i-th media segment is 6 seconds. If the server sends the i-th media segment with the first bit rate to the DASH proxy entity in the first minute and 0 seconds, regardless of the transmission time of the i-th media segment. Then, the server can determine that the first time is any time between the first minute 0 seconds and the first minute 6 seconds.
- the server sends, to the DASH proxy entity, the i+1th media segment whose code rate is the first code rate.
- the user equipment requests, from the DASH proxy entity, an i+1th media segment whose code rate is the first code rate.
- the DASH proxy entity sends, to the user equipment, an i+1th media segment whose code rate is the first code rate.
- the DASH proxy entity may send the i+1th media segment whose buffered code rate is the first code rate to the user equipment, which reduces the i+ of the first bit rate of the user equipment in the prior art. Waiting delay in the process of 1 media segment.
- the user equipment plays the i+1th media segment of the first code rate.
- the server sends, to the DASH proxy entity, an i+2 media segment whose code rate is the first code rate.
- the user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment.
- the user equipment sends a second media transmission request to the DASH proxy entity.
- the second media transmission request carries the second segment information and the second code rate information, the second segment information is used to indicate that the requested media segment is the jth media segment, and the second rate information is used to indicate the requested media segment.
- the code rate is the second code rate.
- the DASH proxy entity If the DASH proxy entity does not cache the jth media segment with the second rate, the DASH proxy entity sends a second media transmission request to the server.
- the server sends, according to the second media transmission request, a jth media segment whose code rate is the second code rate to the DASH proxy entity.
- the server When the server receives the second media transmission request, if the media segment whose code rate is the first code rate is still being transmitted, the server terminates the transmission of the media segment whose code rate is the first code rate.
- the DASH proxy entity sends the jth media segment with a code rate of the second code rate to the user equipment.
- the user equipment plays the j-th media segment with the second bit rate.
- the server may further send a plurality of consecutive media segments with a code rate of the first code rate to the DASH proxy entity; after S519, the server may further send the code rate to the DASH proxy entity for the second code.
- the plurality of consecutive media segments of the rate are only exemplified in the embodiment of the present invention, and do not limit the number of consecutive media segments sent by the server to the DASH proxy entity.
- the DASH server sends the i+1th media segment whose code rate is the first code rate to the DASH proxy entity, and therefore, when the user equipment requests the DASH proxy entity, the code rate is the first.
- the DASH proxy entity may send the cached code rate to the user equipment when the i+1th media segment of the code rate is the first.
- the i+1th media segment of the code rate reduces the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art, and can improve the user equipment to obtain the media.
- the real-time nature of the stream file is i+1th media segment whose code rate is the first code rate to the DASH proxy entity, and therefore, when the user equipment requests the DASH proxy entity, the code rate is the first.
- the DASH proxy entity may send the cached code rate to the user equipment when the i+1th media segment of the code rate is the first.
- the i+1th media segment of the code rate reduces the waiting delay in the process of the user equipment
- the embodiment of the present invention adopts a method for actively sending by a server, and does not need to send a media transmission request multiple times by the DASH proxy entity, which can reduce signaling between devices compared with the method of interacting with the request-response message in the prior art. burden.
- An embodiment of the present invention provides a server, as shown in FIG. 6, including: a receiving unit 61 and a sending unit 62.
- the receiving unit 61 is configured to receive a first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th of the media stream file to be transmitted.
- Media clips are configured to indicate that the requested media segment is the i-th of the media stream file to be transmitted.
- the sending unit 62 is configured to send, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
- the sending unit 62 is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the server in the embodiment of the present invention further includes: a processing unit 63.
- the processing unit 63 is configured to determine, according to the playing duration of the ith media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
- the sending unit 62 is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- the processing unit 63 is further configured to determine, according to a predefined policy, the first code rate before the sending unit 62 sends the ith media segment whose code rate is the first code rate to the downstream node.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the processing unit 63 is further configured to send the code rate to the downstream node at the sending unit 62. Before the i-th media segment of a code rate, the first code rate is determined according to the first code rate information.
- the sending unit 62 is further configured to send the code rate to the downstream node after transmitting the i+1th media segment whose code rate is the first code rate to the downstream node.
- the receiving unit 61 is further configured to receive a second media transmission request sent by the downstream node, where the second media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate the requested media segment.
- the second media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate the requested media segment.
- the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
- the sending unit 62 is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- processing unit 63 is further configured to: before the receiving unit 61 receives the first media transmission request sent by the downstream node, the control server establishes an HTTP session connection with the downstream node.
- the receiving unit 61 is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
- the downstream node is a user equipment; or the downstream node is a DASH proxy entity.
- the server after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the server sends the code rate to the downstream node at the first code rate. i+1 media segments without waiting for the request of the downstream node, therefore, the waiting delay in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. It can improve the real-time performance of the downstream node to obtain the media stream file.
- the embodiment of the present invention adopts a method for actively sending by a server, the downstream node does not need to send the request multiple times, which is related to the prior art. Compared to the way the request-response message interacts, the signaling burden between devices can be reduced.
- the embodiment of the present invention further provides a user equipment, as shown in FIG. 8, comprising: a sending unit 71 and a receiving unit 72.
- the sending unit 71 is configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted. Fragment.
- the receiving unit 72 is configured to receive, by the server, an ith media segment whose code rate is the first code rate.
- the receiving unit 72 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the user equipment in the embodiment of the present invention further includes: a processing unit 73.
- the processing unit 73 is configured to access the local cache of the user equipment before the sending unit 71 sends the first media transmission request to the server, and does not find the i-th media segment in the local cache of the user equipment.
- the user equipment in the embodiment of the present invention further includes: a playing unit 74.
- the playing unit 74 is configured to: after the receiving unit 72 receives the ith media segment whose code rate is the first code rate, the playing rate is the ith media segment of the first code rate.
- the processing unit 73 is further configured to: after receiving, by the receiving unit 72, the i+1th media segment whose code rate is the first code rate, accessing the local cache of the user equipment, and searching for the code in the local buffer of the user equipment.
- the rate is the i+1th media segment of the first code rate.
- the playing unit 74 is further configured to play the i+1th media segment whose code rate is the first code rate.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the receiving unit 72 is further configured to: after the i+1th media segment of the first code rate sent by the receiving server is sent, the receiving server sends the code rate The i+2th media segment of a bit rate.
- processing unit 73 is further configured to access a local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, where 1 ⁇ j ⁇ N,j is A positive integer, the second code rate is different from the first code rate.
- the sending unit 71 is further configured to send a second media transmission request to the server, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate that the requested media segment is the jth media The fragment, the second rate information is used to indicate that the code rate of the requested media segment is the second code rate.
- the receiving unit 72 is further configured to receive, by the server, a j-th media segment whose code rate is a second code rate.
- the playing unit 74 is further configured to play the jth media segment whose code rate is the second code rate.
- processing unit 73 is further configured to control the user equipment to establish an HTTP session connection with the server before the sending unit 71 sends the first media transmission request to the server.
- the sending unit 71 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
- the code rate sent by the server may be the first code rate.
- the i+1th media segment can reduce the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first bit rate, and can improve the user equipment to obtain the media.
- the real-time nature of the stream file adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times, and interacts with the request-response message in the prior art. Compared with the way, the signaling burden between devices can be alleviated.
- the embodiment of the present invention further provides a DASH proxy entity, as shown in FIG. 11, comprising: a receiving unit 81 and a sending unit 82.
- the receiving unit 81 is configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i th of the media stream file to be transmitted.
- Media clips are configured to indicate that the requested media segment is the i th of the media stream file to be transmitted.
- the sending unit 82 is configured to send a first media transmission request to the server if the DASH proxy entity does not cache the i-th media segment.
- the receiving unit 81 is further configured to receive, by the server, an ith media segment whose code rate is the first code rate.
- the sending unit 82 is further configured to send, to the user equipment, an ith media segment whose code rate is the first code rate.
- the receiving unit 81 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i, N are positive integers.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the receiving unit 81 is further configured to: if 1 ⁇ i ⁇ N-1, the code rate sent by the receiving server is after the i+1th media segment of the first code rate sent by the receiving server The i+2th media segment of a bit rate.
- the receiving unit 81 is further configured to receive a second media transmission request sent by the user equipment, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
- the sending unit 82 is further configured to: if the DASH proxy entity does not cache the jth media segment with the second rate, the second media transmission request is sent to the server.
- the receiving unit 81 is further configured to receive the jth rate of the second bit rate sent by the server. Media clips.
- the sending unit 82 is further configured to send, to the user equipment, a jth media segment whose code rate is the second code rate.
- the DASH proxy entity in the embodiment of the present invention further includes: a processing unit 83.
- the processing unit 83 is configured to control the DASH proxy entity to establish an HTTP session connection with the user equipment before the receiving unit 81 receives the first media transmission request sent by the user equipment, and control the DASH proxy entity to establish an HTTP session connection with the server.
- the sending unit 82 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity.
- the DASH proxy entity provided by the embodiment of the present invention can receive the first bit rate of the first bit rate after the DASH proxy entity receives the ith media segment of the first code rate, and the received code rate of the receiving server is the first.
- the i+1th media segment of the code rate therefore, can reduce the waiting delay in the process of the DASH proxy entity acquiring the i+1th media segment of the first code rate in the prior art.
- the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code.
- the waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- the embodiment of the present invention further provides a server, as shown in FIG. 13, comprising: a receiver 91 and a transmitter 92.
- the receiver 91 is configured to receive a first media transmission request sent by the downstream node, where The media segment request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
- the transmitter 92 is configured to send, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
- the transmitter 92 is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the server in the embodiment of the present invention further includes: a processor 93.
- the processor 93 is configured to determine, according to the playing duration of the ith media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
- the transmitter 92 is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- the processor 93 is further configured to determine, according to a predefined policy, the first code rate before the transmitter 92 sends the i-th media segment whose code rate is the first code rate to the downstream node.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the processor 93 is further configured to determine the first code rate according to the first code rate information before the transmitter 92 sends the ith media segment whose code rate is the first code rate to the downstream node.
- the transmitter 92 is further configured to send the code rate to the downstream node after transmitting the i+1th media segment whose code rate is the first code rate to the downstream node.
- the receiver 91 is further configured to receive a second media transmission request sent by the downstream node, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
- the transmitter 92 is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- the processor 93 is further configured to: before the receiver 91 receives the first media transmission request sent by the downstream node, the control server establishes an HTTP session connection with the downstream node.
- the receiver 91 is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
- the downstream node is a user equipment; or the downstream node is a DASH proxy entity.
- the server after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the server sends the code rate to the downstream node at the first code rate. i+1 media segments without waiting for the request of the downstream node, therefore, the waiting delay in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. It can improve the real-time performance of the downstream node to obtain the media stream file.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- the embodiment of the invention further provides a user equipment, as shown in FIG. 15, comprising: a transmitter A1 and a receiver A2.
- the sender A1 is configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted. Fragment.
- the receiver A2 is configured to receive an ith media segment that is sent by the server and has a first rate.
- the receiver A2 is further configured to receive the i+1 of the first code rate sent by the server. Media clips.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i and N are positive integers.
- the user equipment in the embodiment of the present invention further includes: a processor A3.
- the processor A3 is configured to access the local cache of the user equipment before the sender A1 sends the first media transmission request to the server, and does not find the i-th media segment in the local cache of the user equipment.
- the user equipment in the embodiment of the present invention further includes: a player A4.
- the player A4 is configured to play the ith media segment of the first code rate after the receiver A2 receives the ith media segment of the first code rate sent by the server.
- the processor A3 is further configured to: after the receiver A2 receives the i+1th media segment that is sent by the server and is the first code rate, access the local cache of the user equipment, and find the code in the local cache of the user equipment.
- the rate is the i+1th media segment of the first code rate.
- the player A4 is further configured to play the i+1th media segment whose code rate is the first code rate.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the receiver A2 is further configured to: after the i+1th media segment of the first code rate sent by the receiving server, the receiving server sends the code rate The i+2th media segment of a bit rate.
- the processor A3 is further configured to access a local cache of the user equipment, and the jth media segment whose code rate is the second code rate is not found in the local buffer of the user equipment, where 1 ⁇ j ⁇ N,j is A positive integer, the second code rate is different from the first code rate.
- the transmitter A1 is further configured to send a second media transmission request to the server, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate that the requested media segment is the jth media
- the second rate information is used to indicate that the code rate of the requested media segment is the second code rate.
- the receiver A2 is further configured to receive the jth rate of the second rate rate sent by the server. Media clips.
- the player A4 is further configured to play the jth media segment whose code rate is the second code rate.
- processor A3 is further configured to control the user equipment to establish an HTTP session connection with the server before the sender A1 sends the first media transmission request to the server.
- the sender A1 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
- the code rate sent by the server may be the first code rate.
- the i+1th media segment can reduce the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first bit rate, and can improve the user equipment to obtain the media.
- the real-time nature of the stream file adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- the embodiment of the present invention further provides a DASH proxy entity, as shown in FIG. 18, including: a receiver B1 and a transmitter B2.
- the receiver B1 is configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is the i-th of the media stream file to be transmitted.
- Media clips are configured to indicate that the requested media segment is the i-th of the media stream file to be transmitted.
- the sender B2 is configured to send a first media transmission request to the server if the DASH proxy entity does not cache the i-th media segment.
- the receiver B1 is further configured to receive an ith media segment that is sent by the server and has a code rate of a first code rate.
- the transmitter B2 is further configured to send, to the user equipment, an ith media segment whose code rate is the first code rate.
- the receiver B1 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
- the media stream file to be transmitted is divided into N consecutive media segments, and 1 ⁇ i ⁇ N, i, N are positive integers.
- the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
- the receiver B1 is further configured to: if 1 ⁇ i ⁇ N-1, the code rate sent by the receiving server is after the i+1th media segment of the first code rate sent by the receiving server The i+2th media segment of a bit rate.
- the receiver B1 is further configured to receive a second media transmission request sent by the user equipment, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment.
- the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
- the transmitter B2 is further configured to send a second media transmission request to the server if the DASH proxy entity does not cache the jth media segment with the second rate.
- the receiver B1 is further configured to receive the jth media segment sent by the server and having a second rate.
- the transmitter B2 is further configured to send, to the user equipment, a jth media segment whose code rate is the second code rate.
- the DASH proxy entity in the embodiment of the present invention further includes: a processor B3.
- the processor B3 is configured to control the DASH proxy entity to establish an HTTP session connection with the user equipment, and control the DASH proxy entity to establish an HTTP session connection with the server, before the receiver B1 receives the first media transmission request sent by the user equipment.
- the sender B2 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity.
- the DASH proxy entity provided by the embodiment of the present invention can receive the first bit rate of the first bit rate after the DASH proxy entity receives the ith media segment of the first code rate, and the received code rate of the receiving server is the first.
- the i+1th media segment of the code rate therefore, can reduce the waiting delay in the process of the DASH proxy entity acquiring the i+1th media segment of the first code rate in the prior art.
- the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code.
- the waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved.
- the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
- the disclosed system, apparatus, and method may be implemented in other manners.
- the device embodiments described above are merely illustrative.
- the division of the modules or units is only a logical function division.
- there may be another division manner for example, multiple units or components may be used. Combinations can be integrated into another system, or some features can be ignored or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
- the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
- each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
- the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
- the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
- the instructions include a plurality of instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (English: processor) to perform all or part of the steps of the methods described in various embodiments of the present invention.
- the foregoing storage medium includes: a USB flash drive, a mobile hard disk, a read-only memory (English: Read-Only Memory, abbreviation: ROM), a random access memory (English: Random Access Memory, abbreviation: RAM), a magnetic disk or an optical disk, and the like.
- a USB flash drive a mobile hard disk
- a read-only memory English: Read-Only Memory, abbreviation: ROM
- a random access memory English: Random Access Memory, abbreviation: RAM
- magnetic disk or an optical disk and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Disclosed are a media stream transmission method and device, which relate to the technical field of communications and can improve the real-time performance of a user equipment acquiring a media stream file. The main design concept is: by using an active sending manner, after receiving a first media transmission request sent by a downstream node, a server sends the ith media segment with a code rate being a first code rate to the downstream node according to the first media transmission request, and subsequently sends the i+1th media segment with the code rate being the first code rate to the downstream node, wherein a media stream file to be transmitted is divided into N continuous media segments, 1 ≤ i < N, and both i and N are positive integers.
Description
本发明涉及通信技术领域,尤其涉及一种媒体流传输方法及装置。The present invention relates to the field of communications technologies, and in particular, to a media stream transmission method and apparatus.
超文本传送协议动态自适应流(英文:Dynamic Adaptive Streaming over HTTP,缩写:DASH)是一种加载在HTTP协议上的码率自适应的媒体流传输技术。Hyper Adaptive Transfer Streaming Protocol (English: Dynamic Adaptive Streaming over HTTP, abbreviation: DASH) is a rate-adaptive media streaming technology loaded on the HTTP protocol.
采用DASH技术,将待传输的媒体流文件(例如,视频文件,音频文件等)划分为多个连续的媒体片段(英文:segment),对于每一个媒体片段,服务器提供多个不同码率的版本供用户设备选择。用户设备根据待传输的媒体流文件的媒体展现描述(英文:Media Presentation Description,缩写:MPD)文件和自身评估的网络条件(例如:无线信道质量)向服务器发送媒体传输请求,以请求获取特定码率的媒体片段。其中,该MPD文件用于描述待传输的媒体流文件的存储格式,包括每一个媒体片段的存储格式。服务器在接收到用户设备发送的媒体传输请求之后,向用户设备发送该特定码率的媒体片段。但是,由于服务器与用户设备之间的端到端传输经历运营商网络的多个网络节点,当网络的状态动态变化时,特别是当网络发生拥塞时,用户设备和服务器之间的实际传输时延较长,因此,用户设备获取待传输的媒体流文件的实时性难以保证。The DASH technology is used to divide the media stream files (for example, video files, audio files, etc.) to be transmitted into multiple consecutive media segments (English: segment). For each media segment, the server provides multiple versions with different bitrates. For user equipment selection. The user equipment sends a media transmission request to the server according to the media presentation description (English: Media Presentation Description, MPD) file of the media stream file to be transmitted and the network condition (eg, wireless channel quality) evaluated by itself, to request to acquire the specific code. Rate of media clips. The MPD file is used to describe a storage format of the media stream file to be transmitted, including a storage format of each media segment. After receiving the media transmission request sent by the user equipment, the server sends the media segment of the specific code rate to the user equipment. However, since the end-to-end transmission between the server and the user equipment experiences multiple network nodes of the operator network, when the state of the network changes dynamically, especially when the network is congested, the actual transmission between the user equipment and the server is The delay is long. Therefore, it is difficult to ensure that the user equipment obtains the real-time performance of the media stream file to be transmitted.
为了提高用户设备获取待传输的媒体流文件的实时性,现有技术中提供了一种方法:在靠近用户设备的网络节点设置具有缓存能力的DASH代理实体,DASH代理实体可以将从服务器获取的各个媒体片段缓存下来。当DASH代理实体接收到用户设备发送的特定码率的媒体传输请求时,若DASH代理实体中缓存有该特定码率的
媒体片段,则DASH代理实体向用户设备发送该码率的媒体片段;若DASH代理实体中未缓存该特定码率的媒体片段,DASH代理实体则需要向服务器进一步发送媒体传输请求,以请求获取该码率的媒体片段,当DASH代理实体接收到服务器发送的该码率的媒体片段后,将该码率的媒体片段发送给用户设备。In order to improve the real-time performance of the user equipment to obtain the media stream file to be transmitted, the prior art provides a method: setting a DASH proxy entity with caching capability on a network node close to the user equipment, and the DASH proxy entity may obtain the data from the server. Each media segment is cached. When the DASH proxy entity receives the media transmission request of the specific code rate sent by the user equipment, if the DASH proxy entity caches the specific code rate
a media segment, the DASH proxy entity sends the media segment of the code rate to the user equipment; if the media segment of the specific bit rate is not cached in the DASH proxy entity, the DASH proxy entity needs to further send a media transmission request to the server to request to obtain the media segment. The media segment of the code rate, after the DASH proxy entity receives the media segment of the code rate sent by the server, sends the media segment of the code rate to the user equipment.
上述方法存在的问题是:服务器只有在接收到DASH代理实体发送的媒体传输请求后,才向DASH代理实体发送该特定码率的媒体片段,因此,若没有其他用户设备向DASH代理实体请求过该特定码率的媒体片段,则DASH代理实体中不会缓存该特定码率的媒体片段,服务器仍需要等待从DASH代理实体转发的来自DASH客户端的媒体传输请求,然后通过DASH代理实体向用户设备转发该特定码率的媒体片段,采用上述方法仍然不能有效解决用户设备获取待传输的媒体流文件的实时性的问题。The problem with the above method is that the server sends the media segment of the specific bit rate to the DASH proxy entity only after receiving the media transmission request sent by the DASH proxy entity. Therefore, if no other user equipment requests the DASH proxy entity. For a media segment of a specific code rate, the media segment of the specific bit rate is not cached in the DASH proxy entity, and the server still needs to wait for a media transmission request from the DASH client forwarded from the DASH proxy entity, and then forwards the request to the user equipment through the DASH proxy entity. The media segment of the specific code rate still cannot effectively solve the problem that the user equipment acquires the real-time performance of the media stream file to be transmitted by using the above method.
发明内容Summary of the invention
本发明的实施例提供一种媒体流传输方法及装置,可以提高用户设备获取媒体流文件的实时性。The embodiment of the invention provides a media stream transmission method and device, which can improve the real-time performance of the user equipment to obtain the media stream file.
为达到上述目的,本发明的实施例采用如下技术方案:In order to achieve the above object, embodiments of the present invention adopt the following technical solutions:
本发明实施例的第一方面,提供一种媒体流传输方法,包括:A first aspect of the embodiments of the present invention provides a media stream transmission method, including:
服务器接收下游节点发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The server receives the first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the ith of the media stream file to be transmitted. Media clip
所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段;Sending, by the server, the i th media segment with a code rate of a first code rate to the downstream node according to the first media transmission request;
所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片段;Sending, by the server, the i+1th media segment whose code rate is the first code rate to the downstream node;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第一方面,在第一方面的第一种可能的实现方式中,所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片
段,包括:With reference to the first aspect, in a first possible implementation manner of the first aspect, the server sends, to the downstream node, an i+1th media slice whose code rate is the first code rate.
Segments, including:
所述服务器根据所述第i个媒体片段的播放时长,确定第一时刻,所述第一时刻为发送所述第i+1个媒体片段的时刻;Determining, by the server, a first time according to a playing duration of the i-th media segment, where the first time is a time for sending the (i+1)th media segment;
所述服务器在所述第一时刻向所述下游节点发送码率为所述第一码率的所述第i+1个媒体片段。Sending, by the server, the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段,包括:With reference to the first aspect or the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, the server sends a code to the downstream node according to the first media transmission request The ith media segment of the first code rate, comprising:
所述服务器根据预先定义的策略确定所述第一码率;Determining, by the server, the first code rate according to a predefined policy;
所述服务器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段。The server sends the i-th media segment whose code rate is the first code rate to the downstream node.
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率;With reference to the first aspect or the first possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, the first media transmission request further carries first code rate information, where The code rate information is used to indicate that the code rate of the requested media segment is the first code rate;
所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段,包括:Sending, by the server, the ith media segment with a code rate of the first code rate to the downstream node according to the first media transmission request, including:
所述服务器根据所述第一码率信息确定所述第一码率;Determining, by the server, the first code rate according to the first code rate information;
所述服务器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段。The server sends the i-th media segment whose code rate is the first code rate to the downstream node.
结合第一方面和上述可能的实现方式,在第一方面的第四种可能的实现方式中,若1≤i<N-1,则在所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:With reference to the first aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the first aspect, if 1≤i<N-1, the code rate sent by the server to the downstream node is the After the i+1th media segment of the first code rate, the method further includes:
所述服务器向所述下游节点发送码率为所述第一码率的第i+2个媒体片段。The server sends the i+2th media segment whose code rate is the first code rate to the downstream node.
结合第一方面和上述可能的实现方式,在第一方面的第五种可能的实现方式中,所述方法还包括:With reference to the first aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the first aspect, the method further includes:
所述服务器接收所述下游节点发送的第二媒体传输请求,所述
第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;Receiving, by the server, a second media transmission request sent by the downstream node, where
The second media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j ≤ N, j is a positive integer, the second code rate information is used to indicate that the code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
所述服务器根据所述第二媒体传输请求,向所述下游节点发送码率为所述第二码率的所述第j个媒体片段。And the server sends, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
结合第一方面和上述可能的实现方式,在第一方面的第六种可能的实现方式中,在所述服务器接收下游节点发送的第一媒体传输请求之前,所述方法还包括:With reference to the first aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the first aspect, before the server receives the first media transmission request sent by the downstream node, the method further includes:
所述服务器与所述下游节点建立超文本传输协议HTTP会话连接;The server establishes a hypertext transfer protocol HTTP session connection with the downstream node;
所述服务器接收所述下游节点发送的推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The server receives a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
结合第一方面和上述可能的实现方式,在第一方面的第七种可能的实现方式中,所述下游节点为用户设备;或者,所述下游节点为超文本传送协议动态自适应流DASH代理实体。With reference to the first aspect and the foregoing possible implementation manner, in the seventh possible implementation manner of the first aspect, the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive flow DASH proxy entity.
本发明实施例的第二方面,提供一种媒体流传输方法,包括:A second aspect of the embodiments of the present invention provides a media stream transmission method, including:
用户设备向服务器发送第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The user equipment sends a first media transmission request to the server, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted. Fragment
所述用户设备接收所述服务器发送的码率为第一码率的所述第i个媒体片段;Receiving, by the user equipment, the ith media segment that is sent by the server to a first code rate;
所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;Receiving, by the user equipment, an i+1th media segment that is sent by the server and having a code rate of the first code rate;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第二方面,在第二方面的第一种可能的实现方式中,在所
述用户设备向服务器发送第一媒体传输请求之前,所述方法还包括:In conjunction with the second aspect, in a first possible implementation of the second aspect,
Before the user equipment sends the first media transmission request to the server, the method further includes:
所述用户设备访问所述用户设备的本地缓存,未在所述用户设备的本地缓存中查找到所述第i个媒体片段。The user equipment accesses the local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,在所述用户设备接收所述服务器发送的码率为第一码率的所述第i个媒体片段之后,所述方法还包括:With reference to the second aspect or the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the user equipment receives, at a first code rate, the code rate sent by the server After the ith media segment, the method further includes:
所述用户设备播放码率为所述第一码率的所述第i个媒体片段;The user equipment plays a code rate of the ith media segment of the first code rate;
在所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:After the user equipment receives the (i+1)th media segment that is sent by the server and the code rate is the first code rate, the method further includes:
所述用户设备访问所述用户设备的本地缓存,在所述用户设备的本地缓存中查找到码率为所述第一码率的第i+1个媒体片段,并播放码率为所述第一码率的第i+1个媒体片段。The user equipment accesses a local cache of the user equipment, and finds, in a local cache of the user equipment, an i+1th media segment whose code rate is the first code rate, and the play rate is the number The i+1th media segment of a bit rate.
结合第二方面和上述可能的实现方式,在第二方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。With reference to the second aspect and the foregoing possible implementation manner, in a third possible implementation manner of the second aspect, the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
结合第二方面和上述可能的实现方式,在第二方面的第四种可能的实现方式中,若1≤i<N-1,则在所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:With reference to the second aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the second aspect, if 1≤i<N-1, the user equipment receives the code rate sent by the server. After the i+1th media segment of the first code rate, the method further includes:
所述用户设备接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。The user equipment receives an i+2th media segment whose code rate sent by the server is the first code rate.
结合第二方面和上述可能的实现方式,在第二方面的第五种可能的实现方式中,所述方法还包括:With reference to the second aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the second aspect, the method further includes:
所述用户设备访问所述用户设备的本地缓存,未在所述用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率与所述第一码率不同;The user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, where 1≤j≤N, j is a positive integer. The second code rate is different from the first code rate;
所述用户设备向所述服务器发送第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段
信息用于指示请求的媒体片段为所述第j个媒体片段,所述第二码率信息用于指示请求的媒体片段的码率为所述第二码率;The user equipment sends a second media transmission request to the server, where the second media transmission request carries the second fragment information and the second rate information, the second fragment
The information is used to indicate that the requested media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;
所述用户设备接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段,并播放码率为所述第二码率的所述第j个媒体片段。The user equipment receives the jth media segment sent by the server and the code rate is the jth media segment of the second code rate.
结合第二方面和上述可能的实现方式,在第二方面的第六种可能的实现方式中,在所述用户设备向服务器发送第一媒体传输请求之前,所述方法还包括:With reference to the second aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the second aspect, before the user equipment sends the first media transmission request to the server, the method further includes:
所述用户设备与所述服务器建立超文本传输协议HTTP会话连接;The user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
所述用户设备向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The user equipment sends a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
本发明实施例的第三方面,提供一种媒体流传输方法,包括:A third aspect of the embodiments of the present invention provides a media stream transmission method, including:
超文本传送协议动态自适应流DASH代理实体接收用户设备发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The hypertext transfer protocol dynamic adaptive stream DASH proxy entity receives the first media transmission request sent by the user equipment, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is The i-th media segment of the media stream file to be transmitted;
若所述DASH代理实体未缓存有所述第i个媒体片段,则所述DASH代理实体向服务器发送所述第一媒体传输请求;If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends the first media transmission request to the server;
所述DASH代理实体接收所述服务器发送的码率为第一码率的所述第i个媒体片段,并向所述用户设备发送码率为所述第一码率的所述第i个媒体片段;Receiving, by the DASH proxy entity, the ith media segment of the first code rate sent by the server, and sending, to the user equipment, the i-th media with a code rate of the first code rate Fragment
所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The DASH proxy entity receives an i+1th media segment of the first code rate sent by the server;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
结合第三方面,在第三方面的第一种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于
指示请求的媒体片段的码率为所述第一码率。With reference to the third aspect, in a first possible implementation manner of the third aspect, the first media transmission request further carries first code rate information, where the first code rate information is used
A code rate indicating the requested media segment is the first code rate.
结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,若1≤i<N-1,则在所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:With reference to the third aspect or the first possible implementation manner of the third aspect, in a second possible implementation manner of the third aspect, if 1≤i<N-1, the DASH proxy entity receives the After the code rate sent by the server is the i+1th media segment of the first code rate, the method further includes:
所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。The DASH proxy entity receives the i+2th media segment that the code rate sent by the server is the first code rate.
结合第三方面和上述可能的实现方式,在第三方面的第三种可能的实现方式中,所述方法还包括:With reference to the third aspect and the foregoing possible implementation manner, in a third possible implementation manner of the third aspect, the method further includes:
所述DASH代理实体接收所述用户设备发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;The DASH proxy entity receives the second media transmission request sent by the user equipment, where the second media transmission request carries the second fragment information and the second rate information, where the second fragment information is used to indicate the requested media. The fragment is the j-th media segment of the media stream file to be transmitted, 1≤j≤N, j is a positive integer, and the second rate information is used to indicate that the code rate of the requested media segment is the second code rate. The second code rate is different from the first code rate;
若所述DASH代理实体未缓存***率为所述第二码率的所述第j个媒体片段,则所述DASH代理实体向所述服务器发送所述第二媒体传输请求;And if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, the DASH proxy entity sends the second media transmission request to the server;
所述DASH代理实体接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段,并向所述用户设备发送码率为所述第二码率的所述第j个媒体片段。Receiving, by the DASH proxy entity, the jth media segment sent by the server with the code rate of the second code rate, and transmitting, to the user equipment, the code rate of the jth rate of the second code rate Media clips.
结合第三方面和上述可能的实现方式,在第三方面的第四种可能的实现方式中,在所述DASH代理实体接收用户设备发送的第一媒体传输请求之前,所述方法还包括:With reference to the third aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the third aspect, before the receiving, by the DASH proxy entity, the first media transmission request sent by the user equipment, the method further includes:
所述DASH代理实体与所述用户设备建立超文本传输协议HTTP会话连接,所述DASH代理实体与所述服务器建立HTTP会话连接;The DASH proxy entity establishes a hypertext transfer protocol HTTP session connection with the user equipment, and the DASH proxy entity establishes an HTTP session connection with the server;
所述DASH代理实体向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述DASH代理实体发
送相同码率的同一媒体流文件的连续的媒体片段。Sending, by the DASH proxy entity, a push function enable message to the server, where the push function enable message is used to instruct the server to send the DASH proxy entity
A contiguous piece of media of the same media stream file that is sent at the same code rate.
本发明实施例的第四方面,提供一种服务器,包括:A fourth aspect of the embodiments of the present invention provides a server, including:
接收单元,用于接收下游节点发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a receiving unit, configured to receive a first media transmission request sent by a downstream node, where the first media transmission request carries a first segment information, where the first segment information is used to indicate that the requested media segment is a media stream file to be transmitted. The i-th media segment;
发送单元,用于根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段;a sending unit, configured to send, according to the first media transmission request, the i th media segment with a code rate of a first code rate to the downstream node;
所述发送单元,还用于向所述下游节点发送码率为所述第一码率的第i+1个媒体片段;The sending unit is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第四方面,在第四方面的第一种可能的实现方式中,所述服务器,还包括:With reference to the fourth aspect, in a first possible implementation manner of the fourth aspect, the server further includes:
处理单元,用于根据所述第i个媒体片段的播放时长,确定第一时刻,所述第一时刻为发送所述第i+1个媒体片段的时刻;a processing unit, configured to determine, according to a play duration of the i-th media segment, a first time, where the first time is a time when the (i+1)th media segment is sent;
所述发送单元,具体用于在所述第一时刻向所述下游节点发送码率为所述第一码率的所述第i+1个媒体片段。The sending unit is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述处理单元,还用于在所述发送单元向所述下游节点发送码率为所述第一码率的所述第i个媒体片段之前,根据预先定义的策略确定所述第一码率。With reference to the fourth aspect, or the first possible implementation manner of the fourth aspect, in a second possible implementation manner of the fourth aspect, the processing unit is further configured to send, by the sending unit, the downstream node Before the code rate is the ith media segment of the first code rate, the first code rate is determined according to a predefined policy.
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率;With reference to the fourth aspect, or the first possible implementation manner of the fourth aspect, in a third possible implementation manner of the fourth aspect, the first media transmission request further carries first code rate information, where The code rate information is used to indicate that the code rate of the requested media segment is the first code rate;
所述处理单元,还用于在所述发送单元向所述下游节点发送码率为所述第一码率的所述第i个媒体片段之前,根据所述第一码率信息确定所述第一码率。The processing unit is further configured to determine, according to the first code rate information, before the sending unit sends the i th media segment whose code rate is the first code rate to the downstream node One bit rate.
结合第四方面和上述可能的实现方式,在第四方面的第四种可
能的实现方式中,若1≤i<N-1,则所述发送单元,还用于在向所述下游节点发送码率为所述第一码率的第i+1个媒体片段之后,向所述下游节点发送码率为所述第一码率的第i+2个媒体片段。In combination with the fourth aspect and the above possible implementation manner, the fourth aspect in the fourth aspect
In an implementation manner, if 1≤i<N-1, the sending unit is further configured to: after sending the i+1th media segment whose code rate is the first code rate to the downstream node, Transmitting, to the downstream node, an i+2th media segment whose code rate is the first code rate.
结合第四方面和上述可能的实现方式,在第四方面的第五种可能的实现方式中,所述接收单元,还用于接收所述下游节点发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;With reference to the fourth aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the fourth aspect, the receiving unit is further configured to receive a second media transmission request that is sent by the downstream node, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j≤N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
所述发送单元,还用于根据所述第二媒体传输请求,向所述下游节点发送码率为所述第二码率的所述第j个媒体片段。The sending unit is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
结合第四方面和上述可能的实现方式,在第四方面的第六种可能的实现方式中,所述处理单元,还用于在所述接收单元接收下游节点发送的第一媒体传输请求之前,控制所述服务器与所述下游节点建立超文本传输协议HTTP会话连接;With reference to the fourth aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the fourth aspect, the processing unit is further configured to: before the receiving unit receives the first media transmission request sent by the downstream node, Controlling, by the server, a hypertext transfer protocol HTTP session connection with the downstream node;
所述接收单元,还用于接收所述下游节点发送的推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The receiving unit is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node. Media clips.
结合第四方面和上述可能的实现方式,在第四方面的第七种可能的实现方式中,所述下游节点为用户设备;或者,所述下游节点为超文本传送协议动态自适应流DASH代理实体。With reference to the fourth aspect and the foregoing possible implementation manner, in a seventh possible implementation manner of the fourth aspect, the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive flow DASH proxy entity.
本发明实施例的第五方面,提供一种用户设备,包括:A fifth aspect of the embodiments of the present invention provides a user equipment, including:
发送单元,用于向服务器发送第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a sending unit, configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the media stream file to be transmitted. i media clips;
接收单元,用于接收所述服务器发送的码率为第一码率的所述第i个媒体片段;a receiving unit, configured to receive the ith media segment that is sent by the server to a first code rate;
所述接收单元,还用于接收所述服务器发送的码率为所述第一
码率的第i+1个媒体片段;The receiving unit is further configured to receive a code rate sent by the server as the first
The i+1th media segment of the code rate;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第五方面,在第五方面的第一种可能的实现方式中,所述用户设备,还包括:With reference to the fifth aspect, in a first possible implementation manner of the fifth aspect, the user equipment further includes:
处理单元,用于在所述发送单元向服务器发送第一媒体传输请求之前,访问所述用户设备的本地缓存,且未在所述用户设备的本地缓存中查找到所述第i个媒体片段。The processing unit is configured to access the local cache of the user equipment before the sending unit sends the first media transmission request to the server, and the i-th media segment is not found in the local cache of the user equipment.
结合第五方面或第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述用户设备,还包括:With reference to the fifth aspect, or the first possible implementation manner of the fifth aspect, in the second possible implementation manner of the fifth aspect, the user equipment further includes:
播放单元,用于在所述接收单元接收所述服务器发送的码率为第一码率的所述第i个媒体片段之后,播放码率为所述第一码率的所述第i个媒体片段;a playing unit, configured to: after the receiving unit receives the ith media segment that is sent by the server and the code rate is the first code rate, play the ith media of the first code rate Fragment
所述处理单元,还用于在所述接收单元接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,访问所述用户设备的本地缓存,且在所述用户设备的本地缓存中查找到码率为所述第一码率的第i+1个媒体片段;The processing unit is further configured to: after receiving, by the receiving unit, the i+1th media segment of the first code rate sent by the server, accessing a local cache of the user equipment, and Finding an i+1th media segment whose code rate is the first code rate in a local cache of the user equipment;
所述播放单元,还用于播放码率为所述第一码率的第i+1个媒体片段。The playing unit is further configured to play the i+1th media segment whose code rate is the first code rate.
结合第五方面和上述可能的实现方式,在第五方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。With reference to the fifth aspect and the foregoing possible implementation manner, in a third possible implementation manner of the fifth aspect, the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
结合第五方面和上述可能的实现方式,在第五方面的第四种可能的实现方式中,若1≤i<N-1,则所述接收单元,还用于在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。With reference to the fifth aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the fifth aspect, the receiving unit is further configured to receive the sending by the server, if 1≤i<N-1 After the code rate is the i+1th media segment of the first code rate, the first and second media segments of the first code rate are received by the server.
结合第五方面和上述可能的实现方式,在第五方面的第五种可能的实现方式中,所述处理单元,还用于访问所述用户设备的本地
缓存,且未在所述用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率与所述第一码率不同;With reference to the fifth aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the fifth aspect, the processing unit is further configured to access a local part of the user equipment
Caching, and not finding the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, 1≤j≤N, j is a positive integer, the second code rate and the first One code rate is different;
所述发送单元,还用于向所述服务器发送第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述第j个媒体片段,所述第二码率信息用于指示请求的媒体片段的码率为所述第二码率;The sending unit is further configured to send a second media transmission request to the server, where the second media transmission request carries second segment information and second code rate information, where the second segment information is used to indicate the request The media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;
所述接收单元,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;The receiving unit is further configured to receive, by the server, the jth media segment whose code rate is the second code rate;
所述播放单元,还用于播放码率为所述第二码率的所述第j个媒体片段。The playing unit is further configured to play the j-th media segment whose code rate is the second code rate.
结合第五方面和上述可能的实现方式,在第五方面的第六种可能的实现方式中,所述处理单元,还用于在所述发送单元向服务器发送第一媒体传输请求之前,控制所述用户设备与所述服务器建立超文本传输协议HTTP会话连接;With reference to the fifth aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the fifth aspect, the processing unit is further configured to: before the sending unit sends the first media transmission request to the server, Determining that the user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
所述发送单元,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The sending unit is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media of the same media stream file of the same code rate to the user equipment. Fragment.
本发明实施例的第六方面,提供一种超文本传送协议动态自适应流DASH代理实体,包括:A sixth aspect of the embodiments of the present invention provides a hypertext transfer protocol dynamic adaptive stream DASH proxy entity, including:
接收单元,用于接收用户设备发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a receiving unit, configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries a first fragment information, where the first fragment information is used to indicate that the requested media segment is a media stream file to be transmitted The i-th media segment;
发送单元,用于若所述DASH代理实体未缓存有所述第i个媒体片段,则向服务器发送所述第一媒体传输请求;a sending unit, configured to send the first media transmission request to a server if the ith media segment is not cached by the DASH proxy entity;
所述接收单元,还用于接收所述服务器发送的码率为第一码率的所述第i个媒体片段;The receiving unit is further configured to receive the ith media segment that is sent by the server to a first code rate;
所述发送单元,还用于向所述用户设备发送码率为所述第一码率的所述第i个媒体片段;
The sending unit is further configured to send, to the user equipment, the ith media segment whose code rate is the first code rate;
所述接收单元,还用于接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The receiving unit is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
结合第六方面,在第六方面的第一种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。With reference to the sixth aspect, in a first possible implementation manner of the sixth aspect, the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment The code rate is the first code rate.
结合第六方面或第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述接收单元,还用于若1≤i<N-1,则在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。With reference to the sixth aspect, or the first possible implementation manner of the sixth aspect, in a second possible implementation manner of the sixth aspect, the receiving unit is further configured to: if 1≤i<N-1, After receiving the i+1th media segment of the first code rate sent by the server, receiving the i+2 media segment of the first code rate sent by the server.
结合第六方面和上述可能的实现方式,在第六方面的第三种可能的实现方式中,所述接收单元,还用于接收所述用户设备发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;With reference to the sixth aspect and the foregoing possible implementation manner, in a third possible implementation manner of the sixth aspect, the receiving unit is further configured to receive a second media transmission request that is sent by the user equipment, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j≤N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
所述发送单元,还用于若所述DASH代理实体未缓存***率为所述第二码率的所述第j个媒体片段,则向所述服务器发送所述第二媒体传输请求;The sending unit is further configured to: if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, send the second media transmission request to the server;
所述接收单元,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;The receiving unit is further configured to receive, by the server, the jth media segment whose code rate is the second code rate;
所述发送单元,还用于向所述用户设备发送码率为所述第二码率的所述第j个媒体片段。The sending unit is further configured to send, to the user equipment, the jth media segment whose code rate is the second code rate.
结合第六方面和上述可能的实现方式,在第六方面的第四种可能的实现方式中,所述DASH代理实体,还包括:With reference to the sixth aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the sixth aspect, the DASH proxy entity further includes:
处理单元,用于在所述接收单元接收用户设备发送的第一媒体
传输请求之前,控制所述DASH代理实体与所述用户设备建立超文本传输协议HTTP会话连接,并控制所述DASH代理实体与所述服务器建立HTTP会话连接;a processing unit, configured to receive, by the receiving unit, the first media sent by the user equipment
Before transmitting the request, controlling the DASH proxy entity to establish a hypertext transfer protocol HTTP session connection with the user equipment, and controlling the DASH proxy entity to establish an HTTP session connection with the server;
所述发送单元,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。The sending unit is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity. Media clips.
本发明实施例的第七方面,提供一种服务器,包括:A seventh aspect of the embodiments of the present invention provides a server, including:
接收器,用于接收下游节点发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The receiver is configured to receive a first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the media stream file to be transmitted. The i-th media segment;
发送器,用于根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段;a transmitter, configured to send, according to the first media transmission request, the i th media segment with a code rate of a first code rate to the downstream node;
所述发送器,还用于向所述下游节点发送码率为所述第一码率的第i+1个媒体片段;The transmitter is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第七方面,在第七方面的第一种可能的实现方式中,所述服务器,还包括:With reference to the seventh aspect, in a first possible implementation manner of the seventh aspect, the server further includes:
处理器,用于根据所述第i个媒体片段的播放时长,确定第一时刻,所述第一时刻为发送所述第i+1个媒体片段的时刻;a processor, configured to determine a first time according to a playing duration of the i-th media segment, where the first time is a time when the (i+1)th media segment is sent;
所述发送器,具体用于在所述第一时刻向所述下游节点发送码率为所述第一码率的所述第i+1个媒体片段。The transmitter is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第二种可能的实现方式中,所述处理器,还用于在所述发送器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段之前,根据预先定义的策略确定所述第一码率。With reference to the seventh aspect, or the first possible implementation manner of the seventh aspect, in a second possible implementation manner of the seventh aspect, the processor is further configured to send, at the sender, the downstream node Before the code rate is the ith media segment of the first code rate, the first code rate is determined according to a predefined policy.
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为
所述第一码率;With reference to the seventh aspect, or the first possible implementation manner of the seventh aspect, in a third possible implementation manner of the seventh aspect, the first media transmission request further carries first code rate information, where A code rate information is used to indicate the bit rate of the requested media segment
The first code rate;
所述处理器,还用于在所述发送器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段之前,根据所述第一码率信息确定所述第一码率。The processor is further configured to determine, according to the first code rate information, before the transmitter sends the i th media segment whose code rate is the first code rate to the downstream node One bit rate.
结合第七方面和上述可能的实现方式,在第七方面的第四种可能的实现方式中,若1≤i<N-1,则所述发送器,还用于在向所述下游节点发送码率为所述第一码率的第i+1个媒体片段之后,向所述下游节点发送码率为所述第一码率的第i+2个媒体片段。With reference to the seventh aspect and the foregoing possible implementation manner, in a fourth possible implementation manner of the seventh aspect, the device is further configured to send to the downstream node, if 1≤i<N-1 After the code rate is the i+1th media segment of the first code rate, the i+2th media segment whose code rate is the first code rate is sent to the downstream node.
结合第七方面和上述可能的实现方式,在第七方面的第五种可能的实现方式中,所述接收器,还用于接收所述下游节点发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;With reference to the seventh aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the seventh aspect, the receiver is further configured to receive a second media transmission request that is sent by the downstream node, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j≤N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
所述发送器,还用于根据所述第二媒体传输请求,向所述下游节点发送码率为所述第二码率的所述第j个媒体片段。The transmitter is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
结合第七方面和上述可能的实现方式,在第七方面的第六种可能的实现方式中,所述处理器,还用于在所述接收器接收下游节点发送的第一媒体传输请求之前,控制所述服务器与所述下游节点建立超文本传输协议HTTP会话连接;With reference to the seventh aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the seventh aspect, the processor is further configured to: before the receiver receives the first media transmission request sent by the downstream node, Controlling, by the server, a hypertext transfer protocol HTTP session connection with the downstream node;
所述接收器,还用于接收所述下游节点发送的推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The receiver is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node. Media clips.
结合第七方面和上述可能的实现方式,在第七方面的第七种可能的实现方式中,所述下游节点为用户设备;或者,所述下游节点为超文本传送协议动态自适应流DASH代理实体。With reference to the seventh aspect and the foregoing possible implementation manner, in a seventh possible implementation manner of the seventh aspect, the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive stream DASH proxy entity.
本发明实施例的第八方面,提供一种用户设备,包括:An eighth aspect of the embodiments of the present invention provides a user equipment, including:
发送器,用于向服务器发送第一媒体传输请求,所述第一媒体
传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a transmitter, configured to send a first media transmission request to the server, the first media
The first fragment information is carried in the transmission request, where the first fragment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted;
接收器,用于接收所述服务器发送的码率为第一码率的所述第i个媒体片段;a receiver, configured to receive the ith media segment that is sent by the server to a first code rate;
所述接收器,还用于接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
结合第八方面,在第八方面的第一种可能的实现方式中,所述用户设备,还包括:With reference to the eighth aspect, in a first possible implementation manner of the eighth aspect, the user equipment further includes:
处理器,用于在所述发送器向服务器发送第一媒体传输请求之前,访问所述用户设备的本地缓存,且未在所述用户设备的本地缓存中查找到所述第i个媒体片段。And a processor, configured to access a local cache of the user equipment, and not find the i-th media segment in a local cache of the user equipment, before the sender sends the first media transmission request to the server.
结合第八方面或第八方面的第一种可能的实现方式,在第八方面的第二种可能的实现方式中,所述用户设备,还包括:With reference to the eighth aspect, or the first possible implementation manner of the eighth aspect, in the second possible implementation manner of the eighth aspect, the user equipment further includes:
播放器,用于在所述接收器接收所述服务器发送的码率为第一码率的所述第i个媒体片段之后,播放码率为所述第一码率的所述第i个媒体片段;a player, after the receiver receives the ith media segment that is sent by the server and has a code rate of a first code rate, playing the ith media of the first code rate Fragment
所述处理器,还用于在所述接收器接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,访问所述用户设备的本地缓存,且在所述用户设备的本地缓存中查找到码率为所述第一码率的第i+1个媒体片段;The processor is further configured to: after receiving, by the receiver, the i+1th media segment of the first code rate sent by the server, accessing a local cache of the user equipment, and Finding an i+1th media segment whose code rate is the first code rate in a local cache of the user equipment;
所述播放器,还用于播放码率为所述第一码率的第i+1个媒体片段。The player is further configured to play the i+1th media segment whose code rate is the first code rate.
结合第八方面和上述可能的实现方式,在第八方面的第三种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。With reference to the eighth aspect and the foregoing possible implementation manner, in a third possible implementation manner of the eighth aspect, the first media transmission request further carries first code rate information, where the first code rate information is used A code rate indicating the requested media segment is the first code rate.
结合第八方面和上述可能的实现方式,在第八方面的第四种可
能的实现方式中,若1≤i<N-1,则所述接收器,还用于在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。In combination with the eighth aspect and the above possible implementation manner, the fourth aspect in the eighth aspect
In an implementation manner, if 1≤i<N-1, the receiver is further configured to: after receiving the i+1th media segment of the first code rate sent by the server, Receiving, by the server, a code rate of the i+2 media segments of the first code rate.
结合第八方面和上述可能的实现方式,在第八方面的第五种可能的实现方式中,所述处理器,还用于访问所述用户设备的本地缓存,且未在所述用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率与所述第一码率不同;With reference to the eighth aspect and the foregoing possible implementation manner, in a fifth possible implementation manner of the eighth aspect, the processor is further configured to access a local cache of the user equipment, and is not in the user equipment Finding, in the local cache, the jth media segment whose code rate is the second code rate, 1≤j≤N, j is a positive integer, and the second code rate is different from the first code rate;
所述发送器,还用于向所述服务器发送第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述第j个媒体片段,所述第二码率信息用于指示请求的媒体片段的码率为所述第二码率;The transmitter is further configured to send a second media transmission request to the server, where the second media transmission request carries second segment information and second code rate information, where the second segment information is used to indicate the request The media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;
所述接收器,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;The receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;
所述播放器,还用于播放码率为所述第二码率的所述第j个媒体片段。The player is further configured to play the j-th media segment whose code rate is the second code rate.
结合第八方面和上述可能的实现方式,在第八方面的第六种可能的实现方式中,所述处理器,还用于在所述发送器向服务器发送第一媒体传输请求之前,控制所述用户设备与所述服务器建立超文本传输协议HTTP会话连接;With reference to the eighth aspect and the foregoing possible implementation manner, in a sixth possible implementation manner of the eighth aspect, the processor is further configured to: before the sending, by the sender, the first media transmission request to the server, Determining that the user equipment establishes a hypertext transfer protocol HTTP session connection with the server;
所述发送器,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media of the same media stream file of the same code rate to the user equipment. Fragment.
本发明实施例的第九方面,提供一种超文本传送协议动态自适应流DASH代理实体,包括:A ninth aspect of the embodiments of the present invention provides a hypertext transfer protocol dynamic adaptive stream DASH proxy entity, including:
接收器,用于接收用户设备发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a receiver, configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries a first fragment information, where the first fragment information is used to indicate that the requested media segment is a media stream file to be transmitted. The i-th media segment;
发送器,用于若所述DASH代理实体未缓存有所述第i个媒体
片段,则向服务器发送所述第一媒体传输请求;a transmitter, if the ith media is not cached by the DASH proxy entity
Fragment, sending the first media transmission request to the server;
所述接收器,还用于接收所述服务器发送的码率为第一码率的所述第i个媒体片段;The receiver is further configured to receive the ith media segment that is sent by the server to a first code rate;
所述发送器,还用于向所述用户设备发送码率为所述第一码率的所述第i个媒体片段;The transmitter is further configured to send, to the user equipment, the i th media segment whose code rate is the first code rate;
所述接收器,还用于接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;
其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
结合第九方面,在第九方面的第一种可能的实现方式中,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。With reference to the ninth aspect, in a first possible implementation manner of the ninth aspect, the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment The code rate is the first code rate.
结合第九方面或第九方面的第一种可能的实现方式,在第九方面的第二种可能的实现方式中,所述接收器,还用于若1≤i<N-1,则在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。With reference to the ninth aspect, or the first possible implementation manner of the ninth aspect, in the second possible implementation manner of the ninth aspect, the receiver is further configured to: if 1≤i<N-1, After receiving the i+1th media segment of the first code rate sent by the server, receiving the i+2 media segment of the first code rate sent by the server.
结合第九方面和上述可能的实现方式,在第九方面的第三种可能的实现方式中,所述接收器,还用于接收所述用户设备发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;With reference to the ninth aspect and the foregoing possible implementation manner, in a third possible implementation manner of the ninth aspect, the receiver is further configured to receive a second media transmission request that is sent by the user equipment, where the second The media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j≤N And j is a positive integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;
所述发送器,还用于若所述DASH代理实体未缓存***率为所述第二码率的所述第j个媒体片段,则向所述服务器发送所述第二媒体传输请求;The transmitter is further configured to: if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, send the second media transmission request to the server;
所述接收器,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;
The receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;
所述发送器,还用于向所述用户设备发送码率为所述第二码率的所述第j个媒体片段。The transmitter is further configured to send, to the user equipment, the jth media segment whose code rate is the second code rate.
结合第九方面和上述可能的实现方式,在第九方面的第四种可能的实现方式中,所述DASH代理实体,还包括:With reference to the ninth aspect and the foregoing possible implementation manner, in the fourth possible implementation manner of the ninth aspect, the DASH proxy entity further includes:
处理器,用于在所述接收器接收用户设备发送的第一媒体传输请求之前,控制所述DASH代理实体与所述用户设备建立超文本传输协议HTTP会话连接,并控制所述DASH代理实体与所述服务器建立HTTP会话连接;a processor, configured to: after the receiver receives the first media transmission request sent by the user equipment, control the DASH proxy entity to establish a hypertext transfer protocol HTTP session connection with the user equipment, and control the DASH proxy entity and The server establishes an HTTP session connection;
所述发送器,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。The transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity. Media clips.
本发明实施例提供的媒体流传输方法及装置,由于服务器在根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段之后,向下游节点发送码率为第一码率的第i+1个媒体片段,而无需等待下游节点的请求,因此,可以减小现有技术中下游节点获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高下游节点获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要下游节点多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The media stream transmission method and apparatus provided by the embodiment of the present invention, after the server sends the i-th media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the code rate is sent to the downstream node. The i+1th media segment of the code rate does not need to wait for the request of the downstream node, so that the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. The waiting delay can improve the real-time performance of the downstream node to obtain the media stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any inventive labor.
图1为本发明实施例提供的一种媒体流传输方法的流程图;FIG. 1 is a flowchart of a media stream transmission method according to an embodiment of the present invention;
图2为本发明实施例提供的另一种媒体流传输方法的流程图;2 is a flowchart of another media stream transmission method according to an embodiment of the present invention;
图3为本发明实施例提供的另一种媒体流传输方法的流程图;
FIG. 3 is a flowchart of another media stream transmission method according to an embodiment of the present invention;
图4为本发明实施例提供的另一种媒体流传输方法的流程图;FIG. 4 is a flowchart of another media stream transmission method according to an embodiment of the present invention;
图5为本发明实施例提供的另一种媒体流传输方法的流程图;FIG. 5 is a flowchart of another media stream transmission method according to an embodiment of the present invention;
图6为本发明实施例提供的一种服务器的组成示意图;FIG. 6 is a schematic structural diagram of a server according to an embodiment of the present disclosure;
图7为本发明实施例提供的另一种服务器的组成示意图;FIG. 7 is a schematic structural diagram of another server according to an embodiment of the present disclosure;
图8为本发明实施例提供的一种用户设备的组成示意图;FIG. 8 is a schematic structural diagram of a user equipment according to an embodiment of the present disclosure;
图9为本发明实施例提供的另一种用户设备的组成示意图;FIG. 9 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure;
图10为本发明实施例提供的另一种用户设备的组成示意图;FIG. 10 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure;
图11为本发明实施例提供的一种DASH代理实体的组成示意图;FIG. 11 is a schematic structural diagram of a DASH proxy entity according to an embodiment of the present disclosure;
图12为本发明实施例提供的另一种DASH代理实体的组成示意图;FIG. 12 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present disclosure;
图13为本发明实施例提供的另一种服务器的组成示意图;FIG. 13 is a schematic structural diagram of another server according to an embodiment of the present disclosure;
图14为本发明实施例提供的另一种服务器的组成示意图;FIG. 14 is a schematic structural diagram of another server according to an embodiment of the present disclosure;
图15为本发明实施例提供的另一种用户设备的组成示意图;FIG. 15 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure;
图16为本发明实施例提供的另一种用户设备的组成示意图;FIG. 16 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure;
图17为本发明实施例提供的另一种用户设备的组成示意图;FIG. 17 is a schematic structural diagram of another user equipment according to an embodiment of the present disclosure;
图18为本发明实施例提供的另一种DASH代理实体的组成示意图;FIG. 18 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present disclosure;
图19为本发明实施例提供的另一种DASH代理实体的组成示意图。FIG. 19 is a schematic structural diagram of another DASH proxy entity according to an embodiment of the present invention.
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
本发明实施例应用于DASH技术中,使用DASH技术,待传输的媒体流文件(包括视频文件和音频文件等)被划分为多个连续的媒体片段,对于每一个媒体片段,服务器提供多个不同码率的版本
供用户设备选择。The embodiment of the present invention is applied to the DASH technology. The DASH technology is used, and the media stream files to be transmitted (including video files and audio files, etc.) are divided into multiple consecutive media segments. For each media segment, the server provides multiple different Rate version
For user equipment selection.
本文中的服务器,为存储有待传输的媒体流文件的所有媒体片段的服务器。The server in this document is a server that stores all media segments of a media stream file to be transmitted.
本文中的用户设备,可以为手机、个人计算机(英文:personal computer,缩写:PC)、笔记本电脑、平板电脑等。The user equipment in this article can be a mobile phone, a personal computer (English: personal computer, abbreviation: PC), a notebook computer, a tablet computer, and the like.
本实施例是从服务器的角度,对本发明实施例提供的一种媒体流传输方法进行说明。如图1所示,本发明实施例提供的媒体流传输方法包括:This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a server. As shown in FIG. 1, the media stream transmission method provided by the embodiment of the present invention includes:
S101、服务器接收下游节点发送的第一媒体传输请求。S101. The server receives a first media transmission request sent by a downstream node.
其中,下游节点具体为位于服务器的下游,且具有缓存能力的网络节点。下游节点可以为用户设备,或者,下游节点可以为DASH代理实体。The downstream node is specifically a network node that is located downstream of the server and has a cache capability. The downstream node may be a user equipment, or the downstream node may be a DASH proxy entity.
第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。待传输的媒体流文件可以为视频文件或者音频文件等。The first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted, and the media stream file to be transmitted is divided into N consecutive media segments. The media segment, 1 ≤ i < N, i and N are positive integers. The media stream file to be transmitted may be a video file or an audio file or the like.
示例性的,假设待传输的媒体流文件为一个播放时长为1分钟的视频文件。将每6秒的视频画面作为一个媒体片段,可以将该视频文件划分为10个连续的、播放时长均为6秒的媒体片段,即第1个媒体片段包含该视频文件的第0秒到第6秒的视频画面,第2个媒体片段包含该视频文件的第6秒到第12秒的视频画面,第3个媒体片段包含该视频文件的第12秒到第18秒的视频画面等等。当然,也可以将该视频文件划分为播放时长不相等的N个连续的媒体文件,只要这N个媒体片段的视频画面的内容连续即可,本发明实施例对此不做限定。Exemplarily, it is assumed that the media stream file to be transmitted is a video file with a playing time of 1 minute. The video file is divided into 10 consecutive media segments with a playback duration of 6 seconds, that is, the first media segment contains the 0th to the second of the video file. For a 6 second video picture, the second media segment contains the 6th to 12th video of the video file, and the third media segment contains the 12th to 18th video of the video file and so on. Of course, the video file may be divided into N consecutive media files whose playing durations are not equal, as long as the content of the video images of the N media segments are continuous, which is not limited in this embodiment of the present invention.
S102、服务器根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段。S102. The server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
其中,第一码率为服务器确定的,服务器可以根据预先定义的策略确定第一码率,也可以采用其他方式确定第一码率,本发明实
施例这里对确定第一码率的方式不做限定。预先定义的策略包括:服务器的当前负载情况与码率的对应关系、当前的网络拥塞情况与码率的对应关系、用户设备的用户类型(如,金牌用户、银牌用户、铜牌用户等)与码率的对应关系等,本发明实施例这里对预先定义的策略不做具体限定。The first code rate is determined by the server, and the server may determine the first code rate according to a predefined policy, or may determine the first code rate by using other methods.
The embodiment here does not limit the manner of determining the first code rate. The predefined policies include: the correspondence between the current load situation of the server and the code rate, the correspondence between the current network congestion and the code rate, and the user type of the user equipment (eg, gold medal users, silver medal users, bronze users, etc.) and codes. The corresponding relationship between the rate and the like is not specifically limited in the embodiment of the present invention.
S103、服务器向下游节点发送码率为第一码率的第i+1个媒体片段。S103. The server sends, to the downstream node, an i+1th media segment whose code rate is the first code rate.
其中,第i+1个媒体片段为与第i个媒体片段连续的媒体片段。The i+1th media segment is a media segment that is continuous with the i th media segment.
一般情况下,在一定时间内传输的媒体流文件的媒体片段的码率保持不变,因此,服务器向下游节点发送的第i+1个媒体片段的码率与第i个媒体片段的码率相同,均为第一码率。In general, the code rate of the media segment of the media stream file transmitted in a certain period of time remains unchanged. Therefore, the code rate of the i+1th media segment sent by the server to the downstream node and the code rate of the i th media segment The same, all are the first code rate.
示例性的,假设i为1,第一码率为500kbps(千位每秒),则服务器向下游节点发送码率为500kbps的第1个媒体片段之后,还向下游节点发送码率为500kbps的第2个媒体片段。当然,在服务器向下游节点发送码率为500kbps的第2个媒体片段之后,服务器还可以继续向下游节点发送码率为500kbps的第3个媒体片段、第4个媒体片段等。Exemplarily, if i is 1, and the first code rate is 500 kbps (kilobits per second), the server sends a code rate of 500 kbps to the downstream node after transmitting the first media segment with a code rate of 500 kbps to the downstream node. The second media clip. Of course, after the server sends the second media segment with the code rate of 500 kbps to the downstream node, the server may further send the third media segment, the fourth media segment, and the like with a code rate of 500 kbps to the downstream node.
本发明实施例提供的媒体流传输方法,由于服务器在根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段之后,向下游节点发送码率为第一码率的第i+1个媒体片段,而无需等待下游节点的请求,因此,可以减小现有技术中下游节点获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高下游节点获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要下游节点多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The media stream transmission method provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the code rate is sent to the downstream node as the first code. The i+1th media segment of the rate does not need to wait for the request of the downstream node. Therefore, the waiting in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. The delay can improve the real-time performance of the downstream node to obtain the media stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本实施例是从用户设备的角度,对本发明实施例提供的一种媒体流传输方法进行说明。如图2所示,本发明实施例提供的媒体流传输方法包括:
This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a user equipment. As shown in FIG. 2, the media stream transmission method provided by the embodiment of the present invention includes:
S201、用户设备向服务器发送第一媒体传输请求。S201. The user equipment sends a first media transmission request to the server.
其中,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted. The media stream file to be transmitted is divided into N consecutive media segments, 1 ≤ i < N, and i and N are both positive integers.
S202、用户设备接收服务器发送的码率为第一码率的第i个媒体片段。S202. The user equipment receives an ith media segment whose code rate is the first code rate.
S203、用户设备接收服务器发送的码率为第一码率的第i+1个媒体片段。S203. The user equipment receives, by the server, a code rate of the i+1th media segment of the first code rate.
本发明实施例提供的媒体流传输方法,由于用户设备接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要用户设备多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The media stream transmission method provided by the embodiment of the present invention, after the user equipment receives the ith media segment of the first code rate sent by the server, and does not need to request the server again, the code rate sent by the receiving server is the first. The i+1th media segment of the code rate, so that the waiting time delay in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art can be reduced, and the user equipment can be improved. Get the real-time nature of the media stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本实施例是从DASH代理实体的角度,对本发明实施例提供的一种媒体流传输方法进行说明。如图3所示,本发明实施例提供的媒体流传输方法包括:This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of a DASH proxy entity. As shown in FIG. 3, the media stream transmission method provided by the embodiment of the present invention includes:
S301、DASH代理实体接收用户设备发送的第一媒体传输请求。S301. The DASH proxy entity receives the first media transmission request sent by the user equipment.
其中,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted. The media stream file to be transmitted is divided into N consecutive media segments, 1 ≤ i < N, and i and N are both positive integers.
S302、若DASH代理实体未缓存有第i个媒体片段,则DASH代理实体向服务器发送第一媒体传输请求。S302. If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends a first media transmission request to the server.
其中,若DASH代理实体未预先向服务器请求过第i个媒体片段,则DASH代理实体不会缓存有第i个媒体片段。
Wherein, if the DASH proxy entity does not request the i-th media segment from the server in advance, the DASH proxy entity does not cache the i-th media segment.
S303、DASH代理实体接收服务器发送的码率为第一码率的第i个媒体片段,并向用户设备发送码率为第一码率的第i个媒体片段。S303. The DASH proxy entity receives the ith media segment of the first code rate sent by the server, and sends the ith media segment whose code rate is the first code rate to the user equipment.
S304、DASH代理实体接收服务器发送的码率为第一码率的第i+1个媒体片段。S304. The DASH proxy entity receives the i+1th media segment sent by the server with a code rate of the first code rate.
其中,DASH代理实体在接收服务器发送的码率为第一码率的第i个媒体片段之后,无需向服务器请求码率为第一码率的第i+1个媒体片段,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段。当用户设备请求码率为第一码率的第i+1个媒体片段时,DASH代理实体已经将码率为第一码率的第i+1个媒体片段缓存下来,因此,DASH代理实体可以向用户设备发送码率为第一码率的第i+1个媒体片段。The DASH proxy entity may send the receiving server by sending the i+1th media segment whose code rate is the first bit rate after receiving the ith media segment of the first bit rate sent by the server. The code rate is the i+1th media segment of the first code rate. When the user equipment requests the i+1th media segment whose code rate is the first code rate, the DASH proxy entity has cached the i+1th media segment whose code rate is the first code rate. Therefore, the DASH proxy entity may The i+1th media segment whose code rate is the first code rate is sent to the user equipment.
本发明实施例提供的媒体流传输方法,由于DASH代理实体接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中DASH代理实体获取码率为第一码率的第i+1个媒体片段的过程中的等待时延。当用户设备需要获取码率为第一码率的第i+1个媒体片段时,由于DASH代理实体已缓存码率为第一码率的第i+1个媒体片段,因此,用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延也被减小,从而可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要DASH代理实体多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The media stream transmission method provided by the embodiment of the present invention, after the DASH proxy entity receives the ith media segment of the first code rate sent by the server, and does not need to request the server again, the code rate sent by the server can be received. The i+1th media segment of the code rate can reduce the waiting time delay in the process of obtaining the i+1th media segment of the first bit rate by the DASH proxy entity in the prior art. When the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code. The waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本实施例是从服务器与用户设备进行交互的角度,对本发明实施例提供的一种媒体流传输方法进行说明。如图4所示,本发明实施例提供的媒体流传输方法包括:This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of the server interacting with the user equipment. As shown in FIG. 4, the media stream transmission method provided by the embodiment of the present invention includes:
S401、服务器与用户设备建立超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)会话连接。S401: The server establishes a hypertext transfer protocol (English: HyperText Transfer Protocol, abbreviation: HTTP) session connection with the user equipment.
其中,HTTP会话的具体内容可以参考现有技术中的相关描述,
本发明实施例这里不再赘述。The specific content of the HTTP session can refer to related descriptions in the prior art.
The embodiments of the present invention are not described herein again.
S402、用户设备向服务器发送推送功能使能消息。S402. The user equipment sends a push function enable message to the server.
其中,推送(PUSH)功能使能消息用于指示服务器向用户设备发送相同码率的同一媒体流文件的连续的媒体片段,即服务器无需等待用户设备发送的媒体传输请求消息,直接向用户设备主动发送相同码率的同一媒体流文件的连续的媒体片段。The push (PUSH) function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment, that is, the server does not need to wait for the media transmission request message sent by the user equipment, and directly sends the media transmission request message to the user equipment. Send consecutive media segments of the same media stream file of the same code rate.
示例性的,推送功能使能消息的格式可以为:Exemplarily, the format of the push function enable message can be:
SETTINGS_ENABLE_PUSH=1。SETTINGS_ENABLE_PUSH=1.
S403、服务器向用户设备发送媒体展现描述(英文:Media Presentation Description,缩写:MPD)文件。S403. The server sends a media presentation description (English: Media Presentation Description, MPD) file to the user equipment.
其中,MPD文件用于指示待传输的媒体流文件的每一个媒体片段的存储格式。当用户设备获得MPD文件后,用户设备可以根据需要向服务器请求媒体片段。MPD文件的具体描述可以参考现有技术中的相关描述,本发明实施例这里不再赘述。The MPD file is used to indicate a storage format of each media segment of the media stream file to be transmitted. After the user equipment obtains the MPD file, the user equipment can request the media segment from the server as needed. For a detailed description of the MPD file, reference may be made to the related description in the prior art, and details are not described herein again.
S404、用户设备访问用户设备的本地缓存,未在用户设备的本地缓存中查找到第i个媒体片段。S404. The user equipment accesses the local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。若用户设备的本地缓存中没有第i个媒体片段,则用户设备需要向服务器请求第i个媒体片段。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers. If there is no i-th media segment in the local cache of the user equipment, the user equipment needs to request the i-th media segment from the server.
S405、用户设备向服务器发送第一媒体传输请求。S405. The user equipment sends a first media transmission request to the server.
其中,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
具体的,第一片段信息可为第i个媒体片段的标识,用ID表示。在HTTP 2.0协议中,若第i个媒体片段的标识为ID,则第i+1个媒体片段的标识为ID+2,第i+1个媒体片段的标识为ID+4。Specifically, the first segment information may be an identifier of the ith media segment, and is represented by an ID. In the HTTP 2.0 protocol, if the identifier of the i-th media segment is an ID, the identifier of the i+1th media segment is ID+2, and the identifier of the i+1th media segment is ID+4.
S406、服务器根据第一媒体传输请求,向用户设备发送码率为第一码率的第i个媒体片段。S406. The server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate.
进一步的,在本发明实施例的第一种情形中,服务器根据预先定义的策略确定第一码率,并向用户设备发送码率为第一码率的第
i个媒体片段。预先定义的策略包括:服务器的当前负载情况与码率的对应关系、当前的网络拥塞情况与码率的对应关系、用户设备的用户类型(如,金牌用户、银牌用户、铜牌用户等)与码率的对应关系等,本发明实施例这里对预先定义的策略不做具体限定。Further, in the first scenario of the embodiment of the present invention, the server determines the first code rate according to the predefined policy, and sends the code rate to the user equipment.
i media clips. The predefined policies include: the correspondence between the current load situation of the server and the code rate, the correspondence between the current network congestion and the code rate, and the user type of the user equipment (eg, gold medal users, silver medal users, bronze users, etc.) and codes. The corresponding relationship between the rate and the like is not specifically limited in the embodiment of the present invention.
进一步的,在本发明实施例的第二种情形中,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。服务器根据第一码率信息确定第一码率,并向用户设备发送码率为第一码率的所述第i个媒体片段。Further, in the second scenario of the embodiment of the present invention, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate. The server determines the first code rate according to the first code rate information, and sends the ith media segment whose code rate is the first code rate to the user equipment.
S407、用户设备播放码率为第一码率的第i个媒体片段。S407. The user equipment plays the ith media segment of the first code rate.
S408、服务器向用户设备发送码率为第一码率的第i+1个媒体片段。S408. The server sends, to the user equipment, an i+1th media segment whose code rate is the first code rate.
具体的,S408可以包括:S408a和S408b。Specifically, S408 may include: S408a and S408b.
S408a、服务器根据第i个媒体片段的播放时长,确定第一时刻,第一时刻为发送第i+1个媒体片段的时刻。S408. The server determines, according to the playing duration of the i-th media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
其中,第一时刻可以为早于或等于第i个媒体片段播放完的时刻。例如,第i个媒体片段的播放时长为6秒,若服务器第1分0秒向用户设备发送码率为第一码率的第i个媒体片段,不考虑第i个媒体片段的传输时间,则服务器可以确定第一时刻为第1分0秒到第1分6秒之间的任一时刻。The first moment may be a time earlier than or equal to the end of the ith media segment. For example, the playing time of the i-th media segment is 6 seconds. If the server sends the i-th media segment with the first bit rate to the user equipment at the first minute and 0 seconds, regardless of the transmission time of the i-th media segment, Then the server can determine that the first time is any time between 1 minute 0 seconds and 1 minute 6 seconds.
S408b、服务器在第一时刻向用户设备发送码率为第一码率的第i+1个媒体片段。S408b: The server sends, to the user equipment, the i+1th media segment whose code rate is the first code rate.
S409、用户设备访问用户设备的本地缓存,在用户设备的本地缓存中查找到码率为第一码率的第i+1个媒体片段,并播放码率为第一码率的第i+1个媒体片段。S409. The user equipment accesses the local cache of the user equipment, and finds the i+1th media segment whose code rate is the first code rate in the local cache of the user equipment, and plays the i+1th of the first code rate. Media clips.
S410、服务器向用户设备发送码率为第一码率的第i+2个媒体片段。S410. The server sends, to the user equipment, an i+2th media segment whose code rate is the first code rate.
其中,1≤i<N-1时,S410才可能会执行。i=N-1时,S410不执行。Among them, when 1 ≤ i < N-1, S410 may be executed. When i=N-1, S410 is not executed.
S411、用户设备访问用户设备的本地缓存,未在用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段。
S411. The user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment.
其中,1≤j≤N,j为正整数,第二码率与第一码率不同。Wherein, 1≤j≤N, j is a positive integer, and the second code rate is different from the first code rate.
例如,第一码率为500kbps,第二码率为1000kbps。当用户设备接收到若干个码率为500kbps的媒体片段后,若检测到当前的网络状况较好(例如:用户设备的无线信道的质量较优),则会请求服务器发送码率为1000kbps的媒体片段,以获得更好的用户体验。For example, the first code rate is 500 kbps and the second code rate is 1000 kbps. After the user equipment receives a plurality of media segments with a code rate of 500 kbps, if it detects that the current network condition is good (for example, the quality of the wireless channel of the user equipment is superior), the server is requested to send the media with a code rate of 1000 kbps. Fragments for a better user experience.
S412、用户设备向服务器发送第二媒体传输请求。S412. The user equipment sends a second media transmission request to the server.
其中,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为第j个媒体片段,第二码率信息用于指示请求的媒体片段的码率为第二码率。The second media transmission request carries the second segment information and the second code rate information, the second segment information is used to indicate that the requested media segment is the jth media segment, and the second rate information is used to indicate the requested media segment. The code rate is the second code rate.
S413、服务器根据第二媒体传输请求,向用户设备发送码率为第二码率的第j个媒体片段。S413. The server sends, to the user equipment, a jth media segment with a code rate of a second code rate according to the second media transmission request.
其中,当服务器接收到第二媒体传输请求时,若仍存在码率为第一码率的媒体片段正在传输,则服务器终止该码率为第一码率的媒体片段的传输。When the server receives the second media transmission request, if the media segment whose code rate is the first code rate is still being transmitted, the server terminates the transmission of the media segment whose code rate is the first code rate.
S414、用户设备播放码率为第二码率的第j个媒体片段。S414. The user equipment plays the jth media segment with the second bit rate.
需要说明的是,在S410之后,服务器还可以向用户设备发送码率为第一码率的多个连续的媒体片段;在S413之后,服务器还可以向用户设备发送码率为第二码率的多个连续的媒体片段,本发明实施例中仅是举例说明,并不限定服务器向用户设备推送的连续的媒体片段的个数。It should be noted that, after S410, the server may further send, to the user equipment, a plurality of consecutive media segments with a code rate of a first code rate; after S413, the server may further send the code rate to the user equipment for a second code rate. The plurality of consecutive media segments are merely exemplified in the embodiment of the present invention, and do not limit the number of consecutive media segments that the server pushes to the user equipment.
本发明实施例提供的媒体流传输方法,由于服务器在根据第一媒体传输请求,向用户设备发送码率为第一码率的第i个媒体片段之后,向用户设备发送码率为第一码率的第i+1个媒体片段,而无需等待用户设备的请求,因此,可以减小现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高用户设备获取媒体流文件的实时性。若用户设备请求的码率发生变化,采用本发明实施例的方法,服务器可以向用户设备发送码率为新码率(变化后的码率,即本实施例中的第二码率)的媒体片段。此外,由于本发明实施例采用服务器主动发送的方法,不需要用户
设备多次发送媒体传输请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The media stream transmission method provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the user equipment according to the first media transmission request, the code rate is sent to the user equipment as the first code. The i+1th media segment of the rate does not need to wait for the request of the user equipment, therefore, the waiting in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art can be reduced. The delay can improve the real-time performance of the user equipment to obtain the media stream file. If the code rate of the user equipment is changed, the server may send the media rate to the user equipment at a new code rate (the changed code rate, that is, the second code rate in this embodiment). Fragment. In addition, since the embodiment of the present invention adopts a method for actively sending by a server, no user is needed.
The device sends the media transmission request multiple times, which can reduce the signaling burden between the devices compared with the prior art request-response message interaction.
本实施例是从服务器、DASH代理实体以及用户设备进行交互的角度,对本发明实施例提供的一种媒体流传输方法进行说明。如图5所示,本发明实施例提供的媒体流传输方法包括:This embodiment describes a media stream transmission method provided by an embodiment of the present invention from the perspective of interaction between a server, a DASH proxy entity, and a user equipment. As shown in FIG. 5, the media stream transmission method provided by the embodiment of the present invention includes:
S501、服务器与DASH代理实体建立HTTP会话连接,DASH代理实体与用户设备建立HTTP会话连接。S501: The server establishes an HTTP session connection with the DASH proxy entity, and the DASH proxy entity establishes an HTTP session connection with the user equipment.
S502、DASH代理实体向服务器发送推送功能使能消息。S502. The DASH proxy entity sends a push function enable message to the server.
其中,推送功能使能消息用于指示服务器向DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段,即服务器无需等待DASH代理实体发送的媒体传输请求消息,直接向DASH代理实体主动发送相同码率的同一媒体流文件的连续的媒体片段。The push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity, that is, the server does not need to wait for the media transmission request message sent by the DASH proxy entity, and directly sends the media transfer request message to the DASH proxy entity. Send consecutive media segments of the same media stream file of the same code rate.
S503、服务器向DASH代理实体发送MPD文件。S503. The server sends an MPD file to the DASH proxy entity.
S504、DASH代理实体向用户设备发送MPD文件。S504. The DASH proxy entity sends an MPD file to the user equipment.
S505、用户设备访问用户设备的本地缓存,未在用户设备的本地缓存中查找到第i个媒体片段。S505. The user equipment accesses a local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。若用户设备的本地缓存中没有第i个媒体片段,则用户设备需要向服务器请求第i个媒体片段。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers. If there is no i-th media segment in the local cache of the user equipment, the user equipment needs to request the i-th media segment from the server.
S506、用户设备向DASH代理实体发送第一媒体传输请求。S506. The user equipment sends a first media transmission request to the DASH proxy entity.
其中,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
S507、若DASH代理实体未缓存有第i个媒体片段,则DASH代理实体向服务器发送第一媒体传输请求。S507. If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends a first media transmission request to the server.
S508、服务器根据第一媒体传输请求,向DASH代理实体发送码率为第一码率的第i个媒体片段。S508. The server sends, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the DASH proxy entity.
进一步的,在本发明实施例的第一种情形中,服务器根据预先定义的策略确定第一码率,并向DASH代理实体发送码率为第一码率的第i个媒体片段。
Further, in the first scenario of the embodiment of the present invention, the server determines the first code rate according to the predefined policy, and sends the ith media segment whose code rate is the first code rate to the DASH proxy entity.
进一步的,在本发明实施例的第二种情形中,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。服务器根据第一码率信息确定第一码率,并向DASH代理实体发送码率为第一码率的所述第i个媒体片段。Further, in the second scenario of the embodiment of the present invention, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate. The server determines the first code rate according to the first code rate information, and sends the ith media segment whose code rate is the first code rate to the DASH proxy entity.
S509、DASH代理实体向用户设备发送码率为第一码率的第i个媒体片段。S509. The DASH proxy entity sends the ith media segment whose code rate is the first code rate to the user equipment.
S510、用户设备播放码率为第一码率的第i个媒体片段。S510. The user equipment plays the ith media segment of the first code rate.
S511、服务器向DASH代理实体发送码率为第一码率的第i+1个媒体片段。S511. The server sends, to the DASH proxy entity, an i+1th media segment whose code rate is the first code rate.
具体的,S511可以包括:S511a和S511b。Specifically, S511 may include: S511a and S511b.
S511a、服务器根据第i个媒体片段的播放时长,确定第一时刻,第一时刻为发送第i+1个媒体片段的时刻。S511a. The server determines, according to the playing duration of the i-th media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
其中,第一时刻可以为早于或等于第i个媒体片段播放完的时刻。例如,第i个媒体片段的播放时长为6秒,若服务器第1分0秒向DASH代理实体发送码率为第一码率的第i个媒体片段,不考虑第i个媒体片段的传输时间,则服务器可以确定第一时刻为第1分0秒到第1分6秒之间的任一时刻。The first moment may be a time earlier than or equal to the end of the ith media segment. For example, the playing time of the i-th media segment is 6 seconds. If the server sends the i-th media segment with the first bit rate to the DASH proxy entity in the first minute and 0 seconds, regardless of the transmission time of the i-th media segment. Then, the server can determine that the first time is any time between the first minute 0 seconds and the first minute 6 seconds.
S511b、服务器在第一时刻向DASH代理实体发送码率为第一码率的第i+1个媒体片段。S511b. The server sends, to the DASH proxy entity, the i+1th media segment whose code rate is the first code rate.
S512、用户设备向DASH代理实体请求码率为第一码率的第i+1个媒体片段。S512. The user equipment requests, from the DASH proxy entity, an i+1th media segment whose code rate is the first code rate.
S513、DASH代理实体向用户设备发送码率为第一码率的第i+1个媒体片段。S513. The DASH proxy entity sends, to the user equipment, an i+1th media segment whose code rate is the first code rate.
由于服务器已经预先向DASH代理实体发送码率为第一码率的第i+1个媒体片段,因此,当用户设备向DASH代理实体请求码率为第一码率的第i+1个媒体片段时,DASH代理实体可以向用户设备发送已缓存的码率为第一码率的第i+1个媒体片段,减小了现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延。
Since the server has previously sent the i+1th media segment whose code rate is the first code rate to the DASH proxy entity, when the user equipment requests the DASH proxy entity for the i+1th media segment whose code rate is the first code rate. The DASH proxy entity may send the i+1th media segment whose buffered code rate is the first code rate to the user equipment, which reduces the i+ of the first bit rate of the user equipment in the prior art. Waiting delay in the process of 1 media segment.
S514、用户设备播放码率为第一码率的第i+1个媒体片段。S514. The user equipment plays the i+1th media segment of the first code rate.
S515、服务器向DASH代理实体发送码率为第一码率的第i+2个媒体片段。S515. The server sends, to the DASH proxy entity, an i+2 media segment whose code rate is the first code rate.
S516、用户设备访问用户设备的本地缓存,未在用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段。S516. The user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment.
其中,1≤j≤N,j为正整数,第二码率与第一码率不同。Wherein, 1≤j≤N, j is a positive integer, and the second code rate is different from the first code rate.
S517、用户设备向DASH代理实体发送第二媒体传输请求。S517. The user equipment sends a second media transmission request to the DASH proxy entity.
其中,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为第j个媒体片段,第二码率信息用于指示请求的媒体片段的码率为第二码率。The second media transmission request carries the second segment information and the second code rate information, the second segment information is used to indicate that the requested media segment is the jth media segment, and the second rate information is used to indicate the requested media segment. The code rate is the second code rate.
S518、若DASH代理实体未缓存***率为第二码率的第j个媒体片段,则DASH代理实体向服务器发送第二媒体传输请求。S518. If the DASH proxy entity does not cache the jth media segment with the second rate, the DASH proxy entity sends a second media transmission request to the server.
S519、服务器根据第二媒体传输请求,向DASH代理实体发送码率为第二码率的第j个媒体片段。S519. The server sends, according to the second media transmission request, a jth media segment whose code rate is the second code rate to the DASH proxy entity.
其中,当服务器接收到第二媒体传输请求时,若仍存在码率为第一码率的媒体片段正在传输,则服务器终止该码率为第一码率的媒体片段的传输。When the server receives the second media transmission request, if the media segment whose code rate is the first code rate is still being transmitted, the server terminates the transmission of the media segment whose code rate is the first code rate.
S520、DASH代理实体向用户设备发送码率为第二码率的第j个媒体片段。S520. The DASH proxy entity sends the jth media segment with a code rate of the second code rate to the user equipment.
S521、用户设备播放码率为第二码率的第j个媒体片段。S521. The user equipment plays the j-th media segment with the second bit rate.
需要说明的是,在S515之后,服务器还可以向DASH代理实体发送码率为第一码率的多个连续的媒体片段;在S519之后,服务器还可以向DASH代理实体发送码率为第二码率的多个连续的媒体片段,本发明实施例中仅是举例说明,并不限定服务器向DASH代理实体发送的连续的媒体片段的个数。It should be noted that, after S515, the server may further send a plurality of consecutive media segments with a code rate of the first code rate to the DASH proxy entity; after S519, the server may further send the code rate to the DASH proxy entity for the second code. The plurality of consecutive media segments of the rate are only exemplified in the embodiment of the present invention, and do not limit the number of consecutive media segments sent by the server to the DASH proxy entity.
本发明实施例提供的媒体流传输方法,由于DASH服务器预先向DASH代理实体发送码率为第一码率的第i+1个媒体片段,因此,当用户设备向DASH代理实体请求码率为第一码率的第i+1个媒体片段时,DASH代理实体可以向用户设备发送已缓存的码率为第一
码率的第i+1个媒体片段,减小了现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要DASH代理实体多次发送媒体传输请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。In the media stream transmission method provided by the embodiment of the present invention, the DASH server sends the i+1th media segment whose code rate is the first code rate to the DASH proxy entity, and therefore, when the user equipment requests the DASH proxy entity, the code rate is the first. The DASH proxy entity may send the cached code rate to the user equipment when the i+1th media segment of the code rate is the first.
The i+1th media segment of the code rate reduces the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first code rate in the prior art, and can improve the user equipment to obtain the media. The real-time nature of the stream file. In addition, the embodiment of the present invention adopts a method for actively sending by a server, and does not need to send a media transmission request multiple times by the DASH proxy entity, which can reduce signaling between devices compared with the method of interacting with the request-response message in the prior art. burden.
本发明实施例提供一种服务器,如图6所示,包括:接收单元61和发送单元62。An embodiment of the present invention provides a server, as shown in FIG. 6, including: a receiving unit 61 and a sending unit 62.
接收单元61,用于接收下游节点发送的第一媒体传输请求,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The receiving unit 61 is configured to receive a first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th of the media stream file to be transmitted. Media clips.
发送单元62,用于根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段。The sending unit 62 is configured to send, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
发送单元62,还用于向下游节点发送码率为第一码率的第i+1个媒体片段。The sending unit 62 is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
进一步的,如图7所示,本发明实施例中的服务器还包括:处理单元63。Further, as shown in FIG. 7, the server in the embodiment of the present invention further includes: a processing unit 63.
处理单元63,用于根据第i个媒体片段的播放时长,确定第一时刻,第一时刻为发送第i+1个媒体片段的时刻。The processing unit 63 is configured to determine, according to the playing duration of the ith media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
发送单元62,具体用于在第一时刻向下游节点发送码率为第一码率的第i+1个媒体片段。The sending unit 62 is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
可选的,处理单元63,还用于在发送单元62向下游节点发送码率为第一码率的第i个媒体片段之前,根据预先定义的策略确定第一码率。Optionally, the processing unit 63 is further configured to determine, according to a predefined policy, the first code rate before the sending unit 62 sends the ith media segment whose code rate is the first code rate to the downstream node.
可选的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。Optionally, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
处理单元63,还用于在发送单元62向下游节点发送码率为第
一码率的第i个媒体片段之前,根据第一码率信息确定第一码率。The processing unit 63 is further configured to send the code rate to the downstream node at the sending unit 62.
Before the i-th media segment of a code rate, the first code rate is determined according to the first code rate information.
进一步的,若1≤i<N-1,则发送单元62,还用于在向下游节点发送码率为第一码率的第i+1个媒体片段之后,向下游节点发送码率为第一码率的第i+2个媒体片段。Further, if 1≤i<N-1, the sending unit 62 is further configured to send the code rate to the downstream node after transmitting the i+1th media segment whose code rate is the first code rate to the downstream node. The i+2th media segment of a bit rate.
进一步的,接收单元61,还用于接收下游节点发送的第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,第二码率信息用于指示请求的媒体片段的码率为第二码率,第二码率与第一码率不同。Further, the receiving unit 61 is further configured to receive a second media transmission request sent by the downstream node, where the second media transmission request carries the second segment information and the second code rate information, where the second segment information is used to indicate the requested media segment. For the jth media segment of the media stream file to be transmitted, 1 ≤ j ≤ N, j is a positive integer, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
发送单元62,还用于根据第二媒体传输请求,向下游节点发送码率为第二码率的第j个媒体片段。The sending unit 62 is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
进一步的,处理单元63,还用于在接收单元61接收下游节点发送的第一媒体传输请求之前,控制服务器与下游节点建立HTTP会话连接。Further, the processing unit 63 is further configured to: before the receiving unit 61 receives the first media transmission request sent by the downstream node, the control server establishes an HTTP session connection with the downstream node.
接收单元61,还用于接收下游节点发送的推送功能使能消息,推送功能使能消息用于指示服务器向下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The receiving unit 61 is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
可选的,下游节点为用户设备;或者,下游节点为DASH代理实体。Optionally, the downstream node is a user equipment; or the downstream node is a DASH proxy entity.
需要说明的是,本发明实施例提供的服务器中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that the specific description of some of the functional modules in the server provided by the embodiment of the present invention may refer to the corresponding content in the method embodiment, and details are not described in detail in this embodiment.
本发明实施例提供的服务器,由于服务器在根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段之后,向下游节点发送码率为第一码率的第i+1个媒体片段,而无需等待下游节点的请求,因此,可以减小现有技术中下游节点获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高下游节点获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要下游节点多次发送请求,与现有技术中的
请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。In the server provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the server sends the code rate to the downstream node at the first code rate. i+1 media segments without waiting for the request of the downstream node, therefore, the waiting delay in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. It can improve the real-time performance of the downstream node to obtain the media stream file. In addition, since the embodiment of the present invention adopts a method for actively sending by a server, the downstream node does not need to send the request multiple times, which is related to the prior art.
Compared to the way the request-response message interacts, the signaling burden between devices can be reduced.
本发明实施例还提供一种用户设备,如图8所示,包括:发送单元71和接收单元72。The embodiment of the present invention further provides a user equipment, as shown in FIG. 8, comprising: a sending unit 71 and a receiving unit 72.
发送单元71,用于向服务器发送第一媒体传输请求,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The sending unit 71 is configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted. Fragment.
接收单元72,用于接收服务器发送的码率为第一码率的第i个媒体片段。The receiving unit 72 is configured to receive, by the server, an ith media segment whose code rate is the first code rate.
接收单元72,还用于接收服务器发送的码率为第一码率的第i+1个媒体片段。The receiving unit 72 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
进一步的,如图9所示,本发明实施例中的用户设备还包括:处理单元73。Further, as shown in FIG. 9, the user equipment in the embodiment of the present invention further includes: a processing unit 73.
处理单元73,用于在发送单元71向服务器发送第一媒体传输请求之前,访问用户设备的本地缓存,且未在用户设备的本地缓存中查找到第i个媒体片段。The processing unit 73 is configured to access the local cache of the user equipment before the sending unit 71 sends the first media transmission request to the server, and does not find the i-th media segment in the local cache of the user equipment.
进一步的,如图10所示,本发明实施例中的用户设备还包括:播放单元74。Further, as shown in FIG. 10, the user equipment in the embodiment of the present invention further includes: a playing unit 74.
播放单元74,用于在接收单元72接收服务器发送的码率为第一码率的第i个媒体片段之后,播放码率为第一码率的第i个媒体片段。The playing unit 74 is configured to: after the receiving unit 72 receives the ith media segment whose code rate is the first code rate, the playing rate is the ith media segment of the first code rate.
处理单元73,还用于在接收单元72接收服务器发送的码率为第一码率的第i+1个媒体片段之后,访问用户设备的本地缓存,且在用户设备的本地缓存中查找到码率为第一码率的第i+1个媒体片段。The processing unit 73 is further configured to: after receiving, by the receiving unit 72, the i+1th media segment whose code rate is the first code rate, accessing the local cache of the user equipment, and searching for the code in the local buffer of the user equipment. The rate is the i+1th media segment of the first code rate.
播放单元74,还用于播放码率为第一码率的第i+1个媒体片段。The playing unit 74 is further configured to play the i+1th media segment whose code rate is the first code rate.
进一步的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。
Further, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
进一步的,若1≤i<N-1,则接收单元72,还用于在接收服务器发送的码率为第一码率的第i+1个媒体片段之后,接收服务器发送的码率为第一码率的第i+2个媒体片段。Further, if 1≤i<N-1, the receiving unit 72 is further configured to: after the i+1th media segment of the first code rate sent by the receiving server is sent, the receiving server sends the code rate The i+2th media segment of a bit rate.
进一步的,处理单元73,还用于访问用户设备的本地缓存,且未在用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,第二码率与第一码率不同。Further, the processing unit 73 is further configured to access a local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, where 1≤j≤N,j is A positive integer, the second code rate is different from the first code rate.
发送单元71,还用于向服务器发送第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为第j个媒体片段,第二码率信息用于指示请求的媒体片段的码率为第二码率。The sending unit 71 is further configured to send a second media transmission request to the server, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate that the requested media segment is the jth media The fragment, the second rate information is used to indicate that the code rate of the requested media segment is the second code rate.
接收单元72,还用于接收服务器发送的码率为第二码率的第j个媒体片段。The receiving unit 72 is further configured to receive, by the server, a j-th media segment whose code rate is a second code rate.
播放单元74,还用于播放码率为第二码率的第j个媒体片段。The playing unit 74 is further configured to play the jth media segment whose code rate is the second code rate.
进一步的,处理单元73,还用于在发送单元71向服务器发送第一媒体传输请求之前,控制用户设备与服务器建立HTTP会话连接。Further, the processing unit 73 is further configured to control the user equipment to establish an HTTP session connection with the server before the sending unit 71 sends the first media transmission request to the server.
发送单元71,还用于向服务器发送推送功能使能消息,推送功能使能消息用于指示服务器向用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The sending unit 71 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
需要说明的是,本发明实施例提供的用户设备中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that the specific description of some of the functional modules in the user equipment provided by the embodiment of the present invention may be referred to the corresponding content in the method embodiment, which is not described in detail in this embodiment.
本发明实施例提供的用户设备,由于用户设备接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要用户设备多次发送请求,与现有技术中的请求-应答消息交互
的方式相比,可以减轻设备之间的信令负担。According to the user equipment provided by the embodiment of the present invention, after the user equipment receives the ith media segment whose code rate is the first code rate, and does not need to request the server again, the code rate sent by the server may be the first code rate. The i+1th media segment can reduce the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first bit rate, and can improve the user equipment to obtain the media. The real-time nature of the stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times, and interacts with the request-response message in the prior art.
Compared with the way, the signaling burden between devices can be alleviated.
本发明实施例还提供一种DASH代理实体,如图11所示,包括:接收单元81和发送单元82。The embodiment of the present invention further provides a DASH proxy entity, as shown in FIG. 11, comprising: a receiving unit 81 and a sending unit 82.
接收单元81,用于接收用户设备发送的第一媒体传输请求,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The receiving unit 81 is configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i th of the media stream file to be transmitted. Media clips.
发送单元82,用于若DASH代理实体未缓存有第i个媒体片段,则向服务器发送第一媒体传输请求。The sending unit 82 is configured to send a first media transmission request to the server if the DASH proxy entity does not cache the i-th media segment.
接收单元81,还用于接收服务器发送的码率为第一码率的第i个媒体片段。The receiving unit 81 is further configured to receive, by the server, an ith media segment whose code rate is the first code rate.
发送单元82,还用于向用户设备发送码率为第一码率的第i个媒体片段。The sending unit 82 is further configured to send, to the user equipment, an ith media segment whose code rate is the first code rate.
接收单元81,还用于接收服务器发送的码率为第一码率的第i+1个媒体片段。The receiving unit 81 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
进一步的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。Further, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
进一步的,接收单元81,还用于若1≤i<N-1,则在接收服务器发送的码率为第一码率的第i+1个媒体片段之后,接收服务器发送的码率为第一码率的第i+2个媒体片段。Further, the receiving unit 81 is further configured to: if 1≤i<N-1, the code rate sent by the receiving server is after the i+1th media segment of the first code rate sent by the receiving server The i+2th media segment of a bit rate.
进一步的,接收单元81,还用于接收用户设备发送的第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,第二码率信息用于指示请求的媒体片段的码率为第二码率,第二码率与第一码率不同。Further, the receiving unit 81 is further configured to receive a second media transmission request sent by the user equipment, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment. For the jth media segment of the media stream file to be transmitted, 1 ≤ j ≤ N, j is a positive integer, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
发送单元82,还用于若DASH代理实体未缓存***率为第二码率的第j个媒体片段,则向服务器发送第二媒体传输请求。The sending unit 82 is further configured to: if the DASH proxy entity does not cache the jth media segment with the second rate, the second media transmission request is sent to the server.
接收单元81,还用于接收服务器发送的码率为第二码率的第j
个媒体片段。The receiving unit 81 is further configured to receive the jth rate of the second bit rate sent by the server.
Media clips.
发送单元82,还用于向用户设备发送码率为第二码率的第j个媒体片段。The sending unit 82 is further configured to send, to the user equipment, a jth media segment whose code rate is the second code rate.
进一步的,如图12所示,本发明实施例中的DASH代理实体还包括:处理单元83。Further, as shown in FIG. 12, the DASH proxy entity in the embodiment of the present invention further includes: a processing unit 83.
处理单元83,用于在接收单元81接收用户设备发送的第一媒体传输请求之前,控制DASH代理实体与用户设备建立HTTP会话连接,并控制DASH代理实体与服务器建立HTTP会话连接。The processing unit 83 is configured to control the DASH proxy entity to establish an HTTP session connection with the user equipment before the receiving unit 81 receives the first media transmission request sent by the user equipment, and control the DASH proxy entity to establish an HTTP session connection with the server.
发送单元82,还用于向服务器发送推送功能使能消息,推送功能使能消息用于指示服务器向DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。The sending unit 82 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity.
需要说明的是,本发明实施例提供的DASH代理实体中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that the specific description of some functional modules in the DASH proxy entity provided by the embodiment of the present invention may be referred to the corresponding content in the method embodiment, and details are not described in detail in this embodiment.
本发明实施例提供的DASH代理实体,由于DASH代理实体接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中DASH代理实体获取码率为第一码率的第i+1个媒体片段的过程中的等待时延。当用户设备需要获取码率为第一码率的第i+1个媒体片段时,由于DASH代理实体已缓存码率为第一码率的第i+1个媒体片段,因此,用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延也被减小,从而可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要DASH代理实体多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The DASH proxy entity provided by the embodiment of the present invention can receive the first bit rate of the first bit rate after the DASH proxy entity receives the ith media segment of the first code rate, and the received code rate of the receiving server is the first. The i+1th media segment of the code rate, therefore, can reduce the waiting delay in the process of the DASH proxy entity acquiring the i+1th media segment of the first code rate in the prior art. When the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code. The waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本发明实施例还提供一种服务器,如图13所示,包括:接收器91和发送器92。The embodiment of the present invention further provides a server, as shown in FIG. 13, comprising: a receiver 91 and a transmitter 92.
接收器91,用于接收下游节点发送的第一媒体传输请求,第一
媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The receiver 91 is configured to receive a first media transmission request sent by the downstream node, where
The media segment request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted.
发送器92,用于根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段。The transmitter 92 is configured to send, according to the first media transmission request, an ith media segment whose code rate is the first code rate to the downstream node.
发送器92,还用于向下游节点发送码率为第一码率的第i+1个媒体片段。The transmitter 92 is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
进一步的,如图14所示,本发明实施例中的服务器还包括:处理器93。Further, as shown in FIG. 14, the server in the embodiment of the present invention further includes: a processor 93.
处理器93,用于根据第i个媒体片段的播放时长,确定第一时刻,第一时刻为发送第i+1个媒体片段的时刻。The processor 93 is configured to determine, according to the playing duration of the ith media segment, the first time, where the first time is the time when the (i+1)th media segment is sent.
发送器92,具体用于在第一时刻向下游节点发送码率为第一码率的第i+1个媒体片段。The transmitter 92 is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
可选的,处理器93,还用于在发送器92向下游节点发送码率为第一码率的第i个媒体片段之前,根据预先定义的策略确定第一码率。Optionally, the processor 93 is further configured to determine, according to a predefined policy, the first code rate before the transmitter 92 sends the i-th media segment whose code rate is the first code rate to the downstream node.
可选的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。Optionally, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
处理器93,还用于在发送器92向下游节点发送码率为第一码率的第i个媒体片段之前,根据第一码率信息确定第一码率。The processor 93 is further configured to determine the first code rate according to the first code rate information before the transmitter 92 sends the ith media segment whose code rate is the first code rate to the downstream node.
进一步的,若1≤i<N-1,则发送器92,还用于在向下游节点发送码率为第一码率的第i+1个媒体片段之后,向下游节点发送码率为第一码率的第i+2个媒体片段。Further, if 1 ≤ i < N-1, the transmitter 92 is further configured to send the code rate to the downstream node after transmitting the i+1th media segment whose code rate is the first code rate to the downstream node. The i+2th media segment of a bit rate.
进一步的,接收器91,还用于接收下游节点发送的第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,第二码率信息用于指示请求的媒体片段的码率为第二码率,第二码率与第一码率不同。
Further, the receiver 91 is further configured to receive a second media transmission request sent by the downstream node, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment. For the jth media segment of the media stream file to be transmitted, 1 ≤ j ≤ N, j is a positive integer, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
发送器92,还用于根据第二媒体传输请求,向下游节点发送码率为第二码率的第j个媒体片段。The transmitter 92 is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
进一步的,处理器93,还用于在接收器91接收下游节点发送的第一媒体传输请求之前,控制服务器与下游节点建立HTTP会话连接。Further, the processor 93 is further configured to: before the receiver 91 receives the first media transmission request sent by the downstream node, the control server establishes an HTTP session connection with the downstream node.
接收器91,还用于接收下游节点发送的推送功能使能消息,推送功能使能消息用于指示服务器向下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The receiver 91 is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
可选的,下游节点为用户设备;或者,下游节点为DASH代理实体。Optionally, the downstream node is a user equipment; or the downstream node is a DASH proxy entity.
需要说明的是,本发明实施例提供的服务器中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that the specific description of some of the functional modules in the server provided by the embodiment of the present invention may refer to the corresponding content in the method embodiment, and details are not described in detail in this embodiment.
本发明实施例提供的服务器,由于服务器在根据第一媒体传输请求,向下游节点发送码率为第一码率的第i个媒体片段之后,向下游节点发送码率为第一码率的第i+1个媒体片段,而无需等待下游节点的请求,因此,可以减小现有技术中下游节点获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高下游节点获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要下游节点多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。In the server provided by the embodiment of the present invention, after the server sends the ith media segment whose code rate is the first code rate to the downstream node according to the first media transmission request, the server sends the code rate to the downstream node at the first code rate. i+1 media segments without waiting for the request of the downstream node, therefore, the waiting delay in the process of obtaining the i+1th media segment of the first code rate by the downstream node in the prior art can be reduced. It can improve the real-time performance of the downstream node to obtain the media stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the downstream node to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本发明实施例还提供一种用户设备,如图15所示,包括:发送器A1和接收器A2。The embodiment of the invention further provides a user equipment, as shown in FIG. 15, comprising: a transmitter A1 and a receiver A2.
发送器A1,用于向服务器发送第一媒体传输请求,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The sender A1 is configured to send a first media transmission request to the server, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the i-th media of the media stream file to be transmitted. Fragment.
接收器A2,用于接收服务器发送的码率为第一码率的第i个媒体片段。The receiver A2 is configured to receive an ith media segment that is sent by the server and has a first rate.
接收器A2,还用于接收服务器发送的码率为第一码率的第i+1
个媒体片段。The receiver A2 is further configured to receive the i+1 of the first code rate sent by the server.
Media clips.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
进一步的,如图16所示,本发明实施例中的用户设备还包括:处理器A3。Further, as shown in FIG. 16, the user equipment in the embodiment of the present invention further includes: a processor A3.
处理器A3,用于在发送器A1向服务器发送第一媒体传输请求之前,访问用户设备的本地缓存,且未在用户设备的本地缓存中查找到第i个媒体片段。The processor A3 is configured to access the local cache of the user equipment before the sender A1 sends the first media transmission request to the server, and does not find the i-th media segment in the local cache of the user equipment.
进一步的,如图17所示,本发明实施例中的用户设备还包括:播放器A4。Further, as shown in FIG. 17, the user equipment in the embodiment of the present invention further includes: a player A4.
播放器A4,用于在接收器A2接收服务器发送的码率为第一码率的第i个媒体片段之后,播放码率为第一码率的第i个媒体片段。The player A4 is configured to play the ith media segment of the first code rate after the receiver A2 receives the ith media segment of the first code rate sent by the server.
处理器A3,还用于在接收器A2接收服务器发送的码率为第一码率的第i+1个媒体片段之后,访问用户设备的本地缓存,且在用户设备的本地缓存中查找到码率为第一码率的第i+1个媒体片段。The processor A3 is further configured to: after the receiver A2 receives the i+1th media segment that is sent by the server and is the first code rate, access the local cache of the user equipment, and find the code in the local cache of the user equipment. The rate is the i+1th media segment of the first code rate.
播放器A4,还用于播放码率为第一码率的第i+1个媒体片段。The player A4 is further configured to play the i+1th media segment whose code rate is the first code rate.
进一步的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。Further, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
进一步的,若1≤i<N-1,则接收器A2,还用于在接收服务器发送的码率为第一码率的第i+1个媒体片段之后,接收服务器发送的码率为第一码率的第i+2个媒体片段。Further, if 1≤i<N-1, the receiver A2 is further configured to: after the i+1th media segment of the first code rate sent by the receiving server, the receiving server sends the code rate The i+2th media segment of a bit rate.
进一步的,处理器A3,还用于访问用户设备的本地缓存,且未在用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,第二码率与第一码率不同。Further, the processor A3 is further configured to access a local cache of the user equipment, and the jth media segment whose code rate is the second code rate is not found in the local buffer of the user equipment, where 1≤j≤N,j is A positive integer, the second code rate is different from the first code rate.
发送器A1,还用于向服务器发送第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为第j个媒体片段,第二码率信息用于指示请求的媒体片段的码率为第二码率。The transmitter A1 is further configured to send a second media transmission request to the server, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate that the requested media segment is the jth media The fragment, the second rate information is used to indicate that the code rate of the requested media segment is the second code rate.
接收器A2,还用于接收服务器发送的码率为第二码率的第j个
媒体片段。The receiver A2 is further configured to receive the jth rate of the second rate rate sent by the server.
Media clips.
播放器A4,还用于播放码率为第二码率的第j个媒体片段。The player A4 is further configured to play the jth media segment whose code rate is the second code rate.
进一步的,处理器A3,还用于在发送器A1向服务器发送第一媒体传输请求之前,控制用户设备与服务器建立HTTP会话连接。Further, the processor A3 is further configured to control the user equipment to establish an HTTP session connection with the server before the sender A1 sends the first media transmission request to the server.
发送器A1,还用于向服务器发送推送功能使能消息,推送功能使能消息用于指示服务器向用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The sender A1 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
需要说明的是,本发明实施例提供的用户设备中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that the specific description of some of the functional modules in the user equipment provided by the embodiment of the present invention may be referred to the corresponding content in the method embodiment, which is not described in detail in this embodiment.
本发明实施例提供的用户设备,由于用户设备接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延,可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要用户设备多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。According to the user equipment provided by the embodiment of the present invention, after the user equipment receives the ith media segment whose code rate is the first code rate, and does not need to request the server again, the code rate sent by the server may be the first code rate. The i+1th media segment can reduce the waiting delay in the process of the user equipment acquiring the i+1th media segment of the first bit rate, and can improve the user equipment to obtain the media. The real-time nature of the stream file. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the user equipment to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
本发明实施例还提供一种DASH代理实体,如图18所示,包括:接收器B1和发送器B2。The embodiment of the present invention further provides a DASH proxy entity, as shown in FIG. 18, including: a receiver B1 and a transmitter B2.
接收器B1,用于接收用户设备发送的第一媒体传输请求,第一媒体传输请求中携带第一片段信息,第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段。The receiver B1 is configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is the i-th of the media stream file to be transmitted. Media clips.
发送器B2,用于若DASH代理实体未缓存有第i个媒体片段,则向服务器发送第一媒体传输请求。The sender B2 is configured to send a first media transmission request to the server if the DASH proxy entity does not cache the i-th media segment.
接收器B1,还用于接收服务器发送的码率为第一码率的第i个媒体片段。The receiver B1 is further configured to receive an ith media segment that is sent by the server and has a code rate of a first code rate.
发送器B2,还用于向用户设备发送码率为第一码率的第i个媒体片段。
The transmitter B2 is further configured to send, to the user equipment, an ith media segment whose code rate is the first code rate.
接收器B1,还用于接收服务器发送的码率为第一码率的第i+1个媒体片段。The receiver B1 is further configured to receive, by the server, an i+1th media segment whose code rate is the first code rate.
其中,待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
进一步的,第一媒体传输请求中还携带第一码率信息,第一码率信息用于指示请求的媒体片段的码率为第一码率。Further, the first media transmission request further carries the first rate information, where the first rate information is used to indicate that the code rate of the requested media segment is the first code rate.
进一步的,接收器B1,还用于若1≤i<N-1,则在接收服务器发送的码率为第一码率的第i+1个媒体片段之后,接收服务器发送的码率为第一码率的第i+2个媒体片段。Further, the receiver B1 is further configured to: if 1≤i<N-1, the code rate sent by the receiving server is after the i+1th media segment of the first code rate sent by the receiving server The i+2th media segment of a bit rate.
进一步的,接收器B1,还用于接收用户设备发送的第二媒体传输请求,第二媒体传输请求中携带第二片段信息和第二码率信息,第二片段信息用于指示请求的媒体片段为待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,第二码率信息用于指示请求的媒体片段的码率为第二码率,第二码率与第一码率不同。Further, the receiver B1 is further configured to receive a second media transmission request sent by the user equipment, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate the requested media segment. For the jth media segment of the media stream file to be transmitted, 1 ≤ j ≤ N, j is a positive integer, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate, and the second code rate Different from the first code rate.
发送器B2,还用于若DASH代理实体未缓存***率为第二码率的第j个媒体片段,则向服务器发送第二媒体传输请求。The transmitter B2 is further configured to send a second media transmission request to the server if the DASH proxy entity does not cache the jth media segment with the second rate.
接收器B1,还用于接收服务器发送的码率为第二码率的第j个媒体片段。The receiver B1 is further configured to receive the jth media segment sent by the server and having a second rate.
发送器B2,还用于向用户设备发送码率为第二码率的第j个媒体片段。The transmitter B2 is further configured to send, to the user equipment, a jth media segment whose code rate is the second code rate.
进一步的,如图19所示,本发明实施例中的DASH代理实体还包括:处理器B3。Further, as shown in FIG. 19, the DASH proxy entity in the embodiment of the present invention further includes: a processor B3.
处理器B3,用于在接收器B1接收用户设备发送的第一媒体传输请求之前,控制DASH代理实体与用户设备建立HTTP会话连接,并控制DASH代理实体与服务器建立HTTP会话连接。The processor B3 is configured to control the DASH proxy entity to establish an HTTP session connection with the user equipment, and control the DASH proxy entity to establish an HTTP session connection with the server, before the receiver B1 receives the first media transmission request sent by the user equipment.
发送器B2,还用于向服务器发送推送功能使能消息,推送功能使能消息用于指示服务器向DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。The sender B2 is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity.
需要说明的是,本发明实施例提供的DASH代理实体中部分功
能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。It should be noted that some functions in the DASH proxy entity provided by the embodiments of the present invention are required.
For a detailed description of the energy module, refer to the corresponding content in the method embodiment, which is not described in detail in this embodiment.
本发明实施例提供的DASH代理实体,由于DASH代理实体接收服务器发送的码率为第一码率的第i个媒体片段之后,无需再向服务器请求,便可以接收服务器发送的码率为第一码率的第i+1个媒体片段,因此,可以减小现有技术中DASH代理实体获取码率为第一码率的第i+1个媒体片段的过程中的等待时延。当用户设备需要获取码率为第一码率的第i+1个媒体片段时,由于DASH代理实体已缓存码率为第一码率的第i+1个媒体片段,因此,用户设备获取码率为第一码率的第i+1个媒体片段的过程中的等待时延也被减小,从而可以提高用户设备获取媒体流文件的实时性。此外,由于本发明实施例采用服务器主动发送的方法,不需要DASH代理实体多次发送请求,与现有技术中的请求-应答消息交互的方式相比,可以减轻设备之间的信令负担。The DASH proxy entity provided by the embodiment of the present invention can receive the first bit rate of the first bit rate after the DASH proxy entity receives the ith media segment of the first code rate, and the received code rate of the receiving server is the first. The i+1th media segment of the code rate, therefore, can reduce the waiting delay in the process of the DASH proxy entity acquiring the i+1th media segment of the first code rate in the prior art. When the user equipment needs to obtain the i+1th media segment whose code rate is the first code rate, since the DASH proxy entity has cached the i+1th media segment of the first code rate, the user equipment acquires the code. The waiting delay in the process of the i+1th media segment of the first code rate is also reduced, so that the real-time performance of the user equipment to obtain the media stream file can be improved. In addition, the embodiment of the present invention adopts a method for the server to actively send, and does not require the DASH proxy entity to send the request multiple times. Compared with the manner of the request-response message in the prior art, the signaling burden between the devices can be alleviated.
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Through the description of the above embodiments, those skilled in the art can clearly understand that for the convenience and brevity of the description, only the division of the above functional modules is illustrated. In practical applications, the above functions can be allocated according to needs. It is completed by different functional modules, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. For the specific working process of the system, the device and the unit described above, reference may be made to the corresponding process in the foregoing method embodiments, and details are not described herein again.
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
In the several embodiments provided by the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or components may be used. Combinations can be integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,缩写:ROM)、随机存取存储器(英文:Random Access Memory,缩写:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The integrated unit, if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium. The instructions include a plurality of instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (English: processor) to perform all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: a USB flash drive, a mobile hard disk, a read-only memory (English: Read-Only Memory, abbreviation: ROM), a random access memory (English: Random Access Memory, abbreviation: RAM), a magnetic disk or an optical disk, and the like. A variety of media that can store program code.
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
The above is only a specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or substitutions within the technical scope of the present invention. It should be covered by the scope of the present invention. Therefore, the scope of the invention should be determined by the scope of the appended claims.
Claims (40)
- 一种媒体流传输方法,其特征在于,包括:A media stream transmission method, comprising:服务器接收下游节点发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The server receives the first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the ith of the media stream file to be transmitted. Media clip所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段;Sending, by the server, the i th media segment with a code rate of a first code rate to the downstream node according to the first media transmission request;所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片段;Sending, by the server, the i+1th media segment whose code rate is the first code rate to the downstream node;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
- 根据权利要求1所述的方法,其特征在于,所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片段,包括:The method according to claim 1, wherein the server sends the i+1th media segment whose code rate is the first code rate to the downstream node, including:所述服务器根据所述第i个媒体片段的播放时长,确定第一时刻,所述第一时刻为发送所述第i+1个媒体片段的时刻;Determining, by the server, a first time according to a playing duration of the i-th media segment, where the first time is a time for sending the (i+1)th media segment;所述服务器在所述第一时刻向所述下游节点发送码率为所述第一码率的所述第i+1个媒体片段。Sending, by the server, the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- 根据权利要求1或2所述的方法,其特征在于,所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段,包括:The method according to claim 1 or 2, wherein the server sends the i-th media segment having a code rate of a first code rate to the downstream node according to the first media transmission request, including :所述服务器根据预先定义的策略确定所述第一码率;Determining, by the server, the first code rate according to a predefined policy;所述服务器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段。The server sends the i-th media segment whose code rate is the first code rate to the downstream node.
- 根据权利要求1或2所述的方法,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率;The method according to claim 1 or 2, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate a code rate of the requested media segment. The first code rate;所述服务器根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段,包括:Sending, by the server, the ith media segment with a code rate of the first code rate to the downstream node according to the first media transmission request, including:所述服务器根据所述第一码率信息确定所述第一码率; Determining, by the server, the first code rate according to the first code rate information;所述服务器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段。The server sends the i-th media segment whose code rate is the first code rate to the downstream node.
- 根据权利要求1-4中任一项所述的方法,其特征在于,若1≤i<N-1,则在所述服务器向所述下游节点发送码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:The method according to any one of claims 1 to 4, wherein if 1 ≤ i < N-1, the server transmits a code rate to the downstream node at a rate of the first code rate. After i+1 media segments, the method further includes:所述服务器向所述下游节点发送码率为所述第一码率的第i+2个媒体片段。The server sends the i+2th media segment whose code rate is the first code rate to the downstream node.
- 根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 5, wherein the method further comprises:所述服务器接收所述下游节点发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;The server receives the second media transmission request sent by the downstream node, where the second media transmission request carries the second segment information and the second rate information, where the second segment information is used to indicate that the requested media segment is The j-th media segment of the media stream file to be transmitted, 1≤j≤N,j is a positive integer, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate. The second code rate is different from the first code rate;所述服务器根据所述第二媒体传输请求,向所述下游节点发送码率为所述第二码率的所述第j个媒体片段。And the server sends, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- 根据权利要求1-6中任一项所述的方法,其特征在于,在所述服务器接收下游节点发送的第一媒体传输请求之前,所述方法还包括:The method according to any one of claims 1 to 6, wherein before the server receives the first media transmission request sent by the downstream node, the method further includes:所述服务器与所述下游节点建立超文本传输协议HTTP会话连接;The server establishes a hypertext transfer protocol HTTP session connection with the downstream node;所述服务器接收所述下游节点发送的推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The server receives a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the downstream node.
- 根据权利要求1-7中任一项所述的方法,其特征在于,所述下游节点为用户设备;或者,所述下游节点为超文本传送协议动态自适应流DASH代理实体。The method according to any one of claims 1 to 7, wherein the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive stream DASH proxy entity.
- 一种媒体流传输方法,其特征在于,包括:A media stream transmission method, comprising:用户设备向服务器发送第一媒体传输请求,所述第一媒体传输请 求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The user equipment sends a first media transmission request to the server, where the first media transmission is requested The first fragment information is used to indicate that the requested media segment is the i-th media segment of the media stream file to be transmitted;所述用户设备接收所述服务器发送的码率为第一码率的所述第i个媒体片段;Receiving, by the user equipment, the ith media segment that is sent by the server to a first code rate;所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;Receiving, by the user equipment, an i+1th media segment that is sent by the server and having a code rate of the first code rate;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
- 根据权利要求9所述的方法,其特征在于,在所述用户设备向服务器发送第一媒体传输请求之前,所述方法还包括:The method according to claim 9, wherein before the sending, by the user equipment, the first media transmission request to the server, the method further comprises:所述用户设备访问所述用户设备的本地缓存,未在所述用户设备的本地缓存中查找到所述第i个媒体片段。The user equipment accesses the local cache of the user equipment, and the i-th media segment is not found in the local cache of the user equipment.
- 根据权利要求9或10所述的方法,其特征在于,在所述用户设备接收所述服务器发送的码率为第一码率的所述第i个媒体片段之后,所述方法还包括:The method according to claim 9 or 10, wherein after the user equipment receives the ith media segment that is sent by the server and the code rate is the first code rate, the method further includes:所述用户设备播放码率为所述第一码率的所述第i个媒体片段;The user equipment plays a code rate of the ith media segment of the first code rate;在所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:After the user equipment receives the (i+1)th media segment that is sent by the server and the code rate is the first code rate, the method further includes:所述用户设备访问所述用户设备的本地缓存,在所述用户设备的本地缓存中查找到码率为所述第一码率的第i+1个媒体片段,并播放码率为所述第一码率的第i+1个媒体片段。The user equipment accesses a local cache of the user equipment, and finds, in a local cache of the user equipment, an i+1th media segment whose code rate is the first code rate, and the play rate is the number The i+1th media segment of a bit rate.
- 根据权利要求9-11中任一项所述的方法,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。The method according to any one of claims 9-11, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment. The code rate is the first code rate.
- 根据权利要求9-12中任一项所述的方法,其特征在于,若1≤i<N-1,则在所述用户设备接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:The method according to any one of claims 9 to 12, wherein if 1≤i<N-1, the user equipment receives the code rate sent by the server as the first code rate. After the i+1th media segment, the method further includes:所述用户设备接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。 The user equipment receives an i+2th media segment whose code rate sent by the server is the first code rate.
- 根据权利要求9-13中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 9 to 13, wherein the method further comprises:所述用户设备访问所述用户设备的本地缓存,未在所述用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率与所述第一码率不同;The user equipment accesses the local cache of the user equipment, and does not find the jth media segment whose code rate is the second code rate in the local buffer of the user equipment, where 1≤j≤N, j is a positive integer. The second code rate is different from the first code rate;所述用户设备向所述服务器发送第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述第j个媒体片段,所述第二码率信息用于指示请求的媒体片段的码率为所述第二码率;The user equipment sends a second media transmission request to the server, where the second media transmission request carries the second fragment information and the second rate information, where the second fragment information is used to indicate that the requested media segment is The jth media segment, the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;所述用户设备接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段,并播放码率为所述第二码率的所述第j个媒体片段。The user equipment receives the jth media segment sent by the server and the code rate is the jth media segment of the second code rate.
- 根据权利要求9-14中任一项所述的方法,其特征在于,在所述用户设备向服务器发送第一媒体传输请求之前,所述方法还包括:The method according to any one of claims 9 to 14, wherein before the user equipment sends a first media transmission request to the server, the method further includes:所述用户设备与所述服务器建立超文本传输协议HTTP会话连接;The user equipment establishes a hypertext transfer protocol HTTP session connection with the server;所述用户设备向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The user equipment sends a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the user equipment.
- 一种媒体流传输方法,其特征在于,包括:A media stream transmission method, comprising:超文本传送协议动态自适应流DASH代理实体接收用户设备发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The hypertext transfer protocol dynamic adaptive stream DASH proxy entity receives the first media transmission request sent by the user equipment, where the first media transmission request carries the first fragment information, where the first fragment information is used to indicate that the requested media segment is The i-th media segment of the media stream file to be transmitted;若所述DASH代理实体未缓存有所述第i个媒体片段,则所述DASH代理实体向服务器发送所述第一媒体传输请求;If the DASH proxy entity does not cache the i-th media segment, the DASH proxy entity sends the first media transmission request to the server;所述DASH代理实体接收所述服务器发送的码率为第一码率的所述第i个媒体片段,并向所述用户设备发送码率为所述第一码率的 所述第i个媒体片段;The DASH proxy entity receives the ith media segment of the first code rate sent by the server, and sends the code rate to the user equipment to the first code rate. The ith media segment;所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The DASH proxy entity receives an i+1th media segment of the first code rate sent by the server;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
- 根据权利要求16所述的方法,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。The method according to claim 16, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate that a code rate of the requested media segment is the first One bit rate.
- 根据权利要求16或17所述的方法,其特征在于,若1≤i<N-1,则在所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,所述方法还包括:The method according to claim 16 or 17, wherein if 1 ≤ i < N-1, the code rate transmitted by the server is received by the DASH proxy entity as the i+ of the first code rate. After one media segment, the method further includes:所述DASH代理实体接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。The DASH proxy entity receives the i+2th media segment that the code rate sent by the server is the first code rate.
- 根据权利要求16-18中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 16 to 18, wherein the method further comprises:所述DASH代理实体接收所述用户设备发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;The DASH proxy entity receives the second media transmission request sent by the user equipment, where the second media transmission request carries the second fragment information and the second rate information, where the second fragment information is used to indicate the requested media. The fragment is the j-th media segment of the media stream file to be transmitted, 1≤j≤N, j is a positive integer, and the second rate information is used to indicate that the code rate of the requested media segment is the second code rate. The second code rate is different from the first code rate;若所述DASH代理实体未缓存***率为所述第二码率的所述第j个媒体片段,则所述DASH代理实体向所述服务器发送所述第二媒体传输请求;And if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, the DASH proxy entity sends the second media transmission request to the server;所述DASH代理实体接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段,并向所述用户设备发送码率为所述第二码率的所述第j个媒体片段。Receiving, by the DASH proxy entity, the jth media segment sent by the server with the code rate of the second code rate, and transmitting, to the user equipment, the code rate of the jth rate of the second code rate Media clips.
- 根据权利要求16-19中任一项所述的方法,其特征在于,在所述DASH代理实体接收用户设备发送的第一媒体传输请求之前,所 述方法还包括:The method according to any one of claims 16 to 19, wherein before the DASH proxy entity receives the first media transmission request sent by the user equipment, The method also includes:所述DASH代理实体与所述用户设备建立超文本传输协议HTTP会话连接,所述DASH代理实体与所述服务器建立HTTP会话连接;The DASH proxy entity establishes a hypertext transfer protocol HTTP session connection with the user equipment, and the DASH proxy entity establishes an HTTP session connection with the server;所述DASH代理实体向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。The DASH proxy entity sends a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media segments of the same media stream file of the same code rate to the DASH proxy entity.
- 一种服务器,其特征在于,包括:A server, comprising:接收器,用于接收下游节点发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;The receiver is configured to receive a first media transmission request sent by the downstream node, where the first media transmission request carries the first segment information, where the first segment information is used to indicate that the requested media segment is the media stream file to be transmitted. The i-th media segment;发送器,用于根据所述第一媒体传输请求,向所述下游节点发送码率为第一码率的所述第i个媒体片段;a transmitter, configured to send, according to the first media transmission request, the i th media segment with a code rate of a first code rate to the downstream node;所述发送器,还用于向所述下游节点发送码率为所述第一码率的第i+1个媒体片段;The transmitter is further configured to send, to the downstream node, an i+1th media segment whose code rate is the first code rate;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
- 根据权利要求21所述的服务器,其特征在于,所述服务器,还包括:The server according to claim 21, wherein the server further comprises:处理器,用于根据所述第i个媒体片段的播放时长,确定第一时刻,所述第一时刻为发送所述第i+1个媒体片段的时刻;a processor, configured to determine a first time according to a playing duration of the i-th media segment, where the first time is a time when the (i+1)th media segment is sent;所述发送器,具体用于在所述第一时刻向所述下游节点发送码率为所述第一码率的所述第i+1个媒体片段。The transmitter is configured to send the i+1th media segment whose code rate is the first code rate to the downstream node at the first time.
- 根据权利要求21或22所述的服务器,其特征在于,所述处理器,还用于在所述发送器向所述下游节点发送码率为所述第一码率的所述第i个媒体片段之前,根据预先定义的策略确定所述第一码率。The server according to claim 21 or 22, wherein the processor is further configured to send, at the sender, the i-th media with a code rate of the first code rate to the downstream node. Prior to the segment, the first code rate is determined according to a predefined strategy.
- 根据权利要求21或22所述的服务器,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率;The server according to claim 21 or 22, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate a code rate of the requested media segment. The first code rate;所述处理器,还用于在所述发送器向所述下游节点发送码率为所 述第一码率的所述第i个媒体片段之前,根据所述第一码率信息确定所述第一码率。The processor is further configured to send, at the sender, a code rate to the downstream node Before the ith media segment of the first code rate, the first code rate is determined according to the first code rate information.
- 根据权利要求21-24中任一项所述的服务器,其特征在于,若1≤i<N-1,则所述发送器,还用于在向所述下游节点发送码率为所述第一码率的第i+1个媒体片段之后,向所述下游节点发送码率为所述第一码率的第i+2个媒体片段。The server according to any one of claims 21 to 24, wherein, if 1 ≤ i < N-1, the transmitter is further configured to send a code rate to the downstream node. After the i+1th media segment of the code rate, the i+2th media segment whose code rate is the first code rate is sent to the downstream node.
- 根据权利要求21-25中任一项所述的服务器,其特征在于,所述接收器,还用于接收所述下游节点发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;The server according to any one of claims 21 to 25, wherein the receiver is further configured to receive a second media transmission request sent by the downstream node, where the second media transmission request carries a second a second segment information and a second code rate information, where the second segment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, where 1≤j≤N, j is a positive integer. The second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;所述发送器,还用于根据所述第二媒体传输请求,向所述下游节点发送码率为所述第二码率的所述第j个媒体片段。The transmitter is further configured to send, according to the second media transmission request, the jth media segment whose code rate is the second code rate to the downstream node.
- 根据权利要求21-26中任一项所述的服务器,其特征在于,所述处理器,还用于在所述接收器接收下游节点发送的第一媒体传输请求之前,控制所述服务器与所述下游节点建立超文本传输协议HTTP会话连接;The server according to any one of claims 21 to 26, wherein the processor is further configured to control the server and the server before the receiver receives the first media transmission request sent by the downstream node. Said downstream node establishes a hypertext transfer protocol HTTP session connection;所述接收器,还用于接收所述下游节点发送的推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述下游节点发送相同码率的同一媒体流文件的连续的媒体片段。The receiver is further configured to receive a push function enable message sent by the downstream node, where the push function enable message is used to instruct the server to send the same media stream file of the same code rate to the downstream node. Media clips.
- 根据权利要求21-27中任一项所述的服务器,其特征在于,所述下游节点为用户设备;或者,所述下游节点为超文本传送协议动态自适应流DASH代理实体。The server according to any one of claims 21 to 27, wherein the downstream node is a user equipment; or the downstream node is a hypertext transfer protocol dynamic adaptive stream DASH proxy entity.
- 一种用户设备,其特征在于,包括:A user equipment, comprising:发送器,用于向服务器发送第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a transmitter, configured to send a first media transmission request to the server, where the first media transmission request carries a first segment information, where the first segment information is used to indicate that the requested media segment is a media stream file to be transmitted. i media clips;接收器,用于接收所述服务器发送的码率为第一码率的所述第i 个媒体片段;a receiver, configured to receive the ith of the first code rate sent by the server Media clips;所述接收器,还用于接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i和N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i and N are positive integers.
- 根据权利要求29所述的用户设备,其特征在于,所述用户设备,还包括:The user equipment according to claim 29, wherein the user equipment further comprises:处理器,用于在所述发送器向服务器发送第一媒体传输请求之前,访问所述用户设备的本地缓存,且未在所述用户设备的本地缓存中查找到所述第i个媒体片段。And a processor, configured to access a local cache of the user equipment, and not find the i-th media segment in a local cache of the user equipment, before the sender sends the first media transmission request to the server.
- 根据权利要求29或30所述的用户设备,其特征在于,所述用户设备,还包括:The user equipment according to claim 29 or 30, wherein the user equipment further comprises:播放器,用于在所述接收器接收所述服务器发送的码率为第一码率的所述第i个媒体片段之后,播放码率为所述第一码率的所述第i个媒体片段;a player, after the receiver receives the ith media segment that is sent by the server and has a code rate of a first code rate, playing the ith media of the first code rate Fragment所述处理器,还用于在所述接收器接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,访问所述用户设备的本地缓存,且在所述用户设备的本地缓存中查找到码率为所述第一码率的第i+1个媒体片段;The processor is further configured to: after receiving, by the receiver, the i+1th media segment of the first code rate sent by the server, accessing a local cache of the user equipment, and Finding an i+1th media segment whose code rate is the first code rate in a local cache of the user equipment;所述播放器,还用于播放码率为所述第一码率的第i+1个媒体片段。The player is further configured to play the i+1th media segment whose code rate is the first code rate.
- 根据权利要求29-31中任一项所述的用户设备,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。The user equipment according to any one of claims 29 to 31, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate the requested media segment. The code rate is the first code rate.
- 根据权利要求29-32中任一项所述的用户设备,其特征在于,若1≤i<N-1,则所述接收器,还用于在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。The user equipment according to any one of claims 29 to 32, wherein, if 1 ≤ i < N-1, the receiver is further configured to receive the code rate sent by the server After the i+1th media segment of the first code rate, the first and second media segments of the first code rate are received by the server.
- 根据权利要求29-33中任一项所述的用户设备,其特征在于, 所述处理器,还用于访问所述用户设备的本地缓存,且未在所述用户设备的本地缓存中查找到码率为第二码率的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率与所述第一码率不同;User equipment according to any one of claims 29-33, characterized in that The processor is further configured to access a local cache of the user equipment, and not find a jth media segment whose code rate is a second code rate in a local cache of the user equipment, where 1≤j≤N, j is a positive integer, and the second code rate is different from the first code rate;所述发送器,还用于向所述服务器发送第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述第j个媒体片段,所述第二码率信息用于指示请求的媒体片段的码率为所述第二码率;The transmitter is further configured to send a second media transmission request to the server, where the second media transmission request carries second segment information and second code rate information, where the second segment information is used to indicate the request The media segment is the jth media segment, and the second code rate information is used to indicate that the code rate of the requested media segment is the second code rate;所述接收器,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;The receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;所述播放器,还用于播放码率为所述第二码率的所述第j个媒体片段。The player is further configured to play the j-th media segment whose code rate is the second code rate.
- 根据权利要求29-34中任一项所述的用户设备,其特征在于,所述处理器,还用于在所述发送器向服务器发送第一媒体传输请求之前,控制所述用户设备与所述服务器建立超文本传输协议HTTP会话连接;The user equipment according to any one of claims 29 to 34, wherein the processor is further configured to control the user equipment and the device before the transmitter sends a first media transmission request to the server. Said server establishes a hypertext transfer protocol HTTP session connection;所述发送器,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述用户设备发送相同码率的同一媒体流文件的连续的媒体片段。The transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive media of the same media stream file of the same code rate to the user equipment. Fragment.
- 一种超文本传送协议动态自适应流DASH代理实体,其特征在于,包括:A hypertext transfer protocol dynamic adaptive stream DASH proxy entity, comprising:接收器,用于接收用户设备发送的第一媒体传输请求,所述第一媒体传输请求中携带第一片段信息,所述第一片段信息用于指示请求的媒体片段为待传输的媒体流文件的第i个媒体片段;a receiver, configured to receive a first media transmission request sent by the user equipment, where the first media transmission request carries a first fragment information, where the first fragment information is used to indicate that the requested media segment is a media stream file to be transmitted. The i-th media segment;发送器,用于若所述DASH代理实体未缓存有所述第i个媒体片段,则向服务器发送所述第一媒体传输请求;a transmitter, configured to send the first media transmission request to a server if the ith media segment is not cached by the DASH proxy entity;所述接收器,还用于接收所述服务器发送的码率为第一码率的所述第i个媒体片段;The receiver is further configured to receive the ith media segment that is sent by the server to a first code rate;所述发送器,还用于向所述用户设备发送码率为所述第一码率的所述第i个媒体片段; The transmitter is further configured to send, to the user equipment, the i th media segment whose code rate is the first code rate;所述接收器,还用于接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段;The receiver is further configured to receive an i+1th media segment of the first code rate sent by the server;其中,所述待传输的媒体流文件被划分为N个连续的媒体片段,1≤i<N,i、N均为正整数。The media stream file to be transmitted is divided into N consecutive media segments, and 1≤i<N, i, N are positive integers.
- 根据权利要求36所述的DASH代理实体,其特征在于,所述第一媒体传输请求中还携带第一码率信息,所述第一码率信息用于指示请求的媒体片段的码率为所述第一码率。The DASH proxy entity according to claim 36, wherein the first media transmission request further carries first code rate information, where the first code rate information is used to indicate a code rate of the requested media segment. The first code rate is described.
- 根据权利要求36或37所述的DASH代理实体,其特征在于,所述接收器,还用于若1≤i<N-1,则在接收所述服务器发送的码率为所述第一码率的第i+1个媒体片段之后,接收所述服务器发送的码率为所述第一码率的第i+2个媒体片段。The DASH proxy entity according to claim 36 or 37, wherein the receiver is further configured to: when 1 ≤ i < N-1, receive a code rate sent by the server as the first code After the i+1th media segment of the rate, the first and second media segments of the first code rate are received by the server.
- 根据权利要求36-38中任一项所述的DASH代理实体,其特征在于,所述接收器,还用于接收所述用户设备发送的第二媒体传输请求,所述第二媒体传输请求中携带第二片段信息和第二码率信息,所述第二片段信息用于指示请求的媒体片段为所述待传输的媒体流文件的第j个媒体片段,1≤j≤N,j为正整数,所述第二码率信息用于指示请求的媒体片段的码率为第二码率,所述第二码率与所述第一码率不同;The DASH proxy entity according to any one of claims 36 to 38, wherein the receiver is further configured to receive a second media transmission request sent by the user equipment, where the second media transmission request is Carrying the second fragment information and the second rate information, where the second fragment information is used to indicate that the requested media segment is the jth media segment of the media stream file to be transmitted, 1≤j≤N, j is positive An integer, the second code rate information is used to indicate that a code rate of the requested media segment is a second code rate, and the second code rate is different from the first code rate;所述发送器,还用于若所述DASH代理实体未缓存***率为所述第二码率的所述第j个媒体片段,则向所述服务器发送所述第二媒体传输请求;The transmitter is further configured to: if the DASH proxy entity does not cache the jth media segment with a code rate of the second code rate, send the second media transmission request to the server;所述接收器,还用于接收所述服务器发送的码率为所述第二码率的所述第j个媒体片段;The receiver is further configured to receive the jth media segment that is sent by the server and the code rate is the second code rate;所述发送器,还用于向所述用户设备发送码率为所述第二码率的所述第j个媒体片段。The transmitter is further configured to send, to the user equipment, the jth media segment whose code rate is the second code rate.
- 根据权利要求36-39中任一项所述的DASH代理实体,其特征在于,所述DASH代理实体,还包括:The DASH proxy entity according to any one of claims 36 to 39, wherein the DASH proxy entity further comprises:处理器,用于在所述接收器接收用户设备发送的第一媒体传输请求之前,控制所述DASH代理实体与所述用户设备建立超文本传输协 议HTTP会话连接,并控制所述DASH代理实体与所述服务器建立HTTP会话连接;a processor, configured to control the DASH proxy entity to establish a hypertext transfer protocol with the user equipment before the receiver receives the first media transmission request sent by the user equipment Discussing an HTTP session connection, and controlling the DASH proxy entity to establish an HTTP session connection with the server;所述发送器,还用于向所述服务器发送推送功能使能消息,所述推送功能使能消息用于指示所述服务器向所述DASH代理实体发送相同码率的同一媒体流文件的连续的媒体片段。 The transmitter is further configured to send a push function enable message to the server, where the push function enable message is used to instruct the server to send consecutive contiguous media stream files of the same code rate to the DASH proxy entity. Media clips.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2015/078125 WO2016172967A1 (en) | 2015-04-30 | 2015-04-30 | Media stream transmission method and device |
CN201580026048.2A CN106464985B (en) | 2015-04-30 | 2015-04-30 | A kind of media stream transmission method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2015/078125 WO2016172967A1 (en) | 2015-04-30 | 2015-04-30 | Media stream transmission method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016172967A1 true WO2016172967A1 (en) | 2016-11-03 |
Family
ID=57198045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/078125 WO2016172967A1 (en) | 2015-04-30 | 2015-04-30 | Media stream transmission method and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106464985B (en) |
WO (1) | WO2016172967A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110545492A (en) * | 2018-09-05 | 2019-12-06 | 北京开广信息技术有限公司 | real-time delivery method and server of media stream |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103813185A (en) * | 2014-01-26 | 2014-05-21 | 中兴通讯股份有限公司 | Method, server and client for quickly distributing segmented programs |
CN103974147A (en) * | 2014-03-07 | 2014-08-06 | 北京邮电大学 | MPEG (moving picture experts group)-DASH protocol based online video playing control system with code rate switch control and static abstract technology |
CN104270646A (en) * | 2014-09-22 | 2015-01-07 | 何震宇 | Self-adaption transmission method and system based on mobile streaming media |
CN104429090A (en) * | 2012-07-10 | 2015-03-18 | 夏普株式会社 | Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2525587B1 (en) * | 2011-05-17 | 2017-07-05 | Alcatel Lucent | Method for streaming video content, node in a network for monitoring video content streaming |
EP2908535A4 (en) * | 2012-10-09 | 2016-07-06 | Sharp Kk | Content transmission device, content playback device, content distribution system, method for controlling content transmission device, method for controlling content playback device, control program, and recording medium |
-
2015
- 2015-04-30 CN CN201580026048.2A patent/CN106464985B/en active Active
- 2015-04-30 WO PCT/CN2015/078125 patent/WO2016172967A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104429090A (en) * | 2012-07-10 | 2015-03-18 | 夏普株式会社 | Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium |
CN103813185A (en) * | 2014-01-26 | 2014-05-21 | 中兴通讯股份有限公司 | Method, server and client for quickly distributing segmented programs |
CN103974147A (en) * | 2014-03-07 | 2014-08-06 | 北京邮电大学 | MPEG (moving picture experts group)-DASH protocol based online video playing control system with code rate switch control and static abstract technology |
CN104270646A (en) * | 2014-09-22 | 2015-01-07 | 何震宇 | Self-adaption transmission method and system based on mobile streaming media |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110545492A (en) * | 2018-09-05 | 2019-12-06 | 北京开广信息技术有限公司 | real-time delivery method and server of media stream |
CN110545492B (en) * | 2018-09-05 | 2020-07-31 | 北京开广信息技术有限公司 | Real-time delivery method and server of media stream |
Also Published As
Publication number | Publication date |
---|---|
CN106464985B (en) | 2019-04-12 |
CN106464985A (en) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8717890B2 (en) | Application, usage and radio link aware transport network scheduler | |
TWI470983B (en) | Method and apparatus for updating http content descriptions | |
CN110636339B (en) | Scheduling method and device based on code rate and electronic equipment | |
CN111586480A (en) | Low-delay streaming media | |
CN110933517B (en) | Code rate switching method, client and computer readable storage medium | |
JP2017513264A (en) | Adaptive media streaming | |
KR102020363B1 (en) | Method and apparatus for transmitting and receiving media segment using adaptive streaming | |
US20150271231A1 (en) | Transport accelerator implementing enhanced signaling | |
JP2017143527A (en) | Mobile device, method, program for dynamic medium content, computer readable storage medium, medium content provider and system | |
KR20150083793A (en) | Method for downloading, at a client terminal, an upcoming sequence of segments of a multimedia content, and corresponding terminal | |
WO2011147352A1 (en) | Method and device for supporting time shift review in dynamic hypertext transfer protocol streaming transmission solution | |
JP6514217B2 (en) | Method of acquiring network information by a client terminal configured to receive multimedia content divided into segments | |
JP2018509010A (en) | Stream media data transmission method, client and server | |
JP7011941B2 (en) | Client and receiving method | |
WO2011088725A1 (en) | Method and apparatus for synchronization based on hypertext transfer protocol (http) | |
WO2011054319A1 (en) | Method, device and system for realizing hierarchically requesting content in http streaming system | |
EP3249891B1 (en) | File download method and play device | |
KR20160135811A (en) | Method and apparatus for dash streaming using http streaming | |
WO2011143916A1 (en) | Media adaptation method and apparatus | |
WO2014134811A1 (en) | Method and video gateway for allocating bandwidth | |
WO2013185547A1 (en) | Caching server service method, caching server and system thereof | |
US10609111B2 (en) | Client-driven, ABR flow rate shaping | |
CN104641655A (en) | Terminal cache method, terminal and server | |
WO2016172967A1 (en) | Media stream transmission method and device | |
JP2015104075A (en) | Medium reproduction control device, medium reproduction control method and program |
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: 15890347 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15890347 Country of ref document: EP Kind code of ref document: A1 |