NAME(S)
<MovieObject> init,
<MovieObject> getnumstreams,
<MovieObject> getstreamtype,
<MovieObject> getstream,
<MovieObject> getclipstart,
<MovieObject> getclipend,
<MovieObject> allocflag,
<MovieObject> addstream,
<MovieObject> astext,
<MovieObject> getclip,
<MovieObject> find,
<MovieObject> snap,
<MovieObject> getstart,
<MovieObject> getend,
<MovieObject> clear,
<MovieObject> shift,
<MovieObject> foreach,
<MovieObject> addclip,
<MovieObject> mergestream,
<MovieObject> addhook,
<MovieObject> gethooks,
<MovieObject> clearhooks,
<MovieObject> removehook,
SYNOPSIS
<MovieObject> init ?playList?
<MovieObject> getnumstreams
<MovieObject> getstreamtype <idx>
<MovieObject> getstream <idx>
<MovieObject> getclipstart <trk> <idx>
<MovieObject> getclipend <trk> <idx>
<MovieObject> allocflag
<MovieObject> addstream <idx> <strmTxt>
<MovieObject> astext ?trks?
<MovieObject> getclip <trk> <indx>
<MovieObject> find <trk> <time>
<MovieObject> snap <trk> <time> <dist>
<MovieObject> getstart ?trks?
<MovieObject> getend ?trks?
<MovieObject> clear <trks> <start> <end>
<MovieObject> shift <trks> <start> <delta>
<MovieObject> foreach <trks> <start> <end> <streamVar>
<clipVar> <script>
<MovieObject> addclip <trk> <clip> <args>
<MovieObject> mergestream <trks> <src>
<MovieObject> addhook <hookN> <script>
<MovieObject> gethooks <hookN>
<MovieObject> clearhooks ?hookList?
<MovieObject> removehook <hookN> <script>
DESCRIPTION
Stores a CM movie as an otcl object. Supports edit opera-
tions. Movie is represented as a collection of Stream
objects. These can be passed directly to display objects,
such as the video & audio widgets.
<MovieObject> init ?playList?
Movie is init'ed to be equivalent to playList
<MovieObject> getnumstreams
Returns the number of streams in the movie.
<MovieObject> getstreamtype <idx>
Returns the type of the idx'th stream of the movie.
<MovieObject> getstream <idx>
Returns the stream object for the idx'th stream of the
movie.
<MovieObject> getclipstart <trk> <idx>
Returns the logical start time of the idx'th clip in stream
$trk.
<MovieObject> getclipend <trk> <idx>
Returns the logical end time of the idx'th clip in stream
$trk.
<MovieObject> allocflag
Returns the flag number of an unused change flag. This
flagNumber can then be used in calls to the clipflag method.
These flags are automatically set whenever an editing method
changes a clip.
<MovieObject> addstream <idx> <strmTxt>
Inserts a stream at position 'idx' in the movie stream list.
$idx can equal "end" and will then cause an append. The
stream text should follow the same format as a stream
description in a playList. A minimum strmTxt would be just
the stream type, i.e. video or audio.
<MovieObject> astext ?trks?
Returns a playList description of the movie. If a list of
tracks is given, then only those tracks are included in the
output.
<MovieObject> getclip <trk> <indx>
Returns a fully resolved clip description (a text list) for
the indexed clip.
<MovieObject> find <trk> <time>
Returns the index of the clip that contains the given logi-
cal time in the given stream. If no clip contains the time,
then the first following lcip is returned. The return is a
tcl list of {clipIdx flag} where flag is true if the time
falls within a clip.
<MovieObject> snap <trk> <time> <dist>
If there is a clip boundry within $dist of $time in stream
number $stream, then the time of the closest clip boundry is
returned. Otherwise $time is returned unchanged. This is
usefull for implementing "snapping" functions in GUIs.
<MovieObject> getstart ?trks?
Returns the start time of the given track or the minimum
starting time if multipule stream indexes are given ($trks
can be a list of indexes or "all"). If no clips are defined
in any of the given streams, then zero is returned.
<MovieObject> getend ?trks?
Returns the end time of the given track or the maximum
starting time if multipule stream indexes are given ($trks
can be a list of indexes or "all"). If no clips are defined
in any of the given streams, then zero is returned.
<MovieObject> clear <trks> <start> <end>
Deletes all information in the given time range for the
listed stream or streams ($trk can be a stream index, a list
of indexes or "all"). If clips are partially in the time
range, they are cropped.
<MovieObject> shift <trks> <start> <delta>
Moves all clips on or after $start time in the given
track(s) by $delta time units (e.g. adds delta to the logi-
cal start and end times). If delta is negative, clips in
the region behind $start are deleted. Clips which span
$start are split in two. $start may equal "start".
<MovieObject> foreach <trks> <start> <end> <streamVar>
Executes $script for each clip in the given time range on
the specified track(s). Within script $streamVar is set to
the name of the stream object currently executing. $clipVar
is set to the clip index of the current clip.
<MovieObject> addclip <trk> <clip> <args>
returns the {trackNum clipNum} of new clips, as a list.
<MovieObject> mergestream <trks> <src>
Maps equivalent typed traclks for src to self add addclip's
all the clips. Only $trks are effected. Unmatched tracks
are discarded.
<MovieObject> addhook <hookN> <script>
<MovieObject> gethooks <hookN>
Returns the list of all scripts which have been added to the
named hook. These scripts are all executed when the hook
event occures.
<MovieObject> clearhooks ?hookList?
Removes all bound scripts for the named hooks (or "all").
<MovieObject> removehook <hookN> <script>
Removes one script matching $script from the list of scripts
which execute when the even $hookN occures.
AUTHOR
Eric Baldeschwieler, eric14@cs.berkeley.edu