Commit bdbdcafd authored by Alexandru Băluț's avatar Alexandru Băluț

docs: Cleanup design section titles and structure

parent cfe163d6
Pipeline #30375 passed with stages
in 74 minutes and 45 seconds
# Brandon's Design
# 2007 Advanced UI
Also known as Brandon's Design.
## Basic Design
......
# Design Overview
# Implementation
## Design Overview
![Inheritance Diagram](images/Advanced_inheritance.png)
......
# 2008 7 28 interview notes
# 2008.7.28 interview notes
I'll call my friend M. M. Is a 3D animator working for a gaming company,
so his editing needs are somewhat different than the average
......
# Goal
# Browsers
`Browser`s are meant to assist in three things:
......
# 2008 Architectural Redesign/Design Thoughts
# Design Thoughts
This is a listing, not entirely sorted, of thoughts, remarks, things to
do, regarding PiTiVi's design, uses, etc...
......
# Goal
# Formatter
A **Formatter** is responsible for :
A **Formatter** is responsible for:
- Storing a [Project](design/2008_design/2008_Architectural_Redesign/Project.md) and all of
its contents for later usage, **and/or**
......
# 2008 Architectural Redesign/High-level Design
# High-level Design
**High Level overview**
......
# Overall
# ObjectFactory
> **ObjectFactory are the descriptions of objects producing and/or
> consuming data streams.**
**ObjectFactory are the descriptions of objects producing and/or
consuming data streams.**
- They contain a list of the Stream(s) they can produce and/or
consume.
> This implies **ALL** The potential streams the factory can
> provide/consume.
This implies **ALL** The potential streams the factory can
provide/consume.
> Ex: A **FileSourceFactory** of a raw DV File will list the following
> streams:
>
> - `video/x-dv,systemstream=True`, The container stream,
> - `video/x-dv,systemstream=False`, The I-Frame only DV video stream,
> - `video/x-raw-yuv`, The decoded raw video stream
> - `audio/x-raw-int`, The audio stream
Ex: A **FileSourceFactory** of a raw DV File will list the following
streams:
- `video/x-dv,systemstream=True`, The container stream,
- `video/x-dv,systemstream=False`, The I-Frame only DV video stream,
- `video/x-raw-yuv`, The decoded raw video stream
- `audio/x-raw-int`, The audio stream
- They produce GStreamer elements for all, or a selected number of,
streams.
> Some factories will be able to produce a different GStreamer element
> every time, some will only be able to produce one at a time (Ex:
> Video4Linux source, or audio sink with retarded backend that can have
> multiple sockets opened).
Some factories will be able to produce a different GStreamer element
every time, some will only be able to produce one at a time (Ex:
Video4Linux source, or audio sink with retarded backend that can have
multiple sockets opened).
## Properties
......
# 2008 Architectural Redesign/Pipeline
# Pipeline
![Pipeline functional
view](Pipeline-functional.png "Pipeline functional view")
# Functional Description
A **Pipeline** is where all the media processing takes place in PiTiVi.
In order to hide the complexity of the underlying GStreamer pipeline, we
......
# Description
# Project
A **Project** is the object containing everything specific to an
*editing project*.
......
# Description
# Streams
**Stream** objects help to solve two problems:
......
# Overall
# Timeline
The **Timeline** object:
......@@ -12,8 +12,6 @@ taking place on the overall Timeline, or on the individual Tracks.
> This allows both creating simple and complex UI while offering the
> same interfaces
.
**All of the following editing actions must be done on the `Timeline`,
`TimelineObject`(s) or `TimelineSelection`s** and not on the `Track`(s)
or `TrackObject(s)`:
......
## Introduction
## Code Experiment
![wxPython prototype seeker with warning about inaccurate codec and some
(green)
......
## Introduction
## 2008 Jog and Shuttle controls
This is just a proposal for bringing frame seeking to the user interface
in advanced mode. If you want to follow the development progress read
......
## Introduction
## 2008 Plugin Interface
### About
......@@ -50,20 +50,20 @@ exception if its called before then
The current API uses epydoc for its documentation and is structured as
follows:
- pitivi
- PluginInterface
- gui
- show\_gui(self, \*args, \*\*kwargs) shows or hides the
- `pitivi`
- `PluginInterface`
- `gui`
- `show_gui(self, *args, **kwargs)` shows or hides the
main application window depending on the value of
'visible'
- add\_menu\_item(self, \*args, \*\*kwargs) Adds a menu
- `add_menu_item(self, *args, **kwargs)` Adds a menu
item to the appropriate main window menu
- remove\_menu\_item(self, name) removes the given menu
- `remove_menu_item(self, name)` removes the given menu
item from the user interface
- remove\_ui(self) removes all changes this instance of
- `remove_ui(self)` removes all changes this instance of
the plugininterface has made to the user interface
- Project
- add\_source
- `Project`
- `add_source`
## Settings
......
# 2012 Layer Controls Redesign
## Key ideas
- don't eat to much horizontal space
- show type of layer
- show/edit layer name
- provide fold action
## Solutions from other software
Sony Vegas Pro 11
......@@ -25,10 +34,3 @@ Avid DS
![](images/Glade-1.png "Glade-1.png")
![](images/Layers.png "Layers.png")
## Key ideas
- don't eat to much horizontal space
- show type of layer
- show/edit layer name
- provide fold action
# Multi-Layer is not Multi-Track
# Multi-Layer Editing
## Multi-Layer is not Multi-Track
PiTiVi distinguishes between multi-layer and multi-track editing. In
PiTiVi at 'track' is a separate channel of output. A layer is a separate
......@@ -19,7 +21,7 @@ other media types. Subtitle information could be kept on a subtitle
track, or midi data used to control synthesizers and/or lighting systems
could be kept on a score track and edited alongside the video.
# Multi-Layer Editing
## Multi-Layer Editing
Multi-layer editing is how the notion of priority is handled in the UI.
Numeric priority is mapped to the vertical position of an object in the
......@@ -32,7 +34,7 @@ together with a superimpose effect.
The user can change the priority of an object by moving it up or down. A
new visual layer will be created if necessary.
# Multi-Track Editing
## Multi-Track Editing
The current implementation supports a limited form of multi-track
editing: there is one audio and one video track per project. Future
......@@ -43,7 +45,7 @@ Individual tracks can also be enabled or disabled for preview and
project rendering. Also, Moving sources between tracks is not ordinarily
possible.
## Linking and Brothers Objects
### Linking and Brothers Objects
Linking means that two sources are associated so that whatever is done
to one source is also done to the other. A source can have one linked
......
# Why python ?
# Why Python?
We like Python. It is a simple, fast and elegant programming language.
It allows **faster**, **agile** and **robust** software development.
......
......@@ -57,21 +57,21 @@ index.md
design/XGES_Examples.md
design/Plugins.md
design/2007_design/2007_Advanced_UI_Mockups.md
design/2007_design/2007_Advanced_UI_implementation.md
design/2007_design/2007_Advanced_UI_implementation.md
design/2007_design/2007_Simple_UI_Mockups.md
design/2008_design/2008_7_28_interview_notes.md
design/2008_design/2008_Architectural_Redesign.md
design/2008_design/2008_Architectural_Redesign/Browsers.md
design/2008_design/2008_Architectural_Redesign/Design_Thoughts.md
design/2008_design/2008_Architectural_Redesign/Formatter.md
design/2008_design/2008_Architectural_Redesign/High-level_Design.md
design/2008_design/2008_Architectural_Redesign/ObjectFactory.md
design/2008_design/2008_Architectural_Redesign/Pipeline.md
design/2008_design/2008_Architectural_Redesign/Project.md
design/2008_design/2008_Architectural_Redesign/ObjectFactory.md
design/2008_design/2008_Architectural_Redesign/Streams.md
design/2008_design/2008_Architectural_Redesign/Pipeline.md
design/2008_design/2008_Architectural_Redesign/Timeline.md
design/2008_design/2008_Jog_and_Shuttle_controls_code_experiment.md
design/2008_design/2008_Architectural_Redesign/Formatter.md
design/2008_design/2008_Architectural_Redesign/Browsers.md
design/2008_design/2008_Architectural_Redesign/Design_Thoughts.md
design/2008_design/2008_Jog_and_Shuttle_controls_design.md
design/2008_design/2008_Jog_and_Shuttle_controls_code_experiment.md
design/2008_design/2008_Plugin_Interface_development.md
design/2008_design/2008_UI_Design.md
design/2012_Layer_Controls_Redesign.md
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment