----------------------------------------------------------------------
		MuViNo -- MPEG-7 Video Annotation Tool
			       USE CASE
----------------------------------------------------------------------

Author: Mario Taschwer
Date  : 2004-03-30

1. Load Video
-------------

Open a video using the 'File' menu. A basic MPEG-7 document structure
is automatically created, containing the following information
extracted from the video file:

- media (file) URI
- media time duration


2. Decompose Video into Temporal Segments
-----------------------------------------

In order to divide the video using TemporalDecomposition descriptors,
the segment descriptor (Video or VideoSegment) to be decomposed needs
to be selected in the 'XML tree view' window. The selected segment
will be the basis of the Segment time line below the player
window. Using the video navigation buttons, the frame at which the
decomposition should occur can be displayed in the player window.

When the Split button near the Segment time line is pressed, the
subsegment of the current video segment containing the current frame
will be decomposed into 2 segments (each being a child of the current
segment). If the current segment has not had any segment children
before, 2 segment children will be created. Thus, the effect of
pressing the Decompose button is to add one or two VideoSegment
children to the currently selected video segment. The created
VideoSegment descriptors are automatically filled with appropriate
MediaTime descriptors.

The direct subsegments of the current video segment are represented in
the Segment time line by top markers. When moving the mouse over a
marker, a tool tip showing the corresponding media time appears. When
moving the mouse over the time line intervall between two markers, a
tool tip shows the title and duration of the corresponding video
segment.

By double-clicking on a time line intervall in the Segment time line,
the corresponding VideoSegment will become the current one, and both
the 'XML tree view' and Segment time line will be updated
accordingly. To navigate to the parent of the current segment, the
Up button above the Segment time line can be used.

Two consecutive subsegments of the current segment can be merged by
selecting the separating marker (single-click) and pressing the Delete
button above the Segment time line (or hitting the Del key). It is
also possible to select several segment markers at once by holding the
Shift key while clicking on these markers. The current VideoSegment
can be removed (if it is not the top-level Video descriptor) by
pressing the 'Delete segment' button above the Segment time line. This
will move all subsegments to the parent segment, and the parent
segment will become the current one.


3. Add Annotations
------------------

To allow for easy annotation, the 'descriptor tool box' window
contains a context-dependent list of plug-in names (or icons) allowing
one or more XML elements related to the current element to be edited
conveniently. Plug-ins may open a separate GUI window, or just insert
the relevant XML elements and let the user edit their contents
afterwards.

In the context of a VideoSegment or Video descriptor, a plug-in
'Annotate' opens a separate GUI window containing input fields for all
of the following MPEG-7 descriptors (relative to the VideoSegment
descriptor):

- Title (CreationInformation -> Creation -> Title)

- TitleImage (CreationInformation -> Creation -> TitleMedia ->
  TitleImage -> MediaTimePoint): can be updated with the video frame
  currently shown in the player window.

- Abstract (CreationInformation -> Creation -> Abstract ->
  FreeTextAnnotation)

- Abstract Keyword (CreationInformation -> Creation -> Abstract ->
  KeywordAnnotation -> Keyword)

- FreeTextAnnotation (TextAnnotation -> FreeTextAnnotation)

- Keyword (TextAnnotation -> KeywordAnnotation -> Keyword)

- SemanticPlace (Semantic -> SemanticPlaceType -> Place -> Name)

- SemanticTime (Semantic -> SemanticTimeType -> Time -> TimePoint)

In the context of a Video descriptor, there is also a plug-in 'Video
Creation Info' allowing to edit the following descriptors:

- Author (CreationInformation -> Creation -> Creator -> {Role, Agent})

- Location (CreationInformation -> Creation -> CreationCoordinates 
  -> Location -> Name)

- Date (CreationInformation -> Creation -> CreationCoordinates 
  -> Date -> TimePoint)

- Copyright (CreationInformation -> Creation -> CopyrightString)


4. Add/Edit Additional Descriptors
----------------------------------

An additional MPEG-7 descriptor can be added as a child of the current
XML element by double-clicking on the appropriate entry in the
'available descriptors' window. If sequence order is important, the
new descriptor can also be inserted into the 'XML tree view' by
drag-and-drop. Within the 'XML tree view', elements can be moved by
drag-and-drop, or deleted using the Del key.

Editing operations within the 'XML tree view' complete successfully
only if the validity of the MPEG-7 document is maintained.

Text values of descriptors can be edited within the 'current element
value' window. Upon entering text values, the syntax should be checked
to avoid invalid MPEG-7 documents.

For certain descriptors, the 'Get from Video' button next to the
'current element value' window allows to extract the element value
from the current video context. This is particulary useful for the
TitleMedia descriptor.

5. Use the Value Cache
----------------------

To support efficiency and consistency, previously encountered
(manually entered or parsed) values of the current element type
(i.e. the element type of the currently selected XML element in the
'XML tree view') appear in the 'cached values' window. By
drag-and-drop or copy-paste, the cached value can be copied to the
'current element value' window or to the current plug-in.


6. Save MPEG-7 Output
---------------------

The representation of the MPEG-7 document in the 'XML tree view'
window can be exported to a file in XML format using the appropriate
entry of the File menu.


7. Load MPEG-7 File
-------------------

Another entry of the File menu allows for loading an MPEG-7 file in
XML format. If the MediaURI descriptor of the first described video
refers to a local file, this video file is loaded, too. If a video
has already been loaded, the existing XML tree will be overwritten by
the MPEG-7 file to be loaded (not without confirmation). In this case,
a warning will be issued, if the media time information contained in
the MPEG-7 description does not match the loaded video file. The same
check is performed when loading a video file after loading an MPEG-7
file.
