CN103747365B - Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream - Google Patents
Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream Download PDFInfo
- Publication number
- CN103747365B CN103747365B CN201310547978.5A CN201310547978A CN103747365B CN 103747365 B CN103747365 B CN 103747365B CN 201310547978 A CN201310547978 A CN 201310547978A CN 103747365 B CN103747365 B CN 103747365B
- Authority
- CN
- China
- Prior art keywords
- media content
- client
- sending
- fragmentation
- dynamic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 239000012634 fragment Substances 0.000 claims description 97
- 238000003780 insertion Methods 0.000 claims description 75
- 230000037431 insertion Effects 0.000 claims description 75
- 238000013467 fragmentation Methods 0.000 claims description 60
- 238000006062 fragmentation reaction Methods 0.000 claims description 60
- 238000012216 screening Methods 0.000 claims description 31
- 238000012966 insertion method Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
The embodiment of the invention discloses a method, a device and a system for dynamic inter-cut of media contents based on an HTTP (Hyper Text Transport Protocol) stream, which relate to the technical field of videos, and can realize the dynamic inter-cut of the individual media contents. The method for transmitting the dynamic media contents through the HTTP stream comprises the steps that a server side receives request information which carries user information and is sent by a client side; target media contents are selected from local-storage media contents according to the user information; and the target media contents are sent to the client side so as to be convenient for the client side to broadcast the contents. The embodiment of the invention is mainly applicable to the process of the dynamic inter-cut of the media contents, and the individualized inter-cut of the media contents can be realized when the client side watches programs through the HTTP stream.
Description
Technical Field
The invention relates to the technical field of videos, in particular to a dynamic media content inter-cut method, device and system based on HTTP (hyper text transport protocol) streams.
Background
Currently, dynamic inter-cut of media content can enable inter-cut of different media content in a program stream. For example, when a user clicks a certain video, the personalized advertisement insertion can be realized before the video is played according to the personalized information of the user, the personalized video advertisement is inserted after the video is played, or the program is stopped to be played in the video playing process, the content of the personalized advertisement is inserted, and the original program is returned after the advertisement is finished.
The prior art provides a HTTP (Hypertext Transfer Protocol) Streaming technology to implement advertisement insertion. By adopting the HTTP Streaming, a multimedia content can be divided into a plurality of media fragments, and then the media fragments are transmitted to a client through an HTTP protocol. The URLs (Uniform Resource locators) of all media segments obtained by the above-mentioned multimedia content division are all described by a (media presentation description) MPD file. The structure of the MPD file is shown in fig. 1, where one MPD is divided into one or more Period according to the sequence of a time axis, each Period further includes description information repetition of different code rates, and segment information Segmentinfo of each repetition describes URLs of a plurality of media segments. When a client plays multimedia content by using an HTTP Streaming technology, the client needs to request the MPD file first, and then requests to play the content of the media segments according to the URL of each media segment in the MPD file.
When the existing HTTP Streaming technology is used to implement dynamic insertion of media content, taking dynamic insertion of advertisements as an example, the dynamic insertion can be implemented in the following two ways:
the first method is as follows: in the encoder, program content is directly divided into program fragments, advertisement content is directly divided into advertisement fragments, and a fragment sequence is generated by utilizing the program fragments and the advertisement fragments. And when the client receives the MPD file transmitted by the server, acquiring each segment in the segment sequence according to the segment sequence described by the MPD file one by one request. When the segment requested by the client is a program segment, playing the content of the program segment, wherein the program is played; when the fragment requested by the client is the advertisement fragment, the content of the advertisement fragment is played, and the advertisement is played at the moment, so that the advertisement insertion is realized.
The second method comprises the following steps: when the server sends the MPD file to the client, the server inserts advertisement fragments in the program fragment sequence described by the MPD file and then sends the program fragment sequence to the client. And the client requests to acquire and play each segment one by one according to the segment sequence described in the MPD file after the advertisement segments are inserted.
Disclosure of Invention
Embodiments of the present invention provide a method, an apparatus, and a system for dynamic inter-cut of media content based on HTTP streaming, which can solve the problem that personalized inter-cut cannot be implemented when media content is transmitted through HTTP streaming.
In order to achieve the above purpose, the embodiment of the invention adopts the following technical scheme:
a dynamic media content inserting method based on HTTP stream, the dynamic media content is transmitted by HTTP stream, the method includes:
receiving a request message which is sent by a client and carries user information;
screening target media contents from locally stored media contents according to the user information;
and sending the target media content to the client so as to be convenient for the client to play.
A media content dynamic inter cut method based on HTTP stream, dynamic media content is transmitted by HTTP stream, including:
sending a request message carrying user information to a server;
and receiving the media content which is sent by the server and matched with the user information, and playing the media content.
An apparatus for dynamic inter-cut of media content based on HTTP streaming, the dynamic media content being streamed via HTTP, the apparatus comprising:
the first receiving unit is used for receiving a request message which is sent by a client and carries user information;
the screening unit is used for screening target media contents from the locally stored media contents according to the user information;
and the first sending unit is used for sending the target media content to the client so as to be convenient for the client to play.
Another dynamic media content inter-cut device based on HTTP streaming, where dynamic media content is transmitted through HTTP streaming, includes:
the first sending unit is used for sending a request message carrying user information to the server;
and the first receiving unit is used for receiving the media content which is sent by the server and matched with the user information and playing the media content.
A system for dynamic HTTP streaming-based insertion of media content, comprising:
the dynamic media content inter-cut device based on HTTP streaming is configured to receive a request message carrying user information and sent by a client; screening target media contents from locally stored media contents according to the user information; sending the target media content to the client so as to be played by the client conveniently;
the other dynamic media content inter-cut device based on HTTP streaming is configured to send a request message carrying user information to a server; and receiving the media content which is sent by the server and matched with the user information, and playing the media content.
According to the embodiment of the invention described in the technical scheme, when the client watches programs through HTTP streams, the media content received by the client is obtained by the server through screening according to the user information, and due to the fact that the user information of different clients has personalized difference, different users can receive personalized media content meeting respective requirements. Compared with the prior art that when the client watches the program through the HTTP stream, all the clients which play the same program watch the same media content, the embodiment of the invention can ensure that all the clients which play the same program watch the personalized dynamic media content which accords with the respective characteristics, thereby solving the problem that the personalized inter cut can not be realized when the media content is transmitted through the HTTP stream in the prior art and realizing the personalized inter cut of the dynamic media content.
Drawings
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 description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of a MPD file in the prior art;
fig. 2 is a flowchart of a dynamic media content inter-cut method based on HTTP streaming according to an embodiment of the present invention;
fig. 3 is a flowchart of another HTTP-stream-based dynamic media content insertion method according to an embodiment of the present invention;
fig. 4 is a flowchart of a dynamic HTTP-stream-based media content insertion method implemented in a first implementation manner according to an embodiment of the present invention;
fig. 5 is a flowchart of another HTTP stream-based dynamic media content insertion method implemented in a first implementation manner according to an embodiment of the present invention;
fig. 6 is a flowchart of a dynamic media content inter-cut method based on HTTP streaming according to a first implementation manner of the present invention;
fig. 7 is a flowchart of a dynamic HTTP stream-based media content insertion method implemented in a second manner according to an embodiment of the present invention;
fig. 8 is a structural diagram of a dynamic media content inter-cut device based on HTTP streaming according to an embodiment of the present invention;
fig. 9 is a diagram of a server structure implemented in a first implementation manner according to an embodiment of the present invention;
fig. 10 is a diagram of a server structure implemented in a second implementation manner according to an embodiment of the present invention;
fig. 11 is a structural diagram of another dynamic HTTP streaming-based media content insertion apparatus according to an embodiment of the present invention;
fig. 12 is a diagram of a client structure implemented in a first manner according to an embodiment of the present invention;
fig. 13 is a diagram of a client structure implemented in a second implementation manner according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The embodiment shown in fig. 2 provides a dynamic HTTP streaming-based media content insertion method, where media content is transmitted between a server and a client by using HTTP streaming, and the method is described below from the server and includes:
201. and receiving a request message which is sent by the client and carries the user information.
The user information may be an identification of the user, such as a user ID; or the user information may be a complete description of the user, such as the user's name, gender, hobbies, location of the user, and so on. In practical application, the user information may be described in the request message in an xml form, but is not limited to the xml form.
202. And screening target media contents from the locally stored media contents according to the user information.
Because the existing server has the function of screening the media content, when the server receives the user information, the server can use the screening function of the server to screen the target media content from the locally stored media content by taking the user information as a screening condition. And matching the screened target media content with the user information.
203. And sending the target media content to the client so as to be convenient for the client to play.
The embodiment shown in fig. 3 provides a dynamic HTTP streaming-based media content insertion method, where media content is transmitted between a server and a client by using HTTP streaming, and the method is described below from the client side and includes:
301. and sending a request message carrying the user information to the server.
302. And receiving the media content which is sent by the server and matched with the user information, and playing the media content.
According to the dynamic media content inserting method based on the HTTP stream, the media content received by the client is obtained by the server through screening according to the user information, and the user information of different clients has personalized difference, so that different users can receive the dynamic media content meeting respective requirements. Compared with the prior art that when the client watches the program through the HTTP stream, all the clients which request the same program see the same dynamic media content, the embodiment of the invention can ensure that all the clients which request the same program see the personalized dynamic media content which accords with the respective characteristics, thereby solving the problem that the personalized inter cut can not be realized when the media content is transmitted through the HTTP stream in the prior art and realizing the personalized inter cut of the dynamic media content.
In specific implementation, the dynamic media content provided by the embodiment of the present invention includes: advertisement, a trailer of the program, a branching scenario of the program, or any combination thereof.
The dynamic media content inter-cut method based on HTTP stream provided by the embodiment of the invention can adopt the following two implementation modes:
the method comprises the steps that a server inserts media content preset information into an MPD file, after a client requests the MPD file, when the media content preset information is read, media content request information is sent to the server according to media content acquisition information and media content fragment insertion positions, the request carries user information, and the server screens out target media content according to the user information. And then, the fragment address and/or the content fragment of the target media content is/are returned to the client, and the client requests the content fragment or plays the received content fragment according to the received fragment address of the target media content.
And in the second mode, the client sends an MPD request message to the server, wherein the MPD request message carries user information. The server side carries out media content screening according to the received user information, inserts the slicing address corresponding to the screened target media content into the MPD file, and then sends the MPD file to the client side. The client requests the fragment contents one by one according to the fragment address sequence in the MPD file, and if the request reaches a program fragment address, the client receives and plays the program contents sent by the server; and if the fragment address of the target media content is requested, receiving the fragment of the target media content and playing.
The above two implementations are described in full and in detail below.
The embodiment shown in fig. 4 provides a dynamic media content inserting method based on HTTP streaming, which specifically adopts the first method to implement personalized media content inserting, and includes the following steps:
401. and after receiving the MPD request message sent by the client, sending an MPD file inserted with media content preset information to the client.
The media content preset information may be located in Period, or in reproduction under Period, or also in Segmentinfo under reproduction under Period; the media content preset information includes: media content acquisition information and a first media content fragment insertion position;
it should be noted that the media content acquisition information includes a media content insertion position identifier. The media content insertion location identification is used for acquiring information related to the media content insertion location. The first media content segment insertion location may be an insertion time or an insertion index relative to the program segment.
In practical applications, as shown in table one below, media content preset information (see adanfo in table one) is added under Segmentinfo in reproduction under Period, and the media content preset information may also be located in Period or reproduction under Period. The media content preset information includes three attributes: media content acquisition information (see Ad-sourceURL in table one), first media content fragment insertion index (see Ad-InsertIndex in table one), and first media content fragment insertion time (see Ad-start time in table one).
The first media content segment insertion index (see Ad-InsertIndex in table one) is used for inserting media content before the program segment of which the index value is equal to that of Ad-InsertIndex when the program segment address is expressed by UrlTemplate, so that the Ad-InsertIndex takes a value between the start value (see startindex in table one) and the end value (see end index in table one) of the program segment.
The first media content fragment insertion time (see Ad-start time in table one) is used for inserting media content at the time when the program is played to the Ad-start time representation when the program fragment address is represented by UrlTemplate or Url. If the program fragment address is represented by Url, AdInfo is positioned between Url and Ad-starttime is undefined, the insertion time of the first fragment of the media content is represented according to the sequence of the AdInfo in the Url;
watch 1
402. And the client sends a first request message of the media content carrying the user information according to the media content acquisition information in the MPD file.
For example, the description of Period carrying media content preset information in the MPD file received by the client is as follows;
it should be noted that, in the SegmentInfo of Period, the program segment address is described by url, for example, < url sourceurl = "www.example.com/program 1.3gp" > denotes a first program segment address, < url sourceurl = "www.example.com/program 2.3gp" > denotes a second program segment address, < url sourceurl = "www.example.com/program 3.3gp > denotes a third program segment address, and it is assumed that each segment has a duration of 10 s. The media content preset information is described by AdInfo, for example, http:// www.example.com/Adselect/33 is used to represent media content acquisition information, wherein http:// www.example.com/Adselect represents media content acquisition address, and 33 represents media content insertion position identification. It is assumed that the media content acquisition address can be specifically mapped to a dynamic processing file of the media content on the server.
The process of detecting and processing the Period by the client is as follows: when the client detects the AdInfo in the Period, it can know that the Period contains the preset information of the media content. And then, the client side sequentially sends the fragment requests to the server side according to the fragment address sequence in the SegmentInfo in the representation under the Period. Firstly, the client requests the server for the program content fragment according to the program fragment address sequence, and the server returns the program fragment content. When the insertion time expressed by the Ad-start time is reached, the client sends a first request message of the media content to the server, wherein the first request message of the media content carries user information. The user information may be a user identifier or may be complete user description information, such as the name, gender, hobbies, and location of the user.
In addition, if the server records the user description information, the first request message of the media content only needs to carry the user identifier, and at this time, the first request message of the media content sent according to the media content acquisition information may be represented as follows:
GET/Adselect/33/%userId%
Host:www.example.com
the media content acquisition information comprises a media content acquisition address and a media content insertion position identifier, wherein "www.example.com/Adselect" in the message body represents the media content acquisition address, "33" represents the media content insertion position identifier, and "userId" represents the user identifier.
403. And the server screens out target media contents from the locally stored media contents according to the user information.
Specifically, the server acquires media content insertion position information according to a media content insertion position identifier in the media content acquisition information, wherein the media content insertion position information includes a duration of the media content insertion position and a program associated with the media content insertion position. For example, the dynamic processing file of the media content on the server obtains the media content insertion position information according to the media content insertion position identifier "33".
And then, the server screens out target media contents from the locally stored media contents according to the user information and the media content inserting position information. The target media content is matched with the user information.
404. And the server sends a first response message of the media content to the client, wherein the first response message of the media content comprises all the fragment addresses of the target media content.
For example, the format of the media content first response message may be represented as follows:
wherein < Url sourceURL = "adseg-1.3gp"/>, < Url sourceURL = "adseg-2.3gp"/>, < Url sourceURL = "adseg-3.3gp"/>, and < Url sourceURL = "all segment addresses of the target media content. The description structure of the fragment address may be defined according to the SegmentInfo and its sub-element structure in the existing MPD.
405. And after receiving the first response message of the media content, the client side sequentially sends a subsequent fragmentation request message according to the fragmentation address.
It should be noted that, if the first response message of the media content includes the initialization segment address, the initialization segment needs to be requested first, otherwise, the requests are sent one by one directly according to the segment address, and the specific request process is the same as the existing program segment request process, and is not described herein again.
406. And the server side sends the fragment content corresponding to the fragment address carried in the subsequent fragment request to the client side.
Further, as shown in FIG. 5, the above steps 404 and 406 can be implemented by the following steps 404A-408A:
404A, the server sends a first response message of the media content to the client, wherein the first response message of the media content comprises the identifier of the target media content, the fragment number and the first fragment content;
for example, the format of the media content first response message may be represented as follows:
wherein … moof … mfhd … tfra … … trun … … shows the first piece of sliced content; segment number represents the number of segments, and contentIndex represents the media content index;
405A, after receiving the first response message of the media content, the client plays the first segment content of the target media content.
406A, sending a subsequent fragmentation request message carrying the identifier of the target media and the fragmentation index value according to the media content acquisition information.
For example, the structure of the subsequent fragmentation request message may be represented as follows:
GET/Adselect/33/%Contentindex%/%index%
Host:www.example.com
the media content acquisition information consists of a media content acquisition address and a media content insertion position identifier, wherein the 'www.example.com/Adselect' in the message body represents the media content acquisition address, the '33' represents the media content insertion position identifier, the 'Contentindex' represents the identifier of the target media, the first response message of the media content from 404A, the 'index' represents a fragment index value, and the fragment index value is not larger than the number of fragments.
407A, the server side sends the fragment content corresponding to the identifier and the fragment index value of the target media to the client side.
For example, the following response message format may be specifically adopted to return the segment content corresponding to the identifier and the segment index value of the target media:
wherein, the "… moof … mfhd …. tfra … … trun … …" represents the segment content corresponding to the identifier and segment index value of the target media
408A, the client plays the received fragment content.
And then, repeatedly executing the 406A-408A until the client acquires all the fragments of the target media content.
Further, as shown in FIG. 6, the above steps 404 and 406 can be implemented by the following steps 404B-408B:
404B, sending a media content first response message to the client, where the media content first response message includes the first segment content of the target media content and the address of the next segment.
For example, the format of the media content first response message may be represented as follows:
wherein the encapsulation of the next media content segment address is realized in the example by an extended box, wherein urld is the extended box, which is placed in moof and represents the address of the next media content segment by a field describing the address of the next segment "http:// www.adserver.com/file/adseg-2.3 gp".
405B, after receiving the first response message of the media content, the client plays the first fragment content of the target media content.
406B, the client sends a subsequent fragmentation request message according to the address of the next fragment.
For example, the structure of the subsequent fragmentation request message may be represented as follows:
GET file/adseg-2.3gp
Host:www.adserver.com
407B, the server sends a next fragment response message, where the next fragment response message carries the content of the next fragment and the address of the next fragment. The next fragment response message has the same format as the first response message in 405B above.
408B, the client plays the received fragment content. And then, repeatedly executing the 406A-408A until the client acquires all the fragments of the target media content.
Further, in the Period carrying the media content preset information in the MPD file received by the client in 402, the program segment address is described by Url. In practical application, the program fragment address may also be described by UrlTemplate, and at this time, when the media content preset information is described by AdInfo, a value of "Ad-InsertIndex" needs to be defined. For example: the description of Period carrying preset information of media contents is as follows:
the address of the program fragment in the SegmentInfo is described by UrlTemplate, the media content acquisition information is described by Ad-sourceURL, wherein Ad-sourceURL is defined as http:// www.example.com/Adselect/33, Ad-InsertIndex defines the insertion index of the media content fragment in the program fragment, as described above, the Ad-InsertIndex =3, the client needs to request the server for the program content fragments with index =1 and index =2, and then requests the media content when the Ad-InsertIndex = 3.
It should be noted that, when the program fragment address is described by using UrlTemplate, the sending of the first request message of the media content and the subsequent processing are the same as those when the program fragment address is described by using Url in the above-mentioned 402, and are not described herein again. And after the client receives all the fragment contents of the target media, requesting the program fragment contents again from 3 according to the program fragment index value.
The HTTP stream-based dynamic media content insertion method is implemented in a first manner, and a process of implementing personalized media content insertion in a second manner is described in detail below. As shown in fig. 7, the method includes:
701. and the client sends the user information to the server through the MPD request message.
702. And the server receives the MPD request message and screens out target media content according to the user information.
703. The server divides the target media content, inserts the segment address and the program segment address of the target media content into an MPD file, and sends the MPD file inserted with the segment address of the target media content to a client.
704. And the client receives the MPD file and sends the requests of the target media content fragments one by one according to the sequence of the fragment addresses of the target media content in the MPD file.
705. And when receiving the request of the target media content fragment, the server sends the corresponding target media content fragment to the client.
It should be noted that, a program segment address may also be inserted into the MPD file mentioned in 303, at this time, the client may sequentially send segment requests according to the segment address of the target media content in the MPD file and the order of the program segment addresses, and if the client receives a program segment, the client plays the content of the program segment; and if the target media content fragment is received, playing the content of the media content fragment, so that the personalized media content can be dynamically inserted in the process of playing the program stream. Meanwhile, in the embodiment, the target media content segments inserted in the MPD file received by the user are obtained by screening according to the user information, so that different users receive different segments, thereby realizing personalized media content insertion.
Correspondingly, the embodiment of the invention also provides a dynamic media content inter-cut device based on the HTTP stream, and the device can be a server side. As shown in fig. 8, the apparatus includes: a first receiving unit 11, a screening unit 12 and a first transmitting unit 13.
The first receiving unit 11 is configured to receive a request message carrying user information sent by a client; the screening unit 12 is configured to screen a target media content from the locally stored media content according to the user information; the first sending unit 13 is configured to send the target media content to the client.
The target media content comprises: advertisement, a trailer of a program, or a branching scenario of a program, or any combination thereof.
Further, as shown in fig. 9, when the apparatus implements dynamic insertion of personalized media content in the first manner, the apparatus further includes: a second receiving unit 14 and a second transmitting unit 15.
Before the first receiving unit 11 receives a request message carrying user information sent by a client, the second receiving unit 14 is configured to receive an MPD request message sent by the client, and the second sending unit 15 is configured to send an MPD file inserted with media content preset information to the client.
It should be noted that the media content preset information may be located in Period in the MPD file, or may be located in reproduction under Period, or may be located in Segmentinfo under reproduction under Period.
The media content preset information includes: media content acquisition information and a first media content fragment insertion position; the first media content segment insertion location may be an insertion time or an insertion index relative to the program segment. The media content acquisition information comprises a media content insertion position identification.
The MPD file may be found in table one above.
When the above manner is adopted, the first receiving unit 11 is specifically configured to receive a first request message of the media content, which is sent by the client according to the media content acquisition information and carries the user information.
At this time, when the above-described manner is adopted, (not shown) the screening unit 12 includes: an acquisition module and a screening module;
the acquisition module is used for acquiring media content insertion position information according to a media content insertion position identifier in the media content acquisition information, wherein the media content insertion position information comprises the duration of the media content insertion position and a program associated with the media content insertion position;
and the screening module is used for screening target media contents from the locally stored media contents according to the user information and the media content inserting position information.
When the above manner is adopted, the first sending unit 13 includes at least one of the following modules: the device comprises a first sending module, a second sending module and a third sending module.
The first sending module is configured to send a media content first response message to the client, where the media content first response message includes all segment addresses of the target media content; after receiving a subsequent fragmentation request message sent by the client according to the fragmentation address, sending fragmentation content corresponding to the fragmentation address to the client;
a second sending module, configured to send a media content first response message to the client, where the media content first response message includes an identifier of the target media content, a segment number, and a first segment; after receiving a subsequent fragmentation request message which is sent by the client according to the media content acquisition information and carries the identifier and the fragmentation index value of the target media, sending the fragmentation content corresponding to the identifier and the fragmentation index value of the target media to the client;
a third sending module, configured to send a media content first response message to the client, where the media content first response message includes addresses of a first segment and a next segment of the target media content; and after receiving a subsequent fragmentation request message sent by the client according to the address of the next fragment, sending a subsequent fragmentation response message, wherein the subsequent fragmentation response message carries the addresses of the next fragment and the next fragment.
Further, as shown in fig. 10, when the apparatus implements dynamic insertion of personalized media content in the second manner, the apparatus further includes: a processing unit 16 and a third transmitting unit 17.
After the first receiving unit 11 receives an MPD request message carrying user information sent by a client and the screening unit 12 screens out target media content, the processing unit 16 is configured to insert a segment address of the target media content into an MPD file; the third sending unit 17 is configured to send the MPD file into which the segment address of the target media content is inserted to the client;
when the first receiving unit 11 receives a fragmentation request sent by a client according to a fragmentation address of the target media content, the first sending unit 13 is specifically configured to send the media content corresponding to the fragmentation address to the client.
It should be noted that a program segment address may also be inserted into the MPD file transmitted by the third transmitting unit 17. At this time, if the server receives the slicing request sent by the client according to the program slicing address, the server sends the program slicing to the client.
The embodiment shown in fig. 11 provides a dynamic media content inter-cut device based on HTTP streaming, where the device may specifically be a client, and the device includes: a first transmitting unit 21 and a first receiving unit 22.
The first sending unit 21 is configured to send a request message carrying user information to a server; the first receiving unit 22 is configured to receive the media content that is sent by the server and matches with the user information, and play the media content.
Further, when the apparatus implements personalized dynamic media content reception in the first manner, as shown in fig. 12, the apparatus further includes: a second transmitting unit 23 and a second receiving unit 24.
Before the first sending unit 21 sends a request message carrying user information to a server, the second sending unit 23 is configured to send an MPD request message to the server, and the second receiving unit 24 is configured to receive an MPD file inserted with media content preset information and sent by the server.
It should be noted that the media content preset information may be located in Period in the MPD file, or may be located in reproduction under Period, or may be located in Segmentinfo under reproduction under Period. The media content preset information includes: media content acquisition information and a first media content fragment insertion position; the first media content segment insertion location may be an insertion time or an insertion index relative to the program segment. The media content acquisition information comprises a media content insertion position identification.
The MPD file may be found in table one above.
At this time, the first sending unit 21 is specifically configured to send, when it is detected that the MPD file includes media content preset information, a media content first request message carrying user information to a server according to media content acquisition information in the media content preset information.
(not shown) the first receiving unit 22 comprises at least one of the following modules: the device comprises a first receiving module, a second receiving module and a third receiving module.
A first receiving module, configured to receive a first response message of the media content sent by the server, where the first response message of the media content includes all segment addresses of the media content matched with the user information; after sending a subsequent fragmentation request message to a server according to the fragmentation address, receiving fragmentation content sent by the server;
a second receiving module, configured to receive a first response message of the media content sent by the server, where the first response message of the media content includes an identifier, a fragment number, and a first fragment of the media content, where the identifier and the fragment number are matched with the user information; after sending a subsequent fragmentation request message carrying the identifier and the fragmentation index value of the media content to a server according to the media content acquisition information, receiving the fragmentation content sent by the server;
a third receiving module, configured to receive a media content first response message sent by the server, where the media content first response message includes addresses of a first segment and a next segment of the media content that are matched with the user information; and after a subsequent fragment request message is sent to the server according to the address of the next fragment, receiving a subsequent fragment response message sent by the server, wherein the subsequent fragment response message carries the addresses of the next fragment and the next fragment, and repeating the fragment request and the response until all the media content fragments are obtained. .
Further, when the apparatus implements receiving the personalized dynamic media content in the second manner, the first sending unit 21 is specifically configured to send an MPD request message carrying user information to the server; at this time, as shown in fig. 13, the apparatus further includes: a third receiving unit 25, configured to receive an MPD file, which is sent by the server and into which a segment address of media content matched with the user information is inserted;
the first sending unit 21 is further configured to send a media content fragmentation request according to the fragmentation address of the media content matched with the user information, and the first receiving unit 22 is specifically configured to receive the media content sent by the server.
It should be noted that a program segment address may also be inserted into the MPD file received by the third receiving unit 25, at this time, the client may sequentially send segment requests according to the segment address of the target media content in the MPD file and the sequence of the program segment address, and if the client receives a program segment, the client plays the content of the program segment; and if the target media content segment is received, playing the content of the media content segment.
According to the dynamic media content inserting device based on the HTTP stream, the media content fragments received by the client are obtained by the server side according to the user information in a screening mode, and the user information of different client sides has personalized difference, so that different users can receive the content of the media content fragments meeting the respective requirements. Compared with the prior art that when the client watches the program through the HTTP stream, all the clients which request the same program see the same dynamic media content, the embodiment of the invention can ensure that all the clients which request the same program see the personalized dynamic media content which accords with the respective characteristics, thereby solving the problem that the personalized inter cut can not be realized when the media content is transmitted through the HTTP stream, and realizing the personalized inter cut of the dynamic media content.
The embodiment of the present invention further provides a dynamic media content inter-cut system based on HTTP streaming, including: one dynamic HTTP streaming-based media content insertion apparatus as shown in any one of fig. 8 to 10 and another dynamic HTTP streaming-based media content insertion apparatus as shown in any one of fig. 11 to 13.
The HTTP stream-based media content dynamic inter-cut device shown in any one of fig. 8 to 10 is specifically a server, and is configured to receive a request message carrying user information and sent by a client; screening target media contents from locally stored media contents according to the user information; sending the target media content to the client so as to be played by the client conveniently;
another dynamic media content inserting device based on HTTP stream as shown in any of fig. 11 to 13 is specifically a client, configured to send a request message carrying user information to a server; and receiving the media content which is sent by the server and matched with the user information, and playing the media content.
In the HTTP-stream-based media content dynamic inter-cut system, the media content received by the client is obtained by the server through screening according to the user information, and the user information of different clients has personalized differences, so that different users can receive media content meeting their respective requirements. Compared with the prior art that when the client watches the program through the HTTP stream, all the clients which request the same program see the same dynamic media content, the embodiment of the invention can ensure that all the clients which request the same program see the personalized dynamic media content which accords with the respective characteristics, thereby solving the problem that the personalized inter cut can not be realized when the media content is transmitted through the HTTP stream, and realizing the personalized inter cut of the dynamic media content.
The embodiment of the invention is mainly applied to the dynamic inter-cut processing process of the media content, and when a client watches programs through HTTP streams, the personalized inter-cut of the media content can be realized.
Through the above description of the embodiments, those skilled in the art will clearly understand that the present invention may be implemented by software plus necessary general hardware, and certainly may also be implemented by hardware, but in many cases, the former is a better embodiment. Based on such understanding, the technical solutions of the present invention may be substantially implemented or a part of the technical solutions contributing to the prior art may be embodied in the form of a software product, which is stored in a readable storage medium, such as a floppy disk, a hard disk, or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute the methods according to the embodiments of the present invention.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.
Claims (15)
1. A dynamic media content inter-cut method based on HTTP stream, characterized in that, the dynamic media content is transmitted by HTTP stream, the method includes:
receiving an MPD request message which is sent by a client and carries user information;
screening target media contents from locally stored media contents according to the user information;
inserting the fragment address of the target media content into an MPD file;
sending the MPD file inserted with the segment address of the target media content to the client;
receiving a fragmentation request sent by a client according to the fragmentation address of the target media content;
and sending the media content corresponding to the fragment address to the client so as to be played by the client conveniently.
2. A dynamic media content inter-cut method based on HTTP stream, characterized in that, the dynamic media content is transmitted by HTTP stream, the method includes:
receiving a Media Presentation Description (MPD) request message sent by a client;
sending an MPD file into which media content preset information is inserted to the client, where the media content preset information includes: media content acquisition information and a first media content fragment insertion position;
receiving a media content request message carrying user information sent by a client according to the media content acquisition information;
screening target media contents from locally stored media contents according to the user information;
and sending the target media content to the client so that the client can play the target media content according to the insertion position of the first media content fragment.
3. The dynamic HTTP streaming-based media content inter-cut method according to claim 2, wherein the media content preset information is located in a Period, or in description information repetition below the Period, or in segment information Segmentinfo below the repetition below the Period.
4. The dynamic HTTP streaming-based media content insertion method as recited in claim 2, wherein the first media content segment insertion position is an insertion time or an insertion index of a relative program segment.
5. The dynamic inter-cut method for media content based on HTTP stream as recited in claim 4, wherein the media content acquisition information includes a media content insertion location identifier.
6. The dynamic HTTP streaming-based media content insertion method as recited in claim 5, wherein the step of filtering out the target media content from the locally stored media content according to the user information comprises:
acquiring media content inserting position information according to a media content inserting position identification in the media content acquiring information, wherein the media content inserting position information comprises the time length of the media content inserting position and a program associated with the media content inserting position;
and screening target media contents from the locally stored media contents according to the user information and the media content inserting position information.
7. The dynamic inter-cut method for media content based on HTTP stream according to claim 4 or 5, characterized in that said sending said target media content to said client comprises:
sending a media content first response message to the client, wherein the media content first response message comprises all fragment addresses of the target media content; after receiving subsequent media content fragmentation request messages sent by the client one by one according to the fragmentation addresses, sending the fragmentation content corresponding to the fragmentation addresses to the client; or,
sending a media content first response message to the client, wherein the media content first response message comprises the identification of the target media content, the fragment number and the first fragment content; after receiving a subsequent fragmentation request message which is sent by the client according to the media content acquisition information and carries the identifier and the fragmentation index value of the target media, sending the fragmentation content corresponding to the identifier and the fragmentation index value of the target media to the client; or,
sending a media content first response message to the client, wherein the media content first response message comprises a first fragment content of the target media content and an address of a next fragment; and after receiving a fragmentation request message sent by the client according to the address of the next fragment, sending a next fragmentation response message, wherein the next fragmentation response message carries the content of the next fragment and the address of the next fragment, and repeating the fragmentation request and the response until all media content fragments are obtained.
8. A media content dynamic inter cut method based on HTTP stream is characterized in that dynamic media content is transmitted by HTTP stream, which includes:
sending an MPD request message carrying user information to a server;
receiving an MPD file which is transmitted by the server and inserted with a segment address of the media content matched with the user information;
sending a media content fragmentation request according to the fragmentation address of the media content matched with the user information;
and receiving the media content which is sent by the server and matched with the user information, and playing the media content.
9. An apparatus for dynamic inter-cut of media content based on HTTP streaming, wherein the dynamic media content is streamed via HTTP, the apparatus comprising:
the system comprises a first receiving unit, a second receiving unit and a sending unit, wherein the first receiving unit is used for receiving an MPD request message which is sent by a client and carries user information;
the screening unit is used for screening target media contents from the locally stored media contents according to the user information;
the inserting unit is used for inserting the fragment address of the target media content into an MPD file;
the first sending unit is used for sending the MPD file inserted with the segment address of the target media content to the client;
the second receiving unit is used for receiving a fragmentation request sent by the client according to the fragmentation address of the target media content;
and the second sending unit is used for sending the media content corresponding to the fragment address to the client so as to be convenient for the client to play.
10. An apparatus for dynamic inter-cut of media content based on HTTP streaming, wherein the dynamic media content is streamed via HTTP, the apparatus comprising:
the first receiving unit is used for receiving a first request message of the media content which is sent by the client according to the media content acquisition information and carries the user information;
the screening unit is used for screening target media contents from the locally stored media contents according to the user information;
the first sending unit is used for sending the target media content to the client so that the client can play the target media content according to the inserting position of the first media content fragment;
before the first receiving unit receives a request message carrying user information sent by a client, a second receiving unit is used for receiving an MPD request message sent by the client; a second sending unit, configured to send an MPD file into which media content preset information is inserted to the client, where the media content preset information includes: media content acquisition information, a first media content fragment insertion position.
11. The dynamic HTTP streaming-based media content insertion device as recited in claim 10, wherein the first media content segment insertion position is an insertion time or an insertion index of a relative program segment.
12. The dynamic HTTP streaming-based media content insertion apparatus as recited in claim 11, wherein the media content acquisition information includes a media content insertion location identifier.
13. The dynamic HTTP streaming-based media content insertion apparatus as recited in claim 12, wherein the filtering unit comprises:
the acquisition module is used for acquiring media content insertion position information according to a media content insertion position identifier in the media content acquisition information, wherein the media content insertion position information comprises the duration of the media content insertion position and a program associated with the media content insertion position;
and the screening module is used for screening target media contents from the locally stored media contents according to the user information and the media content inserting position information.
14. The dynamic HTTP streaming media content inter-cut device according to claim 11 or 12, wherein the first sending unit comprises at least one of the following modules:
a first sending module, configured to send a media content first response message to the client, where the media content first response message includes all segment addresses of the target media content; after receiving a subsequent fragmentation request message sent by the client according to the fragmentation address, sending fragmentation content corresponding to the fragmentation address to the client;
a second sending module, configured to send a media content first response message to the client, where the media content first response message includes an identifier of the target media content, a segment number, and a first segment; after receiving a subsequent fragmentation request message which is sent by the client according to the media content acquisition information and carries the identifier and the fragmentation index value of the target media content, sending the fragmentation content corresponding to the identifier and the fragmentation index value of the target media content to the client;
a third sending module, configured to send a media content first response message to the client, where the media content first response message includes addresses of a first segment and a next segment of the target media content; and after receiving a subsequent fragmentation request message sent by the client according to the address of the next fragment, sending a subsequent fragmentation response message, wherein the subsequent fragmentation response message carries the addresses of the next fragment and the next fragment.
15. An apparatus for dynamic inter-cut of media content based on HTTP streaming, wherein the dynamic media content is transmitted by HTTP streaming, comprising:
the system comprises a first sending unit, a second sending unit and a sending unit, wherein the first sending unit is used for sending an MPD request message carrying user information to a server;
a third receiving unit, configured to receive an MPD file, which is sent by the server and into which a segment address of media content matched with the user information is inserted;
a second sending unit, configured to send a media content fragmentation request according to the fragmentation address of the media content matched with the user information;
and the first receiving unit is used for receiving the media content which is sent by the server and matched with the user information and playing the media content.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310547978.5A CN103747365B (en) | 2010-09-17 | 2010-09-17 | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310547978.5A CN103747365B (en) | 2010-09-17 | 2010-09-17 | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream |
CN2010102919455A CN102137137B (en) | 2010-09-17 | 2010-09-17 | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102919455A Division CN102137137B (en) | 2010-09-17 | 2010-09-17 | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103747365A CN103747365A (en) | 2014-04-23 |
CN103747365B true CN103747365B (en) | 2017-04-26 |
Family
ID=50504347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310547978.5A Active CN103747365B (en) | 2010-09-17 | 2010-09-17 | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103747365B (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105207976B (en) * | 2014-06-23 | 2018-12-07 | 北京大学 | The multimedia messages of AVS-DASH system intercut control method, system and client |
CN104935595B (en) * | 2015-06-16 | 2019-10-15 | 华为技术有限公司 | Content item polymerization and relevant apparatus and communication system |
CN107040505B (en) * | 2016-02-04 | 2021-01-26 | 中兴通讯股份有限公司 | Media data transmission method and device |
CN106209885B (en) * | 2016-07-22 | 2019-02-05 | 腾讯科技(深圳)有限公司 | Flow media playing method and relevant apparatus |
MX2019005456A (en) | 2016-11-10 | 2019-08-12 | Ericsson Telefon Ab L M | Resource segmentation to improve delivery performance. |
CN108574881B (en) * | 2017-03-07 | 2020-08-25 | 华为技术有限公司 | Projection type recommendation method, server and client |
CN106851423B (en) * | 2017-03-31 | 2018-10-19 | 腾讯科技(深圳)有限公司 | Online Video playback method and relevant apparatus |
US11310303B2 (en) * | 2019-10-01 | 2022-04-19 | Tencent America LLC | Methods and apparatuses for dynamic adaptive streaming over HTTP |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127989A (en) * | 2007-09-11 | 2008-02-20 | 中兴通讯股份有限公司 | A method for supporting hypertext transmission stream media service of mobile phone |
CN101561825A (en) * | 2009-06-02 | 2009-10-21 | 北京迈朗世讯科技有限公司 | Media technology platform system, data acquisition system and network content supplying method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
EP2362603B1 (en) * | 2003-08-29 | 2015-01-14 | OpenTV, Inc. | Targeted content broadcast and reception system |
-
2010
- 2010-09-17 CN CN201310547978.5A patent/CN103747365B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127989A (en) * | 2007-09-11 | 2008-02-20 | 中兴通讯股份有限公司 | A method for supporting hypertext transmission stream media service of mobile phone |
CN101561825A (en) * | 2009-06-02 | 2009-10-21 | 北京迈朗世讯科技有限公司 | Media technology platform system, data acquisition system and network content supplying method |
Also Published As
Publication number | Publication date |
---|---|
CN103747365A (en) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102137137A (en) | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream | |
CN103747365B (en) | Method, device and system for dynamic inter-cut of media contents based on HTTP (Hyper Text Transport Protocol) stream | |
CN107925797B (en) | Method and apparatus for acquiring audio data | |
US8887215B2 (en) | Targeted high-value content in HTTP streaming video on demand | |
EP2666288B1 (en) | Apparatus and method for storing and playing content in a multimedia streaming system | |
WO2015035942A1 (en) | Method for playing back live video and device | |
US20060092938A1 (en) | System for broadcasting multimedia content | |
CN103813185B (en) | A kind of method that segment programs are quickly distributed, server and client | |
CN105828096B (en) | Method and device for processing media stream file | |
CN113661692B (en) | Method, apparatus and non-volatile computer-readable storage medium for receiving media data | |
EP2493191A1 (en) | Method, device and system for realizing hierarchically requesting content in http streaming system | |
US9628528B2 (en) | Apparatus and method for providing content | |
CN105228001A (en) | The method and system that a kind of FLV format video is play online | |
CN105592369B (en) | A kind of video frequency abstract processing method and processing device | |
CN105992022A (en) | On-line recording and downloading method and system | |
CN106105239B (en) | Sending device, sending method, receiving device, method of reseptance and program | |
EP3785444B1 (en) | Server-side insertion of media fragments | |
CN107851072B (en) | Receiving apparatus, transmitting apparatus, and data processing method | |
KR20170007258A (en) | Receiving device, transmission device, data communication method, and data processing method | |
KR102196504B1 (en) | Apparatus and method for providing contents | |
CN112188256B (en) | Information processing method, information providing device, electronic device, and storage medium | |
US20180270546A1 (en) | Content supply device, content supply method, program, terminal device, and content supply system | |
CN117939197A (en) | Playing acceleration method and device, electronic equipment and storage medium | |
CN113364728A (en) | Media content receiving method, device, storage medium and computer equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220225 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |