U.S. patent application number 11/647787 was filed with the patent office on 2008-07-03 for systems and methods for creating custom video mosaic pages with local content.
This patent application is currently assigned to Guideworks, LLC. Invention is credited to Michael Craner.
Application Number | 20080163059 11/647787 |
Document ID | / |
Family ID | 39204004 |
Filed Date | 2008-07-03 |
United States Patent
Application |
20080163059 |
Kind Code |
A1 |
Craner; Michael |
July 3, 2008 |
Systems and methods for creating custom video mosaic pages with
local content
Abstract
Systems and methods for providing custom video mosaic pages are
provided. The custom pages may be locally-generated,
remotely-generated, or partially locally-generated and partially
remotely-generated. The custom pages may include local content,
such as content recorded to a digital video recorder (DVR),
overlaid on a multi-video composite feed. A local compositing
system may render the mosaic pages and dynamically customize the
pages based on user profile data, user preferences, and active user
monitoring.
Inventors: |
Craner; Michael; (Exton,
PA) |
Correspondence
Address: |
ROPES & GRAY LLP
PATENT DOCKETING 39/361, 1211 AVENUE OF THE AMERICAS
NEW YORK
NY
10036-8704
US
|
Assignee: |
Guideworks, LLC
Radnor
PA
|
Family ID: |
39204004 |
Appl. No.: |
11/647787 |
Filed: |
December 28, 2006 |
Current U.S.
Class: |
715/719 ;
348/E5.104; 348/E5.105; 348/E7.061 |
Current CPC
Class: |
H04N 21/4316 20130101;
H04N 21/47 20130101; H04N 21/4147 20130101; H04N 21/4622 20130101;
H04N 21/4821 20130101; H04N 21/482 20130101; H04N 21/440263
20130101; H04N 7/163 20130101; H04N 21/4532 20130101; H04N 5/44591
20130101; H04N 5/44543 20130101 |
Class at
Publication: |
715/719 |
International
Class: |
G06F 3/048 20060101
G06F003/048 |
Claims
1. A method for displaying a video mosaic page on a user equipment
device, the method comprising: receiving a video feed comprising a
plurality of video assets for display in a video mosaic page;
receiving screen data that defines at least one placeholder video
cell in the video mosaic page and an action to be performed in
response to a user selection of the at least one placeholder video
cell; overlaying at least one local video asset on the video feed
in a position corresponding to the at least one placeholder video
cell; and displaying the video feed and local video asset in an
interactive display.
2. The method of claim 1 wherein the action to be performed in
response to a user selection of the at least one placeholder video
cell is selected from the group consisting of tuning to a video
asset, displaying more information, displaying an advertisement,
setting a reminder, and recording a program.
3. The method of claim 1 further comprising: receiving a user
selection of one of the plurality of video assets in the
interactive display; and displaying the selected video asset in
full-screen mode in response to receiving the user selection.
4. The method of claim 1 further comprising monitoring user
interaction with the user equipment device and saving user
interaction information to a user profile.
5. The method of claim 4 further comprising selecting the at least
one local video asset based on the user interaction information in
the user profile.
6. The method of claim 4 further comprising saving user viewing
preferences to the user profile.
7. The method of claim 6 further comprising selecting the at least
one local video asset based on the user interaction information and
the user viewing preferences in the user profile.
8. The method of claim 1 wherein overlaying at least one local
video asset comprises extracting a video loop from the at least one
local video asset and overlaying the extracted video loop.
9. The method of claim 8 further comprising selecting a specific
portion of the local video asset for the extracting using a scene
change algorithm.
10. The method of claim 9 where the scene change algorithm is
selected from the group consisting of an unsupervised segmentation
algorithm and a motion estimation algorithm.
11. The method of claim 1 wherein the plurality of video assets are
selected from the group consisting of broadcast video assets,
multicast video assets, on-demand video assets, pay-per-view video
assets, and Internet video assets.
12. The method of claim 1 wherein the local video asset is selected
from the group consisting of locally-recorded video, games,
interactive applications, and videophone messages.
13. The method of claim 1 wherein the screen data defines the size
or the position of the at least one placeholder cell in the video
mosaic page.
14. The method of claim 1 wherein the screen data is locally
generated.
15. The method of claim 1 wherein the video feed comprises a
remotely composited video that was composited by a compositing
facility that is remote from the user equipment device, the
composited video comprising two or more component videos wherein at
least one of the component videos is sourced by the user equipment
device to the remote compositing facility.
16. The method of claim 1 wherein the video feed comprises a video
multiplex with the plurality of video assets multiplexed together,
wherein each video asset is carried in a separate video stream that
is distinct from the other video streams and wherein the number of
pixels of each video asset corresponds to less than 80% of those
that would nominally fill the entire display of the user equipment
device.
17. The method of claim 16 further comprising decompressing at
least one of the plurality of video assets and compositing the
decompressed video assets with at least one local video asset,
wherein the position of the composited local video asset
corresponds to the position of the at least one placeholder video
cell.
18. A system for displaying a video mosaic page on a user equipment
device, the system comprising: a memory for storing at least one
local video asset; and control circuitry configured to: receive a
video feed comprising a plurality of video assets for display in a
video mosaic page; receive screen data that defines at least one
placeholder video cell in the video mosaic page and an action to be
performed in response to a user selection of the at least one
placeholder video cell; overlay the at least one local video asset
on the video feed in a position corresponding to the at least one
placeholder video cell; and display the video feed and local video
asset in an interactive display.
19. The system of claim 18 wherein the action to be performed in
response to a user selection of the at least one placeholder video
cell is selected from the group consisting of tuning to a video
asset, displaying more information, displaying an advertisement,
setting a reminder, and recording a program.
20. The system of claim 18 wherein the control circuitry is further
configured to: receive a user selection of one of the plurality of
video assets in the interactive display; and display the selected
video asset in full-screen mode in response to receiving the user
selection.
21. The system of claim 18 wherein the control circuitry is further
configured to monitor user interaction with the user equipment
device and save user interaction information to a user profile.
22. The system of claim 21 wherein the control circuitry is further
configured to select the at least one local video asset based on
the user interaction information in the user profile.
23. The system of claim 21 wherein the control circuitry is further
configured to save user viewing preferences to the user
profile.
24. The system of claim 23 wherein the control circuitry is further
configured to select the at least one local video asset based on
the user interaction information and the user viewing preferences
in the user profile.
25. The system of claim 18 wherein the control circuitry is
configured to overlay at least one local video asset by extracting
a video loop from the at least one local video asset and overlaying
the extracted video loop.
26. The system of claim 25 wherein the control circuitry is further
configured to select a specific portion of the local video asset
for the extracting using a scene change algorithm.
27. The system of claim 26 where the scene change algorithm is
selected from the group consisting of an unsupervised segmentation
algorithm and a motion estimation algorithm.
28. The system of claim 18 wherein the plurality of video assets
are selected from the group consisting of broadcast video assets,
multicast video assets, on-demand video assets, pay-per-view video
assets, and Internet video assets.
29. The system of claim 18 wherein the local video asset is
selected from the group consisting of locally-recorded video,
games, interactive applications, and videophone messages.
30. The system of claim 18 wherein the screen data defines the size
or the position of the at least one placeholder cell in the video
mosaic page.
31. The system of claim 18 wherein the screen data is locally
generated.
32. The system of claim 18 wherein the video feed comprises a
remotely composited video that was composited by a compositing
facility that is remote from the user equipment device, the
composited video comprising two or more component videos wherein at
least one of the component videos is sourced by the user equipment
device to the remote compositing facility.
33. The system of claim 18 wherein the video feed comprises a video
multiplex with the plurality of video assets multiplexed together,
wherein each video asset is carried in a separate video stream that
is distinct from the other video streams and wherein the number of
pixels of each video asset corresponds to less than 80% of those
that would nominally fill the entire display of the user equipment
device.
34. The system of claim 33 wherein the control circuitry is further
configured to decompress at least one of the plurality of video
assets and composite the decompressed video assets with at least
one local video asset, wherein the position of the composited local
video asset corresponds to the position of the at least one
placeholder video cell.
Description
BACKGROUND OF THE INVENTION
[0001] This invention relates generally to media systems and, more
particularly, to media systems supporting custom video mosaic
pages.
[0002] Video mosaic pages allow users to access services and video
assets from video-rich menu screens in an interactive application,
such as an interactive media guidance application. These video-rich
menu screens may present a plurality of video assets (e.g.,
broadcast television channels or on-demand content) each in its own
video window, or cell, on a single page.
[0003] Video mosaic pages are typically remotely-generated at a
distribution facility or central facility. At the distribution
facility or central facility, the video assets in the mosaic page
are composited into a single video feed before being transmitted to
the user equipment device. The multi-video feed may be transmitted
as a composite stream (e.g., MPEG-2 stream) to a number of user
equipment devices. For example, the composite stream may be
transmitted to user equipment devices over a digital television
channel. After the stream is received by the user equipment
devices, a local video mosaic client may overlay graphics, icons,
and text onto the display to create custom video mosaic pages. For
example, one implementation of a video mosaic system for providing
video mosaic pages called "Video-Rich Navigation" (VRN) is
described in U.S. patent application Ser. No. 11/395,380, filed
Mar. 30, 2006, which is hereby incorporated by reference herein in
its entirety.
[0004] Although video mosaic pages provide a more user-friendly way
to present video assets to viewers, the pages may be limited in
several respects. For example, because video mosaic pages are
typically remotely-generated, there is very little flexibility for
users to personalize the look and feel of the page. The
remotely-generated nature of these pages also prevents dynamic page
creation and customization, for example, at the viewer's user
equipment.
[0005] In addition, typical video mosaic pages are limited in the
type of content that is available for display in the pages. Because
the pages are typically remotely-generated, local content, such as
content stored on a digital video recorder (DVR), gaming device, or
other suitable local storage device, are generally not available
for use in video mosaic pages.
[0006] Accordingly, it would be desirable to provide systems and
methods for dynamic video mosaic page creation and display. The
video mosaic pages may combine local content with broadcast,
multicast, switched digital video, and on-demand assets in a single
interactive display. It would also be desirable to provide video
mosaic pages capable of being automatically customized based on
user behavior and user preferences.
SUMMARY OF THE INVENTION
[0007] In accordance with the principles of the present invention,
a VRN client is implemented on a user equipment device. The VRN
client supports the generation of video mosaic pages from various
video asset sources. These asset sources may include linear content
sources (e.g., broadcast television sources), non-linear content
sources (e.g., on-demand and Internet sources), and local sources
(e.g., recorded content, local gaming content, and content stored
in memory).
[0008] The VRN client may create or present locally-generated and
remotely-generated video mosaic pages or a combination of locally
and remotely-generated video mosaics. The video sources in
remotely-generated pages may be composited remote from the user
equipment device into a single video feed. In this type of
arrangement, screen data may be transmitted to the user equipment
device, either in-band or out-of-band, that identifies the video
sources in the mosaic page as well as any other information
necessary to successfully display the page. Suitable information
necessary to successfully display the page may include, for
example, action data that defines the behavior and response to a
viewer selection of a cell (or group of cells) in the mosaic page,
graphics, on-screen text, advertisements, and any other elements
that are to be displayed with or on the mosaic page.
[0009] The screen data may also include one or more placeholder
cell definitions. The placeholder cell definitions may include
information relating to one or more cells of the video mosaic page
that do not correspond to video in the transmitted composite
multi-video feed. Thus, the remotely-generated multi-video feeds in
accordance with the invention may have one or more "blank" areas
corresponding to placeholder cell locations. The video assets
presented in the placeholder cells may be identified and selected
dynamically at the user equipment by the VRN client. These video
assets may include local content. For example, recorded content,
local gaming content, and videophone messages may be presented in
the placeholder cells. The selection of video assets for
presentation in the placeholder cells may be based on active user
monitoring, direct interaction from a user, user preferences, or
any other suitable user-derived or user-generated data.
[0010] For example, placeholder cell definitions in the received
screen data may include local function calls that are executed
automatically as the screen data is received by the user equipment
device. The local function calls may return suitable identifying
information about local assets to be displayed in one or more
placeholder cells of the mosaic page. This identifying information
may include, for example, local file system paths for text,
advertisements, and video assets to be presented in the placeholder
cells or elsewhere on the mosaic page.
[0011] After receiving the screen data, the VRN client may
determine the size and location of any placeholder cells (e.g., x
and y coordinates) in the video mosaic page. The VRN client may
then overlay suitable content, including local content, at the
appropriate positions corresponding to the placeholder cells. In
this way, VRN pages with one or more video assets selected at the
user equipment device may be presented to the user.
[0012] Mosaic pages in accordance with the present invention may
also be completely locally-generated, if desired. The video sources
included in the locally-generated pages may be composited at the
user equipment device that the page is to be displayed on. Local
assets may populate some or all of the cells of the
locally-generated mosaic page. The remaining cells may be populated
with on-demand content, broadcast television content, or any other
video content accessible by the user equipment.
[0013] In order to overlay a local video asset on a video mosaic
page or create locally-generated pages, in some embodiments, a
local MPEG (or other suitable video standard) compositing system
may extract selected portions of local content for use in the video
mosaic page. The extracted portion or portions may be saved to the
user equipment device as a continuous or looping video file. The
portions selected for extraction may be determined, for example, by
a scene selection algorithm that identifies scene changes within a
video asset. In some embodiments, the scene selection algorithm may
also analyze user viewing behavior or user preferences to determine
which portions of the local content to extract for use in the video
mosaic page. For example, if a certain portion of a local video
asset (e.g., the user's favorite scene) is watched more frequently
then other portions, this portion may be selected by the scene
selection algorithm for extraction.
[0014] In some embodiments, appropriate content for looping may be
identified in advance by the content provider and communicated to
the user equipment device by a sideband signal or markings within
the video, or the location of looping content within an asset may
be known in advance by a standard established for locating looping
content by the system operator (e.g., looping content may always be
placed in the last minute of a program).
[0015] In some embodiments, the VRN client is configured to
generate and display various custom video mosaic pages. These
custom pages may be populated, for example, with the user's most
frequently watched broadcast programs, on-demand content, and
recorded content. In some embodiments, videophone messages received
for the user may also populate one or more cells of the custom
mosaic pages.
[0016] In some embodiments, video mosaic pages may be dynamically
customized on-the-fly based on such factors as, for example, active
user monitoring, user behavior, and user preference information.
The VRN client (or some other application) may monitor all user
interaction with the user equipment device. The application may
then log this user interaction information to the user equipment
device and build a profile for each user accessing the user
equipment device. From the profile data, the VRN client may select
particular video assets, such as assets the user has recently
watched, accessed, or recorded, assets that the user has bookmarked
(e.g., VOD assets), assets that the user might like (based on,
e.g., frequently accessed genre categories), video messages that
have been received but not yet displayed, or any other suitable
video assets, for display in a custom video mosaic page.
[0017] In multi-room DVR systems, a local VRN page may display
portions of content that are stored on a user equipment device
other than the local user equipment device. Selection of such
content may be made on a user basis. For example, a user may have
logged into different devices (e.g., a set-top in the living room
and one in the bedroom) and started watching different content in
each context. Upon accessing (e.g., logging in) to either device, a
custom "In progress for this user" VRN page may pull content from
both devices and composite the content into a locally-generated VRN
page that is displayed upon the local device.
[0018] In some embodiments, compositing is done remote from the
user equipment device that ultimately displays the VRN content, but
the composited result includes content sourced from the local user
equipment device. For example, consider a user that is local to a
mid-range user equipment device that supports DVR, remote
streaming, but not local compositing. However, within the home or
within the network, there exists another high-end user equipment
device that supports DVR, remote streaming, and local compositing,
or there exists a compositing-only engine on the network. As such,
some embodiments may involve providing at least part of the content
to be composited into a VRN page from the device that ultimately
displays the composited VRN result.
BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The above and other features of the present invention, its
nature and various advantages will be more apparent upon
consideration of the following detailed description, taken in
conjunction with the accompanying drawings, in which:
[0020] FIG. 1 is a simplified diagram of an illustrative
interactive video mosaic media system architecture in accordance
with one embodiment of the invention;
[0021] FIG. 2 is a simplified diagram of illustrative network and
local content sources for use in video mosaic page composition in
accordance with one embodiment of the invention;
[0022] FIG. 3 is an illustrative generic display screen showing a
number of video windows, or cells, of a video mosaic page in
accordance with one embodiment of the invention;
[0023] FIG. 4 is an illustrative display screen showing a "what's
hot" video mosaic homepage in accordance with one embodiment of the
invention;
[0024] FIG. 5 is an illustrative display screen showing a "what's
hot on-demand" video mosaic homepage in accordance with one
embodiment of the invention;
[0025] FIG. 6 is an illustrative display screen showing a "what's
hot in my DVR" video mosaic homepage in accordance with one
embodiment of the invention;
[0026] FIG. 7 is an illustrative display screen showing a "what's
hot that I might like" video mosaic homepage in accordance with one
embodiment of the invention;
[0027] FIG. 8 shows illustrative mark-up language files including
cell definition tags in accordance with one embodiment of the
invention;
[0028] FIG. 9 shows a simplified illustrative process for
displaying locally-generated or remotely-generated video mosaic
pages in accordance with one embodiment of the invention;
[0029] FIG. 10 shows a simplified illustrative process for
populating video mosaic cells with extracted portions of local
content in accordance with one embodiment of the present invention;
and
[0030] FIG. 11 shows a simplified illustrative process for
monitoring user behavior and displaying custom video mosaic pages
in accordance with one embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0031] The systems and methods described herein are directed toward
providing custom video mosaic pages. Although the term "video-rich
navigation" or "VRN" is sometimes used herein when referring to the
mosaic pages, system elements (e.g., the VRN client), and the
mosaic environment, the present invention is compatible with any
video mosaic environment. The VRN environment is just one example
of a suitable implementation of a video mosaic environment, which
is described in more detail in U.S. patent application Ser. No.
11/395,380.
[0032] As described in more detail below, these custom mosaic pages
may display various types of video assets, including
locally-recorded assets, in one or more video windows, or cells, of
the mosaic page. In addition to full-motion video and associated
audio, these cells may also include still images, text, icons,
logos, advertising, or any combination of these (or any other
suitable) elements. The particular video assets included in the
cells of the custom mosaic pages may be selected based on a number
of criteria, such as active user monitoring and user preferences.
In this way, the video mosaic pages of the present invention may
provide a more personalized look and feel with significant
relevance to the user.
[0033] FIG. 1 shows illustrative media system 100 for providing
custom video mosaic pages. Central facility 10 may include content
source 12, VRN screen data source 14, and distribution equipment
16. Content source 12 may include any equipment suitable for
producing or generating VRN pages or screens including MPEG-4 based
compositing technologies and may receive content over any suitable
network (e.g., a Gigabit Ethernet network). The video content from
content source 12 may be in analog or digital form. In other
embodiments, content source 12 may be in a facility other than
central facility 10, and may also provide content for distribution
of regular television channels (e.g., broadcast programming and VOD
content).
[0034] VRN screen data source 14 may be any equipment suitable for
generating VRN screen data. For example, VRN screen data source 14
may be a personal-computer (PC) based system or a workstation. User
interface 18 may be any suitable interface, such as a Windows-based
or Unix-based graphic user interface (GUI), which allows, for
example, an operator to define VRN definitional files and
synchronize the VRN screen data of the definitional files with
content from content source 12. The user interface may allow an
operator to, for example, specify transitions between distinct
configuration specifications for selectable items in
synchronization with video content. The user interface may also
allow an operator to define control data which controls, inter
alia, the appearance, functionality, and interactivity of the
screen elements, as well as the content or asset displayed in a
screen element.
[0035] The screen data may also include local functions calls to be
executed on user equipment 30 (by either VRN client 31 or control
circuitry 32). The local function calls may be inserted into the
screen data by central facility 10 or distribution facility 20. The
local function calls may return suitable data values, such as the
local path to recording device 36 or other local storage within
user equipment 30, an identification of local content to be
included in a music page, or any other suitable information. In
some embodiments, the local functions are part of an application
program interface (API) used to interface with VRN client 31. VRN
client 31 may automatically execute any local function calls
embedded in the screen data immediately after receiving the screen
data, or the instructions and function calls may be executed at
some later time (e.g., when a user attempts to access or display
the mosaic page). FIG. 8, described below, shows illustrative
mark-up language tags used to transmit local function calls within
the screen data in some embodiments.
[0036] Compiler 20, which may include any suitable combination of
hardware and software, may compile or translate the VRN screen data
of the definitional files into another format, such as binary, XML,
or HTML format. In some embodiments, input from user interface 18
may be used to directly generate the screen data without need for
compiler 20.
[0037] Distribution equipment 16 may be any suitable equipment for
distributing VRN pages from content source 12 and VRN screen data
from VRN screen data source 14 over communications path 19 to
distribution facility 20, and further over communication path 28
for distribution to user equipment 30. Central facility 10 may
distribute the VRN pages and screen data to multiple distribution
facilities 20, but only one has been shown to avoid
over-complicating the drawing. In other embodiments, central
facility 10 may distribute the VRN pages and screen data to users
at user equipment 30 directly. Distribution equipment 16 may
distribute the VRN screens and VRN screen data in any suitable
analog or digital format and over any suitable communications path
(e.g., satellite or terrestrial broadcast or the Internet). VRN
screen data may be distributed in-band or out-of-band with respect
to the VRN pages. The screen data may also be sent synchronously
with the VRN pages or asynchronously. For example, screen data, VRN
pages, or both, may be sent at times of reduced network
utilization.
[0038] Distribution facility 20 may be any facility (e.g., a cable
headend) suitable for receiving the VRN screens and screen data and
distributing the screens and screen data to user equipment 30.
There may be multiple users at multiple instances of user equipment
30, but only one instance of user equipment has been shown to avoid
over-complicating the drawing. Distribution facility 20 may include
local insertion equipment 22 and content source 24 for allowing a
local operator to insert content and data into the VRN screens or
VRN screen data, respectively, and compile VRN screen data into
binary format for transmission (if required). Local insertion
equipment 22 may run, for example, a local version of user
interface 18 and compiler 20.
[0039] Distribution equipment 26 may distribute the VRN pages and
VRN screen data in any suitable analog or digital format and over
any suitable communications path to user equipment 30 (e.g.,
broadcast, cable, or the Internet.). The communication paths 19,
49, and 28 may include, for example, a satellite path, a
fiber-optic path, a cable path, an Internet path, or any other
suitable wired or wireless path. For example, VRN pages may be
provided as MPEG-2 or MPEG-4 feeds. Distribution equipment 26 may
provide each VRN page (and the VRN screen data) as a tunable analog
or digital channel, or as a VOD stream (both of which are referred
to herein as VRN channels). The VRN channels provide the users of
user equipment 30 with a set of interactive features that make up a
VRN application.
[0040] In some embodiments, distribution facility 20 may provide
the VRN channel full-time over a given analog or digital channel.
Alternatively, distribution facility 20 may provide VRN channels
on-demand or during specific time intervals or using switched
digital video technology.
[0041] Distribution facility 20 may provide one or more VRN
applications to user equipment 30. A VRN application may include
one or more VRN pages, buttons, and associated functionality. For
example, FIG. 4, described in more detail below, shows a homepage
display screen associated with an illustrative VRN "what's hot"
application.
[0042] User equipment 30 may include any equipment suitable for
providing an interactive media experience and for implementing the
VRN applications provided by distribution facility 20. User
equipment 30 may include television equipment such as a television,
set-top box, recording device, video player, user input device
(e.g., remote control, keyboard, mouse, touch pad, touch screen, or
voice recognition interface), or any other device suitable for
providing an interactive multimedia experience. For example, user
equipment 30 may include a DCT 2000, 2500, 5100, 6208 or 6412
set-top box provided by Motorola, Inc. In some embodiments, user
equipment 30 may include computer equipment, such as a personal
computer with a television card (PCTV). In some embodiments, user
equipment 30 may include a gaming system, a portable electronic
device, such as a portable DVD player, a portable gaming device, a
cellular telephone, a video phone, a PDA, a music player (e.g., MP3
player), or any other suitable portable or fixed device.
[0043] In the example of FIG. 1, user equipment 30 includes control
circuitry 32, display device 34, recording device 36, user input
device 38, and VRN client 31, all of which may be implemented as
separate devices or as a single device. VRN client 31 may be
implemented on user equipment 30 to receive, execute, and support
VRN applications.
[0044] Control circuitry 32 is adapted to receive user input from
input device 38 and execute the instructions of VRN client 31 and
any other interactive applications running on user equipment 30.
Control circuitry 32 may include one or more tuners (e.g., analog
or digital tuners), decoders (e.g., MPEG decoders), processors
(e.g., Motorola 68000 family processors), memory (i.e., RAM and
hard disks), communications circuitry (e.g., cable modem
circuitry), input/output circuitry (e.g., graphics circuitry),
connections to the various devices of user equipment 30, and any
other suitable component for providing analog or digital media
programming and interactive media features. In one embodiment,
control circuitry 32 may be included as part of one of the devices
of user equipment 30 such as, for example, part of recording device
36, display device 34, or any other suitable device (e.g., a
set-top box, television, or video player).
[0045] Display device 34 may include any suitable device such as,
for example, a television monitor, an LCD screen, a computer
monitor, or a display incorporated in user equipment 30 (e.g., a
cellular telephone display or music player display). Display device
34 may also be configured to provide for the output of audio and/or
other sensory output (e.g., a holographic projector or virtual
reality simulator).
[0046] Recording device 36 may be a personal video recorder (PVR),
digital video recorder (DVR), video cassette recorder (VCR),
DVD-recorder, gaming device, digital audio library, or any other
suitable recording device. Recording device 36 may include one or
more tuners. In addition to storing programming assets, recording
device 36 may also store video messages received by an attached or
integrated video phone.
[0047] VRN client 31 may be implemented on user equipment 30 as a
stand alone application or part of another interactive application,
such as an interactive media guidance application (IMGA) or
interactive program guide (IPG). One or more of the interactive
applications may receive interactive application data from
application data source 40. As shown in FIG. 1, the data may be
received via distribution facility 20 over communication path 49.
Alternatively, the data may be received by user equipment 30 from
application data source 40 over a direct communication path (not
shown). Application data source 40 may also be part of central
facility 10 or distribution facility 20. In some embodiments, the
interactive application data may include elements that are
referenced in the VRN screen data for inclusion in the VRN
application such as graphics, text, logos, advertising, and the
like. VRN templates, for example, may be provided as part of
interactive television application data.
[0048] Homepages (and other VRN screens or pages) delivered to user
equipment 30 may include a number of interactive elements.
Interactive elements may be highlighted, selected, or both. If the
user navigates to a specific interactive element (e.g., by using
the arrow keys on a remote control device), the interactive element
may be visually highlighted in some fashion (e.g., a colored border
may appear around the element). If the user selects a highlighted
interactive element (e.g., by pressing the "OK" button on a remote
control device), the system may display a specific tunable channel,
VOD asset, VOD screen, recorded asset (e.g., a video message or
some other programming recorded or stored on recording device 36),
or another interactive application screen, based on selection
behavior specified for the interactive element in the VRN screen
data.
[0049] Although, in the illustrated embodiment of FIG. 1, VRN
client 31 is internal to user equipment 30, VRN client 31 may be
implemented externally or partially implemented externally to user
equipment 30. For example, VRN client 31 may be implemented at
central facility 10 or distribution facility 20 and may run using a
client-server or distributed architecture where some of the
application is implemented locally on user equipment 30 in the form
of a client process and some of the application is implemented at a
remote location in the form of a server process. VRN client 31 may
also be implemented completely on any suitable server, computer
equipment, or set-top box accessible by user equipment 30.
[0050] FIG. 2 shows illustrative media system 200 with available
content sources for use in the VRN pages of the present invention.
Remote facility 202 may exist at a cable system headend or a remote
MSO facility responsible for creating custom VRN pages and
delivering these pages to user equipment 30. In some embodiments,
remote facility 202 is the same facility as central facility 10 or
distribution facility 20 (both of FIG. 1).
[0051] Remote facility 202 may include VRN compositing server 204.
VRN compositing server 204 may combine one or more video assets
from linear content sources 208 and non-linear content sources 206
into a single display or VRN page. After generating the appropriate
screen data, the page may then be transmitted to user equipment 30.
VRN compositing server 204 may include MPEG decoding, MPEG
encoding, and MPEG transcoding circuitry. Additionally or
alternatively, VRN compositing server 204 may communicate with
remote devices that perform any of the aforementioned compositing,
encoding, decoding, or transcoding functions.
[0052] Linear content sources 208 may include any content sources
containing video assets transmitted or broadcast on a schedule. The
video assets available from linear content sources 208 may include,
for example, broadcast television programming, switched digital
television, and pay-per-view programming. Non-linear content
sources 206 may include any content sources containing video assets
not transmitted or broadcast on a schedule. Example of non-linear
content sources include Internet content and on-demand programming.
VRN compositing server 204 may use content from one or both of
linear content sources 208 and non-linear content sources 206 in
compositing video assets to create a VRN page. For example, one
cell in a VRN page may display a video from an Internet website,
another cell in the same VRN page may display broadcast television
content, while still another cell may display on-demand
programming.
[0053] In addition to compositing video assets from linear content
sources 208 and non-linear content sources 206, VRN compositing
server 204 may also designate one or more cells in a VRN page as a
placeholder cell. These placeholder cells may correspond to blank
cells without a corresponding video asset presented in the cell
location. Appropriate video may then be overlaid in the placeholder
cell locations at user equipment 30. For example, user equipment 30
may include MPEG compositing system 218, which may include MPEG
encoding, decoding, and transcoding circuitry. MPEG compositing
system may extract video from DVR 220, gaming device 222, or memory
224 for use in populating placeholder VRN cells or
locally-generated VRN pages. The extracted video may be a
continuous or looping video segment from one or more video assets
stored on these devices. If generating a locally-generated page,
MPEG compositing system 218 may then create a composite feed with a
plurality of video assets, including the video extracted from local
assets, for use in a VRN page.
[0054] For example, DVR 220 may include hours of stored broadcast,
on-demand, and pay-per-view programming. MPEG compositing system
218 may extract video segments from selected assets stored on DVR
220 and store these extracted segments back on DVR 220 or some
other storage device (e.g., memory 224). These extracted segments
of continuous or looping video may be overlaid on one or more cells
of a VRN page, such as the pages shown in FIGS. 4-7, which are
described in more detail below.
[0055] Similarly, MPEG compositing system 218 may also extract
segments of video from gaming device 222 and from memory 224.
Gaming device 222 may include a plurality of interactive games
stored on CD-ROM, cartridge, DVD, or any other suitable storage
mechanism. MPEG compositing system 218 may extract video from
gaming device 222 and store the video on DVR 220 or in memory 224.
Memory 224 may include any suitable memory or storage device,
including hard drives, tape devices, optical drives, flash memory,
RAM, ROM, and hybrid types of memory. The video extracted from
gaming device 222 may also be overlaid on one or more cells of a
VRN page, such as the pages shown in FIGS. 4-7.
[0056] In certain systems used to create VRN pages, multiple videos
are resized and composited in a grid configuration and then the
entire grid of video is recompressed to create one video stream
(e.g., a video elementary stream in MPEG-2 parlance) which is
carried in one video pipe (a digital channel or single service
multiplex in MPEG-2 parlance) corresponding to approximately 3 Mbps
of data bandwidth. Alternatively or additionally, headend systems
may take multiple videos, create a single video stream for each of
the multiple videos and then multiplex the multiple video streams
into a single transport multiplex (e.g., a multiple service
transport multiplex in MPEG-2 parlance, corresponding to, for
example, one 6 MHz band in North American cable systems). In this
configuration, each of the elementary stream videos requires
approximately 3 Mbps of bandwidth, and a typical 10 video multiplex
may occupy 30 Mbps. Also in this configuration, one or more of
these roughly 3 Mbps multiplexed videos may be composited videos as
described above. The latter multiplexing may be done not for the
purposes of mosaic presentation, but rather as a means of packing
multiple videos into a single band of frequency corresponding to a
64 or 256 QAM modulator. However, one embodiment of the present
invention uses the multiplexing capability of MPEG-2 (or any
multiplexing transport such as Internet protocol (IP) or ATM) to
flexibly bundle the videos corresponding to the remotely supplied
video elements of a VRN page but with the recognition that the
bundled videos will be composited together in the user equipment
device. Thus, the spatial resolution and size may be adjusted
accordingly at the headend before multiplexing the videos. Each
adjusted video will thus take less bandwidth to send than its
corresponding full resolution source video (e.g., less than 80%),
but by not compositing these adjusted videos in the headend, this
approach allows flexibility in the user equipment device for
compositing while also saving bandwidth. The multiplexed videos may
then be demultiplexed and optionally decompressed at the user
equipment device.
[0057] In some embodiments, additional local video assets may be
available for display in one or more cells of a VRN page. For
example, video messages stored in memory 224, DVR 220, or an
attached or integrated videophone may populate cells of a VRN page.
MPEG compositing system 218 may encode these video assets into a
suitable MPEG (e.g., MPEG-2 or MPEG-4) format for presentation on a
VRN page, if required.
[0058] In a typical usage scenario, a multi-video feed is
composited (at least partially) by VRN compositing server 204 at
remote facility 202. As described above, the composited feed may
include a plurality of video assets, each positioned in a cell
location. Certain cell locations, such as those corresponding to
placeholder cells may have no associated video when the feed is
composited. The video assets for these cells may be selected and
overlaid by VRN client 31. After the user equipment device receives
the VRN feed, VRN client 31 may process the transmission and
prepare the page for display. In the process of preparing the page
for display, VRN client 31 may analyze the cell definitions
contained in the screen data (which may be transmitted with the VRN
page or over a separate channel). VRN client 31 may then instruct
control circuitry 214 to execute any local functions that may be
referenced within the screen data. In executing the local
functions, control circuitry 32 may access (or cause MPEG
compositing system 218 to access) one or more video segments from
DVR 220, gaming device 222, and/or memory 224. After all the video
sources for the VRN page are located, VRN client 31 may display the
VRN page with local assets overlaid on the page in one or more cell
locations. In this way, the cells of the VRN page may be populated
with assets from various sources, including local sources.
[0059] In lieu of receiving the VRN page from remote facility 202,
VRN pages may also be entirely or partially locally-generated in
accordance with the present invention. Locally-generated pages may
be fully composited at user equipment 30 in some embodiments. To
composite a page locally, MPEG compositing system 218 may create a
composited multi-video interactive page. The video sources used in
the composited multi-video interactive page may include any sources
accessible by user equipment 30, including local content, content
from linear sources 208, and content from non-linear sources 206.
This provides a more flexible alternative to remotely-generated
pages.
[0060] In some cases, the difference between compositing a VRN page
locally and remotely may be significant. For example, a VRN page
with few or no local assets may be more efficiently composited at
remote facility 202, while pages with more local assets may benefit
from local composition. In addition, at least partial local
composition allows for dynamic VRN page creation and customization
based on active user monitoring, user behavior, and user
preferences, as described in more detail below.
[0061] FIG. 3 shows illustrative generic video mosaic display
screen 300. In the example of FIG. 3, screen 300 contains eight
numbered cells, or windows. Each of these eight cells may be
populated with a different video asset or channel. For example,
cell 302 may include full-motion video from channel "225 Cinemax"
while cell 303 may contain promotional advertising for new VOD
movie releases. Each of the cells in display 300 may be
individually selected using input device 38 (FIG. 1). For example,
the user may highlight a cell in display 300 using the arrow or
cursor keys on a remote control. In the example of FIG. 3, cell 303
is currently highlighted, as shown by the darkened border around
the cell. One or more cells may be simultaneously selected, if
desired. For example, upon pressing an "OK" key on input device 38
(FIG. 1), the selected status of a cell may toggle on and off. The
user may then select one or more additional cells in the same
manner.
[0062] In some embodiments, a selected subset of cells can be used
to form a new custom VRN page. For example, in such embodiments, a
user may select cells 302 and 303 from FIG. 3 and then enter a
"create custom VRN page" command (e.g., by selecting such a command
from an on-screen menu or option button). Other combinations of
cell selection as well as selection of cells from a combination of
other different custom or system standard VRN screens and/or
grid-listed assets are also possible.
[0063] The number, location, size, and shape of the cells in
display 300 may be altered without departing from the spirit of the
invention. As described above, screen data may be used to define
the elements in a VRN page. This data may define more or fewer than
eight cells and cells of different sizes, positions, and shapes
than those shown in FIG. 3.
[0064] VRN display screen 300 may also include one or more of
vertical option buttons 304 and horizontal option buttons 306.
These buttons may link screen 300 to other VRN screens, the main
interactive media guidance application screen, or perform any
suitable functionality. For example, one button may select all the
numbered cells in screen 300, while another button may deselect all
the numbered cells in screen 300.
[0065] The cells in VRN display screen 300 may be populated with
content from similar sources or mixed-mode sources. For example,
one cell may contain broadcast television content, while another
cell may contain on-demand content. Still another cell may contain
local DVR content. The sources of the cells in VRN display screen
300 may be determined by the creator of the VRN page. For example
cells 1, 2, 3, and 4 may display video assets that were composited
into a multi-video feed remote from the user equipment. The
remaining cells (i.e., cells 5, 6, 7, and 8) may be placeholder
cells, which are overlaid with video assets at the user equipment
device. In some embodiments, the placeholder cells may be overlaid
with local content, such as locally-recorded content.
[0066] FIGS. 4-7 show illustrative VRN homepages 400 (FIG. 4), 500
(FIG. 5), 600 (FIG. 6), and 700 (FIG. 7). Each of these homepages
may be remotely-generated or locally-generated. In some
embodiments, VRN pages displaying one or more local assets, such as
video loops of content recorded on DVR 220 (FIG. 2), may be
locally-generated. Each of homepages 400 (FIG. 4), 500 (FIG. 5),
600 (FIG. 6), and 700 (FIG. 7) may be accessible through a
particular digital television channel. Any of the video cells in
the homepages of FIGS. 4-7 may be individually selected using input
device 38 (FIG. 1). After selecting a cell, one or more screens of
additional information about the asset currently being presented in
the selected cell may be displayed. Additionally or alternatively,
after selecting any cell in the homepages of FIGS. 4-7, the asset
currently being presented in the selected cell may be automatically
accessed and presented in full-screen mode. For example, a digital
television channel may be tuned, local content may be accessed, or
a request for an on-demand asset may be transmitted by the user
equipment in response to the user selection of a video cell.
[0067] Although homepages 400 (FIG. 4), 500 (FIG. 5), 600 (FIG. 6),
and 700 (FIG. 7) show a number of video cells (including main cells
and thumbnail cells), the number, size, and position of these cells
may be altered without departing from the spirit of the
invention.
[0068] FIG. 4 shows illustrative "what's hot" VRN homepage 400 in
accordance with one embodiment of the invention. A user may be
presented with homepage 400 after selecting an appropriate button
on input device 38 (FIG. 1). For example, a "Home Page" button may
provide direct access to homepage 400. In some embodiments,
homepage 400 may be optionally locked, requiring a valid parental
control access code input in order to view the page. Homepage 400
may include main cell 406, thumbnail cells 402, 403, 404, and 405,
PIP window 416, and option buttons 407. Main cell 406 and thumbnail
cells 402, 403, 404, and 405 may both be VRN cells, capable of
displaying full-motion video. In some embodiments, main cell 406 is
approximately four times larger in size than thumbnail cells 402,
403, 404, and 405.
[0069] In the depicted embodiment, thumbnail cells 402, 403, 404,
and 405 present video assets from various local and remote sources.
For example, thumbnail cell 402 may present a home video recorded
to a local recording device, such as DVR 220 (FIG. 2). Thumbnail
cell 403 may present, for example, an Internet video clip.
Thumbnail cell 404 may present, for example, a broadcast television
sporting event, and thumbnail cell 405 may present, for example, an
on-demand cartoon.
[0070] The selection of video assets to display in thumbnail cells
402, 403, 404, and 405 may be based on a number of criteria. For
example, the cells may contain the video assets most recently or
most frequently accessed by a user of user equipment 30 (FIG. 2).
The cells may also contain the video assets most recently or most
frequently accessed by all users of media system 100 (FIG. 1). In
some embodiments, VRN client 31 may maintain a listing or database
table (not shown) of "hot content," including an identification of
local assets (such as recorded programming), broadcast programming,
on-demand assets, and Internet assets. The listing of hot content
may be specific to a single user of user equipment 30, a group of
users of user equipment 30, or a group of user equipment devices in
media system 100 (FIG. 1). The assets listed in the listing or
table of hot content may include featured assets selected by the
MSO or service provider, assets meeting a certain threshold
criteria (e.g., assets recently accessed by the user within a
certain period of time, assets accessed a certain number of times,
or any other suitable criteria), or any combination of the
aforementioned assets. The listing or table may be transmitted from
central facility 10 (FIG. 1) or distribution facility 20 (FIG. 1)
in some embodiments. VRN client 31 may access the listing or record
of hot content to determine what content should be presented in
thumbnail cells 402, 403, 404, and 405.
[0071] If the video feed corresponding to homepage 400 is
remotely-generated (i.e., composited remote from the user
equipment), some of the video assets presented on the page may be
overlaid at the user equipment. For example, if cell 404
corresponds to a locally-recorded content accessible from DVR 220
(FIG. 2), then this video asset may be overlaid in the appropriate
location for cell 404. From the user's point of view, whether the
page is remotely-generated or locally-generated may be completely
transparent to the user.
[0072] Option buttons 407 may provide for single-selection access
to a variety of commonly-used features. For example, option button
408 may link the user to an interactive media guidance application.
Option button 410 may link the user to an on-demand listings screen
or VRN page, such as homepage 500 (FIG. 5). Option button 412 may
link the user to a DVR listings screen or VRN page, such as
homepage 600 (FIG. 6). Option button 414 may link the user to a
favorites listings screen or VRN page, such as homepage 700 (FIG.
7).
[0073] FIG. 5 shows illustrative "what's hot on-demand" VRN
homepage 500. Homepage 500 may be similar to homepage 400 of FIG. 4
and may include main cell 506, thumbnail cells 502, 503, 504, and
505, and option buttons 507. Unlike thumbnail cells 402, 403, 404,
and 405 (FIG. 4), which may display content from a variety of
different sources, thumbnail cells 502, 503, 504, and 505 may
display on-demand assets only. In some embodiments, the assets
displayed in thumbnail cells 502, 503, 504, and 505 may be selected
by the MSO or service provider. For example, the newest or most
popular on-demand releases may be displayed in thumbnail cells 502,
503, 504, and 505. In other embodiments, thumbnail cells 502, 503,
504, and 505 may display on-demand content recently accessed by, or
currently bookmarked on, user equipment 30 (FIG. 1).
[0074] FIG. 6 shows illustrative "what's hot in my DVR" VRN
homepage 600. Homepage 500 may be similar to homepage 400 of FIG. 4
and may include main cell 606, thumbnail cells 602, 603, 604, and
605, and option buttons 607. Unlike thumbnail cells 402, 403, 404,
and 405 (FIG. 4), which may display content from a variety of
different sources, thumbnail cells 602, 603, 604, and 605 may
display locally recorded assets only. For example, in some
embodiments, thumbnail cells 602, 603, 604, and 605 may display
locally recorded assets recently (or frequently) accessed by user
equipment 30 (FIG. 1). Thumbnail cells 602, 603, 604, and 605 may
display continuous or looping portions of the locally recorded
assets.
[0075] For example, MPEG compositing system 218 (FIG. 2) may
extract local loops of video from locally recorded assets and
optionally store them in memory 224 (FIG. 2) or onto DVR 220 (FIG.
2). The local compositing system may then generate the VRN page
locally with one or more of the extracted video loops presented in
thumbnail cells 602, 603, 604, and 605. The portion of the locally
recorded asset to extract for use in the VRN homepage may be
determined by a scene selection algorithm. The algorithm may
identify scene changes within a video asset (e.g., by analyzing the
video and/or audio components of the asset using an unsupervised
segmentation algorithm, motion estimation algorithm, or any other
suitable algorithm). In some embodiments, the scene selection
algorithm may also use user viewing behavior or preferences to
determine which portions of the locally recorded content to extract
for use in VRN homepage 600. For example, if a certain portion of a
locally recorded video asset (e.g., the user's favorite scene from
a movie or favorite replay from a sporting event) is watched more
frequently than other portions, this portion may be selected by the
scene selection algorithm for extraction. In some embodiments, user
preferences, such as a favorite programs list, are accessed in
order to determine which locally recorded assets are selected for
presentation in VRN homepage 600. VRN homepage 600 may also present
the user's four most recently or frequently accessed recordings in
thumbnail cells 602, 603, 604, and 605.
[0076] FIG. 7 shows illustrative "what's hot that I might like" VRN
homepage 700. Homepage 700 may be similar to homepage 400 of FIG. 4
and may include main cell 706, thumbnail cells 702, 703, 704, and
705, and option buttons 707. Like thumbnail cells 402, 403, 404,
and 405 (FIG. 4), thumbnail cells 702, 703, 704, and 705 may
display content from a variety of different sources (i.e., homepage
700 may be a "mixed-mode" page). For example, cell 702 may display
a feature on-demand movie, cell 703 may display a live broadcast
television program, cell 704 may display an Internet video, and
cell 705 may display a locally recorded video.
[0077] The content displayed in thumbnail cells 702, 703, 704, and
705 may be selected based on a number of criteria. For example, the
user may create a user profile including the user's favorite
genres, sports teams, actors, directors, or any other suitable
information. Using the profile data, VRN client 31 (FIG. 2) may
select any assets accessible by user equipment 30 (FIG. 1) for
display in thumbnail cells 702, 703, 704, and 705 that matches one
or more of the user's preferences. The user's profile may also be
supplemented with data obtained from active user monitoring. For
example, all interaction with user equipment 30 (FIG. 1) may be
monitored and optionally logged. The amount of time assets are
displayed, the sources of accessed assets, the genres of accessed
assets, and any other suitable information may be included in the
user's profile. In this way, the user's profile may contain a
record of all the assets that have been accessed by the user
equipment and the length of time each asset was presented. VRN
client 31 (FIG. 1) may use this information when selecting video
assets for cells of VRN pages, like VRN homepage 700.
[0078] FIGS. 8A and 8B shows illustrative mark-up language files
800 and 810. File 800 may be associated with unique name 802 and
one or more mark-up language tags in body 804. Body 804 may include
HTML, XML, and/or SGML tags in some embodiments. The tags in body
804 may include cell definitions for all or a subset of cells in a
VRN page, such as VRN homepages 400 (FIG. 4), 500 (FIG. 5), 600
(FIG. 6), and 700 (FIG. 7). As shown in the example of FIG. 8A, an
identification of the content to include in cell 1 of the VRN page
is provided in the "c_name" tag. This tag references a local
function call to be executed on user equipment 30 (FIG. 1). The
source of the cell and the local path of the content to display in
the cell are provided by the "getHotDVRsource" and "getHotDVRPath"
functions, respectively. Body 804 may also include an indication of
selected portions of the content to use as video loops in the VRN
cell. Finally, body 804 may define action data for the cells in the
VRN page, such as response behavior to highlighting or selecting a
cell.
[0079] FIG. 8B shows mark-up language file 810 associated with
unique name 812. File 810 may correspond to the local version of
file 800 after being processed by VRN client 31 (FIG. 1). For
clarity, the local function calls have been executed and the data
returned by the function calls placed inside the appropriate tags.
For example, the "getHotDVRPath" function returned the path to a
locally recorded asset "/local/dvr1/00004.mp2". Each function call
to "getHotDVRPath" may return the path to a different "hot" locally
recorded asset, based on the user preference data and monitoring
described above. VRN client 31 (FIG. 2) may read the received cell
definitions from the mark-up language files to determine the if any
placeholder cells exist on the page. If so, VRN client (FIG. 2) may
execute the local functions to determine the identity of the video
assets to be displayed in the placeholder cells. The VRN client may
then overlay the appropriate video assets in the position of the
placeholder cells and display the page. More or fewer tags than
those defined in body 814 and 804 may be used in other
embodiments.
[0080] FIG. 9 shows illustrative process 900 for generating a VRN
page in accordance with one embodiment of the invention. At step
902, a request is received for a VRN page. For example, the user
may press a "Homepage" button on input device 38 (FIG. 1) or tune
to a certain digital channel. At step 904, VRN client 31 (FIG. 2)
may determine if the requested VRN page is remotely-generated or
locally-generated. If the page is remotely-generated, at step 906
screen data may be received for the page. For example, VRN screen
data source 14 (FIG. 1) may generate screen data and transmit the
generated screen data to distribution facility 20 (FIG. 1).
Distribution facility 20 (FIG. 1) may then, in turn, transmit the
screen data to user equipment 30 (FIG. 1). The screen data may
define user response behaviors for any of the selectable cells in
the mosaic page. In addition, one or more placeholder cells may be
defined in the screen data. The placeholder cell definition may
include an indication of the placeholder cell's size, location
(e.g., x and y coordinates) or any other suitable information.
[0081] The received screen data is then parsed by VRN client 31
(FIG. 2) at step 908. The VRN client may then determine, at step
918, whether the screen data defines one or more placeholder cells.
For example, mark-up language file 800 (FIG. 8) may designate one
or more cells as placeholder cells. The screen data may also
reference several local function calls for each placeholder cell.
These local function calls may return any suitable data or
variables on the local user equipment device. For example, file
system paths, asset source identifiers, pointers to media assets,
or any other suitable information may be returned by the local
function calls. At step 920, if the screen data defines a
placeholder cell, video is overlaid on the mosaic display in the
position of the placeholder cell.
[0082] If, at step 904, a determination is made that the VRN page
is to be locally-generated, at step 910 VRN client 31 (FIG. 2) may
locate the video sources for the requested VRN page. For example,
if the user has requested "what's hot in my DVR" homepage 600 (FIG.
6), user profile information (including user monitoring data) may
be accessed to determine what assets should populate the cells in
the VRN page. At step 912, VRN client 31 (FIG. 2) may determine
whether any local sources are selected for inclusion in the VRN
page. If the cells do not display any local content, at step 914
the remote video sources may be accessed. If one more of the cells
do display local content, an extracted video loop of the content
may be accessed at step 916. For example, MPEG compositing system
218 (FIG. 8) may extract selected portions of video from one or
more locally recorded assets.
[0083] At step 922, the VRN page may be generated. For example, if
the page is remotely-generated, all the video sources may be
composited at the remote compositing location into a single video
feed and displayed in an interactive page, such as the homepages
shown in FIGS. 4-7. If the page is remotely-generated, the video
feed and any video overlays may be combined into a single display
at the user equipment device. In general, the page may be streamed
to the source of at least one of the video sources to be displayed
in the VRN for further compositing, if desired. The VRN page may
then be displayed to the user at step 924. For example, control
circuitry 32 (FIG. 1) may cause the page to be displayed on display
device 34 (FIG. 1).
[0084] In practice, a flexible mix of compositing at the remote
location and local compositing may be combined with sourcing video
from remote and local sources. As such, one or more steps shown in
process 900 may be repeated, combined with other steps, performed
in any suitable order, performed in parallel (e.g., simultaneously
or substantially simultaneously) or removed. Additionally, in some
embodiments, compositing may be done remotely while screen data is
generated locally or vice versa.
[0085] FIG. 10 shows illustrative process 1000 for populating a VRN
cell with local content. At step 1002, screen data may be received
or generated. If the page is remotely-generated, screen data may be
received from a remote location (e.g., distribution facility 20 of
FIG. 2). This screen data may define one or more cells of a VRN
page. For example, the screen data may include an identification of
the source of one or more cells, an identification of the content
of one or more cells, action data for responding to user behavior
(e.g., the selection of one or more cells), and any other suitable
information. At step 1004, VRN client 31 (FIG. 1) may determine if
the screen data references any local sources. For example, content
stored in DVR 220 (FIG. 2), gaming device 222 (FIG. 2), or memory
224 (FIG. 2) may be referenced by the screen data. In lieu of
actually referencing a local source, a local function call may
return a local source, as described above.
[0086] If, at step 1004, the screen data references a local source,
a determination is made at step 1006 whether a video loop of the
local source exists on the user equipment. If a local video loop
does exist, it may be accessed at step 1008. If a local video loop
does not exist, a portion of the local source may be selected for a
video loop segment at step 1010. For example, a scene selection
algorithm may be used in some embodiments to identify new or
changing scenes within a video asset. The scene selection algorithm
may also access user profile information to determine what portion
to select for the video loop segment. For example, the scene
selection algorithm may select a more frequently watched portion of
a video asset, if one exists, for the video loop segment.
[0087] At step 1012, the selected portion of video may be extracted
from the video asset and stored to the user equipment device. For
example, MPEG compositing system 218 (FIG. 2) may extract the
selected portion and store it as an MPEG-2 file in memory 224 (FIG.
2) or on DVR 220 (FIG. 2). At step 1014, the VRN page may be
rendered with the local video loop overlaid in the position of a
video cell, such as thumbnail cell 402, 403, 404, or 405 (FIG. 4).
Finally, at step 1016, the VRN page may be displayed with the local
video loops to the user.
[0088] In practice, one or more steps shown in process 1000 may be
repeated, combined with other steps, performed in any suitable
order, performed in parallel (e.g., simultaneously or substantially
simultaneously) or removed.
[0089] FIG. 11 shows illustrative process 1100 for presenting a
custom VRN page based on user profile information, user monitoring,
or both. At step 1102, user behavior is monitored and optionally
logged to the user equipment. For example, some application process
implemented on user equipment 30 may monitor all interaction with
the user equipment, including content access requests, frequently
watched programs and genres, and any other suitable
characteristics. In addition, the user may have a profile saved to
the user equipment. If a user profile is defined at step 1104, the
profile data is read at step 1106. This profile data may include
various content preferences for the user. For example, the user may
select his or her favorite program, sports team, actor, director,
genre, or any other suitable preference.
[0090] After reading the user profile data at step 1106, local
content may be selected for display in one or more custom VRN pages
at step 1110. The content selected may be based on both user
profile data and user behavior. If a user profile is not defined
for the current user at step 1104, local content may be selected
for presentation in one or more custom VRN pages at step 1108 based
on monitored user behavior. For example, VRN homepage 400 (FIG. 4)
may include local content recently or frequently accessed by the
user in one or more of thumbnail cells 402, 403, 404 and 405 (FIG.
4).
[0091] At step 1112, the VRN page is generated or updated. For
example, MPEG compositing system 218 (FIG. 2) may extract video
loops of local content as described above. VRN client 31 (FIG. 2)
may then swap out one or more VRN cells with the new local content
selections. In this way, the user may be presented with custom VRN
pages including one or more cells of local content that are
particularly relevant to the user. Each time the custom page is
displayed, new video assets may be presented in the page, depending
on the user's viewing habits, preferences, and user monitoring
information.
[0092] In practice, one or more steps shown in process 1100 may be
repeated, combined with other steps, performed in any suitable
order, performed in parallel (e.g., simultaneously or substantially
simultaneously) or removed.
[0093] The above described embodiments of the invention are
presented for purposes of illustration and not of limitation, and
the present invention is limited only by the claims which
follow.
* * * * *