U.S. patent application number 15/069203 was filed with the patent office on 2016-07-07 for system and method for aggregating devices for intuitive browsing.
The applicant listed for this patent is Eloy Technology, LLC. Invention is credited to Christopher M. Amidon, Scott Curtis, Hugh Svendsen.
Application Number | 20160196025 15/069203 |
Document ID | / |
Family ID | 46019710 |
Filed Date | 2016-07-07 |
United States Patent
Application |
20160196025 |
Kind Code |
A1 |
Amidon; Christopher M. ; et
al. |
July 7, 2016 |
System And Method For Aggregating Devices For Intuitive
Browsing
Abstract
A media device includes a communication interface
communicatively coupling the media device to one or more other
media devices and a display, and a controller associated with the
communication interface. The controller is adapted to access one or
more templates comprising a layout of a graphical user interface
(GUI). The controller further identifies one or more available
media devices from which media content may be streamed, a
respective utilization of the media devices and one or more media
content streams available from each of the media devices and
determine, based upon the template and the one or more media
content streams, at least one of the media content streams to
display. The controller then acquires and outputs the at least one
of the media content streams for display in accordance with the
layout.
Inventors: |
Amidon; Christopher M.;
(Apex, NC) ; Curtis; Scott; (Durham, NC) ;
Svendsen; Hugh; (Chapel Hill, NC) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Eloy Technology, LLC |
Wilmington |
DE |
US |
|
|
Family ID: |
46019710 |
Appl. No.: |
15/069203 |
Filed: |
March 14, 2016 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
12731606 |
Mar 25, 2010 |
9288540 |
|
|
15069203 |
|
|
|
|
61163086 |
Mar 25, 2009 |
|
|
|
Current U.S.
Class: |
715/716 |
Current CPC
Class: |
H04N 9/8205 20130101;
H04N 21/44222 20130101; H04N 21/47214 20130101; H04N 21/458
20130101; H04N 21/4668 20130101; H04N 21/6582 20130101; G06F 3/0484
20130101; H04N 21/4826 20130101; H04N 5/782 20130101; H04N 21/43615
20130101; H04N 21/43622 20130101; H04N 21/4312 20130101; H04N
21/4756 20130101; H04N 21/84 20130101; H04N 21/4622 20130101; H04N
21/252 20130101; H04N 21/6543 20130101; H04N 21/4334 20130101; H04N
5/76 20130101; H04N 21/4532 20130101; H04N 5/765 20130101; H04N
21/4263 20130101; H04N 21/4583 20130101 |
International
Class: |
G06F 3/0484 20060101
G06F003/0484; H04N 21/431 20060101 H04N021/431; H04N 21/462
20060101 H04N021/462; H04N 21/45 20060101 H04N021/45; H04N 21/442
20060101 H04N021/442 |
Claims
1. A media device comprising: a communication interface
communicatively coupling the media device to one or more other
media devices; and a controller comprising at least one processor
and associated with the communication interface adapted to: access
one or more templates each comprising a layout of a graphical user
interface (GUI) when the media device in a passive browsing mode;
identify one or more available media devices from which media
content may be streamed, one or more media content streams
available from each of the one or more available media devices, and
a respective utilization of each of the one or more available media
devices; monitor for an occurrence of at least one alert;
determine, based upon the occurrence of the at least one alert
condition and the one or more media content streams being streamed,
at least one of the media content streams to display; acquire the
at least one of the media content streams for display in accordance
with the one or more templates; output the at least one of the
media content streams to a display for presentation in the GUI in
accordance with the one or more layouts; and output an indication
of at least one of the at least one alert condition for display in
the GUI and a degree to which the at least one of the media content
streams matches one or more preferences in the one or more
templates for display in the GUI.
2. The media device of claim 1 wherein at least one of the one or
more templates is a system template.
3. The media device of claim 1 wherein at least one of the one or
more templates is personalized by a user.
4. The media device of claim 1 wherein the at least one alert
condition defines when and how media content is to be displayed in
the GUI.
5. The media device of claim 1 wherein the controller is adapted to
output the indication of the at least one alert condition in
response to identify the occurrence of the at least one alert
condition.
6. The media device of claim 1 wherein the controller is further
adapted to identify the occurrence of the alert condition in
response to a trigger.
7. The media device of claim 1 wherein the one or more media
content streams available from each of the one or more available
media devices are identified via accessing an aggregated content
guide comprising information describing the media content streams
available from each of the one or more available media devices.
8. The media device of claim 1 wherein the controller is further
adapted to optimize the at least one of the media content streams
for display.
9. The media device of claim 8 wherein the controller is further
adapted to optimize the at least one of the media content streams
for display based upon a characteristic of the one or more
available media devices from which the at least one of the media
content streams are acquired.
10. The media device of claim 9 wherein the characteristic of the
one or more available media devices is selected from a group
consisting of an availability of the one or more available media
devices and a quality of the at least one of the media content
streams.
11. The media device of claim 1 wherein the GUI comprises at least
one thumbnail displaying at least one of the media content streams
for display and a background.
12. The media device of claim 11 wherein the controller is further
adapted to output one or more graphic indicators each associated
with one of the at least one thumbnail.
13. The media device of claim 12 wherein one of the one or more
graphic indicators comprises an indication of a match between the
at least one of the media content streams displayed in the
associated thumbnail and a user preference.
14. The media device of claim 13 wherein the user preference is
stored in the one or more templates.
15. The media device of claim 12 wherein one of the one or more
graphic indicators comprises an indication that the at least one of
the media content streams displayed in the associated thumbnail is
currently being displayed on a display associated with the one or
more available media devices.
16. The media device of claim 12 wherein one of the one or more
graphic indicators comprises an indication that the at least one of
the media content streams displayed in the associated thumbnail is
currently streaming an advertisement.
17. The media device of claim 12 wherein one of the one or more
graphic indicators comprises an icon that may be selected to
provide more information related to the at least one of the media
content streams displayed in the associated thumbnail.
18. The media device of claim 12 wherein one of the one or more
graphic indicators comprises an indication of at least one of a
score and an end of a game.
19. The media device of claim 1 wherein the media device is further
adapted to optimize the at least one of the media content streams
by replacing a portion of the at least one of the media content
streams comprising an advertisement with a previously streamed
portion of the at least one of the media content streams.
20. The media device of claim 1 wherein the media device is further
adapted to optimize the at least one of the media content streams
by: receiving repeatedly alternating first and second media content
streams from one of the available media devices; outputting the
first media content stream to a first one of the at least one
thumbnail; and outputting the second media content stream to a
second one of the at least one thumbnail.
21. The media device of claim 20 wherein the first media content
stream comprises a first image and the second media content stream
comprises a second image.
22. The media device of claim 1 wherein the controller is further
adapted to optimize the at least one of the media content streams
by filtering the at least one of the media content streams based
upon metadata associated with the at least one of the media content
streams.
23. A computer-readable medium embodied in an article of
manufacture encoded with instructions for directing a processor of
a media device to: access one or more templates each comprising a
layout of a graphical user interface (GUI) when the media device in
a passive browsing mode; identify one or more available media
devices from which media content may be streamed, one or more media
content streams available from each of the one or more available
media devices, and a respective utilization of each of the one or
more available media devices; monitor for an occurrence of at least
one alert; determine, based upon the occurrence of the at least one
alert condition and the one or more media content streams being
streamed, at least one of the media content streams to display;
acquire the at least one of the media content streams for display
in accordance with the one or more templates; output the at least
one of the media content streams to a display for presentation in
the GUI in accordance with the one or more layouts; and output an
indication of at least one of the at least one alert condition for
display in the GUI and a degree to which the at least one of the
media content streams matches one or more preferences in the one or
more templates for display in the GUI.
24. The computer-readable medium of claim 23 wherein at least one
of the one or more templates is a system template.
25. The computer-readable medium of claim 23 wherein at least one
of the one or more templates is personalized by a user.
26. The computer-readable medium of claim 23 wherein the one or
more templates further comprise at least one alert condition
defining when and how media content is to be displayed in the
GUI.
27. The computer-readable medium of claim 26 wherein the controller
is further adapted to output an indication of the alert condition
for display in the GUI om response to identifying the occurrence of
the at least one alert condition.
28. A method comprising: accessing one or more templates each
comprising a layout of a graphical user interface (GUI) when the
media device in a passive browsing mode; identifying one or more
available media devices from which media content may be streamed,
one or more media content streams available from each of the one or
more available media devices, and a respective utilization of each
of the one or more available media devices; monitoring for an
occurrence of at least one alert; determining, based upon the
occurrence of the at least one alert condition and the one or more
media content streams being streamed, at least one of the media
content streams to display; acquiring the at least one of the media
content streams for display in accordance with the one or more
templates; outputting the at least one of the media content streams
to a display for presentation in the GUI in accordance with the one
or more layouts; and outputting an indication of at least one of
the at least one alert condition for display in the GUI and a
degree to which the at least one of the media content streams
matches one or more preferences in the one or more templates for
display in the GUI.
29. The method of claim 28 wherein the at least one alert condition
defines when and how media content is to be displayed in the
GUI.
30. The method of claim 39 further comprising determining the
occurrence of the at least one alert condition.
Description
RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent
application Ser. No. 12/731,606, titled "System and Method For
Aggregating Devices For Intuitive Browsing," filed Mar. 25, 2010,
which claims the benefit of provisional patent application Ser. No.
61/163,086, filed Mar. 25, 2009, the disclosures of which are
hereby incorporated herein by reference in their entireties.
FIELD OF THE INVENTION
[0002] The disclosure relates to a method for intuitively
displaying media content available from numerous sources in a
customizable manner.
BACKGROUND
[0003] According to a Nielsen Company report focusing on
population, television ownership and advertising trends in the
United States, the average U.S. home has 2.5 people, 2.8 TVs, and
receives an average of 118 TV channels. Additionally, the number of
DVRs in the average home is increasing. As the number of channels
available at a plurality of devices in a home network increases, it
is increasingly difficult to intuitively gain an understanding of
what media content is available at any one time.
[0004] As a result, there exists a need to provide a user with an
intuitive display by which the user can quickly and easily be made
aware of media content of interest.
SUMMARY
[0005] In accordance with an exemplary and non-limiting embodiment,
a media device comprises a communication interface communicatively
coupling the media device to one or more other media devices and a
controller associated with the communication interface adapted to
access one or more templates each comprising a layout of a
graphical user interface (GUI) and identify one or more other media
devices from which media content may be streamed and one or more
media content streams available from each of the one or more media
devices. The controller is further adapted to determine, based upon
the one or more templates and the one or more media content
streams, at least one of the media content streams to display,
acquire the at least one of the media content streams for display
in accordance with the one or more layouts and output the at least
one of the media content streams to a display for presentation in
the GUI in accordance with the one or more layouts.
[0006] In accordance with another exemplary and non-limiting
embodiment, a computer-readable medium embodied in an article of
manufacture encoded with instructions for directing a processor of
a media device to access one or more templates each comprising a
layout of a graphical user interface (GUI) and identify one or more
other media devices from which media content may be streamed and
one or more media content streams available from each of the one or
more media devices. The processor is further directed to determine,
based upon the one or more templates and the one or more media
content streams, at least one of the media content streams to
display, acquire the at least one of the media content streams for
display in accordance with the one or more layouts and output the
at least one of the media content streams to a display for
presentation in the GUI in accordance with the one or more
layouts.
[0007] In accordance with another exemplary and non-limiting
embodiment, a method comprises accessing one or more templates each
comprising a layout of a graphical user interface (GUI),
identifying one or more other media devices from which media
content may be streamed and one or more media content streams
available from each of the one or more media devices and
determining, based upon the one or more templates and the one or
more media content streams, at least one of the media content
streams to display. The method further includes acquiring the at
least one of the media content streams for display in accordance
with the one or more layouts, and outputting the at least one of
the media content streams to a display for presentation in the GUI
in accordance with the one or more layouts.
[0008] In accordance with another exemplary and non-limiting
embodiment, a computer-readable medium embodied in an article of
manufacture encoded with instructions for directing a processor of
a media device to receive a media item attribute, identify one or
more media items based upon the media item attribute and an
aggregated content guide and instruct one or more media devices to
tune to the one or more media items and provide one or more media
content streams corresponding to the one or more media items. The
processor is further directed to receive the one or more media
content streams and output each of the one or more media content
streams for display in an associated thumbnail.
BRIEF DESCRIPTION OF THE DRAWINGS FIGURES
[0009] The accompanying drawing figures incorporated in and forming
a part of this specification illustrate several aspects of the
invention, and together with the description serve to explain the
principles of the invention.
[0010] FIG. 1 illustrates a system incorporating a network for
communicatively coupling a plurality of media devices and displays
with a media server according to an exemplary embodiment;
[0011] FIG. 2 is a flowchart of a method for performing passive
browsing according to an exemplary embodiment;
[0012] FIG. 3 is a diagram of a template according to an exemplary
embodiment;
[0013] FIG. 4 is an illustration of an exemplary passive browsing
GUI;
[0014] FIG. 5 is a flowchart of a method for performing active
browsing according to an exemplary embodiment;
[0015] FIG. 6 is an illustration of an exemplary active browsing
GUI;
[0016] FIG. 7 is a diagram of a media device according to an
exemplary embodiment; and
[0017] FIG. 8 is a diagram of a media server according to an
exemplary embodiment.
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0018] The embodiments set forth below represent the necessary
information to enable those skilled in the art to practice the
invention and illustrate the best mode of practicing the invention.
Upon reading the following description in light of the accompanying
drawing figures, those skilled in the art will understand the
concepts of the invention and will recognize applications of these
concepts not particularly addressed herein. It should be understood
that these concepts and applications fall within the scope of the
disclosure and the accompanying claims.
[0019] In accordance with exemplary embodiments disclosed herein, a
system is described to improve the utilization of numerous media
displays and tuners, which are not currently in use, by providing
an intuitive passive browsing mode. In this passive browsing mode,
the system operates to display media content on a media display
that may be of interest to a user of the system based on a template
which may be personalized.
[0020] In an exemplary embodiment, the user template is a data
record that includes background content, one or more user content
thumbnails and an alert configuration. The alert configuration
defines under what circumstances currently broadcast media content
is displayed. Once displayed, there is shown to a user an indicator
of how well the displayed media content matches the preferences
described in the template, such as those defined in the alert
configuration. Other displayed indicators may display relevance to
a particular segment of a show, score alerts, end of game notices,
etc. In accordance with various exemplary and non-limiting
embodiments described below, a template may be associated with a
user and in such instance is referred to as a "user template". In
accordance with another exemplary embodiment, one or more
templates, which may be referred to herein as "system templates",
may be provided by the system and may function to display media
items in the absence of a personalized user template. It is
understood that a system template may be modified by a user to
produce a user template. Furthermore, a system template may be
modified in a manner that does not incorporate user information
and, while no longer a system template, is referred to herein as a
"template".
[0021] An aggregated content guide provides a universal view (and
location) of media content available on all communicatively coupled
devices within, for example, a home. As described more fully below,
the system uses an aggregated content guide to determine the best
allocation of channel to tuning devices and manages the video
acquisition and display. The system automatically utilizes
available devices, if necessary, to prepare and/or optimize the
media content to be displayed within the browsing interface. As
used herein, to "optimize" means to enhance the display of media
content through both the selection of the media content and the
manner in which the media content is displayed.
[0022] In the exemplary and non-limiting embodiments described
below, various features and optimizations are described to provide
a user with an intuitive and optimized browsing interface. One of
the components described is "tuner aggregation". The tuner
aggregation component operates to perform actual aggregation of
media content as well as virtual aggregation described more fully
below. The tuner aggregation and other optimizations also support
an "active browsing mode" of the system. When operating in active
browsing mode, a user is actively interfacing with the system in
order to quickly, and intuitively, find content of interest.
[0023] In the exemplary and non-limiting embodiments that follow,
there is described both passive browsing and alerts whereby the
system operates to continually monitor multiple media content
streams and display media content of interest to the user as well
as alerts. In other exemplary embodiments there is described active
browsing whereby the system provides users with the ability to
browse available channels in order to quickly and intuitively find
media content of interest. In other exemplary embodiments there is
described tuner aggregation including both the actual and virtual
aggregation of tuners to provide an intuitive browsing interface
that includes multiple live media streams. Tuner aggregation
further comprises video optimizations and commercial optimizations.
In accordance with yet other exemplary and non-limiting
embodiments, the system operates to manage the selection and
allocation of devices and channels based on, for example, an
aggregated channel guide and device characteristics such as
availability, capability and content source, user preferences, and
the like.
[0024] FIG. 1 illustrates a system 10 incorporating at least one
media server 14, one or more media devices 16, and one or more
display devices 12 each associated with at least one media device
16. Each of the media devices 16, display devices 12, and media
server 14 are communicatively coupled with one another via a
network 18.
[0025] As used herein, a "viewer" of a display device may be
interchangeably referred to as a "user" of system 10.
[0026] As used herein, "display device 12" refers to any device
capable of receiving media content and displaying, playing or
otherwise rendering the media content. Examples of display devices
12 include, but are not limited to, laptop computers, desktop
computers, personal digital assistants (PDAs), mobile telephones,
televisions (TVs), portable game players, and the like.
[0027] As used herein, "media device 16" refers to any and all
devices capable of acquiring and outputting media content for
display. Examples of media devices 16 include, but are not limited
to, digital video recorders (DVRs), set top boxes (STBs),
computers, and the like. In exemplary embodiments described below,
media devices 16 may query other media devices 16 to ascertain not
only what media content is available but also the media device's
current utilization and resultant ability to stream one or more
media content streams to the querying media device 16.
[0028] As used herein, "media server 14" refers to any device
capable of (1) storing media content, such as in a media content
repository, (2) receiving requests from media devices 16 for stored
media content and (3) facilitating the streaming or transfer of
requested media content to a media device 16.
[0029] As described more fully below, in an exemplary embodiment,
each media device 16 and media server 14 may comprise an aggregate
content guide component 24, an aggregate content guide repository
26 and a device repository 22. In an exemplary embodiment, each
device repository 22 forming a part of a media device 16 stores
information about the media device 16, including, but not limited
to, user templates, a current mode, current utilization, addresses
of one or more other media devices 16 comprising system 10, and an
address of media server 14. When forming a part of media server 14
device repository 22 likewise stores addresses of one or more other
media devices 16. Media server 14 may also store in device
repository 22, in a centralized fashion, user templates stored on
one or more user devices 16. As a result, media server 14 may
serve, in accordance with some embodiments described below, as a
centralized source of information regarding each of one or more
media devices 16.
[0030] In accordance with an exemplary embodiment, aggregate
content guide component 24 operates to query each other media
device 16 to obtain information indicative of media content
available at each media device 16. Examples of such information
indicative of media content available may include, for example, a
listing of channels and information identifying media content
available from each channel over cable or via satellite
transmission. The information identifying the media content may
include metadata associated with the media content such as a unique
identifier of the media content, a title of the media content, a
rating of the media content, a genre of the media content, a
description of the media content, a duration of the media content,
and the like. As information regarding available media content from
each media device 16 is received, in response to the query or
queries, the information is aggregated and stored as an aggregated
content guide, such as in aggregate content guide repository 26. As
described more fully below, the information stored in aggregate
content guide repository 26 may be utilized by both active browsing
component 28 and passive browsing component 30. Aggregate content
guide component 24 may be invoked or otherwise executed at
predetermined times in accordance with one or more parameters
stored in device repository 22, at predetermined intervals, or in
response to a trigger, such as a user requesting the invocation of
active browsing component 28. In an exemplary embodiment, aggregate
content guide component 24 is executed on a media device 16 with
the resulting aggregate content guide stored at the media device
16. In another embodiment, aggregate content guide component 24 is
executed on a media server 14 with the resulting aggregate content
guide stored in a centralized manner at the media server 14. In
such an embodiment, media devices 16 may query the aggregate
content guide repository 26 of the media server 14.
[0031] As illustrated, a single device, such as a personal computer
(PC) may be formed of both a display device 12 and a media device
16. There is further illustrated a user interface device 32. User
interface device 32 allows a user to interface with a media device
16, such as via the display of information on a display device 12
associated with the media device 16. Examples of user interface
devices include, but are not limited to, wireless or wired remote
controls, PDAs, cell phones, and the like.
[0032] As illustrated, the communicative coupling of media server
14, media devices 16 and display devices 12 may be facilitated via
network 18. Network 18 may be a distributed public network such as,
but not limited to, the Internet, a hard wired local area network
(LAN), a wireless network, or some combination thereof. In addition
to the network 18, various media devices 16 and display devices 12
may engage in direct wireless communication with each other and
media server 14 according to, for example, one of the suite of IEEE
802.11 standards, the Bluetooth standard, or the like.
[0033] While in accordance with some exemplary embodiments display
devices 12, media server 14, and media storage devices 16 are
described as separate and distinct entities, the present disclosure
is not so limited. Rather, the disclosure is drawn broadly to
encompass devices which may combine the function of one or more
display devices 12, media server 14, and/or media storage devices
16 in a single device. As used herein, when referring to a device
that incorporates, for example, both media server and media content
storage capabilities, such as a personal computer, references to a
"media server 14" and "media storage device 16" refer to those
subsets of functionality of the device devoted to the performing
the referenced functions.
[0034] In general, as described more fully below in accordance with
an exemplary embodiment, media devices 16 operate, in a passive
browsing mode, to facilitate the display of information on a
display device 12 in accordance with a user defined user template.
Media devices 16 further operate, in an active browsing mode, to
facilitate the display of information on a display device 12 to
permit and to acquire and display media content in a desired
fashion.
[0035] The following example illustrates an exemplary embodiment of
the system according to the disclosure below. It is Sunday
afternoon and Joe is doing chores around the house. Joe has the
system set to "Screen-saver" mode. Joe has defined a passive
browsing user template instructing the system to display a web-cam
as the background (if the video stream is active) on a display
device, personal content in a thumbnail view, and specific content
alerts. Joe has defined alerts as: a. genre: sports, b. subgenre:
NY Giants, New York Yankees, Duke University, c. Time Left: <30
minutes. On Joe's preferred display, the system highlights a live
feed from the HD web-cam that he has installed at the family's
horse stable. Also, Joe's favorite photos are rotated in a
thumbnail display. Utilizing the available tuners, the system
monitors content matching Joe's preferences. The system recognizes
that two programs match Joe's alert preferences. The system
instructs two (2) available tuners to tune to the respective
channels to obtain the media content of the two programs.
Thumbnail-sized video streams are displayed via a GUI on a display
device showing the live content of the two programs along with
other (contextually relevant) information regarding the media
content. Joe did not realize that the NYG-NE game was on, but he is
too busy to watch right now, so he uses his smart phone to the
display and selects RECORD for the game.
[0036] FIG. 2 is an illustration of a flow chart of the operation
of system 10 performing passive browsing. First, a user defines a
passive browsing user template 34 (step 1000). FIG. 3 is an
illustration of the structure of an exemplary embodiment of a user
template 34. User template 34 includes user information 36,
background information 38, thumbnail information 40 and alert
information 42. User information 36 may include any and all
information indicative of attributes of a user including, but not
limited to, security information (e.g., a password, login id,
etc.), a unique identifier, voice print, facial recognition
parameters and the like. In an exemplary embodiment, user template
34 is defined in a structured, text-based file such as XML. In
another embodiment, user templates 34 may be defined in other
textual formats, by a database, or other such mechanisms. User
template 34 creation and editing tools may be provided to assist
the user such as by the provision of one or more graphical user
interfaces (GUIs) displayed on a display device 12 with the
information obtained from each GUI transmitted and stored in a user
template 34.
[0037] User templates 34 record user preferences for identifying
media content and related information to be displayed as well as
the preferred layout and positioning of such media content and
information. Specifically, background information 38 records
information describing the identity and location of media content
to be displayed in the background 44 (shown in FIG. 4) on a display
device 12. Likewise, thumbnail information 40 records information
describing the identity and location of media content to be
displayed in one or more thumbnails 46 (FIG. 4) on a display device
12.
[0038] User template 34 also contains alert information 42. Alert
information 42, described more fully below, is comprised of
parameters and conditions that specify what media content is to be
displayed and how it is to be displayed in response to what
conditions. The user can define the parameters utilized in the
alert notification 42. For example, a user may specify, via a user
template 34, a desire for system 10 to display a media content
comprising video of any active sporting event in a thumbnail 46
(FIG. 4). Expanding on the example, the user may specify to only
show the sporting event media content in a thumbnail 46 if the
sporting event is 80% or more complete.
[0039] Examples of user template parameters include, but are not
limited to, (1) type of media content (e.g., genre, sub-genre,
etc.), (2) duration (or time remaining) in the media content, (3)
content match to user preferences (i.e., how close a match is media
content to the user's preferences (such as media content type), (4)
content match to other users (i.e., show the content if N users in
the current user's social network, or other anonymous users who
closely match the current user's profile, have indicated a
preference for the media content via a user template 34), (5) alert
video type (e.g., "display live thumbnail video", "display snapshot
every n seconds", "display program logo/image", etc.), (6) alert
notification type (e.g., "highlight in specific color", "change
thumbnail size up/down", "audible alert", etc.), (7) user presence
influence (e.g., "tailor content to all users detected", "tailor
only to the user who is present and who defined the template",
"ignore presence information and utilize user template 34", etc.),
and/or (8) user presence frequency (defines how frequently the
system checks for user presence). The changing of any of these
parameters may act as a trigger, as discussed earlier. With
specific regards to user presence influence and user presence
frequency, media devices 16 may operate to determine users
currently viewing or in proximity to a display device 12 associated
with the media device 16 or any other display device 12. In an
exemplary embodiment, each media device 16 may utilize an input
device to capture sound and image data which may be matched against
information in user information 36 to determine the presence of a
user. Once the presence of a user is determined, the user's
presence may be stored in device repository 22 and made available,
via responses to queries, to other media devices 16. User presence
data may also be transmitted to media server 14 for storage in a
device repository 22 in a centralized fashion and available to all
media devices 16. Once defined, the user template 34 is stored,
such as in device repository 22. In an exemplary embodiment, user
template 34 is stored in a centralized location such as in device
repository 22 of media server 14.
[0040] In addition to the exemplary user template parameters
described above, users may have defined elsewhere in system 10
other parameters as may be defined in an overall user profile. As
described above, parameters defined in user templates 34 instruct
the system when and how to present content in the passive browsing
mode. In an exemplary embodiment, parameters defined in a user
template 34 will override any settings in a user profile.
[0041] These settings and preferences in a user template 34 may be
utilized by both the active browsing and passive browsing modes of
system 10. The passive browsing mode may also operate in "alert
only mode" in which the display is completely off until content
that exceeds a specified alert threshold is identified, such as may
be stored in alert information 42. At that time, the display is
enabled as described below and an optional audio signal is given.
After a period of time the display turns itself off again. In
another embodiment, the system 10 may simply utilize an aggregate
channel guide to identify alerts. For example, the system 10
continually monitors channels of interest to a user utilizing the
available tuners. If there are more channels to monitor than tuners
available, the system 10 may cycle through batches of channels at a
predefined interval.
[0042] Returning to FIG. 2, next, passive browsing component 30
operates to determine if a media device 16 is presently configured
to be in a passive browsing mode and, if it is, accesses the user
template 34, such as from device repository 22 (step 1002). In one
embodiment, passive browsing component 30 operates to periodically
query a device repository to access information indicative of a
mode of the media device 16. In another embodiment, passive
browsing component 30 may operate to query a device repository to
access information indicative of a mode of the media device 16 in
response to a trigger, such as the activation of a display device
12 associated with the media device 16.
[0043] Next, passive browsing component 30 operates to determine
available media devices 16 and their utilizations (step 1004). More
specifically, passive browsing component 30 operates to determine
available media devices 16 from which may be obtained current media
content and the media content available from the media devices 16.
In an exemplary embodiment, media device 16 queries a device
repository 22 to obtain an address for each other media device 16
communicatively coupled to the querying media device. In an
exemplary embodiment, this information may be obtained by a single
query to a centralized device repository 22 on media server 14.
Having determined the addresses of other media devices 16, a media
device 16 may query each other media device 16 and receive
information indicative of both media content available from the
media device 16 as well as the device utilization of each media
device 16. This information may be stored in, for example,
aggregate content guide repository 26. Again, in an exemplary
embodiment, this information may be obtained by a single query to a
centralized aggregate content guide repository 26 on media server
14. Aggregate content guide component 24 may be invoked at regular
intervals (e.g., every 30 seconds) or in response to a trigger
(e.g., another media device 16 going active).
[0044] As described above, device utilization may be indicative of
a number of tuners available to receive media content and stream
the media content to a requesting media device 16. For example, a
media device may have two (2) tuners for receiving media content
from two separate channels, but, if one tuner is presently being
utilized by a user of an associated display device 12, there is
only one (1) tuner available to receive media content and transmit
the media content to a requesting media device 16.
[0045] Then, passive browsing component 30 determines, based upon
one or more user templates 34 and an aggregate content guide, media
content and alerts to display (step 1006). Specifically, one or
more accessed user templates 34 are used to filter the information
in, for example, aggregate content guide repository 26, to
determine what media content is available from which media device
16 that matches the parameters of the one or more user templates
34. In addition to determining matches, passive browsing component
30 may determine the degree to which media content matches a user
template 34. For example, if a user defines user template
parameters indicating a preference for a genre of "sports" and a
sub-genre of "NY Giants", media content comprising two different
NFL games will match the genre parameter while an NFL game
comprising the NY Giants will match both the genre and sub-genre
parameters and will, as a result, match the user template 34 to a
greater degree.
[0046] Then, passive browsing component 30 obtains and optimizes
the display of media content determined in step 1006 on an
associated display device 12 (step 1008). Specifically, passive
browsing component 30 operates to display the most live streams of
media content possible, containing media content that is of the
most interest to the user.
[0047] As noted above, the aggregated channel guide stores
information including, for example, what media content is
available, the source for the media content, who is currently
viewing the content, etc. Further, device repository 22 stores
information indicative of the current state of other media devices
16, their utilization and the like. In an exemplary embodiment,
passive browsing component 30 may optimize a media content stream
through a selection of a media device 16 best able to provide the
media content. For example, if a user has set strict parental
controls on a media device 16 and the media device 16 cannot filter
the content, then the media device 16 would only be utilized for
"approved" channels or media content. In another example, a user
may prefer supplemental content for his favorite shows. As a
result, passive browsing component 30 may operate to identify and
utilize a media device 16 with Internet access to obtain the
desired supplemental content. In accordance with an exemplary
embodiment, passive browsing component 30 may stream the most
preferred media content from media devices 16 capable of providing
the best quality media content stream. For example, while browsing
sports, passive browsing component 30 may stream the Super Bowl
from a media device 16 able to provide the best quality media
content stream of the Super Bowl and receive a bowling tournament
from a media device 16 that is not capable of providing as high
quality a media content stream. In addition, it is noted that
different media devices 16 may have access to different media
content sources affecting the selection of different media devices
16 for the provision of different media content.
[0048] In exemplary embodiments, user preference information stored
in user template 34 is utilized to determine media content for
display as well as the manner in which the media content is
displayed. In an exemplary embodiment, user template 34 includes
preferred user interface settings such as a preferred number of
thumbnails and preferred secondary criteria to be used when
choosing/optimizing media content to be displayed (e.g., degree of
interest match, degree of profile match, etc). In other exemplary
embodiments, passive browsing component 30 further considers the
availability of supplemental content related to media content,
parental controls associated with media content, and genre/category
preferences of a user when deciding which media content to display.
Passive browsing component 30 may further consider alert settings
as described more fully below when determining media content to
display.
[0049] As noted above, it may be the case that a first media device
16 has access to more than one media content item that has been
requested to be streamed to another media device 16 but is unable
to stream both media content items simultaneously. This may result,
for example, if a media device 16 has two tuners but one is
currently utilized by another user.
[0050] In an exemplary embodiment, there is described the virtual
aggregation of tuners to address this shortcoming. Specifically, as
described below, virtual aggregation of tuners operates to
accommodate an instance where there are not a suitable number of
tuners available to acquire and stream the desired media content,
or to simply provide more concurrent thumbnail views. Virtual
aggregation of tuners operates in two modes: (1) video and (2)
image. In both modes, two (2) or more channel requests for media
content are sent to a single media device 16. In video mode, the
media device receiving the request rotates acquisition of the two
or more channels of media content on a single tuner at
predetermined intervals. For example a single tuner acquires 30
seconds of a first media content and streams the first media
content to a requesting media device 16. The same tuner then
acquires 30 seconds of a second media content and streams the
second media content to a requesting media device 16 before
switching back to the first media content. As each media content
stream is received by the requesting media device 16, passive
browsing component 30 directs each stream to a different thumbnail
46. After each media content stream is displayed in a thumbnail 46,
the media content is repeated in the same thumbnail 46 one time
while the other thumbnail displays the other media content stream.
In an exemplary embodiment, passive browsing component 30 records
each media content stream as it is received, such as in aggregate
content guide repository 26. In this manner, each media content
stream is displayed as it is received with the second display
retrieved from memory.
[0051] In exemplary embodiments of browse mode, passive browsing
component 30 operates, as in video mode, to request and receive two
streams of media content. However, in image mode, each received
stream consists of a single image and the interval between the
streaming of different media content is comparatively short, such
as on the order of a subsecond. Upon receiving each requested media
content stream, passive browsing component 30 displays each media
item content stream, comprised of an image, to a respective
thumbnail 46. In this manner, the illusion of continuous motion is
achieved in each thumbnail 46.
[0052] As described above, passive browsing component 30 performs
optimization to the video prior to displaying in the thumbnails. In
exemplary embodiments, various optimizations may be performed on
the media device 16 (e.g., on a DVR) from which media content is
streamed, on a requesting media device 16 or on another media
device 16 or media server 14 that may be idle but has the required
capabilities. The following exemplary preparations and
optimizations may be performed on media content. In a first
example, commercial optimization is performed whereby if streamed
media content is currently streaming an advertisement, passive
browsing component 30 operates to display a loop of the previous 15
seconds of the media content stream prior to the advertising
segment in a thumbnail 46. In such an instance, an icon, or other
indication may be displayed alongside the thumbnail 46 to inform
the user that a commercial is currently being streamed. In another
embodiment, video optimization may be employed. In such an
instance, the quality of media content is altered (e.g., reduced in
resolution) for display based on a thumbnail 46 size. In addition,
other video analysis techniques may be employed such as zooming in
on the critical parts of a media content stream. In another
embodiment, content filtering may be performed such as based on
parental controls or other preferences. In such an instance the
media content to be displayed in a thumbnail 46 may be filtered to
match the preferences set for the users watching the display device
12 on which the media content is displayed.
[0053] It is further noted that, in addition to streaming media
content, passive browsing component 30 may also operate, in
accordance with user template 34, to retrieve media content
comprising still images for display, such as from media content
repository 20 of media server 14. Once media content has been
acquired and optimized, passive browsing component 30 operates to
display the media content in accordance with a user template 34 on
an associated display device 12.
[0054] FIG. 4 is an illustration of an exemplary passive browsing
GUI 48 for displaying media content on a display device 12 in
passive browsing mode. In the exemplary embodiment illustrated,
passive browsing GUI 48 includes a background 44 and three
thumbnails 46(0)-46(2). In the first thumbnail 46(0), image stills
are displayed in succession as a slide show. As described above,
parameters defining, for example, the source of the images, the
duration to display each image, etc. may be defined in a user
template 34 such as in thumbnail information 40. The second
thumbnail 46(1) is displaying a frame or video loop indicating an
upcoming basketball game between Duke and Kentucky. The third
thumbnail 46(2) is displaying a stream of a football game between
the Patriots and the NY Giants with a picture-in-picture element 52
announcing the future display of the television show "Lost".
[0055] In accordance with an exemplary embodiment, a user may
temporarily override user template 34 parameters to fine tune the
display of a thumbnail 46. For example, a user may select, such as
via a user interface device 32 in communication with a media device
16, a profile match indicator 54. For example, selection of a
profile match indicator 54 may cause the media device 16 to
identify and display media content that best matches a user
template 34. In accordance with other exemplary embodiments, the
selection or activation of a component of passive browsing GUI 48
may cause the media device 16 to identify and display media content
that may be of interest to other users in a home.
[0056] As illustrated, graphic indicators on thumbnails 46 may be
displayed alongside or incorporated in thumbnails 46 to assist a
viewer. For example, profile match indicator 54 provides an
indication of how well the media content matches the user's
preferences such as described in a user template 34. A border 56
may indicate that someone in a house utilizing the system 10 is
watching the media content displayed in the thumbnail 46. Other
indicators may include an indicator to allow the user to view the
media content currently streaming or as another user is viewing.
Yet other graphic indicators may include user image icons
indicating that family or friends are watching the media content
within a home comprising system 10. In an exemplary embodiment, a
commercial indicator, such as an "Ad" icon 47, may indicate that
media content is currently showing an ad, while further indicating
that the media content displayed in the thumbnail 46 is not the ad
but is rather the most recent media content from the show. In
another exemplary embodiment the time remaining for media content
may be displayed, such as in thumbnail text 50. In yet other
exemplary embodiments, an information button 58 may be displayed.
Information button 58 may inform a user that additional metadata or
user-generated content is available for the media content.
Selecting or otherwise activating information button 58 may cause
the media device 16 to retrieve and display a portion of the
additional metadata such as in thumbnail text 50. In yet other
exemplary embodiments, graphic indicators may display indications
of the relevance of a particular segment of media content, score
alerts, end of game notices, and the like.
[0057] Note that there are illustrated two different ways of
depicting upcoming media content. If, for example, media content is
close to completing or a media content of interest to the user is
upcoming next, information and/or video of the upcoming program may
be displayed. For example, thumbnail 46(1) displaying a Duke-UK
game shows a simple overlay 60 at the bottom of thumbnail 46 with
the time and title of the media content and an arrow. The user may
select the arrow to obtain more detail. In another example,
thumbnail 46(2) displaying a NYG-NE game displays a thumbnail of
the preview of the media coming up next in picture-in-picture
element 52.
[0058] Returning to FIG. 2, passive browsing component 30 then
displays the optimized media content streams (step 1010) and
proceeds to monitor for additional alerts (step 1012). If passive
browsing component 30 determines a condition satisfying an alert
description in alert information 42, processing continues to step
1008 where media content streams are once again obtained and
optimized for display. Conversely, if it is determined that no
alert condition exists, passive browsing component 30 sleeps for a
predetermined amount of time before proceeding once again to step
1012 (step 1014).
[0059] In addition to the passive browsing mode illustrated and
described above, a media device 16 may likewise execute an active
browsing component 28. Active browsing component 28, as described
more fully below, operates to display media content selections to a
user by utilizing the thumbnails 46 described above with reference
to passive browsing.
[0060] FIG. 5 is an illustration of a flow chart for performing
active browsing according to an exemplary embodiment. First, a user
initiates active browsing and selects a media item attribute, such
as a genre or category for browsing (step 2000). FIG. 6 is an
illustration of an exemplary active browsing GUI 62 for active
browsing. As illustrated, active browsing GUI 62 comprises one or
more thumbnails 46 and genre selectors 64. In an exemplary
embodiment, active browsing component 28 is invoked via a user
interface device 32 such as a remote control.
[0061] Returning to FIG. 5, next, active browsing component 28
operates to determine available media devices 16 from which may be
obtained current media content and the media content available from
the media devices 16 (step 2002). In an exemplary embodiment, media
device 16 queries a device repository 22 to obtain an address for
each other media device 16 communicatively coupled to the querying
media device. In an exemplary embodiment, this information may be
obtained by a single query to a centralized device repository 22 on
media server 14. Having determined the addresses of other media
devices 16, a media device 16 may query each other media device 16
and receive information indicative of both media content available
from the media device 16 as well as the device utilization of each
media device 16. This information may be stored in, for example,
aggregate content guide repository 26. Again, in an exemplary
embodiment, this information may be obtained by a single query to a
centralized aggregate content guide repository 26 on media server
14.
[0062] In accordance with another exemplary embodiment, aggregate
content guide component 24 may be executed or otherwise invoked to
query and receive from each other media device 16 information
indicative of both media content available from the other media
device 16 as well as the device utilization of each other media
device 16 with the received information stored in, for example,
aggregate content guide repository 26. Aggregate content guide
component 24 may be invoked at regular intervals (e.g., every 30
seconds) or in response to a trigger (e.g., another media device 16
going active).
[0063] Next, active browsing component 28 determines, based on the
aggregated content guide, currently playing media content matching
the selected genre or category (step 2004). Active browsing
component 28 proceeds to prioritize the matching media content,
such as based upon length of time remaining in each media content,
and instructs available media devices to tune into channels
corresponding to higher prioritized media content (step 2006).
[0064] Then, active browsing component 28 obtains and optimizes the
prioritized media content determined in step 2006 (step 2008) and
displays one or more thumbnails 46 for the media content on an
associated display device 12 (step 2010) in a manner similar to
that described above with reference to passive browsing. In
exemplary embodiments, active browsing component 28 may further
display additional graphic indicators as described above with
reference to passive browsing (step 2012). Once the thumbnails 46
have been displayed, a user may select a channel corresponding to a
thumbnail 46 to watch or record or may continue browsing (step
2014).
[0065] In an exemplary embodiment, the navigation between
thumbnails is performed with a "Wii-like" user interface device 32
or via standard arrows on a standard remote. When a thumbnail 46 or
genre selector 64 is selected (or hovered over), audio for the
associated media content may be played and the user has the option
to play or record the media content. In an exemplary embodiment, a
user may select a thumbnail 46 and choose "show others: by actor".
In response, a list of actors on the current media content may be
displayed. Selecting one of the actors initiates a new grouping. In
accordance with other embodiments, alternative browsing methods may
be provided. For example, a navigation means to select/browse media
content by year of creation, such as 60's, 70's, or 80's, for
example may be provided. In another embodiment, family members of a
user may be listed across the bottom of a thumbnail 46. Selecting
one of the family members may cause to be displayed content of
interest to the user.
[0066] FIG. 7 is a block diagram of a media device 16 of FIG. 1
according to one embodiment of the present disclosure. As
illustrated, the media device 16 includes a controller 66 connected
to memory 68, one or more secondary storage devices 70, a
communication interface 72, and one or more user interface
components 74 by a bus 76 or similar mechanism. The controller 66
is a microprocessor, digital ASIC, FPGA, or the like. In this
embodiment, the controller 66 is a microprocessor, and software for
performing the functions of media device 16 described above is
stored in the memory 68 for execution by the controller 66.
Further, depending on the particular embodiment, the various
repositories 22, 26 are stored in the one or more secondary storage
devices 70. The one or more secondary storage devices 70 are
digital storage devices such as, for example, one or more hard disk
drives. The communication interface 72 is a wired or wireless
communication interface that communicatively couples the media
device 16 to the network 18 (FIG. 1) as well as to external sources
of media content including, but not limited to, cable and satellite
signals. For example, the communication interface 72 may be an
Ethernet interface, local wireless interface such as a wireless
interface operating according to one of the suite of IEEE 802.11
standards, a mobile communications interface such as a cellular
telecommunications interface, or the like.
[0067] FIG. 8 is a block diagram of a media server 14 of FIG. 1
according to one embodiment of the present disclosure. As
illustrated, the media server 14 includes a controller 78 connected
to memory 80, one or more secondary storage devices 82, a
communication interface 84, and one or more user interface
components 86 by a bus 88 or similar mechanism. The controller 78
is a microprocessor, digital ASIC, FPGA, or the like. In this
embodiment, the controller 78 is a microprocessor, and software for
performing the functions of media server 14 described above is
stored in the memory 80 for execution by the controller 78.
Further, depending on the particular embodiment, the various
repositories 20, 22, 26 are stored in the one or more secondary
storage devices 82. The one or more secondary storage devices 82
are digital storage devices such as, for example, one or more hard
disk drives. The communication interface 84 is a wired or wireless
communication interface that communicatively couples the media
server 14 to the network 18 (FIG. 1) as well as to external sources
of media content including, but not limited to, cable and satellite
signals. For example, the communication interface 84 may be an
Ethernet interface, local wireless interface such as a wireless
interface operating according to one of the suite of IEEE 802.11
standards, a mobile communications interface such as a cellular
telecommunications interface, or the like.
[0068] Those skilled in the art will recognize improvements and
modifications to the preferred embodiments of the present
invention. All such improvements and modifications are considered
within the scope of the concepts disclosed herein and the claims
that follow.
* * * * *