The present invention relates the field of communications technologies, and in particular, to a method and device for applying parental control in adaptive HTTP streaming transmission.
The HTTP progressive download is an improvement to manners for downloading HTTP files, and can make a terminal device play a media file while downloading it instead of playing the whole file after the download is complete, so that the play start-up delay is not long. The implementation principle is that media contents are segmented, and a (/a group of) media segment can be decoded independently on the terminal device without relying on other previous or following media segments. In this way, after receiving each media segment, the terminal device may decode and play the media segment, and may also receive a next (/a next group of) media segment at the same time. In this manner, the processing granularity of a media file is adjusted from a whole file into each media segment and the typical play duration of a media segment is several seconds, for example, 1 to 10 seconds.
However, the HTTP progressive download technology cannot bring as good experience as conventional streaming media for users, which is because of: (1) nonsupport of the dynamic adaptive switch between different bit rates: during playing, thanks to the network bandwidth jitter, practical available bandwidth may be less than the bit rates of the playback rate of the media content, which results in that terminal device needs to buffer and wait; and (2) insufficient support of playback control operations: for the already downloaded part of the content, the progressive download may support operations such as backward dragging, while for the part of the content that is not downloaded, the progressive download does not support operations such as fast forward (Fast Forward) and rewinding. However, many users have got used to fast forwarding or forward dragging the parts in which the users are not interested, and reversely dragging the parts in which the users are interested for watching again.
Therefore, based on the HTTP progressive download, an enhanced manner for streaming media transmission, which is based on an HTTP protocol and is called an HTTP streaming (HTTP Streaming) transmission technology, is developed. The technology supports dynamic bit rate adaptation, that is, in the playing process, a media segment with a proper bit rate can be dynamically selected and switched according to the available network bandwidth (Bandwidth) between a client and a server in real time manner, so as to provide good user experience as much as possible. Therefore, the technology is also called HTTP adaptive streaming (HTTP Adaptive Streaming, HAS), adaptive HTTP streaming (Adaptive HTTP Streaming).
The adaptive HTTP streaming transmission technology is used to transmit multimedia contents, including such kind of media contents as film programs and television programs. The adaptive HTTP streaming transmission technology may also be applied for a set top box (STB) to transmit television programs to a television set in the near future. These film and television programs may include content segment about the dark side of the society, such as violence, bloodiness, drugs, and pornography. Frequent occurrence of such content segment may lead to emergence of a series of social problems. Especially it will have the bad effect on those children and teenagers who are not mentally mature and are weak in judgment. To protect the children and teenagers from being affected by negative film and television materials, many developed countries and regions have already established relevant laws of films and film rating systems and television rating systems. Though specific rules of different countries may vary to some extent, the original intention of the film rating systems is to protect underage children and teenagers. A rating system refers to that an organization rates, according to a certain rule, products of studios into several ratings in light of the contents, and specifies targeted audiences for each rating. In theory, rating films can meet the needs of audiences at different ages and different levels. Generally, a higher restricted rating contains more restrictive scenes, and as a result, a minimum age required for watching is also raised.
In the prior art, a parental control rating of a program is placed inside description information (EPG or ESG) of the program on a head end, for example, when in normalization of description of metadata made by the ETSI TS 102 822-3-1 V1.3.1 “TV-Anytime”, parental control information “ParentalGuidance” defined by the MPEG-7 is included in basic content description information (BasicContentDescriptionType). In addition, in the Electronic Service Guide (ESG, Electronic Service Guide) of Digital Video Broadcasting-Convergence of Broadcast and Mobile Services (DVB-CBMS, Digital Video Broadcasting-Convergence of Broadcast and Mobile Services), parental control information may be included in the Service (similar to a television channel), Content (similar to a television program), and Service Bundle (pack of several television channels), and the type is still the parental control information “ParentalGuidance” defined by the MPEG-7. A terminal such as a set top box (STB, Set Top Box) parses the EPG/ESG to obtain the parental control information while accessing a program according to the EPG/ESG, so as to implement a parental control function. A general implementation procedure is that: the terminal performs corresponding age setting by enabling a parental control function in a settings menu; and then the set top box decides whether to restrict normal watching of a channel (or a program) by comparing corresponding age control information in the channel (or the program) while receiving the EPG/ESG; when the age control information in the channel (or the program) exceeds an age set by the terminal, the restriction only can be removed by entering a password, where the EPG can only provide parental control rating information of a channel, a program content, or a channel packet, that is, the minimum granularity of a parental control rating can only be at a program level.
Embodiments of the present invention provide a method and device for applying parental control in adaptive HTTP streaming transmission, so as to solve a problem of inaccuracy of parental control in the prior art.
A method for applying parental control in an adaptive HTTP streaming transmission technology is provided, where the method includes: setting corresponding parental control rating information for media contents in different time periods in a single media presentation; sending the parental control rating information to a client; and processing, by the client according to the parental control rating information, the media contents in the single media presentation.
A method for applying parental control in an adaptive HTTP streaming transmission technology is provided, where the method includes: receiving parental control rating information sent by a server, where the parental control rating information is parental control rating information corresponding to media contents in different time periods in a single media presentation.
A device for applying parental control in media is provided, where the device includes: a setting unit, configured to set corresponding parental control rating information for media contents in different time periods in a single media presentation; and a processing unit, configured to send the parental control rating information to a client, so that the client processes, according to the parental control rating information and a handle mode, the media contents in the single media presentation.
A client is provided, where the client includes: a receiving unit, configured to receive parental control rating information sent by a server, where the parental control rating information is parental control rating information corresponding to media contents in different time periods in a single media presentation; and a processing unit, configured to process, according to the parental control rating information and a handle mode, the media contents in the single media presentation.
In the embodiments of the present invention, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is sent to the client; and the client processes, according to the parental control rating information, the media contents in the single media presentation, to make the effect of parental control accurate.
Referring to
A1: Set corresponding parental control rating information for media contents in different time periods in a single media presentation.
The single media presentation here refers to as a channel, a single program, or a package of channels. The parental control rating information includes a time period, and a rating of a media content corresponding to the time period, where the rating system here is pre-defined and usually is standardized. For example, in light of rating system defined by the Motion Picture Association of America, for an one hour film, if, for example, violent scene appears from the 20th minute to the 23rd minute, then the parental control rating of this time period is set as special counseling rating; if pornographic scene appears from the 35th minute to the 39th minute, then the parental control rating of this time period is set as a restricted rating. The parental control rating information is carried in media presentation description information (Media Presentation Description, MPD) or media segments by a server side. The parental control rating corresponding to a media content may be marked in a hierarchical manner. The parental control rating information is summarized into the following categories:
(1) Default parental control rating, which is carried in the MPD level and default to the whole media presentation. For example, a default parental control rating of the media content may include a general audiences rating; a type of a parental control rating system, such as the Motion Picture Association of America rating, and an applicable country code/region code, such as country code US and the region code optional; and
(2) other parental control rating which is different from the default parental control rating. To be specific, other parental control rating information includes a certain parental control rating and time period information corresponding to the certain parental control rating. Here the time period information may be enumeration of time ranges. Period corresponds to a time period and a range of media segments, to be specific to a specific media segment and a corresponding parental control rating. For example, if parental control rating of media segments (numbers 25-28) is signaled as a special counseling rating, and a default parental control rating is a general audiences rating, then the parental control rating of the media content corresponding to the media segments whose numbers are 25-28 is the special counseling rating, and the parental control rating of the media content corresponding to other media segments is the general audiences rating.
Optionally, a handle mode of a client may be further carried in the MPD or a media segment, where the handle mode may include:
a handle mode that may be adopted by the client when a parental control rating exceeds a set highest rating or a highest rating of a user, where the handle mode may take enumerated values, such as, authentication, skip, and client policy first, and if the handle mode is authentication, a URL address of a remote authentication server of a third party may be further included.
Because a media content may be divided into a video content and an audio content, different parental control ratings can also be set for a video content, an audio content, a caption content, and the like in a same time period.
A2: Send the parental control rating information to a client, so that the client processes the media contents in the single media presentation according to the parental control rating information.
After receiving the parental control rating information, according to the parental control rating information, the client performs corresponding parental control during watching in light of a set highest rating or a highest rating of a user for watching. If the set highest rating or the highest rating of a user for watching is greater than or equal to a rating of a media content, the media content can be directly watched; otherwise, if a handle mode of the client is provided, corresponding processing needs to be performed in light of the handle mode of the client. For example, if the handle mode is indicated as authentication, the client needs to perform corresponding authentication, and the media content can be continuously watched only after the authentication succeeds, that is to say, the media content cannot be continuously watched if the authentication fails; if the handle mode is indicated as skip, the media content portion of a corresponding rating is directly skipped; if the handle mode is indicated as client policy first, a policy of the parental control set by the client prevails; and if the handle mode of the client is not provided, processing is performed in light of a local policy of the client, for example, the parental control is not applied, a highest rating allowed for watching is set, or a media content that exceeds the allowed highest rating is skipped (directly filtered out).
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation, and the parental control rating information is sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information, so as to make the effect of the parental control accurate.
Referring to
B1: Receive parental control rating information sent by a server, where the parental control rating information is parental control rating information corresponding to media contents in different time periods in the single media presentation.
Reference is made to step A1 for the detailed content of the parental control rating information, and details are not described herein again.
B2: Process the media contents in the single media presentation according to the parental control rating information.
This step is described in detail in A2, and will not be repeated herein.
In this embodiment, the parental control rating information sent by the server is received, where the parental control rating information is parental control rating information corresponding to the media contents in the different time periods in the single media presentation; and the media contents in the single media presentation are processed according to the parental control rating information and a processing rule, so as to make the effect of the parental control accurate.
Referring to
a setting unit 301, configured to set parental control rating information for media contents in different time periods in a single media presentation; reference is made to step A1 for the specific implementation process, and details are not described herein again; and
a processing unit 302, configured to send the parental control rating information to a client, so that the client processes the media contents in the single media presentation according to the parental control rating information; reference is made to step A2 for the specific process, and details are not described herein again.
In this embodiment, the setting unit 301 sets the parental control rating information for the media contents in the different time periods in the single media presentation; and the processing unit 302 sends the parental control rating information to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information and a processing rule, so as to make the effect of the parental control accurate.
Referring to
a receiving unit 401, configured to receive parental control rating information sent by a server, where the parental control rating information is parental control rating information corresponding to media contents in different time periods in the single media presentation; the specific implementation process is described in detail in step B1, which is not repeated herein; and
a processing unit 402, configured to process the media contents in the single media presentation according to the parental control rating information; the specific implementation is described in detail in step B2, which is not repeated herein.
In this embodiment, the receiving unit 401 receives the parental control rating information sent by the server, where the parental control rating information is parental control rating information corresponding to the media contents in the different time periods in the single media presentation; and the processing unit 402 processes the media contents in the single media presentation according to the parental control rating information and a processing rule, so as to make the effect of the parental control accurate.
Referring to
501: The client requests an MPD from the server.
All rating information relevant to parental control may be carried in an MPD layer in a unified manner. This solution is rather suitable for on-demand media presentation or the corresponding included media contents that can be determined in advance, and supports the media presentation that is combined by program contents from different sources or supports inserting a video clip or an advertising segment from other sources into a media presentation. A <ParentalRating> element (CM=Conditionally Mandatory) shown in Table 1 may be used to carry information relevant to a parental control rating.
The specific implementation of the parental control rating information is shown as follows, where the bold part is the MPD information.
502: The server returns a corresponding MPD.
Corresponding parental control rating information may be included in the MPD.
503: The client judges, according to the parental control rating information included in the MPD, a parental control rating of a time period corresponding to a media segment that needs to be requested, and performs corresponding processing. Specific processing steps are shown in
601: The client judges whether a parental control function is enabled. If the parental control function is not enabled, skip to the processing procedure of step 504 in
602: The client judges whether the parental control rating information is included in the MPD. If the parental control rating information is not included, perform the processing procedure of step 504 in
603: The client judges whether other rating information is included in the parental control rating information. If other rating information is not included, perform the following processing procedure 606; otherwise, continue to perform the processing procedure 604.
604: The client judges whether a time period range of other parental control rating overlaps a time period range of a requested segment, that is, whether a time period range of a certain <timeline> in an <otherRating> element overlaps a time period range corresponding to the media segment that needs to be requested (supposing that a time period range of a certain <timeline> is [a, b], and the time period range corresponding to the media segment that needs to be requested is [c, d]; if a≦c and d≦b, it is regarded that a time period range of the <timeline> overlaps the time period range corresponding to the media segment that needs to be requested). If multiple pieces of different parental control rating information exist, each piece of other rating information needs to be processed in sequence until a time period range that overlaps the time period range of the requested segment is found, or a time period range that overlaps the time period range of the requested segment is not found after all processing is finished. If a time period range that overlaps the time period range of the requested segment is found in a certain piece of rating information, continue to perform the following processing procedure 605; otherwise, perform the following processing procedure 606.
605: A parental control rating of the media segment is a corresponding parental control rating in the parental control rating information that includes the time period of the media segment, for example, a ratingValue of an <otherRating> element.
606: A parental control rating of the media segment is a default parental control rating, for example, a ratingValue of a <defaultRating> element.
607: The client judges whether the parental control rating obtained in the foregoing 605 or 606 exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the processing procedure of step 504 in
608: The client judges whether a handle mode of the client is included in the parental control rating information, for example, a handleMode in Table 1. If information of the handle mode of the client is included, continue to perform the following processing procedure 609; otherwise, perform the following processing procedure 610.
609: Perform processing in light of an indicated handle mode of the client. If the handle mode is indicated as authentication, the client needs to perform corresponding authentication, if the authentication succeeds, perform the processing procedure of step 504 in
610: Perform processing in light of a local policy of the client, for example, perform authentication or skip the processing, and for the authentication processing, after the authentication succeeds, perform the processing procedure of step 504 in
End the Procedure.
504: The client sends a media segment request message to the server.
505: The server returns a media segment corresponding to the media segment request message.
506: The client plays the content of the media segment.
Steps 503 to 506 may be repeated for many times as required.
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information, so as to make the effect of the parental control accurate.
Referring to
701: The client requests an MPD from the server.
Besides that optional default parental control rating information is provided in an MPD layer, for different Periods, when a parental control rating is different from a default parental control rating, other corresponding parental control rating information is added. If the default parental control rating information is not provided, corresponding parental control rating information may be added for each Period. This solution supports providing a live broadcast channel service through adaptive HTTP streaming, or supports dynamically inserting a video clip or an advertising segment from other sources in a live broadcast process. A <ParentalRating> element as shown in the following Table 2 may be included in the MPD layer:
In a <Period> element, if a parental control rating of an included media content is different from a default parental control rating, parental control rating information, which is shown in the following Table 3 and functions on the Period, is added:
If parental control ratings of only a part of time periods in the Period are different from the default parental control rating, corresponding time periods are used to mark the parental control ratings, that is, time period information (timeline) thereof is optional as shown in Table 3:
If parental control rating information is included in both a <Period> element and a <ParentalRating> element, a parental control rating included in the <Period> has a priority; and if information of a handle mode of the client <handleMode> is included in both the <Period> element and the <ParentalRating> element, similarly, the handle mode included in the <Period> has a priority. If a ratingType, a countryCode, a regionCode, and a handleMode are not included in the <Period>, but the corresponding element or attribute is included in the <ParentalRating> element, then the element or the attribute in the <Period> takes the value of the corresponding element or attribute in the <ParentalRating> element as a default value.
If a media presentation is divided into three different Periods according to the time 0:00-10:00, 10:00-13:00, and 13:00-30:00, parental control ratings of the first and third Periods are a general audiences rating (a G rating in the Motion Picture Association of America rating system), and a parental control rating of the middle Period is a parental counseling rating (a PG rating). An MPD example conforming to the definition of the <ParentalRating> element and the <otherRating> element of the parental control rating information in the foregoing Embodiment 2 is shown by the bold parts in the following:
<ParentalRating>
<defaultRating ratingType=“ MPAAParentalRatingCS ”
RatingValue=“G”>
<countryCode>US</countryCode>
</defaultRating>
//The MPAAParentalRatingCS rating system is
adopted, and a default rating is G
//The effective country is America
<handleMode AuthServer=“www.3partyAuth.com/parentalCtrl.html”>
0 //The handle mode of the client is authentication
</handleMode> //The address of the remote authentication server is
ww.3partyAuth.com/parentalCtrl.html
</ParentalRating>
<otherRating ratingValue=“PG”/> //Indicates that a parental control
rating of this Period is PG
702: The server returns a corresponding MPD.
Parental control rating information may be included in the MPD. Here, the MPD may be a live broadcast MPD, and if the MPD is the live broadcast MPD, steps 701 to 702 may be repeated for many times as required.
703: The client judges, according to the parental control rating information included in the MPD, a parental control rating of a time period corresponding to a media segment that needs to be requested, and performs corresponding processing. Specific processing steps are shown in
801: The client judges whether a parental control function is enabled. If the parental control function is not enabled, perform the processing procedure of step 705 in
802: The client judges whether parental control rating information is included in a <Period> element, for example, judges whether an <otherRating> element in Table 3 is included. If the parental control rating information is not included, perform the following processing procedure 806; otherwise, continue the following processing procedure 803.
803: The client judges whether time period information is included in the rating information, for example, judges whether a <timeline> element is included in an <otherRating> element in Table 4. If the time period information is not included, perform the following processing procedure 805; otherwise, continue to perform the following processing procedure 804.
804: The client judges whether a time period range overlaps a time period range of a requested segment, for example, judges whether a time period of in a certain <timeline> element in Table 4 overlaps the time period range corresponding to the media segment that needs to be requested. If multiple pieces of different parental control rating information (multiple <otherRating> elements) exist, each piece of other rating information needs to be processed in sequence until a time period range that overlaps the time period range of the requested segment is found, or a time period range that overlaps the time period range of the requested segment is not found after all processing is finished. If a time period range that overlaps the time period range of the requested segment is found in a certain piece of rating information, continue to perform the following processing procedure 805; otherwise, perform the following processing procedure 806.
805: A parental control rating of the media segment is a corresponding parental control rating in the piece of the rating information that includes the time period of the media segment, for example, a ratingValue of an <otherRating> element, and if the time period information is not included, the parental control rating of the media segment is a ratingValue of an <otherRating> element included in the Period.
806: The client judges whether default parental control rating information of an MPD layer is included in the MPD, for example, judges whether Table 2 includes a <ParentalRating> element. If the default parental control rating information is not included, perform the processing procedure of step 705 in
807: A parental control rating of the media segment is a default parental control rating, for example, a ratingValue of a <defaultRating> element.
808: The client judges whether the parental control rating obtained in the foregoing 805 or 807 exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the processing procedure of step 705 in
809: The client judges whether information of a handle mode of the client is included in the MPD, for example, a handleMode attribute of an <otherRating> and/or a <defaultRating> in Embodiment 2. When the parental control rating is a ratingValue in the <otherRating>, if the <otherRating> includes a handleMode, the handle mode is followed in priority, and if an address of a remote authentication server is included in the <otherRating>, remote authentication is applied in priority; otherwise, a handle mode of the client indicated in the <defaultRating> is followed, and if the address of the remote authentication server is included, the remote authentication also needs to be applied. If the information of the handle mode of the client is included, continue to perform the following processing procedure 810; otherwise, perform the following processing procedure 811.
810: Perform processing in light of an indicated handle mode of the client, if the handle mode is indicated as authentication, the client buffers indication information on which authentication needs to be performed, and if a URL address of the remote authentication server is included, the URL address also needs to be buffered so as to be used in step 704 in
811: Perform processing in light of a local policy of the client, for example, perform authentication or directly skip the processing. The client buffers the indication information on which authentication needs to be performed and the URL address of the remote authentication server that may be included, so as to be used in step 704 in
703: End the procedure.
704: An optional step. Interact with an authentication server, and authenticate whether the client can be authorized to watch a media content that exceeds a highest parental control rating allowed. Detailed processing steps of such an embodiment are shown in the following
901: The client judges whether an indication that authentication processing needs to be performed is buffered, where the indication information is obtained by processing and is buffered in step 703 in
902: The client judges whether a URL address of a remote authentication server is buffered, where the URL address is obtained and is buffered in step 703 in
903: The client connects to a corresponding authentication server according to the URL address of the remote authentication server, and interacts with the authentication server to perform the authentication. An authentication manner defined by the authentication server may be adopted, for example, submitting a corresponding identity credential, adding a digital signature in a request message, or entering a user name/password in a pop-up window in light of prompts.
904: The client receives an authentication result returned by the authentication server. If the authentication fails, the server returns a result indicating that the authentication fails; and if the authentication succeeds, the server returns a response or token (Token) indicating that the authentication succeeds and indicating a validity period (a period of time such as 30 minutes, or valid for the media presentation period this time, or invalid at next startup or re-login) of the result indicating that the authentication succeeds. If a validity period is set for an authentication result, the foregoing authentication steps 901 to 903 are not necessarily repeated each time, and the authentication is needed again when the authentication result exceeds an assigned validity period. After the authentication succeeds, the processing procedure of step 705 in
905: Perform authentication processing in light of the local configuration of the client, for example, perform authentication in light of locally pre-set user/password authentication, or perform authentication by inserting a smart card, or perform authentication by adopting a biological feature (such as fingerprint, iris or the like), and return a corresponding authentication result. Similarly, a corresponding validity period may be set for a result indicating that the authentication succeeds. After the authentication succeeds, the processing procedure of step 705 in
704: End the procedure.
705: The client sends a media segment request message to the server.
706: The server returns a media segment corresponding to the media segment request message.
707: The client plays the content of the media segment.
Steps 703 to 707 may be repeated for many times as required.
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is included in the MPD and then sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information, so as to make the effect of the parental control accurate.
Referring to
1001: The client requests an MPD from the server.
Besides that optional default parental control rating information is provided in an MPD layer, for different Periods, when a parental control rating is different from a default parental control rating, other corresponding parental control rating information is added. Another implementation solution is that, if parental control ratings of only a part of time periods in a Period are different, a sequence number range of a media segment is used to indicate a media segment corresponding to a parental control rating. A <ParentalRating> element defined in Embodiment 6 may be included in the MPD layer, while in a <Period> element, some attributes may be added in a <SegmentInfoDefault> or <SegmentInfo> element to indicate relevant parental control rating information, and relevant definition is exemplified in the following Table 5:
Table 5 only provides a sequence number range, and of course, may also provide multiple sequence number ranges as shown in the following Table 6:
The foregoing two tables only provide a parental control rating and a sequence number range of a media segment corresponding to the parental control rating, and similarly, multiple parental control ratings and sequence number ranges of media segments corresponding to the parental control ratings may be provided as shown in Table 7:
For example, when parental control rating information is included in a <SegmentInfoDefault> element, a sequence number (or referred to as serial number/index number) range of a media segment functions on media segments in a sequence number range corresponding to all <Representation> included in a Period that includes the <SegmentInfoDefault>; when parental control rating information is included in a <SegmentInfo> element, a sequence number range of a media segment only functions on media segments in a sequence number range corresponding to a Representation that includes the <SegmentInfo>.
Because the parental control rating information is included in the <SegmentInfo>, a parental control function with finer granularity can be implemented. Because a Representation transmitted by adaptive HTTP streaming may be provided by a content provider or a services provider (Content Provider, CP/Services Provider, SP) as required, for example, not only an audio and a video (even a caption) can be combined in the same Representation as an integrated Representation, but also audios of different languages or code rates, videos of different code rates or view angles, captions of different languages, and so on can be totally separated as independent Representations and then flexibly selected and combined by the client as required. In this way, it is possible to perform independent parental control rating indication for each of different media components (that is, Representations) that compose a media presentation, for example:
(1) corresponding indication may be performed, according to the rating requirements, on a video component that includes scenes such as violence, pornography, and drug taking;
(2) corresponding indication may be performed, according to the rating requirements, on an audio component that includes dirty words;
(3) corresponding indication may be performed, according to the rating requirements, on a caption component that includes dirty words;
(4) when videos having multiple visual angles are provided at the same time, parental control ratings of the videos having different visual angles (or view angles, View Angle) may be different;
(5) when multiple videos (such as a picture in picture PIP or a main video window plus an auxiliary small video window) are provided at the same time, parental control ratings of the different videos may be different; and
(6) when a media component as a supplement is provided, a parental control rating of the media component as the supplement may be different from a parental control rating of a supplemented main media presentation.
In this way, the parental control may be applied to a specific media component (that is, Representation), and the client only selects and plays a Representation that meets a parental control rating requirement.
1002: The server returns a corresponding MPD.
Corresponding parental control rating information may be further included in the MPD.
1003: The client judges, according to the parental control rating information included in the MPD, a parental control rating corresponding to a media segment that needs to be requested, and performs corresponding processing. Specific processing steps are shown in
1101: The client judges whether a parental control function is enabled. If the parental control function is not enabled, perform the processing procedure of step 1004 in
1102: The client judges whether default parental control rating information of the MPD layer is included in the MPD (judges whether a <ParentalRating> element is included in the MPD). If the default parental control rating information is not included, perform the processing procedure of step 1004 in
1103: The client judges whether parental control rating information is included in a <SegmentInfo> of a Representation to which a media segment that needs to be requested belongs. If the parental control rating information is not included, perform the following processing procedure 1106; otherwise, continue to perform the following processing procedure 1104.
1104: The client judges whether a sequence number range of a media segment includes a sequence number of the requested media segment, that is, judges whether a certain sequence number range [startIndexPR, endIndexPR] includes a sequence number of the media segment that needs to be requested (supposing that a sequence number of the media segment that needs to be requested is iReq, and if startIndexPR≦iReq≦endIndexPR, it is regarded that the sequence number range overlaps the sequence number of the media segment that needs to be requested). If multiple pieces of different parental control rating information exist, each piece of other rating information needs to be processed in sequence until a sequence number range that overlaps the sequence number of the requested segment is found, or a sequence number range that overlaps the sequence number of the requested segment is not found after all processing is finished. If a sequence number range of a media segment that includes the sequence number of the requested segment is found in a certain piece of rating information, continue to perform the following processing procedure 1105; otherwise, perform the following processing procedure 1106.
1105: A parental control rating of the media segment is a corresponding parental control rating (a direct ratingValue or a ratingValue of the <otherRating> element) in the piece of the rating information that includes a sequence number of the media segment.
1106: A parental control rating of the media segment is a default parental control rating (a ratingValue of a <defaultRating> element).
1107: The client judges whether the parental control rating obtained in the foregoing 1105 or 1106 exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the processing procedure of step 1004 in
1108: The client judges whether a handle mode (a handleMode in Table 2) of the client is included in the parental control rating information. If information of the handle mode of the client is included, continue to perform the following processing procedure 1109; otherwise, perform the following processing procedure 1110.
1109: Perform processing in light of an indicated handle mode of the client. If the handle mode is indicated as authentication, the client needs to perform corresponding authentication, if the authentication succeeds, perform the processing procedure of step 1004 in
1110: Perform processing in light of a local policy of the client, for example, perform authentication or skip the processing, and for the authentication processing, after the authentication succeeds, skip to the processing procedure of step 1004 in
1003: End the procedure.
1004: The client sends a media segment request message to the server.
1005: The server returns a media segment corresponding to the media segment request message.
1006: The client plays the content of the media segment.
Steps 1103 to 1106 may be repeated for many times as required.
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is included in the MPD and then sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information. In the foregoing step 1003, the parental control function is performed for each of media segments included in each Representation. In the situation that the authentication fails or the handle mode is skip, a media segment of a media component that does not meet a parental control rating requirement is prevented from being played, but other media components that meet parental control rating requirements can still be played: (1) for example, occurrence of a video picture that exceeds the allowed highest rating is prevented, but an audio and/or a caption in a corresponding time period can still be played; (2) or dirty words or a caption or the like that exceed the allowed highest rating are prevented, but a video content and the like in a corresponding time period can still be played; (3) when a parental control rating of a media component provided as a supplement is different from a parental control rating of a supplemented main media presentation, for example, when a video advertisement provided in a picture in picture form exceeds the allowed highest rating, the main media presentation can still be played; and (4) when a video having multiple visual angles is provided, whether to meet a parental control rating requirement serves as a consideration for view angle selection, and a media segment included in a video Representation having a corresponding view angle, which meets the parental control rating requirement, is played.
Referring to
1201: The client requests an MPD from the server.
Because media streaming in an adaptive HTTP streaming transmission technology is sequentially composed in a time order by a series of media segments whose durations are in seconds, other parental control rating information different from a default parental control rating may be directly associated with a corresponding media segment.
Optionally, a <ParentalRating> element that is the same as that in the foregoing Embodiment 6/7 may be included in an MPD layer.
If a parental control rating is different from the default parental control rating, a corresponding parental control rating is added in a URL (<Url>) element of the media segment.
A table of an extended URL element (<Url>) of a media segment is shown by bold parts in Table 8:
ratingValue
A
Optional
Parental control rating of the
media segment
1202: The server returns a corresponding MPD.
Corresponding parental control rating information may be further included in the MPD.
1203: The client judges, according to the parental control rating information included in the MPD, a parental control rating corresponding to a media segment that needs to be requested, and performs corresponding processing. Specific processing steps are shown in
1301: The client judges whether a parental control function is enabled. If the parental control function is not enabled, perform the processing procedure of step 1204 in
1302: The client judges whether default parental control rating information of an MPD layer is included in the MPD (judges whether a <ParentalRating> element is included in the MPD). If the default parental control rating information is not included, skip to the processing procedure of step 1204 in
1303: The client judges whether parental control rating information is included (whether a ratingValue defined in Table 8 is included) in a <Url> element corresponding to a media segment that needs to be requested. If the parental control rating information is not included, perform the following processing procedure 1305; otherwise, continue to perform the following processing procedure 1304.
1304: A parental control rating of the media segment is any other corresponding parental control rating indicated by the ratingValue.
1305: A parental control rating of the media segment is a default parental control rating (a ratingValue of a <defaultRating> element).
1306: The client judges whether the parental control rating obtained in the foregoing 1304 or 1305 exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the processing procedure of step 1204 in
1307: The client judges whether a handle mode (a handleMode in Table 2) of the client is included in the parental control rating information. If information of the handle mode of the client is included, continue to perform the following processing procedure 1308; otherwise, perform the following processing procedure 1309.
1308: Perform processing in light of an indicated handle mode of the client. If the handle mode is indicated as authentication, the client needs to perform corresponding authentication, if the authentication succeeds, perform the processing procedure of step 1204 in
1309: Perform processing in light of a local policy of the client, for example, perform authentication or skip the processing, and for the authentication processing, after the authentication succeeds, skip to the processing procedure of step 1204 in
1203: End the procedure.
1204: The client sends a media segment request message to the server.
1205: The server returns a media segment corresponding to the media segment request message.
1206: The client plays the content of the media segment.
Steps 1203 to 1206 may be repeated for many times as required.
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is included in the MPD and then sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information, so as to make the effect of the parental control accurate.
Referring to
1401: The client requests an MPD from the server.
1402: The server returns a corresponding MPD.
Default parental control rating information may be further included in the MPD.
1403: The client processes the MPD, and processes a whole media presentation by applying parental control if the default parental control rating information is included. Detailed processing steps of such an embodiment are shown in the following
1501: The client judges whether a parental control function is enabled. If the parental control function is not enabled, perform the processing procedure of step 1404 in
1502: The client judges whether default parental control rating information of an MPD layer is included in the requested MPD. If the default parental control rating information is not included, perform the processing procedure of step 1404 in
1503: The client judges whether a default parental control rating of the media presentation exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the processing procedure of step 1404 in
1504: The client judges whether a handle mode of the client is included in the parental control rating information. If information of the handle mode of the client is included, continue to perform the following processing procedure 1505; otherwise, perform the following processing procedure 1506.
1505: Perform processing in light of an indicated handle mode of the client. If the handle mode is indicated as authentication, the client needs to perform corresponding authentication, if the authentication succeeds, perform the processing procedure of step 1404 in
1506: Perform processing in light of a local policy of the client, for example, perform authentication or skip the processing, and for the authentication processing, after the authentication succeeds, perform the processing procedure of step 1404 in
1403: End the procedure.
1404: The client sends a media segment request message to the server.
1405: The server returns a media segment corresponding to the media segment request message.
Parental control rating information corresponding to a current media segment is carried in the media segment, and reference is made to ISO/IEC 14496-12. An example that a self-defined Box is used to encapsulate the parental control rating information is described as follows:
1406: The client processes the media segment (including parental control processing). Detailed processing steps of such an embodiment are shown in the following
1601: The client judges whether parental control rating information is included in a media segment. If the parental control rating information is not included, perform the following processing procedure 1608; otherwise, continue to perform the following processing procedure 1602.
1602: The client judges whether a parental control function is enabled. If the parental control function is not enabled, perform the following processing procedure 1608; otherwise, continue to perform the following processing procedure 1603. The order of the foregoing 1601 and 1602 may be exchanged, that is, 1602 is performed before 1601.
1603: The client judges whether a parental control rating included in the media segment exceeds a highest rating of the age of a user or a set highest rating of the client. If the parental control rating does not exceed the highest rating, perform the following processing procedure 1608; otherwise, continue to perform the following processing procedure 1604.
1604: The client judges whether a handle mode of the client is included in parental control rating information (including the parental control rating information included in the media segment, and default parental control information that may be included in the MPD). If information of the handle mode of the client is included, continue to perform the following processing procedure 1605; otherwise, perform the following processing procedure 1606.
1605: Perform processing in light of an indicated handle mode of the client. If the handle mode is indicated as authentication, the client needs to perform corresponding authentication; if the handle mode is indicated as skip, the media segment is directly skipped and is not played; and if the handle mode is indicated as client policy first, a policy of the parental control set by the client prevails, and the following processing procedure 1606 needs to be performed; otherwise, perform 1607 after performing 1605.
1606: Perform processing in light of a local policy of the client, for example, perform authentication or skip the processing.
1607: The client judges whether the processing succeeds, only when the handle mode of the client is indicated as authentication and the authentication succeeds or the handle mode of the client is indicated as client policy first and the local authentication processing of the client succeeds, the following processing procedure 1608 is continued; otherwise, the processing is ended (the media segment is not processed and played).
1608: The client processes and plays the media segment.
1406: End the procedure.
Steps 1404 to 1406 may be repeated for many times as required.
In this embodiment, the corresponding parental control rating information is set for the media contents in the different time periods in the single media presentation; the parental control rating information is included in the MPD and the media segment, and then sent to the client, so that the client processes the media contents in the single media presentation according to the parental control rating information, so as to make the effect of the parental control accurate.
To sum up, parental control rating information may be included in any one or any layer combination of the following:
directly included in an MPD layer, where the effective range of the parental control rating information is the whole media presentation;
or, included in a Period, where the effective range of the parental control rating information is the Period;
or, included in a Representation, where the effective range of the parental control rating information is the Representation;
or, included in a URL element obtained by a media segment, where the effective range of the parental control rating information is the corresponding media segment;
or, included in a media segment, where the effective range of the parental control rating information is the media segment.
The effective range of a parental control rating may be marked or limited in any one of the following manners:
marked through time period range information; marked by directly associating with a Period; marked through a sequence number range of a media segment; marked by directly associating with a URL element obtained by a corresponding media segment; and marked by directly associating with a media segment.
The effective range specifically includes:
the rating has a highest priority if a parental control rating is included in a URL element obtained by a media segment or in the media segment; the rating has a second priority if the parental control rating is included in a Representation; the rating has a third priority if the parental control rating is included in a Period; and finally, the rating has a lowest priority if the parental control rating is included in an MPD layer, that is, a priority order descends from a media segment, a Representation, a Period, to a whole media presentation in a manner.
If parental control information is not included in a certain layer, default parental control information is parental control information included in an upper layer closest to the layer.
In the implementation, the MPD layer may provide one or more pieces of different parental control rating information at the same time; different parental control rating information may be included in different Periods; different parental control rating information may be included in different Representations; and different parental control rating information may be included in URL elements obtained by different media segments or in the media segments.
The parental control may be specifically applied in the following situations: different parental control ratings are applied to a video clip or an advertising segment that is inserted to a media presentation; different parental control ratings are applied to different parts of a composite media presentation having different content sources; and independent and different parental control ratings are applied to different media components (that is, Representations), respectively.
Through the description of the foregoing embodiments, persons of ordinary skill in the art should understand that, all or a part of the steps of the method according to the foregoing embodiments may be implemented by a program instructing relevant hardware. The program may be stored in a computer readable storage medium. When the program is run, the steps of the method according to the foregoing embodiments are performed. The storage medium may be a ROM/RAM, a magnetic disk, an optical disk, and the like.
The foregoing description is merely about exemplary embodiments of the present invention, but not intended to limit the protection scope of the present invention. Any variation or replacement made by persons skilled in the art within the technical scope disclosed by the present invention shall fall within the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
201010506027.X | Sep 2010 | CN | national |
This application is a continuation of International Patent Application No. PCT/CN2011/080079, filed on Sep. 23, 2011, which claims priority to Chinese Patent Application No. 201010506027.X, filed on Sep. 30, 2010, both of which are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2011/080079 | Sep 2011 | US |
Child | 13851638 | US |