|
TracktionEngine
|
Represents a set of user properties used to control a render operation, using a ValueTree to hold them so that they can be saved and reloaded. More...
#include <tracktion_RenderOptions.h>
Inherits juce::ValueTree::Listener.
Public Types | |
| enum | TargetFileFormat { wav = 0 , aiff , flac , ogg , mp3 , midi , numFormats } |
| enum | AddRenderOptions { addTrack = 0 , replaceTrack = 1 , nextTrack = 2 , thisTrack = 3 , replaceClips = 4 , none = 5 } |
| Enum to set the options for renders. More... | |
| enum class | RenderType { editClip = 0 , clip , track , midi , allExport } |
| Enum to determine the type of UI this RenderOptions represents. More... | |
Public Member Functions | |
| RenderOptions (Engine &) | |
| RenderOptions (const RenderOptions &, juce::UndoManager *) | |
| RenderOptions (Engine &, const juce::ValueTree &, juce::UndoManager *) | |
| ~RenderOptions () override | |
| RenderOptions ()=delete | |
| RenderOptions (const RenderOptions &)=delete | |
| RenderOptions (RenderOptions &&)=delete | |
| RenderOptions | operator= (const RenderOptions &)=delete |
| RenderOptions | operator= (RenderOptions &&)=delete |
| void | loadFromUserSettings () |
| void | saveToUserSettings () |
| void | setToDefault () |
| RenderManager::Job::Ptr | performBackgroundRender (Edit &, SelectionManager *, TimeRange timeRangeToRender) |
| Performs the render operation on a background thread. | |
| HashCode | getHash () const noexcept |
| Returns a hash representing the current set of render options. | |
| Renderer::Parameters | getRenderParameters (Edit &, SelectionManager *, TimeRange markedRegion) |
| Returns a set of renderer parameters which can be used to describe a render operation. | |
| Renderer::Parameters | getRenderParameters (Edit &) |
| Renderer::Parameters | getRenderParameters (EditClip &) |
| Renderer::Parameters | getRenderParameters (MidiClip &) |
| juce::AudioFormat * | getAudioFormat () |
| Returns an AudioFormat to use for the current render properties. | |
| Clip::Ptr | applyRenderToEdit (Edit &, ProjectItem::Ptr, TimeRange time, SelectionManager *) const |
| Adds the given ProjectItem to the Edit using the render properties for positioning info. | |
| bool | getUINeedsRefresh () |
| If you've chnaged a property that will cause the UI configuration to change this will return true which you should rebuild the property set from. | |
| void | setUINeedsRefresh () |
| bool | isEditClipRender () const |
| bool | isClipRender () const |
| bool | isTrackRender () const |
| bool | isMidiRender () const |
| bool | isExportAll () const |
| bool | isRender () const |
| TargetFileFormat | setFormat (TargetFileFormat) |
| void | setFormatType (const juce::String &typeString) |
| juce::String | getFormatTypeName (TargetFileFormat) |
| juce::Array< EditItemID > | getTrackIDs () const |
| void | setTrackIDs (const juce::Array< EditItemID > &) |
| HashCode | getTracksHash () const |
| void | setSampleRate (int) |
| void | setBitDepth (int depth) |
| juce::StringArray | getQualitiesList () const |
| int | getQualityIndex () const |
| void | setQualityIndex (int q) |
| juce::File | getDestFile () const noexcept |
| juce::String | getFileExtension () const |
| juce::String | getCurrentFileExtension () |
| TargetFileFormat | getFormat () const noexcept |
| int | getBitDepth () const |
| ChannelConfiguration | getChannelConfiguration () const |
| void | setChannelConfiguration (const ChannelConfiguration &) |
| double | getSampleRate () const |
| bool | shouldAddMetadata () const |
| bool | shouldAddAcidMetadata () const |
| juce::BigInteger | getTrackIndexes (const Edit &) const |
| bool | getRemoveSilence () const noexcept |
| bool | getMarkedRegion () const noexcept |
| int | getNumTracks () const noexcept |
| void | setSelected (bool onlySelectedTrackAndClips) |
| void | setMarkedRegion (bool onlyMarked) |
| void | setIncludePlugins (bool includePlugins) |
| void | setAddRenderOption (AddRenderOptions options) |
| void | setEndAllowance (TimeDuration time) |
| void | setFilename (juce::String, bool canPromptToOverwriteExisting, std::function< void()> onComplete=nullptr) |
| Sets the destination file. | |
| void | updateHash () |
| juce::StringArray | getFormatTypes () |
| juce::StringArray | getAddRenderOptionText () |
Static Public Member Functions | |
| static std::unique_ptr< RenderOptions > | forGeneralExporter (Edit &) |
| Creates a default RenderOptions object for a general purpose exporter. | |
| static std::unique_ptr< RenderOptions > | forTrackRender (juce::Array< Track * > tracks, AddRenderOptions addOption) |
| static std::unique_ptr< RenderOptions > | forClipRender (juce::Array< Clip * > clips, bool midiNotes) |
| static std::unique_ptr< RenderOptions > | forEditClip (Clip &editClip) |
| static TimeDuration | findEndAllowance (Edit &, juce::Array< EditItemID > *tracks, juce::Array< Clip * > *) |
| static bool | isMarkedRegionBigEnough (TimeRange) |
Public Attributes | |
| Engine & | engine |
| juce::CachedValue< RenderType > | type |
| juce::CachedValue< juce::String > | tracksProperty |
| juce::CachedValue< bool > | createMidiFile |
| juce::CachedValue< TargetFileFormat > | format |
| juce::CachedValue< juce::String > | channelConfigStr |
| juce::CachedValue< double > | sampleRate |
| juce::CachedValue< int > | bitDepth |
| juce::CachedValue< int > | qualityIndex |
| juce::CachedValue< double > | rmsLevelDb |
| juce::CachedValue< double > | peakLevelDb |
| juce::CachedValue< bool > | removeSilence |
| juce::CachedValue< bool > | normalise |
| juce::CachedValue< bool > | dither |
| juce::CachedValue< bool > | adjustBasedOnRMS |
| juce::CachedValue< bool > | markedRegion |
| juce::CachedValue< bool > | selectedTracks |
| juce::CachedValue< bool > | selectedClips |
| juce::CachedValue< bool > | tracksToSeparateFiles |
| juce::CachedValue< bool > | realTime |
| juce::CachedValue< bool > | usePlugins |
| juce::CachedValue< AddRenderOptions > | addRenderOptions |
| juce::CachedValue< bool > | addRenderToLibrary |
| juce::CachedValue< bool > | reverseRender |
| juce::CachedValue< bool > | addMetadata |
| juce::CachedValue< bool > | addAcidMetadata |
| std::function< void(AudioClipBase &)> | offerToAddClipToLibrary |
| std::function< void(const juce::File &)> | offerToAddFileToLibrary |
Represents a set of user properties used to control a render operation, using a ValueTree to hold them so that they can be saved and reloaded.
They can also be converted into a set of Renderer::Properties.
|
strong |
Enum to determine the type of UI this RenderOptions represents.
| Enumerator | |
|---|---|
| editClip | |
| clip | |
| track | |
| midi | |
| allExport | |
| engine::RenderOptions::RenderOptions | ( | Engine & | ) |
| engine::RenderOptions::RenderOptions | ( | const RenderOptions & | , |
| juce::UndoManager * | |||
| ) |
| engine::RenderOptions::RenderOptions | ( | Engine & | , |
| const juce::ValueTree & | , | ||
| juce::UndoManager * | |||
| ) |
|
override |
|
delete |
|
delete |
|
delete |
|
delete |
|
delete |
| void engine::RenderOptions::loadFromUserSettings | ( | ) |
| void engine::RenderOptions::saveToUserSettings | ( | ) |
| void engine::RenderOptions::setToDefault | ( | ) |
| RenderManager::Job::Ptr engine::RenderOptions::performBackgroundRender | ( | Edit & | , |
| SelectionManager * | , | ||
| TimeRange | timeRangeToRender | ||
| ) |
Performs the render operation on a background thread.
|
noexcept |
Returns a hash representing the current set of render options.
| Renderer::Parameters engine::RenderOptions::getRenderParameters | ( | Edit & | , |
| SelectionManager * | , | ||
| TimeRange | markedRegion | ||
| ) |
Returns a set of renderer parameters which can be used to describe a render operation.
| Renderer::Parameters engine::RenderOptions::getRenderParameters | ( | Edit & | ) |
| Renderer::Parameters engine::RenderOptions::getRenderParameters | ( | EditClip & | ) |
| Renderer::Parameters engine::RenderOptions::getRenderParameters | ( | MidiClip & | ) |
| juce::AudioFormat * engine::RenderOptions::getAudioFormat | ( | ) |
Returns an AudioFormat to use for the current render properties.
| Clip::Ptr engine::RenderOptions::applyRenderToEdit | ( | Edit & | , |
| ProjectItem::Ptr | , | ||
| TimeRange | time, | ||
| SelectionManager * | |||
| ) | const |
Adds the given ProjectItem to the Edit using the render properties for positioning info.
|
static |
Creates a default RenderOptions object for a general purpose exporter.
|
static |
|
static |
|
static |
| bool engine::RenderOptions::getUINeedsRefresh | ( | ) |
If you've chnaged a property that will cause the UI configuration to change this will return true which you should rebuild the property set from.
| void engine::RenderOptions::setUINeedsRefresh | ( | ) |
| bool engine::RenderOptions::isEditClipRender | ( | ) | const |
| bool engine::RenderOptions::isClipRender | ( | ) | const |
| bool engine::RenderOptions::isTrackRender | ( | ) | const |
| bool engine::RenderOptions::isMidiRender | ( | ) | const |
| bool engine::RenderOptions::isExportAll | ( | ) | const |
| bool engine::RenderOptions::isRender | ( | ) | const |
| TargetFileFormat engine::RenderOptions::setFormat | ( | TargetFileFormat | ) |
| void engine::RenderOptions::setFormatType | ( | const juce::String & | typeString | ) |
| juce::String engine::RenderOptions::getFormatTypeName | ( | TargetFileFormat | ) |
| juce::Array< EditItemID > engine::RenderOptions::getTrackIDs | ( | ) | const |
| void engine::RenderOptions::setTrackIDs | ( | const juce::Array< EditItemID > & | ) |
| HashCode engine::RenderOptions::getTracksHash | ( | ) | const |
| void engine::RenderOptions::setSampleRate | ( | int | ) |
| void engine::RenderOptions::setBitDepth | ( | int | depth | ) |
| juce::StringArray engine::RenderOptions::getQualitiesList | ( | ) | const |
| int engine::RenderOptions::getQualityIndex | ( | ) | const |
| void engine::RenderOptions::setQualityIndex | ( | int | q | ) |
|
noexcept |
| juce::String engine::RenderOptions::getFileExtension | ( | ) | const |
| juce::String engine::RenderOptions::getCurrentFileExtension | ( | ) |
|
noexcept |
| int engine::RenderOptions::getBitDepth | ( | ) | const |
| ChannelConfiguration engine::RenderOptions::getChannelConfiguration | ( | ) | const |
| void engine::RenderOptions::setChannelConfiguration | ( | const ChannelConfiguration & | ) |
| double engine::RenderOptions::getSampleRate | ( | ) | const |
| bool engine::RenderOptions::shouldAddMetadata | ( | ) | const |
| bool engine::RenderOptions::shouldAddAcidMetadata | ( | ) | const |
References engine::addAcidMetadata.
| juce::BigInteger engine::RenderOptions::getTrackIndexes | ( | const Edit & | ) | const |
|
noexcept |
|
noexcept |
References engine::markedRegion.
|
noexcept |
| void engine::RenderOptions::setSelected | ( | bool | onlySelectedTrackAndClips | ) |
| void engine::RenderOptions::setMarkedRegion | ( | bool | onlyMarked | ) |
References engine::markedRegion.
| void engine::RenderOptions::setIncludePlugins | ( | bool | includePlugins | ) |
| void engine::RenderOptions::setAddRenderOption | ( | AddRenderOptions | options | ) |
| void engine::RenderOptions::setEndAllowance | ( | TimeDuration | time | ) |
| void engine::RenderOptions::setFilename | ( | juce::String | , |
| bool | canPromptToOverwriteExisting, | ||
| std::function< void()> | onComplete = nullptr |
||
| ) |
Sets the destination file.
As this may need to asynchronously prompt to overwrite an existing file, the optional callback is invoked once the filename has actually been updated.
| void engine::RenderOptions::updateHash | ( | ) |
| juce::StringArray engine::RenderOptions::getFormatTypes | ( | ) |
| juce::StringArray engine::RenderOptions::getAddRenderOptionText | ( | ) |
|
static |
|
static |
| Engine& engine::RenderOptions::engine |
| juce::CachedValue<RenderType> engine::RenderOptions::type |
| juce::CachedValue<juce::String> engine::RenderOptions::tracksProperty |
| juce::CachedValue<bool> engine::RenderOptions::createMidiFile |
| juce::CachedValue<TargetFileFormat> engine::RenderOptions::format |
| juce::CachedValue<juce::String> engine::RenderOptions::channelConfigStr |
| juce::CachedValue<double> engine::RenderOptions::sampleRate |
| juce::CachedValue<int> engine::RenderOptions::bitDepth |
| juce::CachedValue<int> engine::RenderOptions::qualityIndex |
| juce::CachedValue<double> engine::RenderOptions::rmsLevelDb |
| juce::CachedValue<double> engine::RenderOptions::peakLevelDb |
| juce::CachedValue<bool> engine::RenderOptions::removeSilence |
| juce::CachedValue<bool> engine::RenderOptions::normalise |
| juce::CachedValue<bool> engine::RenderOptions::dither |
| juce::CachedValue<bool> engine::RenderOptions::adjustBasedOnRMS |
| juce::CachedValue<bool> engine::RenderOptions::markedRegion |
| juce::CachedValue<bool> engine::RenderOptions::selectedTracks |
| juce::CachedValue<bool> engine::RenderOptions::selectedClips |
| juce::CachedValue<bool> engine::RenderOptions::tracksToSeparateFiles |
| juce::CachedValue<bool> engine::RenderOptions::realTime |
| juce::CachedValue<bool> engine::RenderOptions::usePlugins |
| juce::CachedValue<AddRenderOptions> engine::RenderOptions::addRenderOptions |
| juce::CachedValue<bool> engine::RenderOptions::addRenderToLibrary |
| juce::CachedValue<bool> engine::RenderOptions::reverseRender |
| juce::CachedValue<bool> engine::RenderOptions::addMetadata |
| juce::CachedValue<bool> engine::RenderOptions::addAcidMetadata |
| std::function<void(AudioClipBase&)> engine::RenderOptions::offerToAddClipToLibrary |
| std::function<void(const juce::File&)> engine::RenderOptions::offerToAddFileToLibrary |