Olive
Public Member Functions | Public Attributes | List of all members
Config Struct Reference

The Config struct. More...

#include <config.h>

Public Member Functions

 Config ()
 Config Constructor. More...
 
void load (QString path)
 Load config from file. More...
 
void save (QString path)
 Save config to file. More...
 

Public Attributes

bool show_track_lines
 Show track lines. More...
 
bool scroll_zooms
 The scroll wheel zooms rather than scrolls. More...
 
bool edit_tool_selects_links
 Edit tool selects links. More...
 
bool edit_tool_also_seeks
 Edit tool also seeks. More...
 
bool select_also_seeks
 Selecting also seeks. More...
 
bool paste_seeks
 Paste also seeks. More...
 
QString img_seq_formats
 Image sequence formats. More...
 
bool rectified_waveforms
 Use rectified waveforms. More...
 
int default_transition_length
 Default transition length. More...
 
int timecode_view
 Timecode display mode. More...
 
bool show_title_safe_area
 Show title/action safe area. More...
 
bool use_custom_title_safe_ratio
 Use custom title/action safe area aspect ratio. More...
 
double custom_title_safe_ratio
 Custom title/action safe area aspect ratio. More...
 
bool enable_drag_files_to_timeline
 Enable dragging files outside Olive directly into the Timeline. More...
 
bool autoscale_by_default
 Auto-scale by default. More...
 
int recording_mode
 Recording mode/channel layout. More...
 
bool enable_seek_to_import
 Enable seek to import. More...
 
bool enable_audio_scrubbing
 Enable audio scrubbing. More...
 
bool drop_on_media_to_replace
 Enable drop on media to replace. More...
 
int autoscroll
 Auto-scroll mode. More...
 
int audio_rate
 Current audio sample rate. More...
 
bool fast_seeking
 Enable fast seeking. More...
 
bool hover_focus
 Enable hover focus. More...
 
int project_view_type
 Project view type. More...
 
bool set_name_with_marker
 Ask for a marker name when setting a marker. More...
 
bool show_project_toolbar
 Show the project toolbar. More...
 
double previous_queue_size
 Previous frame queue size. More...
 
int previous_queue_type
 Previous frame queue type. More...
 
double upcoming_queue_size
 Upcoming frame queue size. More...
 
int upcoming_queue_type
 Upcoming frame queue type. More...
 
bool loop
 Loop. More...
 
bool seek_also_selects
 Seeking also selects. More...
 
QString css_path
 CSS Path. More...
 
int effect_textbox_lines
 Number of lines that an Effect's textbox has. More...
 
bool use_software_fallback
 Use software fallbacks when possible. More...
 
bool center_timeline_timecodes
 Center Timeline timecodes. More...
 
QString preferred_audio_output
 Preferred audio output device. More...
 
QString preferred_audio_input
 Preferred audio input device. More...
 
QString language_file
 Language/translation file. More...
 
int waveform_resolution
 Waveform resolution. More...
 
int thumbnail_resolution
 Thumbnail resolution. More...
 
bool add_default_effects_to_clips
 Add default effects to clips. More...
 

Detailed Description

The Config struct.

This struct handles any configuration that should persist between restarting Olive. It contains several variables as well as functions that load and save all the variables to file.

Constructor & Destructor Documentation

◆ Config()

Config::Config ( )

Config Constructor.

Sets all configuration variables to their defaults.

Member Function Documentation

◆ load()

void Config::load ( QString  path)

Load config from file.

Load configuration parameters from file

Parameters
pathURL to the configuration file to load

◆ save()

void Config::save ( QString  path)

Save config to file.

Save current configuration parameters to file

Parameters
pathURL to save the configuration file to.

Member Data Documentation

◆ add_default_effects_to_clips

bool Config::add_default_effects_to_clips

Add default effects to clips.

TRUE if new clips imported into the Timeline should have a set of default effects (TransformEffect, VolumeEffect, and PanEffect) added to them by default.

◆ audio_rate

int Config::audio_rate

Current audio sample rate.

The sample rate to set the audio output device to. Also used as the value to resample audio to during playback (but not during rendering).

◆ autoscale_by_default

bool Config::autoscale_by_default

Auto-scale by default.

TRUE if clips imported into the timeline should have Clip::autoscale TRUE by default. If a Clip is smaller or larger than the Sequence, auto-scale will automatically resize it to fit to the Sequence boundaries.

