US9161074B2 - Methods and systems for distributing interactive content - Google Patents
Methods and systems for distributing interactive content Download PDFInfo
- Publication number
- US9161074B2 US9161074B2 US13/874,268 US201313874268A US9161074B2 US 9161074 B2 US9161074 B2 US 9161074B2 US 201313874268 A US201313874268 A US 201313874268A US 9161074 B2 US9161074 B2 US 9161074B2
- Authority
- US
- United States
- Prior art keywords
- content
- supplementary
- fingerprint
- database
- broadcast
- 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, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2668—Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
Definitions
- Embodiments of the present invention relate generally to methods and systems for the distribution of interactive content in a broadcast stream and, in particular, to methods and systems for distributing interactive content using a content fingerprint.
- An ability to provide viewer-selectable interactivity in conjunction with audio-video content may be a desirable capability in a broadcast-television system.
- a required capability in a system intended for this purpose may be an ability to control interactivity during discontinuities in program content, for example, commercial breaks, emergency broadcast interruptions, and other program-content discontinuities.
- Existing systems for providing viewer-selectable interactivity in conjunction with audio-video content may be problematic in many broadcast environments because of existing systems' reliance on specific signaling content in the broadcast stream. No standardized method for conveying such signals is provided across the multiple broadcast methodologies, for example, cable, terrestrial, satellite, Internet Protocol, and other broadcast methodologies, that may be used to distribute program content.
- signals that are introduced into a broadcast stream at one point in a distribution chain may be modified or removed at a later point in the processing of the broadcast stream prior to reception by the viewer.
- the insertion of commercial content into program content may vary with respect to the timing, duration and identity of the commercial content during each unique broadcast of a particular piece of program content and for each method of broadcast of the program content. Due to this variability, existing systems may require control signals be inserted specifically for each presentation of the program content.
- Methods and systems that control the distribution of interactive content in a broadcast-television environment by recognizing program content in the broadcast stream in the absence of specific control signals in the broadcast stream; inserting appropriate supplementary content into the broadcast stream when program content is recognized; and ceasing to insert supplementary content in the broadcast stream when program content is interrupted may be desirable.
- Embodiments of the present invention relate to systems and methods for controlling the distribution of supplementary content, in a broadcast system, by receiving a media content comprising at least one of an audio content and a video content and receiving supplementary content associated with the received media content; monitoring a broadcast stream; detecting the at least one of the audio content and the video content of the media content in the broadcast stream; upon initially detecting the media content, selecting supplementary content based on the detected media content, generating a first control signal, and using the first control signal to control the distribution of the selected supplementary content; and after generating a first control signal and upon failing to detect the media content in the broadcast stream, generating a second control signal and using the second control signal to control the distribution of the selected supplementary content.
- One aspect of the present invention teaches systems and methods for receiving media content comprising at least one of an audio content and a video content, receiving supplementary content associated with the media content, and assigning a unique identifier to the enhanced media content comprising the media content and the supplementary content.
- Another aspect of the present invention teaches methods and systems for detecting content by creating a first database and storing in the first database a plurality of reference fingerprints generated from at least one of audio content and video content of the received media content, unique identifiers for the media content, and associations between the unique identifiers and the plurality of generated fingerprints; and when monitoring a broadcast stream, generating fingerprints from at least one of an audio content and a video content in the broadcast stream, comparing the generated fingerprints with the plurality reference fingerprints in the first database, and determining whether, or not, a match between a generated fingerprint and a reference fingerprint exists.
- the step of detecting content also includes finding a matching fingerprint in the first database and extracting the unique identifier associated with the matching fingerprint from the first database.
- a still further aspect of the present invention teaches creating a second database and storing supplementary content, unique identifiers, and associations between the unique identifiers and the supplementary content in the second database; and upon detecting media content, determining the unique identifier of the detected media content, and using the unique identifier to extract supplementary content from the second database.
- a still further aspect of the present invention teaches using the first control signal to control the distribution of the selected supplementary content by, upon generating the first control signal, inserting the supplementary content into the broadcast stream.
- a still further aspect of the present invention teaches using the second control signal to control the distribution of the selected supplementary content by, upon generating the second control signal, ceasing to insert the supplementary content into the broadcast stream.
- FIG. 1 is a diagram of an exemplary system for distributing program content (prior art);
- FIG. 2 is an exemplary schematic representation of multiple broadcasts of an episode of a television show (prior art);
- FIG. 3 depicts an exemplary system for practicing an aspect of embodiments of the present invention
- FIG. 4 depicts an alternative embodiment of an exemplary system for practicing an aspect of embodiments of the present invention
- FIG. 5 depicts a flowchart of an exemplary process for monitoring a broadcast stream and generating control signals according to embodiments of the present invention
- FIG. 6 is a schematic representation of the content of three exemplary episodes of a television show
- FIGS. 7 a , 7 b , and 7 c depict a flowchart of an exemplary process for monitoring a broadcast stream and generating control signals according to embodiments of the present invention
- FIG. 8 is a schematic representation of an exemplary broadcast of an episode of a television show
- FIG. 9 is a schematic representation of an exemplary broadcast of one of two episodes of a television show.
- FIG. 10 is a schematic representation of an exemplary broadcast of one of two episodes of a television show.
- FIG. 11 is a schematic representation of an exemplary broadcast of an episode of a television show.
- embodiments of the present invention provide methods and systems for controlling the distribution of supplementary content by receiving a content comprising at least one of an audio content and a video content and receiving supplementary content associated with the media content; monitoring a broadcast stream; detecting the at least one of the audio content and the video content of the media content in the broadcast stream; upon initially detecting the media content, selecting supplementary content based on the detected media content, generating a first control signal, and using the first control signal to control the distribution of the selected supplementary content; and after generating a first control signal and upon failing to detect the media content in the broadcast stream, generating a second control signal and using the second control signal to control the distribution of the selected supplementary content.
- a further embodiment of the present invention provides systems and methods for receiving media content comprising at least one of an audio content and a video content, receiving supplementary content associated with the media content, and assigning a unique identifier to the enhanced media content.
- Yet a further embodiment of the present invention provides methods and systems for detecting content by creating a first database and storing in the first database a plurality of reference fingerprints generated from at least one of audio content and video content of received media content, unique identifiers for the media content, and associations between the unique identifiers and the generated plurality of reference fingerprints; and when monitoring a broadcast stream, generating fingerprints from at least one of the audio content and video content in the broadcast stream, comparing the generated fingerprints with the plurality of reference fingerprints in the first database, and determining whether, or not, a match between a generated fingerprint and a reference fingerprint exists.
- Yet a further embodiment of the present invention provides methods and systems for detecting content that also includes the step of finding a matching reference fingerprint in the first database and extracting the unique identifier associated with the matching reference fingerprint from the first database.
- Yet a further embodiment of the present invention provides methods and systems for detecting content that also includes the step of creating a second database and storing supplementary content, unique identifiers, and associations between the unique identifiers and the supplementary content in the second database; and upon detecting media content, determining the unique identifier of the detected media content, and using the unique identifier to extract supplementary content from the second database.
- Yet a further embodiment of the present invention provides methods and systems for controlling the distribution of supplementary content that also includes the step of using the first control signal to control the distribution of the selected supplementary content by, upon generating the first control signal, inserting the supplementary content into the broadcast stream.
- Yet a further embodiment of the present invention provides methods and systems for controlling the distribution of supplementary content that also includes the step of using the second control signal to control the distribution of the selected supplementary content by, upon generating the second control signal, ceasing to insert the supplementary content from the broadcast stream.
- program refers to a body of audio content and/or video content intended to be consumed by a viewer as a unified entity for entertainment, diversion, information, education or other viewer-related purposes.
- Program content may be produced by a “programmer,” for example, an individual, a group, a commercial company, a non-profit organization, or other program-content-production entity.
- a “series” is a set of programs that share common thematic, stylistic, and/or structure elements, and are intended to be consumed as an artistic whole. Each of the set of programs in a series is an “episode” of the series.
- secondary content refers to non-program audio and/or video content, for example, advertisements, news items, public service announcements, station identification spots and other non-program content.
- program content may be presented in a discontinuous fashion with various elements of secondary content interleaved within the program content.
- supplementary content refers to at least one of audio, video, still images, text, executable code, and other data intended for distribution and consumption with primary content, for example, program content or secondary content. Supplementary content may be associated with program content or with secondary content.
- media content refers to program content or secondary content.
- program stream refers to a sequence of analog or digital data comprising program and secondary content, and possibly including supplementary content.
- broadcast stream refers to an aggregation of one or more program streams.
- broadcast and “broadcasting” refer to the process of aggregating program content, secondary content, and possibly supplementary content into at least one program stream, aggregating one or more program streams into a broadcast stream, and delivering the broadcast stream to one or more entities. Elements of program, secondary, and supplementary content may be inserted, removed, modified, or replaced during the generation and manipulation of a program stream.
- a “broadcaster” is an entity that operates a broadcast system.
- distributed refers to the process of delivering a broadcast stream to viewers through a physical delivery network.
- the physical delivery network may utilize wired, wireless, or a combination of wired and wireless means.
- a “distributor” is an entity that operates a distribution system.
- a broadcast stream may be modified during distribution by inserting, removing, modifying or replacing elements of one or more program stream within the broadcast stream.
- the terms “interactive” and “interactivity” refer to the capability in a viewing environment for a viewer to control the presentation of program, secondary, and/or supplementary content through direct or indirect manipulation of an interface through a remote control, mouse, keyboard, touch panel, movement recognition camera, microphone and other interface mechanisms.
- fingerprint refers to a value or set of values computed as a condensed mathematical representation of the signal content for some subset of the video and/or audio content of a program.
- the disclosed subject matter may be implemented as a system, method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer or processor based device to implement aspects detailed herein.
- article of manufacture as used herein is intended to encompass a computer application accessible from any computer-readable device, carrier, or media.
- a carrier wave can be employed to carry computer-readable electronic data such as those used in transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network.
- computer is used herein to refer to any device with processing capability such that it can execute instructions. Those skilled in the art will realize that such processing capabilities are incorporated into many different devices and therefore the term “computer” includes PCs, servers, mobile telephone, tablet computers, personal digital assistants and many other devices.
- the methods described herein may be performed by software in machine readable form on a storage medium.
- the software can be suitable for execution on a parallel processor or a serial processor such that the method steps may be carried out in any suitable order, or simultaneously.
- the description acknowledges that software can be a valuable, separately tradable commodity.
- the description is intended to encompass software, which runs on or controls ‘dumb’ or standard hardware, to carry out the desired functions. It is also intended to encompass software which ‘describes’ or defines the configuration of hardware, such as HDL (hardware description language) software, as is used for designing silicon chips, or for configuring universal programmable chips, to carry out desired functions.
- HDL hardware description language
- Elements of embodiments of the present invention may be embodied in hardware, firmware and/or a non-transitory computer program product comprising a computer-readable storage medium having instructions stored thereon/in which may be used to program a computing system. While exemplary embodiments revealed herein may only describe one of these forms, it is to be understood that one skilled in the art would be able to effectuate these elements in any of these forms while resting within the scope of the present invention.
- Exemplary computer-readable storage media may include, but are not limited to, flash memory devices, disk storage media, for example, floppy disks, optical disks, magneto-optical disks, Digital Versatile Discs (DVDs), Compact Discs (CDs), micro-drives and other disk storage media, Read-Only Memory (ROMs), Programmable Read-Only Memory (PROMs), Erasable Programmable Read-Only Memory (EPROMS), Electrically Erasable Programmable Read-Only Memory (EEPROMs), Random-Access Memory (RAMS), Video Random-Access Memory (VRAMs), Dynamic Random-Access Memory (DRAMs), and any type of media or device suitable for storing instructions and/or data.
- ROMs Read-Only Memory
- PROMs Programmable Read-Only Memory
- EPROMS Erasable Programmable Read-Only Memory
- EEPROMs Electrically Erasable Programmable Read-Only Memory
- RAMS Random-Access Memory
- VRAMs Video Random-Access Memory
- FIG. 1 depicts an exemplary view of the prior art for distributing program content.
- Program content 100 may be created or acquired by one or more programmers (three shown) 110 a , 110 b , 110 c .
- Supplementary content 102 may also be created or acquired by one or more programmers 110 a , 110 b , 110 c .
- Programmers 110 a , 110 b , 110 c may provide content 100 to one or more broadcasters (one shown) 120 .
- a programmer 110 a , 110 b , 110 c may provide program content to one or to more than one broadcaster (one shown) 120 .
- a broadcaster 120 may aggregate program content 100 .
- a broadcaster 120 may also acquire or create supplementary content 102 for association with program content 100 .
- a broadcaster 120 may also acquire or create secondary content 104 for broadcast with program content 100 and supplementary content 102 .
- a broadcaster 120 may create one or more program streams by aggregating and interleaving program content 100 , supplementary content 102 , and secondary content 104 .
- a broadcaster 120 may deliver program streams to one or more distributors (four shown) 130 , 132 , 134 , 136 .
- a broadcaster 120 may delivery any given program stream to one or to more than one distributor (four shown) 130 , 132 , 134 , 136 .
- a distributor 130 , 132 , 134 , 136 may receive program streams from one or from more than one broadcaster (one shown) 120 .
- a distributor 130 , 132 , 134 , 136 may aggregate multiple program streams for broadcast distribution to viewers.
- a distributor 130 may also receive supplementary content 102 and secondary content 104 from one or more sources, and may insert, replace, modify, or remove supplementary content 102 and secondary content 104 in a program stream prior to broadcast distribution.
- a distributor 130 , 132 , 134 , 136 may utilize one or more physical distribution methods and systems.
- distributor 130 utilizes satellite system 140 to distribute broadcast content to a viewer household 180 a .
- Distributor 132 utilizes cable system 150 to distribute broadcast content to a viewer household 180 b .
- Distributor 134 uses terrestrial broadcast antenna 160 to distribute broadcast content to a viewer household 180 c .
- Distributor 136 uses wireless telephone system 170 to distribute broadcast content to a viewer household 180 d .
- the illustrated distribution methods are exemplary, and are not intended to limit the variety or range of broadcast content-distribution methods. Any one household 180 a , 180 b , 180 c , 180 d may receive broadcast content through one or through more than one distribution systems.
- Distributors 130 , 132 , 134 , 136 may also provide return path communication capabilities to households 180 a , 180 b , 180 c , 180 d that may utilize the same or different communication path as does the broadcast content-distribution system.
- a satellite distributor 130 may utilize a wired or wireless telephony system to provide return path communication to a household 180 a.
- FIG. 2 demonstrates an example of an issue that embodiments of the current invention address.
- the original content 200 of a program episode may consist of a series of scenes, here represented by content segments labeled S 1 to S 9 .
- the scenes may be of varying length, and the total duration of the program content is less than the broadcast interval within which the program content is conveyed. For example, if an episode is intended to be shown within a 30 minute time slot, the program content of the episode may be 22 minutes in length. The remaining eight minutes of the broadcast time slot is occupied by secondary content, for example, advertisements, promotions, station identification, previews and other secondary content.
- the secondary content may be interleaved with segments of the program content.
- the first broadcast 202 of the program content consists of the first two scenes S 1 , S 2 of the program content, followed by an interstitial pod C 1 a that may comprise advertisements, promotions, public service announcements, news bulletins, station identification, and the like.
- the content of interstitial pods may be the same for every distributor that distributes the program content, or may be different for each distributor.
- scenes S 3 and S 4 of the program content are broadcast, followed by a second interstitial pod C 2 a .
- scenes S 5 and S 6 are broadcast, following by a third interstitial pod C 3 a .
- scenes S 7 and S 8 are broadcast, following by a fourth interstitial pod C 4 a .
- scene S 9 is broadcast, completing the broadcast interval.
- the timing of the interstitials reflects the program scene boundaries. The duration of the interstitials varies among the interstitials over the course of the broadcast interval.
- the second broadcast 204 of the program content consists of the first scene S 1 , followed by an interstitial pod C 1 b , followed by scenes S 2 , S 3 , and S 4 , followed by a second interstitial pod C 2 b , and so forth, as illustrated, to the end of the broadcast interval. While the timing of the interstitials in the second broadcast 204 reflects the program scene boundaries, the locations and durations of the interstitials differ between the first broadcast and the second broadcast.
- the third broadcast 206 of the program content consists of the first scene S 1 , followed by scene S 2 , followed by a portion of scene S 3 , denoted S 3 a , followed by a first interstitial pod C 1 c .
- the first interstitial pod C 1 c occurs during a scene, and thus is not synchronized with the specific content structure of the program.
- interstitial pod C 1 c Following interstitial pod C 1 c , the remainder of scene S 3 , denoted S 3 b , is broadcast, followed by scene S 4 , followed by a portion of scene S 5 , denoted S 5 a , followed by a second interstitial C 2 c and the remainder of scene S 5 , denoted S 5 b .
- This pattern is repeated, as illustrated, until the end of the broadcast interval.
- the first four interstitials C 1 c , C 2 c , C 3 c , and C 4 c occur at regular intervals, irrespective of the scene structure of the original content, and a fifth interstitial C 5 c occurs at the end of the broadcast interval to fill the duration of the broadcast interval.
- the patterning depicted in the various interstitials, dot-fill for the first broadcast 202 , back cross-hatch for the second broadcast 204 , forward cross-hatch for the third broadcast 206 is intended to emphasize the fact that the contents of a given interstitial, for example C 1 a , C 1 b , C 1 c , need not be the same from one broadcast interval to another.
- the particulars of the first interstitial C 1 a in the first broadcast 202 of the program content may bear no relationship to the particulars of the first interstitial C 1 b in the second broadcast 204 or the first interstitial C 1 c in the third broadcast 206 of the program content, whether in offset, duration, or content.
- the placement of interstitials may but need not respect the scene boundaries in the program content.
- Enhanced broadcast content comprises original program content, plus supplementary content related to the program content, but distinct from it.
- Enhanced broadcast content may include interactive content intended to be displayed to and manipulated by the viewer.
- supplementary content related to the program content should not be visible or interactive to the viewer during interstitials in broadcast content. For example, consider an interactive program that displays trivia facts about the program content as the content is broadcast. When an interstitial occurs, the trivia facts should not be visible to the viewer, because the display of the trivia facts may obscure advertising content.
- a system that can broadcast supplementary content during the presentation of program content and interrupt the broadcast of supplementary content during breaks or gaps in the broadcasting of the program content.
- the three broadcast scenarios depicted in schematic form in FIG. 2 demonstrate some of the problems that such a system must overcome.
- the location, duration, and content of gaps in program content may vary from one broadcast of a program to another. The location of the gaps may not be known at the time the program content is created.
- broadcast content may be transiently stored and manipulated, for example by removing or modifying portions of the broadcast content to allow the insertion of new interstitial materials subsequent to the creation of a broadcast stream; this manipulation may have the side effect of modifying the duration and relative offsets of scenes within program content.
- the precise content of a broadcast stream containing a particular episode of a series may not be known or predictable in advance.
- a system that, during a broadcast, can dynamically determine the beginning and end of program content, and the presence and duration of interstitial content, within a broadcast interval, may be desirable. The system may then use these determinations to control the distribution of supplementary content.
- FIG. 3 depicts elements of an exemplary system 300 for practicing an aspect of the current invention.
- a content source 305 may provide program and/or secondary content to a principal-content receiver 310 .
- the principal content is received at the principal-content receiver 310
- either or both of the audio and the video content may be passed to a fingerprint generator 320 , whereat one or more reference fingerprints associated with the principal content may be generated according to a fingerprint-generation method known in the art.
- a content source 305 may provide the one or more reference fingerprints directly to a principal-content receiver 310 .
- the resulting one or more reference fingerprints may be stored in a fingerprint database 330 .
- a unique identifier may associate the one or more reference fingerprints with the principal content from which they were generated.
- Content source 305 also may provide supplementary content to a supplementary-content receiver 340 .
- the supplementary content may be stored in a supplementary-content database 350 , along with a unique identifier that may associate the supplementary content with the principal content.
- the unique identifier used within the fingerprint database 330 to associate the one or more reference fingerprints with the principal content from which they were generated may be the same as the unique identifier used within the supplementary-content database 350 to associate the supplementary content with the principal content.
- the identifiers may be distinct but associated with each other.
- a program-stream source 360 may create a broadcast stream 365 comprising audio content and video content of one or more program content and secondary content.
- a portion of broadcast stream 365 may be monitored by a detector 370 .
- the detector 370 may pass either or both of audio content and video content from the broadcast stream to the fingerprint generator 320 .
- the resulting fingerprints generated from the broadcast stream may be compared with the one or more reference fingerprints from the fingerprint database 330 . When a match is found, the detector 370 may produce a first control signal that may be passed to a controller 380 , along with the unique identifier associated with the matched reference fingerprint.
- the controller 380 may use the unique identifier to extract supplementary content associated with the principal content from supplementary-content database 350 , and the controller 380 may activate a multiplexer 390 to insert the extracted supplementary content into the broadcast stream 365 , thereby producing an enhanced broadcast stream 395 .
- the detector 370 continues to monitor the broadcast stream 365 , generating fingerprints and comparing the generated fingerprints with the one or more reference fingerprints from the fingerprint database 330 .
- the detector 370 may generate a second control signal that may be passed to the controller 380 .
- the controller 380 may deactivate the multiplexer 390 to no longer insert the extracted supplementary content into the enhanced broadcast stream 395 .
- principal content and supplementary content may come from the same source 305 .
- principal content and supplementary content may come from different sources (not shown).
- principal content and/or supplementary content may be received in tangible form.
- principal and/or supplementary content may be received in intangible and evanescent form.
- content may be transported via physical media, for example, tape, disk, memory card, and other physical transportation means.
- content may be provided as evanescent digital or analog signals transmitted via wired or wireless communication means.
- the fingerprint generator 320 may be realized as a single system accessible to both the principal-content receiver 310 and the detector 370 . In alternative embodiments of the present invention (not shown), the fingerprint generator 320 may be realized as two separate implementations of fingerprint generator instances operating at different locations. In some embodiments of the present invention, the process of generating and storing reference fingerprints may occur at a time and/or place distinct from the time and/or place of the operation of the detector 370 .
- the reference fingerprint database 330 for storing reference fingerprints may be implemented as a flat file stored on a physical medium, as a relational database implemented on a central server computer, as a virtual database implemented using cloud storage techniques, or by other equivalent methods well known in the art.
- the supplementary-content database 350 may be implemented as a flat file, as a relational database, as a virtual database, or by other data storage and retrieval means well known in the art.
- the principal-content receiver 310 and supplementary-content receiver 340 may be realized as a single module.
- the principal-content receiver 310 and the supplementary-content receiver 340 may be realized as separate modules.
- the fingerprint database 330 and the supplementary-content database 350 may be realized as separate databases.
- the fingerprint database 330 and the supplementary-content database 350 may be realized as a single database.
- the unique identifier associated with principal content and supplementary content may be provided by content source 305 , or may be generated by principal content receiver 310 , by supplementary content receiver 340 , or by a separate unique identifier generator (not shown).
- the program-stream source 360 may be a singular entity. In alternative embodiments, the program-stream source 360 may be multiple entities, each providing one or more content streams.
- the program stream 365 may be communicated via a wired or wireless network, and the program stream 365 may be communicated in digital or analog representation.
- the detector 370 and the controller 380 may be located in proximity to, or distant from, the program stream source 360 , and/or the multiplexer 390 , and/or each other.
- Monitoring of the program stream 365 may be performed by any of the well-known monitoring means known in the art, for example, electronic sampling; reception of unicast, multicast, or broadcast internet protocol traffic on a wired or wireless digital network; antenna reception of wireless electromagnetic signals; and other means known in the art.
- Communication between the detector 370 and the controller 380 , and between the controller 380 and the multiplexer 390 may be by any conventional wired or wireless means known in the art.
- FIG. 3 depicts only a single instance of each element of system 300 , this is not a limitation of the current invention. In alternative embodiments, other system topographies may be utilized that fall within the spirit and scope of the current invention.
- a principal-content receiver 310 may communicate with multiple fingerprint generators (one shown) 320 ; likewise, multiple principal-content receivers (one shown) 310 may communicate with a single fingerprint generator 320 .
- a principal-content receiver 310 may store fingerprints in multiple fingerprint databases (one shown) 330 ; likewise, multiple principal-content receivers (one shown) 310 may store fingerprints in a single fingerprint database 330 .
- a supplementary-content receiver 340 may store supplementary content in multiple supplementary-content databases (one shown) 350 ; likewise, multiple supplementary-content receivers (one shown) 340 may store supplementary content in a single supplementary-content database 350 .
- a detector 370 may communicate with a multiple fingerprint generators (one shown) 320 ; likewise multiple detectors (one shown) 370 may communicate with a single fingerprint generator 320 .
- a detector 370 may communicate with multiple fingerprint databases (one shown) 330 ; likewise, multiple detectors (one shown) 370 may communicate with a single fingerprint database 330 .
- a controller 380 may communicate with multiple supplementary-content databases (one shown) 350 ; likewise, multiple controllers (one shown) 380 may communicate with a single supplementary-content database 350 .
- a detector 370 may monitor multiple program streams (one shown) 365 ; likewise, multiple detectors (one shown) 370 may monitor a single program stream 365 .
- a detector 370 may communicate with a multiple controllers (one shown) 380 ; likewise, multiple detectors (one shown) 370 may communicate with a single controller 380 .
- a controller 380 may communicate with multiple multiplexers (one shown) 390 ; likewise multiple controllers (one shown) 380 may communicate with a single multiplexer 390 .
- the insertion of supplementary content may be performed multiple times on a single program stream, in parallel, in series, or as a combination of series and parallel operations.
- the foregoing list is not intended to be exhaustive of the possible alternative embodiments of system 300 , but is exemplary of a range of implementations that fall within the spirit and scope of the current invention.
- FIG. 3 illustrates the distribution of supplementary content, according to embodiments of the present invention, by incorporating the supplementary content into an enhanced broadcast stream.
- FIG. 4 depicts exemplary alternative embodiments 400 of the current invention in which supplementary-content broadcast stream 495 may be distributed through a communication channel that is distinct from the communication channel through which the broadcast stream 365 may be distributed.
- a content source 305 may provide principal content to a principal-content receiver 310 for processing and storage as described above, and the content source 305 may provide supplementary content to a supplementary-content receiver 340 for storage as described above.
- a detector 370 may monitor a broadcast stream 365 produced from program streams provided by program stream source 360 as described above.
- the detector 370 may pass control signals and unique identifiers to a controller 380 as described above.
- the controller 380 may receive supplementary content from a supplementary-content database 350 as described above.
- the controller 380 may provide supplementary content 495 retrieved from the supplementary-content database 350 through a wired or wireless communication path independent of the communication path used by broadcast stream 365 .
- a broadcast stream 365 may be communicated through a terrestrial broadcast system, while supplementary content 495 may be communicated through a wired Internet Protocol (IP) communication system.
- IP Internet Protocol
- supplementary content 495 may be distributed by a web server that receives supplementary content 495 and first and second control signals from controller 380 through any suitable communication means, for example, a wired IP communication system.
- the web server may manage the distribution of supplementary content 495 such that supplementary content 495 may be supplied in response to a query from a client device after the first control signal is generated and received by the web server, but supplementary content 495 may no longer be supplied in response to a query from a client device after the second control signal is generated and received by the web server.
- FIG. 5 depicts a flowchart 500 of an exemplary process, according to embodiments of the present invention, to be executed in a detector 370 of exemplary systems 300 and 400 .
- the detection module may be initialized.
- samples may be extracted from a broadcast stream 365 , and a fingerprint may be generated from the samples, for example, by means of a fingerprint generator 320 .
- the samples may be taken, for example, from a video stream, from an audio stream, or from both video and audio streams.
- the fingerprints for example, may be computed from and may represent a single field of video, a single frame of video, a series of sequential audio samples, or other data taken from the broadcast stream.
- the generated fingerprint may be compared with a plurality of reference fingerprints, for example, those extracted from a fingerprint database 330 .
- a determination may be made whether the generated fingerprint matches a reference fingerprint. If no match is found 542 , execution may return to a step 520 . If a match is found 544 , at a further step 550 , a unique identifier associated with the matched reference fingerprint may be stored, and a first control signal may be generated. The control signal may include the unique identifier.
- samples may be extracted from a broadcast stream 365 , and a fingerprint may be generated from the samples.
- the generated fingerprint may be compared with reference fingerprints.
- a determination may be made whether the generated fingerprint matches a reference fingerprint. If a match is found 582 , execution may return to step 560 . If no match is found 584 , at a further step 590 a second control signal may be generated, and execution may return to a step 510 .
- FIG. 6 demonstrates a situation in which a more complex detection process may be required.
- every episode of the series, or all episodes in the current season of the series may have the same introductory scene content.
- FIG. 6 illustrates, in schematic form, the content of three episodes 602 , 604 , 606 of a television series that share common content.
- Episode A 602 comprises introductory scene Intro, followed by scenes S 2 a , S 3 a , S 4 a , S 5 a , S 6 a , S 7 a , S 8 a , and S 9 a .
- Episode B 604 comprises introductory scene Intro, followed by scenes S 2 b , S 3 b , S 4 b , S 5 b , S 6 b , S 7 b , and S 8 b .
- Episode C 606 comprises introductory scene Intro, followed by scenes S 2 c , S 3 c , S 4 c , S 5 c , S 6 c , S 7 c , S 8 c , S 9 c , and S 10 c .
- a fingerprint database contains the reference fingerprints of Episode A 602 , Episode B 604 , and Episode C 606 , fingerprints generated during the monitoring of any of the three episodes will match the reference fingerprints of all of the three episodes for the duration of the introductory scene, Intro, which would prevent an unambiguous identification of the actual episode being played.
- a more complex process may be required to handle this situation and other similar situations in which multiple episodes comprise common content.
- a further deficiency of the exemplary process depicted in FIG. 5 may be that the process does not take account of the relative offsets of reference fingerprints that match with fingerprints generated from samples taken from the broadcast stream.
- Fingerprint matching algorithms known in the art are typically designed to process content that may have been degraded or distorted from the original, for example, audio content captured in an ambient environment that introduces noise, or audio content that has been temporally compressed or expanded. This robustness in matching may result in spurious matches between sampled content and reference content that is similar, but not identical.
- the finite duration of fingerprint sampling windows also allows for spurious matches in circumstances where fragments of the content are repeated, such as a short musical theme that repeats multiple times during a program. Robust identification of a program would preferentially utilize offset data from matched reference fingerprints to improve the rate of true positive matches and reduce the rate of false positive matches.
- FIGS. 7 a , 7 b , and 7 c depict a flowchart 700 of a preferred exemplary fingerprint matching process, according to embodiments of the present invention, to be executed in a detector 370 of exemplary systems 300 and 400 .
- an exemplary process 700 may commence at a step 702 at which a detection module may be initialized, erasing all memory of previous activity.
- match identifier, offset, and counter storage locations may be cleared of their contents.
- a selected broadcast stream may be sampled and a fingerprint may be generated, for example, by means of a fingerprint generator 320 .
- the samples may be taken, for example, from a video stream, from an audio stream, or from both a video and an audio stream.
- the fingerprint for example, may be computed from and may represent a single field of video, a single frame of video, a series of sequential audio samples, or other data taken from the broadcast stream.
- the generated fingerprint may be compared with a plurality of reference fingerprints, for example, those extracted from a fingerprint database 330 .
- a determination may be made whether the generated fingerprint unambiguously matches a single reference fingerprint. If not 712 , control returns to a step 704 .
- a valid offset may be an offset within the initial portion of the program content, whereas an invalid offset may be an offset late in the program content. The test of step 720 allows the system to avoid a spurious match to content contained within later portions of the program content.
- step 720 If at step 720 a determination is made that the offset is not valid 722 , control returns to step 706 . If at step 720 a determination is made that the offset is valid 724 , at a further step 726 , the identifier of the matching fingerprint may be remembered by storing the identifier in the match-identifier storage location. At a further step 728 , the match offset storage location may be set with the offset of the matching reference fingerprint, and the match counter storage location may be incremented.
- the offset of the new match will be valid with respect to the previous match offset, for example, if the new offset is greater than the previous match, but the time difference between the new offset and the previous offset does not exceed a maximum value.
- the allowable difference between offsets may be determined by the type and nature of the fingerprints. For example, if fingerprints are generated from video content and each fingerprint represents a single frame of video, then, in some embodiments of the present invention, the allowable difference between two successive fingerprints should be no more than one frame of video.
- the allowable difference between two matches should be no more than five times the step between two successive reference fingerprint windows. Defining a maximum allowable difference may compensate for the imprecise nature of fingerprint matches, particularly for audio samples, and may help make the process robust against sampling differences between reference and live samples.
- step 732 determines whether the offset of the newly matched reference fingerprint is not valid 734 with respect to the previous match. If at step 732 a determination is made that the offset of the newly matched reference fingerprint is valid 736 with respect to the previous match, control passes to step 728 . Following step 728 , at a further step 738 , a determination may be made whether the contents of the match counter storage location are equal to a predefined limit. A preferred value, in some embodiments of the present invention, for the predefined limit for accepting a program match is three consecutive matches. If at step 738 a determination is made that the match count is less than the limit 740 , control may pass to step 706 . If at step 738 a determination is made that the match count is equal to the limit 742 , then control passes to a step 744 depicted in FIG. 7 b.
- a first control signal may be generated.
- an error-counter storage location may be cleared.
- the selected stream may be sampled and a fingerprint may be generated.
- the generated fingerprint may be compared with a plurality of reference fingerprints.
- a determination may be made if a match is found with a reference fingerprint whose identifier matches the identifier stored in the match identifier storage location. If a match is found 754 , at a further step 756 , a determination may be made whether the offset of the matching reference fingerprint is valid relative to the previous offset stored in the match offset storage location.
- the offset of the new match will be valid with respect to the previous match offset, for example, in some embodiments of the present invention, if the new offset is greater than the previous match but the time difference between the new offset and the previous offset does not exceed a maximum value.
- the allowable difference between offsets may be determined by the type and nature of the fingerprints. Prior to step 756 the match with a given reference program has been made with high confidence, so the allowable difference at step 756 is greater than the allowable difference at step 732 .
- Defining a maximum allowable difference at step 756 that is greater than the maximum allowable difference at step 732 may compensate for the imprecise nature of fingerprint matches, particularly for audio samples, and avoid situations where matches may not be found, for example in dark transitions in video or in low volume or silent intervals in the audio content.
- the allowable difference between two successive fingerprints may be as great as three frames of video.
- the allowable difference between two matches may be as long as the duration of the audio sampling window.
- step 752 If at step 752 a determination is made that no match 758 is found with a reference fingerprint whose identifier matches the identifier stored in the match identifier storage location, control passes to a further step 760 depicted in FIG. 7 c . If at step 756 a determination is made that the offset of the new match is valid 762 with respect to the previous match offset, at a further step 764 , the offset of the new match is stored, and control passes to step 748 . If at step 756 a determination is made that the offset of the new match is not valid 766 with respect to the previous match offset, control passes to a further step 768 depicted in FIG. 7 c.
- a determination may be made if a match is found between the newly-generated fingerprint and a reference fingerprint from any other program content. If no match is found 770 , at a further step 772 a determination may be made if the match has been lost. In some embodiments of the present invention, a match may be lost if a sufficient period of sampling passes with no match being made to any generated fingerprint. For example, in some embodiments, if fingerprints are generated from video content and each fingerprint represents a single frame of video, then if four frames of video are fingerprinted without finding a matching reference fingerprint, then a determination may be made that a match is lost.
- an error counter storage location may be incremented.
- a determination may be made whether the error count exceeds a predefined limit. In some embodiments of the present invention, a preferred value for the predefined limit for the error count may be three consecutive errors without a valid match. If the error count is less than the predefined limit 784 , control passes to step 748 . If the error count exceeds the predefined limit 786 , at a further step 778 a second control signal may be generated, and control passes to step 702 where the process may restart.
- step 708 and 710 generated fingerprints will begin to match the reference fingerprints stored in fingerprint database 330 .
- step 744 a first control signal will be generated.
- broadcast content will be sampled and reference fingerprints will be generated at step 748 , and at step 750 , 752 , and 756 , the generated fingerprints will continue to match reference fingerprints with valid offsets throughout the broadcast of scenes S 1 and S 2 .
- step 752 generated fingerprints will not match reference fingerprints, since the content of C 1 a does not appear in the original program content and fingerprint database 330 will not contain fingerprints that match those generated during C 1 a .
- step 772 a loss of match will be determined and at step 778 a second control signal will be generated.
- steps 708 and 710 generated fingerprints from scene S 3 will again begin to match the reference fingerprints stored in fingerprint database 330 .
- step 744 a first control signal will again be generated. Matching will continue at steps 752 and 756 until interstitial pod C 2 a , at which point the match will be lost at step 772 and a second control signal will be generated at step 778 . This pattern will continue throughout the illustrated period of the first broadcast 202 .
- first and second control signals will be generated, although the precise timing of the signals will vary according to the placement and duration of the interstitial pods.
- the broadcast content contains the third broadcast 206 content depicted in FIG. 2
- a similar pattern of first and second control signals will be generated, although in this case the first occurrence of the second control signal will occur during the middle of scene S 3 , and the second occurrence of the first control signal will occur following the end of interstitial pod C 1 c but during the middle of scene S 3 .
- FIG. 8 depicts an exemplary scenario for the broadcast and recognition of the content depicted in FIG. 6 .
- the original content of Episode A 602 is received by principal content receiver 310 and passed through fingerprint generator 320 .
- the resulting reference fingerprints are stored in fingerprint database 330 .
- Supplementary content is received and stored in supplementary-content database 350 .
- the broadcast content 365 being sampled by detector 370 contains the as-broadcast content 802 depicted in FIG.
- detector 370 will sample the content of scene Intro and generate fingerprints at step 706 that when compared with the reference fingerprints stored in fingerprint database 330 at step 708 will unambiguously match the reference fingerprints for the Intro scene of Episode A at step 710 .
- a first control signal will be generated at step 744 . Fingerprints generated from sampled content at step 748 will continue to match at step 752 until the start of interstitial pod C 1 .
- a second control signal will be generated at step 778 , and the process will restart. Subsequently a first control signal will be generated after the start of scene S 3 a , and a second control signal will be generated after the start of interstitial pod C 2 . Likewise, first control signals will be generated after the starts of scenes S 5 a , S 7 a , and S 8 a , and second control signals will be generated after the ends of scenes S 4 a , S 6 a , S 7 a , and S 9 a.
- FIG. 9 depicts another exemplary scenario for the broadcast and recognition of the content depicted in FIG. 6 .
- the original content of Episodes 1 602 and 2 604 is received by principal-content receiver 310 and passed through fingerprint generator 320 .
- the resulting plurality of reference fingerprints is stored in fingerprint database 330 .
- Supplementary content is received by supplementary-content receiver 340 and stored in supplementary-content database 350 .
- the broadcast content 365 being sampled by detector 370 contains the as-broadcast content 902 depicted in FIG. 9 , where interstitial pods C 1 , C 2 , C 3 , and C 4 are interspersed in the content of Episode A 602 .
- detector 370 will sample the content of scene Intro and generate fingerprints at step 706 that will match the reference fingerprints stored in the reference fingerprint database 330 at step 708 for both scene Intro of Episode A and scene Intro for Episode B 604 .
- detector 370 Only when scene S 2 a begins to play will detector 370 generate fingerprints at step 706 that when compared with the reference fingerprints at step 708 will produce an unambiguous match 714 with the reference fingerprints from the content of Episode A 602 .
- a first control signal After a sufficient number of consecutive matches from the content of scene S 2 a at step 738 , a first control signal will be generated at step 744 . Therefore, in this scenario 902 the first control signal will be delayed relative to the scenario 802 shown in FIG.
- FIG. 10 depicts a broadcast scenario that is problematic for proper detection and identification.
- reference content comprises Episode B 604
- broadcast content comprises Episode A 602 .
- the original content of Episode B 604 is received by principal content receiver 310 and passed through fingerprint generator 320 .
- the resulting plurality of reference fingerprints is stored in fingerprint database 330 .
- Supplementary content is received and stored in supplementary-content database 350 .
- the broadcast content 365 being sampled by detector 370 contains the as-broadcast content 1002 depicted in FIG.
- detector 370 will sample the content of scene Intro and generate fingerprints at step 706 that will match the reference fingerprints stored in the reference fingerprint database 330 at step 708 for scene Intro for Episode B 604 , even though the content of Episode A 602 is being broadcast. Accordingly, at step 710 an erroneous but unambiguous match will be found, and after a sufficient number of sequential matches within scene Intro at step 738 , a first control signal will be generated at step 744 .
- This first control signal will identify the content as being Episode B 604 , based on the matches generated by the common introductory material, but this identification is in error. Subsequently, fingerprints generated at step 748 and compared with reference fingerprints from fingerprint database 330 at step 750 will continue to match at steps 752 and 756 . Only when scene S 2 a is being sampled will fingerprints fail to match at step 772 , and at step 778 a second control signal will be generated. Subsequently fingerprints sampled from the remainder of the as-broadcast content 1002 will fail to match with the reference fingerprints of Episode B 604 , so no further first or second control signals will be generated for the duration of the as-broadcast content 1002 .
- the inventors of the current invention recognized this problem scenario and developed alternative embodiments of the present invention comprising a method to avoid this improper content recognition.
- This method may be useful in any situation where a number of episodes of a program share common introductory material, but not all of the episodes that may be broadcast have been provided as reference content to be stored in the fingerprint database.
- This method is depicted in schematic form in FIG. 11 .
- a new dummy reference episode 1100 may be created comprising the initial common content from any of the episodes of the series.
- the dummy reference episode 1100 which is labeled as Dummy Episode in the exemplary scenario depicted in FIG. 11 , may be supplied to principal content receiver 310 along with the normal episode content.
- the dummy reference content may be passed through the fingerprint generator 320 and the resulting plurality of reference fingerprints may be stored in fingerprint database 330 .
- the presence of the reference fingerprints for the dummy reference in the fingerprint database will cause ambiguous matches to occur during the initial common content. Because in this scenario an unambiguous match will never be made to the dummy reference content, supplementary content associated with the dummy reference content is not required.
- detector 370 will sample the content of scene Intro and generate fingerprints at step 706 that will match the reference fingerprints stored in the reference fingerprint database 330 at step 708 for both scene Intro of Episode B 604 and scene Intro for Dummy Episode 1100 . Accordingly, at step 710 a determination is made that an unambiguous match is not found, so control will pass to step 704 without a match identifier being set. This situation will persist through scene Intro, and no unambiguous match will be found.
- detector 370 will generate fingerprints at step 706 that when compared with the reference fingerprints at step 708 will produce no matches, so during the further playout of the as-broadcast content 1102 depicted in FIG. 11 , no control signals will be generated.
- the presence of the reference fingerprints for Dummy Episode 1100 in the fingerprint database 330 prevents the improper identification of the content of the Intro scene, and the system 300 performs as desired.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
Claims (11)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/874,268 US9161074B2 (en) | 2013-04-30 | 2013-04-30 | Methods and systems for distributing interactive content |
US14/880,124 US9456228B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
US14/880,131 US9451294B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/874,268 US9161074B2 (en) | 2013-04-30 | 2013-04-30 | Methods and systems for distributing interactive content |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/880,124 Continuation US9456228B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
US14/880,131 Continuation US9451294B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140325555A1 US20140325555A1 (en) | 2014-10-30 |
US9161074B2 true US9161074B2 (en) | 2015-10-13 |
Family
ID=51790486
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/874,268 Active 2033-12-26 US9161074B2 (en) | 2013-04-30 | 2013-04-30 | Methods and systems for distributing interactive content |
US14/880,124 Active US9456228B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
US14/880,131 Active US9451294B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/880,124 Active US9456228B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
US14/880,131 Active US9451294B2 (en) | 2013-04-30 | 2015-10-09 | Methods and systems for distributing interactive content |
Country Status (1)
Country | Link |
---|---|
US (3) | US9161074B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130326082A1 (en) * | 2012-06-01 | 2013-12-05 | Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno | Fingerprint-Based Inter-Destination Media Synchronization |
US20160037191A1 (en) * | 2013-04-30 | 2016-02-04 | Ensequence, Inc. | Methods and systems for distributing interactive content |
US10726269B2 (en) * | 2017-07-20 | 2020-07-28 | Verizon Patent And Licensing, Inc. | Aligning advertisements in video streams |
US10754891B2 (en) | 2013-09-06 | 2020-08-25 | Gracenote, Inc. | Inserting information into playing content |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2070231B1 (en) * | 2006-10-03 | 2013-07-03 | Shazam Entertainment, Ltd. | Method for high throughput of identification of distributed broadcast content |
US10210351B2 (en) | 2014-07-21 | 2019-02-19 | Servicenow, Inc. | Fingerprint-based configuration typing and classification |
US9497505B2 (en) * | 2014-09-30 | 2016-11-15 | The Nielsen Company (Us), Llc | Systems and methods to verify and/or correct media lineup information |
US9578394B2 (en) | 2015-03-25 | 2017-02-21 | Cisco Technology, Inc. | Video signature creation and matching |
US10015541B2 (en) | 2015-03-25 | 2018-07-03 | Cisco Technology, Inc. | Storing and retrieval heuristics |
US11336928B1 (en) * | 2015-09-24 | 2022-05-17 | Amazon Technologies, Inc. | Predictive caching of identical starting sequences in content |
US10075751B2 (en) * | 2015-09-30 | 2018-09-11 | Rovi Guides, Inc. | Method and system for verifying scheduled media assets |
US10063918B2 (en) | 2016-02-29 | 2018-08-28 | Gracenote, Inc. | Media channel identification with multi-match detection and disambiguation based on single-match |
US9924222B2 (en) | 2016-02-29 | 2018-03-20 | Gracenote, Inc. | Media channel identification with multi-match detection and disambiguation based on location |
US9930406B2 (en) * | 2016-02-29 | 2018-03-27 | Gracenote, Inc. | Media channel identification with video multi-match detection and disambiguation based on audio fingerprint |
US20170372142A1 (en) * | 2016-06-27 | 2017-12-28 | Facebook, Inc. | Systems and methods for identifying matching content |
US11234060B2 (en) | 2017-09-01 | 2022-01-25 | Roku, Inc. | Weave streaming content into a linear viewing experience |
US11418858B2 (en) | 2017-09-01 | 2022-08-16 | Roku, Inc. | Interactive content when the secondary content is server stitched |
US10911824B2 (en) * | 2018-11-05 | 2021-02-02 | The Nielsen Company (Us), Llc | Methods and apparatus to generate reference signatures |
Citations (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3919479A (en) | 1972-09-21 | 1975-11-11 | First National Bank Of Boston | Broadcast signal identification system |
US4677466A (en) | 1985-07-29 | 1987-06-30 | A. C. Nielsen Company | Broadcast program identification method and apparatus |
US4739398A (en) | 1986-05-02 | 1988-04-19 | Control Data Corporation | Method, apparatus and system for recognizing broadcast segments |
US5581658A (en) | 1993-12-14 | 1996-12-03 | Infobase Systems, Inc. | Adaptive system for broadcast program identification and reporting |
US6006256A (en) | 1996-03-11 | 1999-12-21 | Opentv, Inc. | System and method for inserting interactive program content within a television signal originating at a remote network |
US6771885B1 (en) | 2000-02-07 | 2004-08-03 | Koninklijke Philips Electronics N.V. | Methods and apparatus for recording programs prior to or beyond a preset recording time period |
US6968337B2 (en) | 2001-07-10 | 2005-11-22 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
US20070250716A1 (en) * | 2000-05-02 | 2007-10-25 | Brunk Hugh L | Fingerprinting of Media Signals |
US7333864B1 (en) | 2002-06-01 | 2008-02-19 | Microsoft Corporation | System and method for automatic segmentation and identification of repeating objects from an audio stream |
US7363278B2 (en) | 2001-04-05 | 2008-04-22 | Audible Magic Corporation | Copyright detection and protection system and method |
US7451078B2 (en) | 2004-12-30 | 2008-11-11 | All Media Guide, Llc | Methods and apparatus for identifying media objects |
US7461002B2 (en) | 2001-04-13 | 2008-12-02 | Dolby Laboratories Licensing Corporation | Method for time aligning audio signals using characterizations based on auditory events |
US7500007B2 (en) | 2000-02-17 | 2009-03-03 | Audible Magic Corporation | Method and apparatus for identifying media content presented on a media playing device |
US7509267B1 (en) | 2000-08-29 | 2009-03-24 | Paul M. Yarmolich | Method for combining data signals and video signals for transmission to video display units |
US7529659B2 (en) | 2005-09-28 | 2009-05-05 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
US7562012B1 (en) | 2000-11-03 | 2009-07-14 | Audible Magic Corporation | Method and apparatus for creating a unique audio signature |
US7590259B2 (en) | 1995-07-27 | 2009-09-15 | Digimarc Corporation | Deriving attributes from images, audio or video to obtain metadata |
US7602978B2 (en) | 1995-05-08 | 2009-10-13 | Digimarc Corporation | Deriving multiple identifiers from multimedia content |
US7634787B1 (en) | 1999-06-15 | 2009-12-15 | Wink Communications, Inc. | Automatic control of broadcast and execution of interactive applications to maintain synchronous operation with broadcast programs |
US7694318B2 (en) | 2003-03-07 | 2010-04-06 | Technology, Patents & Licensing, Inc. | Video detection and insertion |
US7738704B2 (en) | 2003-03-07 | 2010-06-15 | Technology, Patents And Licensing, Inc. | Detecting known video entities utilizing fingerprints |
US7739062B2 (en) | 2004-06-24 | 2010-06-15 | Landmark Digital Services Llc | Method of characterizing the overlap of two media segments |
US20100290666A1 (en) | 1995-05-08 | 2010-11-18 | Rhoads Geoffrey B | Controlling Use of Audio or Image Content |
US7870574B2 (en) | 1999-09-21 | 2011-01-11 | Iceberg Industries, Llc | Method and apparatus for automatically recognizing input audio and/or video streams |
US7877438B2 (en) | 2001-07-20 | 2011-01-25 | Audible Magic Corporation | Method and apparatus for identifying new media content |
US20110041154A1 (en) | 2009-08-14 | 2011-02-17 | All Media Guide, Llc | Content Recognition and Synchronization on a Television or Consumer Electronics Device |
US7907211B2 (en) | 2003-07-25 | 2011-03-15 | Gracenote, Inc. | Method and device for generating and detecting fingerprints for synchronizing audio and video |
US8006314B2 (en) | 2007-07-27 | 2011-08-23 | Audible Magic Corporation | System for identifying content of digital data |
US20110247044A1 (en) | 2010-04-02 | 2011-10-06 | Yahoo!, Inc. | Signal-driven interactive television |
US20110247042A1 (en) | 2010-04-01 | 2011-10-06 | Sony Computer Entertainment Inc. | Media fingerprinting for content determination and retrieval |
US20120020647A1 (en) | 2010-07-21 | 2012-01-26 | Rovi Technologies Corporation | Filtering repeated content |
US20120029670A1 (en) | 2010-07-29 | 2012-02-02 | Soundhound, Inc. | System and methods for continuous audio matching |
US20120210339A1 (en) | 2011-02-14 | 2012-08-16 | Disney Enterprises, Inc. | System and method for synchronizing on-air commercial programming with interactive applications |
US20120215329A1 (en) | 2011-02-22 | 2012-08-23 | Dolby Laboratories Licensing Corporation | Alignment and Re-Association of Metadata for Media Streams Within a Computing Device |
US20120240151A1 (en) | 2011-03-16 | 2012-09-20 | Seth Daniel Tapper | Synchronizing Interactive Digital Advertisements displayed on client devices with television commercials |
US20120272263A1 (en) | 2011-04-20 | 2012-10-25 | Verizon Patent And Licensing Inc. | Method and apparatus for providing an interactive application within a media stream |
US8352259B2 (en) | 2004-12-30 | 2013-01-08 | Rovi Technologies Corporation | Methods and apparatus for audio recognition |
US20130014151A1 (en) | 2011-07-08 | 2013-01-10 | Verizon Patent And Licensing, Inc. | Non-Intrusive Advertisement Presentation Methods and Systems |
US20130198768A1 (en) * | 2011-08-05 | 2013-08-01 | Sony Corporation | Receiving device, receiving method, program, and information processing system |
US20130205326A1 (en) * | 2012-02-07 | 2013-08-08 | Nishith Kumar Sinha | Method and system for detection of user-initiated events utilizing automatic content recognition |
US20140115644A1 (en) * | 2012-10-18 | 2014-04-24 | Lg Electronics Inc. | Apparatus and method for processing an interactive service |
US20140250479A1 (en) * | 2011-09-23 | 2014-09-04 | Lg Electronics Inc. | Method for receiving broadcast service and reception device thereof |
US20140250450A1 (en) * | 2011-08-08 | 2014-09-04 | Lei Yu | System and method for auto content recognition |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7222155B1 (en) | 1999-06-15 | 2007-05-22 | Wink Communications, Inc. | Synchronous updating of dynamic interactive applications |
US9113202B1 (en) * | 2011-09-21 | 2015-08-18 | Google Inc. | Inverted client-side fingerprinting and matching |
KR20140125766A (en) * | 2012-02-10 | 2014-10-29 | 엘지전자 주식회사 | Image display apparatus and method for operating same |
US9161074B2 (en) * | 2013-04-30 | 2015-10-13 | Ensequence, Inc. | Methods and systems for distributing interactive content |
-
2013
- 2013-04-30 US US13/874,268 patent/US9161074B2/en active Active
-
2015
- 2015-10-09 US US14/880,124 patent/US9456228B2/en active Active
- 2015-10-09 US US14/880,131 patent/US9451294B2/en active Active
Patent Citations (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3919479A (en) | 1972-09-21 | 1975-11-11 | First National Bank Of Boston | Broadcast signal identification system |
US4677466A (en) | 1985-07-29 | 1987-06-30 | A. C. Nielsen Company | Broadcast program identification method and apparatus |
US4739398A (en) | 1986-05-02 | 1988-04-19 | Control Data Corporation | Method, apparatus and system for recognizing broadcast segments |
US5581658A (en) | 1993-12-14 | 1996-12-03 | Infobase Systems, Inc. | Adaptive system for broadcast program identification and reporting |
US20100290666A1 (en) | 1995-05-08 | 2010-11-18 | Rhoads Geoffrey B | Controlling Use of Audio or Image Content |
US7602978B2 (en) | 1995-05-08 | 2009-10-13 | Digimarc Corporation | Deriving multiple identifiers from multimedia content |
US7970167B2 (en) | 1995-05-08 | 2011-06-28 | Digimarc Corporation | Deriving identifying data from video and audio |
US7590259B2 (en) | 1995-07-27 | 2009-09-15 | Digimarc Corporation | Deriving attributes from images, audio or video to obtain metadata |
US6006256A (en) | 1996-03-11 | 1999-12-21 | Opentv, Inc. | System and method for inserting interactive program content within a television signal originating at a remote network |
US7634787B1 (en) | 1999-06-15 | 2009-12-15 | Wink Communications, Inc. | Automatic control of broadcast and execution of interactive applications to maintain synchronous operation with broadcast programs |
US7870574B2 (en) | 1999-09-21 | 2011-01-11 | Iceberg Industries, Llc | Method and apparatus for automatically recognizing input audio and/or video streams |
US6771885B1 (en) | 2000-02-07 | 2004-08-03 | Koninklijke Philips Electronics N.V. | Methods and apparatus for recording programs prior to or beyond a preset recording time period |
US7500007B2 (en) | 2000-02-17 | 2009-03-03 | Audible Magic Corporation | Method and apparatus for identifying media content presented on a media playing device |
US20070250716A1 (en) * | 2000-05-02 | 2007-10-25 | Brunk Hugh L | Fingerprinting of Media Signals |
US7509267B1 (en) | 2000-08-29 | 2009-03-24 | Paul M. Yarmolich | Method for combining data signals and video signals for transmission to video display units |
US7562012B1 (en) | 2000-11-03 | 2009-07-14 | Audible Magic Corporation | Method and apparatus for creating a unique audio signature |
US8086445B2 (en) | 2000-11-03 | 2011-12-27 | Audible Magic Corporation | Method and apparatus for creating a unique audio signature |
US7565327B2 (en) | 2001-04-05 | 2009-07-21 | Audible Magic Corporation | Copyright detection and protection system and method |
US7363278B2 (en) | 2001-04-05 | 2008-04-22 | Audible Magic Corporation | Copyright detection and protection system and method |
US7707088B2 (en) | 2001-04-05 | 2010-04-27 | Audible Magic Corporation | Copyright detection and protection system and method |
US7461002B2 (en) | 2001-04-13 | 2008-12-02 | Dolby Laboratories Licensing Corporation | Method for time aligning audio signals using characterizations based on auditory events |
US8082150B2 (en) | 2001-07-10 | 2011-12-20 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
US6968337B2 (en) | 2001-07-10 | 2005-11-22 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
US7877438B2 (en) | 2001-07-20 | 2011-01-25 | Audible Magic Corporation | Method and apparatus for identifying new media content |
US7333864B1 (en) | 2002-06-01 | 2008-02-19 | Microsoft Corporation | System and method for automatic segmentation and identification of repeating objects from an audio stream |
US7738704B2 (en) | 2003-03-07 | 2010-06-15 | Technology, Patents And Licensing, Inc. | Detecting known video entities utilizing fingerprints |
US20100153993A1 (en) | 2003-03-07 | 2010-06-17 | Technology, Patents & Licensing, Inc. | Video Detection and Insertion |
US7694318B2 (en) | 2003-03-07 | 2010-04-06 | Technology, Patents & Licensing, Inc. | Video detection and insertion |
US7930714B2 (en) | 2003-03-07 | 2011-04-19 | Technology, Patents & Licensing, Inc. | Video detection and insertion |
US7907211B2 (en) | 2003-07-25 | 2011-03-15 | Gracenote, Inc. | Method and device for generating and detecting fingerprints for synchronizing audio and video |
US7739062B2 (en) | 2004-06-24 | 2010-06-15 | Landmark Digital Services Llc | Method of characterizing the overlap of two media segments |
US8352259B2 (en) | 2004-12-30 | 2013-01-08 | Rovi Technologies Corporation | Methods and apparatus for audio recognition |
US7451078B2 (en) | 2004-12-30 | 2008-11-11 | All Media Guide, Llc | Methods and apparatus for identifying media objects |
US7529659B2 (en) | 2005-09-28 | 2009-05-05 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
US8006314B2 (en) | 2007-07-27 | 2011-08-23 | Audible Magic Corporation | System for identifying content of digital data |
US20110041154A1 (en) | 2009-08-14 | 2011-02-17 | All Media Guide, Llc | Content Recognition and Synchronization on a Television or Consumer Electronics Device |
US20110247042A1 (en) | 2010-04-01 | 2011-10-06 | Sony Computer Entertainment Inc. | Media fingerprinting for content determination and retrieval |
US20110247044A1 (en) | 2010-04-02 | 2011-10-06 | Yahoo!, Inc. | Signal-driven interactive television |
US20120020647A1 (en) | 2010-07-21 | 2012-01-26 | Rovi Technologies Corporation | Filtering repeated content |
US20120029670A1 (en) | 2010-07-29 | 2012-02-02 | Soundhound, Inc. | System and methods for continuous audio matching |
US20120210339A1 (en) | 2011-02-14 | 2012-08-16 | Disney Enterprises, Inc. | System and method for synchronizing on-air commercial programming with interactive applications |
US20120215329A1 (en) | 2011-02-22 | 2012-08-23 | Dolby Laboratories Licensing Corporation | Alignment and Re-Association of Metadata for Media Streams Within a Computing Device |
US20120240151A1 (en) | 2011-03-16 | 2012-09-20 | Seth Daniel Tapper | Synchronizing Interactive Digital Advertisements displayed on client devices with television commercials |
US20120272263A1 (en) | 2011-04-20 | 2012-10-25 | Verizon Patent And Licensing Inc. | Method and apparatus for providing an interactive application within a media stream |
US20130014151A1 (en) | 2011-07-08 | 2013-01-10 | Verizon Patent And Licensing, Inc. | Non-Intrusive Advertisement Presentation Methods and Systems |
US20130198768A1 (en) * | 2011-08-05 | 2013-08-01 | Sony Corporation | Receiving device, receiving method, program, and information processing system |
US20140250450A1 (en) * | 2011-08-08 | 2014-09-04 | Lei Yu | System and method for auto content recognition |
US20140250479A1 (en) * | 2011-09-23 | 2014-09-04 | Lg Electronics Inc. | Method for receiving broadcast service and reception device thereof |
US20130205326A1 (en) * | 2012-02-07 | 2013-08-08 | Nishith Kumar Sinha | Method and system for detection of user-initiated events utilizing automatic content recognition |
US20140115644A1 (en) * | 2012-10-18 | 2014-04-24 | Lg Electronics Inc. | Apparatus and method for processing an interactive service |
Non-Patent Citations (2)
Title |
---|
Chun-Shien Lu, "Audio Fingerprinting based on Analyzing Time-Frequency Localization of Signals", 5th Int. Workshop MMSP, 2002, pp. 174-177, IEEE, US Virgin Islands. |
J. Haitsma and T. Kalker, "A Highly Robust Audio Fingerprinting System,"Proc. Int. Conf. Music Information Retrieval, 2002, pp. 107-115, Paris, France. |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9553756B2 (en) * | 2012-06-01 | 2017-01-24 | Koninklijke Kpn N.V. | Fingerprint-based inter-destination media synchronization |
US10034037B2 (en) * | 2012-06-01 | 2018-07-24 | Koninklijke Kpn N.V. | Fingerprint-based inter-destination media synchronization |
US20170099515A1 (en) * | 2012-06-01 | 2017-04-06 | Koninklijke Kpn N.V. | Fingerprint-Based Inter-Destination Media Synchronization |
US20130326082A1 (en) * | 2012-06-01 | 2013-12-05 | Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno | Fingerprint-Based Inter-Destination Media Synchronization |
US9451294B2 (en) * | 2013-04-30 | 2016-09-20 | Ensequence, Inc. | Methods and systems for distributing interactive content |
US9456228B2 (en) * | 2013-04-30 | 2016-09-27 | Ensequence, Inc. | Methods and systems for distributing interactive content |
US20160037190A1 (en) * | 2013-04-30 | 2016-02-04 | Ensequence, Inc. | Methods and systems for distributing interactive content |
US20160037191A1 (en) * | 2013-04-30 | 2016-02-04 | Ensequence, Inc. | Methods and systems for distributing interactive content |
US10754891B2 (en) | 2013-09-06 | 2020-08-25 | Gracenote, Inc. | Inserting information into playing content |
US11176195B2 (en) | 2013-09-06 | 2021-11-16 | Gracenote, Inc. | Inserting information into playing content |
US11531699B2 (en) | 2013-09-06 | 2022-12-20 | Gracenote, Inc. | Inserting information into playing content |
US11853355B2 (en) | 2013-09-06 | 2023-12-26 | Gracenote, Inc. | Inserting information into playing content |
US10726269B2 (en) * | 2017-07-20 | 2020-07-28 | Verizon Patent And Licensing, Inc. | Aligning advertisements in video streams |
US11042752B2 (en) | 2017-07-20 | 2021-06-22 | Verizon Patent And Licensing Inc. | Aligning advertisements in video streams |
Also Published As
Publication number | Publication date |
---|---|
US9456228B2 (en) | 2016-09-27 |
US9451294B2 (en) | 2016-09-20 |
US20160037190A1 (en) | 2016-02-04 |
US20140325555A1 (en) | 2014-10-30 |
US20160037191A1 (en) | 2016-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9451294B2 (en) | Methods and systems for distributing interactive content | |
US9420349B2 (en) | Methods and systems for monitoring a media stream and selecting an action | |
JP6842482B2 (en) | Media channel identification with multiple match detection and broadcast time-based disambiguation | |
JP6818093B2 (en) | Media channel identification with video multiple match detection and audio fingerprint-based disambiguation | |
US9055309B2 (en) | Systems and methods for identifying video segments for displaying contextually relevant content | |
KR20210021099A (en) | Establishment and use of temporal mapping based on interpolation using low-rate fingerprinting to facilitate frame-accurate content modification | |
CN110232936B (en) | System and method for identifying video segments for displaying contextually relevant content | |
US11336956B2 (en) | Media channel identification with multi-match detection and disambiguation based on single-match | |
WO2014145947A1 (en) | Systems and methods for identifying video segments for displaying contextually relevant content | |
US20220385957A1 (en) | Content-Modification System with Use of Multiple Fingerprint Data Types Feature | |
EP4292292A1 (en) | Content-modification system with feature for controlling viewer exposure to spoilers in advertisements | |
US11722721B2 (en) | Media channel identification and action, with disambiguation through client-side fingerprint matching of channel-specific icon | |
WO2022173957A1 (en) | Content-modification system with feature for exposing multiple devices in a household to the same or similar advertisements | |
CA3200405A1 (en) | Content-modification system with local avail detection and correction features |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ENSEQUENCE, INC., OREGON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KHADER, ASLAM;TAIT, MARK-ANDREW RAY;WESTERMAN, LARRY ALAN;REEL/FRAME:030341/0048 Effective date: 20130502 |
|
AS | Assignment |
Owner name: MYRIAN CAPITAL FUND, LLC, OHIO Free format text: SECURITY INTEREST;ASSIGNOR:ENSEQUENCE, INC.;REEL/FRAME:034207/0746 Effective date: 20141118 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: ESW HOLDINGS, INC., TEXAS Free format text: MERGER;ASSIGNOR:ENSEQUENCE, INC.;REEL/FRAME:046958/0460 Effective date: 20180831 |
|
AS | Assignment |
Owner name: ENSEQUENCE, INC., TEXAS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MYRIAN CAPITAL FUND, LLC (SERIES C);REEL/FRAME:047415/0279 Effective date: 20180628 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |