U.S. patent application number 13/550479 was filed with the patent office on 2012-11-08 for bookmarks and watchpoints for selection and presentation of media streams.
This patent application is currently assigned to Kaleidescape, Inc.. Invention is credited to Lawrence Kesteloot, Michael A. Malcolm, Shawn R. Neely, Paul Rechsteiner, Stephen Watson.
Application Number | 20120284292 13/550479 |
Document ID | / |
Family ID | 32719643 |
Filed Date | 2012-11-08 |
United States Patent
Application |
20120284292 |
Kind Code |
A1 |
Rechsteiner; Paul ; et
al. |
November 8, 2012 |
Bookmarks and Watchpoints for Selection and Presentation of Media
Streams
Abstract
Selection and presentation of media streams, in which
presentation is not limited by order imposed by the digital content
representative of those media streams, in response to bookmarks and
watchpoints settable and usable by a user. Bookmarks reference a
location within the media stream, not necessarily pre-selected and
possibly dynamically selected, in which a presentation can be
started or restarted therefrom. Watchpoints reference a location
within the media stream, or a presentation state for the media
stream, in which an action can be triggered thereby. Bookmarks and
watchpoints provide a general technique for presenting selections
from media streams in response to metadata.
Inventors: |
Rechsteiner; Paul; (Toronto,
CA) ; Neely; Shawn R.; (Sunnyvale, CA) ;
Kesteloot; Lawrence; (San Francisco, CA) ; Malcolm;
Michael A.; (Aspen, CO) ; Watson; Stephen;
(Toronto, CA) |
Assignee: |
Kaleidescape, Inc.
Sunnyvale
CA
|
Family ID: |
32719643 |
Appl. No.: |
13/550479 |
Filed: |
July 16, 2012 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10655496 |
Sep 3, 2003 |
8225194 |
|
|
13550479 |
|
|
|
|
10418739 |
Apr 18, 2003 |
7231607 |
|
|
10655496 |
|
|
|
|
10418949 |
Apr 18, 2003 |
7246322 |
|
|
10418739 |
|
|
|
|
60488367 |
Jul 15, 2003 |
|
|
|
60439330 |
Jan 9, 2003 |
|
|
|
Current U.S.
Class: |
707/758 ;
707/705; 707/E17.009; 707/E17.014 |
Current CPC
Class: |
H04N 21/47214 20130101;
H04N 21/858 20130101; G11B 27/034 20130101; G11B 27/105
20130101 |
Class at
Publication: |
707/758 ;
707/705; 707/E17.009; 707/E17.014 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. A computer-implemented method, comprising: receiving a media
stream by a first recipient; accepting input by the first recipient
to create a bookmark; sending the bookmark to a second recipient;
dynamically selecting the bookmark at the second recipient; and
presenting the media stream beginning at a point designated by the
bookmark, wherein the method is performed by at least one
processor.
2. The computer-implemented method of claim 1, including at least a
second such bookmark, whereby there is a plurality of bookmarks
each capable of being dynamically selected; and wherein a first set
of those plurality of bookmarks is associated with a first
designating identifier, and wherein and a second set of those
plurality of bookmarks is associated with a second designating
identifier.
3. The computer-implemented method of claim 2, further comprising
searching among the first designating identifier and the second
designating identifier for selected text.
4. The computer-implemented method of claim 2, further comprising:
selecting among the first designating identifier and the second
designating identifier; and presenting at least a portion of the
media stream in response to a bookmark found in response to those
steps of searching.
5. The computer-implemented method of claim 2, further comprising:
selecting among the first designating identifier and the second
designating identifier; and presenting a set of portions of the
media stream in response to a set of bookmarks found in response to
those steps of searching, whereby substantially all portions of the
media stream designated by bookmarks associated with a selected
designating identifier are presented in response to those steps of
selecting.
6. The computer-implemented method of claim 2, wherein the first
designating identifier includes information about the first
set.
7. The computer-implemented method of claim 1, wherein the creating
the bookmark further comprises the bookmark being not pre-selected
by a creator or distributor of the media stream.
8. A computer-readable medium having computer-executable
instructions, which when executed, cause: receiving a media stream
by a first recipient; accepting input by the first recipient to
create a bookmark; sending the bookmark to a second recipient;
dynamically selecting the bookmark at the second recipient; and
presenting the media stream beginning at a point designated by the
bookmark.
9. The computer-readable medium of claim 8, including at least a
second such bookmark, whereby there is a plurality of bookmarks
each capable of being dynamically selected; and wherein a first set
of those plurality of bookmarks is associated with a first
designating identifier, and wherein and a second set of those
plurality of bookmarks is associated with a second designating
identifier.
10. The computer-readable medium of claim 9, further including
instructions which when executed, cause searching among the first
designating identifier and the second designating identifier for
selected text.
11. The computer-readable medium of claim 9, further including
instructions which when executed, cause: selecting among the first
designating identifier and the second designating identifier; and
presenting at least a portion of the media stream in response to a
bookmark found in response to those steps of searching.
12. The computer-readable medium of claim 9, further including
instructions which when executed, cause: selecting among the first
designating identifier and the second designating identifier; and
presenting a set of portions of the media stream in response to a
set of bookmarks found in response to those steps of searching,
whereby substantially all portions of the media stream designated
by bookmarks associated with a selected designating identifier are
presented in response to those steps of selecting.
13. The computer-readable medium of claim 9, wherein the first
designating identifier includes information about the first
set.
14. The computer-readable medium of claim 8, wherein the
instructions for creating the bookmark further comprise the
bookmark being not pre-selected by a creator or distributor of the
media stream.
Description
BACKGROUND OF THE INVENTION
[0001] 1. Field of the Invention
[0002] The invention relates to selection and presentation of media
streams; in aspects thereof, the invention relates to bookmarks and
watchpoints, and to event handling, for selection and display of
videos from media, such as for example DVD and other related
media.
[0003] 2. Related Art
[0004] In systems for presenting information, such as for example
information relating to audiovisual media, users are able to
present information already recorded on digital media. For example,
DVD player systems provide users with the ability to playback
digital content pre-recorded on DVD media. In the incorporated
disclosure (as described below) such systems provide users with the
ability to present (that is, display video elements of and play
audio elements of) media streams, either after or concurrently with
download of digital content representing those media streams. In
the incorporated disclosure (as described below) such systems
further provide the capability of downloading that digital content
from one or more content servers.
[0005] A first problem with known DVD media playback is that the
process of playback involves interaction between the user and a
pre-selected sequence of playback capabilities, recorded onto the
DVD media by someone other than the user (such as a creator or
distributor of that DVD media). For example, playback might involve
navigation of a selection menu, might involve playback of
audiovisual messages the creator or distributor has determined are
advantageous for the user to be forced to watch (such as for
example an anti-piracy warning, or such as for example one or more
advertisements or pre-release announcements). Accordingly, it would
at some times be advantageous to avoid being restricted by choices
imposed on them by the creator or distributor of the DVD media.
[0006] A second problem with known playback techniques is that the
user might have a substantial library of media streams from which
the user might desire to present. For a first example, the user
might wish to present short clips (or "trailers") of individual
movies as part of a process of selection or review of those
individual movies. For example, the user might wish to present a
trailer for an individual movie as part of deciding whether to
purchase that movie (including for example on-line purchase of a
downloaded copy) or to present that movie to a selected audience
(including for example determining if that audience was interested
in the movie in response to the selected trailer). For a second
example, the user might wish to point to selections from media
streams when analyzing, commenting on, reviewing, or selecting
portions thereof. A first example thereof might be a biography of a
known actor or director, including selections of short clips of
scenes used for illustrative, scholarly, literary, artistic,
political, or social purposes. A second example thereof might be
that the user wishes to present a short clip, such as a favorite
scene, for presentation to a selected audience (including for
example just the user themselves), or as part of a pedagogical
exercise (including for example as a demonstration of acting
technique or camera work).
[0007] Both these problems are exacerbated by increases in the
number of DVD media providers (whether creators or distributors),
and by increases in the number of media streams available to the
user. Moreover, both these problems might inhibit development of a
convenient UI (user interface) for selection and presentation of
media streams, whether from recorded physical media or downloaded
from one or more content servers.
[0008] Accordingly, it would be advantageous to provide an improved
technique for video selection and presentation, relatively less
subject to problems with known techniques.
SUMMARY OF THE INVENTION
[0009] The invention provides a method and system capable of
selection and presentation of media streams, in which presentation
is not substantially limited by any order imposed by the digital
content representative of those media streams.
[0010] In one aspect, the invention provides a method and system
capable of creating and referencing a bookmark to a location
selected within the media stream, not necessarily pre-selected by
the creator or distributor of that media stream, and possibly
dynamically selected by a recipient of digital content representing
that media stream. In addition to referencing the bookmark, the
invention provides a user with the capability of starting or
restarting presentation from the selected bookmark.
[0011] In one aspect, the invention provides a method and system
capable of creating a watchpoint at a location selected within the
media stream, or a presentation state otherwise associated with
presentation of the media stream, capable of associating with that
watchpoint one or more watchpoint triggers (indicating on what
conditions the watchpoint is triggered) and one or more watchpoint
actions (indicating what actions are taken in response to
triggering the watchpoint). For one example, the user might
designate a bookmark at the beginning of a selected film clip, a
watchpoint trigger with the end of that same film clip, and a
watchpoint action associated with the watchpoint, which watchpoint
action directs a presentation device to return to a presentation
state it was at before presenting from the bookmark. In this
example, the film clip effectively acts as a media element capable
of being inserted into another, different, media stream (or more
generally, into any other user interface or media presentation, the
original user interface or media presentation not necessarily
including any original media streams of its own), without involving
any other digital content associated with the larger media stream
that contains that film clip.
[0012] In one aspect, the invention provides a method and system
capable of selecting one of a set of such film clips
(bookmark-watchpoint pairs) for presentation, in response to a user
input, a user preference, a playback device configuration,
demographic information about the user or the playback device, or
other pertinent information. For a first example, a one or more
DVD's might have a first version of its movie better suited for
presentation on a regular television screen, and a second version
of its movie better suited for presentation on a widescreen or HDTV
television screen (currently, the movie "Shrek" is sometimes
marketed with two separate DVD's, one of which includes a
widescreen version and one of which includes a narrowscreen
version). For a second example, one or more DVD's might have a
first version of its movie better suited for presentation to a
mature audience, and a second version of its movie better suited
for presentation to a less-mature audience. For a third example, a
single DVD might have a set of versions of its movie with selected
different plot points or movie endings, for those different
audiences or users who prefer the movie to have a happy ending or
otherwise. For a fourth example, a single DVD might have a shorter
(abridged) and a longer (unabridged) version of the same movie,
selectable by the user. In one aspect, the invention provides a
method and system capable of selecting one of a set of such film
skips (watchpoint-bookmark pairs), with the effect that a section
of a media stream might be skipped, censored, or otherwise edited
out, in response to a user input, a user preference, a playback
device configuration, demographic information about the user or the
playback device, or other pertinent information.
[0013] In one aspect, the invention provides a method and system
capable of testing one or more state variables at such bookmarks or
watchpoints, and of taking different actions in response to
distinct values of those state variables. In one embodiment, the
invention provides a user with the capability of designing a
sequence of actions (conditional or unconditional), by which
selections from media streams might be presented in response to
digital content representing those media streams and in response to
other information. Such other information might include the scope
of a license afforded to the user, demographic or other metadata
about that user, or interactive activity with that user (or more
than one such user). Such a sequence of actions might be recorded,
retrieved, transmitted, or received, similar to digital content
representing any other type of media stream.
[0014] In one embodiment, the invention might include bookmarks
created or edited using one or more techniques or by one or more
types of creators. For a first example, bookmarks might be created
in conjunction with the original content, such as for example by an
author, creator, distributor, or synchronizer, of the original
content. For a second example, bookmarks might be created by a
party other than in conjunction with the original content, such as
for example by a secondary distributor of the content, a server
providing the content to an end-user along with newly-associated
metadata, a translator of the original content, such as a person
adding subtitles in a second or an alternative language or
"dubbing" in sound in a second or an alternative, or such as an
editor of the movie for a specific purpose, such as for example a
purpose suitable for airliner use, for children, or for export to
selected countries. For a third example, bookmarks might be created
by end-user preferences, either explicit or implicit or some
combination or conjunction thereof, such as for example in response
to the end-user designating a favorite scene, or such as for
example in response to the end-user skipping over a disfavored
scene, or such as for example in response to preferences implied by
demographic information about the end-user. Similar to bookmarks,
the invention might also include watchpoints created using one or
more techniques or by one or more types of creators, as described
above with regard to creation or editing of bookmarks.
[0015] After reading this application, those skilled in the art
would recognize that the invention is an enabling technology by
which substantial advance is made in the art of media streams and
digital content representative thereof. For example, the invention
might be used to provide one or more of, or some combination or
extension or mixture of, any of the following: [0016] Saving
selected scenes from movies and requesting playback of those
scenes, either in response to user command, pointers to those
scenes, or metadata describing those scenes. [0017] Pausing movies
during presentation on a first device and requesting playback on a
second device, such as for example in response to user command.
[0018] Assembling a collection of such selected scenes, possibly
along with commentary, or possibly embedded in another media stream
for which those selected scenes are exemplary or illustrative.
[0019] Assembling a collection of bookmarks or watchpoints,
possibly along with commentary; maintaining that collection in a
database or other metadata; or sending that collection from one
device to another. [0020] Creating and presenting a demonstration
of a home video system, including demonstration of selection and
presentation of media streams as part of the demonstration. In one
embodiment, the demonstration itself might be interactive, and
include the capability for the user to select which media streams
are selected or presented as part of the demonstration itself.
[0021] Creating and presenting a media stream by which a
pseudorandom or random process determines presentation of such
selected scenes, possibly in response to other information. In one
embodiment, the pseudorandom or random process might select film
clips in response to known preferences of the user, thus providing
the capability of a film clip "screen saver" or a variant of the
MTV channel. [0022] Pausing, restarting, and repeating presentation
of media streams, even for media for which such functions are not
originally supported. [0023] Direct access to feature presentations
within recorded digital media, without any substantial requirement
for navigating via pre-recorded menus or pre-recorded advertising,
announcements, or warnings. [0024] Direct access to supplements to
such feature presentations, or trailers associated with such
feature presentations, within recorded digital media, without any
substantial requirement for navigating via pre-recorded menus or
pre-recorded advertising, announcements, or warnings. [0025]
Presentation of media streams represented by digital content
recorded on multiple volumes of digital media, such as for example
movies recorded on more than one DVD, without any substantial
requirement for the user to intervene at a switching point between
those multiple volumes. [0026] Performing operations external to
presentation in response to the media stream, such as for example
turning up room lights at the start of movie credits, diminishing
sound volume during commercial breaks, or pausing presentation in
response to aspects of the movie (such as for example at a
commercial break in a broadcast movie). [0027] Creating and
presenting a computer game using individual film clips, either from
pre-existing DVD media or newly-created digital content. For
example, the computer game might be interactive, or might respond
to external information, such as for example a television news
feed.
[0028] In one embodiment, the invention includes a representation
of a presentation state and a virtual machine state, each of which
is updated concurrently with presentation of the media stream.
[0029] A bookmark preferably includes a defined presentation state
and virtual machine state to which a presenting device might be
set, with the effect of providing that presenting device with the
capability of presentation beginning at that bookmark. In one
embodiment, presentation might instead begin at a closest "entry
location" designated by the digital content representing that media
stream. In one embodiment, the defined presentation state or
virtual machine state might include a known "title number" within
DVD media on which is recorded the digital content representing
that media stream.
[0030] A watchpoint preferably includes a defined presentation
state and virtual machine state, along with one or more associated
triggerable actions, with the effect that whenever the presenting
device attempts to match its presentation state and virtual machine
state with that watchpoint, a first sufficient degree of similarity
with the triggering condition (possibly for a first subset of data
associated with each such state) would cause the watchpoint to be
triggered, and a second sufficient degree of similarity with a
conditional choice of action (possibly for a second subset of data
associated with each such state) would cause the associated actions
would be performed. For example, the presenting device might
attempt to match its presentation state and virtual machine state
with selected watchpoints after each known frame of the media
stream, or at the beginning or end of each subsegment of the media
stream designated by the digital content representing that media
stream.
BRIEF DESCRIPTION OF THE DRAWINGS
[0031] FIG. 1 shows a block diagram of a system including bookmarks
and watchpoints for video selection and presentation.
[0032] FIG. 2 shows a process flow diagram of a method including
operation of a system including bookmarks and watchpoints for video
selection and presentation.
INCORPORATED DISCLOSURE
[0033] This application claims priority of the following documents,
each of which is hereby incorporated by reference as if fully set
forth herein. [0034] U.S. provisional patent application
60/439,330, filed Jan. 9, 2003, in the name of Shawn NEELY,
Lawrence KESTELOOT, Margaret NOVOTNY, Marion BUCHENAU, Sheila
FOLEY, and Michael O'NEIL, attorney docket number 217.1014.01,
titled "User Interface for Video Selection and Display". [0035]
U.S. patent application Ser. No. 10/418,949, filed Apr. 18, 2003,
in the name of Shawn NEELY, Lawrence KESTELOOT, Margaret NOVOTNY,
Marion BUCHENAU, Sheila FOLEY, and Michael O'NEIL, attorney docket
number 217.1017.01, titled "Guide-Like User Interface for Video
Selection and Display". [0036] U.S. patent application Ser. No.
10/418,739, filed Apr. 18, 2003, in the name of Shawn NEELY,
Lawrence KESTELOOT, Margaret NOVOTNY, Marion BUCHENAU, Sheila
FOLEY, and Michael O'NEIL, attorney docket number 217.1018.01,
titled "Mosaic-Like User Interface for Video Selection and
Display". [0037] U.S. provisional patent application 60/488,367,
filed Jul. 15, 2003, in the name of Paul RECHSTEINER, Shawn NEELY,
Lawrence KESTELOOT, Daniel COLLENS, Robert ZARNKE, Nik GERVAE, Ray
DEPAUL, Richard CZEGLEDI, and Kevin HUI, attorney docket number
217.1019.01, titled "Bookmarks and Watchpoints for Selection and
Presentation of Media Streams".
[0038] These documents are hereby incorporated by reference as if
fully set forth herein, and are sometimes referred to herein as the
"incorporated disclosure".
[0039] Inventions described herein can be used in combination or
conjunction with technology described in the incorporated
disclosure.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
[0040] In the description herein, a preferred embodiment of the
invention is dew scribed, including preferred process steps and
data structures. Those skilled in the art would realize, after
perusal of this application, that embodiments of the invention
might be implemented using a variety of other techniques not
specifically described, without undue experimentation or further
invention, and that such other techniques would be within the scope
and spirit of the invention.
Lexicography
[0041] The general meaning of each of these following terms is
intended to be illustrative and in no way limiting. [0042] The
phrase "media stream" describes information intended for
presentation in a sequence, such as motion pictures including a
sequence of frames or fields, or such as audio including a sequence
of sounds. As used herein, the phrase "media stream" has a broader
meaning than the standard meaning for "streaming media," (of sound
and pictures that are transmitted continuously using packets and
that start to play before all of the content arrives). Rather, as
described herein, there is no particular requirement that "media
streams" must be delivered continuously. Also as described herein,
media streams can refer to other information for presentation, such
as for example animation or sound, as well as to still media, such
as for example pictures or illustrations, and also to databases and
other collections of information. [0043] The phrase "digital
content" describes data in a digital format, intended to represent
media streams or other information for presentation to an end
viewer. "Digital content" is distinguished from packaging
information, such as for example message header information. For
the two phrases "digital content" and "media stream," the former
describes a selected encoding of the latter, while the latter
describes a result of presenting any encoding thereof. [0044] The
phrase "DVD media content format," and the like, describes a family
of encoding formats including DVD-audio and DVD-video (such as for
example used with media including digital video disks or
equivalents thereof). DVD media content format is a specific
example of one of many possible formats in which digital content
might be encoded. [0045] The phrase "digital media," and the like,
describes physical media capable of maintaining digital content in
an accessible form. Digital media includes disk drives (including
magnetic, optical, or magneto-optical disk drives), as well as any
other physical media capable of maintaining information, such as
digital content. [0046] The terms "playback," "presentation," and
the like, describe presentation (such as for example to one or more
users) of audio, visual, or other features of media streams. [0047]
The phrase "content server" describes a device (or a portion
thereof, or a set of such devices or portions thereof) capable of
sending digital content to recipients. For example, a content
server might include a web server at which a user is provided the
capability of purchasing digital media for download. In the context
of this application, there is no particular requirement that the
server be (logically or physically) located at any particular
address or place, or have any particular architecture, or use any
particular protocol for communication. For example, the content
server might include a process logically available to a local
presentation device. [0048] The term "bookmark" describes a
reference to a logical location selected within a media stream. In
one embodiment, bookmarks are not necessarily pre-selected by the
creator or distributor of that media stream, and are possibly
dynamically selected by a recipient of digital content representing
that media stream. In one embodiment, presentation devices are
capable of starting or restarting presentation from a selected
bookmark. [0049] The term "watchpoint" describes an association of
at least one watchpoint trigger and at least one watchpoint action.
This has the effect that a watchpoint is capable of being treated
as an "IF-THEN" construct, where the watchpoint trigger is the "IF"
part of the construct and the watchpoint action is the "THEN" part
of the construct. Those one or more watchpoint actions might be
conditioned on some other data or state information. For one
example, the user might designate a bookmark at the beginning of a
selected film clip, and a watchpoint including (1) a watchpoint
trigger associated with the end of that same film clip, and (2) a
watchpoint action directing a presentation device to return to a
presentation state it was at before presenting from the bookmark.
In this example, the film clip effectively acts as a media element
capable of being inserted into another, different, media stream,
without involving any other digital content associated with the
larger media stream that contains that film clip. [0050] The phrase
"watchpoint action" describes an action to be performed in response
to triggering a watchpoint (when the conditions of the watchpoint
trigger occur). Watchpoint actions might be conditioned on some
other data or state information. [0051] The phrase "watchpoint
trigger" describes a reference to a logical state of a presentation
device, such as for example a logical location selected within a
media stream. When that logical state (or any other condition used
as a watchpoint trigger) occurs, the watchpoint is triggered and
the watchpoint action part of the watchpoint is performed.
[0052] The scope and spirit of the invention is not limited to any
of these definitions, or to specific examples mentioned therein,
but is intended to include the most general concepts embodied by
these and other terms.
System Elements
[0053] FIG. 1 shows a block diagram of a system including bookmarks
and watchpoints for video selection and presentation.
[0054] A system 100, such as for example an end-user system,
includes a library 110 or other storage including digital content
111 representing a media stream, such as for example in a DVD media
content format, a presentation device 120, and a presentation
controller 130.
[0055] In one embodiment, the library 110 might include one or more
of: a DVD reader; a disk drive (whether magnetic, optical,
magneto-optical, or otherwise); a "jukebox" or other collection of
multiple readers for physical media such as DVD's or disk drives; a
communication link to a web server, file server, database server,
or other server; a broadcast receiver such as a cable modem or
satellite link, or any other device or technique having the
capability of delivering digital content to the presentation device
120.
[0056] In one embodiment, the presentation controller 130 might
include a portion, or be included in a portion, of a PVL (personal
video library) associated with the system 100. The library 110
might also include a portion, or be included in a portion, of a PVL
(personal video library) associated with the system 100. However,
after reading this application, those skilled in the art would
recognize that in the context of the invention, no such limitation
is required. One such embodiment is further described in the
incorporated disclosure.
[0057] The presentation controller 130 is, in one embodiment,
coupled to at least one input device 131, suitable for receiving
commands or other information from a user 132 associated with the
presentation device 120, and at least one output device, which in
one embodiment includes a portion of, or is included in a portion
of, the presentation device 120 itself. The presentation controller
130 includes a processor, program and data memory, and is capable
of receiving those commands or other information, and responding
thereto as described herein, with the effect that the user 132 is
capable of interacting with the presentation controller 130 as
described herein.
[0058] There is no particular requirement, in the context of the
invention, either (a) that the presentation controller 130 involves
an input device 131, or (b) that the presentation controller 130
receives commands or other information from a user 132. In
alternative embodiments, the presentation controller 130 may act in
response to a pre-selected set of programming instructions, or in
response to a set of sensors not generally considered an input
device 131, such as for example a timed program show or a program
show responsive to the presence of people to watch it. In
alternative embodiments, the presentation controller 130 may act in
response to commands or other information from an operator other
than a user 132, such as for example a stage director or performer,
or a remote teacher engaged in televised instruction.
[0059] For just one example of such alternative embodiments, the
system 100 may be devised to make presentations of shows at a
demonstration device, a sales kiosk, or a trade show. In such
alternative embodiments, the presentation controller 130 might be
responsive to a timer to present a continuous loop of the same
media stream (or a pseudorandomly or randomly selected sequence of
different media streams), or might be responsive to the absence or
presence of heat (using an IR sensor), light, or sound to determine
the absence or presence of a viewing audience of sufficient size,
and in response thereto, might be responsive to the audience and
its size to present an automatically selected sequence of media
streams.
[0060] As described above, the library 110 includes (or includes
access to) digital content 111 representing a media stream, such as
for example in a DVD media content format. Typically, the user 132
interacts with a user interface at a selected presentation device
120, with the effect that the user 132 might choose for
presentation an episode or show that forms at least a portion of
the digital content 111. The presentation device 120 interacts with
the library 110 to obtain the portion of the digital content 111
representing the media stream for that episode or show. The library
110 sends that portion of the digital content 111 to the
presentation device 120, with the effect that the presentation
device 120 presents the media stream represented by that portion of
the digital content 111 to the user 132.
[0061] After reading this application, those skilled in the art
would recognize that specifications for aspects of DVD devices and
methods, including DVD-audio, DVD-video, and related
specifications, actually support a more interactive method of
behavior. However, but that any such interactive behavior involves
pre-programming that interactive behavior into the digital content
111 before the library 110 (or other storage or communication)
receives that digital content 111. There is no substantial
provision for the user 132 to create a new interactive behavior, or
to use a new interactive behavior created after that digital
content 111 was originally created.
[0062] The digital content 111 in a DVD media content format
includes a sequence of instructions, each either (a) directing a
virtual machine state change, or (b) directing presentation of at
least a portion of a media stream. In one embodiment, the virtual
machine state includes a plurality of registers, at least some of
which are read-only and describe the presentation device 120
configuration, while at least some (others) are more general in
purpose, such as for example a register storing whether a certain
portion of the DVD had already been viewed. In such an embodiment,
the virtual machine instructions either (a) alter, update, or
otherwise modify virtual machine registers, or (b) direct
presentation of at least a next portion of a media stream.
[0063] The presentation device 120 also includes a presentation
state, distinct from the virtual machine state, which describes at
least some internal state of the presentation device 120 as it
parses and presents the portion of the media stream represented by
the digital content 111. As the digital content 111 is read,
parsed, and converted to a format with which the presentation
device 120 might present the portion of the media stream, the
presentation state of the presentation device 120 changes, without
necessarily changing the virtual machine state of the presentation
device 120.
[0064] The phrase "media stream state" generally describes a
complete state, including both the virtual machine state and the
presentation state, of the presentation device 120.
[0065] After reading this application, those skilled in the art
would recognize that the virtual machine state can be responsive to
the presentation state (although in one embodiment the virtual
machine state is unchanged by changes in the presentation state),
and that the presentation state can be responsive to the virtual
machine state (although in one embodiment the presentation state is
responsive to the digital content 111).
[0066] Watchpoints, including their watchpoint triggers and
watchpoint actions, might be conditioned on other state information
or input, with the effect that both the virtual machine state and
the presentation state might be made responsive to any conditions
or data those watchpoint triggers or watchpoint actions are able to
test. For one example, not intended to be limiting in any way,
conditional watchpoint triggers or watchpoint actions might be
responsive to information of the following types: [0067] hardware
or software information relating to the construction, make, model,
origin, point of sale, amount of memory, processor speed, or other
information regarding how the presentation device 120 is
constructed; [0068] demographic information relating to the nature
of the user 132, including the user's age, home location, income,
VALS evaluation, preferences, or other information regarding uses
made by the user 132 of the presentation device 120, including for
example a current GPS location of the presentation device 120 or of
the user 132; [0069] dynamic information relating to external
events, including for example the presence or absence of other
persons near the presentation device 120 (and if those persons are
known as other users 132, demographic information relating to their
nature, or alternatively, a number of such persons), and including
for example the operation of other equipment in the same room,
suite, apartment, or building in which the presentation device 120
is located (such as for example, whether a door is opened or
closed, whether a telephone rings, whether lights are turned on, a
temperature inside or outside, a time of day, a day of the week, a
week of the year, whether or not the selected day is or precedes a
school holiday, and the like). or [0070] dynamic information
relating to external data, including for example data regarding
news announcements, public events, stock tickers, weather, and the
like (any or all of which might be filtered or searched in response
to keywords, with the effect that the user 132 is capable of
causing the presentation device 120 to respond to new announcements
involving selected celebrities or types of event, sports events or
weather involving a selected city or region, stock tickers
regarding selected companies or industries, and the like);
Method of Operation
[0071] FIG. 2 shows a process flow diagram of a method including
operation of a system including bookmarks and watchpoints for video
selection and presentation.
[0072] A method 200 includes a set of flow points and steps.
Although described serially, these flow points and steps of the
method 200 can be performed by separate elements in conjunction or
in parallel, whether asynchronously or synchronously, in a
pipelined manner, or otherwise. There is no particular requirement
that the flow points or steps must be performed in the same order
as described, except where explicitly so indicated.
[0073] Creating Bookmarks
[0074] At a flow point 210A, the method 200 is ready to create a
bookmark.
[0075] At a step 211, the method 200 receives information (such as
from an end-user or an operator) specifying the location of the
bookmark, and any related information. In one embodiment, that
related information might include (a) information relating to the
configuration of the presentation device(s) at which presentation
from the bookmark is to be specified, (b) information relating to
licensing information relating to the media stream of which the
bookmark is a part, or (c) other metadata relating to the bookmark,
such as for example a title for the bookmark, one or more
representative graphics, such as for example thumbnail pictures,
associated with the bookmark, a set of configuration information
regarding how that thumbnail picture would be presented (or
presented in a selected context), or a set of key words associated
with the bookmark, with the effect that an end-user or operator
might search for one or more of those key words, or edit those key
words with the effect of remarking upon the bookmark (for one
example, not intended to be limiting in any way, if the bookmark is
associated with a time in the media stream at which a great white
shark attacks a person, the words "SHARK ATTACK" might be
associated with the bookmark, with the effect that an end-user or
operator might search for one or more of those words with the
effect of finding the shark attack scene).
[0076] In one embodiment, at least some of the following
information is included in the information the method 200 receives
in this step: [0077] A type of entry location (further described
below with regard to the next step), such as for example "first
play," "top menu," "title menu," "title menu," "end of title," and
the like. [0078] A title number, such as for example an integer
from 1 to 99. In one embodiment, this value is used only for entry
locations of type "title menu" or "end of title." [0079] A start
time in frames, seconds, or other measurement from the beginning of
the title. In one embodiment, this value is used only for entry
locations of type "title menu." [0080] A VTS number, such as for
example an integer from 1 to 99. In one embodiment, this value is
used only for entry locations of type "title menu." [0081] A VTS
title number, such as for example an integer from 1 to 99. In one
embodiment, this value is used only for entry locations of type
"title menu."
[0082] At a step 212, the method 200 determines an "entry location"
into a media stream at which presentation devices are capable of
beginning presentation without substantial chance that state
information for the presentation device would be inaccurate or
incomplete. After reading this application, those skilled in the
art of presentation of media streams, including for example media
streams recorded on DVD media, would recognize that loading a
complete image of the state of an arbitrary presentation device
might be unwieldy, and further might have the effect of providing
inaccurate or incomplete information to that presentation device if
the exact presentation device and its configuration were not known
ahead of time. Accordingly, in one embodiment, to perform this
step, the method 200 searches for an entry location at or near
(such as close before or close after) the specified location of the
bookmark.
[0083] In one embodiment, the method 200 recognizes at least some
of the following types of entry location: [0084] A "first play"
type of entry location, such as for example what the presentation
device will start with when first noting the presence of the
digital content. A "first play" type of entry location is known for
DVD players capable of presenting digital content maintained on
DVD. [0085] A "top menu" type of entry location, such as for
example a root menu in a tree of menus accessible by the
presentation device and maintained on the digital content
representing the media stream. [0086] A "title menu" type of entry
location, such as for example an entry location indicating a start
of a selected title maintained on the digital content representing
the media stream. [0087] A "title" type of entry location, such as
for example an entry location indicating a time T after the start
of the selected title maintained on the digital content
representing the media stream. [0088] An "end of title" type of
entry location, such as for example an entry location indicating
the end of a selected title maintained on the digital content
representing the media stream.
[0089] For one example, not intended to be limiting in any way, the
entry location might be one such as defined by the DVD
specification, also described in J. TAYLOR, DVD DEMYSTIFIED
(2.sup.nd ed., 2001) (McGraw-Hill: New York) (ISBN 0-07-135026-8).
Further information is also available in a DVD accompanying that
book, and sold therewith. For DVD, an entry location is a defined
location in the DVD digital content representing a media stream
where the presentation device can begin execution (including
parsing of the digital content representing the media stream, and
presentation of that media stream). For each type of DVD entry
location, there is substantially dictated how each of the virtual
machine registers are initialized, while configuration registers
for the presentation device are substantially untouched. This has
the effect that each entry location is associated with a specific
state of the presentation device, which might be further
parameterized by configuration settings for that presentation
device. After reading this application, those skilled in the art of
presentation of media streams, including for example media streams
recorded on DVD media, would recognize that the set of all possible
states for presentation devices that might be specified by entry
locations is a relatively small subset of the set of all possible
states for presentation devices (specified by entry locations or
not).
[0090] At a step 213, the method 200 determines a substantially
complete description of a desired state of the presentation device,
in response to the information received in the step 211 and the
entry location determined in the step 212. In one embodiment, this
substantially complete description might include either (a) a
substantially complete description of the actual desired state of
the presentation device, including configuration information
substantially matching the actual presentation device, or (b) a
substantially complete description of the entry location, including
any further changes in state involved in bringing the presentation
device from that entry location to its desired state, and any
configuration information involved in bringing the presentation
device to its desired state.
[0091] At a step 214, the method 200 associates the information it
determined with the selected bookmark. In one embodiment, the
method 200 records that information in association with the
selected bookmark, such as for example in a database of such
bookmarks, and maintains that information for later access by an
end-user, operator, or the presentation device.
[0092] At a flow point 21oB, the method 200 has created a bookmark,
and is ready to either do so again, or to do something else.
[0093] Beginning Presentation from a Bookmark
[0094] At a flow point 220A, the method 200 is ready to begin
presentation from a designated bookmark.
[0095] At a step 221, the method 200 retrieves information
associated with the designated bookmark. In one embodiment, that
information is the information described with regard to the steps
in the section beginning at the flow point 210A, "Creating
Bookmarks."
[0096] At a step 222, the method 200 changes the state of the
presentation device in accordance with the information associated
with the designated bookmark. As part of this step, for example,
not intended to be limiting in any way, if the designated bookmark
indicates a selected entry location in the digital content
representing the media stream, the method 200 changes the state of
the presentation device to substantially equal information
associated with that selected entry location. As part of this step,
for example, not intended to be limiting in any way, if the
designated bookmark indicates any specified configuration
information for the presentation device, the method 200 changes the
state of the presentation device to substantially equal that
configuration information associated with the designated
bookmark.
[0097] This step has the effect that the presentation device is
changed to a state from which it can begin presentation from the
designated bookmark, substantially as if the presentation device
has reached that designated bookmark in the ordinary course of
parsing the digital content associated with the media stream and
presenting that media stream.
[0098] At a step 223, the method 200 causes the presentation device
to be started with the state set in the previous step, with the
effect described in the previous state, that the presentation
device can begin presentation from the designated bookmark.
[0099] At a flow point 22oB, the method 200 has begun presentation
from a designated bookmark, and is ready to either do so again, or
to do something else.
[0100] Creating Watchpoints
[0101] At a flow point 230A, the method is ready to create a
watchpoint.
[0102] At a step 231, similar to the step 211, the method 200
receives information (such as from an end-user or an operator)
specifying the nature of the watchpoint, including a set of (a)
triggering information, including a designated state information
for the presentation device with which method can compare with the
actual state information of the presentation device, and (b)
consequent actions, including a designated set of actions for the
method 200 to take in response to when the watchpoint is
triggered.
[0103] In one embodiment, the information specifying the triggering
information for the watchpoint includes a set of register values
specifying a class of states in which the presentation device might
be found. This class of states includes both "presentation state,"
indicating a state of the presentation of the media stream to an
end-user, and "virtual machine state," indicating a state of the
virtual machine model of parsing the digital content representing
the media stream. These states are herein called a "class of
states," as there might be more than one state for the presentation
device for which the method 200 will consider that the state of the
presentation device matches the triggering information for the
watchpoint.
[0104] After reading this application, those skilled in the art
would recognize that bookmarks are capable of being treated as very
general labels or references to presentation locations or
presentation state. Bookmarks might be the target of a transfer of
control or change in presentation state, might be stored
independently of the media stream they reference, and might be
subject to variable interpretation in response to known parameters.
For example, a bookmark might point to "the opening scene of
Shrek," or a bookmark might point to "the opening scene of the
current movie," where "the current movie" is a parameter that might
vary in response to what movie is actually being presented at the
time.
[0105] After reading this application, those skilled in the art
would recognize that watchpoints are capable of being treated as
having very general conditional watchpoint triggers and very
general conditional watchpoint actions. As noted above, watchpoints
have substantial if-then functionality, possibly having conditional
watchpoint triggers, conditional watchpoint actions, or both. For a
first example, not intended to be limiting in any way, a watchpoint
might include a watchpoint trigger and a watchpoint action of the
class (user input=X)(go to bookmark Y). For a second example, not
intended to be limiting in any way, a watchpoint might include
watchpoint trigger and a watchpoint action of the class
(presentation state within class X)(do arbitrary action Y). For a
third example, not intended to be limiting in any way, a watchpoint
might include watchpoint trigger and a watchpoint action of the
class (presentation state within class X1) & (user input=X2)(go
to bookmark Y1, and also do arbitrary action Y2).
[0106] After reading this application, those skilled in the art
would also recognize that bookmarks and watchpoints are very
generally capable of being created, edited, or removed dynamically.
All such concepts are within the scope and spirit of the invention,
and would be workable using the present disclosure without undue
experimentation or further invention.
[0107] After reading this application, those skilled in the art
would recognize that another distinction can be made between
blocking techniques (for example, waiting at each change of
presentation state or user inputs to review the new class of
presentation state or user inputs, with the effect of determining
if a watchpoint has been triggered) and polling techniques (for
example, periodically, or in response to an interrupt, reviewing
the presentation state or user inputs to review the new class of
presentation state or user inputs, with the effect of determining
if a watchpoint has been triggered). All such concepts are within
the scope and spirit of the invention, and would be workable using
the present disclosure without undue experimentation or further
invention.
[0108] In one embodiment, at least some of the triggering
information includes either a class of virtual machine states (such
as for example, a set of values that must be satisfied by the
virtual machine) or a class of presentation states (such as for
example, a set of values that must be satisfied by the virtual
machine). For one example, not intended to be limiting in any way,
the triggering information might specify one or more of the
following possible triggers: [0109] Presentation information, such
as (a) transliterations or transcriptions of sound forming a part
of the presentation or media stream, (b) video elements formatting
a part of the presentation or media stream, or (c) metadata
included in data streams associated with the presentation or media
stream. For example, not intended to be limiting in any way, a
scene including people shouting the word "shark!" or a scene
including a picture of a shark, or a set of narrative metadata
indicating the species of sharks shown in the presentation or media
stream, could trigger a watchpoint, either each alone or in some
combination or conjunction. [0110] Text information, such as (a) a
title number of the portion of the media stream being presented
(including the possibility of starting or ending a selected title
or title number), (b) text information appearing in closed caption
metadata or subtitle metadata. For one example, not intended to be
limiting in any way, text information might include a subtitle
using the word "shark," with the effect that sources of text
information could trigger a watchpoint, either each alone or in
some combination or conjunction. [0111] Timing information, such as
(a) when a selected amount of time has elapsed from the beginning
of presentation, or from the most recent bookmark, or (b) when a
selected number of frames have elapsed from the beginning of
presentation, or from the most recent bookmark, or (c) some
combination or conjunction thereof. [0112] User-entry information,
such as (a) when an end-user selects a designated button or key on
a console, or (b) if the end-user is detected to be absent or
present near the presentation device, or (c) some combination or
conjunction thereof.
[0113] At a flow point 23oB, the method has created a watchpoint,
and is ready to either do so again, or to do something else.
[0114] Triggering Behavior at a Watchpoint
[0115] At a flow point 240A, the method 200 is ready to trigger
selected behavior at a designated watchpoint.
[0116] At a step 241, performed during presentation of the media
stream, the method 200 determines if any of the triggering
information, either alone or in combination, triggers the
watchpoint. In one embodiment, the watchpoint might include Boolean
or other logical aggregates of triggering information. For a first
example, not intended to be limiting in any way, a watchpoint might
be triggered by having the word "shark!" appear in both the text
information and in the presentation information (such as shouted by
an actor). For a second example, not intended to be limiting in any
way, a watchpoint might be triggered by having at least two actors
from a selected set (such as for example the set {Marylin Monroe,
Kim Novak, Geena Davis}) appear on screen concurrently.
[0117] At a step 242, the method 200 marks the watchpoint as being
triggered, and retrieves information relating to consequent
actions, including (as described above) a designated set of actions
for the method 200 to take in response to when the watchpoint is
triggered.
[0118] In one embodiment, at least some of the consequent actions
might include altering some of the virtual machine states or the
presentation states (such as for example altering the order or
locus of presentation), or might include actions relating to the
home theatre system itself (such as for example altering the house
lights, changing the volume, or shutting the system down).
[0119] In one embodiment, the consequent actions of the watchpoint
might themselves be conditional on a class of presentation states
or virtual machine states of the presentation device 120, with the
effect that the watchpoint both (a) conditionally triggers, and (b)
conditionally selects consequent actions, in response to (possibly
different) aspects of the presentation states or virtual machine
states of the presentation device 120.
[0120] For some examples, not intended to be limiting in any way,
the consequent actions of the watchpoint might be conditional on
one or more of the following sets of information: [0121] The
watchpoint actions might be conditional on state information about
the presentation of the media stream, such as for example how far
into the media stream the presentation has gotten so far, or (for a
possibly looping media stream) for how long the presentation has
gone on so far, or on which type of presentation device 120 or
presentation devices 120 the media stream is being presented on, or
how many thereof. [0122] The watchpoint actions might be
conditional on information input from the user, such as for example
a most recent input from the user, an expressed or implicit
preference described by the user, a nature of a recent keyword
search, metadata search, or video search requested by the user. In
some embodiments, the consequent actions of the watchpoint might
include blocking for user input, and be conditional on the absence
or presence thereof, and if present, on the nature of that user
input, such as for example a choice made by the user, either
explicitly, implicitly, or by default. [0123] The watchpoint
triggers might include a code for a class of triggeres, or the
watchpoint actions might include a code for a class of actions,
where either such class is responsive to a parameter. For a first
example, a watchpoint action might be of the class (go to bookmark
B[n]), where [n] is a value responsive to a user input, or a value
computed in response to a set of virtual registers. For a second
example, a watchpoint trigger might be of the class (now presenting
the beginning of this movie), where the value of "this movie" is
responsive to the specific media stream being presented at that
time. Some exemplary watchpoint trigger classes might include: "now
presenting the credits for this movie," or "now presenting the end
of this movie."
[0124] In one embodiment, the consequent actions of the watchpoint,
in combination or conjunction with features of bookmarks, can be
combined to enable the following features, among others. After
reading this application, those skilled in the art would recognize
that further concepts and extensions consistent with these features
would be workable, that such further concepts and extensions are
within the scope and spirit of the invention, and that such further
concepts and extensions would not require undue experimentation or
further invention. [0125] 1. A bookmark can be combined with a
watchpoint, with the consequent action of the watchpoint set to
return to the locus of presentation before the bookmark was
invoked, with the effect that the bookmark-watchpoint section of
the media stream can be selected out as an independent element
(herein sometimes referred to as a "film clip") for presentation by
the presentation device. This feature could be used even if the
bookmark and the watchpoint were not located within the same media
stream, or even within the same digital content representing a
media stream. [0126] For a first set of examples, not intended to
be limiting in any way: (a) After a media stream has already been
created and distributed to the public, that first media stream is
capable of having a user, or other editor or secondary author,
include a pointer to a film clip in a second media stream, with the
effect that the media stream can include presentation of the film
clip as a subroutine within its own presentation, without involving
including a copy of that film clip in the first media stream. (b)
After a media stream has already been created and distributed to
the public, that first media stream is capable of having a user, or
other editor or secondary author, include a set of pointers to more
than one such film clip, with the effect that the first media
stream provides an encyclopedia of such film clips, again without
involving including copies of those film clips in the first media
stream. (c) After a media stream has already been created and
distributed to the public, that first media stream is capable of
having a user, or other editor or secondary author, include a set
of commentary on a set of film clips, each element of commentary
being associated with that actual film clip, against without
involving including copies of those film clips in the first media
stream. [0127] For a second set of examples, not intended to be
limiting in any way: (a) An end-user interface might provide for
saving selected scenes from movies and requesting playback of those
scenes, either in response to user command, pointers to those
scenes, or metadata describing those scenes. (b) An end-user
interface might provide for pausing, restarting, or repeating
presentation of all or part of a set of media streams, even for
digital content or physical media for which such functions were not
originally supported. (c) An end-user interface might provide for
direct access to feature presentations within recorded digital
media, without any substantial requirement for navigating via
pre-recorded menus or pre-recorded advertising, announcements, or
warnings. (d) An end-user interface might provide for direct access
to supplements to such feature presentations, or trailers
associated with such feature presentations, within recorded digital
media, without any substantial requirement for navigating via
pre-recorded menus or pre-recorded advertising, announcements, or
warnings. (e) An end-user interface might provide for substantially
seamless or smooth presentation of media streams represented by
digital content recorded on multiple volumes (or other multiple
elements) of digital media, such as for example movies recorded on
more than one DVD, without any substantial requirement for the user
to intervene at a switching point between those multiple volumes.
[0128] 2. A bookmark can be combined with a watchpoint, with
consequent action of the watchpoint set to return to bookmark, with
the effect that the bookmark-watchpoint section of the media stream
can be selected out as an independent film clip to be repeated,
either (a) for a selected duration, (b) for a selected number of
repeats, (c) until some user action is taken, or (d) some other
conditional ending condition. [0129] For a first set of examples,
not intended to be limiting in any way: (a) A first media stream
intended to simulate an arcade game can include a pointer to a
repeating film clip of that arcade game in "attract mode." (b) An
arcade game could be made interactive, with end-user actions or
commands being incorporated into conditional triggers for
watchpoints, with the effect that the end-user could be presented
with a substantially continuous media stream, with that
substantially continuous media stream being in fact dynamically
generated in response to end-user actions or commands. (c) A media
stream of any kind, such as for example an arcade game or a
computer game, an interactive movie, or other media stream, could
include a media stream by which a selected process determines
presentation of such selected film clips. The selected process
could be responsive to (i) a pseudorandom or random effect, (ii)
demographic or other metadata about the end-user, (iii) known
preferences of the end-user, whether stated explicitly or inferred
from past end-user choices, or (iv) collaborative filtering or
similar known techniques. This could have the effect of providing
the capability of a film clip "screen saver" or a variant of the
MTV channel. (d) A media stream of any kind, such as for example an
arcade game or a computer game or, an interactive movie, or other
media stream, could include a media stream using individual film
clips, either from pre-existing DVD media or newly-created digital
content. For example, a computer game might be interactive, or
might respond to external information, such as for example
television news feeds. [0130] For a second set of examples, not
intended to be limiting in any way: (a) A first media stream
intended to simulate a movie can include a pointer to a repeating
film clip of a trailer or a sequence of key scenes from that movie,
again without involving including a copy of that film clip in the
first media stream. (b) A media stream associated with a set of
movies can contain a pointer for at least some of those movies to a
repeating film clip for presentation with a user interface for
selecting one or more of those movies for presentation, again
without involving including a copy of that film clip in the first
media stream. [0131] For a third set of examples, not intended to
be limiting in any way: (a) A first media stream intended to
represent a demonstration or training film can include a pointer to
a repeating film clip of an element to be demonstrated or trained.
(b) One specific example of this includes a first media stream
intended to represent a demonstration of setting up a home movie
theatre as described in embodiments described herein and in the
incorporated disclosures. (c) A demonstration or training film
could be interactive, with user commands being incorporated into
conditional triggers for the watchpoints, with the effect that the
end-user could be presented with a set of choices, either to
demonstrate or simulate a "real life" circumstance, or to present a
video formatted interactive quiz. [0132] 3. A watchpoint could be
combined with performing operations external to presentation in
response to the media stream, such as for example turning up room
lights at the start of movie credits, diminishing sound volume
during commercial breaks, or pausing presentation in response to an
incoming telephone call. [0133] Generally, a bookmark or a
watchpoint could be combined with generalized detection of state
for any manner of device whose state is available to the
presentation controller 130, and could be combined with generalized
alteration or editing of state for any manner of device whose state
can be changed (or requested to be changed, such as by request to a
server device controlling that device) by the presentation
controller 130. [0134] For a first set of examples, not intended to
be limiting in any way: Devices whose state could trigger a
watchpoint might include telephone calls (beginning, ending,
lasting beyond a selected time, or having more than a selected
volume), internet connections (beginning or ending, such as for
example instant messaging, email, or file transfer), internet state
(such as for example changes to selected monitored web sites or RSS
feeds), home appliance detectors, such as for example doorbells,
motion detectors, intrusion alarms, heat sensors, door or window
sensors, and power usage detectors), vehicle status detectors for
presentation devices 120 installed on vehicles (such as airplanes,
automobiles, buses, ships or trucks) including the possibility of
controllers for those vehicles, GPS detectors for location or
velocity of those vehicles, and the like. In the case of vehicles,
devices whose state could trigger a watchpoint might include
sensors relating to the vehicle, such as for example incoming audio
or video sensors, or incoming radio signals on selected frequencies
(such as for example an aircraft control tower or an emergency
signaling frequency). [0135] For a second set of examples, not
intended to be limiting in any way: Devices whose state could be
altered or edited by the presentation controller 130 might include
telephone calls (such as for example answering or initiating an
automated telephone call in response to a selected change in state,
such as for example automatically calling a parent if an X-rated
movie is selected for presentation, or if a movie is selected for
presentation after 11:30 pm), internet connections (such as for
example sending an FTP log of all movies selected for presentation,
and how far into the movie the presentation proceeded, possibly
after requesting a credit card number from the end-user),
presentation device controls (such as for example controlling the
volume of the presentation device 120, or even blanking the screen
or turning off the presentation device 120 in response to a
triggering event), home appliance controls (such as for example
turning up the house lights and turning on a radio station at low
volume, in response to the end of a movie), vehicle controls (such
as for example presenting an airline safety video to passengers in
response to an airplane reaching a selected altitude, or switching
DVD players from region 1 to region 2 in response to a GPS
detector, or switching presentation options from the English
language to the French language in response to a selected location
within the English Channel.
[0136] At a step 243, the method 200 performs the consequent
actions, including (as described above) a designated set of actions
for the method 200 to take in response to when the watchpoint is
triggered. As described above, the consequent actions might include
transfer of a locus of presentation to a selected bookmark.
[0137] At a flow point 24oB, the method 200 has triggered selected
behavior at a designated watchpoint, and is ready to either do so
again, or to do something else.
TECHNICAL APPENDIX
[0138] A Technical Appendix is submitted with this application and
hereby made a part of this application. The Technical Appendix, and
all references cited therein, are hereby incorporated by reference
as if fully set forth herein.
[0139] At least the following documents are part of the technical
appendix: [0140] "Automatic Masking" (Revision 5, 2003 Aug. 7).
[0141] "DVD Bookmarks" (Revision 4, 2003 May 11).
Alternative Embodiments
[0142] Although preferred embodiments are disclosed herein, many
variations are possible which remain within the concept, scope, and
spirit of the invention. These variations would become clear to
those skilled in the art after perusal of this application. [0143]
The invention is not restricted to movies, but is also applicable
to other media streams, such as for example animation or sound, as
well as to still media, such as for example pictures or
illustrations, and to databases and other collections of
information.
[0144] Those skilled in the art will recognize, after perusal of
this application, that these alternative embodiments are
illustrative and in no way limiting.
* * * * *