◆ autoscroll

int Config::autoscroll

Auto-scroll mode.

The Timeline behavior regarding scrolling to keep the playhead within view while a Sequence is playing.

Set to a member of enum AutoScrollMode.

◆ center_timeline_timecodes

bool Config::center_timeline_timecodes

Center Timeline timecodes.

By default, Olive shows timecodes in the TimelineHeader centered to the corresponding frame point. This may not always be desirable as, for example, this forces the initial 00:00:00;00 timecode's left half to be cut off. Olive supports aligning the timecode to the right of the frame rather than the center to address this.

◆ css_path

QString Config::css_path

CSS Path.

The URL to a CSS file if the user has loaded a custom stylesheet in. EMPTY if the user has not set a stylesheet.

◆ custom_title_safe_ratio

double Config::custom_title_safe_ratio

Custom title/action safe area aspect ratio.

If Config::use_custom_title_safe_ratio is true, this is the aspect ratio to use.

Set to the result of an aspect ratio division (i.e. for 4:3 set to 1.333333 (4.0 / 3.0)

◆ default_transition_length

int Config::default_transition_length

Default transition length.

The default transition length used when making a transition without the transition tool

◆ drop_on_media_to_replace

bool Config::drop_on_media_to_replace

Enable drop on media to replace.

TRUE if dropping a file from outside Olive onto a media item in the Project panel should prompt the user whether the dropped file should replace the media item that the file was dropped on.

◆ edit_tool_also_seeks

bool Config::edit_tool_also_seeks

Edit tool also seeks.

TRUE if using the edit tool should also seek the sequence's playhead

◆ edit_tool_selects_links

bool Config::edit_tool_selects_links

Edit tool selects links.

TRUE if the edit tool should also select links when the user selects a clip.

◆ effect_textbox_lines

int Config::effect_textbox_lines

Number of lines that an Effect's textbox has.

The height of a Effect's textbox field in terms of lines.

Set to a value >= 1

◆ enable_audio_scrubbing

bool Config::enable_audio_scrubbing

Enable audio scrubbing.

TRUE if audio should "scrub" as the user drags the playhead around

◆ enable_drag_files_to_timeline

bool Config::enable_drag_files_to_timeline

Enable dragging files outside Olive directly into the Timeline.

TRUE if the Timeline should respond to files dropped from outside Olive.

◆ enable_seek_to_import

bool Config::enable_seek_to_import

Enable seek to import.

TRUE if the playhead should automatically seek to any newly imported clips

◆ fast_seeking

bool Config::fast_seeking

Enable fast seeking.

Olive supports a seek mode that shows frames faster with the risk of briefly showing a "best-effort" frame that may not be the accurate frame at that point of the Timeline. This does not affect exporting.

Set to TRUE if this mode should be enabled.

◆ hover_focus

bool Config::hover_focus

Enable hover focus.

Default behavior is panels are focused (and therefore respond to certain keyboard shortcuts)when they are clicked on, but Olive also supports panels being considered "focused" if the mouse is hovered over them.

TRUE to enable hover focus mode.

◆ img_seq_formats

QString Config::img_seq_formats

Image sequence formats.

A '|' separated list of file extensions that Olive will perform an image sequence test heuristic on when importing

◆ language_file

QString Config::language_file

Language/translation file.

Sets the translation file to load to display Olive in a different language.

Set to the URL of the language file to load, or EMPTY to use default en-US language.

◆ loop

bool Config::loop

Loop.

If an in/out point are set on the Sequence (Sequence::using_workarea is TRUE), set this to TRUE if Olive should rewind to the in point and start playing again after it reaches the out point repeatedly until the user pauses.

◆ paste_seeks

bool Config::paste_seeks

Paste also seeks.

TRUE if the playhead should seek to the end of clips that are pasted

◆ preferred_audio_input

QString Config::preferred_audio_input

Preferred audio input device.

Sets the audio device Olive should use to input audio from.

Set to the name of the audio device or EMPTY to try using the default.

◆ preferred_audio_output

QString Config::preferred_audio_output

Preferred audio output device.

Sets the audio device Olive should use to output audio to.

Set to the name of the audio device or EMPTY to try using the default.

◆ previous_queue_size

double Config::previous_queue_size

Previous frame queue size.

Olive caches frames in memory to improve playback performance (see enum FrameQueueType documentation for more details). This variable states how many frames to keep in memory prior to the playhead (in most cases, frames that have already been played, but are kept in memory in case the user wants to backtrack at any time).

This value corresponds to Config::previous_queue_type.

◆ previous_queue_type

int Config::previous_queue_type

Previous frame queue type.

The metric of which Config::previous_queue_size is using. For example, if Config::previous_queue_size is 3, this variable states whether that is 3 frames or 3 seconds.

Set to a member of enum FrameQueueType.

◆ project_view_type

int Config::project_view_type

Project view type.

Whether to show media in the Project panel as a tree hierarchy or as a browser of icons.

Set to a member of enum ProjectView.

◆ recording_mode

int Config::recording_mode

Recording mode/channel layout.

When recording audio within Olive, use this mode/channel layout (e.g. mono or stereo).

Set to a member of enum RecordingMode.

◆ rectified_waveforms

bool Config::rectified_waveforms

Use rectified waveforms.

TRUE if Olive should display waveforms as "rectified". Rectified waveforms start at the bottom rather than from the middle.

◆ scroll_zooms

bool Config::scroll_zooms

The scroll wheel zooms rather than scrolls.

TRUE if the scroll wheel should zoom in and out rather than scroll up and down.

◆ seek_also_selects

bool Config::seek_also_selects

Seeking also selects.

Olive supports automatically selecting clips that the playhead is currently touching for a more efficient workflow.

TRUE if this mode should be enabled.

◆ select_also_seeks

bool Config::select_also_seeks

Selecting also seeks.

TRUE if the playhead should automatically seek to the start of any clip that gets selected

◆ set_name_with_marker

bool Config::set_name_with_marker

Ask for a marker name when setting a marker.

TRUE if Olive should ask the user to name a marker when setting one. FALSE if markers should just be created without asking.

◆ show_project_toolbar

bool Config::show_project_toolbar

Show the project toolbar.

Olive has an optional toolbar for the Project panel.

Set to TRUE to show it.

◆ show_title_safe_area

bool Config::show_title_safe_area

Show title/action safe area.

TRUE if the title/action safe area should be shown on the Viewer.

◆ show_track_lines

bool Config::show_track_lines

Show track lines.

TRUE if the Timeline should show lines between tracks.

◆ thumbnail_resolution

int Config::thumbnail_resolution

Thumbnail resolution.

The vertical pixel height to use for generating thumbnails.

◆ timecode_view

int Config::timecode_view

Timecode display mode.

The display mode with which timecode_to_frame() and frame_to_timecode() will use to convert frame numbers to more human-readable values.

Set to a member of enum TimecodeType.

◆ upcoming_queue_size

double Config::upcoming_queue_size

Upcoming frame queue size.

Olive caches frames in memory to improve playback performance (see enum FrameQueueType documentation for more details). This variable states how many upcoming frames are stored in memory. Generally this value will be higher than Config::previous_queue_size since the user will be playing forwards most of the time.

This value corresponds to Config::upcoming_queue_type.

◆ upcoming_queue_type

int Config::upcoming_queue_type

Upcoming frame queue type.

The metric of which Config::upcoming_queue_size is using. For example, if Config::upcoming_queue_size is 3, this variable states whether that is 3 frames or 3 seconds.

Set to a member of enum FrameQueueType.

◆ use_custom_title_safe_ratio

bool Config::use_custom_title_safe_ratio

Use custom title/action safe area aspect ratio.

TRUE if the title/action save area should use a custom aspect ratio

◆ use_software_fallback

bool Config::use_software_fallback

Use software fallbacks when possible.

Olive uses a lot of OpenGL-based hardware acceleration for performance. Some older hardware has difficulty supporting this functionality, so some of it has software-based (not hardware accelerated) fallbacks for these users.

TRUE if Olive should prefer software fallbacks to hardware acceleration when they're available.

◆ waveform_resolution

int Config::waveform_resolution

Waveform resolution.

Sets how detailed the waveforms should be in the Timeline. Higher value = more detail.

Specifically sets how many samples per second should be "cached" for preview. If the waveforms are too blocky, set this higher. If Timeline performance is slow, set this lower.


The documentation for this struct was generated from the following files: