U.S. patent application number 13/531163 was filed with the patent office on 2013-06-27 for media processing methods and arrangements.
The applicant listed for this patent is Bruce L. Davis, Tony F. Rodriguez. Invention is credited to Bruce L. Davis, Tony F. Rodriguez.
Application Number | 20130167173 13/531163 |
Document ID | / |
Family ID | 42541473 |
Filed Date | 2013-06-27 |
United States Patent
Application |
20130167173 |
Kind Code |
A1 |
Davis; Bruce L. ; et
al. |
June 27, 2013 |
Media Processing Methods and Arrangements
Abstract
A variety of technologies using portable devices in connection
with media content are detailed. Some enable users to participate
interactively in entertainment content, such as by submitting plot
directions, audio input, character names, etc., yielding more
engaging, immersive, user experiences. Other aspects involve a
program directory database, compiled automatically from information
reported by network nodes that watch and identify content traffic.
By identifying content resident at a number of different
repositories (e.g., web sites, TV networks, P2P systems, etc.),
such a directory allows users to identify the diversity of sources
from which desired content can be obtained--some available on a
scheduled basis, others available on demand. A great number of
other features and arrangements are also detailed.
Inventors: |
Davis; Bruce L.; (Lake
Oswego, OR) ; Rodriguez; Tony F.; (Portland,
OR) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Davis; Bruce L.
Rodriguez; Tony F. |
Lake Oswego
Portland |
OR
OR |
US
US |
|
|
Family ID: |
42541473 |
Appl. No.: |
13/531163 |
Filed: |
June 22, 2012 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
12490980 |
Jun 24, 2009 |
|
|
|
13531163 |
|
|
|
|
61167828 |
Apr 8, 2009 |
|
|
|
61160660 |
Mar 16, 2009 |
|
|
|
61152226 |
Feb 12, 2009 |
|
|
|
Current U.S.
Class: |
725/37 |
Current CPC
Class: |
H04N 21/478 20130101;
H04N 21/4788 20130101; G10L 19/167 20130101; H04H 60/58 20130101;
H04N 21/21 20130101; H04N 21/41265 20200801; H04N 21/42204
20130101; H04N 21/4316 20130101; H04N 21/4782 20130101; H04N
21/8126 20130101; H04N 21/4334 20130101; H04N 21/4667 20130101;
H04N 21/23418 20130101; H04N 21/472 20130101; H04M 1/72533
20130101; H04N 21/8358 20130101; H04N 21/47 20130101; H04N 21/4753
20130101; H04N 21/4722 20130101; H04N 21/233 20130101; H04N 21/2665
20130101; H04N 21/4122 20130101; H04N 21/44204 20130101; H04N
21/458 20130101; H04N 21/43637 20130101; H04N 21/47214 20130101;
H04N 21/83 20130101; H04N 21/4622 20130101; H04M 1/7253 20130101;
H04M 2250/64 20130101; H04N 21/25883 20130101; H04N 21/42208
20130101; H04N 21/4532 20130101; H04N 21/42203 20130101; H04N
21/4394 20130101; H04N 21/23 20130101; H04N 21/4126 20130101; H04N
21/482 20130101; H04N 21/41415 20130101; H04N 21/4367 20130101;
H04N 21/84 20130101 |
Class at
Publication: |
725/37 |
International
Class: |
H04N 21/47 20060101
H04N021/47 |
Claims
1. A portable device comprising: a wireless interface for
communication with a remote station; a memory; a processor
responsive to instructions stored in the memory; and a user
interface; the memory containing instructions that configure the
device to: receive first user input, through the user interface,
concerning a name to be used in connection with a character in a
television program; receive second user input, through the user
interface, concerning clothing to be worn by a person appearing in
said television program; and transmit information relating to the
first and second user inputs, from the wireless device, using the
wireless interface; wherein the information transmitted from the
device functions to control, in part, selection of a name for said
character, and also functions to transform, in part, appearance of
the person appearing in the television program, the user inputs
thereby contributing to authoring of the television program.
2. A method comprising: receiving plural data, sent by wireless
phones of plural television program viewers, relating to clothing
to be worn by a person appearing in a television program;
determining clothing to be worn by the person based, at least in
part, on said received plural data; and clothing the person in
accordance with said determining.
3. A method comprising: during presentation of a broadcast
television program to a viewer, sensing a gesture of the viewer,
the gesture including at least motion of the viewer's hand and arm,
the sensing being performed by one or more sensors; sending data
corresponding to the sensed gesture for use in connection with the
broadcast television program; and controlling conduct of a
character in the broadcast television program, in part, based on
said sent data.
4. The method of claim 3 wherein at least one of said sensors is in
a telephone device conveyed by the viewer.
5. The method of claim 3 wherein the character is synthetic,
comprising computer generated imagery.
6. A method comprising: receiving audio information sent from a
dozen or more telephone devices, corresponding to audio captured
from viewers of a broadcast television program by microphones in
said devices; using said received audio information to generate a
composite audio track; and broadcasting said composite audio track
as part of said television program.
Description
RELATED APPLICATION DATA
[0001] This application is a division of application Ser. No.
12/490,980, filed Jun. 24, 2009 (now published as US20100205628),
which claims priority from provisional applications 61/167,828,
filed Apr. 8, 2009; 61/160,660, filed Mar. 16, 2009; and
61/152,226, filed Feb. 12, 2009. These applications are
incorporated herein by reference.
TECHNICAL FIELD
[0002] The present technology concerns cell phones and other
portable devices, and more particularly concerns use of such
devices to enhance viewer engagement with television programs and
the like.
INTRODUCTION
[0003] The present technology builds on, and extends, technology
disclosed in prior patent applications by the present assignee. The
reader is thus directed to the following applications (which are
incorporated herein by reference) that serve to detail arrangements
in which applicants intend the present technology to be applied,
and that technically supplement the present disclosure:
[0004] application Ser. No. 12/271,772, filed Nov. 14, 2008 (now
published as US20100119208), entitled Content Interaction Methods
and Systems Employing Portable Devices;
[0005] Application Ser. No. 61/150,235, filed Feb. 5, 2009,
entitled Second Screens and Widgets;
[0006] Application Ser. No. 61/157,153, filed Mar. 3, 2009,
entitled Narrowcasting from Public Displays, and Related Methods;
and
[0007] application Ser. No. 12/484,115, filed Jun. 12, 2009 (now
published as US20100048242), entitled Methods and Systems for
Content Processing.
[0008] These earlier patent applications detail how a cell phone
can watch or listen to the user's environment, and identify content
(e.g., media objects or physical objects) from that environment.
The cell phone can then be used to help complement the user's
experience.
[0009] The present disclosure details a great variety of further
improvements and new innovations.
[0010] For example, in accordance with one aspect of the
below-detailed technology, it is not necessary for a cell phone to
watch or listen to the user's environment. Guessing is often
sufficient. The cell phone, or other device, may successfully
infer--based on various factors (time of day, user location,
television location, user viewing history, other profile data, EPG
data, etc.)--the content, if any, to which the user is being
exposed. (A die-hard Pittsburgh Steelers fan is probably in front
of a TV screen at game time--whenever the Steelers are
playing.)
[0011] Once an initial inference has been made, additional
information can optionally be sought to confirm or refute the
initial hypothesis. For example, sound or imagery can be
sampled--perhaps not enough to identify video programming in the
absence of other information, but enough to reinforce (or discount)
an initial inference. Alternatively, the cell phone can simply pose
one or more confirmatory questions to the user, e.g., "Are you
watching TV?" and/or "Are you watching the Steelers game on TV?"
and/or "Are you watching program X or program Y (or neither)?"
[0012] In other arrangements, the fact of viewing activity is
inferred first. For example, if the locations of a television
system and a cell phone can both be determined (e.g., by GPS), and
the cell phone is found to be within ten feet of the television,
then user viewing of the television may be inferred from proximity
alone. If an affirmative inference is made by the cell phone, it
can then estimate what programming is being viewed (e.g., by
reference to current EPG data, user history and profile--accessed
from a home network disk drive, or cached previously in the cell
phone memory, etc.). If the television system makes the
determination of proximity, it knows whether it is "on" and what
programming it is rendering. It can transmit such information to
the cell phone, so that either can then fetch auxiliary content for
presentation to the user.
[0013] Based on the thus-approximated circumstances, the cell phone
can again provide a complementary experience to the user.
[0014] One way to list available auxiliary content, without
cluttering the intended video presentation, is to pause the main
video programming. (The pausing may be user-initiated, or triggered
by the system when auxiliary content is identified or becomes
available.) A graphical control can appear--on either the cell
phone or the main screen--from which the user can select desired
auxiliary content. The graphical control can comprise, e.g., icons
representing available auxiliary content--which selection changes
in accordance with the contents of the paused screen. (E.g., if
John Wayne is shown in the paused screen, then biographical
information or other video clips about Wayne may be shown as
available; a moment later, if Ronald Reagan is shown in the paused
screen, then biographical information or other video clips about
Reagan may be shown as available.)
[0015] If desired, the cell phone may be programmed to cause the
main video presentation to pause when a cell phone motion sensor(s)
indicates a certain movement (or any movement). For example, if the
cell phone senses that it is being moved from a rest position to a
use position (e.g., to answer an incoming call), the television
display may be automatically paused. If auxiliary content is being
presented--on the cell phone or elsewhere--it too may be
automatically paused.
[0016] In some arrangements, a user's cell phone is registered as
being associated with the user's television system. For example, in
the user's TiVo digital video recorder, a data structure may store
identifiers--such as phone numbers--of associated cell phones.
Information relating to video programming (text alerts, auxiliary
content, video content itself, etc.) can be sent from the
television system to the associated cell phone(s).
[0017] The registered cell phone may have a mode in which it is
ready to present auxiliary content--call it a WatchingTV mode.
(This status may be indicated by the cell phone to the associated
television system, e.g., by the Apple Bonjour protocol or
otherwise.) If the user's cell phone is in the WatchingTV mode, the
user may be presumed to be viewing programming in accordance with
past viewing history, recording history, preference data, etc.
Auxiliary content can be provided to the cell phone
accordingly.
[0018] In other arrangements, a WatchingTV mode is not required.
Information can be sent to the cell phone based on available
programming and user data, which the user can choose to present on
a screen, or not.
[0019] If the user is determined to be remote from home (e.g., by
reference to location information periodically provided to the home
network from the user's cell phone), the system may determine how
the user can access favorite programming (determined, e.g., by
reference to previous viewing history or recording history) at the
user's current location, and send such information to the user's
cell phone.
[0020] Similarly, reminders can be sent to alert users about
programs of potential interest that are upcoming--localized to the
user's current location.
[0021] Although not presently implemented by TiVo, TiVo's design
can be altered to support two or more users--each having their own
viewing preference data, recording history data, and other profile
data. Each user can have one or more associated cell phones
registered with the TiVo device. When the television system is
operated, but the user is not expressly declared, the system can
infer the user's identity from various factors (e.g., comparing the
content metadata, such as genre, title, synopsis with stored data
for each user; considering time of day; determining the current
locations of associated phones and identifying any that are
proximate to the system; applying facial recognition techniques to
image data captured by a camera to help sense particular users,
etc.). System operations can then be tailored in accordance with
the inferred user identity.
[0022] It will be recognized that the cell phone can serve as a
"second screen." The user can interact with the cell phone while
others in the room watch the television screen--undistracted by
overlays and other interruptions to the full-screen experience.
They, in turn, may interact with their own cell phones--interacting
with auxiliary content of their own choosing (and exchanging text
messages and other content with others in the group). Yet the group
has the shared experience of the common big screen and the common
physical environment.
[0023] (In some embodiments, groups can assemble on a virtual
basis--from two or more locations. Each simultaneously views the
same video content on a primary screen at their location, while
also being able to interact with personal second screens--including
online social interaction with other members of the group. The cell
phones may simultaneously operate in conference call mode--allowing
each person to speak to and hear others in the group.)
[0024] When two or members of a group assemble for a second screen
experience (physically or virtually), information may be shared
between the members' cell phones. Each user may set an option on
their cell phone indicating whether visual content information may
be shared with other cell phones. If this option is set, then other
members of the group can "tune into" the second screen experience
of any other member (or all may share the same second screen
experience).
[0025] In other embodiments the cell phone need not be used to
present content. Instead, it can simply provide information to
other systems, e.g., identifying the user's location; or
specifying--by reference to a calendar application--whether the
user is free or busy; or indicating whether the user is stationary
or in motion; or identifying which user is proximate to a
particular display system, etc. The other systems can then adapt
their operation in accordance with such information.
[0026] Some embodiments allow the user to easily transfer displayed
content from a cell phone screen onto a television screen for
easier viewing. Conversely, the user may transfer displayed content
from a television onto a cell phone for portability. The transfer
can occur during playback of video entertainment or during game
play, allowing play to resume from the point of interruption.
[0027] Other aspects of the present technology enable users to
participate in entertainment content, such as by submitting plot
directions, audio input, character names, etc., yielding a more
engaging, immersive, user experience.
[0028] In accordance with still other aspects of the present
technology, a program-centric content directory is compiled from
information reported by network nodes that watch and identify
content traffic passing into (and/or out of) network databases.
Spanning a variety of content repositories (e.g., web sites, TV
networks, P2P systems, etc.), such a directory allows cell phone
users to identify the diversity of sources from which desired
content can be obtained--some available on a scheduled basis,
others available on demand. Depending on the application, the
directory information may be transparent to the user--serving to
identify sources for desired content, from which application
software can pick for content downloading, based, e.g., on context
and stored profile data.
[0029] The foregoing are just a few of the novel aspects of the
present technology. These and other features and advantages will be
more readily apparent from the remainder of this specification,
which proceeds with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0030] FIG. 1 shows elements of an exemplary implementation
incorporating aspects of the present technology.
[0031] FIG. 2 is a block diagram of a digital video recorder system
that can be used in certain implementations of the present
technology, including certain stored data.
[0032] FIG. 3 is a block diagram of a cell phone that can be used
in certain implementations of the present technology.
[0033] FIG. 4 is a representation of sample records from a database
associating primary content with auxiliary content.
[0034] FIGS. 5-8 detail aspects of an illustrative arrangement by
which a Program Directory Database can be compiled
automatically.
DETAILED DESCRIPTION
[0035] Certain embodiments of the subject technology provide
content on a user's personal screen (e.g., a cell phone) that
complements content available on another screen (typically, a
bigger screen).
[0036] For expository convenience, content available on the bigger
screen is often termed the primary content, and content presented
on the personal screen (the "second screen") is regarded as
auxiliary content. Examples of auxiliary content include audio and
video, web pages and other textual data, application programs and
software widgets. (In some circumstances, users may regard the
auxiliary content as the more relevant and, in some circumstances,
view it without viewing the primary content.)
[0037] Referring to FIG. 1, certain embodiments 10 of the present
technology can include a television system 12 and plural second
screen devices 14, 16, 18.
[0038] The television system 12 may comprise elements such as a set
top box 20, a satellite receiver 22, a digital video recorder (DVR)
24, a television receiver/monitor 26, a Blu-ray device 28, and one
or more other components 30 (e.g., a computer, a Slingbox device,
an Apple TV device, an iPod, Boxee media center software,
etc.).
[0039] Primary content can be delivered to television system 12 by
any communications channel 36. Examples include satellite, cable,
wired- or wireless-internet, over the air broadcast, etc. A content
distributor 32 (e.g., Comcast, DirectTV, a television network or
station, etc.) typically aggregates content from various content
sources 34 (such as film companies, content networks, sports teams,
etc.) for distribution over communications channel 36. Other
entities, such as the Apple iTunes store, Netflix, Google, YouTube,
Hulu, peer-to-peer networks, etc., may also serve as content
distributors.
[0040] The auxiliary content can likewise be delivered by any
communications channel 38. Often the internet 40 is used. The
auxiliary content can also come from several sources, including the
same entities that provide primary content, as well as from other
sources (e.g., web sites such as Flickr and Wikipedia, advertisers,
Apple App store vendors, social network friends and other
individuals, etc.) In some instances the auxiliary content can
comprise an associated software widget, e.g., as detailed in patent
application 61/150,235.
[0041] In one particular implementation, the auxiliary content is
transmitted to the user's home over the internet 40, and wirelessly
delivered to second screen devices 14, 16 from a router 42 over a
home network 44. (Second screen content can also be provided to
wired devices over the home network, such as a desktop computer 46,
although this is not as common.)
[0042] An exemplary DVR 24 is shown in FIG. 2, and includes a
network connection 50 (e.g., to the home network 44). The DVR also
has an input 52 through which video content is provided, as well as
a phone connection 54. Input 52 can connect to a device such as a
satellite receiver, a set top box, or an antenna, or it can
eliminated if video content is provided to the DVR over the network
connection 50. The phone input provides a connection by which the
DVR can dial into a data center to download electronic program
guide (EPG) data and other instructions periodically. Again, input
54 may be eliminated if such data is provided through the video or
network inputs.
[0043] The illustrated DVR also includes a processor 56, a user
interface 58 (which may include both physical controls and
on-screen menus/controls), a remote control 60, and a data store
62. The data store 62 can include both semiconductor and disc
storage. In addition to operating system software, user interface
software, and application programs, the illustrated data store 60
also includes EPG data, software widgets (see, e.g., patent
application 61/150,235), other data and software program modules,
and stored video data.
[0044] Also included in data store 60 is a variety of user-specific
data. This includes schedule data detailing programs to be recorded
as well as programs earlier recorded, user profile data, and user
cell phone data. The user profile data can include a variety of
information, such as program viewing history, program recording
history, season pass subscriptions and other standing recording
instructions, viewer rankings and votes concerning certain
programs, and other expressed viewing preferences. The profile data
may also include demographic information such as zip code, user age
and gender, data about affinity and social groups to which the user
belongs, etc.
[0045] In more sophisticated embodiments profile data is accessed
from various data stores and can encompass the user's web browsing
history and other sources of information. These can include all
manner of data that the user touches and in which the user leaves
traces, e.g., Google search history, cached web pages, cookies,
email archives, travel reservations on Expedia and Orbitz, music
collections on iTunes, cable television subscriptions, Netflix
movies viewed and in-queue, cell phone billing statements, credit
card statements, shopping data from Amazon and EBay, GPS tracking
information, social network friends, data and activities,
activities and postings on photo sites such as Flickr and Picasa
and video sites such as YouTube; the times of day memorialized in
these records, etc. (This collection may be termed a "digital life
log.")
[0046] Moreover, reference may be made to digital life log data of
the user's family and friends, and for others having demographic
similarities with the user (all this with appropriate anonymization
and privacy safeguards).
[0047] The DVR 24 may also have a module by which its location can
be determined. One such module is a GPS receiver.
[0048] FIG. 3 shows an exemplary cell phone 14, including elements
such as a microphone, a camera 70, a processor 72, a
display/touchscreen 74, a physical user interface, a location
module, and memory. The memory stores operating system software,
user interface software, other functional software modules, widget
software, etc.
[0049] The cell phone can employ a location module as described in
connection with the DVR.
[0050] In accordance with one aspect of the present technology,
user profile data is used in conjunction with context information
to make an estimate (or inference, or guess) identifying one or
more particular television programs the user may be watching (or
will watch in the future). The context information can include the
user's location. It may also include whether the user is stationary
at that location, or moving. Additionally, or alternatively, the
context information can be television program schedule information,
e.g., from an electronic program guide (EPG), and/or current
date/time.
[0051] To illustrate, profile information may suggest that the user
is a committed fan of the Pittsburgh Steelers, and watches many
other professional football games--routinely watching Monday Night
Football. It may further indicate that the user watches most of the
televised University of Oregon basketball games, occasionally
watches some golf, and that the user's home television is most
commonly tuned to ESPN.
[0052] Location information may identify the user's location by
latitude and longitude. Researching this location using one of the
geolocation services identified in application Ser. No. 12/484,115
(e.g., Yahoo's GeoPlanet service) may indicate that the user is at
Claude's Sports Bar on S.E. Hawthorne Avenue in Portland, Oreg. The
location data may also be static over a period of time, indicating
the user is not simply driving past the bar.
[0053] With no other data, the system may infer the user is
probably watching a sports channel on a television in the bar. The
profile data indicates the user's interest in televised sports. A
Google search for Claude's Sports Bar on S.E. Hawthorne in Portland
finds a web page full of sports- and television-related references
("big screen" "satellite," "channels," "football," etc.). An
inference engine takes these facts as inputs, identifies a set of
stored rules relevant to such inputs, resolves any conflicts
between the rules, and produces one or more inferences as output
(e.g., that the user is probably watching television, and the
watched television is probably displaying sports content).
[0054] (Artificial intelligence techniques can be applied in these
and in other contexts where the present technology is employed. One
branch of artificial intelligence is natural language processing
(NLP). NLP techniques can be used to make sense of information like
the terms found on the web page for Claude's Sports Bar. U.S. Pat.
No. 7,383,169 details how dictionaries and other large works of
language can be processed by NLP techniques to compile lexical
knowledge bases that serve as formidable sources of such "common
sense" information about the world. Wikipedia is another reference
source that can serve as the basis for such a knowledge base. This
common sense knowledge can be applied in the processing detailed
herein.)
[0055] With more information, the system can make a more refined
estimate--or a more confident estimate--about what the user is
doing. For example, if the date and time indicate a Monday evening
in November, an inference may be made that the user is watching
Monday Night Football on ESPN. If it is a Tuesday evening when the
University of Oregon is playing basketball, an inference may be
made that the user is watching the basketball game--on whatever
network it is airing.
[0056] If it is a Monday evening in November AND the University of
Oregon basketball team is playing a televised game, the algorithm
applies other heuristics and/or profile data to address the
conflict: is the user watching Monday Night Football, or the
University of Oregon basketball game? From data such as the user's
past viewing history, the inferencing engine may estimate that
there is a 70% likelihood the user is watching the basketball game,
and a 30% likelihood that user is watching the football game.
[0057] Based on the inferences, the system identifies to the user's
cell phone corresponding auxiliary content, e.g., of the sort
detailed in the earlier-referenced patent applications. Two or more
different auxiliary content options may be presented (e.g., in
thumbnail or icon form; static or streaming), from which the user
can select. These options may include, for example, NFL statistics
for the playing football teams; a dedicated camera shot of the
offensive quarterback, or an interactive game inviting the user to
guess what play the quarterback will next call.
[0058] Where the system yields a probabilistic outcome (e.g., 70%
chance of football; 30% of basketball), the content or options
presented to the user can be weighted accordingly.
[0059] Likewise, the confidence of an inference can also influence
what content or options the system offers to the user. For example,
if the system is only 10% certain that the user is watching golf,
it may not promote golf-related auxiliary content. Instead, it may
offer default auxiliary content that more generally caters to the
user's profile (e.g., highlights from recent Steelers football
games and University of Oregon basketball games; commentary on
their upcoming games; ESPN headlines, etc.).
[0060] In some embodiments, the system checks its inference by
asking the user one or more questions. For example, the system can
send a text message to the user's cell phone inquiring, "Are you
watching the University of Oregon basketball game?" Or an
application program on the user's cell phone might present such a
question. The auxiliary content (or content options) presented to
the user can be tailored in accordance with the user's
response.
[0061] Instead of interrupting the user with such a query, the cell
phone may simply capture audio or visual information from the
user's environment (e.g., by the cell phone's microphone or
camera)--seeking to confirm the estimate, e.g., by a technique such
as a digital watermark decoding, or fingerprint extraction.
[0062] Television audio typically bears a Nielsen digital watermark
signal inserted by the content distributor (e.g., KOIN television),
prior to its transmission. The watermark repetitively conveys two
items of information: a source ID, and a time stamp. The source ID
has two parts. The first generally identifies the network from
which the content is distributed, e.g., CBS, ESPN, etc.; the second
identifies the local outlet, e.g., KOIN television, Comcast
cable-West Portland, etc. The time stamp is an incrementing clock
that gives the date and time of the transmission. The encoders that
insert the watermarks are part of an existing network that helps
The Nielsen Company track television consumption. Nielsen maintains
a database that details the program lineup for each channel in each
geographic market and national network, by date and time. This
database is fed by program guide information compiled by vendors
such as Tribune Media Company and/or TV Guide.
[0063] A customary watermark usage model is to identify an unknown
television program from a watermark. In that case the watermark
ID/time stamp are input as a query to the database, and the
database returns output data identifying the program that was
airing on that television source at that time.
[0064] The present application is somewhat different, because a
guess as to the likely program(s) has already been made. In this
case, information identifying the estimated program(s) is used to
query the database, and retrieve the source ID (and optionally
time-stamp data indicating the scheduled time for the program).
Audio captured from the user's environment is then checked to see
if it is consistent with the retrieved source ID. (Technically, it
is easier to analyze audio to determine whether one or more
expected watermarks is present, than it is to analyze audio to
identify whether an unknown watermark is present.)
[0065] The system assumes that the content available in the user's
environment is being presented during the program slot of its
original transmission. The database is thus queried to identify the
source or sources that are currently transmitting the estimated
program. For example, Monday night football may be distributed by
ESPN and by a local broadcast station. Source IDs for these sources
are then obtained from the database, and the ambient audio in the
user's environment is analyzed to determine whether a watermark
corresponding to one of these source IDs is present. If so, the
estimate has been confirmed. (A similar approach can be employed
with recorded content, although a larger universe of candidate
programming must be considered.)
[0066] As noted, another approach to content identification (or
confirmation) is fingerprinting. Fingerprinting works by matching
features from unknown media content with features from known media
content, to make an identification. Again, the present context is
simpler than that usually presented, since the system has already
made an estimate about the identity of the content. So the captured
audio (or imagery) is simply analyzed to check for consistency with
the estimated program, in order to confirm the estimate. (For
example, fingerprints for the estimated program may be checked for
correspondence to the sampled audio; this is a simpler task than
using fingerprint technology to identify sampled content from a
virtually unlimited set of possibilities.)
[0067] In still other arrangements, the sampled audio or imagery
simply tends to confirm that the user is watching television,
rather than engaged in some other activity. For example, television
audio often has a spectral distribution that can be distinguished
from, e.g., the spectral distribution of two people engaged in
conversation. Television audio is frequently band-limited and
compressed (limited) to increase its average power, and to
concentrate its energy where the human auditory system is most
acute. Similarly, TV video has distinctive visual features. CRT
television monitors use color phosphors that produce characteristic
peaks in the visual spectrum. Television screens are refreshed at a
fixed rate, by which their imagery can be distinguished from
natural scenery. These and other hallmarks can be used to help
confirm that a user is watching television instead of, e.g.,
engaged in discussion or watching a live football game.
[0068] In one implementation, the processing described above is
performed by processor 72 and associated applications software in
the user's cell phone. In other implementations this processing
takes place in the user's DVR, or at a cable company server, or in
the cloud, or elsewhere (or distributed among such processors).
[0069] Sometimes the user may be traveling in a city remote from
home. The user's position is known by GPS or otherwise. However,
the television programming available in that remote city may be
different than that normally tracked by the user's cell phone or
the home DVR. In such cases the system can use online resources,
such as the TV Guide web site, or data from Tribune Media Company
(or the Program Directory Database detailed below), to determine
the availability and scheduling of content in the remote city. With
knowledge of the programming line-up available in the remote city,
together with the user's location and profile information, the
system may still estimate a particular program that the user is
currently watching (or may watch in the future).
[0070] Information about the user's estimated viewing activity can
be sent back to the user's home (if it was determined by a remote
device), where it can be stored or otherwise used as particular
applications may require. If the user confirms a viewing activity,
this information can be similarly logged, e.g., in a data store
coupled to the user's home network.
[0071] The arrangement just-described guesses at what the content
the user is presently viewing, and acts accordingly. A similar
procedure can be used to guess what content the user will be
viewing in the future--or may be interested in viewing. Auxiliary
content, or reminders, can then be sent to the user--immediately,
or later.
[0072] A particular implementation receives data indicating a
location of the user (e.g., a location of the user's cell phone)
and, in conjunction with profile data relating to the user,
identifies one or more upcoming television programs that the user
may want to view. Alerts are then sent to the user (e.g., to the
user's cell phone) about the upcoming television program(s). The
alert may invite the user to press a button, or otherwise signal,
if the user is (or will be) watching the program. Again, if the
user is remote from home, program line-up data from the media
market where the user is currently located can be used to customize
the alert.
[0073] The profile data may be as simple as information indicating
that the user's home DVR is set to record a particular program at a
particular time. For example, the user may have earlier operated
the user interface of a home TiVo device to program a "season
pass," instructing the device to record all broadcasts of Minnesota
Timberwolves basketball games. At the time of each game, or a brief
interval in advance (e.g., 5, 15 or 60 minutes), the system may
send the user a reminder that a game is about to air. (In the DVR
shown in FIG. 2, the user's cell phone number is known to the
DVR--allowing it to send such a reminder by a text message, a voice
alert, etc.)
[0074] If the user confirms viewing a particular program (or if
viewing is confirmed otherwise, e.g., by audio sampling), this fact
can be relayed to the network, to the content creator, or to other
parties--allowing them to offer complementary auxiliary content. To
illustrate, a user may be invited to participate in an online poll
to determine Player of the Game for a football game, or who should
be voted off the island in a reality show. The outcome of the
primary content may thus depend, in some measure, on involvement of
the audience with the auxiliary content. (This feature is discussed
in further detail, below.) In another example, a user is presented
with occasional trivia, e.g., that President Obama is a longtime
Pittsburg Steelers fan. If user profile data is shared with the
networks etc., they can better engage the viewer with meaningful
auxiliary content.
[0075] In some embodiments the user can respond to the alert by
requesting that the scheduled program be transmitted to the user's
cell phone for viewing.
[0076] Just as the fact of a user viewing a television program may
be inferred, so may be the fact of a user discontinuing viewing.
This can be done, for example, by sensing audio or image data using
the cell phone. It may additionally or alternatively involve
sensing movement of the cell phone (such as by accelerometers, or
movement of visible features in a field of view of a cell phone
camera).
[0077] If the viewer has apparently stopped viewing the television,
corresponding action(s) may be taken. One is to pause the
programming, so that the viewer can resume watching at a later
time. Another is to send the viewer information about a missed
portion of the content. This can comprise key frames, video
highlights, a textual synopsis, etc. One or more of these can link
to a recorded version of the missed content.
[0078] As noted, one or more cell phones may be associated with a
particular television system, e.g., by registration data in a DVR
data store, or elsewhere on a home network. Information can then be
shared between the system and one or more of the associated cell
phone(s).
[0079] In a particular arrangement, a husband and wife both have
cell phones registered with a family TiVo system. Each may have
their own TiVo profile including, e.g., preferences, viewing
history, video recordings, season passes, etc.
[0080] In some cases it is clear whether the husband or wife is
associated with a given program. For example, a program may have
been recorded at the instruction of one or the other, and appear on
their respective list of recordings. When the television plays the
recorded program, it may direct auxiliary content (or a message
about the availability of auxiliary content) to the person who
scheduled the program for recording.
[0081] In other cases there is ambiguity about which person (or
both) is associated with a program. Consider a Saturday afternoon
when someone turns on the television system and tunes to a golf
broadcast. Who is watching? A variety of heuristics may be
applied.
[0082] One is to analyze past recording history. If the wife's list
of recordings includes golf broadcasts, but the husband's does not,
then the system can infer the wife is watching. Data may thus be
directed to the wife's cell phone. Other profile data can be used
to similar effect.
[0083] Another approach is to sense location of one or both phones.
Data can be sent to whichever phone (or both) is near the
television system.
[0084] The phone may be running the Bonjour protocol--advising
other devices on the home network of who it is (e.g., to which
spouse it belongs) and what it is doing. The television may receive
this broadcast and thereby identify a phone watching
television.
[0085] A variety of other arrangements can also be adopted. For
example, the television system may include a camera and facial
recognition algorithm to identify the viewer(s). It may monitor
periodic transmissions from the cell phone by which it identifies
itself to the local cell site. Or the television system may simply
inquire of one spouse whether they are watching golf. If the person
responds `yes,` auxiliary content information can be sent to that
spouse; if `no,` the auxiliary content information can be sent to
the other spouse.
[0086] In the example just-given, the television system is
pro-active: seeking to identify a viewer so that auxiliary content
may be provided. In other arrangements it works the other way. A
user may operate a cell phone (e.g., by launching a WatchingTV
application) to indicate interest in auxiliary content or other
interactivity. A logical association is then determined between the
cell phone and a television system. This association may be ad hoc,
or determined by information previously-stored in a data registry
or the like.
[0087] An example of the ad hoc case is a phone that senses it is
near a television system, such as by location determination, by
Bonjour broadcast from a local wireless network, by watermark or
other distinctive feature of ambient audio/video, etc. (Identity of
the television system may be established by decoding a digital
watermark encoded in content rendered by that television system,
where the watermark conveys an identifier of the particular
television system.) Once a logical association is established,
auxiliary content corresponding to primary content displayed on the
television is provided for the user's enjoyment. (As in other
cases, the auxiliary content may be dependent on the user profile,
user location, etc.)
[0088] In the other case, the logical association is determined by
information previously-stored in a data registry or the like. An
example is a phone registered with the user's home TiVo system. In
some instances the user may not even be near the associated
television system. Nonetheless, the user's cell phone can consult
with the associated television system and present related
information to the user. The presented information may simply
comprise the status of the television system, or the name of a
program being viewed or recorded on that system. Or it may comprise
auxiliary video or web content corresponding to content being
processed (or earlier stored) on the associated system. (Here, as
in the other embodiments, the cell phone may present a menu from
which the user can select among plural options. If several
different items of auxiliary content are available, the menu may
comprise thumbnail views of the content--including motion
video--from which the user can select.)
[0089] It should be recognized that the second screen auxiliary
content may be some or all of the primary content, depending on the
application. For example, in a circumstance earlier-discussed--in
which a user is alerted to a program about to be recorded on a home
DVR--the auxiliary content may be the primary content re-formatted
and streamed for presentation on the user's cell phone display. The
user interface on the cell phone can alert the user to the
availability of such content, which can be played by a
corresponding gesture on the phone's touch-screen interface.
[0090] In this and other embodiments, the user may respond to an
offer of auxiliary content by instructing that the auxiliary
content also be offered, or directed, to one or more other cell
phones or second screens. Thus, when a user's cell phone is alerted
that a Timberwolves game is beginning, the user can forward the
auxiliary content to the user's laptop, and also offer the
auxiliary content to the cell phone of a classmate who is also a
Timberwolves fan. Such relaying can be done by wireless from the
user's cell phone (e.g., by Bluetooth for nearby second screen
devices, or by WiFi and then internet to more remote devices). The
Bonjour protocol can alternatively be employed--transmitting data
that can be received by all devices on the home (or other)
network.
[0091] In some embodiments the user's cell phone may instruct that
the auxiliary content be distributed to the designees from an
upstream node in the distribution process (e.g., from one of the
servers 34 in FIG. 1, or from the user's home DVR 12, etc.).
[0092] The content may be shared with individuals with whom the
user has an association (e.g., "friend" status on a social
network), or to individuals who are physically nearby, or to
individuals in the user's phone book, or on a common network,
etc.
[0093] The shared content may appear on the other person's cell
phone in a sub-portion of the display screen, e.g., in a window. By
selecting the window, the other person may cause the display to
occupy the full screen. Desirably, the content is presented
simultaneously on all screens on which it is displayed.
[0094] In some implementations, the DVR can be programmed to send
program alerts to multiple individuals, and make auxiliary content
available to each if requested.
[0095] It is not necessary to know the user's absolute location in
order to infer that the user is watching television. In other
arrangements the mere fact that a user is in proximity to a
television can be inferred, and action can be based thereon.
[0096] Various techniques for inferring proximity were discussed
above, e.g., detecting characteristic features of audio and imagery
produced by televisions, as contrasted with other audio and
imagery. Low level stray emissions from televisions or other video
equipment can also be detected (e.g., the colorburst oscillator of
an NTSC television; the refresh rate for a television screen, or a
video scanning frequency, etc.). A Bonjour protocol transmission
from the television can also be used.
[0097] Conversely, the television may detect the nearby presence of
a cell phone, e.g., by the near field RF signal regularly
transmitted by the phone to the cellular network, by the near field
WiFi signal sent to a nearby router, by a Bluetooth emission, by a
Bonjour protocol transmission, etc. The television system can
identify the cell phone by such transmission, and--once proximity
is established--an estimate can be made of the television content
that the user is most likely viewing.
[0098] Once proximity is established between a user and a video
screen, auxiliary content can be provided to the user in accordance
with user profile data.
[0099] Eventually the day may come when all devices know their own
location, such as by one of various emerging geolocation
arrangements (e.g., as detailed below). They may share this
information with local devices (e.g., by wireless and/or Bonjour),
and/or post the location data to a networked data store--where it
can be accessed by other devices. In this environment the user's
cell phone can learn the location and identity of nearby electronic
devices (which may be presented in map form). If a television
monitor is found to be near the cell phone, the system may infer
that the user is watching the television. ("Nearby" depends on the
particular requirements of a given application. In some cases ten
feet may be nearby. Sometimes twenty. In the case of a Jumbotron
video monitor, ten or a hundred yards may be considered
nearby.)
[0100] Next generation video systems may also publish data (e.g.,
wirelessly, by Bonjour, or to a networked data store) identifying
the content they are displaying. In such case an estimate of the
content no longer needs to be made. The video equipment
unambiguously makes this information available. Systems using the
present technology can access such information and, based thereon
(and, optionally, on profile data), provide corresponding auxiliary
content to the cell phone of a nearby user.
[0101] In these examples, as earlier, the system may seek
confirmation, e.g., that the user is actually watching the video
content being displayed on the nearby screen. Such confirmation may
be sought recurringly, rather than just once.
[0102] In all of these examples, the auxiliary content need not be
presented on the user's cell phone. It may be presented on the big
screen with the primary content (e.g., in a window). Or it may be
delivered otherwise.
[0103] In addition to (or as an alternative to) presenting
information or content to the user, a cell phone can simply provide
information to other systems. For example, it can identify the
user's location; or specify--by reference to a calendar
application--whether the user is free or busy; or indicate whether
the user is stationary or in motion; or identify that a user is
proximate to a particular display system, etc. Next generation cell
phones may report biological indicators, e.g., suggesting whether
the user is asleep or eating, etc. The other systems can then adapt
their operation in accordance with such information.
[0104] For example, if a television system in an airport lounge
senses the stationary nearby presence of Jane Doe (or more
accurately her cell phone), the television system may retrieve
profile information for Jane Doe (e.g., from the phone or an online
resource), and identify what video programming may be of most
interest, e.g., a current LPGA golf tournament. The television can
automatically present such programming to Jane while she waits.
When Jane leaves and John Smith sits down, the television may
similarly tune to CNBC.
[0105] Instead of, or in addition to, selecting primary
programming, such a system can identify auxiliary content of
particular interest to the nearby user. For example, John Doe's
cell phone may make available, over a WiFi network or Bluetooth,
the names of stocks on his default Yahoo Finance portfolio (but not
the share amounts). The television system can automatically overlay
a small window on the CNBC screen, scrolling current prices for
those stocks.
[0106] Thus, while cell phones according to the present technology
can respond to the user's environment, they also allow the user's
environment to respond to the user.
More on Auxiliary Content
[0107] The item(s) of auxiliary content that is made available with
a particular item of primary content may be selected by the
provider of primary content (e.g., a video network, such as ESPN),
or another network or commercial entity. However, an alternative is
for auxiliary content to be crowd-source-identified, e.g., in
social network fashion.
[0108] The social network can be defined in advance (e.g., Facebook
friends of John Doe, or high school students in Portland, Oreg.),
or it can be ad hoc (e.g., whoever is currently watching tonight's
Timberwolves game).
[0109] Individual users may find their own auxiliary content. For
example, high school students watching a James Bond movie may
browse to the Austin Martin home page, or to the home page for the
United Kingdom's MI6 Secret Intelligence Service. Retirees watching
the same movie may tend to browse to the Wikipedia page for
"Shaken, Not Stirred." Or to the Tanqueray Gin home page.
[0110] Similarly, when watching NBA Minnesota Timberwolves
basketball, high school students at the alma mater of player Kevin
Love may navigate to the page at NBA.com with Kevin's statistics,
or to a YouTube video of him breaking a basketball backboard during
a celebrated high school game.
[0111] , and can serve as a resource from which others can identify
relevant content. Each item of auxiliary content may be associated
with (1) profile information about users who viewed it, and (2)
information identifying content with which it has been
associated.
[0112] One implementation employs a relational database that can
group data using common attributes. A schematic representation of
data in such a database is shown in FIG. 4.
[0113] Naturally, this is just a sampling. The database desirably
includes, or has access to, other data. This other data can include
metadata associated with each item of content--classifying by
genre, actors, keyword descriptors, ISAN (International Standard
Audiovisual Number) and/or DOI (Digital Object Identifier), date,
etc. Additional profile data for each user can also be provided,
e.g., telephone number area code and exchange; IP address (or
domain), and profile information noted earlier.
[0114] This data can be mined in other ways. A person who
independently browses to the MI6 official site might be prompted to
consider viewing the Goldfinger movie, etc. A web browser may
briefly overlay a sidebar on presented content, advising "Users
that were interested in this page were also interested in the
following: <identification of other content>"
[0115] Such a database can be hosted on a discrete computer, or
distributed (and/or replicated) among many different platforms.
Peer-to-peer arrangements can be employed, with different parts of
the database residing on different users' machines.
[0116] Such a database may be managed in wiki form, with users
expressly contributing and annotating the listings. Another
alternative is for a vendor such as Google to compile the data. A
new service (e.g., "MediaGuide") could then be provided, which
would provide a ranked list of auxiliary content (e.g., web pages)
that is most commonly consumed with a given item of primary content
(e.g., a television show).
[0117] Already, assenting users of the Google Toolbar product
provide data to Google identifying visited web sites. The Google
Toolbar can be enhanced to also provide
[0118] Google with data identifying media content that is present
in the user's environment during web browsing (a background media
data collection mode).
[0119] The media content can be identified by the various
techniques detailed in this and the incorporated-by-reference
documents, including digital watermarks, fingerprints, etc. The
Google Toolbar may fully identify the content (e.g., by decoding a
watermark from captured audio), or it can simply perform some
processing of captured audio (or video), and forward the processed
data to Google's servers for completion of the identification task,
such as by fingerprint matching. (The processing desirably removes
personally identifiable information, such as by making the audio
unintelligible. One type of such processing is Wiener filtering, or
subtracting the short-term average of the audio amplitude from its
instantaneous value. Another is by extracting the timing and
frequencies of certain landmarks in the audio, e.g., as detailed in
Shazam's U.S. Pat. No. 7,359,889.)
[0120] The ambient media needn't be identified with a high degree
of certainty. Guesses based on incomplete data or circumstances (as
described elsewhere in this specification) can often
suffice--especially when large numbers of such data are collected.
Associations between primary content and companion auxiliary
content based on correctly-identified primary content tend to
cluster; clear patterns emerge. For example, many viewers of
Oprah's television program may visit web pages for the Oprah Book
Club and for personalities appearing on Oprah's show; many viewers
of CNBC may visit the Wall Street Journal web site and the Yahoo
Finance web site. Associations based on mis-identified content, in
contrast, are un-clustered; they don't occur with the frequency
that would place them among the top ranked search results. So even
if the media identification were correct only 20% or 2% of the
time, useful associations would eventually emerge.
[0121] In other embodiments, no guessing or discernment is
required; the primary content is expressly identified by data from
the television system, or from a device elsewhere in the
distribution/rendering chain. For example, a TiVo box knows what
content it is supplying to a television monitor, and it can make
this identification data available to the Google Toolbar. In one
particular embodiment, software in the TiVo system employs the
Bonjour protocol to inform other devices within the home network of
the identity of the video being currently rendered. The Google
Toolbar software can receive this broadcast, and forward same to
Google (as it forwards data identifying visited web pages).
[0122] In query mode, the contemplated MediaGuide service takes
identifiers of primary content as input, and provides a ranked
listing of corresponding auxiliary content identified from the
database as output. The input identifiers may be keywords typed by
a user, e.g., Oprah or CNBC. Alternatively, the user's device
(e.g., a module associated with the Google Toolbar) may simply
sample the ambient audio (in response to user command, or
automatically) and provide associated identifiers to the service.
These identifiers may be text keywords (e.g., program title), or
other identifiers that are associated with a particular program
(e.g., watermark payload, audio or video fingerprint, etc.) In some
embodiments, the captured audio data, or processed audio data, may
be submitted as input, and the Google servers can identify the
primary content based on this audio data--and respond with ranked
identification of corresponding auxiliary content.
[0123] In still other embodiments, the primary content is expressly
identified by data from the television system, or from a device
elsewhere in the distribution/rendering chain, as detailed
above.
[0124] Results from such a MediaGuide query may be presented in the
same familiar format as Google's web search results. Hyperlinked
results from the database fill most of the screen. To the edge can
be placed sponsored links. For example, Nike may pay to present a
link to its Air Jordan web page on the top right of a page of
results to a media query based on a Trailblazers basketball
broadcast.
[0125] After an initial corpus of primary content-auxiliary content
association data is collected, use of the system in query mode
allows further media association data to be collected. The Google
Toolbar can note which auxiliary content search results are
selected when different primary (ambient) media is present. This
information is sent to Google and can inform future searches based
on that primary media content.
[0126] The search results may be customized for the user's
demographics (e.g., age, gender, zip), if demographic data is known
while in media data collection mode. For example, a MediaGuide
query based on a Trailblazer basketball game by a 19 year old male
in Portland can report the most popular auxiliary content consumed
by other users of similar profile.
[0127] It will be recognized that the just-detailed arrangement is
a departure from the usual careful scripting of content
consumption. Historically, commercial entities--such as advertisers
and content networks--paired primary content with auxiliary content
(consider broadcast television and associated commercials). The
present approach, in contrast, taps a wealth of information by
examining actual user behavior--establishing appropriate content
pairings organically rather than by fiat.
[0128] While described in the context of Google offerings, any
number of particular implementations is of course possible. One
employs Personal People Meters (PPMs)--pager-sized devices that
sense ambient media for audience survey purposes (see, e.g.,
Nielsen patent publication 20090070797, and Arbitron U.S. Pat. Nos.
6,871,180 and 7,222,071). Audience survey companies recruit and
compensate individuals to wear such meters. These same individuals
may be recruited to install software with their web browsers to
report what web sites are visited, when. An individual's web site
data and PPM data can then be temporally correlated to establish
associations between web content and broadcast content.
[0129] Similarly, instead of using the Google Toolbar software,
such data collection can be effected by a network-connected media
monitoring device, such as the one detailed in Nielsen's patent
publication 20080320508.
[0130] It will be recognized that the technology detailed herein
offers enhanced audience measurement for television and other
content. The operator of such a system receives real-time
information about the consumption of media worldwide. Audience
analysis techniques, such as used by Nielsen and Arbitron, can be
employed.
[0131] Moreover, the detailed system provides another dimension of
audience information, namely information about co-consumed content.
This can be of particular use to advertisers.
[0132] Consider a company that wants to promote its product to a
particular demographic that is not tracked by traditional
television audience measurement surveys, e.g., frequent leisure
travelers. In the past, other metrics have been used as gross
proxies for the desired demographic, e.g., persons 49-64 with
incomes over $100,000. But this is unsatisfactory--often
identifying programs that are not relevant, or failing to identify
programs that are relevant.
[0133] Paired with web visit data, however, television audience
measurement takes on new meaning. Instead of identifying a
demographic proxy for the targeted group, the advertiser queries
the just-detailed database with web sites that serve the targeted
group, e.g., Expedia, Travelocity, Priceline, Hotwire. In this mode
of operation the database responds with the names of television
programs that most commonly are being rendered while such sites are
being visited. Television programs that provide the desired
audience demographic are readily and confidently identified.
[0134] If a company wants to advertise on television programs
popular with off-roaders, it queries the database for programs
associated with the web sites Fourwheeler, Offroaders and
Pirate4.times.4. If a company wants to advertise on television
shows watched by families dealing with Alzheimers, it queries the
database for programs most-commonly watched while surfing the
Alzheimers' Association web site. For programs watched by online
gamers, it searches the database for programs airing while users
are at popular gaming sites (e.g., World of Warcraft).
[0135] Such an approach provides a significant advance in the
accuracy of television audience measurement. No longer are viewers
classified solely by generic demographics such as age, geography,
income, education, etc. Now their subjective interests are
revealed--factors that distinguish statistically identical
neighbors. And such interests are not collected using
questionnaires of uncertain reliability, but by reference to actual
web browsing habits.
[0136] The ambient media information can be used in other ways as
well. One is as cookie information. Cookies have long been used to
allow websites to tailor their presentations to returning users,
e.g., customizing the presented information based on users' past
activities or interests. Likewise, information about a television
program currently being rendered to a user can be relayed to a web
site to which the user surfs, and the web server can adapt its
presentation accordingly. If sports programming (e.g., content from
ESPN) is sensed in the viewer's environment, and the user navigates
to the New York Times website, the Times web server may present
sports news more prominently than otherwise. Similarly, if the
program Washington Week in Review is playing in the user's
environment, the Times web site may give greater prominence to
national political news in the first web page served to the
user.
[0137] This need not be implemented using traditional cookies.
Other data exchange arrangements can be used. One data exchange
arrangement is as header data in the HTTP packet sent to the New
York Times web site, asking for a page to be loaded. The header
data already carries a variety of information, such as data
identifying the web site from which the user just navigated (the
referring page). It can also carry data identifying the television
program currently playing in the user's environment, so that the
responding web site can adapt its content accordingly.
[0138] In this embodiment, as in others, the data identifying the
television program can be of any form. Examples include ISAN
identifiers, time/channel data, audio data from which a remote
detector can discern identifying watermark or fingerprint data,
decoded watermark data, fingerprint data, EPG coordinates from a
TiVo system, text title data (e.g., from an EPG), etc.
Organically Compiled Program Directory
[0139] The concept of a program guide is an old one, dating back to
the earliest days of television, and printed TV Guide magazines. A
gridded structure is used, with columns indicating time (usually in
30 minute increments), and rows indicating channels. With the
development of cable networks featuring large numbers of channels,
this gridded format migrated to scrolling on-screen
guides--originally delivered on cable channels dedicated for this
purpose.
[0140] A great number of subsequent technical developments have
occurred in the field, but the gridded time/channel format remains
entrenched.
[0141] Schedule data for TV Guide, and the later electronic
counterparts, has traditionally been compiled by a labor intensive
process. Clerical workers at TV Guide, and later Tribune Media
Services, called television networks and individual stations on a
regular basis to obtain program lineup information for the week
ahead. When last minute program changes occurred--as unavoidably
happens--the guides presented incorrect information.
[0142] In accordance with aspects of the present technology, the
inventors believe that it is time to disintermediate programs from
channels. The consumer has a display screen, on which content
desirably appears (whether from TV broadcast, cable, web streams,
iTunes, Netflix, peer-to-peer networks, etc.). Channels as an
organizing principle have outlived their usefulness. (Identifying
content by reference to channels is akin to identifying postal mail
by reference to the name of the mailman that brings it to the door,
or identifying a web page by reference to the data's routing
through nodes of the internet.) How content gets to the consumer's
screen is of secondary interest--if that.
[0143] An embodiment incorporating this aspect of the technology
may refer to a program-centric directory that details multiple
alternate sources from which content may be available. Instead of
indicating a desired channel, a consumer indicates a desired
program. An automated system, referring to the directory, chooses
from among the available sources and presents the desired content
on the screen. Only rarely does the consumer need to be
involved.
[0144] In one particular embodiment, the system employs stored
heuristics and rules, which cooperate with user preference and
profile data, to choose from among different sources for content. A
user may express a preference, or a requirement, for downloaded
content over streaming, free content over paid, no commercials,
resolution of at least 1024.times.768, no delivery for sources that
may be unauthorized, etc. Some such preferences may apply across
all content types; others may be tailored to particular types of
content (e.g., theatrical movies and sports: prefer resolution of
at least 1024.times.768; current events and comedy: prefer
resolution of at least 720.times.480; paid content: require no
commercials). The preferences/requirements can be applied in a
particular order (e.g., always exercise the user's first
preference, where possible, without regard to whether meeting that
preference means other preferences will not be met). Alternatively,
the preferences can be accorded different relative weightings, with
a final choice made only after each alternative has been scored in
the aggregate--considering all the relevant preferences and
weightings.
[0145] Sometimes the rules/heuristics will refer the decision to
the user. For example, a rule may specify not to automatically
authorize any content payment exceeding $0.99 ($2.99 in the case of
a movie within two weeks of its theatrical release). The user can
then specify, through a phone or other UI, whether to authorize the
payment.
[0146] In other cases the user may specify and ordered list of
preferred providers. Obtain from Hulu, if available; else obtain
from YouTube, if available; else obtain from iTunes, if available;
else present options to user for manual selection.
[0147] FIG. 5 illustrates a database record corresponding to an
episode of the Daily Show program. The illustrated data structure
gives information about the program, and lists various sources from
which the program is available. Some are web sources. Some are TV
sources. One is from a P2P network (Limewire).
[0148] Associated with each of the listed content outlets is
further information about the content (metadata), such as an
identifier used by that outlet (e.g., 77973 for Hulu), the ISAN
number for the content (where available), and information about
availability of the content from that outlet.
[0149] For some outlets, the availability information indicates
that the content is available "on demand." The information may
further specify when the content was first available from that
outlet, and may specify when availability is expected to end.
[0150] For example, the sample Daily Show episode was available on
Comedy Central (its originating network) at the date and time the
episode originally aired (i.e., 8:00 .mu.m on June 15), and is
available until midnight on the Sunday before the fifth week
anniversary of the original airing. The copy provided to Hulu,
however, was embargoed for an hour--not being available from that
source until 9:00 p.m., and is available from that source for only
30 days.
[0151] In the case of television broadcasts, the data structure
includes a pointer to a list of arbitrary length, detailing the
original airing and all scheduled repeats of the program. Thus, the
Comedy Central TV entry shows the original 8:00 p.m. airing,
followed by a repeat at 10:30, 7:30 the next morning, etc. (In the
illustrated data record, all times are Pacific.)
[0152] Included in the same database as contains the FIG. 5
information, or in another, is a data structure that maps
television networks to channels. For example, Comedy Central is
channel 107 on the Dish Network, channel 55 on Comcast, etc. By
reference to such information, a user's system can locate the
desired programming on different distribution systems.
[0153] FIG. 6 shows how the source data is collected. The content
creator provides each item of content with an inherent identifier
that can be digitally extracted from the content wherever it goes.
Digital watermark technology is preferred, although fingerprinting
can also be used. The identifier is stored in a database, together
with metadata about the content. The content is then distributed to
one or more recipients, such as television networks, web sites,
etc.
[0154] Recipients of the content are equipped with watermark
(and/or fingerprint) detectors (shown by triangles in FIG. 6) that
read the content's inherent identifier, and issue reports back to a
database. (See, e.g., Digimarc's patent publication 20070208711 for
additional information about such watermark/fingerprint detectors.)
Desirably, each recipient includes recipient-specific information
with the report, such as particulars of the intended use. These
particulars may include scheduling data (e.g., when the content is
to be broadcast, when it is to be downloadable from the web, when
availability will be discontinued, etc.). Other information may
also be included, such as the format(s) in which the content
is/will be available, the identifier assigned to the content by the
recipient's system etc. The database thus has a record of where the
content is stored, together with all of the other
recipient-contributed information.
[0155] In addition to locating detectors at content ingest points
for authorized distributors, the detectors (triangles in FIG. 6)
may also be placed elsewhere to identify the content at other
locations, such as it leaks to unintended destinations. For
example, an individual may download the content from a web site,
and re-post it on a P2P network site. A detector at an internet
node may sense the P2P traffic, and submit information to the
database identifying the P2P network as an alternative source for
the content.
[0156] FIG. 7 shows the content creator's (e.g., a movie studio's)
part of the process in greater detail. The content is originally
created by film or digital capture. Dailies are reviewed by the
production team, and editing takes places. If the content is
originated in film, it is scanned into digital form.
[0157] The content is then digitally watermarked with a
studio-assigned identifier. (In some arrangements the content is
watermarked still earlier, such as at the production of dailies.)
The watermark identifier is stored in a studio database, in
association with metadata about the content. (Alternatively, or in
addition, fingerprint data is extracted from the content, and
similarly stored in the studio's database with associated
metadata.) Film prints and digital cinema files are created and
distributed.
[0158] The content creation process does not end with the
theatrical release materials. Dozens of other cuts and/or formats
of the content may be produced, e.g., for television (in both
standard definition and high definition), video on demand, airplane
viewing, DVD releases, web vide in a variety of formats including
MPEG2, Adobe Flash, Windows Media Format, etc., etc. The content
may also be sent to outside transcoding companies (e.g.,
Rhozet/Harmonic) for creation of files in still other formats.
[0159] Desirably, the watermark is of a variety that allows
successive layers of watermark data to be added. In such case, a
second, different, watermark is applied to each variant of the
content. These identifiers, too, are stored in the studio database
with other associated information (e.g., about the cut and
format).
[0160] The studio's database typically contains a great deal of
proprietary information. Thus, portions of the data suitable for
public dissemination (e.g., program title, synopsis, running time,
watermark/fingerprint information etc.) may be sent to a different
database, shown in FIG. 7 as the Program Directory Database. This
is the database in FIG. 6 that collects reports identifying all the
sources from which the content may be available. It may be
administered by an industry association (e.g., the MPAA) or a
contracted service provider (e.g., Secure Path).
[0161] In other arrangements, suitable protection mechanisms may
allow portions of the studio's internal database to be made
accessible to outsiders for limited purposes. In such case, the
database of FIG. 6 may comprise a federated database--with many
different portions, maintained by different studios and other
content creators. Combinations of external and internal databases
can also be used.
[0162] FIG. 8 further details the system from the content
distributor's viewpoint (e.g., that of a television network, such
as CBS). Content arrives from the movie studio at the distributor's
content ingest server, accompanied by metadata. The metadata (which
is typically "out-of-band" information, such as header data, or an
accompanying file) details the content title, synopsis, running
time, format particulars, file size, release date, etc. Both the
content and the metadata are enrolled in the network's internal
digital asset management system ("checked-in").
[0163] The network adds its own metadata to the digital asset
management system in association with the checked-in content,
detailing internal administrative information, including when the
content is scheduled for broadcast, when it is scheduled for
posting on the web, internal identifiers, etc.
[0164] In compliance with a contractual requirement with the
content creator (e.g., as part of a distribution agreement), as
part of the check-in process, the content distributor sends at
least some of the metadata it authored and stored in its internal
database--including schedule information--to the Program Directory
Database, where it is stored in association with the content.
[0165] Similarly, the content distributor can be contractually
required to electronically update the Program Directory Database
when there is any change to the earlier-provided information, or
when new scheduling information becomes available (e.g., additional
air dates, when the content is scheduled to be removed from the
web, etc.).
[0166] By such an arrangement, the Program Directory Database grows
organically, with different parties contributing information as the
content is first produced, and then distributed, and then as
changes occur. Supplemented with information contributed by
monitoring nodes remote from expected content distributors, the
Program Directory Database becomes a formidable collection of
information about content availability from diverse sources--all
compiled automatically. Moreover, it details availability far
beyond the week or ten days that are typical with known electronic
program guides.
[0167] Sometimes a content outlet may receive content but not then
know the schedule by which it will be distributed. Nonetheless, the
content is detected by a watermark/fingerprint detector at the
outlet's content ingest point, and a record of the content as being
stored at that outlet (and the date/time of detection) can be
entered into the Program Distribution Database.
[0168] Such a Program Directory Database can be used in the manners
described for EPGs elsewhere in this specification. For example,
the database can be consulted by cell phone applications to
find--and to schedule the downloading of--desired content. If a
user samples a program of interest, a quick check of the database
can immediately reveal the many outlets and schedules by which full
copies of the program are available. A download of the full program
may be made immediately, or scheduled for a later time.
[0169] Sometimes a user may encounter (and the user's cell phone
may sample) a program seen before--such as a particular episode of
a series, such as Friends or House. A software application on the
cell phone that identifies the program may summon, from the Program
Directory Database or elsewhere, a listing of all episodes in the
sampled series, and present the listing (with program synopses) to
the user. The user may not be interested in viewing the currently
playing episode (since it was watched previously), but may chose to
watch, or schedule for later downloading, one or more un-viewed
episodes in the series (including both repeated episodes, and
episodes not yet aired). Thus, an encounter with a repeated program
may prompt a user to arrange for viewing of another episode of the
same series. The Program Directory Database facilitates
identification and location of such other episode for viewing. (In
some embodiments, a file may be compiled identifying all of the
episodes of a series downloaded and/or viewed by a user. This can
serve as a ready reference to identify un-watched episodes of the
series.)
[0170] Known user interface paradigms from EPGs can be employed in
connection with the presently described Program Directory Database.
For example, a user may identify certain programs or genres as
Favorites, and such programs may be featured more prominently in a
user-customized presentation of the database contents.
[0171] Some user interfaces may feature visual icons--or
thumbnails--for programs, by which they are iconically represented.
Thematically-consistent variants may be employed to represent
different forms of content availability, e.g., web-based,
streaming, download, pay, high definition, etc. For example, the
same basic artwork may be used for all icons for a particular
program, with different styles of borders to indicate the different
variants. Such icons may be organized in folders corresponding to
different programs. A folder for a particular program may also
include icons representing auxiliary content that is associated
with such program (e.g., information on characters, blooper reels,
contests to win studio audience tickets, widgets, etc). As
described elsewhere in this specification, the user may be provided
an opportunity to submit feedback to the program (e.g., on plot
decisions, character actions and motivations, etc); the program
folder can include one or more icons that launch applications by
which such feedback may be submitted.
[0172] Desirably, differently formatted versions of the same
content are merged together under a single program entry (e.g.,
represented as a folder) in the Program Directory Database, as
presented to the user. (E.g., unlike present channel-centric EPG
displays, a user would not be presented with entirely different
entries for the High Definition and Standard Definition
counterparts of the same broadcast, such as on ESPN and
ESPN-HD.)
[0173] In addition to folders for user-defined favorites, the user
interface by which contents of the Program Directory Database are
presented to the user may include folders for specials, late
breaking news, and other programs of potential interest to the user
that do not have dedicated folders.
[0174] In some implementations, the information in the Program
Directory Database is checked on a periodic or ongoing basis, for
accuracy. For example, a monitoring service--such as offered by
Nielsen--may sample local television channels to confirm that
programs are available in accordance with the indicated schedules.
If not, the database record can be flagged as possibly in error,
and follow-up action can be taken to redress any related mistakes
in the directory, and to ensure that similar errors don't recur.
Such a monitoring service can likewise check web availability of
content. If it finds that particular content is no longer available
from a web outlet shown in the Program Directory Database to have
such content, the database record can be amended accordingly.
[0175] Watermark/fingerprint detectors may be located at other
locations in the content distribution workflow--other than at
public content outlets. For example, companies that offer
transcoding, subtitling, and DVD authoring services may have
detectors at their ingest servers--reporting content upon its
receipt. These reports may be logged in the Program Directory
Database, but access to these reports may be limited to the
content's originator (e.g., studio). Alternatively, such detectors
may report such content to a private database at the content
originator.
[0176] In still another variant, users' cell phones can generate
content reports that are provided to the Program Directory
Database. For example, if a user browsing the internet happens
across an episode of Friends from a particular social networking
web site, this fact may be reported to the Program Directory
Database, and the web site can be added as an alternative outlet
for the content (if not already listed). Likewise, if a user
samples a television broadcast (which may be watermark-encoded with
a source ID and timestamp, as described above), the content may be
identified (by watermark or fingerprint), and this information
reported to the Program Directory Database to check the database
accuracy, and/or for audience survey purposes.
Immersive Content
[0177] In recent years television programming has shifted from the
"lean-back" passive entertainment of decades past to the
"lean-forward" entertainment that almost invites viewers to shout
at the TV, such as Jerry Springer's combative offerings.
[0178] Some emerging technologies offer the promise of 3D
television, hoping to further engage viewers. However, practical
problems with the user experience, such as prompting headaches, and
triggering epileptic seizures, may limit the practical prospects
for such physically immersive experiences.
[0179] Better, it seems to the present applicants, are technologies
that allow greater user immersion without the disorientation that
attends 3D and other virtual reality experiences.
[0180] In accordance with this aspect of the present technology,
users are invited to engage with the characters, plot and
environment of television and other content programs in a
participatory manner, typically through a user interface provided
by an associated cell phone application.
[0181] In one particular arrangement, aspects of the program are
influenced by the audience--either collectively or individually.
For example, users may opt to expose certain personal profile
information from their phone to the originator or distributor of
the content. If a particular program is thereby found to have a
viewership with an unusually large percentage of truck owners (or
wine drinkers), then truck companies (or wine brands) may be
accorded differential treatment in the program's production and/or
advertising sponsors--shaping the content or commercial offerings
to correspond to the audience. In some instances the adaptation can
occur in nearly real-time, such as by advertising being inserted
dynamically based on current context--just as Google's Adwords
tailor ads to accompany web search results. In other arrangements,
the audience profile information is provided to the program's
writers, and is used to adapt the plot and/or other program
features in accordance with the users' profile information.
[0182] If a program has a high percentage of Budweiser beer
drinkers, Miller Brewing Company may be willing to pay a premium ad
rate to be promoted during such a program. Television and online
content may take a lesson from massively multiplayer online
role-playing games (MMORPGs) such as World of Warcraft, in which
teams of players ("Guilds") have collective sets of talents, tools,
and other assets, which determine the teams' successes and
failures. Likewise with an audience for entertainment content. The
composition and attributes of the audience collectively can be used
to influence the content's plot, the characters' motivations and
successes/failures, the advertising, etc.
[0183] Different viewers may ally themselves with different
characters in a program's cast. For example, in the program
Friends, some viewers may enter information through the cell
phone's user interface identifying themselves with Phoebe, others
with Monica, others with Chandler, others with Ross, etc. Each
program character may act, in some respects, as a proxy for the
corresponding segment of the viewing audience. The audience can
offer suggestions, advice, decisions, etc., which may influence the
way the character responds, or other twists and turns of the plot.
(The audience may urge Chandler that he is not ready to propose
marriage to Monica.)
[0184] In one particular arrangement, a program may be originally
produced with several alternate plot paths (akin to the Choose Your
own Adventure series of children's books). Depending on audience
sentiment expressed through their cell phones, the plot may proceed
in different ways (e.g., by playing one of plural different
recorded segments for different portions of the program).
[0185] In another arrangement, audience feedback is provided to the
program's producers, who tailor writing of forthcoming episodes in
accordance with such feedback.
[0186] Sometimes the audience is given the opportunity to judge
different program characters. In the program The Mole, for example,
a cast of characters works to achieve a shared goal, but includes a
double-agent saboteur--trying to foil the group, who needs to
conceal his identity. At the end of each episode the audience can
be polled for their assessment of who is the mole. The character
with the least number of audience votes can then be removed from
the cast for the next episode.
[0187] In still another arrangement, characters in reality and
other live action shows are literally informed of viewer feedback,
clues, motivation, or instructions, and tailor their actions
accordingly. A live comedy show may take user-submitted ideas or
dilemmas as the bases for improvisational comedy sketches, which
are performed after giving the comedy troop a few minutes to put
together their skit.
[0188] Great Broadway actors tell of their sense of being
responsive to the particular audience in attendance at each
performance. Comedians such as Lily Tomlin conspicuously adapt
their acts to the particular audience before which they are
performing. Although the cell phone interface does not provide
quite the immediacy or intimacy of a live audience, it still allows
a great step forward in enabling a performance to be adapted to the
viewing audience. (With accelerometers, magnetometers, multi-touch
user interface capabilities, etc., cell phones offer far richer
capabilities to provide feedback than other devices available in
the past, e.g., television remote controls.) New hybrids of
electronic content can thereby be realized, incorporating both
scripted aspects, and aspects dependent on the viewing
audience.
[0189] On-the-fly adaptation of program plot and content to reflect
user feedback is becoming easier as more programming becomes wholly
synthetic. That is, for programs produced with animated computer
generated imagery, rather than live actors and physical sets, the
plot can be dynamically configured based on real-time audience
suggestions. (E.g., a Chandler-like character may miss the subway
train on his way to propose marriage to a Monica-like
character--delaying his arrival until after she's left for the
evening--all in accordance with a CGI script adapted per audience
suggestion. Or an action character can reach for either a sword or
his left hip, or a mace on his right, depending on the direction
that most of the audience members move their cell phones.) While
popular animated Pixar productions take great lengths of time to
animate and render, the lower resolutions needed for productions to
be presented on televisions and cell phone screens--together with
the continued exponential growth of processing power per Moore's
Law, makes audience-responsive animation and rendering
possible.
[0190] In some arrangements, a program may include one or more
avatars whose actions and/or motivations are established in
accordance with input from the whole audience, or a portion. (E.g.,
content featuring a Civil War battle may include an avatar hero in
the Confederate Army, responsive to input from viewers in the
Confederate states, and an avatar hero in the Union Army,
responsive to input from the northern states.)
[0191] (Reference has been made to controlling motivations. A
single motivation may dictate a large set of consequent actions.
Thus, if a hero's motivation is to rescue the damsel, even at the
price of his own life, then numerous actions in the ensuing scenes
may logically follow. If the hero's motivation is instead to
vanquish the opponent and live to tell about it, then a different
set of actions may logically follow. Depending on circumstance,
receiving audience input as to character motivation may be
preferable to receiving audience input as to individual
actions.)
[0192] Names and/or locations of participating audience members can
be submitted together with their content input. The program can
incorporate such names into the story line. (E.g., on arriving at
Monica's apartment, Chandler may note "I rode up the elevator with
a guy named Tony, visiting from Portland, who said he could see my
aura, and said it looked disturbed. Do you think my aura looks
disturbed?") Subplots may unfold based on the input of audience
participants.
[0193] If audience avatars are included in a program, they may be
given the names most common among participating audience
members--increasing audience affinity to the content. Or an avatar
name may be assigned otherwise, such as the name of a first viewer
to correctly respond to a question, etc. Or instead of naming the
avatar after an audience member, an audience member who wins a
competition may be granted the privilege of assigning the avatar a
name of his/her choosing.
[0194] A plot may be scripted to include rhetorical questions, or
questions between characters, to which the audience can also
respond. ("I don't know if I should wear this red dress for my date
tomorrow with Chandler; maybe it's too forward.") Depending on the
audience response, she may or may not choose to wear the red dress
(and may credit advice given by a "Tony" for her decision).
[0195] In some cases, viewers may submit voiced (audio)
instructions or other audio input. Such audio input may be
incorporated into the soundtrack of the content--further increasing
viewer involvement. (The soundtrack to a mob scene may comprise
dozens or hundreds of superimposed audio tracks, submitted by
audience members using their cell phones.)
[0196] Naturally, audience members whose suggestions are adopted in
the story as it unfolds (or whose audio is incorporated) will take
pride in their involvement--giving them some bragging rights in
water cooler discussions at the office, etc.
[0197] In accordance with another aspect of the present technology,
cell phones may be used to signal the "thumbs-up" or "thumbs-down"
that were used to indicate gladiators' fates in ancient Rome.
However, instead of the Emperor passing judgment, it is the
collective audience.
[0198] The "thumbs-up" or "thumbs-down" signals may be entered by
various user interface controls, by shaking the phone while
right-side-up, or by shaking it while inverted, or by other
gestures or actions.
[0199] If an audience signals approval for a first game show
contestant, and disapproval for a second, the show's producers may
increase the first contestant's likelihood of winning.
[0200] Gestural use of a cell phone to signal input to an unfolding
plot can be used to good effect in large audiences, such as in a
theatrical auditorium screening of an action movie. The audience
can be invited to thrust and jab, as with a sword, to help a hero
defeat an on-screen villain. Again, the battle can unfold with
different outcomes, depending on the participation of the audience
(e.g., by selecting one of two earlier-produced different endings,
or by animating different computer graphics sequences that are that
are rendered on the fly).
[0201] In still another aspect, mobile phones are used as input
devices at live performance venues, such as concerts. The audience
can use the cell phones to tell the performers what songs they want
played, and suggest encore tunes. The concert promoter may publish
a software application for submitting such input, and may require
that users provide their email addresses (and optionally other
demographic data) in order to activate the capability. By so doing,
of course, the promoter gains a valuable marketing resource. The
glow of cell phone screens from concert audiences may replace the
glow of lighter flames to signal audience affinity for the concert
performer.
[0202] In still another aspect, the features just-described (e.g.,
providing user input to content programming) may be complemented by
data going the other way, i.e., from the content program to the
users' cell phones. The content may include watermark or other
encoded data that triggers a synchronized action by the user's cell
phone. This can include the various forms of auxiliary content
detailed in this application and those incorporated by reference.
An interplay may take place, in which user input triggers
responsive action in the content, which in turn triggers responsive
action in the auxiliary content, and back and forth.
[0203] By arrangements such as the foregoing, users may involve
themselves in content as it unfolds, with their actions and views
influencing program actions and plot twists. Instead of the
passive, lean-back viewing of decades past, or the shout-at-the-TV
viewing invited by some current programming, viewers are granted
control of the programming in unprecedented manners--through
gestural or other interaction with their mobile phones, yielding
more fully-engaging, immersive experiences.
Screen Switching
[0204] In accordance with a still further aspect of the present
technology, users are provided straight-forward means for switching
content from the small screen (e.g., a cell phone) to a nearby big
screen (e.g., television display), or vice versa.
[0205] In one form, this means comprises a user interface control
that sends instructions to the destination screen, by which it can
continue the user experience presently underway on the current
screen (e.g., rendering of entertainment content, etc.). For web
content, such as a video download from YouTube, the cell phone can
send a pointer to the web site, together with state data for the
video player application, e.g., detailing the current point in the
video and buffered content. For a video game, the cell phone can
similarly send current state information to the processor in the
television computer--allowing it to resume from the current
state.
[0206] In some implementations, the transfer may be effected using
the Bonjour protocol--advising the receiving processor of the
information available for transfer, and inviting the receiving
processor to take over.
[0207] In some instances, rather than "push" the content from the
present screen onto a different device screen, the destination
device can communicate with the currently-playing device, to "pull"
the content.
[0208] In other applications, the originally displayed content may
be under the control of a Java application, such as a BDJ
application provided with a Blu-ray disc, or a Tru2Way application
provided by a cable company's interactive service. Such content can
be provided to another screen by loading a counterpart Java
application on the receiving computer, and initializing its
execution state in accordance with the execution state of the
originating computer at the moment of the requested transfer.
[0209] One such Java application is a program that allows viewers
to play along with game shows, such as Who Wants to Be a
Millionaire (in which a contestant elects how many questions to
answer for doubled- or nothing-stakes), or Deal or No Deal (in
which a contestant chooses a box with an unknown cash prize, from a
set of boxes whose cash prizes are collectively known; the contents
of other boxes are then successively revealed, indicating--by the
process of elimination--prizes that are not in the chosen box; a
banker offers the contestant an alternative cash deal whose value
fluctuates as the process of elimination continues).
[0210] A viewer watching such a content program can elect to
receive a Java counterpart of the game (e.g., as auxiliary
content--using arrangements described elsewhere in this
specification). The Java version is loaded (and periodically
updated) with the particular parameters of the episode being
played. At any point in the episode the viewer can pause the
regular presentation of the game, and try playing the game to the
end with the Java application. The viewer can then compare his or
her results with that of the televised contestant.
[0211] (The original content program may be paused automatically
when the Java version of the game is activated. Pausing may
comprise a TiVo pause operation, which buffers ongoing content
delivery on a local or remote disc. Or the original game may be
delivered in an on-demand mode from a cable or online source, and
pausing can be achieved simply by instructing the downloaded stream
to stop, and resume later.)
[0212] As another example, consider a person playing World of
Warcraft on a home PC, who wants to continue the game while riding
a bus. By operation of a content-transfer user interface control on
the user's cell phone, state information about the game is
transferred to the phone (together with game software, if not
already present) and the player can resume action on the small
screen.
[0213] Consider also a person playing a game or watching content on
a big screen, whose cell phone receives content (e.g., images) send
by a friend. To better view the received content, the user may
operate a control on the cell phone interface (or on the big screen
interface) to automatically pause the big screen content, and
display instead the information sent to the cell phone. After
reviewing the images on the big screen, the user may invoke a
messaging application--still on the big screen--to respond with
comments back to the friend. With another operation of the UI
control, the big screen then resumes the original content
presentation.
[0214] Users may want to use the big screen for many such
operations, such as viewing pictures and videos, video messaging,
reading, control/set-up, etc. The big screen becomes an extension
of the cell phone's user interface. Content delivered to cell
phones can be authored with this capability in mind, e.g.,
integrating a Screen Transfer button into the user interface that
controls the content.
[0215] In this and other of the detailed arrangements, screen
switching can be facilitated by utilizing cloud resources for most
of the associated processing (e.g., game play, user interface
operation, etc.). The cloud resource receives user input from UI
controls on big- and small-screen devices, and dynamically produces
responsive MPEG streams that are sent to destination devices and
rendered to the user. The user issuing a command on, e.g., a cell
phone, quickly sees a responsive screen display--as if the cell
phone is responding to the user command. In fact, it is the cloud
processing that is responding; the user is simply watching a video
of a remotely-authored response. By performing processing in the
cloud, and using the cell phone (or big screen processor) simply as
an input-output peripheral, switching screens becomes easy. The
MPEG stream authored in the cloud, responsive to user input, is
simply routed to a desired local device.
[0216] Returning to the World of Warcraft game, the user controls
the program as is customary. However, the user's input is sent to
the cloud processor, which interacts with the game and feeds a
responsive MPEG stream back to the user's PC. When the user wants
to take the game onto the bus, the destination for the remotely
computed MPEG stream is simply switched to the user's cell
phone.
[0217] In the case of viewing pictures (e.g. JPEG images) sent by a
friend to the user's cell phone, the JPEG imagery is decompressed
and presented as frames of video sent to the cell phone. A single
picture is continuously rendered until the user operates a user
interface control to advance to the next picture. This command is
relayed to the cloud processor, which then presents the next
picture as a series of video frames. When the user wants to switch
to the big display for viewing, the MPEG stream is simply re-routed
to the desired display.
[0218] By such arrangements, users can switch between small- and
big-screen presentations of content, and--if desired--may interrupt
the usual linear unfolding of entertainment content by electing to
become actively involved in content-related activities.
Additional Information
[0219] Google recently announced Google Voice, which offers a
number of improvements to traditional telephone systems. Vonage and
Skype also offer advanced telephony features. Such features can be
used in conjunction with application of the present technology.
[0220] For example, such a service can establish rules governing
how the user's phone may be employed to convey media reminders. The
service can be arranged to permit delivery of television program
reminders to the user only between the hours of 8 pm and 10 pm on
Monday-Thursday, and between 9 am and 11 pm on Friday-Sunday, but
not if the user's current location is determined to be at a movie
theatre or at work, etc.
[0221] Other features of Google Voice can be employed as well. One
is locating the user. If a user sets Google Voice to ring phones at
her office, residence, and beach house, and the user answers a call
on the beach house phone, location data for the user is thereby
generated. This information can be used with the location-based
services detailed herein (as well as other location-based
services).
[0222] The voice to text transcription services offered by Google
Voice can be employed to transcribe the audio of primary or
auxiliary content to text, which can be provided to the user by
known arrangements (email, SMS texting, FAX, etc.). For some usage
scenarios, text is a better form of data than audio, as the user
can skim or study different parts depending on their interest.
[0223] Privacy concerns arise whenever user information is
involved. Naturally, any implementation of the present technology
should pay appropriate regard to protecting user privacy. In some
arrangements the user is given the opportunity to share more or
less information, thereby increasing or decreasing functionality of
the different systems detailed.
[0224] Devices other than cell phones can be used in connection
with the described arrangements. In some embodiments, information
and content is routed directly to such devices. In others, a cell
phone receives the data, and relays it to other devices (e.g.,
nearby devices, or devices associated with a common network), such
as by WiFi, Bluetooth or Bonjour.
[0225] The user's profile data can include data indicating a subset
of the television programming universe of interest (or not of
interest) to the user. In one embodiment, this profile data takes
the form of channels in the EPG (or programs in the Program
Directory Database) that are to be included or excluded. (ESPN may
be "in," Home Shopping Network may be "out.") Profile data for a
user can also indicate social groups of which the user is a member,
such as a fantasy football league or a Facebook group. Not just the
fact of membership, but additional information about the group, its
membership, and its activities, can be used to help identify
primary and auxiliary content of potential interest. (If a user's
fantasy football team includes players from four NFL teams, the
user may be interested in receiving text alerts from the home TiVo
system whenever any of those four teams plays.)
[0226] Although little has been said about advertisers, they
doubtless will have a role to play. One is serving in the
traditional role of an underwriting sponsor for programming.
Another is as a provider of auxiliary content, including
applications.
[0227] Consider a pizza chain that offers a discount application
downloadable from the Apple iPhone App store. The application
provides a $10 discount off a $20 pizza order when a viewer has
watched certain content sponsored by the pizza chain. The cell
phone senses the rendering of the sponsored content to the
viewer--qualifying the viewer for the discount. Since the cell
phone knows the user's location, it can identify the nearest branch
of the pizza store, send a viewing confirmation to that store, and
arrange for payment and delivery.
[0228] Certain embodiments of the present technology make use of
inferences. Inferences can have probabilistic results: e.g., a
system may conclude there is a 60% chance the user is watching the
Seahawks game, and a 40% chance the user is watching the
Trailblazers game. Choices for auxiliary content can be similarly
weighted. For example, three of five options presented to the user
by a menu of second screen content may relate to Seahawks or
football; two of the five may relate to Trailblazers or
basketball.
[0229] In some embodiments, determinations about a user's viewing
activity--at home and away--are tracked and collected in a data
store, e.g., a disk or memory connected to a user's home network,
or maintained by a service provider, such as Nielsen, Google, or
Comcast. This data store can be a hub about which auxiliary content
determinations for the user are made. In some arrangements,
information about auxiliary content chosen by the user can also be
included. This collected data can serve as a source for profile
data, and to help discern the user's activities in future contexts
that may otherwise be ambiguous.
[0230] With appropriate permissions, such information may be
shared--in real time, or occasionally--with content providers and
other parties, so that they can offer tailored auxiliary content
for that user's consumption. In some embodiments the information is
shared only with the entities involved in delivering particular
content to the user. For example, information about the user's
viewing of ESPN programming may be shared only with ESPN. In other
embodiments the information is shared with a broader class of
entities. This latter arrangement, for example, can allow CBS, NBC,
ABC and FOX to offer auxiliary content corresponding to an ESPN
football game.
[0231] (Such collected information may also be shared with audience
measurement enterprises.)
[0232] Different networks may all have different strategies for the
second screen. Fox, NBC, ESPN may all have different auxiliary
content for similar primary content.
[0233] While the specification discusses estimating a program that
the user may be watching (or may watch in the future), several
programs can be similarly estimated. If the user is asked for
confirmation, she may identify one of several as being watched.
[0234] While this specification earlier noted its relation to the
assignee's previous patent filings, it bears repeating. These
disclosures should be read in concert and construed as a whole.
Applicants intend that features in each be combined with features
in the others. Thus, for example, arrangements employing
widget-related technology as detailed in application 61/150,235 may
be implemented to also include features and arrangements detailed
in the present application--and vice versa. Audio sampling an
airport television monitor to trigger a DVR back home to record the
same or a preceding program, as detailed in application Ser. No.
12/271,772, can likewise query a crowd-sourced database to identify
related auxiliary content as detailed in the present specification.
Pushing various auxiliary content to a cell phone through which a
user can scroll with arrow keys, as detailed in application Ser.
No. 12/484,115, can be employed in systems using the present
application's circumstance-based guess about the content to which
the user is currently being exposed, as detailed in the present
application. The referral of some content recognition tasks, or
component tasks, to outside service providers--possibly on a
reverse auction basis, as detailed in application Ser. No.
12/484,115--can similarly be employed in embodiments of the
presently-described technology. Etc., etc. Thus, it should be
understood that the methods, elements and concepts disclosed in the
present application be combined with the methods, elements and
concepts detailed in those related applications. While some have
been particularly detailed in the present specification, many have
not--due to the large number of permutations and combinations.
However, implementation of all such combinations is straightforward
to the artisan from the provided teachings.
[0235] DVRs are usually home-based devices. But they need not be
so. Embodiments of the present technology can use all manner of
recording devices--wherever located. (Cablevision is offering a
consumer DVR service where the actual recording is done at a
head-end in a cable distribution system.)
[0236] While FIG. 1 shows the second screen auxiliary content as
being conveyed separately than the primary content, in other
arrangements they can be conveyed together, or using the same
distribution system.
[0237] In some implementations, the user's proximity to other
people can be used in estimating the user's activity. For example,
if the user is in proximity to buddies from an after-work
basketball league, this factor may make it more likely that the
user is watching a basketball game (if the month is March) or a
football game (if the month is November). In contrast, if the user
is in proximity with his wife, and it is a Monday--Thursday
evening, this factor may suggest that the user is watching the
Daily Show on Comedy Central. Proximity can be sensed
electronically, e.g., by Bluetooth signals, by comparison of
location data, etc.
[0238] As indicated, the meaning of physical proximity depends on
the requirements of a particular implementation. Physically
proximate can mean within a certain distance (e.g., 10 yards, or
100 yards), within a common dwelling, within line of sight, served
by a common network, within range of a short range wireless service
like WiFi or Bluetooth, etc.--depending on the application.
[0239] The specification refers to television programs. But this is
a shorthand that is meant to encompass any video
content--regardless of how produced or delivered. For example, a
television program can be a traditional program--distributed
simultaneously across multiple different networks to plural
consumers. Or it can be content distributed using other models,
such as web casts, YouTube, Hulu, Video on Demand (e.g., Netflix),
Boxee, DVD, theatrical presentations, etc.
[0240] Looking forward, content programmers may create libraries of
enhanced media experiences, each customized to individual users,
comprising a basic content theme (e.g., a basketball game) in which
complementary experiences (auxiliary content) are dynamically
selected by and navigated by the user. The paradigm of a television
screen and a cell phone may be eclipsed by more immersive rendering
systems and by more capable user interfaces. One user may choose a
Howard Cosell avatar to narrate a Jets football game, and may
engage the avatar in interactive spoken dialog to clarify
particular points. Another may simply chose sideline commentary by
a graying Joe Namath.
[0241] Reference was made to a Program Directory Database. Once the
data is compiled by the detailed automated techniques, it can be
presented, used and disseminated according to techniques discussed
elsewhere in this specification in connection with EPGs, and
otherwise--as known from existing EPG prior art. Prior art EPG
technologies are not detailed in this specification; the reader is
referred to the existing literature for further information. (This
literature includes Davis et al U.S. Pat. Nos. 5,559,548,
5,576,755, 5,585,866, 5,589,892, 5,635,978, 5,781,246, 5,822,123,
5,986,650, 6,016,141, 6,141,488, 6,275,268, 6,275,648, 6,331,877,
6,418,556, 6,604,240, and 6,771,317, and U.S. Pat. No. 7,263,202 to
the present inventors concerning use of watermarking in connection
with EPGs.)
[0242] While the present technology is described in the context of
providing auxiliary content to complement primary video content,
the same principles are applicable elsewhere, e.g., in other
devices that respond to circumstances and/or their environment.
Thus, for example, auxiliary content can be associated with any
object, including physical objects. A user taking a picture of the
Eiffel Tower, or a carton of milk, may be presented with a menu of
associated content using principles detailed herein.
[0243] It will be recognizing that certain of the above-detailed
arrangements are specialized cases of a larger
concept--technologies that help present content responsive to a
user's environment.
[0244] Some researchers foresee the day when all of our daily
experiences are captured in digital form. Indeed, Gordon Bell at
Microsoft has compiled a digital archive of his recent existence
through his technologies CyberAll, SenseCam and MyLifeBits.
Included Bell's archive are recordings of all telephone calls,
video of daily life, captures of all TV and radio consumed, archive
of all web pages visited, map data of all places visited,
polysomnograms for his sleep apnea, etc., etc., etc. (For further
information see, e.g., Bell, A Digital Life, Scientific American,
March, 2007; Gemmell, MyLifeBits: a personal database for
everything, Microsoft Research Technical Report MSR-TR-2006-23;
Gemmell, Passive Capture and Ensuing Issues for a Personal Lifetime
Store, Proceedings of The First ACM Workshop on Continuous Archival
and Retrieval of Personal Experiences (CARPE '04), pp. 48-55;
Wilkinson, Remember This, The New Yorker, May 27, 2007. See also
the other references cited at Gordon's Bell's Microsoft Research
web page, and the ACM Special Interest Group web page for CARPE
(Capture, Archival & Retrieval of Personal Experiences) web
page.)
[0245] A more practical example is a cell phone that captures
aspects of a user's daily experiences through frequent sampling of
audio (e.g., five thousand samples per second, continuously; or ten
thousand samples per second for sequences of twelve seconds every
minute, etc.). These samples can be sent to the user's home for
further query at the user's explicit request, or they may accompany
the user and provide data on which other operations can be
based.
[0246] Consider a user who hears a song of interest while at a
restaurant. At a later time she physically or wirelessly links her
cell phone with her laptop, which runs the Google Toolbar. (Or the
cell phone may itself run the Google Toolbar.) While the Google
Toolbar maintains a history of past searches, the cell phone
provides a history of past experiences. Using a user interface for
this task provided by the Google Toolbar, the user quickly
navigates through audio samples from the day (e.g., by timestamp,
GPS location tag, etc.) and finds the sample taken at the
restaurant. The Google Toolbar processes the identified audio and
returns metadata for the song, such as title name, artist and
album. However, unlike competing services (such as Shazam), the
sampled history allows the user to mine past experiences--in some
cases investigating captured information that didn't become of
interest until later.
[0247] In another arrangement all of the sampled audio is provided
to Google (as it is captured, or later). Google initiates searches,
and annotates the audio data with (or otherwise provides) results,
such as metadata; speech-to-text data; links to Wikipedia and other
web resources corresponding to audibly discernible words--and
concepts abstracted from the words by NLP, etc. When the user later
reviews the audio data, this enhancement information is immediately
available.
[0248] Crowdsourcing, and location data can be employed to good
effect. For example, Google may identify a dozen other patrons who
were in the restaurant at the same time as the user, by reference
to GPS data and timestamps. Audio captured by those patrons can be
considered in conjunction with audio captured by the user, to more
completely characterize the user's audio environment (e.g., an
uninterrupted stream of audio may be assembled from the occasional
audio samples captured by the different phones). Google can analyze
this augmented patchwork of audio to yield more and/or better
information, and make this information available to users, e.g., in
accordance with the respective time period that each was in the
restaurant.
[0249] In another implementation, Google may make available results
from analysis of other patrons' audio data--either searches that
the patrons expressly requested, or analyses that Google conducted
autonomously. If a person at the next table ordered a chocolate
souffle, Google's search of the term--which it recognized and
combined with the restaurant name in one of its data mining
efforts--may reveal the restaurant's recipe for that dessert as
published in Gourmet magazine three years ago. Such information may
be included among the results presented to the user, even though it
was based on audio captured at another patron's table. In like
fashion, the restaurant's menu may be reconstructed from the
repeatedly-spoken entree names--contextually recognized by the
analysis software (e.g., as following the audio clue "May I take
your order?") and made available to all users known--by GPS
data--to have visited the restaurant (whether or not they captured
audio there).
[0250] In still other arrangements, captured audio is fed to Google
continuously, and analyzed immediately. Google streams the results
of its analyses back to the users' cell phones, where they are
buffered for review. (Some analyses may take longer than others, so
the returning data flow may not be strictly chronological, but the
returning data may each be associated with a timestamp indicating
the excerpt of audio to which it corresponds, so the information
can be presented in appropriate order.) At any point a user can
scroll back through their experience (perhaps using a user
interface suited for temporally arranged data, such as the "cover
flow" interface used by Apple in the iPod and detailed in its
patent publication 20080174570) to examine captured information,
and to review corresponding information returned by Google.
[0251] (In the arrangements just-detailed, the fact that the
patrons are in a common environment (i.e., the restaurant) can be
ascertained by looking up their respective latitude/longitude
coordinates in a geolocation database, such as the GeoPlanet
service noted above. To a low level of functional granularity,
e.g., to the level of street address or business name, the patrons'
latitude/longitude coordinates all correspond to the same
location.)
[0252] Various references have been made to Bonjour. Bonjour is
Apple's trade name for its implementation of Zeroconf--a service
discovery protocol. Bonjour locates devices on a local network, and
identifies services that each offers, using multicast Domain Name
System service records. This software is built into the Apple MAC
OS X operating system, and is also included in the Apple "Remote"
application for the iPhone, where it is used to establish
connections to iTunes libraries via WiFi. (TiVo uses Bonjour to
locate digital video recorders and shared media libraries.)
[0253] Bonjour services are implemented at the application level
largely using standard TCP/IP calls, rather than in the operating
system. Apple has made the source code of the Bonjour multicast DNS
responder--the core component of service discovery--available as a
Darwin open source project. The project provides source code to
build the responder daemon for a wide range of platforms, including
Mac OS X, Linux, *BSD, Solaris, and Windows. In addition, Apple
provides a user-installable set of services called Bonjour for
Windows, as well as Java libraries.
[0254] As indicated, Bonjour can be employed to serve various
functions in implementations of the present technology. For
example, a DVR can use Bonjour to periodically (e.g., every second
or every several seconds) send out on a home network subnet one or
more packets identifying the programming it is currently rendering
(or recording), and identifying auxiliary content corresponding to
that programming. It may also identify its own location, its
registered user(s), and functions/services it offers, as well as
detailing other programming choices that are currently available
according to EPG data, and according to listings of previous
recordings. These Bonjour broadcasts all include the DVR's IP
address, so that responding systems can request from the DVR
further information or content. Likewise, a cell phone can
similarly transmit information identifying its status, the content
it is rendering, its location, its available functions/services,
profile data of the user, etc.
[0255] Other software can alternatively, or additionally, be used
to exchange data between devices. Examples include Universal Plug
and Play (UPnP) and its successor Devices Profile for Web Services
(DPWS). These are other protocols implementing zero configuration
networking services, through which devices can connect, identify
themselves, advertise available capabilities to other devices,
share content, etc.
[0256] The artisan is presumed to be familiar with such software
tools.
[0257] It will be recognized that certain embodiments of the
present technology allow plural viewers to have individual viewing
experiences on individual screens, without interfering with a
collective group viewing experience on a shared screen. The net
result is an enhanced social experience, in which the individuals
can contribute different perspectives to a robust group
experience.
Concluding Notes
[0258] Having described and illustrated the principles of our
inventive work with reference to illustrative examples, it will be
recognized that the technology is not so limited.
[0259] For example, while reference has been made to cell phones,
it will be recognized that this technology finds utility with all
manner of devices--both portable and fixed. PDAs, organizers,
portable music players, desktop computers, wearable computers,
servers, etc., can all make use of the principles detailed herein.
Particularly contemplated cell phones include the Apple iPhone, and
cell phones following Google's Android specification (e.g., the G1
phone, manufactured for T-Mobile by HTC Corp.). The term "cell
phone" should be construed to encompass all such devices, even
those that are not strictly-speaking cellular, nor telephones.
[0260] (Details of the iPhone, including its touch interface, are
provided in Apple's published patent application 20080174570.)
[0261] For expository convenience, concepts noted in this
specification are usually described singly. However, these concepts
can be combined in nearly unlimited combinations (including
concepts detailed in the incorporated-by-reference documents),
e.g., so that a cell phone or system can employ multiple of the
described features detailed. Such combinations expressly fall
within the disclosure of this application.
[0262] While the specification and drawings describe data as being
stored in certain devices, this is illustrative only. Data can be
stored anywhere (even in "cloud" storage), and made available
whenever and wherever needed. Similarly, various operations are
described as being performed by particular devices. However,
processing too can be performed anywhere, and results made
available wherever needed. Thus, references to a cell phone
performing an operation, or data being stored in a DVR, are
illustrative only. Other arrangements can of course be used.
[0263] The present assignee has published a great deal of
information about related systems and technologies in the patent
literature--a body of work with which the artisan is presumed to be
familiar. Included are U.S. Pat. Nos. 6,590,996, 6,947,571, and
published patent application 20070156726.
[0264] While certain arrangements employ watermark technologies for
content identification or signaling, the same or similar
functionality can often be realized with fingerprint-based
approaches, or out-of-band technologies (e.g., VBI signaling). In
some implementations, bar coding or other overt symbologies, RFID
chips, and other identification technologies may be employed.
[0265] Although disclosed as complete systems, subcombinations of
the detailed arrangements are also separately contemplated.
[0266] While this specification has detailed particular ordering of
acts and particular combinations of elements, in the illustrative
embodiments, it will be recognized that other contemplated methods
may re-order acts (possibly omitting some and adding others), and
other contemplated combinations may omit some elements and add
others, etc.
[0267] The design of cell phones and other devices referenced in
this disclosure is familiar to the artisan. As indicated above,
each typically includes one or more processors, one or more
memories (e.g. RAM), storage (e.g., a disk or flash memory), a user
interface (which may include, e.g., a keypad, a TFT LCD or OLED
display screen, touch or other gesture sensors, a camera or other
optical sensor, a microphone, etc., together with software
instructions for providing a graphical user interface),
interconnections between these elements (e.g., buses), and one or
more interfaces for communicating with other devices (which may be
wireless, such as GSM, CDMA, W-CDMA, CDMA2000, TDMA, EV-DO, HSDPA,
WiFi, WiMax, or Bluetooth, and/or wired, such as through an
Ethernet local area network, a T-1 internet connection, etc).
[0268] The processes and system components detailed in this
specification may be implemented as instructions for computing
devices, such as instructions for a variety of general purpose
programmable processors including microprocessors (e.g., the ARM
series of 32-bit RISC processors), graphics processing units
(GPUs), digital signal processors (e.g., the Texas Instruments
TMS320 series of devices), etc. These instructions may be
implemented as software, firmware, etc. These instructions can also
be implemented in various forms of processor circuitry, including
programmable logic devices, FPGAs (e.g., the Xilinx Virtex series
devices), and application specific circuits--including digital,
analog and mixed analog/digital circuitry. Execution of the
instructions can be distributed among processors and/or made
parallel across processors within a device or across a network of
devices. Transformation of content signal data may also be
distributed among different processor and memory devices.
References to "processors" or "modules" should be understood to
refer to functionality, rather than requiring a particular form of
implementation.
[0269] Software instructions for implementing the detailed
functionality can be readily authored by artisans from the
descriptions provided herein, e.g., written in C, C++, Visual
Basic, Java, Python, Tcl, Perl, Scheme, Ruby, etc. Cell phones,
DVRs and other devices according to the present technology can
include software modules for performing the different functions and
acts.
[0270] Typically, each device includes operating system software
that provides interfaces to hardware devices and general purpose
functions, and also includes application software which can be
selectively invoked to perform particular tasks desired by a user.
Known browser software, communications software, and media
processing software can be adapted for many of the uses detailed
herein. Software is commonly stored as instructions in one or more
data structures conveyed by tangible media, such as magnetic or
optical discs, memory cards, ROM, etc. Some embodiments may be
implemented as embedded systems--a special purpose computer system
in which the operating system software and the application software
is indistinguishable to the user (e.g., as is commonly the case in
basic cell phones). The functionality detailed in this
specification can be implemented in operating system software,
application software and/or as embedded system software.
[0271] Different of the functionality can be implemented on
different devices. For example, in a system in which a cell phone
communicates with a remote server, different tasks can be performed
exclusively by one device or the other, or execution can be
distributed between the devices. Identifying content is but one
example of such a task. Thus, it should be understood that
description of an operation as being performed by a device is not
limiting but exemplary; performance of the operation by another
device, or shared between devices, is also contemplated.
[0272] Operations need not be performed exclusively by
specifically-identifiable hardware. Rather, some operations can be
referred out to other services (e.g., cloud computing), which
attend to their execution by still further, generally anonymous,
systems. Such distributed systems can be large scale (e.g.,
involving computing resources around the globe), or local (e.g., as
when a portable device identifies nearby devices through Bluetooth
communication, and involves one or more of the nearby devices in a
task).
[0273] It will be recognized that the detailed processing of
content signals (e.g., image signals, audio signals, etc.) includes
the transformation of these signals in various physical forms.
Images and video (forms of electromagnetic waves traveling through
physical space and depicting physical objects) may be captured from
physical objects using cameras or other capture equipment, or
generated by a computing device. Similarly, audio pressure waves
traveling through a physical medium may be captured using an audio
transducer (e.g., microphone) and converted to an electronic signal
(digital or analog form). While these signals are typically
processed in electronic and digital form to implement the
components and processes described above, they may also be
captured, processed, transferred and stored in other physical
forms, including electronic, optical, magnetic and electromagnetic
wave forms. The content signals are transformed in various ways and
for various purposes during processing, producing various data
structure representations of the signals and related information.
In turn, the data structure signals in memory are transformed for
manipulation during searching, sorting, reading, writing and
retrieval. The signals are also transformed for capture, transfer,
storage, and output via display or audio transducer (e.g.,
speakers).
[0274] Reference was made to GPS data. This should be understood as
a short-hand for any location-related information; it need not be
derived from the Global Positioning System constellation of
satellites. For example, another technology that is suitable for
generating location data relies on radio signals that are that
commonly exchanged between devices (e.g., WiFi, cellular, etc.).
Given several communicating devices, the signals themselves--and
the imperfect digital clock signals that control them--form a
reference system from which both highly accurate time and position
can be abstracted. Such technology is detailed in laid-open
international patent publication WO08/073,347. The artisan will be
familiar with several other location-estimating techniques,
including those based on time of arrival techniques, and those
based on locations of broadcast radio and television towers (as
offered by Rosum) and WiFi nodes (as offered by Skyhook Wireless,
and employed in the iPhone), etc.
[0275] While geolocation data commonly comprises latitude and
longitude data, it may alternatively comprise more, less, or
different data. For example, it may include orientation
information, such as compass direction provided by a magnetometer,
or inclination information provided by gyroscopic or other sensors.
It may also include elevation information, such as provided by
digital altimeter systems.
[0276] Reference was made to touchscreen interfaces--a form of
gesture interface. Another form of gesture interface that can be
used in embodiments of the present technology operates by sensing
movement of a cell phone--by tracking movement of features within
captured imagery. Further information on such gestural interfaces
is detailed in Digimarc's U.S. Pat. No. 6,947,571.
[0277] As noted, watermark technology can be used in various
embodiments. Technology for encoding/decoding watermarks is
detailed, e.g., in Digimarc's U.S. Pat. Nos. 6,614,914, 6,590,996
and 6,122,403; in Nielsen's U.S. Pat. Nos. 6,968,564 and 7,006,555;
and in Arbitron's U.S. Pat. Nos. 5,450,490, 5,764,763, 6,862,355,
and 6,845,360.
[0278] Digimarc has various other patent filings relevant to the
present subject matter. See, e.g., patent publications 20070156726,
20080049971, and 20070266252, and pending application Ser. No.
12/125,840 by Sharma et al, filed May 22, 2008. Content
fingerprinting can also be used in various embodiments. Examples of
audio fingerprinting are detailed in patent publications
20070250716, 20070174059 and 20080300011 (Digimarc), 20080276265,
20070274537 and 20050232411 (Nielsen), 20070124756 (Google), U.S.
Pat. No. 7,516,074 (Auditude), and U.S. Pat. No. 6,990,453 and U.S.
Pat. No. 7,359,889 (both Shazam). Examples of image/video
fingerprinting are detailed in patent publications U.S. Pat. No.
7,020,304 (Digimarc), U.S. Pat. No. 7,486,827 (Seiko-Epson),
20070253594 (Vobile), 20080317278 (Thomson), and 20020044659
(NEC).
[0279] The figures are meant to be exemplary and not limiting. For
example, they sometimes show multiple databases, when a single can
be used (and vice-versa). Likewise, some links between the depicted
blocks are not shown--for clarity's sake.
[0280] Contextual data can be used throughout the detailed
embodiments to further enhance operation. For example, a process
may depend on whether the originating device is a cell phone or
another type of device; whether the ambient temperature is 30 or
80; the location of, and other information characterizing the user;
etc.
[0281] It is impossible to expressly catalog the myriad variations
and combinations of the technology described herein. Applicants
recognize and intend that the concepts of this specification can be
combined, substituted and interchanged--both among and between
themselves, as well as with those known from the cited prior art.
Moreover, it will be recognized that the detailed technology can be
included with other technologies--current and upcoming--to
advantageous effect.
[0282] To provide a comprehensive disclosure without unduly
lengthening this specification, applicants incorporate by reference
the documents and patent disclosures referenced in this
specification. (Such documents are incorporated in their
entireties, even if cited above in connection with specific of
their teachings.) These references disclose technologies and
teachings that can be incorporated into the arrangements detailed
herein, and into which the technologies and teachings detailed
herein can be incorporated.
[0283] The particular combinations of elements and features in the
above-detailed embodiments are exemplary only; the interchanging
and substitution of these teachings with other teachings in this
and the incorporated-by-reference documents are also expressly
contemplated and intended.
[0284] A few of the arrangements particularly contemplated by
applicants include:
[0285] A. A method comprising the acts:
[0286] accessing location data indicating a location of a cell
phone;
[0287] accessing profile data relating to television viewing
preferences of a user of the cell phone; and
[0288] by reference to at least the location and profile data,
making an estimate of particular video content the user may
currently be watching, or may watch in the future.
[0289] Method A that includes presenting supplemental information
to the user from the cell phone, the supplemental information being
related to the estimated video content.
[0290] Method A that further includes inquiring, through a UI of
the cell phone, whether the user is watching the particular video
content.
[0291] Method A1 that includes, if the user responds affirmatively,
providing supplemental information to the user from the cell phone,
the supplemental information being related to the particular
program.
[0292] Method A2 wherein the user views the supplemental
information on a screen of the cell phone, while also viewing the
particular video content on a screen of a television.
[0293] Method A2 wherein the user views the supplemental
information on a screen of the cell phone without also viewing the
particular video content on a screen of a television.
[0294] Method A that includes obtaining EPG data identifying plural
television programs currently available in a media market
encompassing the indicated location, and assessing the identified
television programs in light of the profile data to estimate a
particular television program that the user may currently be
watching, or may watch in the future.
[0295] Method A wherein the profile data includes data related to a
previous television viewing history of the user.
[0296] Method A that includes accessing the location data from a
location module of the cell phone, and making the estimate of the
particular television program using a processor in the cell
phone.
[0297] Method A that further includes sending information about the
estimate to a device in a home network associated with the
user.
[0298] B. A method comprising the acts:
[0299] accessing location data indicating a location of a cell
phone;
[0300] accessing profile data relating to television viewing
preferences of a user of the cell phone;
[0301] by reference to at least the location and profile data,
identifying one or more upcoming television programs that the user
may want to view; and
[0302] alerting the user to the upcoming television program(s)
using the cell phone.
[0303] C. A method comprising the acts:
[0304] determining that a television and a cell phone are in
relative proximity;
[0305] accessing profile data relating to television viewing
preferences of a user of the cell phone; and
[0306] based on the foregoing, employing a user interface of the
cell phone to provide supplemental information to the user relating
to television programming.
[0307] Method C that includes:
[0308] inquiring, through a user interface of the cell phone,
whether the user is watching the identified television program;
and
[0309] if the user responds affirmatively, providing the
supplemental information.
[0310] Method C in which the determining makes reference to
location data about a location of the cell phone.
[0311] Method C in which the determining makes reference to
location data about a location of the television.
[0312] Method C in which the determining makes reference to audio
or image information captured by the cell phone.
[0313] D. A method comprising the acts:
[0314] by reference to user profile information, and EPG data,
estimating a user's television viewing activity;
[0315] using a cell phone to sense audio or image data from a user
environment; and
[0316] reassessing the estimate based on the sensed data.
[0317] Method D in which the estimating includes estimating one or
more television programs that the user may be watching.
[0318] Method D in which the estimating includes estimating whether
the user is watching a particular television program.
[0319] Method D that includes reassessing the estimate repeatedly
over time.
[0320] E. A method comprising the acts:
[0321] accessing user profile data;
[0322] accessing EPG data;
[0323] sensing audio or image data from a user environment; and
[0324] by reference to the foregoing data, estimating a television
program that the user may be watching.
[0325] Method E that includes:
[0326] inquiring, through a user interface of a portable device,
whether the user is watching the estimated television program;
and
[0327] if the user responds affirmatively, providing to the
portable device supplemental information relating to the television
program.
[0328] F. A method comprising the acts:
[0329] programming a DVR to record a television program; and
[0330] in advance of a scheduled time for the program, sending a
reminder to a cell phone associated with the DVR.
[0331] F1. Method F that includes determining that the cell phone
is remote from a home geography, determining when the program is
available in that remote geography, and sending the reminder in
advance of the program availability in the remote geography.
[0332] G. A method comprising the acts:
[0333] programming a DVR to record a television program; sending to
a cell phone associated with the DVR a reminder related to the
television program; and
[0334] in response to a user command entered through a UI of the
cell phone, presenting at least part of the television program on a
screen of the cell phone.
[0335] H. A method involving a cell phone and a television system,
comprising the acts:
[0336] identifying an upcoming television program of interest to a
user, using an electronic user interface associated with the
television system; and
[0337] sending to a user's cell phone a reminder related to the
television program.
[0338] Method H that further includes, in response to a user
command entered through a user interface of the cell phone,
presenting at least part of the television program on a screen of
the cell phone.
[0339] Method H that includes sending at least part of the
television program to one or more other cell phones with which the
user has an association.
[0340] Method H that includes sending at least part of the
television program to said other cell phone(s) by wireless, such as
WiFi or Bluetooth.
[0341] Method H that includes sending at least part of the
television program to one or more other cell phones that are
physically proximate to the user's cell phone.
[0342] Method H that includes sending at least part of the
television program to one or more other cell phones that are
registered in association with the user's cell phone.
[0343] J. A method involving a user's cell phone, comprising the
acts:
[0344] identifying a television program in which the user is or may
be interested; and
[0345] inquiring, through a UI of the cell phone, whether the user
is watching the identified television program.
[0346] Method J that includes, if the user responds affirmatively,
providing to the cell phone supplemental information relating to
the identified program.
[0347] Method J that further includes sensing audio or image data
using the cell phone, and inferring from said data if the user has
stopped watching the identified television program.
[0348] Method J that includes sensing movement of the cell phone,
and inferring from the sensed audio or image data, and the sensed
movement, that the user has moved away from the television.
[0349] Method J1 that includes pausing the television display, so
that the program can be resumed when the user returns.
[0350] K. A method comprising the acts:
[0351] estimating a user's current television viewing activity, by
reference to ambiguous data previously available; and
[0352] obtaining further, current data to help confirm or refute
the estimate, from a user cell phone.
[0353] Method K in which the further data comprises user input
confirming or refuting the estimate.
[0354] Method K in which the further data comprises audio or image
data sampled by the cell phone.
[0355] Method K that further includes providing, to a user cell
phone, auxiliary content related to the estimated television
viewing activity.
[0356] L. A method involving a user's cell phone, comprising the
acts:
[0357] before a television program has completed, sensing data
suggesting that the user has stopped viewing; and
[0358] taking an action related to the television program, to
lessen an impact of the user's stopped viewing.
[0359] Method L that includes pausing the television display, so
that the program can be resumed when the user returns to the
television viewing area.
[0360] Method L that includes sending information to the user cell
phone relating to an excerpt of the television program occurring
during the user's absence.
[0361] M. A method involving a user's cell phone, comprising the
acts:
[0362] from a data store associated with a digital video recorder,
accessing wireless contact information for the user, and video
program data related to the user;
[0363] generating an alert notification for the user based at least
in part on the video program data; and
[0364] transmitting the alert notification to the user, employing
the wireless contact information.
[0365] Method M wherein the alert notification includes data
permitting the user to watch associated video on a screen of the
cell phone.
[0366] Method M wherein the alert notification includes data
permitting the user to run a software widget related to a video
program of interest to the user.
[0367] Method M wherein the digital video recorder is coupled to a
home network, and the data store is also coupled to the home
network.
[0368] N. A method involving a user's cell phone, comprising the
acts:
[0369] presenting a video program on a display screen of a video
system;
[0370] recalling registration data, the registration data
associating together the cell phone and the video system; and
[0371] by reference to the registration data, transmitting
auxiliary content to the cell phone to complement the video program
presented on the display screen.
[0372] Method N wherein the video system includes user data
associated with plural users, the method further including:
[0373] discerning which of the plural users is likely watching the
presented video; and
[0374] transmitting the auxiliary content to a cell phone
associated with said discerned user.
[0375] Method N wherein:
[0376] the user data comprises, for at least one of said users,
profile information or video viewing information; and
[0377] the discerning comprises assessing information about the
video program in light of the user data, to discern which of the
users is likely watching the presented video.
[0378] Method N that includes sending a message to the cell phone
alerting the discerned user of the availability of auxiliary
content, prior to transmitting the auxiliary content.
[0379] Method N1 wherein the message includes information
contributed by a proprietor of the presented video program.
[0380] P. A method comprising the acts:
[0381] launching a second screen application on a user's cell
phone;
[0382] determining a logical association between the cell phone and
a television system;
[0383] as a consequence, presenting second screen auxiliary content
on a screen of the cell phone, the second screen auxiliary content
being related to content being presented on a screen of the
television system.
[0384] Method P that includes determining the logical association
by checking a data registry, the data registry having information
associating the cell phone with the television system.
[0385] Method P wherein the content being presented on the screen
of the television system was earlier distributed, and was recorded
by the television system for time-shifted viewing.
[0386] Method P wherein the second screen auxiliary content is also
related to a geographical location of the user.
[0387] Method P that wherein the second screen auxiliary content is
selected based in part on user preference data stored in a
memory.
[0388] R. A computer readable storage medium having instructions
stored thereon causing a user's cell phone to consult with a
television system associated with that user, and to present
information on a screen of the cell phone, the presented
information including a title of a video program being processed by
the television system.
[0389] Medium R that also includes instructions for receiving
auxiliary content data associated with the video program, and
presenting the auxiliary content data to the user.
[0390] Medium R that also includes instructions for presenting to
the user a menu of plural auxiliary content items associated with
the video program, and receiving user input indicating which of
said plural auxiliary content items should be presented to the
user.
[0391] S. A method comprising the acts:
[0392] identifying, from a list of programming associated with a
digital video recorder, a program of interest to a user;
[0393] determining that the user is at a first location, remote
from a home location; and
[0394] sending to a cell phone of the user a reminder about the
program of interest.
[0395] Method S that also includes determining information about
how the user may access the program at the first location, and
sending said information to the user at the first location.
[0396] Method S1 that includes consulting EPG data corresponding to
video available at the first location.
[0397] Method S that also includes sending information about
auxiliary content to the cell phone, the auxiliary content being
related to the program of interest to the user.
[0398] T. A method comprising the acts:
[0399] presenting video content on a screen of a television system;
and
[0400] pausing the presentation upon a user pause command;
[0401] wherein said user pause command also causes a graphical
control to be presented, by which the user can select auxiliary
content related to the video content.
[0402] Method T wherein the auxiliary content provides background
information relating to a subject presented on the television
screen at a time of said user pause command.
[0403] Method T wherein said graphical control is displayed on the
screen of the television system.
[0404] Method T wherein said graphical control is displayed on the
screen of a user cell phone.
[0405] Method T that includes receiving data corresponding to a
user selection of auxiliary content, and displaying the auxiliary
content on a user cell phone.
[0406] U. A method comprising the acts:
[0407] presenting dynamic video content on a screen of a television
system;
[0408] presenting dynamic auxiliary content on a screen of a cell
phone, the auxiliary content being related to the video content;
and
[0409] pausing both presentations upon a single user pause
command.
[0410] V. A method comprising the acts:
[0411] presenting dynamic video content on a screen of a television
system; and
[0412] sensing that a cell phone has been moved from a rest
position towards a use position;
[0413] wherein said sensing causes the presentation of the video
content on the television system screen to pause.
[0414] Method V wherein the sensing comprises sensing that the cell
phone has been moved from a rest position when a phone call is
incoming.
[0415] W. A method comprising:
[0416] with a first device, sampling data from plural video content
streams;
[0417] by reference to the sampled data, identifying three or more
of said plural content streams;
[0418] by reference to user profile data, identify two or more of
the identified content streams as being of potential interest to a
user;
[0419] presenting excerpts from the two or more streams on a screen
of a cell phone, in spatial proximity; and
[0420] in response to user selection, presenting one of said two or
more streams on the cell phone screen for user viewing.
[0421] Method W wherein the first device comprises the user cell
phone.
[0422] Method W wherein the first device comprises a receiver of
modulated RF signals.
[0423] X. A method employing a first user's cell phone, comprising
the acts:
[0424] receiving instruction from a first user, setting an option
allowing sharing of visual content information between the first
user's cell phone and one or more other cell phones;
[0425] presenting visual content on the first user's cell
phone;
[0426] transmitting content-related data from the first user's cell
phone; and
[0427] presenting the same visual content on a second user's phone,
in synchrony with presentation on the first user's cell phone.
[0428] Method X that includes transmitting content-related data
from the first user's cell phone to one or more other users' cell
phones.
[0429] Method X wherein the visual content is presented on the
second user's phone in a sub-portion of a display screen.
[0430] Method X wherein the transmitted content-related data
identifies a remote computer server from which the visual content
is obtained by both the first and second users' cell phone.
[0431] Method X wherein the transmitted content-related data
comprises compressed video data.
[0432] Method X wherein said content-related data is transmitted by
a data service discovery protocol across a home network, and the
first and second cell phones are both coupled to the same home
network.
[0433] Y. A method including the acts:
[0434] determining a user's location by reference to a portable
device conveyed by the user;
[0435] identifying a television system proximate to the determined
user location; and
[0436] controlling an aspect of the television system's operation
in accordance with profile data corresponding to the user.
[0437] Z. A method comprising the acts:
[0438] identifying first content being rendered to a user while
second, different, content is also being rendered to the user, one
of said content comprising entertainment content presented on a
television screen, another of said content comprising web content
being rendered on a second screen;
[0439] storing data relating to the first and second content in
association in a database;
[0440] thereafter, querying the database with data identifying the
first content, to thereby obtain data identifying the second
content that is associated therewith.
[0441] Method Z that includes associating profile data
corresponding to the user with the data relating to the first and
second content, wherein the querying comprises querying with
profile data of a querying user.
[0442] AA. A method comprising the acts:
[0443] capturing samples of ambient audio with a first portable
device conveyed by a first user;
[0444] capturing samples of ambient audio with a second portable
device conveyed by a second user;
[0445] determining, by reference to location data associated with
said devices, that the first and second devices were in a common
environment when capturing samples of ambient audio;
[0446] combining and analyzing data corresponding to the ambient
audio sampled by the first and second portable devices to yield
associated first information;
[0447] by reference to the first information, obtaining associated
second information from a data structure; and
[0448] providing at least some of the second information to the
first user;
[0449] wherein the information provided to the first user is based,
at least in part, on ambient audio captured with the second
portable device conveyed by the second user.
[0450] Method AA wherein the first information comprises data
identifying a song, and the second information comprises artist
information associated with the identified song.
[0451] Method AA wherein the first information comprises one or
more words, and the second information comprises results of an
internet search based on the first information.
[0452] AB. A method comprising the acts:
[0453] receiving report data from plural distributed computer
nodes, indicating video entertainment content automatically
detected through use of digital watermark or fingerprint technology
at such node;
[0454] from at least certain of said nodes, additionally receiving
scheduling data detailing public availability of the detected video
entertainment content by one or more content distributors; and
[0455] presenting at least certain of said data to a user in the
form of a program-centric directory, detailing source and schedules
by which user-specified video content can be obtained for
viewing.
[0456] Method AB, wherein the program centric directory identifies
at least two types of outlets from which the user-specified video
content can be obtained for viewing, wherein said types of outlets
are selected from the group consisting of a television network, a
web site, and a peer-to-peer network.
[0457] AC. A method comprising the acts:
[0458] at a distributor of video entertainment content, receiving
video entertainment content from a source thereof;
[0459] detecting digital watermark or fingerprint identification
data from the received video entertainment content;
[0460] by reference to the detected identification data, reporting
presence of such content at the distributor to a remote program
directory database;
[0461] also reporting scheduling information to the remote program
directory database, the scheduling information specifying a
schedule by which the video entertainment content is to be made
available to the public;
[0462] wherein such reports allow automatic compilation of a
program directory database usable by the public to identify sources
and schedules for obtaining video entertainment content.
[0463] AD. A data structure, stored on a tangible storage medium,
the data structure causing a processor configured by appropriate
programming instructions to produce a content directory, the
content directory detailing a title of video entertainment content,
and a plurality of sources from which said content can be obtained,
the directory further detailing schedule information detailing
temporal availability of such content, wherein information from
said directory is used to obtain video entertainment content from
one of the sources for presentation to a user on a display
screen.
[0464] AE. A method of transferring video game content from a first
screen to a second screen, wherein one of said screens forms part
of a user cell phone, the first screen has a first processor
associated therewith, and the second screen has a second processor
associated therewith, the method comprising the acts:
[0465] executing video game software on a remote
processor--distinct from the first and second processors;
[0466] converting output from execution of said video game software
into a video stream;
[0467] transmitting the video stream to the first processor, for
display on the first screen;
[0468] receiving user input at the first processor relating to game
play, and transmitting same to the remote processor for responsive
action; and
[0469] in response to user instruction, changing a destination for
the transmitted video stream from the first processor to the second
processor;
[0470] wherein the user can transfer game play between a cell phone
screen and a different screen, during play of a game.
[0471] AF. A system for transferring video entertainment content
from a first screen to a second screen, the system including a cell
phone including one of said screens and an associated processor,
the system further including a second processor associated with the
second screen, the system further comprising a memory containing
instructions for configuring one of said processors to present a
user interface control that can be activated by a user to initiate
transfer of video entertainment content from the first screen to
the second screen, the system further including means, responsive
to said user interface control, for transferring the video
entertainment content from the first screen to the second
screen.
[0472] AG. A method of involving a user in video entertainment
content, comprising the acts:
[0473] presenting video entertainment content to the user;
[0474] receiving user input, submitted through a user cell phone;
and
[0475] adapting the video entertainment content in accordance with
said received user input.
[0476] Method AG, wherein the user input comprises audio.
[0477] Method AG, wherein the user input comprises audio, and the
video entertainment content is adapted by including at least a
portion of said audio in said content.
[0478] Method AG, wherein the user input comprises gestural input
issued by user movement of the cell phone.
[0479] Apparatuses and systems practicing the foregoing methods,
e.g., by use of processors and modules for performing the
enumerated acts.
[0480] Discs, memories, and other tangible media storing
instructions causing one or more computer devices to perform the
foregoing methods.
[0481] In view of the large variety of implementations to which the
disclosed technologies can be put, it should be understood that the
particularly detailed arrangements are exemplary only, and not
should be understood as limiting the scope of the claimed
technology. Rather, we claim all such variations in form and
function as may fall within the scope of the following claims, and
equivalents thereto.
* * * * *