U.S. patent application number 16/825651 was filed with the patent office on 2020-07-09 for embedding interactive objects into a video session.
This patent application is currently assigned to AT&T Intellectual Property I, L.P.. The applicant listed for this patent is AT&T Intellectual Property I, L.P.. Invention is credited to Mehmet Ozkan.
Application Number | 20200221177 16/825651 |
Document ID | / |
Family ID | 53039631 |
Filed Date | 2020-07-09 |
![](/patent/app/20200221177/US20200221177A1-20200709-D00000.png)
![](/patent/app/20200221177/US20200221177A1-20200709-D00001.png)
![](/patent/app/20200221177/US20200221177A1-20200709-D00002.png)
![](/patent/app/20200221177/US20200221177A1-20200709-D00003.png)
![](/patent/app/20200221177/US20200221177A1-20200709-D00004.png)
![](/patent/app/20200221177/US20200221177A1-20200709-D00005.png)
United States Patent
Application |
20200221177 |
Kind Code |
A1 |
Ozkan; Mehmet |
July 9, 2020 |
Embedding Interactive Objects into a Video Session
Abstract
A method includes receiving, at a media device, overlay data
associated with media content. The overlay data includes
information indicating a time and a position at which a particular
object is represented within the media content, and the overlay
data includes information associating the particular object with
supplemental information. The method further includes, during
playback of the media content, receiving user input at the media
device, and, responsive to the user input, generating an overlay
display based on the overlay data, where the overlay display causes
the particular object to be highlighted in a display of the media
content.
Inventors: |
Ozkan; Mehmet; (Austin,
TX) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
AT&T Intellectual Property I, L.P. |
Atlanta |
GA |
US |
|
|
Assignee: |
AT&T Intellectual Property I,
L.P.
Atlanta
GA
|
Family ID: |
53039631 |
Appl. No.: |
16/825651 |
Filed: |
March 20, 2020 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
14270629 |
May 6, 2014 |
10638194 |
|
|
16825651 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04N 21/44008 20130101;
H04N 21/4725 20130101; H04N 21/4314 20130101; H04N 21/858 20130101;
G06Q 30/0243 20130101; G06Q 30/02 20130101; H04N 21/466 20130101;
H04N 21/4316 20130101; H04N 21/23412 20130101; H04N 21/4722
20130101; H04N 21/812 20130101; H04N 21/8547 20130101; H04N 21/458
20130101; H04N 21/47205 20130101 |
International
Class: |
H04N 21/466 20060101
H04N021/466; G06Q 30/02 20060101 G06Q030/02; H04N 21/44 20060101
H04N021/44; H04N 21/458 20060101 H04N021/458; H04N 21/431 20060101
H04N021/431; H04N 21/4725 20060101 H04N021/4725; H04N 21/4722
20060101 H04N021/4722; H04N 21/234 20060101 H04N021/234; H04N
21/472 20060101 H04N021/472; H04N 21/8547 20060101 H04N021/8547;
H04N 21/858 20060101 H04N021/858 |
Claims
1. A device comprising: a processing system including a processor;
and a memory accessible to the processor, the memory storing
instructions that are executable by the processor to cause the
processor to perform operations, the operations comprising:
receiving media content; obtaining an overlay file that includes
first overlay data for a first resolution of the media content and
second overlay data for a second resolution of the media content,
wherein the first overlay data comprises a first coordinate for an
object and the second overlay data comprises a second coordinate
for the object; determining a resolution for a display
communicatively coupled to the device resulting in a determined
resolution; selecting the first overlay data according to the
determined resolution; and providing the media content and first
instructions to the display according to the first overlay data,
wherein the display presents the media content on the display and
presents the object according to the first coordinate of the first
overlay data and the first instructions.
2. The device of claim 1, wherein the operations comprise receiving
first user-generated input.
3. The device of claim 2, wherein the operations comprise providing
second instructions to the display according to the first
user-generated input, wherein the display highlights the object
according to the second instructions.
4. The device of claim 3, wherein the operations comprise receiving
second user-generated input.
5. The device of claim 4, wherein the operations comprise providing
third instructions to the display according to the second
user-generated input, wherein the display presents a menu of user
actions according to the third instructions.
6. The device of claim 5, wherein the user actions comprise social
network actions, sharing a portion of the media content,
transmitting an advertisement regarding the media content, or a
combination thereof.
7. The device of claim 4, wherein the operations comprise providing
object information to the display according to the second
user-generated input, wherein the display presents the object
information.
8. The device of claim 4, wherein the receiving of the second
user-generated input comprises: detecting a pointing device
hovering at a particular location on the display for a time period;
and determining the time period is above a time threshold.
9. The device of claim 4, wherein the operations comprise providing
fourth instructions to the display in response to receiving the
second user-generated input, wherein the display pauses playback of
the media content according to the fourth instructions.
10. A machine-readable medium, comprising executable instructions
that, when executed by a processing system including a processor,
facilitate performance of operations, the operations comprising:
receiving media content; obtaining an overlay file that includes
first overlay data for a first resolution of the media content and
second overlay data for a second resolution of the media content,
wherein the first overlay data comprises a first coordinate for an
object and the second overlay data comprises a second coordinate
for the object; determining a resolution for a display
communicatively coupled to the processing system resulting in a
determined resolution; selecting the first overlay data according
to the determined resolution; providing the media content and first
instructions to the display according to the first overlay data,
wherein the display presents the media content on the display and
presents the object according to the first coordinate of the first
overlay data and the first instructions; and providing second
instructions to the display in response to receiving first
user-generated input, wherein the display highlights the object
according to the second instructions.
11. The machine-readable medium of claim 10, wherein the operations
comprise receiving second user-generated input.
12. The machine-readable medium of claim 11, wherein the operations
comprise providing third instructions to the display according to
the second user-generated input, wherein the display presents a
menu of user actions according to the third instructions.
13. The machine-readable medium of claim 12, wherein the user
actions comprise social network actions, sharing a portion of the
media content, transmitting an advertisement regarding the media
content, or a combination thereof.
14. The machine-readable medium of claim 11, wherein the operations
comprise providing object information to the display according to
the second user-generated input, wherein the display presents the
object information.
15. The machine-readable medium of claim 11, wherein the receiving
of the second user-generated input comprises: detecting a pointing
device hovering at a particular location on the display for a time
period; and determining the time period is above a time
threshold.
16. The machine-readable medium of claim 11, wherein the operations
comprise providing fourth instructions to the display in response
to receiving the second user-generated input, wherein the display
pauses playback of the media content according to the fourth
instructions.
17. A method, comprising: receiving, by a processing system
including a processor, media content; obtaining, by the processing
system, an overlay file that includes first overlay data for a
first resolution of the media content and second overlay data for a
second resolution of the media content, wherein the first overlay
data comprises a first coordinate for an object and the second
overlay data comprises a second coordinate for the object;
determining, by the processing system, a resolution for a display
communicatively coupled to the processing system, resulting in a
determined resolution; selecting, by the processing system, the
first overlay data according to the determined resolution;
providing, by the processing system, the media content and first
instructions to the display according to the first overlay data,
wherein the display presents the media content on the display and
presents the object according to the first coordinate of the first
overlay data and the first instructions; and providing, by the
processing system, second instructions to the display in response
to receiving first user-generated input, wherein the display
presents a menu of user actions according to the second
instructions.
18. The method of claim 17, wherein the user actions comprise
social network actions, sharing a portion of the media content,
transmitting an advertisement regarding the media content, or a
combination thereof.
19. The method of claim 17, comprising providing, by the processing
system, object information to the display according to the first
user-generated input, wherein the display presents the object
information.
20. The method of claim 17, wherein the receiving of the first
user-generated input comprises: detecting, by the processing
system, a pointing device hovering at a particular location on the
display for a time period; and determining, by the processing
system, the time period is above a time threshold.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent
application Ser. No. 14/270,629 filed on May 6, 2014. The contents
of each of the foregoing is/are hereby incorporated by reference
into this application as if set forth herein in full.
FIELD OF THE DISCLOSURE
[0002] The present disclosure is generally related to embedding
interactive objects into a video session.
BACKGROUND
[0003] Digital advertising spending continues to grow. Examples of
digital advertising include interactive advertising via a
television platform. Traditional broadcasting technologies tend to
use static television advertising programs (e.g., "commercials")
which do not benefit from all of the advantages offered by digital
advertising technologies. For example, television programs often
include static one-way advertising content that does not allow
viewer interaction. Relative to interactive viewing, one way
viewing experiences may have less impact on the viewers and lead to
fewer sales or other transaction events.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] FIG. 1 illustrates a particular example of a system to
display an overlay associated with media content;
[0005] FIG. 2 illustrates another particular example of a system to
display an overlay associated with media content;
[0006] FIG. 3 illustrates a particular example of overlay data
within an overlay file;
[0007] FIG. 4 illustrates another particular example of overlay
data within an overlay file;
[0008] FIG. 5 illustrates a method of displaying an overlay
associated with media content; and
[0009] FIG. 6 illustrates a block diagram of a computer system to
display an overlay associated with media content.
DETAILED DESCRIPTION
[0010] Embodiments disclosed herein offer a method to highlight
selected objects within a program (e.g., a television program) to
allow viewers to participate interactively with the program. In
particular, objects represented within an existing program (e.g., a
program that has not been specifically edited to provide
interactive content) may be associated with supplemental content.
The supplemental content may include overlay data that specifies
locations of objects within the existing program and provides
information about highlighting the objects on a display. Creating
and embedding dynamic selectable objects into a program provides an
enhanced viewing experience for consumers. In particular examples,
the overlay data may be received by a media device after playback
of the program has begun at the media device. Further, the overlay
data may be received by a plurality of media devices, each
receiving the program in a different display format. For example,
each of the plurality of media devices may receive the program in a
different resolution, and the overlay data may include overlay
information for the program in each resolution. Receiving common
overlay data during playback may enable greater flexibility in
distribution of the overlay data. For example, a single instance of
the overlay data may be stored at a server and may be distributed
in response to requests.
[0011] Embedded objects may be associated with actions or
additional information (e.g., alternative or additional streams of
information associated with the object or the program). For
example, an embedded object may be used to provide an e-commerce
capability (e.g., by indicating that a viewer may order a product
that he or she has seen during the program). As another example, an
embedded object may enable interactive television commercials. To
illustrate, during a television commercial that is otherwise
static, a viewer may select an image or representation of a
product. In an illustrative example, a system (e.g. a computing
device) can redirect the viewer to an online order page or can
facilitate the completion of an order associated with the product.
Alternatively, or in addition, the viewer can select to be provided
with additional information. The system may access the additional
information (e.g., a web page or other e-commerce link associated
with the product) and display the additional information on a
television viewed by the viewer.
[0012] FIG. 1 illustrates a particular embodiment of a system 100
configured to display an overlay associated with media content. The
system 100 includes a headend 110, such as a cable television
headend, an internet protocol television (IPTV) headend, a
satellite television headend, or other media distribution headend.
The headend 110 may be associated with one or more media devices,
represented by media device 120. In alternative examples, the
functions described as performed by the headend 110 may be
performed by a server on a public network, such as a server that is
connected to the Internet and that distributes video content.
Although only one media device 120 is illustrated in FIG. 1, the
headend 110 may be coupled to more than one media device. In a
particular example, the media device 120 includes a set-top box
device. In other examples, the media device 120 may include any
device that executes media player software, such as a personal
computer, a mobile phone, a tablet computing device, etc.
[0013] In one example, one or more media devices may be associated
with subscribers in a geographic region, such as a city, or a
portion of a city.
[0014] The media device 120 may be coupled to one or more display
devices 130, such as televisions. Each display device 130 may be
adapted to display a representation 132 of media content based on
user interaction requesting particular media content. In a
particular embodiment, the media content has not been adapted
specifically for purposes of providing dynamic interactive
capabilities. The headend 110 may communicate with the media device
120 via a content distribution system 108 and one or more access
networks 115. The access network 115 may include a satellite
distribution network, a cable television network, an Internet
protocol network, or another wired or wireless communication
network that enables the media device 120 to access media content
via the headend 110.
[0015] During use, a user associated with the media device 120 may
use a remote control device 122 to provide a control signal 126 to
the media device 120. The control signal 126 may be transmitted via
a wired connection or wirelessly (e.g., via an infrared or radio
frequency signal). The control signal 126 may indicate selection of
particular media content 154, such as via an electronic program
guide (EPG) or a channel change request. In response to the control
signal 126, the media device 120 may transmit a media request 152
to the headend 110. In response to the media request 152, the
headend 110 may acquire data associated with the particular media
content 154 requested by the media request 152. For example, the
media content 154 may include a television program, a live
broadcast, video on demand content, pay per view content, or other
media content accessible via the headend 110. In a particular
example illustrated in FIG. 1, the headend 110 includes a media
database 114 from which the media content 154 may be accessed by a
server 118. However, in other embodiments, the headend 110 may
access the media content 154 from a media content provider (not
shown).
[0016] In response to the media request 152 identifying the media
content 154, the headend 110 may transmit the media content 154 to
the media device 120.
[0017] Additionally, the headend 110 may provide overlay data 156
to the media device 120. The overlay data 156 may be accessed by
the headend 110 at an overlay data base 116 included at the headend
110 or received from a remote provider such as an interactive
content provider (not shown). For example, in response to the media
request 152, the headend 110 may access a metadata database 112.
The metadata database 112 may contain information about the
particular media content 154, such as information identifying
whether an overlay file associated with the particular media
content 154 is accessible in the overlay database 116 (or via the
remote provider). When the overlay file is indicated to be present
in the overlay database 116, the server 118 may access the overlay
database 116 and provide the overlay file as the overlay data 156
to the media device 120. In a particular embodiment, the overlay
data 156 may be provided to the media device 120 after the media
device 120 transmits the media request 152, after the headend 110
transmits the media content 154, or a first portion of the media
content 154, to the media device 120, or during playback of the
media content 154 at the media device 120. For example, the overlay
data 156 may be provided to the media device 120 in response to a
request from the media device 120 for the overlay data 156. The
overlay data 156 may be provided to the media device 120 as part of
a media stream corresponding to the media content 154 or via a
separate data stream or side channel.
[0018] In particular examples, the overlay data 156 is generated
automatically (e.g., the overlay data 156 may be generated using an
image recognition system to automatically identify objects in the
media content 154). Alternatively, the overlay data 156 may be
generated by a user (e.g., a user associated with the headend 110
or a user associated with an overlay provider (not shown)). For
example, the user may correspond to a content provider, an
advertiser, or a developer hired to generate overlays. The user may
use software to view the media content 154 and to generate (e.g.,
draw) bounding boxes (e.g., a box that, when overlaid on media
content, contains a particular object) and create descriptive
information. The software may store information describing the
bounding boxes and descriptive information in the overlay data 156.
For example, the information describing the bounding boxes may
include coordinate points relative to one or more screen
resolutions. The overlay data 156 can be a relatively small file
including information such as a time stamp (e.g., an indication of
a time, relative to a beginning of a media stream, that an object
first appears in the media stream or a portion thereof), coordinate
locations of a bounding box 134, an object descriptor associated
with an object 133, and information (e.g., an action identifier)
indicating a particular action to be taken or selectable menus to
be displayed in response to selection of the object 133 or display
of the bounding box 134. Accordingly, a flat file can be used to
provide the overlay data 156 such that the overlay data 156
consumes little bandwidth relative to the media content 154.
[0019] The media device 120 may begin playback of the media content
154 by generating the representation 132 at the display device 130.
During the playback of the media content 154, the media device 120
may also examine the overlay data 156 to determine when an object
is represented in the representation 132 that is associated with
the overlay data 156. For example, the overlay data 156 may include
a plurality of entries associated with the representation 132. In a
particular example, the overlay data 156 may include an entry for
each object that is highlightable within the representation 132.
The media content 154 may include more than one highlightable
object. An example of media content including multiple
highlightable objects is shown in FIG. 2, and an example of an
overlay file describing multiple highlightable objects is shown in
FIG. 3. In some examples, the overlay data 156 may include multiple
entries for a particular object at different times. For example,
the object 133 may appear and may be highlightable in the media
content 154 at a plurality of different times, and the overlay data
156 may include an entry for each time period the object 133 is
highlightable in the media content 154. Each entry may include a
time stamp, or a time stamp range, and position data associated
with the object. For example, in the embodiment illustrated in FIG.
1, the overlay data 156 may include a time stamp, or a time stamp
range, and position data describing when and where the bounding box
134 that is associated with the object 133 is located in the
representation 132 of the media content 154.
[0020] Additionally, the overlay data 156 may include an indication
that the bounding box 134 and the associated object 133 are
associated with interactive content at the time indicated by the
time stamp and the position indicated by the position data.
Further, the overlay data 156 may include one or more action
identifiers associated with one or more objects (or bounding boxes
defining the objects). Each action identifier may correspond to an
action related to an object (e.g., retrieve additional information
about the object using a particular uniform resource locator, place
a phone call (e.g., via a voice over internet protocol (VoIP)
server) to a particular vendor of the object, place an order for
the particular object, etc.).
[0021] In particular examples, the media content 154 may correspond
to a particular program in a first display format (e.g., a first
resolution and/or a first frame rate). The overlay data 156 may
include overlay information corresponding to a plurality of
versions of the particular program. Each version of the program may
have a different display format. For example, one version of the
program may have a first display resolution and/or frame rate and
another version of the program may have a second display resolution
and/or frame rate. The overlay data 156 may include entries for
each highlightable object in each version of the program. Thus, the
same overlay data 156 may be sent to a media device that receives
the particular program in the first display format and to a media
device that receives the particular program in a second format.
[0022] FIG. 1 also includes an example of overlay information 135.
The overlay information 135 is represented separate from the
representation 132 to illustrate components of the overlay
information 135. The overlay information 135 may be determined
based on the overlay data 156. The overlay information 135 may
represent non-visible components of overlay data used to determine
or identify a location of the selectable object 133 in the
representation 132. In particular, the overlay information 135 may
define the bounding box 134 associated with the object 133. The
bounding box 134 may define a region of the representation 132 that
is to be highlighted in response to user input to enable selection
of supplemental content associated with the object 133, as
described further with reference to FIG. 2.
[0023] In the example shown in FIG. 1, the bounding box 134 is
defined by four vertices, each corresponding to a pixel of the
representation 132. For example, the vertices may include vertex A,
vertex B, vertex C, and vertex D. The vertices may correspond to xy
coordinate pixel positions defining a rectangular bounding box. The
xy coordinate pixel positions may be relative to a two-dimensional
coordinate system having maximum values described by maximum
horizontal and vertical pixel resolution counts in a particular
format. In other embodiments, other mechanisms to define the
bounding box may be used. For example, the bounding box 134 may be
defined based on a starting vertex such as vertex A, and a
predefined size or indication of a selection of a predefined size
(e.g., assuming that each side of the rectangle is parallel to one
of the x-axis and the y-axis of a display and perpendicular to the
other axis, the starting vertex may identify a particular vertex,
such as the top left vertex, and the size may define dimensions of
the rectangle). In another example, the bounding box 134 may be
defined by a pair of non-adjacent vertices (e.g., A and C or B and
D). For example, given that A=(X1,Y1) and C=(X2,Y2), the two
remaining vertices may be determined (e.g., by the media device
120) to be located at (X1, Y2) and (X2, Y1) based on the properties
of rectangles. In other embodiments, the bounding box may be a
non-rectangular polygon and may be defined by more (e.g., the
bounding box may be a pentagonal, hexagonal, heptagonal, octagonal,
etc.) or less than four vertices (i.e., the bounding box may be
triangular). In some embodiments, the bounding "box" may not be a
polygon (e.g., the bounding "box" may include one or more curved
sides).
[0024] During playback of the media content 154 by the media device
120, the overlay information 135 may be hidden. In response to user
input indicating an interest in a particular object, the overlay
information 135 may be used to generate the bounding box 134 on the
representation 132 (i.e., highlight the object 133 by drawing the
bounding box 134). Additionally, object information or menus 138
may be provided to enable selection of particular information or
content. For example, the object information or menus 138 may be
displayed in response to a selection of the object 133 once the
object 133 is highlighted.
[0025] In a particular example, the remote control device 122 may
include a three axis sensor 124. The three axis sensor 124 may
detect movement of the remote control device 122 by the user. In
response to movement of the remote control device 122 by the user
during playback of the media content 154 at the display device 130,
the media device 120 may determine that the user is interacting
with the media content 154. Accordingly, the media device 120 may
present the bounding box 134 indicating that the object 133 is
selectable. Alternatively, the media device 120 may control a
pointing device, as shown in FIG. 2, in response to movement of the
remote control device 122. When the pointing device hovers at a
particular location, such as within the bounding box 134, for a
threshold period of time the media device 120 may display the
bounding box 134 to highlight the object 133 to indicate that the
object is selectable.
[0026] Thus, the media device 120 may receive user input during
playback of the media content 154 (e.g., movement of the remote
control device 122 during playback of the media content 154
indicating the user device is interacting with media content or
hovering within a bounding box) and, responsive to the user input,
the media device 120 may generate an overlay display based on the
overlay data 156. The overlay display may cause the object 133 to
be highlighted in the representation 132 of the media content 154
to enable selection of supplemental content. Highlighting the
object in response to user input may allow a user to determine
which objects are selectable without pausing playback of media
content.
[0027] Upon receiving a selection of the highlighted object 133
(e.g., detecting a "click" within the bounding box 134 or detecting
that the pointer remains within the bounding box 134 for a
threshold period of time), the media device 120 may display the
object information and/or menus 138. In a particular example, the
media device 120 pauses playback of the media content 154 when
displaying the object information and/or menus 138. When the media
device 120 receives a selection of the object 133 within the
bounding box 134 or a selection of a particular option from the
object information or menus 138, the media device 120 may send an
information request 158 to the headend 110. For example, the
information request 158 may include information identifying the
bounding box 134 or the particular option from the object
information or menus 138 selected by the user.
[0028] The information request 158 may include an action identifier
associated with one or both of the object 133 and a particular
option from the object information or menus 138. The action
identifier may have been received with the overlay data 156, as
described above, and may correspond to action information stored at
the overlay database 116. The headend 110 may identify and perform
the corresponding action. For example, the corresponding action may
include requesting additional information, enabling voice
communications between the media device 120 and another device,
initiating a commercial transaction, or any other action. The
headend 110 may perform the action internally or may send a request
162 to a remote source, such as an e-commerce site 140. In other
examples, the remote source may include non-commercial sources,
such as informational web pages or call centers. The request 162
may be sent via a public network 160 or via a private communication
network. The e-commerce site 140 includes one or more servers 142
and an object catalogue 144. The request 162 may include an
identifier of the object 133 which may correspond to an identifier
in the object catalogue 144. The request may further indicate an
action, such as purchase, initiate voice communications, obtain
additional information, or any other action. In response to the
request 162, the e-commerce site 140 may provide supplemental
content 164 (e.g., an order confirmation, an informational web
page, a voice or video connection, any other supplemental content,
or a combination thereof) associated with the object 133 to the
headend 110 or directly to the media device 120 via the network
160.
[0029] In response to receiving the supplemental content 164, the
headend 110 may provide additional information, such as display
information 166, to the media device 120. The display information
166 may instruct the media device 120 how to display the
supplemental content, such as in a pop-up window (e.g., in a window
that overlays the representation 132), via a separate channel, and
so forth. In examples where the supplemental content 164 includes a
voice or video connection, the display information 166 may instruct
the media device 120 to display connection identification
information (e.g., caller ID information).
[0030] In a particular embodiment, the media device 120 may include
an object overlay setting. The object overlay setting may indicate
whether the user associated with the media device 120 elects to
enable interactive information associated with media associated
with media presented by the media device 120. For example, the
overlay setting may be disabled and in response the media device
120 may not send the information request 158 or may not receive the
overlay data 156. Thus, interactive content may be disabled at the
media device 120 and the display device 130. Alternately, the
overlay setting may be enabled such that the media device 120
operates to provide supplemental content responsive to user
input.
[0031] In a particular embodiment the media device 120 may include
a process that executes an overlay application. The overlay
application may generate an overlay display based on the overlay
data 156. The overlay display may include the bounding box 134.
Additionally, the overlay application may match a time stamp, or a
time stamp range, associated with the media content to a time
stamp, or a time stamp range, associated with the overlay data 156
in order to determine which objects are associated with
supplemental content or bounding boxes at a particular time during
playback of the media content 154. For example, during playback of
the media content 154, the media device 120 may check the overlay
data 156 periodically (e.g., every second) for one or more entries
having time periods corresponding to the current playback time of
the media content 154.
[0032] In another embodiment, the overlay application is executed
in response to user input such as pointer or control input
indicating that the user is requesting information associated with
a particular object in the representation 132. For example, in
embodiments where the remote control device 122 is used to direct a
pointer in the representation 132 to a particular position, the
overlay application may be executed when the pointer hovers at a
particular location for a threshold period of time. The overlay
application may check one or more time stamps associated with the
overlay data 156 to determine objects within the representation 132
that are selectable. The overlay application may display an overlay
display, including the bounding box 134 in the example of FIG. 1,
indicating selectable objects. In addition, the overlay application
may generate (e.g., in response to a selection of the object 133)
other selectable options associated with the object 133 such as the
object information and/or menus 138.
[0033] During presentation of the bounding box 134, the object
information and/or menus 138, or both, the overlay application may
cause playback of the media content 154 to be paused. If the media
content 154 is received as a stream (e.g., as a stream of data
packets from the headend 110), the media device 120 may record the
media content 154 to a memory of the media device 120 (for
subsequent playback after interaction associated with the object
133 is complete). Thus, the system 100 may provide a mechanism for
associating the supplemental content 164 with the object 133
represented in media content 154. Further, the media content 154
does not need to be modified to enable interaction associated with
the particular object 133. Therefore, data need not be added to the
media content 154 and transmitted to user devices that do not
support or have not requested interactive content.
[0034] In a particular embodiment, the object information and/or
menus 138 may include options associated with social network
interactions. Alternatively, certain social network interaction
icons may be automatically displayed without receiving prior user
input. In one example, the object information and/or menus 138 may
include an icon associated with a "like" interaction. A selection
of the "like" icon may cause execution of an application on an
application server (e.g., the server 118). For example, the media
device 120 may send the information request 158 including an action
identifier of the "like" icon. The server 118 may receive (e.g., as
part of the information request 158) social network subscription
information from the media device 120 and may send a request to a
server 192 of a social network 190. The server 192 may update a
profile of a user associated with the media device 120 based on the
request (e.g., indicate that the user "likes" the media content
154).
[0035] As another example, the object information and/or menus 138
may include a "share" icon. A selection of the "share" icon may
cause the application server to upload particular content to the
social network 190. For example, when a user "shares" a movie
(e.g., the media content 154) that he or she is watching, a trailer
for the movie may be uploaded to the social network 190 and shared
with "friends" or "followers" of the user. Alternately, or in
addition, the media device 120 may send the application server
elapsed time information that indicates how far into a movie or
television program the user selected the "share" icon. The
application server may use the elapsed time information to generate
a "clip" of the movie or television program to upload to the social
network 190. For example, the "clip" may be automatically generated
by cropping a particular amount of time before and/or after the
elapsed time (e.g., from 10 seconds before the elapsed time to 10
seconds after the elapsed time). Thus, the present system and
method may enable subscribers to share "interesting" moments of a
movie or program and encourage other viewers (e.g., social network
"friends" or "followers") to view that movie or program (or the
identified clip).
[0036] Additional interactions may also be performed or enabled.
For example, an automatic social networking update may be sent to
the social network 190 based on the media content 154 (e.g., "I am
watching [movie title] on channel [number]"). The social network
190 may also include a link to a trailer, advertisement, and/or
on-demand listing for the media content 154. As another example,
the object information and/or menus 138 may include a "more
information" icon that, when selected, cause the server 118 to
retrieve information regarding the media content 154 from a
third-party source (e.g., an online encyclopedia).
[0037] FIG. 2 illustrates a system 200 to display an overlay over
media content. The system 200 includes a media device 210 and a
display 215. In a particular embodiment, the media device 210 may
correspond to or include the media device 120 of FIG. 1. The
display 215 may correspond to or include the display device
130.
[0038] In the illustrated embodiment, the display 215 displays a
representation 232 of media content and overlay information
corresponding to the media content. The overlay information is
represented by a first bounding box 234, a second bounding box 252,
and a plurality of object information options 238. The object
information options 238 may include an object information option
244, a purchase option 242, a more information option 240, other
options not shown, or any combination thereof. The representation
232 includes a first object 231 associated with the first bounding
box 234 and a second object 250 associated with the second bounding
box 252.
[0039] In the example illustrated in FIG. 2, the first bounding box
234 is highlighted indicating that the first object 231 is
selectable based on the presence of a pointer 230 within a region
corresponding to the bounding box 234. The plurality of object
information options 238 may be displayed in response to a selection
of the first object 231. The second object 250 may also be
selectable but may not be highlighted while the pointer 230 is
located outside of the second bounding box 252.
[0040] In FIG. 2, the media device 210 includes a processor 212 and
a memory 214 accessible to the processor 212. The memory 214
includes instructions 222 that are executable by the processor 212
to perform actions associated with the media device 210, such as
sending information requests, receiving media content, generating a
representation of media content, generating an overlay display,
receiving overlay data, receiving display information, and so
forth. The media device 210 may also be associated with one or more
interfaces such as a display interface 220 that is configured to be
coupled to a display device, such as the display 215 or the display
device 130 of FIG. 1, in order to display media content and/or
additional information, such as supplemental content and overlay
displays. The media device 210 also includes one or more network
interfaces 216 to provide access to communications from the headend
110 of FIG. 1 or other network devices or systems, such as the
e-commerce site 140 of FIG. 1. The network interfaces 216 may
include wired or wireless interfaces to enable communication via a
cable television network, a satellite data link, via a cellular
data link, via DSL, or via a fiber link.
[0041] The media device 210 may also include a remote control
interface 218 (e.g., a wireless sensor). The remote control
interface 218 may enable interaction with a remote control device,
such as the remote control device 122 of FIG. 1. For example, the
remote control device 122 may provide control signals 126 to the
media device 120 via a remote control interface such as the remote
control interface 218.
[0042] In a particular embodiment, the memory 214 includes an
overlay file 224. The overlay file 224 may include overlay data
associated with a particular media content item. For example, the
overlay file 224 may correspond to a particular program or a
particular video on demand media content item accessed by the media
device 210. In a particular embodiment, the overlay file 224 stores
overlay data such as the overlay data 156 of FIG. 1. The memory 214
may also include media data 226. The media data 226 may correspond
to media content such as the media content 154 received from the
network headend 110. The media data 226 may also correspond to
media content received from other sources such as personal media
content associated with a user or recorded media content that is
previously recorded and is not streamed from a headend. The overlay
file 224 may correspond to the media data 226. For example, one or
more programs stored in the memory 214 as the media data 226 may
have a corresponding overlay file 224 that provides information to
generate an overlay display associated with the particular media
content item.
[0043] The memory 214 may include multiple programs, and each
program is associated with interactive content. The overlay files
224 may include multiple files, each file corresponding to a
particular program or media content item. For example, when the
media device 210 is a digital video recorder that stores media
content in the memory for later playback, the memory 214 may also
store corresponding overlay files associated with the media content
stored at the digital video recorder to enable a display of overlay
data when the stored media content is played back.
[0044] During operation, the media device 210 may receive an
overlay file (e.g., the overlay file 224) as overlay data
associated with particular media content (e.g., media content
included in the media data 226). The overlay data may include
information indicating a time and position at which a particular
object such as the first object 231 is represented in the media
content. The overlay data may also include information associating
the first object 231 with supplemental information, such as
information accessed by selection of the more information option
240. In particular examples, the overlay data includes information
associated with objects for a plurality of time periods. For
example, the overlay data may include information describing a
plurality of time periods during which the first object 231 appears
in the media content. In particular examples, the overlay file 224
may include information indicating overlay data for a plurality of
versions of the media content (e.g., a plurality of display
resolutions and/or frame rates of the media content). For example,
the first object 231 may appear at different times and/or locations
in a first version of the media content as compared to a second
version of the media content.
[0045] During playback of the media content, the media device 210
may receive user input (e.g., via the remote control interface
218). The user input may correspond to movement of a movement
sensitive remote control device (e.g., the remote control device
122) indicated via a signal received at the remote control
interface 218. For example, the user input may include a point of
control input that controls the pointer 230. The media device 210
may determine a position within the representation 232 of the
pointer 230 based on the pointer control input. Responsive to the
user input, the media device 210 may generate the overlay display
based on the overlay data. For example, the media device 210 may
cause the first object 231 to be highlighted via the bounding box
234 in response to user input indicating selection of the first
object 231 (e.g., the pointer 230 being located within the first
bounding box 234 for a particular period of time). In a particular
embodiment, the media device 210 does not cause overlay information
for an object to be displayed unless the object is selected. For
example, while the first object 231 is selected, the first bounding
box 234 may be highlighted, but the second bounding box 252
associated with the second object 250 may not be displayed.
[0046] When the first bounding box 234 is highlighted, the media
device 210 may receive a further selection of the object 231 (e.g.,
detect a "click" within the bounding box 234 or determine that the
pointer 230 stays within the bounding box 234 for a threshold
period of time) and display additional information 238 in response
to the further selection. In the illustrated embodiment, the
additional information 238 includes object information 244. The
object information 244 may include a description of the first
object 231. The additional information 238 further includes a more
information option 240 to display additional information about the
first object 231 and a selectable option 242 to conduct a
transaction related to the object 231.
[0047] Thus, the system 200 may display an overlay over media
content. The overlay may be invisible until a selectable object is
selected and may therefore be unobtrusive. Further, the overlay may
be generated without altering associated media content.
[0048] FIGS. 3 and 4 illustrate particular embodiments of overlay
data within an overlay file. For example, the overlay files
represented in FIGS. 3 and 4 may correspond to the overlay file 224
of FIG. 2 or the overlay data 156 of FIG. 1 or both.
[0049] Overlay file 300 of FIG. 3 includes information associated
with a first media content item. An overlay file may include a
plurality of entries each associated with a time stamp indicating
when a particular object is represented within the media content
item. For example, the overlay file 300 includes a first entry 301
with a time stamp 302. Each entry of the overlay file may also be
associated with a duration indicating how long (e.g., in seconds)
the object is represented in the display. For example, the first
entry 301 includes a duration 304. Entries of the overlay file may
also include information indicating coordinates of a bounding box,
which describe where a media device (e.g., the media device 120 or
the media device 210) should draw the bounding box associated with
the particular object. In the illustrated example, the first entry
301 includes coordinates 306.
[0050] As illustrated, in the overlay file 300, the coordinates 306
may include coordinate pairs associated with vertices of a bounding
box (e.g., the bounding box 134, the first bounding box 234, or the
second bounding box 252). In other examples, the coordinates may be
represented in other ways, such as with a coordinate of a
particular vertex and a default size selection or by other
mechanisms. Each entry of the overlay file 300 may also include an
object identifier indicating a name or other identifier associated
with the object associated with the bounding box. For example, the
first entry 301 includes an object identifier 308 that identifies a
"HandiPhone" object. In some examples, an entry of an overlay file
such as the first entry 301 may further include an object
descriptor (not shown) that describes an object. Further, the
entries of an overlay file may include supplemental information
associated with an object such as a communication address
associated with an advertiser or other supplemental information.
For example, the first entry 301 includes supplemental information
310 identifying a website associated with the object identified by
the object identifier 308.
[0051] In a particular embodiment, the media content item may be
formatted for display at different types of display devices. For
example, different display devices may have a different pixel count
or a different aspect ratio. Accordingly, the overlay file may
include entries associated with each object for multiple display
formats, including pixel count, aspect ratio and so forth. Thus,
the overlay file 300 includes a first set of entries associated
with a display format of 1920 pixels by 1080 pixels. Additionally,
the overlay file 300 includes a second set of entries associated
with a display format including 1280 pixels by 720 pixels. The
overlay file 300 may include more than or fewer than the two
display formats indicated. For example, the display overlay file
300 may include entries associated with each envisioned display
format including high definition standard definition,
three-dimensional, ultra-high definition, 4k, as well as multiple
aspect ratios. Each version of the media content may have different
associated playback times (e.g., due to differences in frame rates)
and a particular object may be located at different coordinates in
each version. Accordingly, the overlay file 300 may include a
plurality of entries for a particular object, where each entry of
the plurality identifies a time and a location that the particular
object appears in the version corresponding to the entry. In the
illustrated example, the overlay file 300 includes a third entry
330 corresponding to the first entry 301 at a different resolution
(1280.times.720) than the first entry 301 (1920.times.1080).
[0052] FIG. 4 illustrates another particular embodiment of an
overlay file 400. The overlay file 400 may correspond to the
overlay file 224 of FIG. 2 or the overlay data 156 of FIG. 1 or
both.
[0053] The overlay file 400 includes a time stamp 402 and a
duration 404. The time stamp 402 and the duration 404 may function
as described in reference to the time stamp 302 and the duration
304. The overlay file 400 further includes coordinate information
406 associated with a particular object or objects in a display. In
the illustrated example, the coordinate information may define two
vertices, such as two non-adjacent vertices. A media device (e.g.,
the media device 120 or the media device 210) may calculate the
remaining vertices based on the coordinate information 406 and
properties of rectangles (e.g., a rectangle has four right angles).
The overlay file 400 also includes an object ID 408. The object ID
408 may identify a particular object (e.g., the object 133, the
first object 231, or the second object 250) represented in media
content.
[0054] The overlay file 400 further includes a first action ID 410
and a first action description 412. The first action ID 410 may
identify a first action to be performed that is related to the
particular object identified by the object ID 408. The overlay file
further includes a second action ID 414. The second action ID 414
may identify a second action to be performed that is related to the
particular object identified by the object ID 408. The overlay file
400 further includes a first action description 412 and a second
action description 416 that describe the first action and the
second action, respectively.
[0055] Upon receiving user input during playback of media content,
a media device (e.g., the media device 120 or the media device 210)
may output an overlay. The overlay may include highlighting of one
or more objects based on entries in the overlay file 400. Upon
receiving a selection of a particular object at a particular time
during playback of the media content, the media device may display
a menu that includes options corresponding to actions described in
an entry that corresponds to the particular object and the
particular time. For example, upon receiving user input (e.g.,
movement of a remote control device during playback or hovering
within a bounding box defined by the coordinate information 406)
the media device may cause the bounding box defined by the
coordinate information 406 to be displayed. Upon detecting a
selection of the object associated with the bounding box (e.g.,
detecting a click within the bounding box) the media device may
display a menu with a menu option for each of the action
descriptions 412 and 416.
[0056] In response to receiving a selection of a menu option
corresponding to the first action description 412, the media device
may send the object ID 408 and the first action ID 410 to an
external server to perform the first action, as explained above.
Similarly, in response to receiving a selection of a menu option
corresponding to the second action description 416, the media
device may send the object ID 408 and the second action ID 414 to
the external server to perform the second action, as explained
above.
[0057] Thus, the overlay files 300 and 400 may enable an overlay to
be generated for a media content item without altering the media
content item. The overlay files 300 and 400 may further enable
actions to be performed that are related to the media content item.
In addition, the overlay files 300 and 400 may be sent to a
plurality of media devices that may receive the media content item
in different formats. Further, the overlay files 300 and 400 may be
sent to a media device after the media device has begun playback of
the related media content item.
[0058] FIG. 5 shows a flowchart illustrating a method 500 of
generating an overlay for media content. The method 500 includes
receiving overlay data associated with media content, where the
overlay data includes information indicating a time and a position
at which a particular object is represented within the media
content and the overlay data includes information associating the
particular object with the supplemental information, at 502. The
overlay data may be received in an overlay file during playback of
the media content. For example, the media device 120 may receive
the overlay data 156 from the headend 110 during playback of the
media content 154. The overlay data 156 may be associated with the
media content 154. The overlay data 156 may indicate a time and a
position in the representation 232 of the media content 154 that
the object 133 is shown. Similarly, the media device 210 may
receive and store the overlay file 224 in the memory 214. The
overlay file 224 may be associated with the media data 226. The
overlay file 224 may indicate a time and position that the first
object 231 and the second object 250 appear in the representation
232 of the media data 226. The content of overlay files is further
explained above with reference to FIGS. 3 and 4.
[0059] The method 500 further includes, during playback of the
media content, receiving user input (e.g., a pointer control input)
at the media device, at 504. For example, the media device 120 may
receive the control signal 126 from the remote control device 122
while outputting the representation 132 of the media content 154.
Further, the media device 210 may receive input via the remote
control interface 218 while outputting the representation 232 of
the media data 226.
[0060] The method further includes determining a position in the
display of a user pointer based on the pointer control input, where
the particular object is highlighted when the user pointer is
determined to be within a bounding box defined by the overlay data,
where the bounding box is specified in the overlay data. For
example, the media device 120 may position of a pointer in the
representation 132 and highlight the bounding box 134 when the
pointer is within the bounding box 134. Further, the media device
210 may determine a location of the pointer 230 based on input
received at the remote control interface 218. The media device 210
may highlight the first bounding box 234 based on determining that
the position of the pointer 230 is within the first bounding box
234.
[0061] The method 500 further includes determining a hover duration
indicating how long the pointer is within the bounding box, at 508.
For example, the media device may determine that the pointer is
within the bounding box 134 for a threshold period of time.
Further, the media device 210 may determine that a location of the
pointer 230 is within the first bounding box 234 for a threshold
period of time.
[0062] The method 500 further includes, when the hover duration
satisfies a threshold modifying the overlay display to include user
selectable options associated with the particular object, at 510.
For example, the media device 120 may display the object
information or menu 138 in response to detecting that the position
of the pointer is within the bounding box 134 for the threshold
period of time. Further, the media device 210 may display the
object information options 238 in response to detecting that the
position of the pointer 230 is within the first bounding box 234
for the threshold period of time.
[0063] Thus, FIG. 5 describes a method of displaying an overlay
based on overlay data received separately from media content.
[0064] FIG. 6 illustrates a particular embodiment of a general
computer system 600 to display an overlay associated with media
content. The general computer system 600 may include a set of
instructions that can be executed to cause the general computer
system 600 to perform any one or more of the methods or computer
based functions disclosed herein. The general computer system 600
may operate as a standalone device or may be connected, e.g., using
a network, to other computer systems or peripheral devices. For
example, the general computer system 600 may include, be included
within, or correspond to one or more of the components of the
system 100, the media device 120, the media device 210, the headend
110, or a combination thereof.
[0065] In a networked deployment, the general computer system 600
may operate in the capacity of a server or as a client user
computer in a server-client user network environment, or as a peer
computer system in a peer-to-peer (or distributed) network
environment. The general computer system 600 may also be
implemented as or incorporated into various devices, such as a
mobile device, a palmtop computer, a laptop computer, a desktop
computer, a communications device, a wireless telephone, a personal
computer (PC), a tablet PC, a personal digital assistant (PDA), a
set-top box, a customer premises equipment device, an endpoint
device, a web appliance, or any other machine capable of executing
a set of instructions (sequential or otherwise) that specify
actions to be taken by that machine. In a particular embodiment,
the general computer system 600 may be implemented using electronic
devices that provide video, audio, or data communication. Further,
while one general computer system 600 is illustrated, the term
"system" shall also be taken to include any collection of systems
or sub-systems that individually or jointly execute a set, or
multiple sets, of instructions to perform one or more computer
functions.
[0066] As illustrated in FIG. 6, the general computer system 600
includes a processor 602, e.g., a central processing unit (CPU), a
graphics processing unit (GPU), or both. The processor 602 may be
one or more components (e.g., a processor) of the media device 120,
the media device 210, or the headend 110, or a combination thereof.
Moreover, the general computer system 600 may include a main memory
604 and a static memory 606, which can communicate with each other
via a bus 608. For example, the main memory 604 may be one or more
components (e.g., a memory) of the media device 120, one or more
components (e.g., a memory) of the media device 210, one or more
components of the headend 110, or a combination thereof. As shown,
the general computer system 600 may further include a video display
unit 610, such as a television, liquid crystal display (LCD), an
light emitting diode (LED) display, a touch screen display, a flat
panel display, a solid state display, or a lamp assembly of a
projection system. Additionally, the general computer system 600
may include an input device 612, such as a remote control device
(e.g., a television remote or a set top box remote), keyboard, and
a cursor control device 614, such as a mouse. In some embodiments,
the input device 612 and the cursor control device 614 may be
integrated into a single device, such as a capacitive touch screen
input device. The general computer system 600 may also include a
drive unit 616, a signal generation device 618, such as a speaker
or remote control, and a network interface device 620. The general
computer system 600 may not include an input device (e.g., a server
may not include an input device).
[0067] In a particular embodiment, as depicted in FIG. 6, the drive
unit 616 may include a computer-readable storage device 622 in
which one or more sets of overlay data and instructions 624, e.g.
software, can be embedded. The computer-readable storage device 622
may be random access memory (RAM), read-only memory (ROM),
programmable read-only memory (PROM), erasable PROM (EPROM),
electrically erasable PROM (EEPROM), register(s), solid-state
memory, hard disk, a removable disk, a compact disc read-only
memory (CD-ROM), other optical disk storage, magnetic disk storage,
magnetic storage devices, or any other storage device that can be
used to store program code in the form of instructions or data and
that can be accessed by a computer and/or processor. A
computer-readable storage device is not a signal. Further, the
instructions 624 may embody one or more of the methods or logic as
described herein. The instructions 624 may be executable by the
processor 602 to perform one or more functions or methods described
herein, such as the method described with reference to FIG. 6. In a
particular embodiment, the instructions 624 may reside completely,
or at least partially, within the main memory 604, the static
memory 606, and/or within the processor 602 during execution by the
general computer system 600. The main memory 604 and the processor
602 also may include a computer-readable storage device.
[0068] In an alternative embodiment, dedicated hardware
implementations, such as application specific integrated circuits,
programmable logic arrays and other hardware devices, may be
constructed to implement one or more of the methods described
herein. Various embodiments may broadly include a variety of
electronic and computer systems. One or more embodiments described
herein may implement functions using two or more specific
interconnected hardware modules or devices with related control and
data signals that can be communicated between and through the
modules, or as portions of an application-specific integrated
circuit (ASIC). Accordingly, the present system encompasses
software, firmware, and hardware implementations.
[0069] In accordance with various embodiments of the present
disclosure, the methods described herein may be implemented by
software programs executable by a computer system, a processor, or
a device, which may include (forms of instructions embodied as a
state machine implemented with logic components in an ASIC or a
field programmable gate array (FPGA) device.) Further, in an
exemplary, non-limiting embodiment, implementations may include
distributed processing, component/object distributed processing,
and parallel processing. Alternatively, virtual computer system
processing may be constructed to implement one or more of the
methods or functionality as described herein. It is further noted
that a computing device, such as a processor, a controller, a state
machine or other suitable device for executing instructions to
perform operations or methods may perform such operations directly
or indirectly by way of one or more intermediate devices directed
by the computing device.
[0070] The present disclosure includes a computer-readable storage
device 622 that stores the overlay data and instructions 624 or
receives, stores, and executes the overlay data and instructions
624, so that a device connected to a network 626 may generate an
overlay file without modifying media content or may display an
overlay based on an overlay file. For example, the
computer-readable storage device 622 may include or be included
within one or more of the components of the headend 110, one or
more components of the media device 120, one or more components of
the media device 210, or a combination thereof. While the
computer-readable storage device 622 is shown to be a single
device, the computer-readable storage device 622 may include a
single device or multiple media devices, such as a distributed
database, and/or associated caches and servers that store one or
more sets of instructions. The computer-readable storage device 622
is capable of storing a set of instructions for execution by a
processor to cause a computer system to perform any one or more of
the methods or operations disclosed herein.
[0071] In a particular non-limiting, exemplary embodiment, the
computer-readable storage device 622 may include a solid-state
memory such as embedded memory (or a memory card or other package
that houses one or more non-volatile read-only memories). Further,
the computer-readable storage device 622 may be a random access
memory or other volatile re-writable memory. Additionally, the
computer-readable storage device 622 may include a magneto-optical
or optical device, such as a disk or tapes or other storage device.
Accordingly, the disclosure is considered to include any one or
more of a computer-readable storage device and other equivalents
and successor devices, in which data or instructions may be
stored.
[0072] The illustrations of the embodiments described herein are
intended to provide a general understanding of the structure of the
various embodiments. The illustrations are not intended to serve as
a complete description of all of the elements and features of
apparatus and systems that utilize the structures or methods
described herein. Many other embodiments may be apparent to those
of skill in the art upon reviewing the disclosure. Other
embodiments may be utilized and derived from the disclosure, such
that structural and logical substitutions and changes may be made
without departing from the scope of the disclosure. Figures are
also merely representational and may not be drawn to scale. Certain
proportions thereof may be exaggerated, while others may be
minimized. Accordingly, the disclosure and the figures are to be
regarded as illustrative rather than restrictive.
[0073] In a particular embodiment, a method includes receiving, at
a media device, overlay data associated with media content. The
overlay data includes information indicating a time and a position
at which a particular object is represented within the media
content, and the overlay data includes information associating the
particular object with supplemental information. The method further
includes, during playback of the media content, receiving user
input at the media device, and, responsive to the user input,
generating an overlay display based on the overlay data, where the
overlay display causes the particular object to be highlighted in a
display of the media content.
[0074] In a particular embodiment, a media device includes a
processor and a memory. The memory is accessible to the processor
and stores instructions that are executable by the processor to
access overlay data associated with media content. The overlay data
includes information indicating a time and a position at which a
particular object is represented within the media content, and the
overlay data includes information associating the particular object
with supplemental information. The instructions are further
executable by the processor to, during playback of the media
content, receive user input and, responsive to the user input,
generate an overlay display based on the overlay data, where the
overlay display causes the particular object to be highlighted in a
display of the media content.
[0075] In a particular embodiment, a computer-readable storage
device stores instructions that are executable by a processor to
perform operations. The operations include receiving, at a media
device, overlay data associated with media content. The overlay
data includes information indicating a time and a position at which
a particular object is represented within the media content, and
the overlay data includes information associating the particular
object with supplemental information. The operations further
include, during playback of the media content, receiving user input
at the media device, and, responsive to the user input, generating
an overlay display based on the overlay data, where the overlay
display causes the particular object to be highlighted in a display
of the media content.
[0076] Although specific embodiments have been illustrated and
described herein, it should be appreciated that any subsequent
arrangement designed to achieve the same or similar purpose may be
substituted for the specific embodiments shown. This disclosure is
intended to cover any and all subsequent adaptations or variations
of various embodiments.
[0077] In one or more embodiments, a processor (which can include a
controller or circuit) has been described that performs various
functions. It should be understood that the processor can be
implemented as multiple processors, which can include distributed
processors or parallel processors in a single machine or multiple
machines. The processor can be used in supporting a virtual
processing environment. The virtual processing environment may
support one or more virtual machines representing computers,
servers, or other computing devices. In such virtual machines,
components such as microprocessors and storage devices may be
virtualized or logically represented. The processor can include a
state machine, an application specific integrated circuit, and/or a
programmable gate array (PGA) including a Field PGA. In one or more
embodiments, when a processor executes instructions to perform
"operations," this can include the processor performing the
operations directly and/or facilitating, directing, or cooperating
with another device or component to perform the operations.
[0078] Less than all of the steps or functions described with
respect to the exemplary processes or methods can also be performed
in one or more of the exemplary embodiments. Further, the use of
numerical terms to describe a device, component, step or function,
such as first, second, third, and so forth, is not intended to
describe an order or function unless expressly stated. The use of
the terms first, second, third and so forth, is generally to
distinguish between devices, components, steps or functions unless
expressly stated otherwise. Additionally, one or more devices or
components described with respect to the exemplary embodiments can
facilitate one or more functions, where the facilitating (e.g.,
facilitating access or facilitating establishing a connection) can
include less than every step needed to perform the function or can
include all of the steps needed to perform the function.
[0079] The Abstract is provided with the understanding that it will
not be used to interpret or limit the scope or meaning of the
claims. In addition, in the foregoing Detailed Description, various
features may be grouped together or described in a single
embodiment for the purpose of streamlining the disclosure. This
disclosure is not to be interpreted as reflecting an intention that
the claimed embodiments require more features than are expressly
recited in each claim. Rather, as the following claims reflect,
subject matter may be directed to less than all of the features of
any of the disclosed embodiments. Thus, the following claims are
incorporated into the Detailed Description, with each claim
standing on its own as defining separately claimed subject
matter.
[0080] The above-disclosed subject matter is to be considered
illustrative, and not restrictive, and the appended claims are
intended to cover all such modifications, enhancements, and other
embodiments, which fall within the scope of the present disclosure.
Thus, to the maximum extent allowed by law, the scope of the
present disclosure is to be determined by the broadest permissible
interpretation of the following claims and their equivalents, and
shall not be restricted or limited by the foregoing detailed
description.
* * * * *