Embodiments of the invention generally relate to tagging and editing of audiovisual content and, more specifically to determining and tagging the intent of skipped streaming and media content for collaborative reuse across a social network to prevent inappropriate content from being displayed to a select audience.
Parents are frequently confronted with the dilemma of deciding which portions of an audiovisual program are suitable for their young children. In general, in order to enable parents to control the content of broadcast, cable, and satellite audiovisual programming, parental control products such as the V-chip have been developed to block transmission of programs individually selected or matching content criteria codes selected by the parent.
Many programs of interest to children are generally acceptable to parents, but may contain scenes that are inappropriate for viewing by children. In such cases, parental control products give parents the option of allowing or blocking the generally acceptable programs that may contain specific objectionable scenes or content. Alternatively, parents can preview an entire program to identify objectionable scenes and then watch it again with their children in order to fast forward through the objectionable scenes. This has the obvious disadvantage of the parent having to watch the program twice.
The embodiments provide a method for collaborating across social and other networks to facilitate enhanced viewing for protection of younger viewers from objectionable media content.
In an exemplary embodiment, a method is provided for bypassing a portion of content of a media. The method includes accumulating a history of skipped content for the media; detecting each portion of skipped content during a display of the media; automatically determining a reason for each portion of media content that is skipped based on a set of predefined criteria and resulting in a measured value for each portion of skipped content; tagging each portion of skipped content with the associated measured value; and sharing information associated with the tagged portions of skipped content across a social network for collaborative reuse.
In a further aspect, a previously skipped portion of media content is detected rising the shared information associated with the tagged portions of skipped content. A user's profile and display preferences for media is determined. A determination is also made whether or not the previously skipped portion of media content exceeds a predetermined user display threshold. Responsive to a user-configurable policy for bypassing content, the content of the media is automatically displayed on a user device and content exceeding the predetermined display threshold is skipped.
These and other advantages and aspects of the of the embodiments of the disclosure will become apparent and more readily appreciated from the following detailed description of the embodiments taken in conjunction with the accompanying drawings, as follows.
The following description is provided as an enabling teaching of embodiments of the invention including the best, currently known embodiment. Those skilled in the relevant art will recognize that many changes can be made to the embodiments described, while still obtaining the beneficial results. It will also be apparent that some of the desired benefits of the embodiments described can be obtained by selecting some of the features of the embodiments without utilizing other features. Accordingly, those who work in the art will recognize that many modifications and adaptations to the embodiments described are possible and may even be desirable in certain circumstances. Thus, the following description is provided as illustrative of the principles of the invention and not in limitation thereof, since the scope of the invention is defined by the claims.
Parents want to be able to watch certain audiovisual programs with their children, but with the ability to automatically skip and block content deemed to be inappropriate for their children. In certain cultures, vulgarity, violent content, and sexual content are perceived differently. For example, in the U.S. violent content is more likely to be tolerated by parents than sexual content. In European countries, the opposite is true. The disclosed embodiments allow scenes to be skipped based on the preferences of the user by either alerting the user to the objectionable content or automatically skipping the content when possible.
It is highly likely that there are many other people across the world that would have similar issues and would take similar actions. By enabling these skipped parts to be shared with other users, along with the intent of the skip, the other users could benefit from this process without having to be ever vigilant with the remote control to skip entire scenes.
The disclosed embodiments, facilitate enhanced viewing by users by enabling collaboration of these identified skipped parts across social networks to tag scenes and content that may be inappropriate, automatically capture users' behavior while watching certain programs, and predictively tag sections for future enhanced “censored” viewings.
Television commercials are another potential issue, particularly with regards to certain types of programming such as sports programs. The disclosed embodiments could be used to skip previously tagged commercials having objectionable content, to block the viewing of these commercials if the programming does not allow the commercials to be skipped.
Skipped content metadata can be shared across social networks or via television services such as Netflix to allow consumers to proactively skip content based on the shared metadata and individual preferences.
Embodiments described herein collaboratively and intelligently tag scenes and frames within an audiovisual program based on user preferences and real-time actions in a social environment to build metatags that automatically skip objectionable content during audiovisual programs. The metatags associated with scenes and frames within an audiovisual program to censor certain parts of a scene are utilized to skip ahead or mute content.
To determine if the reason for skipping content is related to the content not being appropriate for certain ages, a score can be computed based on a number of categories including, but not limited to, social network membership and profile, timing of audiovisual streaming, analysis of skipped image frames, analysis of subtitles, and analysis of sound. For example, as part of a social network registration process, a user profile can be created on the social network 30, 34 such that it knows that the user has two children and their specific ages. The system 10 knows when the show was watched (a show watched after 11:00 PM probably was not watched by children). This information can be cross-referenced against the social network 30, 34 if the children's bed time was published to be more deterministic. The analysis of skipped streamed image frames could indicate the appearance of blood or sexual content in the skipped content. Analysis of subtitles could indicate that there was rude language in the skipped content. Analysis of sound could indicate weapons are being fired or a character is dying in the skipped content. In exemplary embodiments, a score can be computed based on at least these five categories and, if a certain threshold score is passed, a determination can be made that it was highly likely that the content was skipped due to inappropriate content for the given age group. In other embodiments, more or fewer than five categories could be used to determine a score for the skipped content.
In one embodiment of the invention, a method is provided to bypass a portion of audiovisual media content based on collaborative metatags. An accumulated history of skipped sections for a media can be given a weighted value based on specified criteria. Responsive to a user configurable policy for skipping a media section (e.g., fast forwarding, bypassing, muting), and a media section exceeding a predetermined threshold, the media content can be presented automatically with the skipped media section. In some embodiments, the media content could comprise a streaming media such as an audiovisual media, and the reason(s) for skipping the section could be derived from one of a user selection and a user social media (i.e., collaborative exchange). In some embodiments, the reason for skipping a media section can be selected from one or more of the following types of content: age appropriate content, boring content, violent content, language content, sexual content, and previously watched content. The history of skipped sections can be accumulated automatically utilizing user activity and the likelihood of matching criteria utilizing one or more items selected from the group: social network information (e.g., children of specific ages), timing (when the media was viewed), analysis of the skipped material (e.g., sex scene, blood, etc.), analysis of subtitles, and analysis of sound (e.g., gun fire).
The exemplary system diagram illustrated in
Software components included in the exemplary system 10 are web server 40, application server 44, and media content data store 48. These components form the service provider hosted environment. Web server 40 is the front end to application server 44 and exposes a web service interface for tagging of skipped content. Application server 44 is the backend component of the service provider hosted environment. It stores metadata associated with skipped/tagged content in media content metadata store 48.
Two other software components included in exemplary embodiments can be resident on either a server computer or a client device. User preferences data store is responsible for storing user preferences for streaming of audiovisual content. The location of this software component can be either on a client device and/or a server depending upon client device capabilities and user preferences—online or offline. In one embodiment, offline mode allows users to store preferences locally on the client device. The other software component that can be resident on either a server computer or a client device is the skipped content detection module. The function of the skipped content detection module is to detect skipped content on the client viewing device. The location of this software component can be either on a client device and/or a server depending upon client device capabilities and user preferences—online or offline, in one embodiment, offline mode allows users to tag content for later transmission to the application provider when possible.
Application server 44 includes additional software modules which when executed on a computer processor automatically determine and tag intent of skipped streaming and media content. These modules include a tagging service module, a scoring service module, and a metadata sharing module. The tagging service module is a web service that is invoked by the skipped content detection module. The scoring service module scores skipped content based on predefined categories, e.g., language, violence, social network data, etc. The metadata sharing module is a web service invoked by external clients (e.g., social media sites and client devices) to access metadata for the purpose of allowing users to proactively skip content based on user preferences and social media profile information.
In the following simplified example, the content could be classified by the system as potentially offensive depending on the computed score. The system could be configurable to define the weights of the various categories when deciding when content was skipped because it was offensive, or for some other reason.
The system could use additional factors such as viewing time or viewing location (e.g., which of two or more televisions in a given residence or other building) that could act as multipliers affecting the overall score. For example, if the viewing time is 4:00 pm the system could inflate or deflate the score as needed if it suspects children might be present. Similarly, if the viewing location is in the family room (versus another room), the skipped content score could be inflated (e.g., b a factor of 1.5) to reflect that the content was likely skipped because it was offensive to younger viewers (e.g., due to language, or violence, etc.). The actual multiplier used could be customized based on user preferences.
The system could collect and use data from social networks which could be factored into the scoring process. For example, social network profiles can be queried to determine if a given household has young children and the system could be configured to vary the score based on that determination. To take another example, if the social network data indicates the children are at school (or at a friend's house, etc.) at a given time, the system could use a different weight (again based on user preference) when it detects skipped content. If the system is relatively sure that only adults are home, the system might be less certain that the skipped content was skipped because it was offensive versus being skipped for some other reason. The system could be configurable to respect the possibility that in some households age would not be as significant factor (e.g., if what is offensive to children is also offensive to adults) depending on personal viewing preferences, etc.
Existing technology could be used to examine images, subtitles, and sound to detect automatically violence, sexual content, and inappropriate language, etc. The system can be configured to tag content automatically as inappropriate (e.g., for certain ages) depending on the individual category scores or depending on the total score and overall threshold. In some embodiments, if a predefined threshold is exceeded for a particular category, such as violence, then the content could be tagged automatically as inappropriate regardless of overall score and threshold.
In one embodiment, a digital content streaming service, such as Netflix™, could share this tagged content with other users and enable other users to skip those small sections given the likelihood that the sections are inappropriate for their children as well. The tagged streaming content could be shared without charge as a product enhancement, or could be offered as a fee-based service.
In one embodiment, skipped content could be represented in the main content bar which is typically displayed as a slider of the whole stream at the bottom of a screen display in which the skipped sections can be represented by color segments on the slider bar.
In another embodiment, skipped content could be categorized based on age, i.e., some sections are acceptable for 10 year old children, but not for 7 year old children.
In another embodiment, skipped content could be categorized based on “families” or other predefined groups with similar backgrounds and/or viewing preferences. In this embodiment, members of a given family (or group) can configure scoring thresholds to match their familial and/or individual viewing preferences, resulting in a customized playback experience. Social networks can suggest to users a likely first place (e.g., based on family data and viewing preferences of similar families) which can then be modified based on family specific information, such as religion.
An advantage provided by the disclosed embodiments is the ability to use this type of information and content on a device or web page that will draw viewers and potentially could generate advertising revenue. Similar to metacritic reviews for movies and games, this information could provide real data to publishes, television networks, and content streamers for use.
As will be appreciated by one skilled in the art, the disclosed embodiments may be implemented as a system, method or computer program product. According, disclosed embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or a embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, the disclosed embodiments may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or an suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, radio frequency (RF), etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for the disclosed embodiments may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming, languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or a server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer for example, through the Internet using an Internet Service Provider).
The disclosed embodiments have been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions ma be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block(s).
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block(s).
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block(s).
The flowchart and b lock diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen a best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.