U.S. patent application number 14/070646 was filed with the patent office on 2014-02-27 for synchronizing multiple playback device timing utilizing drm encoding.
This patent application is currently assigned to Qurio Holdings, Inc.. The applicant listed for this patent is Qurio Holdings, Inc.. Invention is credited to Christopher M. Amidon, Gregory M. Evans, Alfredo C. Issa.
Application Number | 20140059597 14/070646 |
Document ID | / |
Family ID | 42753203 |
Filed Date | 2014-02-27 |
United States Patent
Application |
20140059597 |
Kind Code |
A1 |
Issa; Alfredo C. ; et
al. |
February 27, 2014 |
SYNCHRONIZING MULTIPLE PLAYBACK DEVICE TIMING UTILIZING DRM
ENCODING
Abstract
A system and method are provided for synchronizing playback of
media content on multiple playback devices utilizing Digital Rights
Management (DRM) encoding. In general, multiple playback devices or
users of those playback devices are associated to form a virtual
group. A virtual group (VG) control function operates to
synchronize advertisement (ad) slots within media content provided
to the playback devices in the virtual group utilizing DRM
encoding.
Inventors: |
Issa; Alfredo C.; (Apex,
NC) ; Evans; Gregory M.; (Raleigh, NC) ;
Amidon; Christopher M.; (Apex, NC) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Qurio Holdings, Inc. |
Raleigh |
NC |
US |
|
|
Assignee: |
Qurio Holdings, Inc.
Raleigh
NC
|
Family ID: |
42753203 |
Appl. No.: |
14/070646 |
Filed: |
November 4, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13650424 |
Oct 12, 2012 |
8583555 |
|
|
14070646 |
|
|
|
|
12875736 |
Sep 3, 2010 |
8290873 |
|
|
13650424 |
|
|
|
|
11831506 |
Jul 31, 2007 |
7805373 |
|
|
12875736 |
|
|
|
|
Current U.S.
Class: |
725/36 |
Current CPC
Class: |
H04N 21/812 20130101;
H04N 21/8456 20130101; H04N 21/4627 20130101; H04N 21/43615
20130101; G06Q 30/0241 20130101; H04N 21/2541 20130101; H04N 21/835
20130101 |
Class at
Publication: |
725/36 |
International
Class: |
H04N 21/81 20060101
H04N021/81; H04N 21/254 20060101 H04N021/254; H04N 21/4627 20060101
H04N021/4627 |
Claims
1. A method comprising: receiving a first media content item
including a first media content break; receiving a second media
content item including a second media content break; generating
first media timing rights for the first media content item such
that the first media content break is playback restricted with the
second media content break; generating second media timing rights
for the second media content item such that the second media
content break is playback restricted with the first media content
break; providing the first media content item with the first media
timing rights to a first media player on a first playback device;
and providing the second media content item with the second media
timing rights to a second media player on a second media playback
device.
2. The method of claim 1 wherein the first timing rights comprise a
start time for the first media content item and an end time for the
first media content item.
3. The method of claim 2 wherein a time between the start time and
the end time for the first media content item is equal to a play
length of the first media content item.
4. The method of claim 3 wherein the second timing rights comprise
a start time for the second media content item and an end time for
the second media content item.
5. The method of claim 4 wherein a time between the start time and
the end time of the second media content item is equal to a play
length of the second media content item.
6. The method of claim 5, wherein the first media content item
start time and the second media content item start time are the
same, such that the playback of the first media content item and
the second media content item begin at a same time.
7. The method of claim 6, wherein the first media content item
start time and the second media content item start time occur at a
time after the first media content item and the second media
content item are provided to the first playback device and the
second playback device.
8. The method of claim 1, further comprising obtaining both the
first media content item and the second media content item from a
remote source.
9. The method of claim 1, further comprising obtaining both the
first media content item and the second media content item from
local storage.
10. A device comprising: memory; a communication interface; and a
control system associated with the memory and the communication
interface, the control system configured to: receive a first media
content item including a first media content break; receive a
second media content item including a second media content break;
generate first media timing rights for the first media content item
such that the first media content break is playback restricted with
the second media content break; generate second media timing rights
for the second media content item such that the second media
content break is playback restricted with the first media content
break; provide the first media content item with the first media
timing rights to a first media player on a first playback device;
and provide the second media content item with the second media
timing rights to a second media player on a second media playback
device.
11. The device of claim 10 wherein the first timing rights comprise
a start time for the first media content item and an end time for
the first media content item.
12. The device of claim 11 wherein a time between the start time
and the end time for the first media content item is equal to a
play length of the first media content item.
13. The device of claim 12 wherein the second timing rights
comprise a start time for the second media content item and an end
time for the second media content item.
14. The device of claim 13 wherein a time between the start time
and the end time of the second media content item is equal to a
play length of the second media content item.
15. The device of claim 14 wherein the first media content item
start time and the second media content item start time are the
same, such that the playback of the first media content item and
the second media content item begin at a same time.
16. The device of claim 15 wherein the first media content item
start time and the second media content item start time occur at a
time after the first media content item and the second media
content item are provided to the first playback device and the
second playback device.
17. A system comprising: a central node configured to: receive a
first media content item including a first media content break;
receive a second media content item including a second media
content break; generate first media timing rights for the first
media content item such that the first media content break is
playback restricted with the second media content break; generate
second media timing rights for the second media content item such
that the second media content break is playback restricted with the
first media content break; a first playback device configured to:
receive the first media content item with the first media timing
rights from the central node; a second playback device configured
to: receive the second media content item with the second media
timing rights from the central node.
18. The system of claim 17, wherein the first playback device is
further configured to playback the first media content item at a
start time defined by the first timing rights after receiving the
first media content item.
19. The system of claim 18, wherein the second playback device is
further configured to playback the second media content item at a
start time defined by the second timing rights after receiving the
second media content item where the first media content start time
and the second media content start time are the same.
Description
PRIORITY CLAIM
[0001] The present application is related to U.S. patent
application Ser. No. 13/650,424, entitled SYNCHRONIZING MULTIPLE
PLAYBACK DEVICE TIMING UTILIZING DRM ENCODING, which was filed on
Oct. 12, 2012, which was a continuation of U.S. Pat. No. 8,290,873,
entitled SYNCHRONIZING MULTIPLE PLAYBACK DEVICE TIMING UTILIZING
DRM ENCODING, which issued on Oct. 16, 2012, which was a divisional
of U.S. Pat. No. 7,805,373, entitled SYNCHRONIZING MULTIPLE
PLAYBACK DEVICE TIMING UTILIZING DRM ENCODING, which issued on Sep.
28, 2010, which are incorporated by reference herein in its
entirety for all purposes.
FIELD OF THE INVENTION
[0002] The present invention relates to coordinating playback of
media content items at multiple playback devices.
BACKGROUND OF THE INVENTION
[0003] There is an increasing trend to view video content on
devices other than a television such as a personal computer, an
Apple iPod.RTM., a Microsoft Zune.TM., a mobile phone such as an
Apple iPhone, a Personal Digital Assistant (PDA), or the like.
Unlike a television, these devices primarily have a one-to-one
mapping with a user. As such, a first user may be watching video
content on his device while a second user that is proximate to, or
otherwise associated with, the first user may be watching different
content on her device. For example, consider three users A, B, and
C that are in close physical proximity such as in a living room of
their home. User A is viewing previously downloaded or
Video-on-Demand (VoD) content on a wireless handheld device, such
as a Microsoft Zune.TM., Nintendo DS.RTM., or other Wireless
Fidelity (WiFi)-capable playback handheld video device. User B is
watching content on a High Definition Television (HDTV) device
provided by an associated set-top box that functions as a Digital
Video Recorder (DVR) and a digital signal decoder. User C is
watching a downloaded video from a service such as Apple
iTunes.RTM. on a personal computer.
[0004] In such a system or in similar systems, the opportunity
exists to provide the users with a common experience. As such,
there is a need for a system and method of coordinating playback of
media content at multiple playback devices.
SUMMARY OF THE INVENTION
[0005] The present invention provides a system and method for
synchronizing playback of media content on multiple playback
devices utilizing Digital Rights Management (DRM) encoding. In
general, multiple playback devices or users of those playback
devices are associated to form a virtual group. In operation, a
virtual group (VG) control function coordinates media content items
selected for playback at the playback devices and utilizes Digital
Rights Management (DRM) encoding to restrict playback of the media
content items such that the media content items remain coordinated
during playback at the playback devices.
[0006] In one embodiment, the VG control function coordinates the
media content items by synchronizing or otherwise coordinating
advertisement (ad) slots within media content provided to the
playback devices in the virtual group. The VG control function then
utilizes DRM encoding to restrict playback of the media content
items such that that ad slots remain coordinated during playback of
the media content items at the playback devices. More specifically,
the VG control function obtains media content to be provided to the
playback devices. The media content to be provided to the playback
devices may or may not be the same media content. The VG control
function first coordinates one or more ad slots in the media
content to be provided to the playback devices. Then, for each of
the playback devices, the VG control function segments the
corresponding media content, generates timing rights for each of
the segments, and encodes the media content. The timing rights for
the segments are defined such that playback of the segments is
restricted in a manner that coordinates the ad slots in the media
content with the ad slots in the media content provided to the
other playback devices. The VG control function provides the
encoded media content and timing rights to the playback devices. At
the playback devices, playback of the media content is restricted
based on the timing rights for the segments such that the ad slots
at the playback devices are coordinated.
[0007] Those skilled in the art will appreciate the scope of the
present invention and realize additional aspects thereof after
reading the following detailed description of the preferred
embodiments in association with the accompanying drawing
figures.
BRIEF DESCRIPTION OF THE DRAWING FIGURES
[0008] 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.
[0009] FIG. 1 illustrates a system for coordinating advertisements
at multiple playback devices according to one embodiment of the
present invention;
[0010] FIG. 2 illustrates the operation of the system of FIG. 1
according to one embodiment of the present invention;
[0011] FIG. 3 illustrates exemplary media content items according
to one embodiment of the present invention;
[0012] FIG. 4 illustrates the exemplary media content items of FIG.
3, wherein the advertisement (ad) slots of the media content items
have been coordinated according to one embodiment of the present
invention;
[0013] FIG. 5 illustrates the exemplary media content items of FIG.
4 wherein the media content items have been segmented and timing
rights for the segments have been defined according to one
embodiment of the present invention;
[0014] FIG. 6 illustrates an exemplary screen shot of a media
content item presented to a viewer according to one embodiment of
the present invention;
[0015] FIG. 7 illustrates another exemplary screen shot of a media
content item presented to a viewer according to one embodiment of
the present invention;
[0016] FIG. 8 is a block diagram of the central node of FIG. 1
according to one embodiment of the present invention; and
[0017] FIG. 9 is a block diagram of one of the playback devices of
FIG. 1 according to one embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED 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] The present invention relates to coordinating advertisements
on multiple playback devices during playback of media content. FIG.
1 illustrates a system 10 providing coordinated advertisement (ad)
slots at multiple playback devices using Digital Rights Management
(DRM) encoding according to one embodiment of the present
invention. In general, the system 10 includes a central node 12
communicatively coupled to playback devices 14-1 through 14-N via a
network 16, which in this example is a Personal Area Network (PAN)
or Local Area Network (LAN), and, optionally, a playback device 18
via a Wide Area Network (WAN) 20. Note that the central node 12 may
alternatively be connected to the playback device 18 via a separate
PAN or LAN. In this embodiment, the central node 12 is also
communicatively coupled to a remote advertisement, or "ad," server
22 via the WAN 20. As used herein, a PAN may be formed by devices
having a wired connection such as a Universal Serial Bus (USB)
connection, a local wireless connection such as a Bluetooth or IEEE
802.11 connection, or the like; a LAN may be, for example, an
Ethernet network, a Wireless Fidelity (WiFi) network, or the like;
and a WAN may be any type or combination of WANs such as, for
example, the Internet.
[0020] According to one embodiment of the present invention, a
virtual group (VG) control function 24 is hosted by the central
node 12 and the playback devices 14-1 through 14-N and 18 or their
associated users 26-1 through 26-N and 28 are either statically or
dynamically associated to form a virtual group. For this
description, the virtual group is referred to as a virtual group of
playback devices. The virtual group may be formed on the user level
or the playback device level. In this embodiment, the playback
devices 14-1 through 14-N are proximate to one another. For
example, the playback devices 14-1 through 14-N may be located or
carried by users within a room, a house, a building, or the like.
In contrast, the playback device 18 is at a remote location.
However, the present invention is not limited thereto. For example,
all of the playback devices 14-1 through 14-N and 18 may be remote
from one another and connected to the central node 12 via the WAN
20. In one embodiment, the users 26-1 through 26-N and 28 are
having a shared experience. The users 26-1 through 26-N are having
a shared experience as a result of their close physical proximity
to one another. In addition, the user 28 may interact with one or
more of the users 26-1 through 26-N via, for example, Instant
Messaging (IM), phone, Voice-over-Internet Protocol (VoIP), or the
like such that the user 28 has a shared experience with the users
26-1 through 26-N.
[0021] The VG control function 24 may be implemented in software,
hardware, or a combination of software and hardware. The VG control
function 24 generally operates to provide media content to the
playback devices 14-1 through 14-N and 18 in the virtual group and
to coordinate ad slots in the media content provided to the
playback devices 14-1 through 14-N and 18 utilizing DRM encoding.
As used herein, an "ad slot" is a break in content into which an
advertisement is or may be inserted. In addition or alternatively,
an ad slot may be a defined period or segment of content during
which a visual, audio, or audio-visual advertisement may be
overlaid or superimposed upon the content. The VG control function
24 may also obtain targeted advertisements for the ad slots from
the remote ad server 22 and either insert the targeted
advertisements into the coordinated ad slots in the media content
or provide the targeted advertisements to the playback devices 14-1
through 14-N and 18 for insertion into the coordinated ad slots.
Alternatively, the VG control function 24 may provide references to
the targeted advertisements for the coordinated ad slots, where the
references enable the playback devices 14-1 through 14-N and 18 to
obtain the advertisements from the central node 12 or the remote ad
server 22.
[0022] The media content provided to the playback devices 14-1
through 14-N and 18 may be, for example, broadcast television
content, Video on Demand (VoD) content, streaming video content, or
the like and may be provided to the central node 12 from a remote
service such as, for example, a cable television service, a
satellite television service, an Internet Protocol Television
(IPTV) service, or the like. In addition or alternatively, the
media content, or at least some media content items, may be stored
by the central node 12. For example, the central node 12 may be
enabled to receive streaming video content from one or more remote
services and also store one or more media content items such as one
or more movies or television programs.
[0023] The media content provided to the playback devices 14-1
through 14-N and 18 may be homogeneous content or heterogeneous
content. As used herein, "homogenous content" is the same media
content played at substantially the same time. For example, the
playback devices 14-1 through 14-N and 18 may be playing the same
movie and be at substantially the same point during playback of the
movie. As another example, the playback devices may 14-1 through
14-N and 18 may be playing the same video content stream. In
contrast, "heterogeneous content" refers to different content being
played by the playback devices 14-1 through 14-N and 18. In one
embodiment, the heterogeneous content is heterogeneous video
content such that different video content is being played or viewed
at the playback devices 14-1 through 14-N and 18. For example, each
of the playback devices 14-1 through 14-N and 18 may be playing a
different video, movie, television program, or the like. Note that,
as used herein, heterogeneous content is to include the situation
where two or more of the playback devices 14-1 through 14-N are
playing the same video content but are at different points during
playback of the video content. For example, the playback device
14-1 may be at the beginning of playback of a movie and the
playback device 18 may be at some intermediate point during
playback of the same movie.
[0024] While the discussion herein focuses on video content, the
present invention is not limited thereto. The present invention is
equally applicable to coordinating advertisements in other types of
media content such as, for example, songs, radio broadcasts,
slideshows, video games where action in a video game may be paused
in order to insert an advertisement, or the like. Still further,
the present invention is also applicable to coordinating
advertisements when some of the playback devices 14-1 through 14-N
and 18 are playing a first media content type such as video content
and others of the playback devices are playing a second media
content type such as audio content. For example, one or more of the
playback devices 14-1 through 14-N and 18 may be playing video
content while others are playing audio content.
[0025] The playback device 14-1 may be, for example, a personal
computer; a mobile device such as a Personal Digital Assistant
(PDA), a mobile telephone such an Apple iPhone, a Portable Media
Player (PMP) such as a Microsoft Zune.TM., Nintendo.RTM. DS, or
Sony PSP.RTM., or the like; a set-top box; a set-top box function
hosted by or incorporated into a computing device; a Digital Video
Recorder (DVR) such as a TiVo.RTM. DVR; or any other type of
presentation device having media playback or presentation
capabilities and an interface to the network 16. The playback
device 14-1 includes a virtual group (VG) client function 30-1,
which is hereinafter referred to as a client function 30-1, and a
media player 32-1. The client function 30-1 and the media player
32-1 may each be implemented in software, hardware, or a
combination of software and hardware. The media player 32-1
operates to play media content provided to the playback device 14-1
from the central node 12.
[0026] Similarly, the playback device 14-N may be, for example, a
personal computer; a mobile device such as a PDA, a mobile
telephone such as an Apple iPhone, a PMP such as a Microsoft
Zune.TM., Nintendo.RTM. DS, or Sony PSP.RTM., or the like; a
set-top box; a set-top box function hosted by or incorporated into
a computing device; a DVR such as a TiVo.RTM. DVR; or any other
type of presentation device having media playback or presentation
capabilities and an interface to the network 16. The playback
device 14-N includes a client function 30-N and a media player
32-N. Likewise, the playback device 18 may be, for example, a
personal computer; a mobile device such as a PDA, a mobile
telephone such as an Apple iPhone, a PMP such as a Microsoft
Zune.TM., Nintendo.RTM. DS, or Sony PSP.RTM., or the like; a
set-top box; a set-top box function hosted by or incorporated into
a computing device; a DVR such as a TiVo.RTM. DVR; or any other
type of presentation device having media playback or presentation
capabilities and an interface to the WAN 20. The playback device 18
includes a client function 34 and a media player 36.
[0027] Note that, as will be apparent to one of ordinary skill in
the art upon reading this description, numerous variations of the
illustrated embodiment of the system 10 are possible and are to be
considered within the scope of the present invention. For example,
the VG control function 24 may alternatively be hosted by a remote
server such as, for example, the remote ad server 22 where the
playback devices 14-1 through 14-N may then be connected to the
remote ad server 22 via the WAN 20. Further, while the VG control
function 24 is illustrated as being hosted by the control node 12,
the VG control function 24 may alternatively be hosted by one of
the playback devices 14-1 through 14-N and 18 or distributed among
two or more of the playback devices 14-1 through 14-N and 18.
[0028] FIG. 2 illustrates the operation of the system 10 of FIG. 1
according to one embodiment of the present invention. In this
example, each of the client functions 30-1, 30-N, and 34 requests a
media content item from the VG control function 24 (steps 100-104).
Each of the requested media content items may be, for example, a
streaming video channel, a broadcast television channel, a movie or
television program offered by a VoD service, or the like. The media
content items requested by the client functions 30-1, 30-N, and 34
may or may not be the same media content item. In one embodiment,
the client functions 30-1, 30-N, and 34 request content in response
to selections by the users 26-1, 26-N, and 28. In this example, the
three users 26-1, 26-N, and 28 are illustrated as having requested
content at substantially the same time for clarity and ease of
discussion. However, the present invention is not limited thereto.
For example, the user 26-1 may first request content. Thereafter,
while the user 26-1 is viewing his selected content, the user 26-N
may request content. At this point, more than two members of the
virtual group are active. As such, the VG control function 24
proceeds to coordinate ad slots in the manner described below.
Thereafter, if the user 28 requests content, the VG control
function 24 may repeat the coordination process for all three
playback devices 14-1, 14-N, and 18 or perform the coordination
process for only the playback device 18 in order to coordinate the
ad slots in the media content requested by the playback device 18
with the ad slots in the media content being played back by the
playback devices 14-1 and 14-N.
[0029] Returning to the illustrated example, upon receiving the
requests from the client functions 30-1, 30-N, and 34 of the
playback devices 14-1, 14-N, and 18, the VG control function 24
obtains the requested media content items (step 106). As discussed
above, the VG control function 24 may obtain the requested media
content items from one or more remote services or from local
storage. The VG control function 24 then coordinates the ad slots
in the media content items, or for streaming content, at least
upcoming ad slots in the media content items (step 108). The ad
slots may be coordinated by, for example, synchronizing the ad
slots. However, the present invention is not limited thereto. For
streaming media content, metadata or information describing the
streaming media content may be provided to, or obtained by, the VG
control function 24 to enable coordination of ad slots. Note that
if each of the client devices 14-1, 14-N, and 18 requests the same
media content item at substantially the same time, pre-existing ad
slots or natural transitions in the media content for the playback
devices 14-1, 14-N, and 18 may already be synchronized. Thus, in
this situation, the VG control function 24 may coordinate the
pre-existing ad slots or natural transitions by maintaining the
pre-existing synchronization between the ad slots.
[0030] More specifically, the media content items may or may not
have pre-existing ad slots. If the media content items do have
pre-existing ad slots, the VG control function 24 operates to
coordinate the ad slots by, for example, extending or condensing
the pre-existing ad slots, removing the pre-existing ad slots and
inserting new ad slots, or the like, or any combination thereof. If
the media content items do not have pre-existing ad slots, the VG
control function 24 may insert ad slots such that the inserted ad
slots are coordinated in the desired manner. Alternatively, the VG
control function 24 may detect natural transitions in the media
content items such as, for example, scene transitions, chapter
breaks, or the like and insert ad slots at select ones of the
natural transitions. The inserted ad slots may be adjusted by, for
example, extending or condensing the ad slots to further coordinate
the inserted ad slots. For more information on exemplary ways to
coordinate ad slots in an environment similar to that of the
present invention, the interested reader is directed to U.S. patent
application Ser. No. 11/688,404, entitled COORDINATING
ADVERTISEMENTS AT MULTIPLE PLAYBACK DEVICES, which was filed on
Mar. 20, 2007 and is hereby incorporated herein by reference in its
entirety.
[0031] Once the VG control function 24 has coordinated the ad
slots, the VG control function 24 segments the media content items
(step 110). The size of the segments may be, for example, based on
the particular needs of the system 10 or desired coordination
scheme, configured by the one or more of the users 26-1, 26-N, and
28, configured by a distributor of the media content items,
configured by an operator or user associated with the VG control
function 24, or selected based on a trade-off between rights
management overhead and desired segment size for the coordination
scheme. In one embodiment, the media content items may be segmented
based on the coordinated ad slots. For example, media content
between two ad slots may be one segment. In another embodiment, the
media content between ad slots may be segmented into predetermined
substantially fixed segment sizes such as, for example, five (5)
minute segments. The VG control function 24 may actually segment
the media content items or logically segment the media content
items. The media content items may be logically segmented by, for
example, using associated metadata identifying a start point and an
end point for each segment.
[0032] Once the media content items are segmented, the VG control
function 24 encodes the segmented media content items and generates
rights, or timing rights, for each segment of each of the media
content items (step 112). Note for streaming media content, the VG
control function 24 segments and encodes the segments of the
streaming media content and generates the timing rights as the
media content is streamed to the VG control function 24. For each
one of the playback devices 14-1, 14-N, and 18, the timing rights
define a start time and an end time for each of the segments of the
corresponding media content item. The start time and end time may
each be, for example, a particular time of day such as 7:00 PM EST
and 7:10 PM EST. As another example, the start time and end time
may each be relative to a system time. The system time may be the
beginning of playback of the media content item at the playback
device 14-1, 14-N, or 18 or a time maintained by one of the
playback devices 14-1, 14-N, or 18 or the VG control function 24.
The timing rights are defined such that playback of the segments of
the media content items at the playback devices 14-1, 14-N, and 18
is restricted such that the ad slots remain coordinated during
playback of the media content items at the playback devices 14-1,
14-N, and 18. Thus, even if the users 26-1, 26-N, and 28 are
enabled to fast-forward, rewind, or pause playback, playback of the
segments is restricted to force coordination of the ad slots.
[0033] In addition, the VG control function 24 may select
advertisements for the ad slots in the media content items. In one
embodiment, the VG control function 24 selects targeted
advertisements for the ad slots based on information such as, for
example, profiles of the users 26-1, 26-N, and 28; profiles of the
playback devices 14-1, 14-N, and 18; metadata or information
describing the requested media content items; or the like, or any
combination thereof. For more information relating to the selection
of targeted advertisements, the interested reader is again directed
to U.S. patent application Ser. No. 11/688,404. Once the
advertisements for the ad slots are selected, the VG control
function 24 may obtain the selected advertisements from the remote
ad server 22. The VG control function 24 may then insert the
advertisements into the ad slots prior to or after encoding.
Alternatively, the VG control function 24 may store the
advertisements and provide references to the advertisements to the
playback devices 14-1, 14-N, and 18 in association with the ad
slots such that the client functions 30-1, 30-N, and 34 can obtain
the advertisements for the ad slots from the VG control function 24
as needed. As yet another alternative, the VG control function 24
may provide references to the advertisements to the playback
devices 14-1, 14-N, and 18 such that the client functions 30-1,
30-N, and 34 can thereafter obtain the advertisements from the
remote ad server 22 or some other remote source. Finally, in
another embodiment, the media content items may already include
advertisements within the ad slots in which case the VG control
function 24 enables these preexisting advertisements to remain in
the ad slots. Alternatively, the VG control function 24 may replace
the preexisting advertisements with targeted advertisements, where
the preexisting advertisements may be used as default
advertisements if no targeted advertisements can be found.
[0034] FIGS. 3-5 illustrate the process of coordinating the ad
slots in the media content items, segmenting the media content
items, and generating the timing rights for each of the segments
according to an exemplary embodiment of the present invention. FIG.
3 illustrates portions of the media content items requested by the
client functions 30-1, 30-N, and 34 of the playback devices 14-1,
14-N, and 18 including pre-existing ad slots according to one
embodiment of the present invention. In this example, the client
function 30-1 of the playback device 14-1 has requested VIDEO A,
which includes a number of pre-existing ad slots (Ad Slot 1, Ad
Slot 2, etc.). The client function 30-N of the playback device 14-N
has requested VIDEO B, which includes a number of pre-existing ad
slots (Ad Slot 1, Ad Slot 2, etc.). Lastly, the client function 34
of the playback device 18 has requested VIDEO C, which includes a
number of pre-existing ad slots (Ad Slot 1, Ad Slot 2, etc.).
[0035] FIG. 4 illustrates the requested media content items after
coordination of the ad slots. In this example, the ad slots have
been coordinated by extending the ad slots, or more specifically
adding new ad slots. As a result, the ad slots (Ad Slot 1, Ad Slot
2, etc.) of the media content items (VIDEO A, VIDEO B, and VIDEO C)
are substantially synchronized. While the ad slots are coordinated
by extending the ad slots in this example, the present invention is
not limited thereto. Further, while the ad slots are coordinated by
synchronizing the ad slots in this example, the ad slots may be
coordinated in any desired manner. For example, the ad slots may
alternatively be staggered.
[0036] FIG. 5 illustrates segmentation of the media content items
of FIG. 4 and the assignment of timing rights to the segments. In
this example, a number of time points (Time 0, Time 1, Time 2,
etc.) are illustrated. As a first example, the VG control function
24 may segment the media content items (VIDEO A-VIDEO C) into a
number of segments: Segment 0-1 from Time 0 to Time 1, Segment 1-2
from Time 1 to Time 2, Segment 2-3 from Time 2 to Time 3, etc. The
VG control function 24 then defines timing rights (Rights Segment
0-1, Rights Segment 1-2, Rights Segment 2-3, etc.). Note that in
this example, no timing rights are defined for the ad slots. As
such, the advertisements in the ad slots begin playback at the end
of the previous segment and preferably complete playback prior to
the start time of the next segment. However, the VG control
function 24 may alternatively define timing rights for the ad
slots.
[0037] As a second example, the VG control function 24 may segment
the media content items (VIDEO A-VIDEO C) to form single segments
between ad slots. More specifically, as illustrated, the VG control
function 24 may form a segment (Segment 0-3) from Time 0 to Time 3
and another segment (Segment 4-7) from Time 4 to Time 7. The VG
control function 24 then generates timing rights for those segments
(Rights Segment 0-3 and Rights Segment 4-7). While in this example
each of the segment sizes for each media content item is the same,
the present invention is not limited thereto. Each of the media
content items may have different segment sizes. Further, within
each media content item, the segment sizes may vary.
[0038] Returning to FIG. 2, once the media content items are
encoded and the timing rights are generated, the VG control
function 24 provides the encoded media content item requested by
the client function 30-1, the timing rights for the segments of the
encoded media content item, and if needed one or more keys for
decoding the encoded media content item to the client function 30-1
of the client device 14-1 (step 114). Likewise, the VG control
function 24 provides the encoded media content items requested by
the client functions 30-N and 34, the timing rights for the
segments of the encoded media content items, and if needed one or
more keys for decoding the encoded media content items to the
client functions 30-N and 34, respectively (steps 116 and 118).
Alternatively, the VG control function 24 may provide the encoded
media content to the client functions 30-1, 30-N, and 34 and
thereafter provide the timing rights and key for each segment just
prior to the start times of the segments in a "just-in-time"
manner. More specifically, the timing rights and key for each
segment may be provided to the client functions 30-1, 30-N, and 34
a predetermined amount of time just before playback of the segments
is to begin.
[0039] Upon receiving the encoded media content items, the client
functions 30-1, 30-N, and 34 effect playback of the media content
items according to the timing rights of the segments of the media
content items (steps 120-124). The client functions 30-1, 30-N, and
34 may, for example, interact with the VG client function 24 to
validate the timing rights and keys once at the beginning of
playback and/or prior to the beginning of each segment. Using the
client function 30-1 and the Rights Set B of FIG. 5 as an example,
the client function 30-1 examines the timing rights (Rights Segment
0-3) to determine when the first segment (Segment 0-3) of the
encoded media content item is to begin playback. If the timing
rights are relative to the beginning of playback, the client
function 30-1 may begin playback as soon as the encoded media
content items are received, at some specified time, or when
instructed by the VG control function 24. When it is time for the
first segment to begin playback, the client function 30-1 decodes
the first segment (Rights Segment 0-3) using the corresponding key
and provides the decoded video content to the media player 32-1
(FIG. 1) for playback. The user 26-1 may optionally be enabled to
fast-forward, rewind, and pause playback of the first segment
(Rights Segment 0-3). Once the end time for the first segment
(Rights Segment 0-3) is reached, the client function 30-1 stops
playback of the first segment.
[0040] The client function 30-1 then effects playback of the
advertisement for the first ad slot (Ad Slot 1). The advertisement
for the ad slot (Ad Slot 1) may already be included in the media
content item. Alternatively, the advertisement may be provided to
the client function 30-1 separately and inserted into the ad slot
(Ad Slot 1). As another alternative, a reference to the
advertisement may be provided to the client function 30-1, where
the client function 30-1 uses the reference to obtain the
advertisement from the VG control function 24 or a remote source
such as the remote ad sever 22 (FIG. 1) and then inserts the
advertisement into the ad slot (Ad Slot 1). Note that functions
such as fast-forwarding, pausing, and rewinding may or may not be
enabled during the ad slot. Also, while no timing rights are
defined for the ad slot in this example, the present invention is
not limited thereto. Timing rights may also be defined for the ad
slots. When the start time for the next segment (Rights Segment
4-7) is reached, the client function 30-1 begins playback of the
next segment (Rights Segment 4-7). The process continues until
playback is complete or terminated by the user 26-1.
[0041] Typically, timing rights for each segment provide sufficient
time for the user 26-1 to view the entire segment. The timing
rights may include additional time such that the user 26-1 has
sufficient time to view the entire segment even with a reasonable
amount of pausing and rewinding. If playback reaches the end of the
first segment before the end time of the first segment, the user
26-1 may be enabled to view some other media content until the end
time of the segment is reached, be presented with an advertisement
or instructions asking the user 26-1 to wait, or the like.
[0042] More specifically, FIG. 6 illustrates a frame of a media
content item where playback is restricted according to the present
invention. As illustrated, information such as time remaining
before the end of the user's right to playback the current segment
of the media content item and the amount of time in the current
segment may be presented to the user. If, as illustrated in FIG. 7,
playback of the current segment is complete before the end time for
the current segment, the user may be enabled to switch to another
media content item such as a broadcast television channel until the
end time for the current segment is reached. Note that the user may
switch to another media content item at any time if desired. In
this example, playback of the current segment has completed with 2
minutes and 13 seconds remaining before the end time for the
current segment. As such, the user has switched playback to another
media content item. The current segment of the media content item
may also be presented using a Picture-in-Picture (PIP) feature or
the like. When the end time of the current segment is reached, the
client functions 30-1, 30-N, and 34 may automatically switch back
to the media content item, prompt the user to switch back to the
media content item, notify the user, or the like.
[0043] Returning to FIG. 2, after providing the encoded content,
timing rights, and keys to the client functions 30-1, 30-N, and 34,
the VG control function 24 may further operate to dynamically
update the segmentation of the encoded media content items and/or
the timing rights for the segments in response to triggering events
such as, for example, one of the playback devices 14-1, 14-N, or 18
becoming inactive, a new playback device in the virtual group
becoming active as indicated by the receipt of a request for a
media content item, a request for a new media content item from one
or more of the playback devices 14-1, 14-N, and 18, or the like.
More specifically, in response to the triggering event, the VG
control function 24 may repeat all or some of steps 106-112 in
order to obtain any new media content item(s), dynamically update
the coordination of the ad slots, update the segmenting of the
media content items, generate timing rights for the updated
segments, and encode the updated segments. Alternatively, if the
triggering event is the activation of the new playback device or a
request for a new media content item from one of the playback
devices 14-1, 14-N, and 18, the VG control function 24 may
coordinate the ad slots in the media content requested by that
playback device with the previously coordinated ad slots of the
media content requested by the other playback devices rather than
updating the media content for all of the playback devices.
[0044] FIG. 8 is a block diagram of an exemplary embodiment of the
central node 12 of FIG. 1. In general, the central node 12 includes
a control system 38 having associated memory 40. In this
embodiment, the VG control function 24 is implemented in software
and stored in the memory 40. However, the present invention is not
limited thereto. The VG control function 24 may be implemented in
software, hardware, or a combination thereof. The central node 12
may also include one or more digital storage devices 42, one or
more communication interfaces 44 communicatively coupling the
central node 12 to the playback devices 14-1 through 14-N and 18
and the remote ad server 22, and a user interface 46, which may
include components such as one or more user input devices, a
display, and the like.
[0045] FIG. 9 is a block diagram of an exemplary embodiment of the
playback device 14-1 of FIG. 1. This discussion is equally
applicable to the other playback devices 14-2 through 14-N and 18.
In general, the playback device 14-1 includes a control system 48
having associated memory 50. In this embodiment, the client
function 30-1 and the media player 32-1 are implemented in software
and stored in the memory 50. However, the present invention is not
limited thereto. Each of the client function 30-1 and the media
player 32-1 may be implemented in software, hardware, or a
combination thereof. The playback device 14-1 may also include one
or more digital storage devices 52, a communication interface 54
communicatively coupling the playback device 14-1 to the VG control
function 24 at the central node 12, and a user interface 56, which
may include components such as one or more user input devices, a
display, one or more speakers, and the like.
[0046] 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.
* * * * *