DOC: design index page; language corrected, but a few rewrites.

TODO: Backend, needs just a little more, not much, e.g.:
      Area where low-level  memory, hardware i/o, etc occur => here
      is where real gain in efficiency through modern algorithms can occur,
      thus, achieving another goal of Lumiera: efficient & runs on all kinds
      of hardware!
This commit is contained in:
Benny 2013-01-06 16:47:22 +01:00 committed by Ichthyostega
parent 21d2faff12
commit 8790e2af46

View file

@ -25,31 +25,31 @@ may be used to do any task on video (and audio?), even unrelated to video editin
.Workflow
*****************
The word Workflow is used to name the way tasks can be achieved in an
The word ``workflow'' is used to name the way tasks can be achieved in an
application. Any operation in Lumiera must be possible in the most suitable and
stringent fashion. The Workflow is closely related to how flexible the GUI is
but also the concern of deeper and more technical parts of the application.
stringent fashion. The workflow is closely related to how flexible the GUI is
but is also the concern of deeper and more technical parts of the application.
*****************
Overview
--------
The internal structure of Lumiera is divided in numerous subsystems. This
overview will try to go through the elements from the highest to the lowest
piece of the structure. They can be categorized into three main categories plus
extra components:
The internal structure of Lumiera is divided into numerous subsystems. This
overview will provide a general description of the major areas that make up
Lumiera from the highest down to the lowest level. Lumiera can be considered to
be composed of three main areas with an additional extra components. We discuss
theses areas below.
Graphical User Interface
~~~~~~~~~~~~~~~~~~~~~~~~
User interfaces are basically included as a plugin, consequently it is possible
to interface with Lumiera through scripts. It is also possible to create
specialised GUIs. The interface is the closest component to the user, it is
purely visual. There the user manipulates, organizes, loads, configures all
sorts of data, especially MObjects (media objects) and Assets. These elements
are contained within a structure called the Session. +
User interfaces are basically implemented as a plugin. As a consequence, it is
possible to interface with Lumiera through scripts. It is also possible to create
specialised GUIs. The interface is the closest component to the user. It is
a purely visual interaction with the user. There the user manipulates,
organizes, loads, configures all sorts of data, especially MObjects (media
objects) and Assets. These elements are contained within a structure called the Session. +
-> link:gui/index.html[GUI design documents]
@ -64,8 +64,8 @@ a component known as _the Builder_ assembles the contents of this model and tran
them to form a network of nodes, which can be _performed_ efficiently for rendering.
Often, we refer to this node structure as the ``low-level model''. On rendering or
playback, the Proc-layer is responsible for accessing this node structure to
generate individual _frame render jobs,_ ready to be handed over to the backend
for the actual rendering calculations. +
generate individual _frame render jobs,_ ready to be handed over to the backend, which
performs the actual rendering calculations. +
-> more about the link:model/index.html[Model] +
-> design of the link:engine/index.html[Engine] subsystem
@ -74,34 +74,35 @@ for the actual rendering calculations. +
The Backend
~~~~~~~~~~~
The backend uses the Low-level model and the _render jobs_ generated by Proc.
It actually performs the the rendering operations and makes a heavy use of the
The backend uses the low-level model and the _render jobs_ generated by Proc.
It actually performs the rendering operations and makes heavy use of the
Input/Output System for accessing media content and sending generated data to
the screen or external output. +
the screen or to external output. +
-> link:backend/index.html[Backend design level documents] +
-> link:{ldoc}/technical/backend/index.html[technical documentation] +
Extra components
Extra Components
----------------
The Application
~~~~~~~~~~~~~~~
The application controls the initialization and shutdown procedures as well as
loading external elements like plugins that are widely used. It acts as a framework
to support the operation of the core components. This framework is complemented by
a library of commonly used components, algorithms and data structures. +
loading external elements such as plugins, which are widely used throughout
Lumiera. It acts as the framework which supports core component operations. This
framework is complemented by a library of commonly used components, algorithms and data structures. +
-> link:application/index.html[Application framework]
link:plugins/index.html[Plugins]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Plugins play an important role within Lumiera since the application relies heavily
existing implementations and external libraries. Moreover, the application is envisioned
to be configurable and can be extended in various ways; whenever some extension isn't permanent
or will be used only on demand, it is packaged as separate module into a plug-in. For example,
the GUI of Lumiera is a plugin. +
Plugins play an important role within Lumiera since the application relies
heavily on current FLOSS implementations and external libraries. Moreover, the
application is envisioned to be configurable and can be extended in various
ways; whenever some extension isn't permanent or will be used only on demand, it
is packaged as a separate module into a plug-in. For example, the GUI of Lumiera
is a plugin. +
-> design doruments regarding the link:plugins/index.html[Plugins]