Ultraschall Internals Documentation Reaper Internals Documentation Downloads Changelog of documentation Impressum and Contact
Ultraschall-logo Functions Engine GFX Engine GUI Engine Video Engine Audio Engine Doc Engine  
  Introduction/Concepts      Concepts      Concepts      Concepts      Concepts      Concepts
           Functions      Functions       Functions       Functions       Functions       Functions 



4.00 - "Aphrodite's Child - Four Horsemen" - 11th of February 2020 - Build: 43006

The Functions Reference

To add the API to your script, just add


        dofile(reaper.GetResourcePath().."/UserPlugins/ultraschall_api.lua")
      
as first line into your script.

For more details, read the docs in the Introduction and Concepts-area of this page.

API-Helper functions

CheckActionCommandIDFormatCheckActionCommandIDFormatCheckActionCommandIDFormat2ConvertFunction_FromBase64String
ConvertFunction_FromHexStringConvertFunction_ToBase64StringConvertFunction_ToHexStringFloatCompare
FromClipGetAllActionsGetApiVersionGetOS
GetReaperAppVersionGetReaperColorThemesPathGetReaperJSFXPathGetReaperScriptPath
GetReaperWebRCPathGetScriptFilenameFromActionCommandIDIsItemInTrackIsItemInTrack2
IsItemInTrack3IsOS_MacIsOS_OtherIsOS_Windows
IsObjectValidReaperObjectIsValidGuidIsWithinTimeRangeLoadFunctionFromExtState
MakeFunctionUndoableOpenURLPingMePreventCreatingUndoPoint
PrintProgressBarRefreshToolbar_ActionResetProgressBarReturnTypeOfReaperObject
ReturnsMinusOneInCaseOfError_ArzalaRunBackgroundHelperFeaturesRunCommandRunLuaSourceCode
SetIntConfigVar_BitfieldStoreFunctionInExtStateToClipToggleStateAction
ToggleStateButtondeprecatedget_action_context_MediaItemDiffprint
print2print3print_altprint_update
tobooleantype 
Child Scripts
GetScriptIdentifierGetScriptIdentifier_DescriptionGetScriptIdentifier_TitleGetScriptParameters
GetScriptReturnvaluesGetScriptReturnvalues_SenderMIDI_OnCommandByFilenameMain_OnCommandByFilename
Main_OnCommand_LuaCodeSetScriptIdentifier_DescriptionSetScriptIdentifier_TitleSetScriptParameters
SetScriptReturnvalues  
Data Analysis
FindPatternsInString  
Data Manipulation
AddIntToCharBase64_DecoderBase64_EncoderCSV2IndividualLinesAsArray
CSV2LineCombineBytesToIntegerCompareArraysCompareStringWithAsciiValues
ConcatIntegerIndexedTablesConvertAscii2HexConvertBitsToIntegerConvertBitsToString
ConvertHex2AsciiConvertIntegerIntoString2ConvertIntegerToBitsConvertStringToAscii_Array
ConvertStringToBitsConvertStringToIntegersCountCharacterInStringCountEntriesInTable_Main
CountLinesInStringCountPatternInStringCycleTableDB2MKVOL
GetAllEntriesFromTableGetDuplicatesFromArraysGetPartialStringGetSetIntConfigVar
IsValidMatchingPatternKeepTableEntriesOfTypeLimitFractionOfFloatMKVOL2DB
MakeCopyOfTableNotes2CSVRemoveTableEntriesOfTypeReplacePartOfString
ReplacePatternInStringReturnTableAsIndividualValuesReverseEndianess_ByteReverseTable
RoundNumberSearchStringInStringSecondsToTimeSecondsToTimeString_hh_mm_ss_mss
SetBitfieldSplitIntegerIntoBytesSplitStringAtLineFeedToArraySplitStringAtNULLBytes
StateChunkLayouterTimeStringToSeconds_hh_mm_ss_mssTimeToSeconds

API-Variables

API_TempPathApi_InstallPathApi_PathEuro
SeparatorStartTime 

Audio Management

GetHWInputs_AliasnamesGetHWOutputs_Aliasnames 

Automation Items

GetProject_AutomationItemStateChunkGetProject_CountAutomationItems 

Clipboard Functions

GetMediaItemsFromClipboardGetStringFromClipboard_SWSPutMediaItemsToClipboard_MediaItemArray

Color Management

ApplyColorTableToItemColorsApplyColorTableToTrackColorsChangeColorBrightnessChangeColorContrast
ChangeColorSaturationConvertColorConvertColorFromMacConvertColorFromWin
ConvertColorReverseConvertColorToGFXConvertColorToMacConvertColorToWin
ConvertGFXToColorCreateColorTableCreateSonicRainboomColorTableIsValidColorTable
RGB2Grayscale  

Configuration Settings

Menus
GetSetConfigActionMenu  
Preferences: Advanced UI
GetSetConfigAlwaysAllowKBGetSetConfigAudioCloseTrackWnds 
Preferences: Audio
GetSetConfigAllStereoPairsGetSetConfigAudioCloseStop 
Preferences: Device
GetSetConfigAudioThreadPr  
Preferences: Media
GetSetConfigApplyFXTail  
Preferences: Mute/Solo
GetSetConfigAutoMuteGetSetConfigAutoMuteFlags 
Preferences: Project
GetSetConfigAutoSaveIntGetSetConfigAutoSaveMode 
Preferences: Recording
GetSetConfigAdjRecLatGetSetConfigAdjRecManLatGetSetConfigAdjRecManLatIn
Preferences: Video/REX/Misc
GetSetConfigAcidImport  
Project Settings: Media
GetSetConfigAfxCfg  
Recording
GetStartNewFileRecSizeStateSetStartNewFileRecSizeState 
Render to File
GetRender_AutoIncrementFilenameGetRender_EmbedStretchMarkersGetRender_OfflineOnlineModeGetRender_ProjectSampleRateForMix
GetRender_QueueDelayGetRender_ResampleModeGetRender_SaveCopyOfProjectSetRender_AutoIncrementFilename
SetRender_EmbedStretchMarkersSetRender_OfflineOnlineModeSetRender_ProjectSampleRateForMixSetRender_QueueDelay
SetRender_ResampleModeSetRender_SaveCopyOfProject 
Transport: Contextmenu
GetSetConfigAudioPrShift  

Configuration-Files Management

Ini-Files
CountIniFileExternalState_keyCountIniFileExternalState_secCountKeysByPatternCountSectionsByPattern
CountValuesByPatternEnumerateIniFileExternalState_keyEnumerateIniFileExternalState_secEnumerateKeysByPattern
EnumerateSectionsByPatternEnumerateValuesByPatternGetIniFileExternalStateGetIniFileValue
SetIniFileExternalStateSetIniFileValue 
Reaper-kb.ini
CountKBIniActionsCountKBIniKeysCountKBIniScriptsDeleteKBIniActions
DeleteKBIniKeysDeleteKBIniScriptsGetKBIniActionsGetKBIniActionsID_ByActionCommandID
GetKBIniFilepathGetKBIniKeysGetKBIniKeys_ByActionCommandIDGetKBIniScripts
GetKBIniScripts_ByActionCommandIDQueryKeyboardShortcutByKeyIDSetKBIniActionsSetKBIniKeys
SetKBIniScripts  

Defer-Management

DeferGetDeferCycleSettingsGetDeferRunStateSetDeferCycleSettings
StopDeferCycle  

Developer

Error Handling
AddErrorMessageCountErrorMessage_FuncnameCountErrorMessagesDeleteAllErrorMessages
DeleteErrorMessageDeleteLastErrorMessageGetErrorMessage_FuncnameGetLastErrorMessage
GetLastErrorMessage2GetLastErrorMessage_FuncnameReadErrorMessageSLEM
ShowErrorMessagesInReascriptConsoleShowLastErrorMessageSuppressErrorMessagesToggleIDE_Errormessages
   
Helper functions
APIExistsApiTest 

Envelope Management

Get Envelope States
GetArmState_EnvelopeGetEnvelopeState_ActGetEnvelopeState_DefShapeGetEnvelopeState_EnvName
GetEnvelopeState_LaneHeightGetEnvelopeState_NumbersOnlyGetEnvelopeState_PTGetEnvelopeState_PooledEnvInstance
GetEnvelopeState_VisGetEnvelopeState_Voltype 
Get Envelope
GetAllTrackEnvelopesGetClosestEnvelopePointIDX_ByTimeGetEnvelopePointGetEnvelopePointIDX_Between
GetLastEnvelopePoint_TrackEnvelope  
Helper functions
CheckEnvelopePointObjectCountEnvelopePointsCreateEnvelopePointObjectGetTrackEnvelope_ClickState
IsValidEnvStateChunkIsValidEnvelopePointArrayIsValidEnvelopePointObject
Set Envelope States
SetArmState_Envelope  
Set Envelope
AddEnvelopePoints_EnvelopePointArrayAddEnvelopePoints_EnvelopePointObjectDeleteEnvelopePoints_EnvelopePointArrayDeleteEnvelopePoints_EnvelopePointObject
MoveTrackEnvelopePointsBySetEnvelopeHeightSetEnvelopePoints_EnvelopePointArraySetEnvelopePoints_EnvelopePointObject
   

Event Manager

EventManager_AddEventEventManager_AddStartupEventEventManager_CountRegisteredEventsEventManager_CountStartupEvents
EventManager_DebugModeEventManager_DebugMode_UserSpaceEventManager_EnumerateEventsEventManager_EnumerateEvents2
EventManager_EnumerateStartupEventsEventManager_EnumerateStartupEvents2EventManager_GetEventIdentifierEventManager_GetLastCheckfunctionState
EventManager_GetLastCheckfunctionState2EventManager_GetLastUpdateTimeEventManager_GetPausedStateEventManager_GetPausedState2
EventManager_GetRegisteredEventIDEventManager_IsValidEventIdentifierEventManager_PauseEventEventManager_RemoveAllEvents_Script
EventManager_RemoveEventEventManager_RemoveStartupEventEventManager_RemoveStartupEvent2EventManager_ResumeEvent
EventManager_SetEventEventManager_SetStartupEventEventManager_StartEventManager_Stop
   

FX-Management

FXStateChunks
CountFXStateChunksInStateChunkGetAllRFXChainfilenamesGetFXFromFXStateChunkGetFXStateChunk
IsValidFXStateChunkLoadFXStateChunkFromRFXChainFileRemoveFXStateChunkFromItemStateChunkRemoveFXStateChunkFromTrackStateChunk
SaveFXStateChunkAsRFXChainfileSetFXStateChunk 
Helper functions
GetRecentFX  
Parameter Mapping Alias
AddParmAlias_FXStateChunkCountParmAlias_FXStateChunkDeleteParmAlias_FXStateChunkGetParmAlias_FXStateChunk
GetParmAlias_MediaTrackSetParmAlias_FXStateChunk 
Parameter Mapping LFOLearn
AddParmLFOLearn_FXStateChunkCountParmLFOLearn_FXStateChunkDeleteParmLFOLearn_FXStateChunkGetParmLFOLearn_FXStateChunk
GetParmLFOLearn_MediaItemGetParmLFOLearn_MediaTrackSetParmLFOLearn_FXStateChunk
Parameter Mapping Learn
AddParmLearn_FXStateChunkCountParmLearn_FXStateChunkDeleteParmLearn_FXStateChunkGetParmLearn_FXStateChunk
GetParmLearn_MediaItemGetParmLearn_MediaTrackSetParmLearn_FXStateChunk
Parameter Mapping
GetParmAudioControl_FXStateChunkGetParmLFO_FXStateChunkGetParmMIDIPLink_FXStateChunkGetParmModulationChunk_FXStateChunk
   
Plugins
AutoDetectVSTPluginsFolderScanDXPluginsScanVSTPlugins

File Management

File Analysis
CheckForValidFileFormatsCountLinesInFileGetLengthOfFileOnlyFilesOfCertainType
   
Helper functions
CountDirectoriesAndFilesInPathCreateValidTempFileDirectoryExistsDirectoryExists2
GetAllDirectoriesInPathGetAllFilenamesInPathGetAllRecursiveFilesAndSubdirectoriesGetPath
GetReaperWorkDirSetReaperWorkDir 
Manipulate Files
MakeCopyOfFileMakeCopyOfFile_Binary 
Read Files
ReadBinaryFileFromPatternReadBinaryFileUntilPatternReadBinaryFile_OffsetReadFileAsLines_Array
ReadFullFileReadLinerangeFromFileReadSubtitles_SRTReadValueFromFile
   
Write Files
SaveSubtitles_SRTWriteValueToFileWriteValueToFile_InsertWriteValueToFile_InsertBinary
WriteValueToFile_ReplaceWriteValueToFile_ReplaceBinary 

Image File Handling

CaptureScreenAreaAsPNGCaptureWindowAsPNGResizePNG

Localization

LocalizeLocalize_RefreshFileLocalize_UseFile

MIDI Management

MIDI Editor
OpenItemInMidiEditorZoomHorizontal_MidiEditorZoomVertical_MidiEditor
Notes
MIDI_SendMidiCCMIDI_SendMidiNoteMIDI_SendMidiPCMIDI_SendMidiPitch
QueryMIDIMessageNameByID  

Manipulate Files

MoveFileOrFolder  

Markers

Assistance functions
CountMarkersAndRegionsGetGuidFromMarkerIDGetMarkerByScreenCoordinatesGetMarkerByTime
GetMarkerIDFromGuidGetMarkerUpdateCounterGetNextFreeRegionIndexGetRegionByScreenCoordinates
GetRegionByTimeGetTimeSignaturesByScreenCoordinatesGetTimeSignaturesByTimeIsMarkerAtPosition
IsRegionAtPositionMoveMarkersByMoveRegionsByParseMarkerString
RenumerateMarkers  
Custom Markers
AddCustomMarkerAddCustomRegionCountAllCustomMarkersCountAllCustomRegions
DeleteCustomMarkersDeleteCustomRegionsEnumerateCustomMarkersEnumerateCustomRegions
GetAllCustomMarkersGetAllCustomRegionsIsMarkerValidCustomMarkerIsRegionValidCustomRegion
SetCustomMarkerSetCustomRegion 
Edit Markers and Regions
AddEditMarkerAddEditRegionCountEditMarkersCountEditRegions
DeleteEditMarkerDeleteEditRegionEditToMarkerEnumerateEditMarkers
EnumerateEditRegionExportEditMarkersToFileGetAllEditMarkersImportEditFromFile
IsMarkerEditIsRegionEditRegionMarkerToEditMarkerSetEditMarker
SetEditRegion  
General Markers and Regions
GetAllMarkersGetAllMarkersBetweenGetAllRegionsGetAllRegionsBetween
GetLastMarkerPositionGetLastRegionGetMarkerAndRegionsByIndexGetMarkerByName
GetMarkerByName_PatternImportMarkersFromFileRippleCut_RegionsSetMarkerByIndex
   
Normal Markers
AddNormalMarkerCountNormalMarkersCountNormalMarkers_NumGapDeleteNormalMarker
EnumerateNormalMarkersExportNormalMarkersToFileGetAllNormalMarkersIsMarkerNormal
SetNormalMarker  
PodRange Region
AddPodRangeRegionDeletePodRangeRegionGetPodRangeRegionIsRegionPodrange
SetPodRangeRegion  
Time Signature Markers
GetAllTimeSigMarkersGetLastTimeSigMarkerPositionMoveTimeSigMarkersBy

Media Explorer

MediaExplorer_OnCommandUpdateMediaExplorer 

MediaItem Management

Assistance functions
ApplyActionToMediaItemApplyActionToMediaItemArrayApplyActionToMediaItemArray2ApplyFunctionToMediaItemArray
CheckMediaItemArrayCheckMediaItemStateChunkArrayCopyMediaItemToDestinationTrackGetAllMediaItemAttributes_Table
GetAllMediaItemGUIDsGetEndOfItemGetGapsBetweenItemsGetItem_ClickState
GetItem_HighestRecCounterGetItem_NumberGetMediaItemArrayLengthGetMediaItemStateChunkArrayLength
GetMediaItemStateChunksFromItemsGetMediaItemStateChunksFromMediaItemArrayGetMediafileAttributesGetParentTrack_MediaItem
IsItemInTimerangeIsSplitAtPositionIsValidMediaItemArrayIsValidMediaItemStateChunk
IsValidMediaItemStateChunkArrayOnlyItemsInTracksAndTimerangeOnlyMediaItemsOfTracksInTrackstringOnlyMediaItemsOfTracksInTrackstring_StateChunk
PreviewMediaFilePreviewMediaItemSetAllMediaItemAttributes_TableStopAnyPreview
   
Delete
DeleteMediaItemDeleteMediaItemsFromArrayDeleteMediaItems_PositionDeleteMediaItems_Position
   
Edit
RippleCutRippleCut_ReverseSectionCutSectionCut_Inverse
SplitItemsAtPositionFromArraySplitMediaItems_Position 
Get MediaItem States
GetItemAllTakesGetItemBeatGetItemChanModeGetItemFadeFlag
GetItemFadeInGetItemFadeOutGetItemGUIDGetItemGroup
GetItemIGUIDGetItemIIDGetItemLengthGetItemLock
GetItemLoopGetItemMixFlagGetItemMuteGetItemName
GetItemPlayRateGetItemPositionGetItemRecPassGetItemSampleOffset
GetItemSelectedGetItemSnapOffsetGetItemStateChunkGetItemUSTrackNumber_StateChunk
GetItemVolPan  
Get MediaItem-Takes
GetItemSourceFile_TakeGetMediaItemTake 
Get MediaItems
EnumerateMediaItemsInTrackGetAllLockedItemsFromMediaItemArrayGetAllMediaItemsGetAllMediaItemsBetween
GetAllMediaItemsFromTrackGetAllMediaItemsInTimeSelectionGetAllSelectedMediaItemsBetweenGetMediaItemsAtPosition
   
Insert
InsertImageFileInsertMediaItemArrayInsertMediaItemFromFileInsertMediaItemStateChunkArray
InsertMediaItem_MediaItemInsertMediaItem_MediaItemStateChunkRippleInsertRippleInsert_MediaItemStateChunks
   
Manipulate
AddLockStateToMediaItemStateChunkAddLockStateTo_MediaItemStateChunkArrayApplyStateChunkToItemsChangeDeltaLengthOfMediaItems_FromArray
ChangeDeltaOffsetOfMediaItems_FromArrayChangeLengthOfMediaItems_FromArrayChangeOffsetOfMediaItems_FromArrayMoveMediaItemsAfter_By
MoveMediaItemsBefore_ByMoveMediaItemsBetween_ToMoveMediaItems_FromArrayNormalizeItems
SetItemsLockState  
Selected Items
DeselectMediaItems_MediaItemArrayGetAllSelectedMediaItemsGetSelectedMediaItemsAtPositionGetSelectedMediaItemsBetween
SelectMediaItems_MediaItemArraySetMediaItemsSelected_TimeSelection 
Set MediaItem States
SetItemLengthSetItemPositionSetItemUSTrackNumber_StateChunkSetMediaItemStateChunk_in_TrackStateChunk
   
Spectral Edit
AddItemSpectralEditCountItemSpectralEditsDeleteItemSpectralEditGetItemSpectralConfig
GetItemSpectralEditGetItemSpectralVisibilityStateSetItemSpectralConfigSetItemSpectralEdit
SetItemSpectralVisibilityState  

Metadata Management

Extension States(Guid)
GetGuidExtStateSetGuidExtState 
Extension States
DeleteProjExtState_KeyDeleteProjExtState_SectionGetProjExtState_AllKeyValuesProjExtState_CountAllKeys
   
Markers
GetMarkerExtStateSetMarkerExtState 

Miscellaneous

WinterlySnowflakes  

Mute Management

Muting tracks within envelope-lanes
CountMuteEnvelopePointsDeleteMuteStateDeleteMuteState_TrackObjectGetNextMuteState
GetNextMuteState_TrackObjectGetPreviousMuteStateGetPreviousMuteState_TrackObjectIsMuteAtPosition
IsMuteAtPosition_TrackObjectToggleMuteToggleMute_TrackObject

Navigation

CenterViewToCursorGetClosestGoToPointsGetClosestNextMarkerGetClosestNextRegionEdge
GetClosestPreviousMarkerGetClosestPreviousRegionEdgeGetLastCursorPositionGetLastLoopState
GetLastPlayStateGetNextClosestItemEdgeGetPreviousClosestItemEdgeJumpBackwardBy
JumpBackwardBy_RecordingJumpForwardByJumpForwardBy_RecordingSetPlayAndEditCursor_WhenPlaying
SetPlayCursor_WhenPlayingToggleScrollingDuringPlayback 
Scrubbing
Scrubbing_MoveCursor_GetToggleStateScrubbing_MoveCursor_Toggle 
Transport
GetLoopStateSetLoopState 

Project-Files

Helper functions
GetProjectStateChunk  
RPP-Files Set
SetProject_GroupOverride  

Project-Management

Helper functions
CheckForChangedProjectTabsConvertOldProjectToCurrentReaperVersionCountProjectTabsCreateTemporaryFileOfProjectfile
EnumProjectsGetCurrentTimeLengthOfFrameGetLengthOfFramesGetProjectFilename
GetProjectLengthGetProject_LengthGetProject_LengthGetProject_Tabs
GetRecentProjectsIsValidProjectStateChunkIsValidReaProjectNewProjectTab
   
ProjectBay
GetAllMediaItems_FromProjectBayStateChunkIsValidProjectBayStateChunk 
RPP-Files Get
GetProjectState_NumbersOnlyGetProject_AddMediaToProjectAfterRenderGetProject_ApplyFXCFGGetProject_AutoCrossFade
GetProject_CountMarkersAndRegionsGetProject_CountMasterHWOutsGetProject_CursorPosGetProject_DefPitchMode
GetProject_EnvAttachGetProject_ExtensionsGetProject_FeedbackGetProject_GetMarker
GetProject_GetRegionGetProject_GlobalAutoGetProject_GridGetProject_GroupDisabled
GetProject_GroupNameGetProject_GroupOverrideGetProject_HorizontalZoomGetProject_ItemMixBehavior
GetProject_LockGetProject_LoopGetProject_LoopGranGetProject_MarkersAndRegions
GetProject_MasterAutomodeGetProject_MasterDualPanEnv2StateChunkGetProject_MasterDualPanEnvL2StateChunkGetProject_MasterDualPanEnvLStateChunk
GetProject_MasterDualPanEnvStateChunkGetProject_MasterFXBypGetProject_MasterFXListStateChunkGetProject_MasterGroupFlagsHighState
GetProject_MasterGroupFlagsStateGetProject_MasterHWOutGetProject_MasterHWPanEnvStateChunkGetProject_MasterHWVolEnvStateChunk
GetProject_MasterMuteSoloGetProject_MasterNChansGetProject_MasterPanModeGetProject_MasterPanMode_Ex
GetProject_MasterPlayspeedGetProject_MasterSelGetProject_MasterTrackColorGetProject_MasterTrackHeight
GetProject_MasterTrackViewGetProject_MasterVolEnv2StateChunkGetProject_MasterVolEnv3StateChunkGetProject_MasterVolEnvStateChunk
GetProject_MasterVolumeGetProject_MasterWidthGetProject_MaxProjectLengthGetProject_Metronome
GetProject_MixerUIFlagsGetProject_NumberOfTracksGetProject_PanLawGetProject_PanMode
GetProject_PeakGainGetProject_PlayrateGetProject_PooledEnvAttachGetProject_ProjOffsets
GetProject_ProjectBayGetProject_QRenderOriginalProjectGetProject_QRenderOutFilesGetProject_ReaperVersion
GetProject_RecModeGetProject_RecPathGetProject_RecordCFGGetProject_RenderCFG
GetProject_RenderDitherStateGetProject_RenderFilenameGetProject_RenderFreqNChansGetProject_RenderPattern
GetProject_RenderQueueDelayGetProject_RenderRangeGetProject_RenderResampleGetProject_RenderSpeed
GetProject_RenderStemsGetProject_RippleStateGetProject_SMPTESyncGetProject_SampleRate
GetProject_SelectionGetProject_TakeLaneGetProject_TempoGetProject_TempoEnvEx
GetProject_TempoEnv_ExStateChunkGetProject_TempoTimeSignatureGetProject_TimeBaseGetProject_Timemode
GetProject_TrackMixingDepthGetProject_TrackStateChunkGetProject_UseRecConfigGetProject_VerticalZoom
GetProject_VideoConfig  
RPP-Files Set
SetProject_AddMediaToProjectAfterRenderSetProject_ApplyFXCFGSetProject_AutoCrossFadeSetProject_CursorPos
SetProject_DefPitchModeSetProject_EnvAttachSetProject_FeedbackSetProject_GlobalAuto
SetProject_GridSetProject_HorizontalZoomSetProject_ItemMixBehaviorSetProject_Lock
SetProject_LoopSetProject_LoopGranSetProject_MasterAutomodeSetProject_MasterFXByp
SetProject_MasterMuteSoloSetProject_MasterNChansSetProject_MasterPanModeSetProject_MasterSel
SetProject_MasterTrackColorSetProject_MasterTrackHeightSetProject_MasterTrackViewSetProject_MaxProjectLength
SetProject_MixerUIFlagsSetProject_PanLawSetProject_PanModeSetProject_PeakGain
SetProject_PlayrateSetProject_ProjOffsetsSetProject_RecModeSetProject_RecPath
SetProject_RecordCFGSetProject_RenderCFGSetProject_RenderDitherStateSetProject_RenderFilename
SetProject_RenderFreqNChansSetProject_RenderPatternSetProject_RenderQueueDelaySetProject_RenderRange
SetProject_RenderResampleSetProject_RenderSpeedSetProject_RenderStemsSetProject_RippleState
SetProject_SMPTESyncSetProject_SampleRateSetProject_SelectionSetProject_TakeLane
SetProject_TempoSetProject_TempoTimeSignatureSetProject_TimeBaseSetProject_Timemode
SetProject_TrackMixingDepthSetProject_UseRecConfigSetProject_VerticalZoomSetProject_VideoConfig
   

ReaMote

AutoSearchReaMoteSlaves  

Reaper Element Positions

Reaper Window
ConvertClient2ScreenXCoordinate_ReaperWindowConvertScreen2ClientXCoordinate_ReaperWindowSetReaperWindowToSize

Rendering Projects

Analyzing Renderstrings
GetOutputFormat_RenderCfgGetRenderCFG_Settings_AIFFGetRenderCFG_Settings_AVI_VideoGetRenderCFG_Settings_AudioCD
GetRenderCFG_Settings_DDPGetRenderCFG_Settings_FLACGetRenderCFG_Settings_GIFGetRenderCFG_Settings_LCF
GetRenderCFG_Settings_M4AMacGetRenderCFG_Settings_MKV_VideoGetRenderCFG_Settings_MOVMac_VideoGetRenderCFG_Settings_MP3
GetRenderCFG_Settings_MP3ABRGetRenderCFG_Settings_MP3CBRGetRenderCFG_Settings_MP3MaxQualityGetRenderCFG_Settings_MP3VBR
GetRenderCFG_Settings_MP4Mac_VideoGetRenderCFG_Settings_OGGGetRenderCFG_Settings_OPUSGetRenderCFG_Settings_QTMOVMP4_Video
GetRenderCFG_Settings_WAVGetRenderCFG_Settings_WAVPACKGetRenderCFG_Settings_WebMVideo
Assistance functions
ApplyRenderTable_ProjectApplyRenderTable_ProjectFileCreateNewRenderTableGetLastRenderPaths
GetLastUsedRenderPatternsGetRenderTable_ProjectGetRenderTable_ProjectFileIsReaperRendering
IsValidRenderTable  
Creating Renderstrings
CreateRenderCFG_AIFFCreateRenderCFG_AVI_VideoCreateRenderCFG_AudioCDCreateRenderCFG_DDP
CreateRenderCFG_FLACCreateRenderCFG_GIFCreateRenderCFG_LCFCreateRenderCFG_M4AMAC
CreateRenderCFG_MKV_VideoCreateRenderCFG_MOVMAC_VideoCreateRenderCFG_MP3ABRCreateRenderCFG_MP3CBR
CreateRenderCFG_MP3MaxQualityCreateRenderCFG_MP3VBRCreateRenderCFG_MP4MAC_VideoCreateRenderCFG_OGG
CreateRenderCFG_OpusCreateRenderCFG_QTMOVMP4_VideoCreateRenderCFG_WAVCreateRenderCFG_WAVPACK
CreateRenderCFG_WebMVideo  
Render Presets
AddRenderPresetDeleteRenderPreset_BoundsDeleteRenderPreset_FormatOptionsGetRenderPreset_Names
GetRenderPreset_RenderTableSetRenderPreset 
RenderQueue
AddProjectFileToRenderQueueAddSelectedItemsToRenderQueueGetRenderQueuedProjectsRenderProject_RenderQueue
   
Rendering any Outputformat
RenderProjectRenderProject_RegionsRenderProject_RenderTableRender_Loop
   

Themeing

GetAllThemeLayoutNamesGetAllThemeLayoutParameters 

Track Management

Assistance functions
AddMediaItemStateChunk_To_TrackStateChunkAnyTrackFXBypassAnyTrackFreeItemPositioningModeAnyTrackHiddenMCP
AnyTrackHiddenTCPAnyTrackMuteAnyTrackPhasedAnyTrackRecMonitored
AnyTrackRecarmedApplyActionToTrackCountItemsInTrackStateChunkCreateTrackString
CreateTrackStringByGUIDCreateTrackStringByMediaTracksCreateTrackStringByTracknamesCreateTrackString_AllTracks
CreateTrackString_ArmedTracksCreateTrackString_SelectedTracksCreateTrackString_UnarmedTracksDeleteTracks_TrackString
GetAllMediaItemsFromTrackStateChunkGetItemStateChunkFromTrackStateChunkGetLengthOfAllMediaItems_TrackGetTrackLength
GetTracknumberByGuidInsertTrackAtIndexInsertTrack_TrackStateChunkInverseTrackstring
IsTrackObjectTracknumberIsValidTrackStateChunkIsValidTrackStringMoveTracks
OnlyTracksInBothTrackstringsOnlyTracksInOneTrackstringRemoveDuplicateTracksInTrackstringRemoveMediaItemByGUID_TrackStateChunk
RemoveMediaItemByIGUID_TrackStateChunkRemoveMediaItem_TrackStateChunk 
Get Track States
GetAllLockedTracksGetAllSelectedTracksGetTrackAutoRecArmStateGetTrackAutomodeState
GetTrackBeatStateGetTrackBusCompStateGetTrackBypFXStateGetTrackFreeModeState
GetTrackGroupFlagsStateGetTrackGroupFlags_HighStateGetTrackHeightStateGetTrackID
GetTrackINQStateGetTrackIPhaseStateGetTrackIcon_FilenameGetTrackIsBusState
GetTrackLayoutNamesGetTrackLockStateGetTrackMIDIOutStateGetTrackMainSendState
GetTrackMidiBankProgFnGetTrackMidiCTLGetTrackMidiColorMapFnGetTrackMidiInputChanMap
GetTrackMidiTextStrFnGetTrackMuteSoloStateGetTrackNChansStateGetTrackName
GetTrackPanModeGetTrackPeakColorStateGetTrackPerfStateGetTrackRecCFG
GetTrackRecStateGetTrackScoreGetTrackSelection_TrackStateChunkGetTrackShowInMixState
GetTrackStateChunk_TracknumberGetTrackState_NumbersOnlyGetTrackVUStateGetTrackVolPan
GetTrackWidthSetTrackSelection_TrackStateChunk 
Hardware Out
AddTrackHWOutApplyAllHWOutsAreHWOutsTablesEqualClearRoutingMatrix
CountTrackHWOutsDeleteTrackHWOutGetAllHWOutsGetTrackHWOut
SetTrackHWOut  
Send/Receive-Routing
AddTrackAUXSendReceivesApplyAllAUXSendReceivesApplyAllMainSendStatesAreAUXSendReceivesTablesEqual
AreMainSendsTablesEqualClearRoutingMatrixCountTrackAUXSendReceivesDeleteTrackAUXSendReceives
GetAllAUXSendReceivesGetAllMainSendStatesGetTrackAUXSendReceivesSetTrackAUXSendReceives
   
Set Track States
SetAllTracksSelectedSetTrackAutoRecArmStateSetTrackAutomodeStateSetTrackBeatState
SetTrackBusCompStateSetTrackBypFXStateSetTrackFreeModeStateSetTrackGroupFlagsState
SetTrackGroupFlags_HighStateSetTrackHeightStateSetTrackIDSetTrackINQState
SetTrackIPhaseStateSetTrackIcon_FilenameSetTrackIsBusStateSetTrackLayoutNames
SetTrackLockStateSetTrackMIDIOutStateSetTrackMainSendStateSetTrackMidiBankProgFn
SetTrackMidiCTLSetTrackMidiColorMapFnSetTrackMidiInputChanMapSetTrackMidiTextStrFn
SetTrackMuteSoloStateSetTrackNChansStateSetTrackNameSetTrackPanMode
SetTrackPeakColorStateSetTrackPerfStateSetTrackRecCFGSetTrackRecState
SetTrackScoreSetTrackShowInMixStateSetTrackStateChunk_TracknumberSetTrackVUState
SetTrackVolPanSetTrackWidthSetTracksSelectedSetTracksToLocked
SetTracksToUnlocked  

Ultraschall Specific

Followmode
pause_follow_one_cycle  
Routing
GetAllAUXSendReceives2GetAllHWOuts2GetAllMainSendStates2
Soundboard
SoundBoard_PlaySoundBoard_PlayList_CurrentIndexSoundBoard_PlayList_NextSoundBoard_PlayList_Previous
SoundBoard_PlayList_SetIndexSoundBoard_StopSoundBoard_StopAllSoundsSoundBoard_TogglePlayPause
SoundBoard_TogglePlayStopSoundBoard_TogglePlay_FadeOutStopSoundboard_PlayFadeIn
Track Management
GetTypeOfTrackIsTrackSoundboardIsTrackStudioLinkIsTrackStudioLinkOnAir
   
Ultraschall.ini
CountUSExternalState_keyCountUSExternalState_secDeleteUSExternalStateEnumerateUSExternalState_key
EnumerateUSExternalState_secGetUSExternalStateSetUSExternalState

User Interface

Arrangeview Management
DeleteArrangeviewSnapshotGetVerticalScrollGetVerticalZoomIsValidArrangeviewSnapshot
RestoreArrangeviewSnapshotRetrieveArrangeviewSnapshotSetVerticalRelativeScrollSetVerticalScroll
SetVerticalZoomStoreArrangeviewSnapshot 
Context Menus
ShowMenu  
Dialogs
BrowseForOpenFilesGetUserInputsMB
Menu Management
ShowAutomationItemMenuShowEnvelopeMenuShowEnvelopePointMenuShowEnvelopePointMenu_AutomationItem
ShowMediaItemMenuShowRulerMenuShowTrackAreaMenuShowTrackInputMenu
ShowTrackPanelMenuShowTrackRoutingMenu 
Miscellaneous
ConvertYCoordsMac2WinGetIDEFontSizeGetTimeByMouseXPositionSetIDEFontSize
   
Reaper-Windowhandler
GetActionsHWNDGetBatchFileItemConverterHWNDGetConsolidateTracksHWNDGetExportProjectMIDIHWND
GetHWND_ArrangeViewAndTimeLineGetMediaExplorerHWNDGetPreferencesHWNDGetProjectDirectoryCleanupHWND
GetProjectSettingsHWNDGetRenderQueueHWNDGetRenderToFileHWNDGetRenderingToFileHWND
GetSaveLiveOutputToDiskHWNDGetSaveProjectAsHWNDGetVideoHWND
Screen Management
GetScreenHeightGetScreenWidth 
Track Control Panel(TCP)
GetTCPWidth  
Transport
GetPlayCursorWidthSetPlayCursorWidth 
UI-Elements
GetCheckboxStateSetCheckboxState 
Window Management
CloseReaScriptConsoleGetAllReaScriptIDEWindowsGetChildSizeWithinParentHWNDGetReaScriptConsoleWindow
GetReaperWindowAttributesGetTopmostHWNDHasHWNDChildWindowNamesIsValidHWND
MoveChildWithinParentHWNDWindows_Find 
misc
GetHelpDisplayModeSetHelpDisplayModeWiringDiagram_GetOptionsWiringDiagram_SetOptions
   


^ Reaper version 5.40Lua version 5.3 CountProjectTabs

Functioncall:

integer number_of_projecttabs = ultraschall.CountProjectTabs()

Description:
Counts the number of opened project tabs.

Returnvalues:
 integer number_of_projecttabs the number of projecttabs currently opened 



^ Reaper version 5.40Lua version 5.3 GetProject_Tabs

Functioncall:

integer number_of_projecttabs, array projecttablist = ultraschall.GetProject_Tabs()

Description:
Returns the ReaProject-objects, as well as the filenames of all opened project-tabs.

Returnvalues:
 integer number_of_projecttabs the number of projecttabs currently opened 
 array projecttablist an array, that holds all ReaProjects as well as the projectfilenames
projecttablist[idx][1] = ReaProject
projecttablist[idx][2] = projectfilename with path 



^ Reaper version 5.40Lua version 5.3 GetApiVersion

Functioncall:

number versionnumber, string version, string date, string beta, string tagline, string buildnumber = ultraschall.GetApiVersion()

Description:
returns the version, release-date and if it's a beta-version plus the currently installed hotfix

Returnvalues:
 number versionnumber a number, that you can use for comparisons like, "if requestedversion>versionnumber then" 
 string version the current Api-version 
 string date the release date of this api-version 
 string beta if it's a beta version, this is the beta-version-number 
 string tagline the tagline of the current release 
 string hotfix_date the release-date of the currently installed hotfix ($ResourceFolder/ultraschall_api/ultraschall_hotfixes.lua) 
 string buildnumber the build-number of the current release 



^ Reaper version 5.965Lua version 5.3 SuppressErrorMessages

Functioncall:

boolean retval = ultraschall.SuppressErrorMessages(boolean flag)

Description:
Allows you to suppress error-messages.
If you pass true, all error messages will be suppressed, until you run the function again passing false.

Note: You should supress error-messages only temprarily and "unsuppress" them again, after your critical stuff is finished.
Otherwise, someone using your functions will have no error-messages to debug with.

Returns false, if parameter isn't boolean. Unlike most other function, this will never create an error-message!

Returnvalues:
 boolean retval true, setting was successful; false, you didn't pass a boolean as parameter 

Parameters:
 boolean flag true, suppress error-messages; false, don't suppress error-messages 


^ Reaper version 5.965Lua version 5.3 AddErrorMessage

Functioncall:

boolean retval, integer errorcount = ultraschall.AddErrorMessage(string functionname, string parametername, string errormessage, integer errorcode)

Description:
Adds a new errormessage to the Ultraschall-Api-Error-messagesystem. Returns the number of the errormessage.
Intended for your own 3rd party-functions for the API, to give the user more feedback about errors than just a cryptic errorcode.

returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 integer errorcount the number of the errormessage within the Ultraschall-Api-Error-messagesystem; nil, if errormessages are suppressed currently 

Parameters:
 string functionname the function, where the error happened 
 string parametername the parameter, that caused the problem 
 string errormessage a longer description of what cause the problem and a hint to a possible solution 
 integer errorcode a number, that represents the error-message. Will be -1 by default, if not given. 


^ Reaper version 5.40Lua version 5.3 StartTime

Functioncall:

ultraschall.StartTime

Description:
Contains the correct starting time of the current instance of the Ultraschall-Framework, which probably means your script, that embeds the framework.




^ Reaper version 5.40Lua version 5.3 API_TempPath

Functioncall:

ultraschall.API_TempPath

Description:
Contains the path to the temp-folder of the Ultraschall-API.




^ Reaper version 5.40Lua version 5.3 Euro

Functioncall:

ultraschall.Euro

Description:
Holds the Euro-currency-symbol, which is hard to type in Reaper's own IDE.




^ Reaper version 5.40Lua version 5.3 ApiTest

Functioncall:

ultraschall.ApiTest()

Description:
Displays a message to show, which parts of the Ultraschall-API are turned on and which are turned off.




^ Reaper version 5.40Lua version 5.3 ToggleIDE_Errormessages

Functioncall:

boolean retval = ultraschall.ToggleIDE_Errormessages(optional boolean togglevalue)

Description:
Toggles or sets, if the error-messaging system shall output it's errors to Reaper's IDE(true) or not(false).
When set true, it will show the errormessages at the bottom of the IDE, as you are used by Reaper's own functions.

Returnvalues:
 boolean retval true, if errors will be shown at the bottom of the IDE; false, if not 

Parameters:
 optional boolean togglevalue true, if errormessages shall be shown at the bottom of the IDE, false if not. If omitted, it toggles what was set before. 


^ Reaper version 5.40Lua version 5.3 ReadErrorMessage

Functioncall:

boolean retval, integer errcode, string functionname, string parmname, string errormessage, string lastreadtime, string err_creation_date, string err_creation_timestamp = ultraschall.ReadErrorMessage(integer errornumber)

Description:
Reads an error-message within the Ultraschall-ErrorMessagesystem.
Returns a boolean value, the functionname, the errormessage, the "you've already read this message"-status, the date and a timestamp of the creation of the errormessage.
returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 integer errcode the errorcode of this message, as set by the function that created this errormessage; -1 is default value 
 string functionname the name of the function, where the problem happened 
 string parmname the parameter, that was used wrong by the programmer; "" if no parameter was involved in this error 
 string errormessage the message of the problem with a possible hint to a solution 
 string readstatus "unread" if the message hasn't been read yet or a date_time from when the message has been read already 
 string err_creation_date the date_time of when the error-message was created 
 string err_creation_timestamp the timestamp of when the error-message was created. Usually seconds, since system got started 

Parameters:
 integer errornumber the number of the error, beginning with 1. Use CountErrorMessages to get the current number of error-messages. 


^ Reaper version 5.40Lua version 5.3 DeleteErrorMessage

Functioncall:

boolean retval = ultraschall.DeleteErrorMessage(integer errornumber)

Description:
Deletes an error-message within the Ultraschall-ErrorMessagesystem.

returns false in case of failure

Returnvalues:
 boolean retval true, if such an error exists; false if it didn't 

Parameters:
 integer errornumber the number of the error to delete, beginning with 1. Use CountErrorMessages to get the current number of error-messages. 


^ Reaper version 5.40Lua version 5.3 GetLastErrorMessage

Functioncall:

boolean retval, integer errcode, string functionname, string parmname, string errormessage, string lastreadtime, string err_creation_date, string err_creation_timestamp, integer errorcounter = ultraschall.GetLastErrorMessage()

Description:
Reads the last error-message stored in the Ultraschall-ErrorMessagesystem.
Returns a boolean value, the functionname, the errormessage, the date and a timestamp of the creation of the errormessage, the unread-status as well as the error-message-number.
returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 integer errcode the errorcode of this message, as set by the function that created this errormessage; -1 is default value 
 string functionname the name of the function, where the problem happened 
 string parmname the parameter, that was used wrong by the programmer; "" if no parameter was involved in this error 
 string errormessage the message of the problem with a possible hint to a solution 
 string readstatus "unread" if the message hasn't been read yet or a date_time from when the message has been read already 
 string err_creation_date the date_time of when the error-message was created 
 string err_creation_timestamp the timestamp of when the error-message was created. Usually seconds, since system got started 
 integer errorcounter the error-message-number within the Ultraschall-Error-Message-System 

Parameters:
 integer errornumber the number of the error, beginning with 1. Use CountErrorMessages to get the current number of error-messages. 


^ Reaper version 5.40Lua version 5.3 DeleteLastErrorMessage

Functioncall:

boolean retval = ultraschall.DeleteLastErrorMessage()

Description:
Deletes the last error-message and returns a boolean value.
returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 



^ Reaper version 5.40Lua version 5.3 DeleteAllErrorMessages

Functioncall:

boolean retval = ultraschall.DeleteAllErrorMessages()

Description:
Deletes all error-messages and returns a boolean value.
returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 



^ Reaper version 5.40Lua version 5.3 GetLastErrorMessage2

Functioncall:

boolean retval, array ErrorMessages = ultraschall.GetLastErrorMessage2(integer count, boolean setread)

Description:
Returns an array with the last "count" errormessages. 1 for the last, 2 for the last 2, etc.
Set setread to false, if you want to retain the unread status of the error-messages.
returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 array ErrorMessages an array, that contains all values for the chosen number of errormessages.
The fields are ErrorMessages[errornumber][x], where x stands for
"errcode" - the errorcode of this function, default is -1
"funcname" - functionname
"parmname" - name of the parameter, that caused the error
"errmsg" - errormessage
"readstate" - readstatus
"date" - errorcreation date_time
"time" - errorcreation timestamp in seconds, usually seconds since computer has been started 

Parameters:
 integer count the number of the last few errors, you want to get returned. Use CountErrorMessages to get the current number of error-messages. 


^ Reaper version 5.40Lua version 5.3 CountErrorMessages

Functioncall:

integer errorcounter = ultraschall.CountErrorMessages()

Description:
Returns the current count of errormessages in the system available.

Returnvalues:
 integer errorcounter the number of errormessages currently available in the error-message-system. Includes read and unread ones. 



^ Reaper version 5.40Lua version 5.3 ShowLastErrorMessage

Functioncall:

ultraschall.ShowLastErrorMessage()

Description:
Displays the last error message in a messagebox, if existing and unread.




^ Reaper version 5.40Lua version 5.3 SLEM

Functioncall:

SLEM()

Description:
Displays the last error message in a messagebox, if existing and unread.

Like ultraschall.ShowLastErrorMessage() but this is easier to type.
Note: written without ultraschall. in the beginning!




^ Reaper version 5.40Lua version 5.3 Separator

Functioncall:

ultraschall.Separator

Description:
Contains the correct separator for your system. / on Mac, \ on Windows. Use them, if you want to create windows and mac-compliant scripts that have file operations.




^ Reaper version 5.40Lua version 5.3 Api_Path

Functioncall:

ultraschall.Api_Path

Description:
Contains the current path of the Ultraschall-Api-folder ResourcePath/UserPlugins/ultraschall_api/




^ Reaper version 5.40Lua version 5.3 Api_InstallPath

Functioncall:

ultraschall.Api_InstallPath

Description:
Contains the current path to the installation folder of the Ultraschall-Api(usually Resourcesfolder/UserPlugins)




^ Reaper version 5.95Lua version 5.3 GetLastErrorMessage_Funcname

Functioncall:

integer errorindex, string parametername, string errormessage, integer errorcode = ultraschall.GetLastErrorMessage_Funcname(string functionname)

Description:
Returns the last errormessage, a certain function added to the Error-Messaging-System.
Sets read-state of the error-message to the date-time of accessing it.

returns -1 in case of error

Returnvalues:
 integer errorindex the index of the error within the Error-Messaging-System 
 string parametername the parameter that produced the problem, or "" if no parameter was involved 
 string errormessage the errormessage 
 integer errorcode the errorcode the error has 

Parameters:
 string functionname the name of the function, whose last error message you want to retrieve 


^ Reaper version 5.95Lua version 5.3 CountErrorMessage_Funcname

Functioncall:

integer number_of_errormessages = ultraschall.CountErrorMessage_Funcname(string functionname)

Description:
Returns the number of available errormessages for functionname, existing in the Error-Messaging-System.

returns -1 in case of error

Returnvalues:
 integer number_of_errormessages the number of errormessages functionname has left in the Error-Messaging-System 

Parameters:
 string functionname the name of the function, whose error messages you want to count 


^ Reaper version 5.95Lua version 5.3 GetErrorMessage_Funcname

Functioncall:

integer errorindex, string parametername, string errormessage, integer errorcode = ultraschall.GetErrorMessage_Funcname(string functionname, integer index)

Description:
Returns a specific errormessage specified by index, functionname added to the Error-Messaging-System.
Sets read-state of the error-message to the date-time of accessing it.

returns -1 in case of error

Returnvalues:
 integer errorindex the index of the error within the Error-Messaging-System 
 string parametername the parameter that produced the problem, or "" if no parameter was involved 
 string errormessage the errormessage 
 integer errorcode the errorcode the error has 

Parameters:
 string functionname the name of the function, whose last error message you want to retrieve 
 integer index the index of the error-message for functionname 


^ Reaper version 5.965Lua version 5.3 ShowErrorMessagesInReascriptConsole

Functioncall:

ultraschall.ShowErrorMessagesInReascriptConsole(boolean state)

Description:
Sets, if errormessages shall be shown in the ReaScript-Console immediately, when they happen.

Will show functionname, parametername, errorcode plus errormessage and the time the error has happened.


Parameters:
 boolean state true, show error-messages in the ReaScript-Console when they happen; false, don't show errormessages 


^ Reaper version 5.95Lua version 5.3 WinterlySnowflakes

Functioncall:

integer retval = ultraschall.WinterlySnowflakes(boolean toggle, number falling_speed, integer number_snowflakes)

Description:
Exchanges the gfx.update()-function with a variant, that displays falling snowflakes everytime it is called.

returns -1 in case of error

Returnvalues:
 integer retval returns -1 in case of a'JS_Window_ListFind' n error; 1, in case of success 

Parameters:
 boolean toggle true, toggles falling snow on; false, toggles falling snow off 
 number falling_speed the falling speed of the snowflakes, 1.3 is recommended 
 integer number_snowflakes the number of falling snowflakes at the same time on screen; 2000 is recommended 


^ Reaper version 5.95Lua version 5.3 PingMe

Functioncall:

string pingmessage = PingMe(optional string message, integer outputtarget)

Description:
Shows the current script and line of script-execution, optionally with a message.

This is for debugging-purposes. For instance, if you want to know, if an if-statement is working as you expect it, just add
PingMe() into that if-statement.
It will show a message including linenumbers, when the if-statement is going through.

You can also choose, whether to output the message into ReaConsole, Messagebox or clipboard(including culminating options)

Returnvalues:
 string pingmessage returns the pingmessage 

Parameters:
 optional string message an optional message shown 
 optional integer outputtarget 0, don't show a message
1, output the pingme-message into ReaScript-console
2 or nil, show a messagebox
3, output it into the clipboard
4, add it to the end of the contents of the clipboard
5, add it to the beginning of the contents of the clipboard 


^ Reaper version 5.965Lua version 5.3 print2

Functioncall:

print2(parameter_1 to parameter_n)

Description:
replaces Lua's own print-function.

Converts all parametes given into string using tostring() and displays them as a MessageBox, separated by two spaces.


Parameters:
 parameter_1 to parameter_n the parameters, that you want to have printed out 


^ Reaper version 5.965Lua version 5.3 print_alt

Functioncall:

print_alt(parameter_1 to parameter_n)

Description:
replaces Lua's own print-function, that is quite useless in Reaper.

like print, but separates the entries by a two spaced, not a newline


Parameters:
 parameter_1 to parameter_n the parameters, that you want to have printed out 


^ Reaper version 5.965Lua version 5.3 print

Functioncall:

print(parameter_1 to parameter_n)

Description:
replaces Lua's own print-function, that is quite useless in Reaper.

Converts all parametes given into string using tostring() and displays them in the ReaScript-console, separated by a newline and ending with a newline.


Parameters:
 parameter_1 to parameter_n the parameters, that you want to have printed out 


^ Reaper version 5.40Lua version 5.3 toboolean

Functioncall:

boolean retval = toboolean(string value)

Description:
Converts the string "value" to a boolean, if applicable; means: if it contains either true or false in it.
If it contains both or other characters(except spaces or tabs), it will not convert.
Works basially like Lua's own tostring() or tonumber()-functions.

Returns nil, if conversion isn't possible.

Note: Unlike other ultraschall-api-functions, toboolean() has no ultraschall. in it's functionname!

Returnvalues:
 boolean retval true or false, depending on the input variable value 

Parameters:
 string value the value to be converted to a boolean. True and false can be upper-, lower and camelcase. 


^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 print3

Functioncall:

print(parameter_1 to parameter_n)

Description:
like print, but puts the parameters into the clipboard.

Converts all parametes given into string using tostring() and puts them into the clipboard, with each parameter separated by two spaces.
Unlike print and print2, this does NOT end with a newline!


Parameters:
 parameter_1 to parameter_n the parameters, that you want to have put into the clipboard 


^ Reaper version 5.965Lua version 5.3 print_update

Functioncall:

print_update(parameter_1 to parameter_n)

Description:
replaces Lua's own print-function, that is quite useless in Reaper.

Converts all parametes given into string using tostring() and displays them in the ReaScript-console, separated by two spaces, ending with a newline.

This is like print, but clears console everytime before displaying the values. Good for status-display, that shall not scroll.


Parameters:
 parameter_1 to parameter_n the parameters, that you want to have printed out 


^ Reaper version 5.40Lua version 5.3 CheckActionCommandIDFormat

Functioncall:

boolean retval = ultraschall.CheckActionCommandIDFormat(action_command_id)

Description:
Checks, whether an action command id is a valid commandid(which is a number) or a valid _action_command_id (which is a string with an _underscore in the beginning).

Does not check, whether this action_command_id is a useable one, only if it's "syntax" is correct!

returns falsein case of an error

Returnvalues:
 boolean retval true, valid action_command_id; false, not a valid action_command_id 

Parameters:
 actioncommand_id the ActionCommandID you want to check; either a number or an action_command_id with an underscore at the beginning 


^ Reaper version 5.40Lua version 5.3 RunCommand

Functioncall:

integer retval = ultraschall.RunCommand(string actioncommand_id)

Description:
runs a command by its ActionCommandID(instead of the CommandID-number)

returns -1 in case of error

Returnvalues:
 integer retval -1, in case of error 

Parameters:
 string actioncommand_id the ActionCommandID of the Command/Script/Action you want to run; must be either a number or the ActionCommandID beginning with an underscore _ 


^ Reaper version 5.965Lua version 5.3 ConvertStringToBits

Functioncall:

integer number_of_bits, array bitarray = ultraschall.ConvertStringToBits(string message)

Description:
converts a string into its bit-representation and returns that as a handy table

returns -1 in case of an error

Returnvalues:
 integer number_of_bits the number of bits in the string, -1, in case of an error 
 array bitarray the individual bits as a handy table 

Parameters:
 string message the string, which you want to convert into its bit representation 


^ Reaper version 5.965Lua version 5.3 ConvertBitsToString

Functioncall:

string message = ultraschall.ConvertBitsToString(array bitarray)

Description:
converts a table of bit-representation into a string

Every entry in the table must be either 0 or 1. If there are too few bits to fill up a byte, the missing bits will be seen as trailing 0-bits.

returns nil in case of an error

Returnvalues:
 string message the converted bits as string-representation 

Parameters:
 array bitarray the individual bits in a table, which will be converted into a string-representation
each entry in the table must be either 0 or 1; missing bits at the end(usually nil) will be seen as 0 


^ Reaper version 5.965Lua version 5.3 deprecated

Functioncall:

ultraschall.deprecated(string functionname)

Description:
If you have a 3rd-party function added to Ultraschall-API, which you want to deprecate, use this
function to show a warning message, if that function is used.

It will be shown once when running the script, after (re-)start of Reaper.

That way, you can tell scripters, whether they need to update their scripts using newer/better functions.
This is probably shown first to the user, who knows that way a potential problem and can tell the scripter about that.

If there is a line "Author: authorname" in the file(as usual for ReaPack-compatible scripts), it will show the scripter's name in the dialog.


Returnvalues:
 boolean retval true, defer-instance is running; false, defer-instance isn't running 



^ Reaper version 6.02Lua version 5.3 FloatCompare

Functioncall:

boolean retval, number diff = ultraschall.FloatCompare(number a, number b, number precision)

Description:
Compares two floatvalues and allows to set the precision to copmare against.

So, if you want to compare 5.1 and 5.2, using precision=0.2 returns true(is equal), precision=0.1 returns false(isn't equal).

Returns nil in case of failure.

Returnvalues:
 boolean retval true, numbers are equal; false, numbers aren't equal 
 number diff the difference between numbers a and b 

Parameters:
 number a the first float-number to compare 
 number b the second float-number to compare 
 number precision the precision of the fraction, like 0.1 or 0.0063 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 ToClip

Functioncall:

ToClip(string toclipstring)

Description:
Puts a string into clipboard.


Parameters:
 string toclipstring the string, which you want to put into the clipboard 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 FromClip

Functioncall:

string clipboard_string = FromClip()

Description:
Gets a string from clipboard.

Returnvalues:
 string clipboard_string the string-content from the clipboard 



^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 GetHWInputs_Aliasnames

Functioncall:

integer number_of_aliases, table aliases = ultraschall.GetHWInputs_Aliasnames()

Description:
Returns the aliasnames and their associated channels of the currently selected audio-device.

The returned table is of the format
table[index][1] - the name of the alias
table[index][2] - the hardware-input-channel, associated to this aliasname

Returnvalues:
 integer number_of_aliases the number of aliases available 
 table aliases a table, that contains all alias-names and their associated Hardware-Input-channels 



^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 GetHWOutputs_Aliasnames

Functioncall:

integer number_of_aliases, table aliases = ultraschall.GetHWOutputs_Aliasnames()

Description:
Returns the aliasnames and their associated channels of the currently selected audio-device.

The returned table is of the format
table[index][1] - the name of the alias
table[index][2] - the hardware-output-channel, associated to this aliasname

Returnvalues:
 integer number_of_aliases the number of aliases available 
 table aliases a table, that contains all alias-names and their associated Hardware-Output-channels 



^ Reaper version 5.95Lua version 5.3 GetProject_AutomationItemStateChunk

Functioncall:

string AutomationItemStateChunk = ultraschall.GetProject_AutomationItemStateChunk(string projectfilename_with_path, integer idx, optional string ProjectStateChunk)

Description:
returns the idx'th automation-item from a ProjectStateChunk.

It's the entry <POOLEDENV

returns nil in case of an error

Returnvalues:
 string AutomationItemStateChunk the statechunk of the idx'th automation-item 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the automation-item-statechunk; nil to use ProjectStateChunk 
 integer idx the number of the requested automation-item from the ProjectStateChunk with 1 for the first AutomItem. 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_CountAutomationItems

Functioncall:

integer automation_items_count = ultraschall.GetProject_CountAutomationItems(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the number of automation-items available in a ProjectStateChunk.

It's the entry <POOLEDENV
                        
returns -1 in case of an error

Returnvalues:
 integer automation_items_count the number of automation-items 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the automation-item-count; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file; only used, when projectfilename_with_path=nil 


^ Reaper version 5.40Lua version 5.3 GetMediaItemsFromClipboard

Functioncall:

integer count, array MediaItemStateChunkArray = ultraschall.GetMediaItemsFromClipboard()

Description:
Returns the number of mediaitems and a MediaItemStateChunkArray of the mediaitems, as stored in the clipboard.

It does it by pasting the items at the end of the project, getting them and deleting them again.

Use sparsely and with care, as it uses a lot of resources!

Returnvalues:
 integer count the number of items in the clipboard 
 array MediaItemStatechunkArray the mediaitem-statechunks of the items in the clipboard. One entry for each mediaitem-statechunk. 



^ Reaper version 5.52SWS version 2.9.7Lua version 5.3 GetStringFromClipboard_SWS

Functioncall:

string clipboard_string = ultraschall.GetStringFromClipboard_SWS()

Description:
Returns the content of the clipboard as a string. Uses the SWS-function reaper.CF_GetClipboard, but does everything for you, that is needed for proper use of this function.

Returnvalues:
 string clipboard_string the content of the clipboard as a string 



^ Reaper version 5.95Lua version 5.3 PutMediaItemsToClipboard_MediaItemArray

Functioncall:

boolean retval = ultraschall.PutMediaItemsToClipboard_MediaItemArray(MediaItemArray MediaItemArray)

Description:
Puts the items in MediaItemArray into the clipboard.

Returns false in case of an error

Returnvalues:
 boolean retval true, if successful; false, if not 

Parameters:
 MediaItemArray MediaItemArray an array with all MediaItems, that shall be put into the clipboard 


^ Reaper version 5.52Lua version 5.3 ConvertColor

Functioncall:

integer colorvalue, boolean retval = ultraschall.ConvertColor(integer r, integer g, integer b)

Description:
converts r, g, b-values to native-system-color. Works like reaper's ColorToNative, but doesn't need |0x1000000 added.

returns color-value 0, and retval=false in case of an error

Returnvalues:
 integer colorvalue the native-system-color; 0 to 33554431 

Parameters:
 integer r the red colorvalue 
 integer g the green colorvalue 
 integer b the blue colorvalue 


^ Reaper version 5.52Lua version 5.3 ConvertColorReverse

Functioncall:

integer r, integer g, integer b, boolean retval = ultraschall.ConvertColorReverse(integer colorvalue)

Description:
converts a native-system-color to r, g, b-values.

returns 0,0,0,false in case of an error

Returnvalues:
 integer r the red colorvalue 
 integer g the green colorvalue 
 integer b the blue colorvalue 
 boolean retval true, color-conversion was successful; false, color-conversion was unsuccessful 

Parameters:
 integer colorvalue the native-system-color; 0 to 33554431 


^ Reaper version 5.40Lua version 5.3 RGB2Grayscale

Functioncall:

integer graycolor = ultraschall.RGB2Grayscale(integer red, integer green, integer blue)

Description:
converts rgb to a grayscale value. Works native on Mac as well on Windows, no color conversion needed.

returns nil in case of an error

Returnvalues:
 integer graycolor the gray color-value, generated from red,blue and green. 

Parameters:
 integer red red-value between 0 and 255. 
 integer green red-value between 0 and 255. 
 integer blue red-value between 0 and 255. 


^ Reaper version 5.40Lua version 5.3 ConvertColorToGFX

Functioncall:

number r, number g, number b, number a = ultraschall.ConvertColorToGFX(integer r, integer g, integer b, integer a)

Description:
converts red,green,blue,alpha-values from 0-255 range to 0-1 range, so these values can be used by Reaper-Lua's gfx.functions().

supports negative-values up from -255 to +255, so you can use the function as well for subtraction of colorvalues.

returns nil in case of error

Returnvalues:
 number r the converted red-value between -1 and +1; nil in case of error 
 number g the converted green-value between -1 and +1 
 number b the converted blue-value between -1 and +1 
 number a the converted alpha-value between -1 and +1 

Parameters:
 integer r the red-color-value between -255 and +255 
 integer g the green-color-value between -255 and +255 
 integer b the blue-color-value between -255 and +255 
 integer a the alpha-color-value between -255 and +255 


^ Reaper version 5.40Lua version 5.3 ConvertGFXToColor

Functioncall:

integer r, integer g, integer b, integer a = ultraschall.ConvertGFXToColor(number r, number g, number b, number a)

Description:
converts red,green,blue,alpha-values from 0-1 range to 0-255 range, so these values can be used by Reaper's normal color-value-functions.

supports negative-values up from -1 to +1, so you can use the function as well for subtraction of colorvalues.

returns nil in case of error

Returnvalues:
 integer r the red-color-value between -255 and +255 
 integer g the green-color-value between -255 and +255 
 integer b the blue-color-value between -255 and +255 
 integer a the alpha-color-value between -255 and +255 

Parameters:
 number r the converted red-value between -1 and +1; nil in case of error 
 number g the converted green-value between -1 and +1 
 number b the converted blue-value between -1 and +1 
 number a the converted alpha-value between -1 and +1 


^ Reaper version 5.95Lua version 5.3 CreateColorTable

Functioncall:

array ColorTable = ultraschall.CreateColorTable(integer startr, integer startg, integer startb, integer endr, integer endg, integer endb, integer number_of_steps)

Description:
Returns a colortable to be used by color-graphics-functions.

The colorvalue for start and end can be 0 to 255 or the other way round 255 to 0

Can be used by ApplyColorTableToTrackColors

returns nil in case of an error

Returnvalues:
 array ColorTable a colortable for the colors with the number of steps of your choice;
each indexentry holds entries "r"(0-255), "g"(0-255), "b"(0-255), "nativecolor" and "gfxr"(0-1), "gfxg"(0-1), "gfxb"(0-1). 

Parameters:
 integer startr start redvalue, between 0 and 255 
 integer startg start greenvalue, between 0 and 255  
 integer startb start bluevalue, between 0 and 255 
 integer endr end redvalue, between 0 and 255 
 integer endg end greenvalue, between 0 and 255 
 integer endb end bluevalue, between 0 and 255 
 integer number_of_steps the number of steps from the lowest to the highest r,g,b-color start/end-values 


^ Reaper version 5.95Lua version 5.3 CreateSonicRainboomColorTable

Functioncall:

array ColorTable = ultraschall.CreateSonicRainboomColorTable()

Description:
Returns a colortable in Ultraschall's standard-trackcolor-setting "Sonic Rainboom"-style.

Can be used by ApplyColorTableToTrackColors

Returnvalues:
 array ColorTable a colortable with all values for Ultraschall's track-color "Sonic Rainboom" 



^ Reaper version 5.95Lua version 5.3 IsValidColorTable

Functioncall:

boolean retval = ultraschall.IsValidColorTable(array ColorTable)

Description:
Checks for valid color-tables.

returns false in case of an error

Returnvalues:
 boolean retval true, if it's a valid ColorTable; false, if it's not a valid ColorTable 

Parameters:
 array ColorTable a table to check for being a valid ColorTable 


^ Reaper version 5.95Lua version 5.3 ApplyColorTableToTrackColors

Functioncall:

boolean retval = ultraschall.ApplyColorTableToTrackColors(array ColorTable, integer Spread, integer StartTrack, integer EndTrack)

Description:
Apply a ColorTable to Tracks, to colorize MediaTracks

ColorTables can be created by CreateColorTable

returns false in case of an error

Returnvalues:
 boolean retval true, adjusting track-colors was successful; false, adjusting track-colors was unsuccessful 

Parameters:
 array ColorTable the ColorTable to apply to the MediaTrackColors 
 integer Spread 0, apply ColorTable once; will return false, if fewer colors are in ColorTable available than tracks in the project
nil or 1, repeat the colors from the ColorTable over and over again over the tracks; means: if you have 10 tracks and 5 colors, the colors will fill track 1 to 5 and then again track 6 to 10
2, spread the colors from the ColorTable over all tracks equally 
 integer StartTrack the first track to colorize; nil, to use the first track in project 
 integer EndTrack the last track to colorize; nil, to use the last track in project 


^ Reaper version 5.95Lua version 5.3 ApplyColorTableToItemColors

Functioncall:

boolean retval = ultraschall.ApplyColorTableToItemColors(array ColorTable, integer Spread, MediaItemArray MediaItemArray)

Description:
Apply a ColorTable to MediaItems in a MediaItemArray, to colorize MediaItems

ColorTables can be created by CreateColorTable

returns false in case of an error

Returnvalues:
 boolean retval true, adjusting item-colors was successful; false, adjusting item-colors was unsuccessful 

Parameters:
 array ColorTable the ColorTable to apply to the MediaItemColors 
 integer Spread 0, apply ColorTable once; will return false, if fewer colors are in ColorTable available than items in the MediaItemArray
nil or 1, repeat the colors from the ColorTable over and over again over the item; means: if you have 10 items and 5 colors, the colors will fill items 1 to 5 and then again items 6 to 10
2, spread the colors from the ColorTable over all items equally 
 MediaItemArray MediaItemArray an array with all the MediaItems to colorize 


^ Reaper version 5.95Lua version 5.3 ChangeColorBrightness

Functioncall:

integer red, integer green, integer blue, boolean retval = ultraschall.ChangeColorBrightness(integer r, integer g, integer b, integer bright_r, optional integer bright_g, optional integer bright_b)

Description:
Changes brightness of a colorvalue. If you only set brightr without setting brightg and brightb, then the value for brightr will affect g and b as well.

If a color-value becomes >255 or <0, it will be set to 255 or 0 respectively.

returns color-value 0,0,0 and retval=false in case of an error

Returnvalues:
 integer red the new red-value 
 integer green the new green-value 
 integer blue the new blue-value 
 boolean retval true, color-calculation was successful; false, color-calculation was unsuccessful 

Parameters:
 integer r the red-value to be changed 
 integer g the green-value to be changed 
 integer b the blue-value to be changed 
 integer bright_r the change in brightness for the red-color; positive, brighter; negative, darker 
 optional integer bright_g the change in brightness for the green-color; positive, brighter; negative, darker; if nil, value in bright_r will be used 
 optional integer bright_b the change in brightness for the blue-color; positive, brighter; negative, darker; if nil, value in bright_r will be used 


^ Reaper version 5.95Lua version 5.3 ChangeColorContrast

Functioncall:

integer red, integer green, integer blue, boolean retval = ultraschall.ChangeColorContrast(integer r, integer g, integer b, integer Minimum_r, optional integer Maximum_r, optional integer Minimum_g, optional integer Maximum_g, optional integer Minimum_b, optional integer Maximum_b)

Description:
Changes contrast of a colorvalue.

Minimum will set the new minimal, Maximum will set the new maximum-brightness-level.
If you set Minimum to 0 and Maximum to 255, contrast will not change.

The lower you set Minimum/Maximum, the darker it becomes; the higher, the brighter it becomes.
The farther away Minimum is from Maximum, the stronger the contrast becomes; the closer Minimum is to Maximum, the weaker the contrast becomes.

If you only set Minimum_r and Maximum_r, then these values will be applied to g and b too.

If you omit/set to nil a Maximum-value; it's default value will be 255.

If a color-value becomes >255 or <0, it will be set to 255 or 0 respectively.

returns color-value 0,0,0 and retval=false in case of an error

Returnvalues:
 integer red the new red-value 
 integer green the new green-value 
 integer blue the new blue-value 
 boolean retval true, color-calculation was successful; false, color-calculation was unsuccessful 

Parameters:
 integer r the red-value to be changed 
 integer g the green-value to be changed 
 integer b the blue-value to be changed 
 integer Minimum_r the new minimum brightness of the contrast-range of the red-color 
 optional integer Maximum_r the new maximum brightness of the contrast-range of the red-color; if nil, it will be seen as 255 
 optional integer Minimum_g the new minimum brightness of the contrast-range of the green-color; if nil, it will use the value of Minimum_r 
 optional integer Maximum_g the new maximum brightness of the contrast-range of the green-color; if nil, it will be seen as 255 
 optional integer Minimum_b the new minimum brightness of the contrast-range of the blue-color; if nil, it will use the value of Minimum_r 
 optional integer Maximum_b the new maximum brightness of the contrast-range of the blue-color; if nil, it will be seen as 255 


^ Reaper version 5.95Lua version 5.3 ChangeColorSaturation

Functioncall:

integer red, integer green, integer blue, number median, boolean retval = ultraschall.ChangeColorSaturation(integer r, integer g, integer b, integer delta)

Description:
Changes saturation of a colorvalue by delta.

If a color-value becomes >255 or <0, it will be set to 255 or 0 respectively.

returns color-value 0,0,0 and retval=false in case of an error

Returnvalues:
 integer red the new red-value 
 integer green the new green-value 
 integer blue the new blue-value 
 number median the median-value, calculated from the the old red, green and blue, values (red+green+blue)/3, which is the basis for the brightness of the unsaturated value 
 boolean retval true, color-calculation was successful; false, color-calculation was unsuccessful 

Parameters:
 integer r the red-value to be changed 
 integer g the green-value to be changed 
 integer b the blue-value to be changed 
 integer delta the saturation/desaturation-value; negative, desaturates color; positive, saturates color 


^ Reaper version 5.95Lua version 5.3 ConvertColorToMac

Functioncall:

integer mac_colorvalue, boolean retval = ultraschall.ConvertColorToMac(integer red, integer green, integer blue)

Description:
Converts a colorvalue to the correct-native-colorvalue for Mac, no matter if you're using Mac, Windows or Linux.

returns 0, false in case of an error

Returnvalues:
 integer mac_colorvalue the Mac-native-colorvalue 
 boolean retval true, if conversion succeeded; false, if conversion failed 

Parameters:
 integer red the red-value of the color 
 integer green the green-value of the color 
 integer blue the blue-value of the color 


^ Reaper version 5.95Lua version 5.3 ConvertColorToWin

Functioncall:

integer win_linux_colorvalue, boolean retval = ultraschall.ConvertColorToWin(integer red, integer green, integer blue)

Description:
Converts a colorvalue to the correct-native-colorvalue for Windows/Linux, no matter if you're using Mac, Windows or Linux.

returns 0, false in case of an error

Returnvalues:
 integer win_linux_colorvalue the Windows/Linux-native-colorvalue 
 boolean retval true, if conversion succeeded; false, if conversion failed 

Parameters:
 integer red the red-value of the color 
 integer green the green-value of the color 
 integer blue the blue-value of the color 


^ Reaper version 5.95Lua version 5.3 ConvertColorFromMac

Functioncall:

integer red, integer green, integer blue, boolean retval = ultraschall.ConvertColorFromMac(integer mac_colorvalue)

Description:
Converts a native-colorvalue to the correct rgb-color-values for Mac, no matter if you're using Mac, Windows or Linux.

returns 0, 0, 0, false in case of an error

Returnvalues:
 integer red the red-value of the color 
 integer green the green-value of the color 
 integer blue the blue-value of the color 
 boolean retval true, if conversion succeeded; false, if conversion failed 

Parameters:
 integer mac_colorvalue the Mac-native-colorvalue 


^ Reaper version 5.95Lua version 5.3 ConvertColorFromWin

Functioncall:

integer red, integer green, integer blue, boolean retval = ultraschall.ConvertColorFromWin(integer win_colorvalue)

Description:
Converts a native-colorvalue to the correct rgb-color-values for Windows/Linux, no matter if you're using Mac, Windows or Linux.

returns 0, 0, 0, false in case of an error

Returnvalues:
 integer red the red-value of the color 
 integer green the green-value of the color 
 integer blue the blue-value of the color 
 boolean retval true, if conversion succeeded; false, if conversion failed 

Parameters:
 integer win_colorvalue the Windows/Linux-native-colorvalue 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 SetIniFileExternalState

Functioncall:

boolean retval = ultraschall.SetIniFileExternalState(string section, string key, string value, string ini_filename_with_path)

Description:
Sets an external state into ini_filename_with_path. Returns false, if it doesn't work.

Returnvalues:
 boolean retval true, if setting the state was successful; false, if setting was unsuccessful 

Parameters:
 string section section of the external state. No = allowed! 
 string key key of the external state. No = allowed! 
 string value value for the key 
 string filename_with_path filename of the ini-file 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetIniFileExternalState

Functioncall:

string value = ultraschall.GetIniFileExternalState(string section, string key, string ini_filename_with_path)

Description:
Gets an external state from ini_filename_with_path. Returns -1, if the file does not exist or parameters are invalid.

Returnvalues:
 integer entrylength the length of the returned value 
 string value the value stored in a section->key in a configuration-file 

Parameters:
 string section section of the external state 
 string key key of the external state. No = allowed! 
 string filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 CountIniFileExternalState_sec

Functioncall:

integer sectioncount = ultraschall.CountIniFileExternalState_sec(string ini_filename_with_path)

Description:
Count external-state-[sections] from an ini-configurationsfile.

Returns -1, if the file does not exist.

Returnvalues:
 integer sectioncount number of sections within an ini-configuration-file 

Parameters:
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 CountIniFileExternalState_key

Functioncall:

integer keyscount = ultraschall.CountIniFileExternalState_key(string section, string ini_filename_with_path)

Description:
Count external-state-keys within a specific section, in a ini_filename_with_path.

Returns -1, if file does not exist.

Returnvalues:
 integer keyscount number of keys with section within an ini-configuration-file 

Parameters:
 string section the section within the ini-filename 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 EnumerateIniFileExternalState_sec

Functioncall:

string sectionname = ultraschall.EnumerateIniFileExternalState_sec(integer number_of_section, string ini_filename_with_path)

Description:
Returns the numberth section in an ini_filename_with_path.

Returns nil, in case of an error.

Returnvalues:
 string sectionname the name of the numberth section in the ini-file 

Parameters:
 integer number_of_section the section within the ini-filename; 1, for the first section 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 EnumerateIniFileExternalState_key

Functioncall:

string keyname = ultraschall.EnumerateIniFileExternalState_key(string section, integer number, string ini_filename_with_path)

Description:
Returns the numberth key within a section in an ini_filename_with_path.

Returns nil, in case of an error.

Returnvalues:
 string keyname the name of the numberth key within section in the ini-file 

Parameters:
 string section the name of the section 
 integer number the number of the key within a section within the ini-filename, with 1 for the first key in the section 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 CountSectionsByPattern

Functioncall:

integer number_of_sections, string sectionnames = ultraschall.CountSectionsByPattern(string pattern, string ini_filename_with_path)

Description:
Counts the number of sections within an ini-file, that fit a specific pattern.

Uses "pattern"-string to determine, how often a section with a certain pattern exists. Good for sections, that have a number in them, like [section1], [section2], [section3].
Returns the number of sections, that include that pattern as well as a string, that includes the names of all such sections, separated by a comma.

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns -1, in case of an error.

Returnvalues:
 integer number_of_sections the number of sections, that fit the pattern 
 string sectionnames a string, like: [section1],[section8],[section99] 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 CountKeysByPattern

Functioncall:

integer number_of_keys, string sections_and_keys = ultraschall.CountKeysByPattern(string pattern, string ini_filename_with_path)

Description:
Counts the number of keys within an ini-file, that fit a specific pattern.

Uses "pattern"-string to determine, how often a key with a certain pattern exists. Good for keys, that have a number in them, like key1, key2, key3.
Returns the number of keys, that include the pattern, as well as a string with all [sections] that contain keys= with a pattern, separated by a , i.e. [section1],key1=,key2=,key3=,[section2],key1=,key4=

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns -1, in case of an error.

Returnvalues:
 integer number_of_keys the number of keys, that fit the pattern 
 string sections_and_keys a string, like: [section1],Key1=,Key2=,Key3=[section2],Key7= 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 CountValuesByPattern

Functioncall:

integer number_of_values, string sections_and_keys = ultraschall.CountValuesByPattern(string pattern, string ini_filename_with_path)

Description:
Counts the number of values within an ini-file, that fit a specific pattern.

Uses "pattern"-string to determine, how often a value with a certain pattern exists. Good for values, that have a number in them, like value1, value2, value3
Returns the number of values, that include that pattern as well as a string, that contains the [sections] and the keys= and values , the latter that contain the pattern, separated by a comma
e.g. [section1], key1=, value, key4=, value, [section4], key2=, value

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns -1, in case of an error.

Returnvalues:
 integer number_of_values the number of values, that fit the pattern 
 string sections_keys_values a string, like: [section1],key1=,value,key4=,value,[section4],key2=,value 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 EnumerateSectionsByPattern

Functioncall:

string sectionname = ultraschall.EnumerateSectionsByPattern(string pattern, integer id, string ini_filename_with_path)

Description:
Returns the numberth section within an ini-file, that fits the pattern, e.g. the third section containing "hawaii" in it.

Uses "pattern"-string to determine if a section contains a certain pattern. Good for sections, that have a number in them, like section1, section2, section3
Returns the section that includes that pattern as a string, numbered by id.

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns nil, in case of an error.

Returnvalues:
 string sectionname a string, that contains the sectionname 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 integer id the number of section, that contains pattern 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 EnumerateKeysByPattern

Functioncall:

string keyname = ultraschall.EnumerateKeysByPattern(string pattern, string section, integer id, string ini_filename_with_path)

Description:
Returns the numberth key within a section in an ini-file, that fits the pattern, e.g. the third key containing "hawaii" in it.

Uses "pattern"-string to determine if a key contains a certain pattern. Good for keys, that have a number in them, like key1=, key2=, key3=
Returns the key that includes that pattern as a string, numbered by id.

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns nil, in case of an error.

Returnvalues:
 string keyname a string, that contains the keyname 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 string section the section, in which to look for the key 
 integer id the number of key, that contains pattern 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 EnumerateValuesByPattern

Functioncall:

string value, string keyname = ultraschall.EnumerateValuesByPattern(string pattern, string section, string id, string ini_filename_with_path)

Description:
Returns the numberth value(and it's accompanying key) within a section in an ini-file, that fits the pattern, e.g. the third value containing "hawaii" in it.

Uses "pattern"-string to determine if a value contains a certain pattern. Good for values, that have a number in them, like value1, value2, value3
Returns the value that includes that pattern as a string, numbered by id, as well as it's accompanying key.

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returns nil, in case of an error.

Returnvalues:
 string value the value that contains the pattern 
 string keyname a string, that contains the keyname 

Parameters:
 string pattern the pattern itself. Case sensitive. 
 string section the section, in which to look for the key 
 integer id the number of key, that contains pattern 
 string ini_filename_with_path filename of the ini-file 


^ Reaper version 5.40Lua version 5.3 GetKBIniFilepath

Functioncall:

string kb_ini_path = ultraschall.GetKBIniFilepath()

Description:
Returns the path and filename of the Reaper-kb.ini-file.

Returnvalues:
 string kb_ini_path path and filename of the reaper-kb.ini 



^ Reaper version 5.40Lua version 5.3 CountKBIniActions

Functioncall:

integer actions = ultraschall.CountKBIniActions(string filename_with_path)

Description:
Count the number of "ACT"-Actions of the Reaper-kb.ini-file.
Returns -1, if no such file exists.

Returnvalues:
 integer actions number of actions in the reaper-kb.ini 



^ Reaper version 5.40Lua version 5.3 CountKBIniScripts

Functioncall:

integer scripts = ultraschall.CountKBIniScripts(string filename_with_path)

Description:
Count the number of "SCR"-Scripts of the Reaper-kb.ini-file.
Returns -1, if no such file exists.

Returnvalues:
 integer scripts number of scripts in the reaper-kb.ini 



^ Reaper version 5.40Lua version 5.3 CountKBIniKeys

Functioncall:

integer keys = ultraschall.CountKBIniKeys(string filename_with_path)

Description:
Count the number of "KEY"-Keybindings of the Reaper-kb.ini-file.
Returns -1, if no such file exists.

Returnvalues:
 integer keys number of keys in the reaper-kb.ini 



^ Reaper version 5.40Lua version 5.3 GetKBIniActions

Functioncall:

integer consolidate, integer section, string ActionCommandID, string description, string ActionsToBeExecuted = ultraschall.GetKBIniActions(string filename_with_path, integer idx)

Description:
Get the states of "ACT"-Action number idx. Returns consolidate, section, ActionCommandID, description, ActionsToBeExecuted.
Returns -1, if no such entry or file exists.

Returnvalues:
 integer consolidate consolidate-state
1 consolidate undo points,
2 show in Actions-Menu,
3 consolidate undo points AND show in Actions Menu;
maybe 4 and higher? 

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 integer idx the number of the action to get, beginning with 1 for the first one 


^ Reaper version 5.40Lua version 5.3 GetKBIniScripts

Functioncall:

integer terminateinstance, integer section, string ActionCommandID, string description, string scriptfile = ultraschall.GetKBIniScripts(string filename_with_path, integer idx)

Description:
Get the states of "SCR"-Scripts number idx. Returns terminateinstance, section, ActionCommandID, description, scriptfile.
Returns -1, if no such entry or file exists.

Returnvalues:
 integer terminateinstance the state of terminating instances
4 - Dialogwindow appears(Terminate, New Instance, Abort), if another instance of a given script is started, that's already running
260 - always Terminate Instances, when an instance of the script is already running
516 - always start a New Instance of the script already running 

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 integer idx the number of the action to get, beginning with 1 for the first one 


^ Reaper version 5.40Lua version 5.3 GetKBIniKeys

Functioncall:

integer keytype_modifier_midichan, integer key_midinote, string ActionCommandID, integer section = ultraschall.GetKBIniKeys(string filename_with_path, integer idx)

Description:
Get the states of "KEY"-Keybinding-number idx, for MIDI/Key-bindings. Returns keytype_modifier_midichan, key_midinote, ActionCommandID, section.

For a detailed description in how KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini.

Returns -1, if no such entry or file exists.
Does not return OSC-keybindings, as they are stored in OSC/reaper-osc-actions.ini !
returns -1 in case of an error

Returnvalues:
 integer keytype_modifier_midichan Type of Keytype, modifier or midichannel
For a detailed description in how keytype/modifier in KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini
 integer key_midinote the key(like ASCII-Codes) or midinote.
For a detailed description in how key/midinotes in KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 integer idx the number of the action to get, beginning with 1 for the first one 


^ Reaper version 5.40Lua version 5.3 GetKBIniActionsID_ByActionCommandID

Functioncall:

string retval = ultraschall.GetKBIniActionsID_ByActionCommandID(filename_with_path, ActionCommandID)

Description:
Returns the indexnumber(s) of actions by ActionCommandIDs within a reaper-kb.ini.
Returns -1, if no such entry or file exists.

Returnvalues:
 string retval the ids of actions with ActionCommandID, separated by a , 

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 string ActionCommandID the ActionCommandID 


^ Reaper version 5.40Lua version 5.3 GetKBIniScripts_ByActionCommandID

Functioncall:

string retval = ultraschall.GetKBIniScripts_ByActionCommandID(filename_with_path, ActionCommandID)

Description:
Returns the indexnumber(s) of scripts by ActionCommandIDs within a reaper-kb.ini.
Returns nil, if no such entry or file exists.

Returnvalues:
 string retval the ids of scripts with ActionCommandID, separated by a , 

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 string ActionCommandID the ActionCommandID 


^ Reaper version 5.40Lua version 5.3 GetKBIniKeys_ByActionCommandID

Functioncall:

string retval = ultraschall.GetKBIniKeys_ByActionCommandID(filename_with_path, ActionCommandID)

Description:
Returns the indexnumber(s) of keys by ActionCommandIDs within a reaper-kb.ini.
Returns nil, if no such entry or file exists.

Returnvalues:
 string retval the ids of keys with ActionCommandID, separated by a , 

Parameters:
 string filename_with_path path and filename of the reaper-kb.ini 
 string ActionCommandID the ActionCommandID 


^ Reaper version 5.40Lua version 5.3 SetKBIniActions

Functioncall:

boolean retval, integer actionnumber = ultraschall.SetKBIniActions(string filename_with_path, integer consolidate, integer section, string ActionCommandID, string Description, string ActionCommandIDs, boolean replace)

Description:
Adds or sets(if it already exists) an "ACT"-action of a reaper-kb.ini.
Returns true/false when adding or setting worked/didn't work, as well as the action-number within the reaper-kb.ini

Needs a restart of Reaper for this change to take effect!

Returnvalues:
 boolean retval true, if adding/setting worked, false if it didn't 
 integer actionnumber the entrynumber within the reaper-kb.ini of this action 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer consolidate consolidation state of this action
1 consolidate undo points,
2 show in Actions-Menu,
3 consolidate undo points AND show in Actions Menu;
maybe 4 and higher? 


^ Reaper version 5.40Lua version 5.3 SetKBIniScripts

Functioncall:

boolean retval, integer scriptnumber = ultraschall.SetKBIniScripts(string filename_with_path, integer terminate, integer section, string ActionCommandID, string Description, string Scriptname, boolean replace)

Description:
Adds or sets(if it already exists) an "SCR"-script of a reaper-kb.ini.
Returns true/false when adding or setting worked/didn't work, as well as the script-number within the reaper-kb.ini

Needs a restart of Reaper for this change to take effect!

Returnvalues:
 boolean retval true, if adding/setting worked, false if it didn't 
 integer scriptnumber the entrynumber within the reaper-kb.ini of this script 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer terminate_state state of handling mulitple running scripts
4 - Dialogwindow appears(Terminate, New Instance, Abort), if another instance of a given script is started, that's already running
260 - always Terminate Instances, when an instance of the script is already running
516 - always start a New Instance of the script already running 


^ Reaper version 5.40Lua version 5.3 SetKBIniKeys

Functioncall:

boolean retval, integer keynumber = ultraschall.SetKBIniKeys(string filename_with_path, integer keytype_modifier_midichan, integer key_midinote, string ActionCommandID, integer section, boolean replace)

Description:
Adds or sets(if it already exists) a "KEY"-key of a reaper-kb.ini.
Returns true/false when adding or setting worked/didn't work, as well as the keybinding-number within the reaper-kb.ini.
Additional keybindings cannot share the same keytype_modifier_midichan, key_midinote and section at the same time, as every such keybind must be unique.

For a detailed description in how KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini.

Does not support OSC-keybindings, as they are stored in OSC/reaper-osc-actions.ini !

Needs a restart of Reaper for this change to take effect!

returns false in case of an error

Returnvalues:
 boolean retval true, if adding/setting worked, false if it didn't 
 integer scriptnumber the entrynumber within the reaper-kb.ini of this script 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer keytype_modifier_midichan Type of Keytype, modifier or midichannel
For a detailed description in how keytype/modifier in KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini
 integer key_midinote the key(like ASCII-Codes) or midinote.
For a detailed description in how key/midinotes in KEY-entries work, refer to Reaper-Filetype-Descriptions.html#Reaper-kb.ini
 string ActionCommandID the ActionCommandID associated with this shortcut. 
 integer section the section, in which this shortcut is used
0 - Main
100 - Main (alt recording)
32060 - MIDI Editor
32061 - MIDI Event List Editor
32062 - MIDI Inline Editor
32063 - Media Explorer 


^ Reaper version 5.40Lua version 5.3 DeleteKBIniActions

Functioncall:

boolean retval = ultraschall.DeleteKBIniActions(string filename_with_path, integer idx)

Description:
Deletes an "ACT"-action of a reaper-kb.ini.
Returns true/false when deleting worked/didn't work.

Needs a restart of Reaper for this change to take effect!

Returnvalues:
 boolean retval true, if deleting worked, false if it didn't 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer idx indexnumber of the action within the reaper-kb.ini 


^ Reaper version 5.40Lua version 5.3 DeleteKBIniScripts

Functioncall:

boolean retval = ultraschall.DeleteKBIniScripts(string filename_with_path, integer idx)

Description:
Deletes an "SCR"-script of a reaper-kb.ini.
Returns true/false when deleting worked/didn't work.

Needs a restart of Reaper for this change to take effect!

Returnvalues:
 boolean retval true, if deleting worked, false if it didn't 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer idx indexnumber of the script within the reaper-kb.ini 


^ Reaper version 5.40Lua version 5.3 DeleteKBIniKeys

Functioncall:

boolean retval = ultraschall.DeleteKBIniKeys(string filename_with_path, integer idx)

Description:
Deletes a "KEY"-keybinding of a reaper-kb.ini.
Returns true/false when deleting worked/didn't work.

Needs a restart of Reaper for this change to take effect!

Returnvalues:
 boolean retval true, if deleting worked, false if it didn't 

Parameters:
 string filename_with_path filename with path for the reaper-kb.ini 
 integer idx indexnumber of the keybinding within the reaper-kb.ini 


^ Reaper version 5.965Lua version 5.3 GetIniFileValue

Functioncall:

integer length_of_value, string value = ultraschall.GetIniFileValue(string section, string key, string errval, string inifile)

Description:
Gets a value from a key of an ini-file

returns -1 in case of an error

Returnvalues:
 integer length_of_value the length of the value in bytes 
 string value the value from the key-value-pair 



^ Reaper version 5.965SWS version 2.10.0.1Lua version 5.3 SetIniFileValue

Functioncall:

integer retval = ultraschall.SetIniFileValue(string section, string key, string value, string inifile)

Description:
Sets a value of a key in an ini-file

returns -1 in case of an error

Returnvalues:
 integer retval -1, in case of an error; 1, in case of success 



^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 QueryKeyboardShortcutByKeyID

Functioncall:

string Shortcutname = ultraschall.QueryKeyboardShortcutByKeyID(integer modifier, integer key)

Description:
Returns the name of the shortcut of the modifier-key-values, as stored in the KEY-entries within the reaper-kb.ini

That way, you can take a KEY-entry from the reaper-kb.ini, like

KEY 1 65 UltraschallPlayFromEditcursor_Position 0

Extract the modifier and key-values(1 and 65 in the example) and pass them to this function.
You will get returned "A" as 1 and 65 is the keyboard-shortcut-code for the A-key.

Only necessary for those, who try to read keyboard-shortcuts directly from the reaper-kb.ini to display them in some way.

returns nil in case of an error

Returnvalues:
 string Shortcutname the actual name of the shortcut, like "A" or "F1" or "Ctrl+Alt+Shift+Win+PgUp". 

Parameters:
 integer modifier the modifier value, which is the first one after KEY in a KEY-entry in the reaper-kb.ini-file 
 integer key the key value, which is the second one after KEY in a KEY-entry in the reaper-kb.ini-file 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAcidImport

Functioncall:

integer retval = ultraschall.GetSetConfigAcidImport(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "When importing media"-dropdownlist, as set in the Media with embedded tempo information-section in Preferences -> Video/REX/Misc
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "acidimport", as well as the reaper.ini-entry "REAPER -> acidimport"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
-1, an error occured
  0, Adjust media to project tempo
  1, Import media at source tempo
  2, Always prompt when importing media with embedded tempo 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
-1, an error occured
  0, Adjust media to project tempo
  1, Import media at source tempo
  2, Always prompt when importing media with embedded tempo 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigActionMenu

Functioncall:

integer retval = ultraschall.GetSetConfigActionMenu(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Show recent actions"-entry, as set in the Actions-menu.
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "actionmenu", as well as the reaper.ini-entry "REAPER -> actionmenu"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, don't show recent actions - unchecked
1, show recent actions - checked 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, don't show recent actions - unchecked
1, show recent actions - checked 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAdjRecLat

Functioncall:

integer retval = ultraschall.GetSetConfigAdjRecLat(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Use audio driver reported latency"-checkbox, as set in Preferences -> Recording
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "adjreclat", as well as the reaper.ini-entry "REAPER -> adjreclat"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, don't use audio driver reported latency(off) - unchecked
1, don't use audio driver reported latency(on) - checked 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, don't use audio driver reported latency(off) - unchecked
1, don't use audio driver reported latency(on) - checked 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAdjRecManLat

Functioncall:

integer retval = ultraschall.GetSetConfigAdjRecManLat(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Output manual offset-samples"-inputbox, as set in Preferences -> Recording
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "adjrecmanlat", as well as the reaper.ini-entry "REAPER -> adjrecmanlat"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value; 0 to 2147483647; in samples 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value; 0 to 2147483647; in samples 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAfxCfg

Functioncall:

integer retval = ultraschall.GetSetConfigAfxCfg(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of the audioformat for "Apply FX, Glue, Freeze, etc", as set in the Project Settings->Media-dialog
Only sets the format, not the individual format-settings(like bitrate, etc)!
To keep the setting for new projects as standard-setting after restart of Reaper, set persist=true

This alters the configuration-variable "afxcfg", as well as the reaper.ini-entry "REAPER -> afxcfg"

returns -1 in case of an error

Returnvalues:
 integer retval the current/newly set audioformat
0, not set yet
1179012432, Video (ffmpeg/libav encoder)
1195984416, Video (GIF)
1279477280, Video (LCF)
1332176723, OGG Opus
1634297446, AIFF
1684303904, DDP
1718378851, FLAC
1769172768, Audio CD Image(CUE/BIN format)
1836069740, MP3 (encoder by LAME project)
1869047670, OGG Vorbis
2002876005, WAV
2004250731, WavPack lossless compressor 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the new set audioformat
1179012432, Video (ffmpeg/libav encoder)
1195984416, Video (GIF)
1279477280, Video (LCF)
1332176723, OGG Opus
1634297446, AIFF
1684303904, DDP
1718378851, FLAC
1769172768, Audio CD Image(CUE/BIN format)
1836069740, MP3 (encoder by LAME project)
1869047670, OGG Vorbis
2002876005, WAV
2004250731, WavPack lossless compressor 
 boolean persist true, this setting will be standard-setting for new projects after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAllStereoPairs

Functioncall:

integer retval = ultraschall.GetSetConfigAllStereoPairs(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Show non-standard stereo channel pairs(i.e Input2/Input3 etc)"-checkbox in the Channel naming/mapping-section, as set in Preferences -> Audio
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "allstereopairs", as well as the reaper.ini-entry "REAPER -> allstereopairs"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, don't show non standard stereo channel pairs(off) - unchecked
1, show non standard stereo channel pairs(on) - checked 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, don't show non standard stereo channel pairs(off) - unchecked
1, show non standard stereo channel pairs(on) - checked 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAlwaysAllowKB

Functioncall:

integer retval = ultraschall.GetSetConfigAlwaysAllowKB(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Allow keyboard commands even when mouse-editing"-checkbox, as set in Preferences -> General ->Advanced UI/system tweaks
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "alwaysallowkb", as well as the reaper.ini-entry "REAPER -> alwaysallowkb"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value; 0(don't allow) to 1(allow) 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value; 0 to 1 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigApplyFXTail

Functioncall:

integer retval = ultraschall.GetSetConfigApplyFXTail(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Tail length when using Apply FX to items"-inputbox in milliseconds, as set in Preferences -> Media
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "applyfxtail", as well as the reaper.ini-entry "REAPER -> applyfxtail"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value; 0 to 2147483647 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value; 0 to 2147483647 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAdjRecManLatIn

Functioncall:

integer retval = ultraschall.GetSetConfigAdjRecManLatIn(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Input manual offset-samples"-inputbox, as set in Preferences -> Recording
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "adjrecmanlatin", as well as the reaper.ini-entry "REAPER -> adjrecmanlatin"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAudioPrShift

Functioncall:

integer retval = ultraschall.GetSetConfigAudioPrShift(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Preserve pitch in audio items when changing master playrate", as set in the contextmenu of the master-playrate in the transport-area as well as toggled by action 40671(all sections)
This is a project-setting. That means, setting persist to true will have an effect on new projects create, but only after you restarted Reaper!

This alters the configuration-variable "audioprshift", as well as the reaper.ini-entry "REAPER -> audioprshift"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, don't preserve pitch - unchecked
1, preserve pitch - checked 

Parameters:
 boolean set true, set a new value; false, return the current value
0, don't preserve pitch - unchecked
1, preserve pitch - checked 
 integer setting the current/new setting-value 
 boolean persist true, this setting will be kept for new projects, but only after restart of Reaper; false, old standard-project-setting will be kept 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAudioCloseStop

Functioncall:

integer retval = ultraschall.GetSetConfigAudioCloseStop(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Close audio device when stopped and active(less responsive)"-checkbox, as set in Preferences -> Audio  
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "audioclosestop", as well as the reaper.ini-entry "REAPER -> audioclosestop"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAudioThreadPr

Functioncall:

integer retval = ultraschall.GetSetConfigAudioThreadPr(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Audio thread priority"-dropdownlist, as set in Preferences -> Device  
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "audiothreadpr", as well as the reaper.ini-entry "REAPER -> audiothreadpr"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
-1, ASIO Default / MMCSS Pro Audio / Time Critical  
0, Normal  
1, Above normal  
2, Highest  
3, Time Critical  
4, MMCSS / Time Critical   

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
-1, ASIO Default / MMCSS Pro Audio / Time Critical  
0, Normal  
1, Above normal  
2, Highest  
3, Time Critical  
4, MMCSS / Time Critical   
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAudioCloseTrackWnds

Functioncall:

integer retval = ultraschall.GetSetConfigAudioCloseTrackWnds(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Allow snap grid/track envelope/routing windows to stay open"-checkbox in Preferences -> General -> Advanced UI/system tweaks.  
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "autoclosetrackwnds", as well as the reaper.ini-entry "REAPER -> autoclosetrackwnds"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, it is allowed(on) - checked  
1, it is not allowed(off) - unchecked   

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, it is allowed(on) - checked  
1, it is not allowed(off) - unchecked   
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAutoMute

Functioncall:

integer retval = ultraschall.GetSetConfigAutoMute(boolean set, integer setting, boolean persist)

Description:
Gets/Sets the value of "Automute-dropdownlist in the section Mute"-settings, as set in Preferences -> Mute/Solo
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "automute", as well as the reaper.ini-entry "REAPER -> automute"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, No automatic muting  
1, Automatically mute master track  
2, Automatically mute any track   

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, No automatic muting  
1, Automatically mute master track  
2, Automatically mute any track   
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAutoMuteFlags

Functioncall:

integer retval = ultraschall.GetSetConfigAutoMuteFlags(boolean set, integer setting, boolean persist)

Description:
Sets the "Reset on playback start"-checkbox in section Mute-settings, as set in Preferences -> Mute/Solo  
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "automuteflags", as well as the reaper.ini-entry "REAPER -> automuteflags"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, Reset on playback start(on) - checked  
1, Reset on playback start(off) - unchecked   

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, Reset on playback start(on) - checked  
1, Reset on playback start(off) - unchecked   
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAutoSaveInt

Functioncall:

integer retval = ultraschall.GetSetConfigAutoSaveInt(boolean set, integer setting, boolean persist)

Description:
Sets the "Every x minutes"-inputbox from the Project saving-section, as set in Preferences -> Project.
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "autosaveint", as well as the reaper.ini-entry "REAPER -> autosaveint"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0 to 2147483647; in seconds; higher values become negative 

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0 to 2147483647 in seconds 
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetSetConfigAutoSaveMode

Functioncall:

integer retval = ultraschall.GetSetConfigAutoSaveMode(boolean set, integer setting, boolean persist)

Description:
Sets the "Every x minutes"-dropdownlist from the Project saving-section, as set in Preferences -> Project.
To keep the setting after restart of Reaper, set persist=true

This alters the configuration-variable "autosavemode", as well as the reaper.ini-entry "REAPER -> autosavemode"

returns -1 in case of an error

Returnvalues:
 integer retval the current/new setting-value
0, when not recording  
1, when stopped  
2, any time   

Parameters:
 boolean set true, set a new value; false, return the current value 
 integer setting the current/new setting-value
0, when not recording  
1, when stopped  
2, any time   
 boolean persist true, this setting will be kept after restart of Reaper; false, setting will be lost after exiting Reaper 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_OfflineOnlineMode

Functioncall:

boolean retval = ultraschall.SetRender_OfflineOnlineMode(integer mode)

Description:
sets the current mode of the offline/online-render-dropdownlist from the Render to File-dialog

Returns false in case of an error

Returnvalues:
 boolean retval true, setting it was successful; false, setting it was unsuccessful 

Parameters:
 integer mode the mode, that you want to set
0, Full-speed Offline
1, 1x Offline
2, Online Render
3, Offline Render (Idle)
4, 1x Offline Render (Idle) 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_OfflineOnlineMode

Functioncall:

integer mode = ultraschall.GetRender_OfflineOnlineMode()

Description:
gets the current mode of the offline/online-render-dropdownlist from the Render to File-dialog

Returnvalues:
 integer mode the mode, that is set
0, Full-speed Offline
1, 1x Offline
2, Online Render
3, Offline Render (Idle)
4, 1x Offline Render (Idle) 



^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_ResampleMode

Functioncall:

integer mode = ultraschall.GetRender_ResampleMode()

Description:
gets the current mode of the "Resample mode (if needed)"-dropdownlist from the Render to File-dialog

Returnvalues:
 integer mode the mode, that is set
  0, Medium (64pt Sinc),
  1, Low (Linear Interpolation),
  2, Lowest (Point Sampling),
  3, Good(192pt Sinc),
  4, Better(384pt Sinc),
  5, Fast (IIR + Linear Interpolation),
  6, Fast (IIRx2 + Linear Interpolation),
  7, Fast (16pt sinc) - Default,
  8, HQ (512pt Sinc),
  9, Extreme HQ (768pt HQ Sinc) 



^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_ResampleMode

Functioncall:

boolean retval = ultraschall.SetRender_ResampleMode(integer mode)

Description:
sets the current mode of the "Resample mode (if needed)"-dropdownlist from the Render to File-dialog

Returns false in case of an error

Returnvalues:
 boolean retval true, setting it was successful; false, setting it was unsuccessful 

Parameters:
 integer mode the mode, that is set
  0, Medium (64pt Sinc),
  1, Low (Linear Interpolation),
  2, Lowest (Point Sampling),
  3, Good(192pt Sinc),
  4, Better(384pt Sinc),
  5, Fast (IIR + Linear Interpolation),
  6, Fast (IIRx2 + Linear Interpolation),
  7, Fast (16pt sinc) - Default,
  8, HQ (512pt Sinc),
  9, Extreme HQ (768pt HQ Sinc) 


^ Reaper version 5.941SWS version 2.9.7Lua version 5.3 GetStartNewFileRecSizeState

Functioncall:

boolean start_new_files, boolean offset_file_switches, integer max_rec_size = ultraschall.GetStartNewFileRecSizeState()

Description:
Returns, if Reaper shall start a file after a specified amount of MegaBytes as well, if the fileswitches shall be offset when multitrack-recording and the maximum filesize before starting a new file.

see SetStartNewFileRecSizeState for setting the current settings.

Returnvalues:
 boolean start_new_files true, Reaper starts a new file, when a recorded file reaches max_rec_size; false, files are as long until recording stops 
 boolean offset_file_switches true, When recording multiple tracks, offset file switches for better performance; false, don't offset file-switches 
 integer max_rec_size the maximum length of a recorded file in MegaBytes, before Reaper shall start a new file; only applied when When recording multiple tracks, offset file switches for better performance=true 



^ Reaper version 5.941SWS version 2.9.7Lua version 5.3 SetStartNewFileRecSizeState

Functioncall:

boolean retval = ultraschall.SetStartNewFileRecSizeState(boolean start_new_files, boolean offset_file_switches, integer maxrecsize, boolean persist)

Description:
Sets, if Reaper shall start a file after a specified amount of MegaBytes as well, if the fileswitches shall be offset when multitrack-recording and the maximum filesize before starting a new file.

see GetStartNewFileRecSizeState for getting the current settings.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 boolean start_new_files true, Reaper starts a new file, when a recorded file reaches max_rec_size; false, files are as long until recording stops 
 boolean offset_file_switches true, When recording multiple tracks, offset file switches for better performance; false, don't offset file-switches 
 integer max_rec_size the maximum length of a recorded file in MegaBytes, before Reaper shall start a new file; only applied when When recording multiple tracks, offset file switches for better performance=true 
 boolean persist true, set the setting to reaper.ini so it persists after restarting Reaper; false, set it only for the time, until Reaper is restarted 


^ Reaper version 5.965Lua version 5.3 GetDeferRunState

Functioncall:

boolean retval = ultraschall.GetDeferRunState(integer deferinstance, optional string scriptidentifier)

Description:
returns the run-state of a Ultraschall-defer-loop in a specific scriptinstance

You can either request the runstate of a Defer-deferred-function(set parameter deferinstance to 0).

returns nil in case of an error.

Returnvalues:
 boolean retval true, defer-instance is running; false, defer-instance isn't running 

Parameters:
 integer deferinstance 0, to use the parameter identifier 
 optional string identifier when deferinstance=0 (when using the Defer-function): the identifier of the defer-cycle, you've started with Defer 


^ Reaper version 5.965Lua version 5.3 StopDeferCycle

Functioncall:

boolean retval = ultraschall.StopDeferCycle(string defer_identifier)

Description:
Stops a running ultraschall.Defer-instance of a script-instance.

returns false in case of an error

Returnvalues:
 boolean retval true, stopping this defer-cycle was successful; false, it wasn't successful 

Parameters:
 string defer_identifier the identifier of the defer-cycle of a script-instance 


^ Reaper version 6.02Lua version 5.3 Defer

Functioncall:

boolean retval, optional string defer_identifier = ultraschall.Defer(function func, string deferidentifier, optional integer mode, optional number timer_counter, optional boolean protected)

Description:
runs a custom-defer-cycle, which can be individualized.

You can set, how often this defer-cycle shall be run(every x defer-cycle or every x seconds) and even stop the defer-cycle from in- and outside of the script, using the defer_identifier you have given.

To stop such a defer-cycle, use StopDeferCycle, as long as parameter protected is not set to true!
Important: make the deferidentifier as unique as possible(using guids or similar stuff) to avoid naming conflicts with other defer-cycles using the same identifier.
Otherwise, you risk stopping multiple such defer-loops, when using StopDeferCycle!

For the old Defer1 to Defer20-behavior, try ultraschall.ScriptIdentifier..".defer_scriptXX" as defer-identifier, where XX is a number.

returns false in case of an error (e.g. already 1024 defer-cycles are running in the current script-instance)

Returnvalues:
 boolean retval true, running this defer-cycle was successful; false, it wasn't successful 
 optional string defer_identifier if running this defer-cycle was successful, this holds the defer-identifier you've chosen 

Parameters:
 function func the function, you would love to defer to 
 string deferidentifier an identifier, under which you can access this defer-cycle; make it unique using guids in the name, to avoid name-conflicts! 
 optional integer mode 0 or nil, just run as regular defer-cycle
1, run the defer-cycle only every timer_counter-cycle
2, run the defer-cycle only every timer_counter-seconds 
 optional number timer_counter the timer for the defer-cycle
   mode=1: 1 and higher, the next defer-cycle that shall be used by function func. Use 1 for every cycle, 2 for every second cycle.
               30 cycles are approximately 1 second.
   mode=2: 0 and higher, the amount of seconds to wait, until the function func is run the next time. 
 optional boolean protected true, this defer-cycle is protected from being stopped by StopDeferCycle(); false or nil, you can stop this defer-cycle using StopDeferCycle() 


^ Reaper version 6.02Lua version 5.3 SetDeferCycleSettings

Functioncall:

boolean retval = ultraschall.SetDeferCycleSettings(string deferidentifier, optional integer mode, optional number timer_counter)

Description:
Sets the mode and timing settings of a running ultraschall.Defer-instance. You can set its mode and the timer/counter-values, even from a script, which does not run the defer-instance!

Returns false in case of failure.

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 string deferidentifier an identifier, under which you can access this defer-cycle; make it unique using guids in the name, to avoid name-conflicts!  
 optional integer mode the timing mode, in which the defer-cycle runs
nil, reset to the default-settings of the Defer-Cycle
0, just run as regular defer-cycle
1, run the defer-cycle only every timer_counter-cycle
2, run the defer-cycle only every timer_counter-seconds  
 optional number timer_counter the timer for the defer-cycle
mode=1: 1 and higher, the next defer-cycle that shall be used by function func. Use 1 for every cycle, 2 for every second cycle.
              30 cycles are approximately 1 second.
mode=2: 0 and higher, the amount of seconds to wait, until the function func is run the next time.  


^ Reaper version 6.02Lua version 5.3 GetDeferCycleSettings

Functioncall:

integer mode, integer timer_counter = ultraschall.GetDeferCycleSettings(string deferidentifier)

Description:
Gets a the mode and timing-settings of a currently running ultraschall.Defer()-cycle

Returns nil in case of failure.

Returnvalues:
 integer mode the timing mode, in which the defer-cycle runs
0, just run as regular defer-cycle
1, run the defer-cycle only every timer_counter-cycle
2, run the defer-cycle only every timer_counter-seconds  
 number timer_counter the timer for the defer-cycle
mode=1: 1 and higher, the next defer-cycle that shall be used by function func. Use 1 for every cycle, 2 for every second cycle.
              30 cycles are approximately 1 second.
mode=2: 0 and higher, the amount of seconds to wait, until the function func is run the next time.  

Parameters:
 string deferidentifier an identifier, under which you can access this defer-cycle; make it unique using guids in the name, to avoid name-conflicts!  


^ Reaper version 5.40Lua version 5.3 IsValidEnvStateChunk

Functioncall:

boolean valid = ultraschall.IsValidEnvStateChunk(string EnvelopeStateChunk)

Description:
returns, if a EnvelopeStateChunk is a valid statechunk

returns false, in case of an error

Returnvalues:
 boolean valid true, if the string is a valid statechunk; false, if not a valid statechunk 

Parameters:
 string EnvelopeStateChunk a string to check, if it's a valid EnvelopeStateChunk 


^ Reaper version 5.40Lua version 5.3 MoveTrackEnvelopePointsBy

Functioncall:

integer retval = ultraschall.MoveTrackEnvelopePointsBy(number startposition, number endposition, number moveby, MediaTrack MediaTrack, boolean cut_at_border)

Description:
Moves the envelopepoints between startposition and endposition by moveby in MediaTrack.
It moves all trackenvelope-points for all track-envelopes available.

Does NOT move item-envelopepoints!

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of failure 

Parameters:
 number startposition the startposition in seconds 
 number endposition the endposition in seconds 
 number moveby in seconds, negative values: move toward beginning of project, positive values: move toward the end of project 
 MediaTrack MediaTrack the MediaTrack object of the track, where the EnvelopsPoints shall be moved 
 boolean cut_at_border true, cut envelope-points, that would move outside section between startposition and endposition 


^ Reaper version 5.40Lua version 5.3 GetEnvelopePoint

Functioncall:

number time, number value, integer shape, number tension, boolean selected, number dBVal, array EnvelopePointObject = ultraschall.GetEnvelopePoint(integer Tracknumber, string EnvelopeName, integer idx)

Description:
Returns the values for the idxth envelope point in Tracknumber->EnvelopeName.

returns -1 in case of error

Returnvalues:
 number time the time of the envelope point 
 number value the raw-value of the envelope point 
 integer shape the shape of this envelope
0 - Linear
1 - Square
2 - Slow start/end
3 - Fast start
4 - Fast end
5 - Bezier 
 number tension the intensity of the tension of the shape 
 boolean selected true, if this point is selected; false if not 
 number dBVal the envelopevalue converted to dB 
 array EnvelopePointObject an array with all elements of an envelopepoint
[1] - TrackEnvelope-object
[2] - Envelope-idx, beginning with 0 for the first one
[3] - time
[4] - value
[5] - shape
[6] - tension
[7] - selected
[8] - dBValue converted from value 

Parameters:
 integer Tracknumber the number of the track, beginning with 1. Use 0 for Master Track. 
 string EnvelopeName the name of the envelope-lane 
 integer idx the number of the envelope-point, beginning with 0 


^ Reaper version 5.40Lua version 5.3 GetClosestEnvelopePointIDX_ByTime

Functioncall:

integer idxpre, array EnvelopePointObjectPre, integer idxpost, array EnvelopePointObjectPost = ultraschall.GetClosestEnvelopePointIDX_ByTime(integer Tracknumber, string EnvelopeName, number CheckTime)

Description:
Returns the idxs and EnvelopePointObject of the envelope-points closest to timeposition CheckTime
returns -1 in case of error

Returnvalues:
 integer idxpre the idx of the closest envelopepoint at or before CheckTime 
 array EnvelopePointObjectPre an EnvelopePointObject of idxpre 
 integer idxpost the idx of the closest envelopepoint after CheckTime 
 array EnvelopePointObjectPost an EnvelopePointObject of idxpost 

Parameters:
 integer Tracknumber the number of the track, beginning with 1. Use 0 for Master Track. 
 string EnvelopeName the name of the envelope-lane 
 number CheckTime the time in seconds to check for the closest envelope-points 


^ Reaper version 5.40Lua version 5.3 GetEnvelopePointIDX_Between

Functioncall:

string EnvelopeString, array EnvelopePointArray = ultraschall.GetEnvelopePointIDX_Between(integer Tracknumber, string EnvelopeName, number startposition, number endposition)

Description:
Returns a string and an EnvelopePointArray with all idx/EnvelopePointObjects of all envelopepoints between startposition and endposition in the EnvelopeName-lane.
returns -1 in case of error

Returnvalues:
 string EnvelopeString a string with all envelope-point-idx in the selection, separated by commas. 
 array EnvelopePointArray an array with all EnvelopePointObjects of all envelope-points in selection. 

Parameters:
 integer Tracknumber the number of the track. 1 for track 1, 2 for track 2, etc. 0 for Master-track. 
 string EnvelopeName the name of the envelope-lane, where you want to have the envelope-points of. 
 number startposition the startposition of the selection in seconds. Must be bigger than or equal 0. 
 number endposition the endposition of the selection in seconds. Must be bigger than startposition. 


^ Reaper version 5.40Lua version 5.3 CheckEnvelopePointObject

Functioncall:

boolean retval = ultraschall.CheckEnvelopePointObject(array EnvelopePointObject)

Description:
Checks, if EnvelopePointObject is valid or not.

returns false in case of an error

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointObject an array with all information of an envelope point 


^ Reaper version 5.40Lua version 5.3 IsValidEnvelopePointObject

Functioncall:

boolean retval = ultraschall.IsValidEnvelopePointObject(array EnvelopePointObject)

Description:
Checks, if EnvelopePointObject is valid or not.

returns false in case of an error

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointObject an array with all information of an envelope point 


^ Reaper version 5.40Lua version 5.3 SetEnvelopePoints_EnvelopePointObject

Functioncall:

boolean retval = ultraschall.SetEnvelopePoints_EnvelopePointObject(array EnvelopePointObject, boolean sort_in)

Description:
Sets an envelope-point, as defined in EnvelopePointObject.

returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointObject an array with all information of an envelope point 
 boolean sort_in set true, if setting multiple points at once and call Envelope_SortPoints when done. 


^ Reaper version 5.40Lua version 5.3 SetEnvelopePoints_EnvelopePointArray

Functioncall:

boolean retval = ultraschall.SetEnvelopePoints_EnvelopePointArray(array EnvelopePointArray, boolean sort_in)

Description:
Sets envelope-points, as defined in the EnvelopePointObjects, in the EnvelopePointArray.

returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointArray an array with all EnvelopePointObjects you want to insert 
 boolean sort_in set true, if setting multiple points at once and call Envelope_SortPoints when done. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 DeleteEnvelopePoints_EnvelopePointObject

Functioncall:

boolean retval = ultraschall.DeleteEnvelopePoints_EnvelopePointObject(array EnvelopePointObject)

Description:
Deletes an envelope-point, as defined in EnvelopePointObject.

returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointObject an array with all information of an envelope point 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 DeleteEnvelopePoints_EnvelopePointArray

Functioncall:

boolean retval = ultraschall.DeleteEnvelopePoints_EnvelopePointArray(array EnvelopePointArray)

Description:
Deletes the envelope-points, as defined in the EnvelopePointObjects, in the EnvelopePointArray.
returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointArray an array with all EnvelopePointObjects you want to insert 


^ Reaper version 5.40Lua version 5.3 AddEnvelopePoints_EnvelopePointObject

Functioncall:

boolean retval = ultraschall.AddEnvelopePoints_EnvelopePointObject(array EnvelopePointObject, boolean sort_in)

Description:
Adds an envelope-point, as defined in EnvelopePointObject.
returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointObject an array with all information of an envelope point 
 boolean sort_in set true, if setting multiple points at once and call Envelope_SortPoints when done. 


^ Reaper version 5.40Lua version 5.3 AddEnvelopePoints_EnvelopePointArray

Functioncall:

boolean retval = ultraschall.AddEnvelopePoints_EnvelopePointArray(array EnvelopePointArray, boolean sort_in)

Description:
Adds the envelope-points, as defined in the EnvelopePointObjects, in the EnvelopePointArray.
returns true in case of success, false in case of failure.

Returnvalues:
 boolean retval true, if it's a valid EnvelopePointObject; false if not 

Parameters:
 array EnvelopePointArray an array with all EnvelopePointObjects you want to insert 
 boolean sort_in set true, if setting multiple points at once and call Envelope_SortPoints when done. 


^ Reaper version 5.40Lua version 5.3 CreateEnvelopePointObject

Functioncall:

boolean retval, array EnvelopePointObject = ultraschall.CreateEnvelopePointObject(TrackEnvelope TrackEnvelope, integer idx, number time, number value, integer shape, number tension, boolean selected)

Description:
Creates a new EnvelopePointObject, that can be used by other ultraschall-api-envelope-functions

returns false in case of error

Returnvalues:
 boolean retval false in case of error, true in case of success. 
 array EnvelopePointObject an array with all elements of the envelopepoint
[1] - TrackEnvelope-object
[2] - Envelope-idx, beginning with 0 for the first one
[3] - time
[4] - value
[5] - shape
[6] - tension
[7] - selected
[8] - dBValue converted from value 

Parameters:
 TrackEnvelope env the track-envelope, in which this EnvelopePointObject shall be 
 integer idx the number of the envelope-point, beginning with 0 
 number time the time of the envelope point in seconds 
 number value the raw-value of the envelope point 
 integer shape the shape of this envelope
0 - Linear
1 - Square
2 - Slow start/end
3 - Fast start
4 - Fast end
5 - Bezier 
 number tension the intensity of the tension of the shape 
 boolean selected true, if this point is selected; false if not 


^ Reaper version 5.40Lua version 5.3 CountEnvelopePoints

Functioncall:

integer envpoint_count = ultraschall.CountEnvelopePoints(integer Tracknumber, string EnvelopeName)

Description:
Counts and returns the number of envelope-points in track Tracknumber, envelopelane EnvelopeName.

returns -1 in case of error

Returnvalues:
 integer envpoint_count the number of envelope-points in requested track+envelope-lane 

Parameters:
 integer Tracknumber the number of the track, beginning with 1. Use 0 for Master Track. 
 string EnvelopeName the name of the envelope-lane 


^ Reaper version 5.52Lua version 5.3 SetEnvelopeHeight

Functioncall:

boolean retval, string TrackEnvelopeStateChunk = ultraschall.SetEnvelopeHeight(integer Height, boolean Compacted, TrackEnvelope TrackEnvelope, string TrackEnvelopeStateChunk)

Description:
Changes the Envelope-lane-height and compactible state of TrackEnvelope or TrackEnvelopeStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true in case of success; false in case of error 
 string TrackEnvelopeStateChunk the altered TrackEnvelopeStateChunk 

Parameters:
 integer Height the height of the envelopelane in pixels when not compacted. Reaper accepts 24-443 currently. Nil keeps old value. 
 boolean Compacted shall the envelopelane be compacted(true) or not(false). Nil keeps old value. 
 TrackEnvelope TrackEnvelope the TrackEnvelope to alter, or nil to use the TrackEnvelopeStateChunk instead 
 optional string TrackEnvelopeStateChunk the TrackEnvelopeStateChunk you want to alter. Will be used only, if TrackEnvelope is set to nil 


^ Reaper version 5.52Lua version 5.3 GetAllTrackEnvelopes

Functioncall:

array TrackEnvelopeArray, integer number_of_tracks, integer FirstEnvelopeTrackNumber, integer FirstEnvelopeMaster = ultraschall.GetAllTrackEnvelopes()

Description:
returns all TrackEnvelopes of the current project as a table, number of tracks, the first track that has an envelope, if the master track has an envelope(0) or not (-1)

Returnvalues:
 array TrackEnvelopeArray a table with all envelopes of the current project
the table works as follows:
TrackEnvelopeArray[Tracknumber][0] - number of envelopes for track Tracknumber
TrackEnvelopeArray[Tracknumber][1][Envelopenumber] - the envelope Envelopenumber of track Tracknumber

tracknumber of 0 is for the master track 
 integer number_of_tracks the number of tracks, covered in the TrackEnvelopeArray 
 integer FirstEnvelopeTrackNumber the number of the first track to have an envelope; -1 if theres none 
 integer FirstEnvelopeMaster 0, if the master-track has an envelope, -1 if not. 



^ Reaper version 5.941Lua version 5.3 IsValidEnvelopePointArray

Functioncall:

boolean retval = ultraschall.IsValidEnvelopePointArray(EnvelopePointArray EnvelopePointArray)

Description:
Checks, if an EnvelopePointArray is a valid one.

Returns false in case of an error

Returnvalues:
 boolean retval true, EnvelopePointArray is a valid one; false, EnvelopePointArray isn't valid 

Parameters:
 EnvelopePointArray EnvelopePointArray the EnvelopePointArray to check for it's validity 


^ Reaper version 5.975Lua version 5.3 GetLastEnvelopePoint_TrackEnvelope

Functioncall:

boolean retval, optional integer envpointidx, optional number time, optional number value, optional integer shape, optional number tension, optional boolean selected = ultraschall.GetLastEnvelopePoint_TrackEnvelope(TrackEnvelope Envelope)

Description:
Gets the values of the last envelope-point in TrackEnvelope/MediaItemEnvelope.

Note: there's a "hidden" last envelopepoint in every Envelope, which will be ignored by this function. It will return the last visible envelope-point instead!

Returns false in case of an error

Returnvalues:
 boolean retval true, getting the envelopepoint was successful; false, in case of an error 
 optional integer envpointidx the idx of the found envelope-point; with 0 for the first one on the Envelope 
 optional number time the time of the envelope-point in seconds 
 optional number value the value of the envelope-point 
 optional integer shape the shape of the envelope-point
0 - Linear
1 - Square
2 - Slow start/end
3 - Fast start
4 - Fast end
5 - Bezier 
 optional number tension the intensity of the tension of the shape 
 optional boolean selected true, envelope-point is selected; false, it is not selected 

Parameters:
 TrackEnvelope Envelope the Trackenvelope/MediaItemenvelope, whose last point you want 


^ Reaper version 6.02Lua version 5.3 GetArmState_Envelope

Functioncall:

integer retval = ultraschall.GetArmState_Envelope(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current armed-state of a TrackEnvelope-object.

It is the entry ARM

returns nil in case of error

Returnvalues:
 integer retval 0, unarmed; 1, armed 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose armed-state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 5.95Lua version 5.3 SetArmState_Envelope

Functioncall:

boolean retval, optional string EnvelopeStateChunk = ultraschall.SetArmState_Envelope(TrackEnvelope TrackEnvelope, integer state, optional string EnvelopeStateChunk)

Description:
Sets the new armed-state of a TrackEnvelope-object.

returns false in case of error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 
 optional string EnvelopeStateChunk the altered EnvelopeStateChunk, when parameter TrackEnvelope is set to nil 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose armed-state you want to change 
 integer state 0, unarmed; 1, armed 
 optional string EnvelopeStateChunk if parameter TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameters and change its arm-state 


^ Reaper version 5.981SWS version 2.10.0.1Lua version 5.3 GetTrackEnvelope_ClickState

Functioncall:

boolean clickstate, number position, MediaTrack track, TrackEnvelope envelope, integer EnvelopePointIDX = ultraschall.GetTrackEnvelope_ClickState()

Description:
Returns the currently clicked Envelopepoint and TrackEnvelope, as well as the current timeposition.

Works only, if the mouse is above the EnvelopePoint while having it clicked!

Returns false, if no envelope is clicked at

Returnvalues:
 boolean clickstate true, an envelopepoint has been clicked; false, no envelopepoint has been clicked 
 number position the position, at which the mouse has clicked 
 MediaTrack track the track, from which the envelope and it's corresponding point is taken from 
 TrackEnvelope envelope the TrackEnvelope, in which the clicked envelope-point lies 
 integer EnvelopePointIDX the id of the clicked EnvelopePoint 



^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_NumbersOnly

Functioncall:

table values = ultraschall.GetEnvelopeState_NumbersOnly(string state, optional string EnvelopeStateChunk, optional string functionname, optional boolean numbertoggle)

Description:
returns a state from an EnvelopeStateChunk.

It only supports single-entry-states with numbers/integers, separated by spaces!
All other values will be set to nil and strings with spaces will produce weird results!

returns nil in case of an error

Returnvalues:
 table values all values found as numerical indexed array 

Parameters:
 string state the state, whose attributes you want to retrieve 
 string TrackStateChunk a statechunk of an envelope 
 optional string functionname if this function is used within specific gettrackstate-functions, pass here the "host"-functionname, so error-messages will reflect that 
 optional boolean numbertoggle true or nil; converts all values to numbers; false, keep them as string versions 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_Act

Functioncall:

integer act, integer automation_settings = ultraschall.GetEnvelopeState_Act(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current act-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry ACT

returns nil in case of error

Returnvalues:
 integer act 0, bypass on
1, no bypass 
 integer automation_settings automation item-options for this envelope
-1, project default behavior, outside of automation items
0, automation items do not attach underlying envelope
1, automation items attach to the underlying envelope on the right side
2, automation items attach to the underlying envelope on both sides
3, no automation item-options for this envelope
4, bypass underlying envelope outside of automation items 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_Vis

Functioncall:

integer visible, integer lane, integer unknown = ultraschall.GetEnvelopeState_Vis(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current visibility-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry VIS

returns nil in case of error

Returnvalues:
 integer visible 1, envelope is visible
0, envelope is not visible 
 integer lane 1, envelope is in it's own lane
0, envelope is in media-lane 
 integer unknown unknown; default=1 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_LaneHeight

Functioncall:

integer height, integer compacted = ultraschall.GetEnvelopeState_LaneHeight(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current laneheight-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry LANEHEIGHT

returns nil in case of error

Returnvalues:
 integer height the height of this envelope in pixels; 24 - 263 pixels 
 integer compacted 1, envelope-lane is compacted("normal" height is not shown but still stored in height);
0, envelope-lane is "normal" height 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_DefShape

Functioncall:

integer shape, integer b, integer c = ultraschall.GetEnvelopeState_DefShape(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current default-shape-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry DEFSHAPE

returns nil in case of error

Returnvalues:
 integer shape 0, linear
1, square
2, slow start/end
3, fast start
4, fast end
5, bezier 
 integer b unknown; default value is -1; probably pitch/snap
-1, unknown
  2, unknown                         
 integer c unknown; default value is -1; probably pitch/snap
-1, unknown
  2, unknown  

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_Voltype

Functioncall:

integer voltype = ultraschall.GetEnvelopeState_Voltype(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current voltype-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry VOLTYPE

returns nil in case of error

Returnvalues:
 integer voltype 1, default volume-type is fader-scaling; if VOLTYPE-entry is not existing, default volume-type is amplitude-scaling 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_PooledEnvInstance

Functioncall:

integer id, number position, number length, number start_offset, number playrate, integer selected, number baseline, integer loopsource, integer i, number j, integer pool_id, integer mute = ultraschall.GetEnvelopeState_PooledEnvInstance(integer index, TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current state of a certain automation-item within a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry POOLEDENVINST

returns nil in case of error

Returnvalues:
 integer id counter of automation-items; 1-based 
 number position position in seconds 
 number length length in seconds 
 number start_offset offset in seconds 
 number playrate playrate; minimum value is 0.001; default is 1.000 
 integer selected 1, automation item is selected; 0, automation item isn't selected 
 number baseline 0(-100) to 1(+100); default 0.5(0) 
 number amplitude -2(-200) to 2(+200); default 1 (100) 
 integer loopsource Loop Source; 0 and 1 are allowed settings; 1 is default 
 integer i unknown; 0 is default 
 number j unknown; 0 is default 
 integer pool_id counts the automation-item-instances in this project, including deleted ones; 1-based 
 integer mute 1, mute automation-item; 0, unmute automation-item 

Parameters:
 integer index the index-number of the automation-item, whose states you want to have 
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_PT

Functioncall:

number position, integer volume, integer point_shape_1, integer point_shape_2, integer selected, number bezier_tens1, number bezier_tens2 = ultraschall.GetEnvelopeState_PT(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current state of a certain envelope-point within a TrackEnvelope-object or EnvelopeStateChunk.

It is the state entry PT

returns nil in case of error

Returnvalues:
 number position position of the point in seconds 
 integer volume volume as fader-value 
 integer point_shape may disappear with certain shapes, when point is unselected
the values for point_shape_1 and point_shape_2 are:
0 0, linear
1 0, square
2 0, slow start/end
3 0, fast start
4 0, fast end
5 1, bezier 
 integer selected 1, selected; disappearing, unselected 
 number unknown disappears, if no bezier is set 
 number bezier_tens2 disappears, if no bezier is set; -1 to 1
0, for no bezier tension
-0.5, for fast-start-beziertension
0.5, for fast-end-beziertension
1, for square-tension 

Parameters:
 integer index the index-number of the envelope-point, whose states you want to have 
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 6.02Lua version 5.3 GetEnvelopeState_EnvName

Functioncall:

string envelopename, optional integer fx_env_id, optional string wet_byp, optional number minimum_range, optional number maximum_range, optional number unknown = ultraschall.GetEnvelopeState_EnvName(TrackEnvelope TrackEnvelope, optional string EnvelopeStateChunk)

Description:
Returns the current envelope-name-state of a TrackEnvelope-object or EnvelopeStateChunk.

It is the opening <-tag of the EnvelopeStateChunk

returns nil in case of error

Returnvalues:
 string envelopename the name of the envelope, usually:
   VOLENV2 - for Volume-envelope
   PANENV2 - for Pan-envelope
   WIDTHENV2 - for Width-envelope
   VOLEN - for Pre-FX-Volume-envelope
   PANENV - for Pre-FX-Pan-envelope
   WIDTHENV - for Pre-FX-Width-envelope
   MUTEENV - for Mute-envelope
   VOLENV3 - for Trim-Volume-envelope
   PARMENV - an envelope for an FX-plugin 
 optional integer fx_env_id fx_env is the id of the envelope, as provided by this fx; beginning with 1 for the first 
 optional string wet_byp wet_byp is either "" if not existing, wet or bypass 
 optional number minimum_range the minimum value, accepted by this envelope; 6 digits-precision 
 optional number maximum_range the maximum-value, accepted by this envelope; 6 digits-precision 
 optional number unknown unknown 

Parameters:
 TrackEnvelope TrackEnvelope the TrackEnvelope, whose state you want to know; nil, to use parameter EnvelopeStateChunk instead 
 optional string EnvelopeStateChunk if TrackEnvelope is set to nil, you can pass an EnvelopeStateChunk into this parameter, to get that armed state 


^ Reaper version 5.982Lua version 5.3 EventManager_EnumerateStartupEvents

Functioncall:

string EventIdentifier, string Eventname, string CallerScriptIdentifier, number CheckAllXSeconds, number CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean Paused, function CheckFunction, number NumberOfActions, table Actions = ultraschall.EventManager_EnumerateStartupEvents(integer index)

Description:
Enumerates already existing startupevents, that shall be automatically run at startup of the Ultraschall Event Manager.

That means, if you start the EventManager, it will be started automatically to the EventManager-checking-queue, without the need of registering it by hand.

returns nil in case of an error

Returnvalues:
 string EventIdentifier the EventIdentifier of the startup-event 
 string EventName a name for the startupevent 
 string CallerScriptIdentifier the ScriptIdentifier of the script, which added this event to the StartUpEvents 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again 
 boolean Paused true, the event shall be started as paused; false, the event shall be run immediately 
 function CheckFunction the function, which shall check if the event occurred 
 integer NumberOfActions the number of actions currently registered with this event 
 table Actions a table which holds all actions and their accompanying sections, who are run when the event occurred
each entry of the table is of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0" 

Parameters:
 integer index the index of the StartUp-event, whose attributes you want to get; 1 for the first, etc 


^ Reaper version 5.982Lua version 5.3 EventManager_EnumerateStartupEvents2

Functioncall:

integer index, string EventIdentifier, string Eventname, string CallerScriptIdentifier, number CheckAllXSeconds, number CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean Paused, function CheckFunction, number NumberOfActions, table Actions = ultraschall.EventManager_EnumerateStartupEvents2(string EventIdentifier)

Description:
Enumerates already existing startupevents by an EventIdentifier.

StartupEvents are events, that shall be automatically run at startup of the Ultraschall Event Manager.
That means, if you start the EventManager, it will be started automatically to the EventManager-checking-queue, without the need of registering it by hand.

returns nil in case of an error

Returnvalues:
 integer index the index of the StartupEvent within all StartUpEvents 
 string EventIdentifier the EventIdentifier of the startup-event 
 string EventName a name for the startupevent 
 string CallerScriptIdentifier the ScriptIdentifier of the script, which added this event to the StartUpEvents 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again 
 boolean Paused true, the event shall be started as paused; false, the event shall be run immediately 
 function CheckFunction the function, which shall check if the event occurred 
 integer NumberOfActions the number of actions currently registered with this event 
 table Actions a table which holds all actions and their accompanying sections, who are run when the event occurred
each entry of the table is of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0" 

Parameters:
 string EventIdentifier the identifier of the StartupEvent, that you want to enumerate 


^ Reaper version 5.982Lua version 5.3 EventManager_AddEvent

Functioncall:

string event_identifier = ultraschall.EventManager_AddEvent(string EventName, integer CheckAllXSeconds, integer CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean EventPaused, function CheckFunction, table Actions)

Description:
Adds a new event to the Ultraschall Event Manager-checking-queue.

returns nil in case of an error

Returnvalues:
 string event_identifier the unique identifier for this registered event, which can be used later for setting, deleting, etc 

Parameters:
 string EventName a name for the event, which you can choose freely; duplicated eventnames are allowed 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again 
 boolean EventPaused false, register the event and check for it immediately; true, register the event but don't check for it yet 
 function CheckFunction the function, which shall check if the event occurred
this function must return true if the event occurred and false, if not
No global variables allowed! Instead, the eventmanager will pass to it as first parameter a table which can be used for storing information 
 table Actions a table which holds all actions and their accompanying sections, who shall be run when the event occurred
each entry of the table must be of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0"

You can have as many actions as you like, but be aware, that running too many actions may delay further eventchecking! 


^ Reaper version 5.982Lua version 5.3 EventManager_IsValidEventIdentifier

Functioncall:

boolean valid, boolean valid_inuse = ultraschall.EventManager_IsValidEventIdentifier(string event_identifier)

Description:
Checks, if a string is a valid EventIdentifier (valid) and currently registered with an event(valid_inuse) in the Ultraschall-EventManager-checking-queue.

returns false in case of an error

Returnvalues:
 boolean valid true, valid EventIdentifier; false, no valid EventIdentifier 
 boolean valid_inuse true, valid EventIdentifier, which is currently registered and in use by the EventManager; false, no currently registered EventIdentifier 

Parameters:
 string event_identifier the unique identifier of the registered event, that you want to check 


^ Reaper version 5.982Lua version 5.3 EventManager_RemoveEvent

Functioncall:

boolean retval = ultraschall.EventManager_RemoveEvent(string event_identifier)

Description:
Removes a new event to the Ultraschall Event Manager-checking-queue.

returns false in case of an error

Returnvalues:
 boolean retval true, removing was successful; false, removing was unsuccessful 

Parameters:
 string event_identifier the unique identifier of the registered event, which you want to remove from the EventManager 


^ Reaper version 5.982Lua version 5.3 EventManager_RemoveAllEvents_Script

Functioncall:

boolean retval = ultraschall.EventManager_RemoveAllEvents_Script(string ScriptIdentifier)

Description:
Removes all registered events from a script with a certain ScriptIdentifier in the Ultraschall Event Manager-checking-queue.

returns false in case of an error

Returnvalues:
 boolean retval true, removing was successful; false, removing was unsuccessful 

Parameters:
 string ScriptIdentifier the unique identifier of the registered event, which you want to remove from the EventManager 


^ Reaper version 5.982Lua version 5.3 EventManager_SetEvent

Functioncall:

boolean retval = ultraschall.EventManager_SetEvent(string EventIdentifier, optional string EventName, optional integer CheckAllXSeconds, optional integer CheckForXSeconds, optional boolean StartActionsOnceDuringTrue, optional boolean EventPaused, optional function CheckFunction, optional table Actions)

Description:
Sets the attributes of an already added event in the Ultraschall Event Manager-checking-queue.

returns nil in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting wasn't successful 

Parameters:
 string EventIdentifier the EventIdentifier of the registered event, which you want to set 
 optional string EventName a name for the event, which you can choose freely; duplicated eventnames are allowed; nil, keep the old name 
 optional integer CheckAllXSeconds only check all x seconds; 0, for constant checking; nil, keep the old value
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 optional integer CheckForXSeconds only check for x seconds; 0, check until the event is removed; nil, keep the old value
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 optional boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again
    nil, keep the old value 
 optional boolean EventPaused false, register the event and check for it immediately; true, register the event but don't check for it yet; nil, keep the old value 
 optional function CheckFunction the function, which shall check if the event occurred; nil, keep the old function
this function must return true if the event occurred and false, if not
No global variables allowed! Instead, the eventmanager will pass to the function as first parameter a table which can be used for storing information 
 optional table Actions a table which holds all actions and their accompanying sections, who shall be run when the event occurred; nil, keep the old actionlist
each entry of the table must be of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0"

You can have as many actions as you like, but be aware, that running too many actions may delay further eventchecking! 


^ Reaper version 5.982Lua version 5.3 EventManager_EnumerateEvents

Functioncall:

string EventIdentifier, string EventName, string CallerScriptIdentifier, integer CheckAllXSeconds, integer CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean EventPaused, function CheckFunction, integer NumberOfActions, table Actions = ultraschall.EventManager_EnumerateEvents(integer id)

Description:
Gets the attributes of an already added event in the Ultraschall Event Manager-checking-queue.

returns nil in case of an error

Returnvalues:
 string EventIdentifier the EventIdentifier of the registered event 
 string EventName the name of the event 
 string CallerScriptIdentifier the ScriptIdentifier of the script, who registered the event 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once
    false, run until the CheckFunction returns false again 
 boolean EventPaused true, eventcheck is currently paused; false, eventcheck is currently running 
 function CheckFunction the function, which shall check if the event occurred 
 integer NumberOfActions the number of actions currently registered with this event 
 table Actions a table which holds all actions and their accompanying sections, who are run when the event occurred
each entry of the table is of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0" 

Parameters:
 integer id the id of the currently registered event, of which you want to have the attributes; starting with 1 for the first 


^ Reaper version 5.982Lua version 5.3 EventManager_EnumerateEvents2

Functioncall:

string EventIdentifier, string EventName, string CallerScriptIdentifier, integer CheckAllXSeconds, integer CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean EventPaused, function CheckFunction, integer NumberOfActions, table Actions = ultraschall.EventManager_EnumerateEvents2(string EventIdentifier)

Description:
Gets the attributes of an already added event in the Ultraschall Event Manager-checking-queue.

returns nil in case of an error

Returnvalues:
 string EventIdentifier the EventIdentifier of the registered event 
 string EventName the name of the event 
 string CallerScriptIdentifier the ScriptIdentifier of the script, who registered the event 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once
    false, run until the CheckFunction returns false again 
 boolean EventPaused true, eventcheck is currently paused; false, eventcheck is currently running 
 function CheckFunction the function, which shall check if the event occurred 
 integer NumberOfActions the number of actions currently registered with this event 
 table Actions a table which holds all actions and their accompanying sections, who are run when the event occurred
each entry of the table is of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0" 

Parameters:
 string Eventidentifier the EventIdentifier of the currently registered event, of which you want to have the attributes 


^ Reaper version 5.982Lua version 5.3 EventManager_CountRegisteredEvents

Functioncall:

integer count_of_registered_events = ultraschall.EventManager_CountRegisteredEvents()

Description:
Returns the number of currently registered events in the EventManager-checking-queue

Returnvalues:
 integer count_of_registered_events the number of currently registered events 



^ Reaper version 5.982Lua version 5.3 EventManager_GetLastUpdateTime

Functioncall:

string datetime, number precise_time = ultraschall.EventManager_GetLastUpdateTime()

Description:
Returns the last time, the eventlist in the EventManager had been updated in any way.

Returnvalues:
 string datetime the date and time of the last update, as returned by os.date() 
 number precise_time the last update time as number, as returned by reaper.time_precise() 



^ Reaper version 5.982Lua version 5.3 EventManager_PauseEvent

Functioncall:

boolean retval = ultraschall.EventManager_PauseEvent(string event_identifier)

Description:
Pauses a registered event in the Ultraschall Event Manager-checking-queue.

returns false in case of an error

Returnvalues:
 boolean retval true, pausing was successful; false, pausing was unsuccessful 

Parameters:
 string event_identifier the unique identifier of the registered event, which you want to pause in the EventManager 


^ Reaper version 5.982Lua version 5.3 EventManager_ResumeEvent

Functioncall:

boolean retval = ultraschall.EventManager_ResumeEvent(string event_identifier)

Description:
Resumes a registered and paused event in the Ultraschall Event Manager-checking-queue.

returns false in case of an error

Returnvalues:
 boolean retval true, resuming was successful; false, resuming was unsuccessful 

Parameters:
 string event_identifier the unique identifier of the registered event, which you want to resume in the EventManager 


^ Reaper version 5.982Lua version 5.3 EventManager_Start

Functioncall:

boolean retval = ultraschall.EventManager_Start()

Description:
Starts the Ultraschall-EventManager, if it has not been started yet.

Returnvalues:
 boolean retval true, EventManager has been started successfully; false, EventManager couldn't be started 



^ Reaper version 5.982Lua version 5.3 EventManager_Stop

Functioncall:

ultraschall.EventManager_Stop(optional boolean force, optional string ScriptIdentifier)

Description:
Unregisters the current script; will stop the EventManager if no scripts are registered anymore to the EventManager.

You can use the parameter force to force stopping of the EventManager immediately.


Parameters:
 optional boolean force true, stops the EventManager, even if other scripts have registered events to it; false or nil, don't force stop 
 optional string ScriptIdentifier if you want to unregister events from a different script, pass here the ScriptIdentifier of this script; nil, use the ScriptIdentifier of the current script 


^ Reaper version 5.982Lua version 5.3 EventManager_AddStartupEvent

Functioncall:

string event_identifier = ultraschall.EventManager_AddStartupEvent(string EventName, integer CheckAllXSeconds, integer CheckForXSeconds, boolean StartActionsOnceDuringTrue, boolean EventPaused, function CheckFunction, table Actions)

Description:
Adds a new event, that shall be automatically registered at startup of the Ultraschall Event Manager.

That means, if you start the EventManager, it will be added automatically to the EventManager-checking-queue, without the need of registering it by hand.

returns nil in case of an error

Returnvalues:
 string event_identifier the unique identifier for this registered event, which can be used later for setting, deleting, etc 

Parameters:
 string EventName a name for the event, which you can choose freely; duplicated eventnames are allowed 
 integer CheckAllXSeconds only check all x seconds; 0, for constant checking
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 integer CheckForXSeconds only check for x seconds; 0, check until the event is removed
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again 
 boolean EventPaused false, register the event and check for it immediately; true, register the event but don't check for it yet 
 function CheckFunction the function, which shall check if the event occurred
this function must return true if the event occurred and false, if not
No global variables allowed! Instead, the eventmanager will pass to the function as first parameter a table which can be used for storing information 
 table Actions a table which holds all actions and their accompanying sections, who shall be run when the event occurred
each entry of the table must be of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0"

You can have as many actions as you like, but be aware, that running too many actions may delay further eventchecking! 


^ Reaper version 5.982Lua version 5.3 EventManager_RemoveStartupEvent2

Functioncall:

boolean retval = ultraschall.EventManager_RemoveStartupEvent2(integer id)

Description:
Removes a startup-event from the config-file of the Ultraschall Event Manager.

returns false in case of an error

Returnvalues:
 boolean retval true, removing was successful; false, removing was unsuccessful 

Parameters:
 string event_identifier the unique identifier of the startup event, which you want to remove from the EventManager-startup-procedure 


^ Reaper version 5.982Lua version 5.3 EventManager_RemoveStartupEvent

Functioncall:

boolean retval = ultraschall.EventManager_RemoveStartupEvent(string event_identifier)

Description:
Removes a startup-event from the config-file of the Ultraschall Event Manager.

returns false in case of an error

Returnvalues:
 boolean retval true, removing was successful; false, removing was unsuccessful 

Parameters:
 string event_identifier the unique identifier of the startup event, which you want to remove from the EventManager-startup-procedure 


^ Reaper version 5.982Lua version 5.3 EventManager_CountStartupEvents

Functioncall:

integer count_startup_events = ultraschall.EventManager_CountStartupEvents()

Description:
Counts the currently available startup-events

Returnvalues:
 integer count_startup_events the number of currently available start-up-events for the EventManager 



^ Reaper version 5.982Lua version 5.3 EventManager_SetStartupEvent

Functioncall:

string event_identifier = ultraschall.EventManager_SetStartupEvent(string EventIdentifier, optional string EventName, optional integer CheckAllXSeconds, optional integer CheckForXSeconds, optional boolean StartActionsOnceDuringTrue, optional boolean EventPaused, optional function CheckFunction, optional table Actions)

Description:
Sets an already existing startupevent, that shall be automatically run at startup of the Ultraschall Event Manager.

That means, if you start the EventManager, it will be started automatically to the EventManager-checking-queue, without the need of registering it by hand.

returns nil in case of an error

Returnvalues:
 string event_identifier the unique identifier for this registered event, which can be used later for setting, deleting, etc 

Parameters:
 string EventIdentifier the EventIdentifier of the startup-event, which you want to set 
 optional string EventName a name for the event, which you can choose freely; duplicated eventnames are allowed; nil, to keep current name 
 optional integer CheckAllXSeconds only check all x seconds; 0, for constant checking; nil, to keep current value
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 optional integer CheckForXSeconds only check for x seconds; 0, check until the event is removed; nil, to keep current value
this value will be used as approximate time, not necessarily exact. That means, 2 seconds given may be 2.5 in some cases!
This is due general limitations with backgroundscripts. 
 optional boolean StartActionsOnceDuringTrue if the event occurred:
    true, run the actions only once;
    false, run until the CheckFunction returns false again
    nil, to keep current value 
 optional boolean EventPaused false, register the event and check for it immediately; true, register the event but don't check for it yet; nil, to keep current value 
 optional function CheckFunction the function, which shall check if the event occurred; nil, to keep current function
this function must return true if the event occurred and false, if not
No global variables allowed! Instead, the eventmanager will pass to the function as first parameter a table which can be used for storing information 
 optional table Actions a table which holds all actions and their accompanying sections, who shall be run when the event occurred; nil, to keep current actionlist
each entry of the table must be of the format "actioncommandid,section", e.g.:

Actions[1]="1007,0"
Actions[2]="1012,0"

You can have as many actions as you like, but be aware, that running too many actions may delay further eventchecking! 


^ Reaper version 5.965Lua version 5.3 EventManager_GetPausedState2

Functioncall:

boolean paused_state = ultraschall.EventManager_GetPausedState2(string EventIdentifier)

Description:
returns, if a certain event, currently registered in the EventManager, is paused(true) or not(false).
State is requested by EventIdentifier.

returns nil in case of an error


Parameters:
 string EventIdentifier the identifier of the registered event, whose pause state you want to retrieve 


^ Reaper version 5.965Lua version 5.3 EventManager_GetPausedState

Functioncall:

boolean paused_state = ultraschall.EventManager_GetPausedState(integer id)

Description:
returns, if a certain event, currently registered in the EventManager, is paused(true) or not(false)
State is requested by number-id, with 1 for the first event, 2 for the second, etc.

returns nil in case of an error


Parameters:
 integer id the id of the event, whose paused-state you want to retrieve; 1, the first event; 2, the second event, etc 


^ Reaper version 5.965Lua version 5.3 EventManager_GetEventIdentifier

Functioncall:

string event_identifier = ultraschall.EventManager_GetEventIdentifier(integer id)

Description:
returns the EventIdentifier of a registered event, by id
event is requested by number-id, with 1 for the first event, 2 for the second, etc.

returns nil in case of an error


Parameters:
 integer id the id of the event, whose EventIdenrifier you want to retrieve; 1, the first event; 2, the second event, etc 


^ Reaper version 5.965Lua version 5.3 EventManager_GetLastCheckfunctionState

Functioncall:

boolean check_state, number last_statechange_precise_time = ultraschall.EventManager_GetLastCheckfunctionState(integer id)

Description:
returns the last state the eventcheck-function returned the last time it was called; of a certain registered event in the EventManager.
State is requested by number-id, with 1 for the first event, 2 for the second, etc.

returns nil in case of an error; nil and time, if the EventCheck-function didn't return a boolean


Parameters:
 integer id the id of the event, whose eventcheckfunction-retval you want to retrieve; 1, the first event; 2, the second event, etc 


^ Reaper version 5.965Lua version 5.3 EventManager_GetRegisteredEventID

Functioncall:

integer id = ultraschall.EventManager_GetRegisteredEventID(string EventIdentifier)

Description:
returns the id of a registered event, meaning 1, if it's the first event, 2 if it's the second, etc

It is the position within all events currently registered within the EventManager.

returns nil in case of an error


Parameters:
 string EventIdentifier the EventIdentifier of the event, whose id you want to retrieve 


^ Reaper version 5.965Lua version 5.3 EventManager_GetLastCheckfunctionState2

Functioncall:

boolean check_state, number last_statechange_precise_time = ultraschall.EventManager_GetLastCheckfunctionState2(string EventIdentifier)

Description:
returns the last state the eventcheck-function returned the last time it was called; of a certain registered event in the EventManager.
State is requested by EventIdentifier

returns nil in case of an error; nil and time, if the EventCheck-function didn't return a boolean


Parameters:
 string EventIdentifier the EventIdentifier of the event, whose last checkfunction-state you want to retrieve 


^ Reaper version 5.982Lua version 5.3 EventManager_DebugMode

Functioncall:

ultraschall.EventManager_DebugMode(boolean toggle)

Description:
Starts Debugmode of the EventManager, which returns additional internal states.

Allows you to get the contents of the UserSpace of a certain checkfunction of a registered event, see EventManagerDebugModeUserSpace.

Note: Debugmode is not for productive usecases, as it costs resources. Please turn it off again, after you've finished debugging.


Parameters:
 boolean toggle true, turn debugmode on; false, turn debugmode off 


^ Reaper version 5.982Lua version 5.3 EventManager_DebugMode_UserSpace

Functioncall:

integer userspace_count, table userspace = ultraschall.EventManager_DebugMode_UserSpace(integer index)

Description:
Returns the current contents of the UserSpace, as stored by the checkfunction of a registered event in the EventManager.

The table is of the format:

userspace[index]["index"] - the name of the index
userspace[index]["datatype"] - the datatype of the value in this userspace-index
userspace[index]["value"] - the value in this userspace-index

Note: Debugmode is not for productive usecases, as it costs resources. Please turn it off again, after you've finished debugging.
See EventManager_DebugMode for more details on stopping DebugMode.

returns nil in case of an error

Returnvalues:
 integer userspace_count the number of values within the userspace 
 table userspace the contents of the userspace as a handy table 

Parameters:
 integer index the index of the event, whose UserSpace you want to retrieve 


^ Reaper version 5.40Lua version 5.3 ReadFullFile

Functioncall:

string contents, integer length_of_file, integer number_of_lines = ultraschall.ReadFullFile(string filename_with_path, boolean binary)

Description:
Return contents of filename_with_path.

Returns nil in case of an error.

Returnvalues:
 string contents the contents of the whole file. 
 integer length_of_file the number of bytes of the file 
 integer number_of_lines number of lines in file (-1 if parameter binary is set to true) 

Parameters:
 string filename_with_path filename of the file to be read 
 boolean binary true if the file shall be read as a binary file; false if read as ASCII. Default is ASCII. 


^ Reaper version 5.40Lua version 5.3 ReadValueFromFile

Functioncall:

string contents, string linenumbers, integer numberoflines, integer number_of_foundlines = ultraschall.ReadValueFromFile(string filename_with_path, string value)

Description:
Return contents of filename_with_path.

If "value" is given, it will return all lines, containing the value in the file "filename_with_path".
The second line-numbers return-value is very valuable when giving a "value". "Value" is not case-sensitive.
The value can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

Returnvalues:
 string contents the contents of the file, or the lines that contain parameter value in it, separated by a newline 
 string linenumbers a string, that contains the linenumbers returned as a , separated csv-string 
 integer numberoflines_in_file the total number of lines in the file 
 integer number_of_foundlines the number of found lines 

Parameters:
 string filename_with_path filename of the file to be read 
 string value the value to look in the file for. Not case-sensitive. 


^ Reaper version 5.40Lua version 5.3 ReadLinerangeFromFile

Functioncall:

string contents, boolean correctnumberoflines, integer number_of_lines = ultraschall.ReadLinerangeFromFile(string filename_with_path, integer firstlinenumber, integer lastlinenumber)

Description:
Return contents of filename_with_path, from firstlinenumber to lastlinenumber. Counting of linenumbers starts with 1 for the first line.
The returned string contains all requested lines, separated by a newline.

Returns nil, if the linenumbers are invalid.

Returnvalues:
 string contents the contents the lines of the file, that you requested 
 boolean correctnumberoflines true, if the number of lines are returned, as requested; false if fewer lines are returned 
 integer number_of_lines the number of read lines 

Parameters:
 string filename_with_path filename of the file to be read 
 integer firstlinenumber the first linenumber to be returned. First line in the file begins with 1! 
 integer lastlinenumber the last linenumber to be returned; -1, for the whole file 


^ Reaper version 5.40Lua version 5.3 MakeCopyOfFile

Functioncall:

boolean retval = ultraschall.MakeCopyOfFile(string input_filename_with_path, string output_filename_with_path)

Description:
Copies input_filename_with_path to output_filename_with_path.
Only textfiles! For binary-files use MakeCopyOfFile_Binary() instead!

Returns true, if it worked, false if it didn't.

Returnvalues:
 boolean retval true, if copy worked, false if it didn't. 

Parameters:
 string input_filename_with_path filename of the file to copy 
 string output_filename_with_path filename of the copied file to be created. 


^ Reaper version 5.40Lua version 5.3 MakeCopyOfFile_Binary

Functioncall:

boolean retval = ultraschall.MakeCopyOfFile_Binary(string input_filename_with_path, string output_filename_with_path)

Description:
Copies input_filename_with_path to output_filename_with_path as binary-file.

returns false in case of an error

Returnvalues:
 boolean retval returns true, if copy worked; false if it didn't 

Parameters:
 string input_filename_with_path filename of the file to copy 
 string output_filename_with_path filename of the copied file, that shall be created 


^ Reaper version 5.40Lua version 5.3 ReadBinaryFileUntilPattern

Functioncall:

integer length, string content = ultraschall.ReadBinaryFileUntilPattern(string input_filename_with_path, string pattern)

Description:
Returns a binary file, up until a pattern. The pattern is not case-sensitive.

Pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

returns false in case of an error

Returnvalues:
 integer length the length of the returned data 
 string content the content of the file, that has been read until pattern 

Parameters:
 string filename_with_path filename of the file to be read 
 string pattern a pattern to search for. Case-sensitive. 


^ Reaper version 5.40Lua version 5.3 ReadBinaryFileFromPattern

Functioncall:

integer length, string content = ultraschall.ReadBinaryFileFromPattern(string input_filename_with_path, string pattern)

Description:
Returns a binary file, from pattern onwards. The pattern is not case-sensitive.

The pattern can also contain patterns for pattern matching. Refer the LUA-docs for pattern matching.
i.e. characters like ^$()%.[]*+-? must be escaped with a %, means: %[%]%(%) etc

returns false in case of an error

Returnvalues:
 integer length the length of the returned data 
 string content the content of the file, that has been read from pattern to the end 

Parameters:
 string filename_with_path filename of the file to be read 
 string pattern a pattern to search for. Case-sensitive. 


^ Reaper version 5.40Lua version 5.3 CountLinesInFile

Functioncall:

integer linesinfile = ultraschall.CountLinesInFile(string filename_with_path)

Description:
Counts lines in a textfile. In binary files, the number of lines may be weird and unexpected!
Returns -1, if no such file exists.

Returnvalues:
 integer linesinfile number of lines in a textfile; -1 in case of error 

Parameters:
 string filename_with_path filename of the file to be read 


^ Reaper version 5.40Lua version 5.3 ReadFileAsLines_Array

Functioncall:

array contents, boolean correctnumberoflines, integer number_of_lines = ultraschall.ReadFileAsLines_Array(string filename_with_path, integer firstlinenumber, integer lastlinenumber)

Description:
Return contents of filename_with_path, from firstlinenumber to lastlinenumber as an array. Counting of linenumbers starts with 1 for the first line.
The returned array contains all requested lines, which each entry holding one returned line.

Returns nil, if the linenumbers are invalid.

Returnvalues:
 array contents the contents the lines of the file, that you requested as an array, in which each entry hold one line of the file 
 boolean correctnumberoflines true, if the number of lines are returned, as you requested; false if fewer lines are returned 
 integer number_of_lines the number of lines returned 

Parameters:
 string filename_with_path filename of the file to be read 
 integer firstlinenumber the first linenumber to be returned. First line in the file begins with 1! 
 integer lastlinenumber the last linenumber to be returned; -1, read all lines in the file 


^ Reaper version 5.40Lua version 5.3 ReadBinaryFile_Offset

Functioncall:

integer length, string content = ultraschall.ReadBinaryFile_Offset(string input_filename_with_path, integer startoffset, integer numberofbytes)

Description:
Returns the contents of a binary file from startoffset until startoffset+numberofbytes.

When setting startoffset to a negative value, it will read from the end of the file, means:
-100 will start -100 characters before the end of the file and numberofbytes will read from that point on    

Returns false, if file can not be opened.

Returnvalues:
 integer length the length of the returned part of the file, might be shorter than requested, if file ends before 
 string content the content of the file, that has been read 

Parameters:
 string input_filename_with_path filename of the file to be read 
 integer startoffset the offset, at where to begin the fileread. 0 for the beginning of the file; negative values set offset from the end of the file 
 integer numberofbytes the number of bytes to read. -1 for until the end of the file. If there are fewer bytes than requested, the returned string will be shorter. 


^ Reaper version 5.40Lua version 5.3 GetLengthOfFile

Functioncall:

integer lengthoffile = ultraschall.GetLengthOfFile(string filename_with_path)

Description:
Returns the length of the file filename_with_path in bytes.
Will return -1, if no such file exists.

Returnvalues:
 integer lengthoffile the length of the file in bytes. -1 in case of error 

Parameters:
 string filename_with_path filename to write the value to 


^ Reaper version 5.77Lua version 5.3 CountDirectoriesAndFilesInPath

Functioncall:

integer filecount, integer dircount = ultraschall.CountDirectoriesAndFilesInPath(string path)

Description:
returns the number of files and directories in path

returns -1, in case of error

Returnvalues:
 integer filecount the number of files found in path 
 integer dircount the number of directories found in path 

Parameters:
 string path the path to count the files and directories from 


^ Reaper version 5.77Lua version 5.3 GetAllFilenamesInPath

Functioncall:

integer filecount, array files = ultraschall.GetAllFilenamesInPath(string path)

Description:
returns the number of files and the filenames in path

returns -1, in case of error

Returnvalues:
 integer filecount the number of files found in path 
 array files the filenames found in path 

Parameters:
 string path the path to get the filenames from 


^ Reaper version 5.77Lua version 5.3 GetAllDirectoriesInPath

Functioncall:

integer filecount, array directories = ultraschall.GetAllDirectoriesInPath(string path)

Description:
returns the number of directories and the directorynames in path

returns -1, in case of error

Returnvalues:
 integer filecount the number of directories found in path 
 array files the directories found in path 

Parameters:
 string path the path to get the directories from 


^ Reaper version 5.40Lua version 5.3 CheckForValidFileFormats

Functioncall:

string fileformat, boolean supported_by_reaper, string mediatype = ultraschall.CheckForValidFileFormats(string filename_with_path)

Description:
Returns the fileformat of a Reaper-supported-file, images, audios(opus and m4a missing, though!), and video(mp4-video missing, though!).
Note: Checks the file itself and does not check for correct file-extension. Reaper needs the correct file-extension or it can't read an otherwise valid imagefile.
      For example: if you want to import a GIF, renamed to filename.JPG, Reaper will not be able to read it. Only when the extension is the same as the file itself(filename.GIF).

Returns nil in case of an error

Returnvalues:
 string fileformat the format of the file; JPG, PNG, GIF, LCF, ICO, WAV, AIFF, ASF/WMA/WMV, MP3, MP3 -ID3TAG, FLAC, MKV/MKA/MKS/MK3D/WEBM, AVI, RPP_PROJECT, unknown 
 boolean supported_by_reaper true, if importing of the fileformat is supported by Reaper; false, if not 
 string mediatype the type of the media; Image, Audio, Audio/Video, Video, Reaper 

Parameters:
 string filename_with_path the file to check for it's image-fileformat 


^ Reaper version 5.77Lua version 5.3 DirectoryExists

Functioncall:

boolean retval = ultraschall.DirectoryExists(string path, string directory)

Description:
Checks, if a directory exists in path.

On Linux: path and directory are case-sensitive!

Returns false in case of error.

Returnvalues:
 boolean retval true, directory exists; false, directory does not exist 

Parameters:
 string path the path, in which to look for the existence of parameter directory 
 string directory the name of the directory to check for in path 


^ Reaper version 5.95Lua version 5.3 OnlyFilesOfCertainType

Functioncall:

integer foundfilecount, array foundfilearray = ultraschall.OnlyFilesOfCertainType(array filearray, string filetype)

Description:
Returns the filenames_with_path from a filearray, that are of a certain filetype

returns -1 in case of an error

Returnvalues:
 integer foundfilecount the number of files that contain the right filetype 
 array foundfilearray an array with all the files that contain the right filetype 

Parameters:
 array filearray an array with files to check for; index is 1-based 
 string fileformat the format of the file; JPG, PNG, GIF, LCF, ICO, WAV, AIFF, ASF/WMA/WMV, MP3, MP3 -ID3TAG, FLAC, MKV/MKA/MKS/MK3D/WEBM, AVI, RPP_PROJECT, unknown 


^ Reaper version 5.95Lua version 5.3 GetReaperWorkDir

Functioncall:

string current_workdir = ultraschall.GetReaperWorkDir()

Description:
returns the current workdir, which is the directory. If you create a file without giving a path, this file will be created in this work-dir.

Returnvalues:
 string current_workdir the current workdir of Reaper 



^ Reaper version 5.95Lua version 5.3 DirectoryExists2

Functioncall:

boolean retval = ultraschall.DirectoryExists2(string Path)

Description:
returns, if Path is an existing path.

returns false in case of an error

Returnvalues:
 boolean retval true, if path exists; false, if not 

Parameters:
 string Path the path to check for 


^ Reaper version 5.95Lua version 5.3 SetReaperWorkDir

Functioncall:

boolean retval = ultraschall.SetReaperWorkDir(string Path)

Description:
sets a new current working directory for Reaper. This requires a restart of Reaper to take effect, due API-limitations!
                        
returns false in case of an error

Returnvalues:
 boolean retval true, if path could be set; false, if not 

Parameters:
 string Path the path to set as new current working directory 


^ Reaper version 5.40Lua version 5.3 GetPath

Functioncall:

string path, string filename = ultraschall.GetPath(string str, optional string sep)

Description:
returns the path of a filename-string

returns "", "" in case of error

Returnvalues:
 string path the path as a string 
 string filename the filename, without the path 

Parameters:
 string str the path with filename you want to process 
 string sep a separator, with which the function knows, how to separate filename from path; nil to use the last useful separator in the string, which is either / or \\ 


^ Reaper version 5.40Lua version 5.3 CreateValidTempFile

Functioncall:

string tempfilename = ultraschall.CreateValidTempFile(string filename_with_path, boolean create, string suffix, boolean retainextension)

Description:
Tries to determine a valid temporary filename. Will check filename_with_path with an included number between 0 and 16384 to create such a filename.
You can also add your own suffix to the filename.

The pattern is: filename_with_path$Suffix~$number.ext (when retainextension is set to true!)

If you wish, you can also create this temporary-file as an empty file.

The path of the tempfile is always the same as the original file.

Returns nil in case of failure.

Returnvalues:
 string tempfilename the valid temporary filename found 

Parameters:
 string filename_with_path the original filename 
 boolean create true, if you want to create that temporary file as an empty file; false, just return the filename 
 string suffix if you want to alter the temporary filename with an additional suffix, use this parameter 
 boolean retainextension true, keep the extension(if existing) at the end of the tempfile; false, just add the suffix~number at the end. 


^ Reaper version 5.40Lua version 5.3 WriteValueToFile

Functioncall:

integer retval = ultraschall.WriteValueToFile(string filename_with_path, string value, optional boolean binarymode, optional boolean append)

Description:
Writes value to filename_with_path. Will replace any previous content of the file if append is set to false. Returns -1 in case of failure, 1 in case of success.

returns -1 in case of an error

Returnvalues:
 integer retval -1 in case of failure, 1 in case of success 

Parameters:
 string filename_with_path the filename with it's path 
 string value the value to export, can be a long string that includes newlines and stuff. nil is not allowed! 
 boolean binarymode true or nil, it will store the value as binary-file; false, will store it as textstring 
 boolean append true, add the value to the end of the file; false or nil, write value to file and erase all previous data in the file 


^ Reaper version 5.40Lua version 5.3 WriteValueToFile_Insert

Functioncall:

integer retval = ultraschall.WriteValueToFile_Insert(string filename_with_path, integer linenumber, string value)

Description:
Inserts value into a file at linenumber. All lines, up to linenumber-1 come before value, all lines at linenumber to the end of the file will come after value.
Will return -1, if no such line exists.

Note: non-binary-files only!

Returnvalues:
 integer retval 1, in case of success, -1 in case of error 

Parameters:
 string filename_with_path filename to write the value to 
 integer linenumber the linenumber, at where to insert the value into the file 
 string value the value to be inserted into the file 


^ Reaper version 5.40Lua version 5.3 WriteValueToFile_Replace

Functioncall:

integer retval = ultraschall.WriteValueToFile_Replace(string filename_with_path, integer startlinenumber, integer endlinenumber, string value)

Description:
Replaces the linenumbers startlinenumber to endlinenumber in a file with value. All lines, up to startlinenumber-1 come before value, all lines at endlinenumber+1 to the end of the file will come after value.
Will return -1, if no such lines exists.

Note: non-binary-files only!

Returnvalues:
 integer retval 1, in case of success, -1 in case of error 

Parameters:
 string filename_with_path filename to write the value to 
 integer startlinenumber the first linenumber, to be replaced with value in the file 
 integer endlinenumber the last linenumber, to be replaced with value in the file 
 string value the value to be inserted into the file 


^ Reaper version 5.40Lua version 5.3 WriteValueToFile_InsertBinary

Functioncall:

integer retval = ultraschall.WriteValueToFile_InsertBinary(string filename_with_path, integer byteposition, string value)

Description:
Inserts value into a file at byteposition. All bytes, up to byteposition-1 come before value, all bytes at byteposition to the end of the file will come after value.
Will return -1, if no such line exists.

Note: good for binary files

Returnvalues:
 integer retval 1, in case of success, -1 in case of error 

Parameters:
 string filename_with_path filename to write the value to 
 integer byteposition the byteposition, at where to insert the value into the file 
 string value the value to be inserted into the file 


^ Reaper version 5.40Lua version 5.3 WriteValueToFile_ReplaceBinary

Functioncall:

integer retval = ultraschall.WriteValueToFile_ReplaceBinary(string filename_with_path, integer startbyteposition, integer endbyteposition, string value)

Description:
Replaces content in the file from startbyteposition to endbyteposition-1 with value. All bytes, up to startbyteposition-1 come before value, all bytes from (and including)endbyteposition to the end of the file will come after value.
Will return -1, if no such line exists.

Note: good for binary files

Returnvalues:
 integer retval 1, in case of success, -1 in case of error 

Parameters:
 string filename_with_path filename to write the value to 
 integer startbyteposition the first byte in the file to be replaced, starting with 1, if you want to replace at the beginning of the file. Everything before startposition will be kept. 
 integer endbyteposition the first byte after the replacement. Everything from endbyteposition to the end of the file will be kept. 
 string value the value to be inserted into the file 


^ Reaper version 5.965Lua version 5.3 GetAllRecursiveFilesAndSubdirectories

Functioncall:

integer found_dirs, array dirs_array, integer found_files, array files_array = ultraschall.GetAllRecursiveFilesAndSubdirectories(string path)

Description:
Returns all subdirectories and files within a given path.

Might take some time with many folders/files.


Returns -1 in case of an error.

Returnvalues:
 integer found_dirs the number of directories found; -1, in case of an error 
 array dirs_array the full path to the found directories as an array 
 integer found_files the number of files found 
 array files_array the full path to the found files as an array 

Parameters:
 string path the path from where to retrieve the files and subdirectories 


^ Reaper version 5.99Lua version 5.3 SaveSubtitles_SRT

Functioncall:

integer retval = ultraschall.SaveSubtitles_SRT(string subtitle_filename_with_path, table subtitle_table)

Description:
saves the subtitles from the subtitle-table.

The subtitles-table is expected to be of the following format:

    subtitle_table[subtitle_index]["start"]   = starttime in seconds
    subtitle_table[subtitle_index]["end"]     = endtime in seconds
    subtitle_table[subtitle_index]["caption"] = the caption, which shall be shown from start to end-time

returns -1 in case of an error

Returnvalues:
 string guid the guid of the marker/region of the marker with a specific index 

Parameters:
 string subtitle_filename_with_path the filename of the subtitle-file, into which you want to store the subtitles 
 table Table the subtitle-table, which holds all captions and the start- and endtimes of displaying the caption 


^ Reaper version 5.965Lua version 5.3 ReadSubtitles_SRT

Functioncall:

integer Captions_Counter, table Captions = ultraschall.ReadSubtitles_SRT(string filename_with_path)

Description:
parses an srt-subtitle-file and returns its contents as table

returns nil in case of an error

Returnvalues:
 integer Captions_Counter the number of captions in the file 
 table Captions the Captions as a table of the format:
    Captions[index]["start"]= the starttime of this caption in seconds
    Captions[index]["end"]= the endtime of this caption in seconds
    Captions[index]["caption"]= the caption itself 

Parameters:
 string filename_with_path the filename with path of the subrip srt-file 


^ Reaper version 6.02Lua version 5.3 MoveFileOrFolder

Functioncall:

boolean retval = ultraschall.MoveFileOrFolder(string file_foldername, string oldpath, string newpath)

Description:
Moves a file or folder from oldpath to newpath.

returns false in case of an error

Returnvalues:
 boolean retval true, moving was successful; false, moving was unsuccessful 

Parameters:
 string file_foldername the folder- or filename, which you want to move 
 string oldpath the old path, in which the file or folder is located 
 string newpath the new path, into which the file or folder shall be moved 


^ Reaper version 5.975Lua version 5.3 IsValidFXStateChunk

Functioncall:

boolean retval = ultraschall.IsValidFXStateChunk(string StateChunk)

Description:
Returns, if a StateChunk is a valid FXStateChunk.
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

Returns false in case of an error

Returnvalues:
 boolean retval true, it is a valid FXStateChunk; false, it is not 

Parameters:
 string StateChunk the StateChunk, which you want to check, whether it's a valid FXStateChunk 


^ Reaper version 5.975Lua version 5.3 GetFXFromFXStateChunk

Functioncall:

string fx = ultraschall.GetFXFromFXStateChunk(string FXStateChunk, integer id)

Description:
Returns all lines of a specific TrackFX/ItemFX from a StateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

Returns nil in case of an error

Returnvalues:
 string fx all lines of an fx from a statechunk 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the FX-entries 
 integer id the id of the FX-entries you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLearn_FXStateChunk

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns a parameter-learn-setting from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It is the PARMLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLearn 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmLearn-settings 
 integer fxid the fx, of which you want to get the parameter-learn-settings 
 integer id the id of the ParmLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLearn_MediaItem

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLearn_MediaItem(MediaItem MediaItem, integer fxid, integer id)

Description:
Returns a parameter-learn-setting from a MediaItem

It is the PARMLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLearn 

Parameters:
 MediaItem MediaItem the MediaItem, whose ParmLearn-setting you want to get 
 integer fxid the fx, of which you want to get the parameter-learn-settings 
 integer id the id of the ParmLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLearn_MediaTrack

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLearn_MediaTrack(MediaTrack MediaTrack, integer fxid, integer id)

Description:
Returns a parameter-learn-setting from a MediaTrack

It is the PARMLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-messages
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLearn 

Parameters:
 MediaTrack MediaTrack the MediaTrack, whose ParmLearn-setting you want to get 
 integer fxid the fx, of which you want to get the parameter-learn-settings 
 integer id the id of the ParmLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmAlias_FXStateChunk

Functioncall:

integer parm_idx, string parm_aliasname = ultraschall.GetParmAlias_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns a parameter-alias-setting from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

Parameter-aliases are only stored for MediaTracks.

It is the PARMALIAS-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parm_aliasname the alias-name of the parameter 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmAlias-settings 
 integer fxid the fx, of which you want to get the parameter-alias-settings 
 integer id the id of the ParmAlias-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmAlias_MediaTrack

Functioncall:

integer parm_idx, string parm_aliasname = ultraschall.GetParmAlias_MediaTrack(MediaTrack MediaTrack, integer fxid, integer id)

Description:
Returns a parameter-aliasname-setting from a MediaTrack

It is the PARMALIAS-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parm_aliasname the alias-name of the parameter 

Parameters:
 MediaTrack MediaTrack the MediaTrack, whose ParmAlias-setting you want to get 
 integer fxid the fx, of which you want to get the parameter-alias-settings 
 integer id the id of the ParmAlias-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmModulationChunk_FXStateChunk

Functioncall:

string parm_modulation_chunk = ultraschall.GetParmModulationChunk_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns a parameter-modulation-chunk from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It's the <PROGRAMENV entry

Returns nil in case of an error

Returnvalues:
 string parm_modulation_chunk a chunk of the parameter-modulation settings 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the Parameter-modulation-settings 
 integer fxid the fx, of which you want to get the parameter-modulation-chunk-settings 
 integer id the id of the Parameter-modulation you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLFOLearn_FXStateChunk

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLFOLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns a parameter-lfo-learn-setting from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It is the LFOLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLFOLearn 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmLFOLearn-settings 
 integer fxid the fx, of which you want to get the parameter-lfo-learn-settings 
 integer id the id of the ParmLFOLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLFOLearn_MediaItem

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLFOLearn_MediaItem(MediaItem MediaItem, integer fxid, integer id)

Description:
Returns a parameter-lfo-learn-setting from a MediaItem

It is the LFOLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLFOLearn 

Parameters:
 MediaItem MediaItem the MediaItem, whose ParmLFOLearn-setting you want to get 
 integer fxid the fx, of which you want to get the parameter-lfo-learn-settings 
 integer id the id of the ParmLFOLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLFOLearn_MediaTrack

Functioncall:

integer parm_idx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message = ultraschall.GetParmLFOLearn_MediaTrack(MediaTrack MediaTrack, integer fxid, integer id)

Description:
Returns a parameter-lfo-learn-setting from a MediaTrack

It is the LFOLEARN-entry

Returns nil in case of an error

Returnvalues:
 integer parm_idx the idx of the parameter; order is exactly like the order in the contextmenu of Parameter List -> Learn 
 string parmname the name of the parameter, though usually only wet or bypass 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-messages
  examples:
          0,   OSC is used
          176, MIDI Chan 1 CC 0
          ...
          432, MIDI Chan 1 CC 1
          ...
          9360, MIDI Chan 1 Note 36
          9616, MIDI Chan 1 Note 37
          9872, MIDI Chan 1 Note 38
            ...
            
      CC Mode-dropdownlist:
         set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
          &65536 &131072 &262144
             0       0       0,      Absolute
             1       0       0,      Relative 1(127=-1, 1=+1)
             0       1       0,      Relative 2(63=-1, 65=+1)
             1       1       0,      Relative 3(65=-1, 1=+1)
             0       0       1,      Toggle (>0=toggle) 
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
0, no checkboxes
1, enable only when track or item is selected
2, Soft takeover (absolute mode only)
3, Soft takeover (absolute mode only)+enable only when track or item is selected
4, enable only when effect configuration is focused
20, enable only when effect configuration is visible 
 optional string osc_message the osc-message, that triggers the ParmLFOLearn 

Parameters:
 MediaTrack MediaTrack the MediaTrack, whose ParmLFOLearn-setting you want to get 
 integer fxid the fx, of which you want to get the parameter-lfo-learn-settings 
 integer id the id of the ParmLFOLearn-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmAudioControl_FXStateChunk

Functioncall:

integer parmidx, string parmname, integer parameter_modulation, number parmbase, integer audioctrl, number audioctrlstrength, integer audioctrl_direction, integer channels, integer stereo, integer rms_attack, integer rms_release, number db_lo, number db_hi, number audioctrlshaping_x, number audioctrlshaping_y = ultraschall.GetParmAudioControl_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns the parameter-modulation-settings of the Audio control signal-settings from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It is entries from the <PROGRAMENV-chunk

Returns nil in case of an error

Returnvalues:
 integer parmidx the id of the parameter, that shall be modulated; order like in the dropdownlist 
 string parmname the name of the parameter, usually bypass or wet 
 integer parameter_modulation the "Enable parameter modulation, baseline value(envelope overrides)"-checkbox; 0, enabled; 1, disabled 
 number parmbase parameter-modulation-baseline-slider; between 0.0000 and 1.0000; default is 0.2500 
 integer audioctrl "Audio control signal (sidechain)"-checkbox - 0, disabled; 1, enabled 
 number audioctrlstrength the strength-slider for AudioControlSignal; 0.0000(0%) to 1.000(100%); 0.493(49.3%); default is 1 
 integer audioctrl_direction the direction-radiobuttons for AudioControlSignal; -1, Negative; 0, Centered; 1, Positive 
 integer channels the Track audio channel-dropdownlist; linked to entry parameter stereo as well
-1, no channel selected(yet) (default)
0 and higher, track 1 and higher is selected 
 integer stereo linked to channels as well
0, mono(use only the channel set in CHAN); 1, stereo(use the channel set in CHAN and CHAN+1) 
 integer rms_attack rms attack in milliseconds; 0 to 1000; default is 300 
 integer rms_release rms release in milliseconds; 0 to 1000; default is 300 
 number db_lo db_lo decides the lowest value possible for parameter db_hi; db_hi decides the highest volume for db_lo
Min volume-slider in dB; maximum valuerange possible is -60dB to 11.9dB 
 number db_hi db_lo decides the lowest value possible for parameter db_hi; db_hi decides the highest volume for db_lo
Max volume-slider in dB; maximum valuerange possible is -59.9dB to 12dB 
 number audioctrlshaping_x the x-position of the shaping-dragging-point; between 0.000000 and 1.000000 
 number audioctrlshaping_y the y-position of the shaping-dragging-point; between 0.000000 and 1.000000 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmModulation-settings 
 integer fxid the fx, of which you want to get the parameter-modulation-settings 
 integer id the id of the ParmModulation-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmLFO_FXStateChunk

Functioncall:

integer parmidx, string parmname, integer parameter_modulation, number parmbase, integer lfo, number lfo_strength, integer lfo_direction, integer lfo_shape, integer temposync, integer unknown, integer phase_reset, number lfo_speed, number lfo_speedphase = ultraschall.GetParmLFO_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns the parameter-modulation-settings of the LFO-settings from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It is entries from the <PROGRAMENV-chunk

Returns nil in case of an error

Returnvalues:
 integer parmidx the id of the parameter, that shall be modulated; order like in the dropdownlist 
 string parmname the name of the parameter, usually bypass or wet 
 integer parameter_modulation the "Enable parameter modulation, baseline value(envelope overrides)"-checkbox; 0, enabled; 1, disabled 
 number parmbase parameter-modulation-baseline-slider; between 0.0000 and 1.0000; default is 0.2500 
 integer lfo LFO checkbox; 0, disabled; 1, enabled 
 number lfo_strength Strength-slider in the LFO parameter-modulation; 0.0000(0%) to 1.000(100%); 0.493(49.3%); default is 1 
 integer lfo_direction Direction-radiobuttons in the LFO parameter modulation; -1, Negative; 0, Centered; 1, Positive 
 integer lfo_shape the shape of the LFO
0, sine
1, square
2, saw L
3, saw R
4, triangle
5, random 
 integer temposync the Tempo sync-checkbox in the LFO parameter-modulation; 0, disabled; 1, enabled 
 integer unknown unknown 
 integer phase_reset phase-reset-dropdownlist
0, On seek/loop (deterministic output)
1, Free-running (non-deterministic output) 
 number lfo_speed Speed-slider in the LFO parameter-modulation; either Hz(temposync=0) or QN(temposync=1)
Hz: 0(0.0039Hz) to 1(8.0000Hz); higher values are possible, lower values go into negative; default is 0.124573(1.0000Hz)
QN: 0(8.0000QN) to 1(0.2500QN); lower values are possible; higher values go into negative; default is 0.9(1.0000QN) 
 number lfo_speedphase Phase-slider in the LFO parameter-modulation; 0.000 to to 1.000; default is 0.5 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmModulation-settings 
 integer fxid the fx, of which you want to get the parameter-modulation-settings 
 integer id the id of the ParmModulation-settings you want to have, starting with 1 for the first 


^ Reaper version 5.975Lua version 5.3 GetParmMIDIPLink_FXStateChunk

Functioncall:

integer parmidx, string parmname, integer parameter_modulation, number parmbase, boolean plink_enabled, number scale, integer midi_fx_idx, integer midi_fx_idx2, integer linked_parmidx, number offset, optional integer bus, optional integer channel, optional integer category, optional integer midi_note = ultraschall.GetParmMIDIPLink_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Returns the parameter-modulation-settings of the Parameter-Link-Modulation-settings from an FXStateChunk
An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

It is entries from the <PROGRAMENV-chunk

Returns nil in case of an error

Returnvalues:
 integer parmidx the id of the parameter, that shall be modulated; order like in the dropdownlist 
 string parmname the name of the parameter, usually bypass or wet 
 integer parameter_modulation the "Enable parameter modulation, baseline value(envelope overrides)"-checkbox; 0, enabled; 1, disabled 
 number parmbase parameter-modulation-baseline-slider; between 0.0000 and 1.0000; default is 0.2500 
 boolean plink_enabled true, parameter-linking is enabled; false, parameter linking is disabled 
 number scale the scale-slider; -1.00(-100%) to 1.00(100%); default is 0(0%) 
 integer midi_fx_idx the big MIDI/FX-button in the "Link from MIDI or FX parameter"-area
  -1, nothing selected
  -100, MIDI-parameter-settings
  0 - the first fx
  1 - the second fx
  2 - the third fx, etc 
 integer midi_fx_idx2 the big MIDI/FX-button in the "Link from MIDI or FX parameter"-area; Reaper stores the idx for idx using two values, where this is the second one
it is unknown why, so I include it in here anyway
  -1, nothing selected
  -100, MIDI-parameter-settings
  0 - the first fx
  1 - the second fx
  2 - the third fx, etc 
 integer linked_parmidx the parameter idx, that you want to link;
When MIDI:
     16
When FX-parameter:
     0 to n; 0 for the first; 1, for the second, etc 
 number offset Offset-slider; -1.00(-100%) to 1.00(100%); default is 0(0%)  
 optional integer bus the MIDI-bus; 0 to 15 for bus 1 to 16; only available, when midi_fx_idx=-100, otherwise nil 
 optional integer channel the MIDI-channel; 0, omni; 1 to 16 for channel 1 to 16; only available, when midi_fx_idx=-100, otherwise nil 
 optional integer category the MIDI-category, which affects the meaning of parameter midi_note; only available, when midi_fx_idx=-100, otherwise nil
144, MIDI note
160, Aftertouch
176, CC 14Bit and CC
192, Program Change
208, Channel Pressure
224, Pitch 
 optional integer midi_note the midi_note/command, whose meaning depends on parameter category; only available, when midi_fx_idx=-100, otherwise nil
   When MIDI note:
        0(C-2) to 127(G8)
   When Aftertouch:
        0(C-2) to 127(G8)
   When CC14 Bit:
        128 to 159; see dropdownlist for the commands(the order of the list is the same as this numbering)
   When CC:
        0 to 119; see dropdownlist for the commands(the order of the list is the same as this numbering)
   When Program Change:
        0
   When Channel Pressure:
        0
   When Pitch:
        0 

Parameters:
 string FXStateChunk the FXStateChunk, from which you want to retrieve the ParmLinkModulation-settings 
 integer fxid the fx, of which you want to get the parameter-linking-modulation-settings 
 integer id the id of the ParmLinkModulation-settings you want to have, starting with 1 for the first 


^ Reaper version 5.977SWS version 2.10.0.1Julian Sader's plugin version 0.986Lua version 5.3 ScanDXPlugins

Functioncall:

ultraschall.ScanDXPlugins(optional boolean re_scan)

Description:
(Re-)scans all DX-Plugins.


Parameters:
 optional boolean clear_cache true, re-scan all DX-plugins; false or nil, only scan new DX-plugins 


^ Reaper version 5.979Lua version 5.3 DeleteParmLearn_FXStateChunk

Functioncall:

boolean retval, string alteredFXStateChunk = ultraschall.DeleteParmLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Deletes a ParmLearn-entry from an FXStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if deletion was successful; false, if the function couldn't delete anything 
 string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, which you want to delete a ParmLearn from 
 integer fxid the id of the fx, which holds the to-delete-ParmLearn-entry; beginning with 1 
 integer id the id of the ParmLearn-entry to delete; beginning with 1 


^ Reaper version 5.979Lua version 5.3 DeleteParmAlias_FXStateChunk

Functioncall:

boolean retval, string alteredFXStateChunk = ultraschall.DeleteParmAlias_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Deletes a ParmAlias-entry from an FXStateChunk.

It's the PARMALIAS-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if deletion was successful; false, if the function couldn't delete anything 
 string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, which you want to delete a ParmAlias from 
 integer fxid the id of the fx, which holds the to-delete-ParmAlias-entry; beginning with 1 
 integer id the id of the ParmAlias-entry to delete; beginning with 1 


^ Reaper version 5.979Lua version 5.3 DeleteParmLFOLearn_FXStateChunk

Functioncall:

boolean retval, string alteredFXStateChunk = ultraschall.DeleteParmLFOLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id)

Description:
Deletes a ParmLFO-Learn-entry from an FXStateChunk.

It's the LFOLEARN-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if deletion was successful; false, if the function couldn't delete anything 
 string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, which you want to delete a ParmLFO-Learn-entry from 
 integer fxid the id of the fx, which holds the to-delete-ParmLFO-Learn-entry; beginning with 1 
 integer id the id of the ParmLFO-Learn-entry to delete; beginning with 1 


^ Reaper version 5.979Lua version 5.3 SetParmLFOLearn_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.SetParmLFOLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id, integer midi_note, integer checkboxflags, optional string osc_message)

Description:
Sets an already existing ParmLFO-Learn-entry of an FX-plugin from an FXStateChunk.

It's the LFOLEARN-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLFO) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a ParmLFO-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-ParmLFO-Learn-entry; beginning with 1 
 integer id the id of the ParmLFO-Learn-entry to set; beginning with 1 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
    examples:
            0,   OSC is used
            176, MIDI Chan 1 CC 0
            ...
            432, MIDI Chan 1 CC 1
            ...
            9360, MIDI Chan 1 Note 36
            9616, MIDI Chan 1 Note 37
            9872, MIDI Chan 1 Note 38
              ...
              
        CC Mode-dropdownlist:
           set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
            &65536 &131072 &262144
               0       0       0,      Absolute
               1       0       0,      Relative 1(127=-1, 1=+1)
               0       1       0,      Relative 2(63=-1, 65=+1)
               1       1       0,      Relative 3(65=-1, 1=+1)
               0       0       1,      Toggle (>0=toggle)  
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
    0, no checkboxes
    1, enable only when track or item is selected
    2, Soft takeover (absolute mode only)
    3, Soft takeover (absolute mode only)+enable only when track or item is selected
    4, enable only when effect configuration is focused
    20, enable only when effect configuration is visible  
 optional string osc_message the osc-message, that triggers the ParmLFOLearn, only when midi_note is set to 0! 


^ Reaper version 5.979Lua version 5.3 SetParmLearn_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.SetParmLearn_FXStateChunk(string FXStateChunk, integer fxid, integer id, integer midi_note, integer checkboxflags, optional string osc_message)

Description:
Sets an already existing Parm-Learn-entry of an FX-plugin from an FXStateChunk.

It's the PARMLEARN-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLearn) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-Parm-Learn-entry; beginning with 1 
 integer id the id of the Parm-Learn-entry to set; beginning with 1 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
    examples:
            0,   OSC is used
            176, MIDI Chan 1 CC 0
            ...
            432, MIDI Chan 1 CC 1
            ...
            9360, MIDI Chan 1 Note 36
            9616, MIDI Chan 1 Note 37
            9872, MIDI Chan 1 Note 38
              ...
              
        CC Mode-dropdownlist:
           set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
            &65536 &131072 &262144
               0       0       0,      Absolute
               1       0       0,      Relative 1(127=-1, 1=+1)
               0       1       0,      Relative 2(63=-1, 65=+1)
               1       1       0,      Relative 3(65=-1, 1=+1)
               0       0       1,      Toggle (>0=toggle)  
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
    0, no checkboxes
    1, enable only when track or item is selected
    2, Soft takeover (absolute mode only)
    3, Soft takeover (absolute mode only)+enable only when track or item is selected
    4, enable only when effect configuration is focused
    20, enable only when effect configuration is visible  
 optional string osc_message the osc-message, that triggers the ParmLearn, only when midi_note is set to 0! 


^ Reaper version 5.979Lua version 5.3 SetParmAlias_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.SetParmAlias_FXStateChunk(string FXStateChunk, integer fxid, integer id, string parmalias)

Description:
Sets an already existing Parm-Learn-entry of an FX-plugin from an FXStateChunk.

It's the PARMALIAS-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLearn) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-Parm-Learn-entry; beginning with 1 
 integer id the id of the Parm-Learn-entry to set; beginning with 1 
 string parmalias the new aliasname of the parameter 


^ Reaper version 5.979Lua version 5.3 SetFXStateChunk

Functioncall:

boolean retval, optional string alteredStateChunk = ultraschall.SetFXStateChunk(string StateChunk, string FXStateChunk, optional integer TakeFXChain_id)

Description:
Adds/replaces FXStateChunk to/in a TrackStateChunk or a MediaItemStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if setting fxstatechunk was successful; false, if setting was unsuccessful 
 optional string alteredStateChunk the altered StateChunk 

Parameters:
 string StateChunk the TrackStateChunk, into which you want to set the FXChain 
 string FXStateChunk the FXStateChunk, which you want to set into the TrackStateChunk 
 optional integer TakeFXChain_id when using MediaItemStateChunks, this allows you to choose the take of which you want the FXChain; default is 1 


^ Reaper version 5.975Lua version 5.3 GetFXStateChunk

Functioncall:

string FXStateChunk = ultraschall.GetFXStateChunk(string StateChunk, optional integer TakeFXChain_id)

Description:
Returns an FXStateChunk from a TrackStateChunk or a MediaItemStateChunk.

An FXStateChunk holds all FX-plugin-settings for a specific MediaTrack or MediaItem.

Returns nil in case of an error or if no FXStateChunk has been found.

Returnvalues:
 string FXStateChunk the FXStateChunk, stored in the StateChunk 

Parameters:
 string StateChunk the StateChunk, from which you want to retrieve the FXStateChunk 
 optional integer TakeFXChain_id when using MediaItemStateChunks, this allows you to choose the take of which you want the FXChain; default is 1 


^ Reaper version 5.979Lua version 5.3 AddParmLFOLearn_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.AddParmLFOLearn_FXStateChunk(string FXStateChunk, integer fxid, integer parmidx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message)

Description:
Adds a new Parm-LFOLearn-entry to an FX-plugin from an FXStateChunk.

It's the LFOLEARN-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLearn) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-Parm-Learn-entry; beginning with 1 
 integer parmidx the parameter, whose alias you want to add 
 string parmname the name of the parameter, usually \"\" or \"byp\" for bypass or \"wet\" for wet; when using wet or bypass, these are essential to give! 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
    examples:
            0,   OSC is used
            176, MIDI Chan 1 CC 0
            ...
            432, MIDI Chan 1 CC 1
            ...
            9360, MIDI Chan 1 Note 36
            9616, MIDI Chan 1 Note 37
            9872, MIDI Chan 1 Note 38
              ...
              
        CC Mode-dropdownlist:
           set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
            &65536 &131072 &262144
               0       0       0,      Absolute
               1       0       0,      Relative 1(127=-1, 1=+1)
               0       1       0,      Relative 2(63=-1, 65=+1)
               1       1       0,      Relative 3(65=-1, 1=+1)
               0       0       1,      Toggle (>0=toggle)  
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
    0, no checkboxes
    1, enable only when track or item is selected
    2, Soft takeover (absolute mode only)
    3, Soft takeover (absolute mode only)+enable only when track or item is selected
    4, enable only when effect configuration is focused
    20, enable only when effect configuration is visible  
 optional string osc_message the osc-message, that triggers the ParmLFOLearn, only when midi_note is set to 0! 


^ Reaper version 5.979Lua version 5.3 AddParmLearn_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.AddParmLearn_FXStateChunk(string FXStateChunk, integer fxid, integer parmidx, string parmname, integer midi_note, integer checkboxflags, optional string osc_message)

Description:
Adds a new Parm-Learn-entry to an FX-plugin from an FXStateChunk.

It's the PARMLEARN-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLearn) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-Parm-Learn-entry; beginning with 1 
 integer parmidx the parameter, whose alias you want to add 
 string parmname the name of the parameter, usually \"\" or \"byp\" for bypass or \"wet\" for wet; when using wet or bypass, these are essential to give! 
 integer midi_note an integer representation of the MIDI-note, which is set as command; 0, in case of an OSC-message
    examples:
            0,   OSC is used
            176, MIDI Chan 1 CC 0
            ...
            432, MIDI Chan 1 CC 1
            ...
            9360, MIDI Chan 1 Note 36
            9616, MIDI Chan 1 Note 37
            9872, MIDI Chan 1 Note 38
              ...
              
        CC Mode-dropdownlist:
           set the following flags to their specific values (0=0, 1=the value beginning &, like &65536 or &131072 or &262144)
            &65536 &131072 &262144
               0       0       0,      Absolute
               1       0       0,      Relative 1(127=-1, 1=+1)
               0       1       0,      Relative 2(63=-1, 65=+1)
               1       1       0,      Relative 3(65=-1, 1=+1)
               0       0       1,      Toggle (>0=toggle)  
 integer checkboxflags the checkboxes checked in the MIDI/OSC-learn dialog
    0, no checkboxes
    1, enable only when track or item is selected
    2, Soft takeover (absolute mode only)
    3, Soft takeover (absolute mode only)+enable only when track or item is selected
    4, enable only when effect configuration is focused
    20, enable only when effect configuration is visible  
 optional string osc_message the osc-message, that triggers the ParmLearn, only when midi_note is set to 0! 


^ Reaper version 5.979Lua version 5.3 AddParmAlias_FXStateChunk

Functioncall:

boolean retval, optional string alteredFXStateChunk = ultraschall.AddParmAlias_FXStateChunk(string FXStateChunk, integer fxid, string parmalias)

Description:
Adds a new Parm-Alias-entry to an FX-plugin from an FXStateChunk.

It's the PARMALIAS-entry

returns false in case of an error

Returnvalues:
 boolean retval true, if setting new values was successful; false, if setting was unsuccessful(e.g. no such ParmLearn) 
 optional string alteredFXStateChunk the altered FXStateChunk 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to set a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-set-Parm-Learn-entry; beginning with 1 
 integer parmidx the parameter, whose alias you want to add 
 string parmalias the new aliasname of the parameter 


^ Reaper version 5.979Lua version 5.3 CountParmAlias_FXStateChunk

Functioncall:

integer count = ultraschall.CountParmAlias_FXStateChunk(string FXStateChunk, integer fxid)

Description:
Counts already existing Parm-Alias-entries of an FX-plugin from an FXStateChunk.

It's the PARMALIAS-entry

returns -1 in case of an error

Returnvalues:
 integer count the number of ParmAliases found 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to count a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-count-Parm-Learn-entry; beginning with 1 


^ Reaper version 5.979Lua version 5.3 CountParmLearn_FXStateChunk

Functioncall:

integer count = ultraschall.CountParmLearn_FXStateChunk(string FXStateChunk, integer fxid)

Description:
Counts already existing Parm-Learn-entries of an FX-plugin from an FXStateChunk.

It's the PARMLEARN-entry

returns -1 in case of an error

Returnvalues:
 integer count the number of ParmLearn-entried found 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to count a Parm-Learn-entry 
 integer fxid the id of the fx, which holds the to-count-Parm-Learn-entry; beginning with 1 


^ Reaper version 5.979Lua version 5.3 CountParmLFOLearn_FXStateChunk

Functioncall:

integer count = ultraschall.CountParmLFOLearn_FXStateChunk(string FXStateChunk, integer fxid)

Description:
Counts already existing Parm-LFOLearn-entries of an FX-plugin from an FXStateChunk.

It's the LFOLEARN-entry

returns -1 in case of an error

Returnvalues:
 integer count the number of LFOLearn-entried found 

Parameters:
 string FXStateChunk the FXStateChunk, in which you want to count a Parm-LFOLearn-entry 
 integer fxid the id of the fx, which holds the to-count-Parm-LFOLearn-entry; beginning with 1 


^ Reaper version 5.977SWS version 2.10.0.1Julian Sader's plugin version 0.986Lua version 5.3 ScanVSTPlugins

Functioncall:

ultraschall.ScanVSTPlugins(optional boolean clear_cache)

Description:
Re-scans all VST-Plugins.


Parameters:
 optional boolean clear_cache true, clear cache before re-scanning; false or nil, just scan vts-plugins 


^ Reaper version 5.977SWS version 2.10.0.1Julian Sader's plugin version 0.986Lua version 5.3 AutoDetectVSTPluginsFolder

Functioncall:

ultraschall.AutoDetectVSTPluginsFolder()

Description:
Auto-detects the vst-plugins-folder.




^ Reaper version 6.02Lua version 5.3 CountFXStateChunksInStateChunk

Functioncall:

integer count_of_takefx_statechunks, integer count_of_trackfx_statechunks = ultraschall.CountFXStateChunksInStateChunk(string StateChunk)

Description:
Counts all FXStateChunks within a StateChunk.
You can pass ItemStateChunks, TrackStateChunks and ProjectStateChunks.

returns -1 in case of an error.

Returnvalues:
 integer count_of_takefx_statechunks the number of take-fx-StateChunks within the StateChunk. When passing Track/ProjectStateChunks, it returns number of all FXStateChunks from all Takes within the StateChunk 
 integer count_of_trackfx_statechunks the number of TrackFX-StateChunks; each track alawys has a single one, so it should match the number of tracks within the StateChunk; 0, if you pass a ItemStateChunk 

Parameters:
 string StateChunk the StateChunk, whose count of FXStateChunks you want to retrieve 


^ Reaper version 6.02Lua version 5.3 RemoveFXStateChunkFromTrackStateChunk

Functioncall:

string altered_TrackStateChunk = ultraschall.RemoveFXStateChunkFromTrackStateChunk(string TrackStateChunk)

Description:
Clears the FXChain from a TrackStateChunk

returns nil in case of an error.

Returnvalues:
 string altered_TrackStateChunk the TrackStateChunk, cleared of the Track-FXStateChunk 

Parameters:
 string TrackStateChunk the TrackStateChunk, whose FXStateChunk you want to remove 


^ Reaper version 6.02Lua version 5.3 RemoveFXStateChunkFromItemStateChunk

Functioncall:

string alteredItemStateChunk = ultraschall.RemoveFXStateChunkFromItemStateChunk(string ItemStateChunk, integer take_id)

Description:
Removes a certain Take-FXStateChunk from an ItemStateChunk.

Returns nil in case of failure.

Returnvalues:
 string alteredItemStateChunk the StateChunk, from which the FXStateChunk was removed 

Parameters:
 string ItemStateChunk the ItemStateChunk, from which you want to remove an FXStateChunk 
 integer take_id the take, whose FXStateChunk you want to remove 


^ Reaper version 6.02Lua version 5.3 LoadFXStateChunkFromRFXChainFile

Functioncall:

string FXStateChunk = ultraschall.LoadFXStateChunkFromRFXChainFile(string filename, integer trackfx_or_takefx)

Description:
Loads an FXStateChunk from an RFXChain-file.

If you don't give a path, it will try to load the file from the folder ResourcePath()/FXChains.

returns nil in case of an error

Returnvalues:
 string FXStateChunk the loaded FXStateChunk; nil, in case of an error 

Parameters:
 string filename the filename of the RFXChain-file(must include ".RfxChain"); omit the path to load it from the folder ResourcePath()/FXChains 
 integer trackfx_or_takefx 0, return the FXStateChunk as Track-FXStateChunk; 1, return the FXStateChunk as Take-FXStateChunk 


^ Reaper version 6.02Lua version 5.3 SaveFXStateChunkAsRFXChainfile

Functioncall:

integer retval = ultraschall.SaveFXStateChunkAsRFXChainfile(string filename, string FXStateChunk)

Description:
Loads an FXStateChunk from an RFXChain-file.

If you don't give a path, it will try to load the file from the folder ResourcePath/FXChains.

returns -1 in case of an error

Returnvalues:
 integer retval -1 in case of failure, 1 in case of success 

Parameters:
 string filename the filename of the output-RFXChain-file(must include ".RfxChain"); omit the path to save it into the folder ResourcePath/FXChains 
 string FXStateChunk the FXStateChunk, which you want to set into the TrackStateChunk 


^ Reaper version 6.02Lua version 5.3 GetAllRFXChainfilenames

Functioncall:

integer count_of_RFXChainfiles, array RFXChainfiles = ultraschall.GetAllRFXChainfilenames()

Description:
Returns all available RFXChainfiles in the folder ResourcePath/FXChains

Returnvalues:
 integer count_of_RFXChainfiles the number of available RFXChainFiles 
 array RFXChainfiles the filenames of the RFXChainfiles 



^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 GetRecentFX

Functioncall:

integer count_of_RecentFX, array RecentFX = ultraschall.GetRecentFX()

Description:
Returns the recent fx-list

Returnvalues:
 integer count_of_RecentFX the number of available recent fx 
 array RecentFX the names of the recent fx 



^ Reaper version 5.40Lua version 5.3 SplitStringAtLineFeedToArray

Functioncall:

integer count, array split_string = ultraschall.SplitStringAtLineFeedToArray(string unsplitstring)

Description:
Splits the string unsplitstring at linefeed/tabs/control characters and puts each of these splitpieces into an array, each splitpiece one array-entry.
The linefeeds will not(!) be returned in the array's entries.
Returns the number of entries in the array, as well as the array itself
If there are no control characters or linefeeds in the string, the array will have only one entry with unsplitstring in it.

returns -1 in case of failure

Returnvalues:
 integer count number of entries in the split_string-array 
 array split_string an array with all the individual "postsplit"-pieces of the string 

Parameters:
 string unsplitstring the string, that shall be split at LineFeed/Tabs/Control Characters. Nil is not allowed. 


^ Reaper version 5.40Lua version 5.3 CountCharacterInString

Functioncall:

integer count, array positions = ultraschall.CountCharacterInString(string checkstring, string character)

Description:
Counts, how often character appears in checkstring and returns the count, as well as a array an with the position-numbers.

returns -1 in case of error

Returnvalues:
 integer count the number of occurences of character in checkstring 
 array positions the positionnumbers of the character in checkstring 

Parameters:
 string checkstring the string to check search through 
 string character the character to search for. Only single characters are allowed. Controlcodes like \n \t count as single character. Case sensitive. 


^ Reaper version 5.77Lua version 5.3 IsValidMatchingPattern

Functioncall:

boolean retval = ultraschall.IsValidMatchingPattern(string patstring)

Description:
Returns, if patstring is a valid pattern-matching-string

Returnvalues:
 boolean retval true, patstring is a valid pattern-matching-string; false, patstring isn't a valid pattern-matching-string 

Parameters:
 string patstring the string to check for, if it's a valid pattern-matching-string 


^ Reaper version 5.40Lua version 5.3 CSV2IndividualLinesAsArray

Functioncall:

integer count, array individual_values = ultraschall.CSV2IndividualLinesAsArray(string csv_line, optional string separator)

Description:
convert a csv-string to an array of the individual values. If separator cannot be found, it'll return the original string

returns nil in case or error

Returnvalues:
 integer count the number of entries 
 array individual_values all values, each in an individual array-position 

Parameters:
 string csv_line a string as a csv, with all values included and separated by parameter separator 
 string separator the separator, that separates the individual entries; use nil for commas; separators will be removed from the final strings! 


^ Reaper version 5.40Lua version 5.3 RoundNumber

Functioncall:

integer retval = ultraschall.RoundNumber(number num)

Description:
returns a rounded value of the parameter number. %.5 and higher rounds up, lower than %.5 round down.

returns nil in case of an error

Returnvalues:
 integer retval the rounded number 

Parameters:
 number num the floatingpoint number, you'd like to have rounded. 


^ Reaper version 5.40Lua version 5.3 GetPartialString

Functioncall:

string partial_string = ultraschall.GetPartialString(string str, string sep1, string sep2)

Description:
returns the part of a filename-string between sep1 and sep2

returns nil if it doesn't work, no sep1 or sep2 exist

Returnvalues:
 string partial_string the partial string between sep1 and sep2 

Parameters:
 string str string to be processed 
 string sep1 separator on the "left" side of the partial string 
 string sep2 separator on the "right" side of the partial string 


^ Reaper version 5.40Lua version 5.3 Notes2CSV

Functioncall:

string csv_retval = ultraschall.Notes2CSV()

Description:
Gets the project's notes and returns it as a CSV.

Returnvalues:
 string csv_retval the project notes, returned as a csv-string; entries separated by a comma 



^ Reaper version 5.40Lua version 5.3 CSV2Line

Functioncall:

string values = ultraschall.CSV2Line(string csv_line)

Description:
converts a string of csv-values into a string with all values and without the ,-separators

returns nil in case of error

Returnvalues:
 string values all values in one string 



^ Reaper version 5.40Lua version 5.3 IsItemInTrack

Functioncall:

boolean retval = ultraschall.IsItemInTrack(integer tracknumber, integer itemIDX)

Description:
checks, whether a given item is part of the track tracknumber

returns true, if the itemIDX is part of track tracknumber, false if not, nil if no such itemIDX or Tracknumber available

Returnvalues:
 boolean retval true, if item is in track, false if item isn't in track 

Parameters:
 integer itemIDX the number of the item to check of 
 integer tracknumber the number of the track to check in, with 1 for track 1, 2 for track 2, etc. 


^ Reaper version 5.40Lua version 5.3 CheckActionCommandIDFormat

Functioncall:

boolean retval = ultraschall.CheckActionCommandIDFormat(action_command_id)

Description:
Checks, whether an action command id is a valid commandid(which is a number) or a valid _action_command_id (which is a string with an _underscore in the beginning).

Does not check, whether this action_command_id is a useable one, only if it's "syntax" is correct!

returns falsein case of an error

Returnvalues:
 boolean retval true, valid action_command_id; false, not a valid action_command_id 

Parameters:
 actioncommand_id the ActionCommandID you want to check; either a number or an action_command_id with an underscore at the beginning 


^ Reaper version 5.40Lua version 5.3 CheckActionCommandIDFormat2

Functioncall:

boolean retval = ultraschall.CheckActionCommandIDFormat2(action_command_id)

Description:
Checks, whether an action command id is a valid commandid(which is a number) or a valid _action_command_id (which is a string with an _underscore in the beginning).

Unlike CheckActionCommandIDFormat, this checks whether an action-command-id-string is an actual registered one(case sensitive!).

returns false in case of an error

Returnvalues:
 boolean retval true, valid action_command_id; false, not a valid action_command_id 

Parameters:
 actioncommand_id the ActionCommandID you want to check; either a number or an action_command_id with an underscore at the beginning 


^ Reaper version 5.40Lua version 5.3 ToggleStateAction

Functioncall:

integer retval = ultraschall.ToggleStateAction(integer section, string actioncommand_id, integer state)

Description:
Toggles state of an action using the actioncommand_id(instead of the CommandID-number)

returns current state of the action after toggling or -1 in case of error.

Returnvalues:
 integer retval state if the action, after it has been toggled 

Parameters:
 integer section the section of the action(see ShowActionlist-dialog)
0 - Main
100 - Main (alt recording)
32060 - MIDI Editor
32061 - MIDI Event List Editor
32062 - MIDI Inline Editor
32063 - Media Explorer 
 string actioncommand_id the ActionCommandID of the action to toggle 
 integer state 1 or 0 


^ Reaper version 5.40Lua version 5.3 RefreshToolbar_Action

Functioncall:

ultraschall.RefreshToolbar_Action(integer section, string actioncommand_id)

Description:
Refreshes a toolbarbutton with an ActionCommandID(instead of the CommandID-number)

returns -1 in case of error


Parameters:
 integer section section
0 - Main
100 - Main (alt recording)
32060 - MIDI Editor
32061 - MIDI Event List Editor
32062 - MIDI Inline Editor
32063 - Media Explorer 
 string actioncommand_id ActionCommandID of the action, associated with the toolbarbutton  


^ Reaper version 5.40Lua version 5.3 ToggleStateButton

Functioncall:

boolean retval = ultraschall.ToggleStateButton(integer section, string actioncommand_id, integer state)

Description:
Toggles state and refreshes the button of an actioncommand_id

returns false in case of error

Returnvalues:
 boolean retval true, toggling worked; false, toggling didn't work 

Parameters:
 integer section the section of the action(see ShowActionlist-dialog)
0 - Main
100 - Main (alt recording)
32060 - MIDI Editor
32061 - MIDI Event List Editor
32062 - MIDI Inline Editor
32063 - Media Explorer 
 string actioncommand_id the ActionCommandID of the action to toggle 
 integer state 1 or 0 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 SecondsToTime

Functioncall:

string time_string = ultraschall.SecondsToTime(number pos)

Description:
converts timeposition in seconds(pos) to a timestring (h)hh:mm:ss.mss

returns nil in case of error

Returnvalues:
 string time_string timestring in (h)hh:mm:ss.mss 

Parameters:
 number pos timeposition in seconds 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 TimeToSeconds

Functioncall:

number position = ultraschall.TimeToSeconds(string timestring)

Description:
converts a timestring days:hours:minutes:seconds.milliseconds to timeposition in seconds
it is ok, to have only some of the last ones given, so i.e. excluding days and hours is ok. Though excluding values inbetween does not work!

A single integer in timestring will be seen as seconds.
To only specifiy milliseconds in particular, start the number with a .
all other values are separated by :

returns -1 in case of error, timestring is a nil or if you try to add an additional value, added before days

does not check for valid timeranges, so 61 minutes is possible to give, even if hours are present in the string

Returnvalues:
 number position the converted position 

Parameters:
 string timestring a string like: days:hours:minutes:seconds.milliseconds , i.e. 1:16:27:50.098 


^ Reaper version 5.40Lua version 5.3 SecondsToTimeString_hh_mm_ss_mss

Functioncall:

string timestring = ultraschall.SecondsToTimeString_hh_mm_ss_mss(number time)

Description:
Converts the parameter time into a timestring of the format hh:mm:ss.mss
Valid timeranges are from 0 to 359999.99 seconds(about 99 hours).

returns -1 in case of error

Returnvalues:
 string timestring the converted timestring. It will always follow the format hh:mm:ss.mss and fill up digits with zeros, if necessary. 

Parameters:
 number time the time in seconds to be converted into the timestring 


^ Reaper version 5.40Lua version 5.3 TimeStringToSeconds_hh_mm_ss_mss

Functioncall:

number time = ultraschall.TimeStringToSeconds_hh_mm_ss_mss(string timestring)

Description:
Converts the parameter timestring of the format hh:mm:ss.mss into seconds
The timestring must follow strictly this format, or the function returns -1 as result.

returns -1 in case of error

Returnvalues:
 number time the time in seconds to be converted into the timestring, -1 in case of an error 

Parameters:
 string timestring the converted timestring. It must always follow the format hh:mm:ss.mss. Fill up digits with zeros, if necessary. 


^ Reaper version 5.52Lua version 5.3 CountPatternInString

Functioncall:

integer count, array positions = ultraschall.CountPatternInString(string sourcestring, string searchstring, boolean non_case_sensitive)

Description:
returns the count and an array with all positions of searchstring in sourcestring.

Returnvalues:
 integer count the number of appearances of searchstring in sourcestring 
 array positions an array with count-entries, where every entry contains the position of searchstring in sourcestring 

Parameters:
 string sourcestring the string, you want to search through 
 string searchstring the string, you want to search for in sourcestring 
 boolean non_case_sensitive true, the search does not care about case-sensitivity; false, case of searchstring will be kept 


^ Reaper version 5.40Lua version 5.3 OpenURL

Functioncall:

integer retval = ultraschall.OpenURL(string url)

Description:
Opens the URI with the standard-browser installed in your system.

returns -1 in case of an error


Parameters:
 string url the url to be opened in the browser; will check for :// in it for validity! 


^ Reaper version 5.40Lua version 5.3 CountEntriesInTable_Main

Functioncall:

integer count, table subtables, integer count_of_subtables = ultraschall.CountEntriesInTable_Main(table the_table)

Description:
Counts the number of entries in an indexed table.
Will only count the entries from the main-table, not it's subtables. If you want to know the number of subtables, this function returns a table that includes all subtables found in the main-table,
as well as the number of found subtables.

Returns -1 if table isn't a valid table

Returnvalues:
 integer count the number of entries in the table 
 table subtables if an entry of table has a table as value, that table-value will be included in this subtables-table(for recursive counting-usecases) 
 integer count_of_subtables the number of entries in the subtables-table 

Parameters:
 table table the table, whose entries you want to count 


^ Reaper version 5.40Lua version 5.3 CompareArrays

Functioncall:

table diff_array = ultraschall.CompareArrays(table Array, table CompareArray2)

Description:
Compares Array using parameter CompareArray2 and returns an array with all entries in CompareArray2, that are not in Array.
The comparable arrays must be indexed by integer-numbers.

Returns nil in case of an error

Returnvalues:
 table diff_array an array with all entries from CompareArray2, that are not in Array 

Parameters:
 table Array the reference-array 
 table CompareArray2 the array you want to check against Array; all entries in CompareArray2 that are not in Array will be returned 


^ Reaper version 5.40Lua version 5.3 GetOS

Functioncall:

string operating_system, integer bits = ultraschall.GetOS()

Description:
Returns operating system and if it's a 64bit/32bit-operating system.

Returnvalues:
 string operating_system the operating system used; usually "Win", "Mac" or "Other"(e.g. when Linux is used) 
 integer bits the number of bits of the operating-system. Either 32 or 64 bit. 



^ Reaper version 5.40Lua version 5.3 IsOS_Windows

Functioncall:

boolean is_windows, integer number_of_bits = ultraschall.IsOS_Windows()

Description:
returns, if the current operating system is windows

Returnvalues:
 boolean is_windows true, if the operating-system is windows; false if not 
 integer bits the number of bits of the operating-system. Either 32 or 64 bit; nil if is_win==false 



^ Reaper version 5.40Lua version 5.3 IsOS_Mac

Functioncall:

boolean is_mac, integer number_of_bits = ultraschall.IsOS_Mac()

Description:
returns, if the current operating system is mac-osx

Returnvalues:
 boolean is_mac true, if the operating-system is mac-osx; false if not 
 integer bits the number of bits of the operating-system. Either 32 or 64 bit.; nil if is_mac=false 



^ Reaper version 5.40Lua version 5.3 IsOS_Other

Functioncall:

boolean is_other, integer number_of_bits = ultraschall.IsOS_Other()

Description:
returns, if the current operating system is neither mac or win

Returnvalues:
 boolean is_other true, if the operating-system is neither mac or win; false if not 
 integer bits the number of bits of the operating-system. Either 32 or 64 bit.; nil if is_other=false 



^ Reaper version 5.975Lua version 5.3 GetReaperAppVersion

Functioncall:

integer majorversion, integer subversion, string bits, string operating_system, boolean portable, optional string betaversion = ultraschall.GetReaperAppVersion()

Description:
Returns operating system and if it's a 64bit/32bit-operating system.

Returnvalues:
 integer majorversion the majorversion of Reaper. Can be used for comparisions like "if version<5 then ... end". 
 integer subversion the subversion of Reaper. Can be used for comparisions like "if subversion<96 then ... end". 
 string bits the number of bits of the reaper-app 
 string operating_system the operating system, either "Win", "OSX" or "Other" 
 boolean portable true, if it's a portable installation; false, if it isn't a portable installation 
 optional string betaversion if you use a pre-release of Reaper, this contains the beta-version, like "rc9" or "+dev0423" or "pre6" 



^ Reaper version 5.77Lua version 5.3 LimitFractionOfFloat

Functioncall:

number altered_number = ultraschall.LimitFractionOfFloat(number number, integer length_of_fraction, boolean roundit)

Description:
limits the fraction of a float-number to a specific length of fraction(digits). You can also choose to round the value or not.

returns nil in case of error

Returnvalues:
 number altered_number the altered number with the new fraction-length. Will be equal to parameter number, if number was integer or fraction less digits than length_of_fraction 

Parameters:
 number number the number, whose fraction shall be limited 
 integer length_of_fraction the number of digits in the fraction 
 boolean roundit false, no rounding; true, rounds the fraction. Rounding-precision is only length_of_fraction+1, all the other digits will be ignored. If length_of_fraction+1>=5, it will be rounded up, otherwise down. 


^ Reaper version 5.77Lua version 5.3 GetAllEntriesFromTable

Functioncall:

integer count, table foundtypes, table returned_table = ultraschall.GetAllEntriesFromTable(table table)

Description:
Gets an iterable version of table. Good for analysing unknown tables.

Returns the number of entries, a table(array) with the datatypes of each entry and the table with all it's entries in the same order as in the foundtypes-table.

This doesn't treat table recursivley, means: each "Subtable" within the table is treated as one entry of the type "table". That means, that these tables must be analysed themselves in an extra step!
A[1]=1
A[2][1]=2
A[2][2]=3.4
will return two(!) entries, the first being of type "integer", the second being of type "table". Next step would be to run use this function to analyse A[2] as well, which would result in two entries: the first being of type "integer" and the second of type "float", etc.

returns -1 in case of error

Returnvalues:
 integer count the number of table-entries found 
 table foundtypes a table, with count-entries, each entry having the type of each entry in the returned_table as string.
The types can be "nil", "integer", "float", "string", "boolean", "table", "function", "thread", "userdata" 
 table returned_table an iterable version of table. The type of each entry can be found in the accompanying entry of foundtypes
the format is returned_table[indexnr][1] - indexname/number of the original table-entry
               returned_table[indexnr][2] - the value of the original table-entry
the indexnr is 1 to count, while [indexnr][1] is the indexnr of the original-table-entry, which might be a string, functionname or something else as well 

Parameters:
 table table the table to get the individual entries from 


^ Reaper version 5.77Lua version 5.3 APIExists

Functioncall:

boolean retval = ultraschall.APIExists(string functionname)

Description:
returns true, if a certain function/variable exists in ultraschall.

returns false if nothing has been found

Returnvalues:
 boolean retval true, if element exists; false if it doesn't exist 

Parameters:
 string functionname the name of the function to check for; only the functionname without ultraschall. ! 


^ Reaper version 5.40Lua version 5.3 IsValidGuid

Functioncall:

boolean retval = ultraschall.IsValidGuid(string guid, boolean strict)

Description:
Checks, if guid is a valid guid. Can also be used for strings, that contain a guid somewhere in them(strict=false)

A valid guid is a string that follows the following pattern:
{........-....-....-....-............}
where . is a hexadecimal value(0-F)

Returns false in case of error

Returnvalues:
 boolean retval true, guid is/contains a valid guid; false, guid isn't/does not contain a valid guid 

Parameters:
 string guid the guid to check for validity 
 boolean strict true, guid must only be the valid guid; false, guid must contain a valid guid somewhere in it(means, can contain trailing or preceding characters) 


^ Reaper version 5.40Lua version 5.3 SetGuidExtState

Functioncall:

integer retval = ultraschall.SetGuidExtState(string guid, string key, string value, integer savelocation, boolean overwrite, boolean persists)

Description:
Sets an extension-state using a given guid. Good for storing additional metadata of objects like MediaTracks, MediaItems, MediaItem_Takes, etc(everything, that has a guid).
The state can be saved as either global extension state or "local" extension-project-state(in the currently opened project)
The guid can have additional text, but must contain a valid guid somewhere in it!
A valid guid is a string that follows the following pattern:
{........-....-....-....-............}
where . is a hexadecimal value(0-F)

Returns -1 in case of error

Returnvalues:
 integer retval the idx of the extstate(if a project extension state); 1, successful(with extension states), -1, unsuccessful 

Parameters:
 string guid the guid of the object, for whom you want to store a key/value-pair; can have additional characters before and after the guid, but must contain a valid guid! 
 string key the key for this guid 
 string value the value to store into the key/value-store 
 integer savelocation 0, store as project extension state(into the currently opened project); 1, store as global extension state(when persist=true, into reaper-extstate.ini in the resourcesfolder) 
 boolean overwrite true, overwrite a previous given value; false, don't overwrite, if a value exists already 
 boolean persists true, make extension state persistent(available after Reaper-restart); false, don't make it persistent; Only with global extension states 


^ Reaper version 5.40Lua version 5.3 SetBitfield

Functioncall:

integer new_integer_bitfield = ultraschall.SetBitfield(integer integer_bitfield, boolean set_to, integer bit_1, integer bit_2, ... integer bit_n)

Description:
Alters an integer-bitfield.

Returns nil in case of error, like invalid bit-values

Returnvalues:
 integer new_integer_bitfield the newly altered bitfield 

Parameters:
 integer integer_bitfield the old integer-bitfield that you want to alter 
 boolean set_to true, set the bits to 1; false, set the bits to 0; nil, toggle the bits 
 integer bit1..n one or more parameters, that include the bitvalues toset/unset/toggle with 1 for the first bit; 2 for the second, 4 for the third, 8 for the fourth, etc 


^ Reaper version 5.40Lua version 5.3 PreventCreatingUndoPoint

Functioncall:

ultraschall.PreventCreatingUndoPoint()

Description:
Prevents creation of an Undo-point. Only useful in non-defer-scripts.




^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 SetIntConfigVar_Bitfield

Functioncall:

boolean retval, integer new_integer_bitfield = ultraschall.SetIntConfigVar_Bitfield(string configvar, boolean set_to, integer bit_1, integer bit_2, ... integer bit_n)

Description:
Alters an integer-bitfield stored by a ConfigVariable.

Returns false in case of error, like invalid bit-values, etc

Returnvalues:
 boolean retval true, if altering was successful; false, if not successful 
 integer new_integer_bitfield the newly altered bitfield 

Parameters:
 string configvar the config-variable, that is stored as an integer-bitfield, that you want to alter. 
 boolean set_to true, set the bits to 1; false, set the bits to 0; nil, toggle the bits 
 integer bit1..n one or more parameters, that include the bitvalues toset/unset/toggle with 1 for the first bit; 2 for the second, 4 for the third, 8 for the fourth, etc 


^ Reaper version 5.40Lua version 5.3 MakeCopyOfTable

Functioncall:

table table_copy = ultraschall.MakeCopyOfTable(table table)

Description:
Creates a true copy of a table(not only references).

adapted from Tyler Neylon's function, found at Stack Overflow

Returns nil if table isn't a valid table

Returnvalues:
 table table_copy the true copy of the table; nil in case of error 

Parameters:
 table table the table to create a copy from. 


^ Reaper version 5.40Lua version 5.3 ConvertStringToAscii_Array

Functioncall:

integer length, table byte_array = ultraschall.ConvertStringToAscii_Array(string string)

Description:
Converts a string into it's individual characters and numerical-representation as a table and after that returns its number of table-entries and the table.

Returns -1 if string isn't a valid string

Returnvalues:
 integer length the number of characters in the string/entries in the returned table byte_array 
 table byte_array the ByteArray as a table, with the format
     ByteArray[idx][1]="A" -- the byte itself
     ByteArray[idx][2]=65  -- the numerical representation of the byte 

Parameters:
 string string the string to be converted 


^ Reaper version 5.40Lua version 5.3 CompareStringWithAsciiValues

Functioncall:

boolean retval, integer errorposition = ultraschall.CompareStringWithAsciiValues(string string, integer bytevalue_1, integer bytevalue_2, ... integer bytevalue_n)

Description:
Compares a string with a number of byte-values(like ASCII-values).
Bytevalues can be either decimal and hexadecimal.
-1, if you want to skip checking of a specific position in string.

Returns false in case of error

Returnvalues:
 boolean retval true, if check was successful; false, if not successful 
 integer errorposition if retval is false, this will contain the position in string, where the checking failed; nil, if retval is true 

Parameters:
 string string the string to check against the bytevalues 
 integer bytevalue_1..n one or more parameters, that include the bytevalues to check against the accompanying byte in string; -1, if you want to skip check for that position 


^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 ReturnsMinusOneInCaseOfError_Arzala

Functioncall:

integer retval = ultraschall.ReturnsMinusOneInCaseOfError_Arzala()

Description:
Returns -1 in case of an error

Returnvalues:
 integer retval returns -1 in case of error 



^ Reaper version 5.77Lua version 5.3 CountLinesInString

Functioncall:

integer number_of_lines = ultraschall.CountLinesInString(string String)

Description:
Counts the lines in a string. It counts them by counting \n-newlines(not carriage returns!)

Returns -1 in case of an error

Returnvalues:
 integer number_of_lines number of lines of the string 

Parameters:
 string String the string to count the lines of 


^ Reaper version 5.40Lua version 5.3 ReturnTypeOfReaperObject

Functioncall:

string objecttype = ultraschall.ReturnTypeOfReaperObject(Reaperobject object)

Description:
returns the type of a Reaper-object.

Returnvalues:
 string objecttype the type of the parameter of object
the following types can be returned:
ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source, None 

Parameters:
 Reaperobject object a Reaper-object of the following types:
ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source
returns None if the object isn't a valid Reaper-object 


^ Reaper version 5.40Lua version 5.3 IsObjectValidReaperObject

Functioncall:

boolean retval, string objecttype = ultraschall.IsObjectValidReaperObject(Reaperobject object)

Description:
checks, if object is a valid Reaper-object. It also returns the type of that Reaper-object.

Returnvalues:
 boolean retval true, if it's a valid Reaper-object; false, if not 
 string objecttype the type of the parameter of object
the following types can be returned:
ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source, None 

Parameters:
 Reaperobject object a Reaper-object of the following types:
ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source
returns None if the object isn't a valid Reaper-object 


^ Reaper version 5.40Lua version 5.3 KeepTableEntriesOfType

Functioncall:

table alteredtable = ultraschall.KeepTableEntriesOfType(table worktable, string keeptype)

Description:
Removes all entries from worktable, that are not of the datatype as given by keeptype.

returns nil in case of error

Returnvalues:
 table alteredtable the table, that contains only the entries of the type as given by parameter keeptype 

Parameters:
 table worktable the unaltered source-table for processing 
 string keeptype the type that shall remain in table
allowed are boolean, integer, float, number, table, string, userdata, thread, ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source 


^ Reaper version 5.40Lua version 5.3 RemoveTableEntriesOfType

Functioncall:

table alteredtable = ultraschall.RemoveTableEntriesOfType(table worktable, string removetype)

Description:
Removes all entries from worktable, that are of the datatype as given by removetype.

returns nil in case of error

Returnvalues:
 table alteredtable the table, that contains only the entries that are nt of the type as given by parameter removetype 

Parameters:
 table worktable the unaltered source-table for processing 
 string removetype the type that shall be removed from table
allowed are boolean, integer, float, number, table, string, userdata, ReaProject, MediaTrack, MediaItem, MediaItem_Take, TrackEnvelope, PCM_source 


^ Reaper version 5.40Lua version 5.3 IsItemInTrack3

Functioncall:

boolean retval = ultraschall.IsItemInTrack3(MediaItem MediaItem, string trackstring)

Description:
Checks, whether a MediaItem is in any of the tracks, given by trackstring.

see IsItemInTrack to use itemidx instead of the MediaItem-object.
see IsItemInTrack2 to check against only one track.

returns nil in case of error

Returnvalues:
 boolean retval true, if item is in track; false, if not 
 string trackstring a string with all tracknumbers, separated by commas; 1 for track 1, 2 for track 2, etc 

Parameters:
 MediaItem MediaItem the MediaItem, of which you want to know the track is is placed in 
 string trackstring a string with all tracknumbers, separated by commas; 1 for track 1, 2 for track 2, etc 


^ Reaper version 5.77Lua version 5.3 AddIntToChar

Functioncall:

string new_character = ultraschall.AddIntToChar(string character, integer int)

Description:
Adds/subtracts int to/from the numeric representation of character. It will return the new character.
It will not(!) include "overflows" into the adding/subtraction. That said, if you want to add a value resulting in a character above ASCII-code 255, it will fail!

Returns nil in case of an error

Returnvalues:
 string new_character the new character, after parameter int has been added/subtracted from/to character 

Parameters:
 string character the character, onto which you want to add/subtract parameter int; only single character allowed 
 integer int the value, that you want to add to the numerical representation of parameter character 


^ Reaper version 5.92Lua version 5.3 MakeFunctionUndoable

Functioncall:

boolean retval, string current_UndoMessage, retvals_1, ..., retvals_2 = ultraschall.MakeFunctionUndoable(function Func, string UndoMessage, integer Flag, Func_parameters_1, ... Func_parameters_n)

Description:
Run the function Func and create an undopoint for this function. You can also give an UndoMessage and a flag for Reaper to use.
All parameters needed by Func follow after parameter Flag, as if it would be the normal parameters.
This should make creating undo-points much much easier...

Note: Reaper will use the undo-point only for functions, who do "undo"-able things. If you don't have something of that kind(no creating a track or something), Reaper will not create an undo-point.

Returns false in case of an error

Returnvalues:
 boolean retval true, undoing was successful; false, undoing wasn't successful 
 string current_UndoMessage the current UndoMessage for the last action done by Reaper. Use this so see, if getting an undo-point was successful 
 retvals_1 ... retvals_2 the returnvalues, as returned by function Func 

Parameters:
 function Func the function, that you want to create an undo-point for 
 string UndoMessage the undo-message to be displayed by Reaper in the Undo-history 
 integer Flag you can set a flag, if you want, for this undo-point 
 Func_parameters_1, ... Func_parameters_n the parameters, as needed by the function Func; will be given to Func as provided by you 


^ Reaper version 5.92Lua version 5.3 ReturnTableAsIndividualValues

Functioncall:

retval1, retval2, retval3, ... , retval64 = ultraschall.ReturnTableAsIndividualValues(table Table)

Description:
Returns the first 64 entries of an numerical-indexed table as returnvalues

Returnvalues:
 retval1 ... retval64 the values from Table returned 

Parameters:
 table Table the table, whose values you want to return. It will only return values with index 1...64! 


^ Reaper version 5.77Lua version 5.3 type

Functioncall:

string type_of_object, optional boolean isnumber = ultraschall.type(identifier object)

Description:
Returns the type of the object.
Supported types are Lua's own datatypes as well as Reaper's own datatypes.

Due API-limitations, SWS-specific datatypes are not supported in this function!

Returnvalues:
 string type_of_object the type of the object; the following are valid:
nil, number: integer, number: float, boolean, string, function, table, thread, userdata,
ReaProject, MediaItem, MediaItem_Take, MediaTrack, TrackEnvelope, AudioAccessor, joystick_device, PCM_source
userdata will be shown, if object isn't of any known type 
 optional boolean isnumber true, if object is a number(either integer or number) 

Parameters:
 identifier object the object, whose type you want to know 


^ Reaper version 5.95Lua version 5.3 ConcatIntegerIndexedTables

Functioncall:

integer numentries, array concatenated_table = ultraschall.ConcatIntegerIndexedTables(array table1, array table2)

Description:
Concatenates the entries of two tables into one table. The entries of each table must be indexed by integers

The new table still has the same references as the old table, means: if you remove the old tables/entries in the old tables, the concatenated table/accompanying entries will loose elements.
To get a "true"-concatenated copy, you should first create new copies of the tables, using MakeCopyOfTable.

Returnvalues:
 integer numentries the number of entries in the new table 
 array concatenated_table the new concatenated table 

Parameters:
 array table1 the first table to be concatenated; the entries must be indexed by integer-numbers! 
 array table2 the second table to be concatenated; the entries must be indexed by integer-numbers! 


^ Reaper version 5.40Lua version 5.3 ReverseTable

Functioncall:

table reversed_table, integer entry_count = ultraschall.ReverseTable(table the_table)

Description:
reversed the order of the entries of a table, means, the last entry will become the first, the first become the last, etc.
The table must be indexed by integers.

Returns nil if table isn't a valid table

Returnvalues:
 table reversed_table the resulting table with the reversed order of all entries 
 integer entry_count the number of entries in the reversed_table 

Parameters:
 table table the table, whose entries you want to reverse 


^ Reaper version 5.95Lua version 5.3 GetDuplicatesFromArrays

Functioncall:

integer duplicate_count, array duplicate_array, integer originalscount_array1, array originals_array1, integer originalscount_array2, array originals_array2 = ultraschall.GetDuplicatesFromArrays(array array1, array array2)

Description:
Returns the duplicates and the originals(entries only in one of the arrays) of two arrays. It will also return the number of entries.

This works only on arrays with integer-indexed entries; index must start with index 1!

returns -1 in case of an error

Returnvalues:
 integer duplicate_count the number of entries in both arrays 
 array duplicate_array the entries in both arrays 
 integer originalscount_array1 the number of entries only in array1 
 array originals_array1 the entries that are only existing in array1 
 integer originalscount_array2 the number of entries only in array2 
 array originals_array2 the entries that are only existing in array2 

Parameters:
 array array1 the first array to check for duplicates and "original"-entries 
 array array2 the second array to check for duplicates and "original"-entries 


^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetScriptFilenameFromActionCommandID

Functioncall:

string scriptfilename_with_path = ultraschall.GetScriptFilenameFromActionCommandID(string action_command_id)

Description:
returns the filename with path of a script, associated to a ReaScript.
Command-ID-numbers do not work!
                        
returns false in case of an error

Returnvalues:
 string scriptfilename_with_path the scriptfilename with path associated with this ActionCommandID 

Parameters:
 string Path the path to set as new current working directory 


^ Reaper version 5.95Lua version 5.3 CombineBytesToInteger

Functioncall:

integer retval = ultraschall.CombineBytesToInteger(integer bitoffset, integer Byte_1, optional Byte_2, ..., optional Byte_n)

Description:
Combines the Byte-values Byte_1 to Byte_n into one integer.
That means, if you give 4 values, it will return a 32bit-integer(4*8Bits).

Negative values will use the maximum possible value of that byte minus the bits.
In Byte_1, -2 will be 255-1=254, in Byte 2, -2 will be 65280-256=65024.

Use bitoffset to define, from which bit on you want to combine the values.

Returns -1 in case of an error

Returnvalues:
 integer retval the combined integer 

Parameters:
 integer bitoffset if you want to start combining the values from a certain bitoffset-onwards, set the offset here; use 0 to start with the first bit. 
 integer Byte_1 a bytevalue that you want to combine into one 
 optional integer Byte_2 a bytevalue that you want to combine into one 


^ Reaper version 5.95Lua version 5.3 SplitIntegerIntoBytes

Functioncall:

integer Byte1, integer Byte2, integer Byte3, integer Byte4 = ultraschall.SplitIntegerIntoBytes(integer integervalue)

Description:
Splits a 32-bit-integer-value into four bytes.

Returns -1 in case of an error

Returnvalues:
 integer Byte1 the first eight bits of the integer-value as a Byte 
 integer Byte2 the second eight bits of the integer-value as a Byte 
 integer Byte3 the third eight bits of the integer-value as a Byte 
 integer Byte4 the fourth eight bits of the integer-value as a Byte 

Parameters:
 integer integeroffset the integer-value that you want to split into individual bytes 


^ Reaper version 5.95Lua version 5.3 GetReaperScriptPath

Functioncall:

string reaper_script_path = ultraschall.GetReaperScriptPath()

Description:
Returns path to Reaper's script-folder

Returnvalues:
 string reaper_script_path the path of the scripts-folder of Reaper 



^ Reaper version 5.95Lua version 5.3 GetReaperColorThemesPath

Functioncall:

string reaper_colorthemes_path = ultraschall.GetReaperColorThemesPath()

Description:
Returns path to Reaper's color-theme-folder

Returnvalues:
 string reaper_colorthemes_path the path of the color-theme-folder of Reaper 



^ Reaper version 5.95Lua version 5.3 GetReaperJSFXPath

Functioncall:

string reaper_jsfx_path = ultraschall.GetReaperJSFXPath()

Description:
Returns path to Reaper's JSFX-plugin-folder

Returnvalues:
 string reaper_jsfx_path the path of the JSFX-plugin-folder of Reaper 



^ Reaper version 5.95Lua version 5.3 GetReaperWebRCPath

Functioncall:

string reaper_webrc_path, string user_webrc_path = ultraschall.GetReaperWebRCPath()

Description:
Returns path to the Web-RC-folder for Reaper as well as for the user-webrc-pages.

Returnvalues:
 string reaper_script_path the path of the JSFX-plugin-folder of Reaper 



^ Reaper version 5.95Lua version 5.3 CycleTable

Functioncall:

table new_table = ultraschall.CycleTable(table the_table, integer offset)

Description:
Cycles the entries by offset. Offset can be positive(cycle forward) or negative(cycle negative). The number also tells the function, by how many entries the table shall be cycled, with 1 for one entry, 2 for 2 entries, etc.
Entries "falling out" of one side(top or bottom) of the table will be readded on the other side.

returns nil in case of error

Returnvalues:
 table new_table the altered table 

Parameters:
 table the_table the table to cycle through 
 integer offset the offset, by which to cycle the entries through; positive, cycle entries forward; negative, cycle entries backward 


^ Reaper version 5.941Lua version 5.3 SplitStringAtNULLBytes

Functioncall:

integer count, array split_strings = ultraschall.SplitStringAtNULLBytes(string splitstring)

Description:
Splits splitstring into individual string at NULL-Bytes.

returns -1 in case of an error

Returnvalues:
 integer count the number of found strings 
 array split_strings the found strings put into an array 

Parameters:
 string splitstring the string with NULL-Bytes(\0) into it, that you want to split 


^ Reaper version 5.95Lua version 5.3 RunBackgroundHelperFeatures

Functioncall:

ultraschall.RunBackgroundHelperFeatures(boolean switch_on)

Description:
Starts background-scripts supplied with the Ultraschall-API, like:

- a script for getting the last edit-cursor-position before the current one -> GetLastCursorPosition()
- a script for getting the last playstate before the current one -> GetLastPlayState()
- a script for getting the last loopstate before the current one -> GetLastLoopState()


Parameters:
 boolean switch_on true, start the background-scripts/start unstarted background-helper-scripts; false, stop all background-helper-scripts 


^ Reaper version 5.95Lua version 5.3 Main_OnCommandByFilename

Functioncall:

boolean retval, string script_identifier = ultraschall.Main_OnCommandByFilename(string filename, string ...)

Description:
Runs a command by a filename. It internally registers the file temporarily as command, runs it and unregisters it again.
This is especially helpful, when you want to run a command for sure without possible command-id-number-problems.

It returns a unique script-identifier for this script, which can be used to communicate with this script-instance.
The started script gets its script-identifier using GetScriptIdentifier.
You can use this script-identifier e.g. as extstate.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running it was successful; false, if not 
 string script_identifier a unique script-identifier, which can be used as extstate to communicate with the started scriptinstance 

Parameters:
 string filename the name and path of the scriptfile to run 
 string ... parameters that shall be passed over to the script 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 MIDI_OnCommandByFilename

Functioncall:

boolean retval, string script_identifier = ultraschall.MIDI_OnCommandByFilename(string filename, optional HWND Midi_EditorHWND, string ...)

Description:
Runs a command by a filename in the MIDI-editor-context. It internally registers the file temporarily as command, runs it and unregisters it again.
This is especially helpful, when you want to run a command for sure without possible command-id-number-problems.

It returns a unique script-identifier for this script, which can be used to communicate with this script-instance.
The started script gets its script-identifier using GetScriptIdentifier.
You can use this script-identifier e.g. as extstate.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running it was successful; false, if not 
 string script_identifier a unique script-identifier, which can be used as extstate to communicate with the started scriptinstance 

Parameters:
 HWND Midi_EditorHWND the window-handler of the MIDI-editor, in which to run the script; nil, for the last active MIDI-editor 
 string filename the name plus path of the scriptfile to run 
 string ... parameters, that shall be passed over to the script 


^ Reaper version 5.965Lua version 5.3 GetScriptParameters

Functioncall:

integer num_params, array params, string caller_script_identifier = ultraschall.GetScriptParameters(optional string script_identifier, optional boolean remove)

Description:
Gets the parameters stored for a specific script_identifier.

returns -1 in case of an error

Returnvalues:
 integer num_params the number of parameters available 
 array params the values of the parameters as an array 
 string caller_script_identifier the scriptidentifier of the script, that set the parameters 

Parameters:
 optional string script_identifier the script-identifier, whose parameters you want to retrieve;
use nil, to get the parameters stored for the current script 
 optional boolean remove true or nil, remove the stored parameter-extstates; false, keep them for later retrieval 


^ Reaper version 5.965Lua version 5.3 SetScriptParameters

Functioncall:

boolean retval, string script_identifier = ultraschall.SetScriptParameters(string script_identifier, string ...)

Description:
Sets the parameters stored for a specific script_identifier.

Returnvalues:
 boolean retval true, storing was successful 
 string script_identifier the script_identifier, whose parameters have been set 

Parameters:
 string script_identifier the script-identifier, whose parameters you want to retrieve;
use nil, to set the parameters stored for the current script 
 string ... the parameters you want to set; there can be more than one, but they must be strings 


^ Reaper version 5.965Lua version 5.3 GetScriptReturnvalues

Functioncall:

integer num_params, array retvals = ultraschall.GetScriptReturnvalues(string sender_script_identifier, optional boolean remove)

Description:
Gets the return-values which a specific sender_script_identifier sent to the current script.

If you have started numerous child-scripts and want to know, which child-script sent you return-values, see GetScriptReturnvalues_Sender

returns -1 in case of an error

Returnvalues:
 integer num_retvals the number of return-values available 
 array params the values of the return-values as an array 

Parameters:
 string sender_script_identifier the script-identifier, that sent the return-values to your script 
 optional boolean remove true or nil, remove the stored retval-extstates; false, keep them for later retrieval 


^ Reaper version 5.965Lua version 5.3 SetScriptReturnvalues

Functioncall:

boolean retval = ultraschall.SetScriptReturnvalues(string script_identifier, string ...)

Description:
Send return-values back to the script, that has a specific script_identifier.

returns false in case of an error

Returnvalues:
 boolean retval true, storing was successful; false, there was an error 

Parameters:
 string script_identifier the script-identifier of the script-instance, to where you want to send the returnvalues  
 string ... the returnvalues you want to set; there can be more than one, but they must be strings 


^ Reaper version 5.965Lua version 5.3 GetScriptReturnvalues_Sender

Functioncall:

integer count, array retval_sender = ultraschall.GetScriptReturnvalues_Sender()

Description:
Retrieves, which scripts sent returnvalues to the current script.

Returnvalues:
 integer count the number of scripts, who have left returnvalues for the current script 
 array retval_sender the ScriptIdentifier of the scripts, who returned values 



^ Reaper version 5.965Lua version 5.3 Base64_Encoder

Functioncall:

string encoded_string = ultraschall.Base64_Encoder(string source_string, optional integer base64_type, optional integer remove_newlines, optional integer remove_tabs)

Description:
Converts a string into a Base64-Encoded string.
Currently, only standard Base64-encoding is supported.

Returns nil in case of an error

Returnvalues:
 string encoded_string the encoded string 

Parameters:
 string source_string the string that you want to convert into Base64 
 optional integer base64_type the Base64-decoding-style
nil or 0, for standard default Base64-encoding 
 optional integer remove_newlines 1, removes \n-newlines(including \r-carriage return) from the string
2, replaces \n-newlines(including \r-carriage return) from the string with a single space 
 optional integer remove_tabs 1, removes \t-tabs from the string
2, replaces \t-tabs from the string with a single space 


^ Reaper version 5.965Lua version 5.3 Base64_Decoder

Functioncall:

string decoded_string = ultraschall.Base64_Decoder(string source_string, optional integer base64_type)

Description:
Converts a Base64-encoded string into a normal string.
Currently, only standard Base64-encoding is supported.

Returns nil in case of an error

Returnvalues:
 string decoded_string the decoded string 

Parameters:
 string source_string the Base64-encoded string 
 optional integer base64_type the Base64-decoding-style
nil or 0, for standard default Base64-encoding 


^ Reaper version 5.965Lua version 5.3 StateChunkLayouter

Functioncall:

string layouted_statechunk = ultraschall.StateChunkLayouter(string statechunk)

Description:
Layouts StateChunks as returned by GetTrackStateChunk or GetItemStateChunk into a format that resembles the formatting-rules of an rpp-file.
This is very helpful, when parsing such a statechunk, as you can now use the number of spaces used for intendation as help parsing.
Usually, every new element, that starts with < will be followed by none or more lines, that have two spaces added in the beginning.
Example of a MediaItemStateChunk(I use . to display the needed spaces in the beginning of each line):

<ITEM
..POSITION 6.96537864205337
..SNAPOFFS 0
..LENGTH 1745.2745
..LOOP 0
..ALLTAKES 0
..FADEIN 1 0.01 0 1 0 0
..FADEOUT 1 0.01 0 1 0 0
..MUTE 0
..SEL 1
..IGUID {020E6372-97E6-4066-9010-B044F67F2772}
..IID 1
..NAME myaudio.flac
..VOLPAN 1 0 1 -1
..SOFFS 0
..PLAYRATE 1 1 0 -1 0 0.0025
..CHANMODE 0
..GUID {79F087CE-49E8-4212-91F5-8487FBCF10B1}
..<SOURCE FLAC
....FILE "C:\Users\meo\Desktop\X_Karo_Lynn-Interview.flac"
..>
>


This function will not check, if you've passed a valid statechunk!

returns nil in case of an error

Returnvalues:
 string layouted_statechunk the statechunk, that is now layouted to the rules of rpp-projectfiles 

Parameters:
 string statechunk a statechunk, that you want to layout properly 


^ Reaper version 5.965Lua version 5.3 ReverseEndianess_Byte

Functioncall:

integer newbyte = ultraschall.ReverseEndianess_Byte(integer byte)

Description:
reverses the endianess of a byte and returns this as value.
The parameter byte must be between 0 and 255!

returns nil in case of an error

Returnvalues:
 integer newbyte the endianess-reversed byte 

Parameters:
 integer byte the integer whose endianess you want to reverse 


^ Reaper version 5.965Lua version 5.3 ConvertIntegerToBits

Functioncall:

string bitvals_csv, table bitvalues = ultraschall.ConvertIntegerToBits(integer integer)

Description:
converts an integer-value(up to 64 bits) into it's individual bits and returns it as comma-separated csv-string as well as a table with 64 entries.

returns nil in case of an error

Returnvalues:
 string bitvals_csv a comma-separated csv-string of all bitvalues, with bit 1 coming first and bit 32 coming last 
 table bitvalues a 64-entry table, where each entry contains the bit-value of integer; first entry for bit 1, 64th entry for bit 64 

Parameters:
 integer integer the integer-number to separated into it's individual bits 


^ Reaper version 5.965Lua version 5.3 ConvertBitsToInteger

Functioncall:

integer integervalue = ultraschall.ConvertBitsToInteger(table bitvalues)

Description:
converts a table with all bitvalues into it's integer-representation.
each table-entry holds either a 1 or a 0;
  with index 1 being the first (for 1),
  index 2 for the second (for 2),
  index 3 for the third (for 4),
  index 4 for the fourth(for 8), etc

returns nil in case of an error

Returnvalues:
 integer integer the integer-number converted from the integer-entries 

Parameters:
 table bitvalues a table, where each entry contains the bit-value of integer; first entry for bit 1, 64th entry for bit 64, etc 


^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 GetSetIntConfigVar

Functioncall:

boolean retval, integer config_var_value = ultraschall.GetSetIntConfigVar(string varname, boolean set, optional boolean bit1, ..., optional boolean bit32)

Description:
Gets/Sets an integer-bitfield of an integer-configvariable.

Pass to it a varname, if it shall be set or gotten from and up to 32 parameters who specify, if that bit shall be set(true) or not(false) or the currently set value shall be used(nil)

See Reaper_Config_Variables.html for more details on config-variables in Reaper.

returns false in case of an error

Returnvalues:
 boolean retval true, getting/setting the config-var was successful; false, it wasn't successful 
 integer config_var_value the new/current value of the configuration-variable 

Parameters:
 string varname the name of the config-variable 
 boolean set true, set this config-var; false, don't set it 
 optional boolean bit1 true, set this bit; false, don't set this bit; nil, use the currently set value
true, set this bit; false, don't set this bit; nil, use the currently set value 
 optional boolean bit32 true, set this bit; false, don't set this bit; nil, use the currently set value 


^ Reaper version 5.965Lua version 5.3 GetScriptIdentifier

Functioncall:

string script_identifier = ultraschall.GetScriptIdentifier()

Description:
The Ultraschall-API gives any script, that uses the API, a unique identifier generated when the script is run.
This identifier can be used to communicate with this script. If you start numerous instances of a script, it will create for each instance
its own script-identifier, so you can be sure, that you communicate with the right instance.

The identifier is of the format "ScriptIdentifier:scriptfilename-{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}.ext", where the {}-part is a guid and ext either .lua .py or .eel

Defer1 to Defer20 make use of this to stop a running defer-loop from the outside of a deferred-script.

Returnvalues:
 string script_identifier a unique script-identifier for this script-instance, of the format:
ScriptIdentifier: scriptfilename-guid 



^ Reaper version 5.965Lua version 5.3 ReplacePartOfString

Functioncall:

string replaced_string = ultraschall.ReplacePartOfString(string originalstring, string insertstring, integer offset, optional integer length)

Description:
replaces a part of a string with a second string

Returns nil in case of an error

Returnvalues:
 string replaced_string the altered string 

Parameters:
 string originalstring the originalstring, in which you want to insert the string 
 string insertstring the string that shall be inserted 
 integer offset the position, at which to insert the string; it is the position BEFORE the position at which to insert, so if you want to replace the 25th character, offset is 24! 
 optional integer length the length of the part of the originalstring that shall be replaced, counted from offset. 0 or nil for simple insertion. 


^ Reaper version 5.77Lua version 5.3 SearchStringInString

Functioncall:

integer count, array posarray = ultraschall.SearchStringInString(string fullstring, string searchstring)

Description:
Searches for the string searchstring in fullstring.

Keep in mind: Umlauts may produce multibyte-values. Therefore, the returned offsets might be confusing.

returns -1 in case of error, 0 if string wasn't found

Returnvalues:
 integer count the number of found occurences of searchstring in fullstring 
 array posarray an array that contains the positions, where searchstring was found within fullstring 

Parameters:
 string fullstring the string to be searched through 
 string searchstring the string to search for within fullstring 


^ Reaper version 5.965Lua version 5.3 MKVOL2DB

Functioncall:

number db_value = ultraschall.MKVOL2DB(number mkvol_value)

Description:
Converts an MKVOL-value into a dB-value.

MKVOL-values are used by the routing-functions for HWOut/AUXSendReceive, specifically for their volume-value as these can't be converted using Reaper's own DB2SLIDER or SLIDER2DB, so this function should help you.

This function is an adapted one from the function provided in Plugins/reaper_www_root/main.js

See DB2MKVOL to convert a dB-value into it's MKVOL-representation

returns nil in case of an error

Returnvalues:
 number db_value the dB-value, converted from the MKVOL-value; minimum -144dB 

Parameters:
 number mkvol_value the mkvol_value, that you want to convert into dB 


^ Reaper version 5.965Lua version 5.3 DB2MKVOL

Functioncall:

number mkvol_value = ultraschall.DB2MKVOL(number db_value)

Description:
Converts an dB-value into a MKVOL-value.

MKVOL-values are used by the routing-functions for HWOut/AUXSendReceive, specifically for their volume-value as these can't be converted using Reaper's own DB2SLIDER or SLIDER2DB, so this function should help you.

See MKVOL2DB to convert a MKVOL-value into it's dB-representation

returns nil in case of an error

Returnvalues:
 number mkvol_value the mkvol-value, converted from the dB-value 

Parameters:
 number db_value the dB-value, that you want to convert into the MKVOL-value; minimum is -144dB 


^ Reaper version 5.965Lua version 5.3 ConvertIntegerIntoString2

Functioncall:

string converted_value = ultraschall.ConvertIntegerIntoString2(integer Size, integer integervalue_1, ..., integer integervalue_n)

Description:
Splits numerous integers into its individual bytes and converts them into a string-representation.
Maximum 32bit-integers are supported.

Returns nil in case of an error.

Returnvalues:
 string converted_value the string-representation of the integer 

Parameters:
 integer Size the maximum size of the integer to convert, 1(8 bit) to 4(32 bit) 
 integer integervalue_1 the first integer value to convert from
 
 integer integervalue_n the last integer value to convert from 


^ Reaper version 5.965Lua version 5.3 ConvertStringToIntegers

Functioncall:

integer num_integers, array individual_integers = ultraschall.ConvertStringToIntegers(string String, integer Size)

Description:
Converts a string into its integer-representation. Allows you to set the size of the integers between 1 Byte and 8 Bytes(64 bits).

Returns -1 in case of an error.

Returnvalues:
 integer num_integers the number of integers converted from this string 
 array individual_integers the individual integers, as converted from the original string 

Parameters:
 string String the string to convert into its integer representation 
 integer Size the size of the integers. 1 for 8 bits, 2 for 16 bits, ..., 8 for 64 bits 


^ Reaper version 5.965Lua version 5.3 SetScriptIdentifier_Description

Functioncall:

integer retval = ultraschall.SetScriptIdentifier_Description(string description)

Description:
The Ultraschall-API gives any script, that uses the API, a unique identifier generated when the script is run.
This identifier can be used to communicate with this script. If you start numerous instances of a script, it will create for each instance
its own script-identifier, so you can be sure, that you communicate with the right instance.

With this function, you can set its description, that is less cryptic than the ScriptIdentifier itself.

You can get it using GetScriptIdentifier_Description.

returns -1 in case of an error

Returnvalues:
 integer retval -1 in case of an error 

Parameters:
 string description the new description of your script 


^ Reaper version 5.965Lua version 5.3 GetScriptIdentifier_Description

Functioncall:

string script_identifier_description = ultraschall.GetScriptIdentifier_Description()

Description:
The Ultraschall-API gives any script, that uses the API, a unique identifier generated when the script is run.
This identifier can be used to communicate with this script. If you start numerous instances of a script, it will create for each instance
its own script-identifier, so you can be sure, that you communicate with the right instance.

With this function, you can get its description, that is less cryptic than the ScriptIdentifier itself.

You can set it using SetScriptIdentifier_Description.

Returnvalues:
 string script_identifier_description the description of your script 



^ Reaper version 5.965Lua version 5.3 SetScriptIdentifier_Title

Functioncall:

integer retval = ultraschall.SetScriptIdentifier_Title(string title)

Description:
The Ultraschall-API gives any script, that uses the API, a unique identifier generated when the script is run.
This identifier can be used to communicate with this script. If you start numerous instances of a script, it will create for each instance
its own script-identifier, so you can be sure, that you communicate with the right instance.

With this function, you can set its title, that is less cryptic than the ScriptIdentifier itself.
No \n-newlines, \r-carriag returns or \0-nullbytes are allowed and will be removed

You can get it using GetScriptIdentifier_Title.

returns -1 in case of an error

Returnvalues:
 integer retval -1 in case of an error 

Parameters:
 string title the new title of your script 


^ Reaper version 5.965Lua version 5.3 GetScriptIdentifier_Title

Functioncall:

string script_identifier_title = ultraschall.GetScriptIdentifier_Title()

Description:
The Ultraschall-API gives any script, that uses the API, a unique identifier generated when the script is run.
This identifier can be used to communicate with this script. If you start numerous instances of a script, it will create for each instance
its own script-identifier, so you can be sure, that you communicate with the right instance.

With this function, you can get its description, that is less cryptic than the ScriptIdentifier itself.

Default is the script's filename.

You can set it using SetScriptIdentifier_Title.

Returnvalues:
 string script_identifier_title the title of your script; default is the filename of the script 



^ Reaper version 5.965Lua version 5.3 ResetProgressBar

Functioncall:

ultraschall.ResetProgressBar()

Description:
Resets the initial-values of the progressbar. Should be called, if you want to start a new progressbar after you filled up the former one, or you may have update-issues.




^ Reaper version 5.965Lua version 5.3 PrintProgressBar

Functioncall:

boolean retval, string ProgressString, integer percentage, integer progress_position = ultraschall.PrintProgressBar(boolean show, integer length, integer maximumvalue, integer currentvalue, boolean percentage, integer offset, optional string toptext, optional string bottomtext)

Description:
Calculate a simple progressbar, which can be optionally displayed in the ReaScript console; Will clear the console before displaying the next updated progressbar.

Will update it only, if the current-value of last time this function got called is different from the current one or toptext or bottomtext changed.

You can also use the returnvalues to draw your own progressbar, e.g. in a gfx.init-window

If you need to calculate a new progressbar, after the former got to 100%, it is wise to call ResetProgressBar, or it might not update the first time you call this function.

Returns false in case of an error

Returnvalues:
 boolean retval true, displaying was successful; false, displaying wasn't successful 
 string ProgressString the progressbar including its full statuses and layout 
 integer percentage the progression of the progressbar in percent 
 integer progress_position the current progress-position, relative to length and maximumvalue 

Parameters:
 boolean show true, show progressbar in the ReaScript-console; false, don't show it there 
 integer length the length of the progressbar in characters. Minimum is 10. 
 integer maximumvalue the maximum integer-value, to which to count; minimum 1 
 integer currentvalue the current integer-value, at which we are with counting, minimum 0 
 boolean percentage true, show percentage in progressbar; false, show only progressbar 
 integer offset an offset to be added before the progressbar, so you can indent it 
 optional string toptext an optional string, that shall be displayed above the progressbar 
 optional string bottomtext an optional string, that shall be displayed below the progressbar 


^ Reaper version 5.975Lua version 5.3 StoreFunctionInExtState

Functioncall:

boolean retval = ultraschall.StoreFunctionInExtState(string section, string key, function func, boolean debug)

Description:
Stores a function into an extstate. You can store it's debug-information as well.

To load the function again, use LoadFunctionFromExtState

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 string section the sectionname of the extstate 
 string key the keyname of the extstate 
 function func the function, that you want to store 
 boolean debug true, store debug-values as well; false, don't store the debug-values as well 


^ Reaper version 5.975Lua version 5.3 LoadFunctionFromExtState

Functioncall:

function function = ultraschall.LoadFunctionFromExtState(string section, string key)

Description:
Loads a function from an extstate, if it has been stored in there before.
The extstate must contain a valid function. If something else is stored, the loaded "function" might crash Lua!

To store the function, use StoreFunctionInExtState

Returns false in case of an error

Returnvalues:
 function func the stored function, that you want to (re-)load 

Parameters:
 string section the sectionname of the extstate 
 string key the keyname of the extstate 


^ Reaper version 5.977Lua version 5.3 ConvertHex2Ascii

Functioncall:

string ascii_string = ultraschall.ConvertHex2Ascii(string hexstring)

Description:
converts a hexstring into an ascii-string.

Will combine two hexvalues into one byte, until the whole string is converted.

See ConvertAscii2Hex to convert a string into its HEX-representation.

Returns nil in case of an error

Returnvalues:
 string ascii_string the converted string 

Parameters:
 string hexstring the original string with only hexadecimal numbers  


^ Reaper version 5.977Lua version 5.3 ConvertAscii2Hex

Functioncall:

string hexstring = ultraschall.ConvertAscii2Hex(string ascii_string)

Description:
converts an ascii-string into a hexstring.

See ConvertHex2Ascii to convert a HEX-string into its normal string-representation.

Returns nil in case of an error

Returnvalues:
 string hexstring the original string with only hexadecimal numbers  

Parameters:
 string ascii_string the converted string 


^ Reaper version 5.975Lua version 5.3 get_action_context_MediaItemDiff

Functioncall:

MediaItem MediaItem, MediaItem_Take MediaItem_Take, MediaItem MediaItem_unlocked, boolean Item_moved, number StartDiffTime, number EndDiffTime, number LengthDiffTime, number OffsetDiffTime = ultraschall.get_action_context_MediaItemDiff(optional boolean exlude_mousecursorsize, optional integer x, optional integer y)

Description:
Returns the currently clicked MediaItem, Take as well as the difference of position, end, length and startoffset since last time calling this function.
Good for implementing ripple-drag/editing-functions, whose position depends on changes in the currently clicked MediaItem.
Repeatedly call this (e.g. in a defer-cycle) to get all changes made, during dragging position, length or offset of the MediaItem underneath mousecursor.

This function takes into account the size of the start/end-drag-mousecursor, that means: if mouse-position is within 3 pixels before start/after end of the item, it will get the correct MediaItem.
This is a workaround, as the mouse-cursor changes to dragging and can still affect the MediaItem, even though the mouse at this position isn't above a MediaItem anymore.
To be more strict, set exlude_mousecursorsize to true. That means, it will only detect MediaItems directly beneath the mousecursor. If the mouse isn't above a MediaItem, this function will ignore it, even if the mouse could still affect the MediaItem.
If you don't understand, what that means: simply omit exlude_mousecursorsize, which should work in almost all use-cases. If it doesn't work as you want, try setting it to true and see, whether it works now.    

Returnvalues:
 MediaItem MediaItem the MediaItem at the current mouse-position; nil if not found 
 MediaItem_Take MediaItem_Take the MediaItem_Take underneath the mouse-cursor 
 MediaItem MediaItem_unlocked if the MediaItem isn't locked, you'll get a MediaItem here. If it is locked, this retval is nil 
 boolean Item_moved true, the item was moved; false, only a part(either start or end or offset) of the item was moved 
 number StartDiffTime if the start of the item changed, this is the difference;
   positive, the start of the item has been changed towards the end of the project
   negative, the start of the item has been changed towards the start of the project
   0, no changes to the itemstart-position at all 
 number EndDiffTime if the end of the item changed, this is the difference;
   positive, the end of the item has been changed towards the end of the project
   negative, the end of the item has been changed towards the start of the project
   0, no changes to the itemend-position at all 
 number LengthDiffTime if the length of the item changed, this is the difference;
   positive, the length is longer
   negative, the length is shorter
   0, no changes to the length of the item 
 number OffsetDiffTime if the offset of the item-take has changed, this is the difference;
   positive, the offset has been changed towards the start of the project
   negative, the offset has been changed towards the end of the project
   0, no changes to the offset of the item-take
Note: this is the offset of the take underneath the mousecursor, which might not be the same size, as the MediaItem itself!
So changes to the offset maybe changes within the MediaItem or the start of the MediaItem!
This could be important, if you want to affect other items with rippling. 

Parameters:
 optional boolean exlude_mousecursorsize false or nil, get the item underneath, when it can be affected by the mouse-cursor(dragging etc): when in doubt, use this
true, get the item underneath the mousecursor only, when mouse is strictly above the item,
       which means: this ignores the item when mouse is not above it, even if the mouse could affect the item 
 optional integer x nil, use the current x-mouseposition; otherwise the x-position in pixels 
 optional integer y nil, use the current y-mouseposition; otherwise the y-position in pixels 


^ Reaper version 5.977SWS version 2.10.0.1Lua version 5.3 GetAllActions

Functioncall:

integer number_of_actions, table actiontable = ultraschall.GetAllActions(integer section)

Description:
Returns all actions and accompanying attributes from a specific section as a handy table

The table is of the following format:

actiontable[index]["commandid"] - the command-id-number of the action
actiontable[index]["actioncommandid"] - the action-command-id-string of the action, if it's a named command(usually scripts or extensions), otherwise empty string
actiontable[index]["name"] - the name of command
actiontable[index]["scriptfilename"] - the filename+path of a command, that is a ReaScript, otherwise empty string
actiontable[index]["termination"] - the termination-state of the action
-1 - not available
4 - Dialogwindow appears(Terminate, New Instance, Abort), if another instance of a given script is started, that's already running
260 - always Terminate All(!) Instances, if you try to run another instance of a script, that's already running. When no instance is running, it simply starts the script.
516 - always start a New Instance of the script, that's already running
actiontable[index]["consolidate"] - the consolidate-state of custom actions; 1 consolidate undo points, 2 show in Actions-Menu, 3 consolidate undo points AND show in Actions Menu; -1, if not available
actiontable[index]["actiontype"] - the type of the action; "native action", "extension action", "custom action", "script"

returns -1 in case of an error.

Returnvalues:
 integer number_of_actions the number of actions found; -1 in case of an error 
 table actiontable a table, which holds all attributes of an action(see description for more details) 

Parameters:
 integer sections the section, whose actions you want to retrieve
0, Main=0
1, invisible actions(shown but not runnable actions)
100, Main (alt recording)
32060, MIDI Editor=32060
32061, MIDI Event List Editor
32062, MIDI Inline Editor
32063, Media Explorer=32063 


^ Reaper version 5.965Lua version 5.3 IsWithinTimeRange

Functioncall:

boolean retval = ultraschall.IsWithinTimeRange(number time, number start, number stop)

Description:
returns if time is between(including) start and stop.

returns false in case of an error

Returnvalues:
 boolean retval true, time is between start and stop; false, it isn't 

Parameters:
 number time the time in seconds, to check for 
 number start the starttime in seconds, within to check for 
 number stop the endtime in seconds, within to check for 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 MediaExplorer_OnCommand

Functioncall:

boolean retval = ultraschall.MediaExplorer_OnCommand(integer actioncommandid)

Description:
runs a Media Explorer-associated action.
Note: Can only run Reaper's native actions currently(all actions having a number as actioncommandid), not scripts!

returns false if Media Explorer is closed

Returnvalues:
 boolean retval true, could update run the action in the Media Explorer; false, couldn't run it 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 UpdateMediaExplorer

Functioncall:

boolean retval = ultraschall.UpdateMediaExplorer()

Description:
updates the listview of the Media Explorer.

returns false if Media Explorer is closed

Returnvalues:
 boolean retval true, could update the listview of the Media Explorer; false, couldn't update the listview 



^ Reaper version 5.975Lua version 5.3 FindPatternsInString

Functioncall:

integer count_found_items, array found_items = ultraschall.FindPatternsInString(string SourceString, string pattern, boolean sort_after_finding)

Description:
Finds all occurrences of matching-patterns in a string. You can sort them optionally.

returns -1 in case of an error

Returnvalues:
 integer count_found_items the number of found items in the string; -1, in case of an error 
 array found_items all occurrences found in the string as an array 

Parameters:
 string SourceString the source-string to search for all occurences 
 string pattern the matching-pattern, with which to search for in the string 
 boolean sort_after_finding true, sorts the entries; false, doesn't sort the entries 


^ Reaper version 5.965Lua version 5.3 RunLuaSourceCode

Functioncall:

boolean retval = ultraschall.RunLuaSourceCode(string code)

Description:
runs the Lua-code stored in the parameter code

Does not check for validity and syntaxerrors in the code!

You can also add new callable functions that way. Just put function-declarations in the parameter code.

For instance from the following code:

code=function main()
reaper.MB("I'm only run, when my parent function main is called", "", 0)
end

reaper.MB("I'm run immediately", "", 0)"

when called by

ultraschall.RunLuaSourceCode(code)

only the line reaper.MB("I'm run immediately", "", 0) will be run immediately.
If you want to run the function main as well, you need to explicitly call it with main()

returns false in case of an error; nil, in case of an syntax/lua-error in the code itself

Returnvalues:
 boolean retval true, code was run successfully; false, code wasn't successfully; nil, code had an error in it, probably syntax error 

Parameters:
 string code the code, that you want to execute; you can also add new functions that way 


^ Reaper version 5.95Lua version 5.3 Main_OnCommand_LuaCode

Functioncall:

boolean retval, string script_identifier = ultraschall.Main_OnCommand_LuaCode(string Code, string ...)

Description:
Runs LuaCode as new temporary script-instance. It internally registers the code as a file temporarily as command, runs it and unregisters it again.
This is especially helpful, when you want to run a command for sure without possible command-id-number-problems.

It returns a unique script-identifier for this script, which can be used to communicate with this script-instance.
The started script gets its script-identifier using GetScriptIdentifier.
You can use this script-identifier e.g. as extstate.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running it was successful; false, if not 
 string script_identifier a unique script-identifier, which can be used as extstate to communicate with the started code 

Parameters:
 string Code the Lua-code, which shall be run; will not be checked vor validity! 
 string ... parameters that shall be passed over to the script 


^ Reaper version 5.982Lua version 5.3 ReplacePatternInString

Functioncall:

string altered_string, boolean replaced = ultraschall.ReplacePatternInString(string OriginalString, string pattern, string replacestring, integer index)

Description:
Replaces the index'th occurrence of pattern in OriginalString with replacepattern.

Unlike string.gsub, this replaces only the selected pattern!

returns nil, false in case of an error

Returnvalues:
 string altered_string the altered string, where the n'th occurence of the pattern has been replaced 
 boolean replaced true, there has been a replacement; false, no replacement has happened 

Parameters:
 string OriginalString the string, from which you want to replace a specific occurence of a matching pattern 
 string pattern the pattern to look for 
 string replacestring the string, which shall replace the found pattern 
 integer index the number of found occurence of the pattern in the string, which shall be replaced 


^ Reaper version 5.975Lua version 5.3 ConvertFunction_ToBase64String

Functioncall:

string BASE64_functionstring = ultraschall.ConvertFunction_ToBase64String(function to_convert_function, boolean debug)

Description:
Converts a function into a BASE64-string.

To load a function from a BASE64-string, use ConvertFunction_FromBase64String

Returns nil in case of an error

Returnvalues:
 string BASE64_functionstring the function, stored as BASE64-string 

Parameters:
 function to_convert_function the function, that you want to convert 
 boolean debug true, store debug-information as well; false, only store function 


^ Reaper version 5.975Lua version 5.3 ConvertFunction_FromBase64String

Functioncall:

function function = ultraschall.ConvertFunction_FromBase64String(string BASE64_functionstring)

Description:
Loads a function from a BASE64-string.

To convert a function into a BASE64-string, use ConvertFunction_ToBase64String

Returns nil in case of an error

Returnvalues:
 function func the loaded function 

Parameters:
 string BASE64_functionstring the function, stored as BASE64-string 


^ Reaper version 5.975Lua version 5.3 ConvertFunction_ToHexString

Functioncall:

string HEX_functionstring = ultraschall.ConvertFunction_ToHexString(function to_convert_function, boolean debug)

Description:
Converts a function into a HEX-string.

To load a function from a HEX-string, use ConvertFunction_FromHexString

Returns nil in case of an error

Returnvalues:
 string HEX_functionstring the function, stored as HEX-string 

Parameters:
 function to_convert_function the function, that you want to convert 
 boolean debug true, store debug-information as well; false, only store function 


^ Reaper version 5.975Lua version 5.3 ConvertFunction_FromHexString

Functioncall:

function function = ultraschall.ConvertFunction_FromHexString(string HEX_functionstring)

Description:
Loads a function from a HEX-string.

To convert a function into a HEX-string, use ConvertFunction_ToHexString

Returns nil in case of an error

Returnvalues:
 function func the loaded function 

Parameters:
 string HEX_functionstring the function, stored as HEX-string 


^ Reaper version 6.02Julian Sader's plugin version 0.998Lua version 5.3 ResizePNG

Functioncall:

integer count = ultraschall.ResizePNG(string filename_with_path, string outputfilename_with_path, boolean aspectratio, integer width, integer height)

Description:
resizes a png-file. It will stretch/shrink the picture by that. That means you can't crop or enhance pngs with this function.

If you set aspectratio=true, then the image will be resized with correct aspect-ratio. However, it will use the value from parameter width as maximum size for each side of the picture.
So if the height of the png is bigger than the width, the height will get the size and width will be shrinked accordingly.

When making pngs bigger, pixelation will occur. No pixel-filtering within this function!

returns false in case of an error

Returnvalues:
 boolean retval true, resizing was successful; false, resizing was unsuccessful 

Parameters:
 string filename_with_path the png-file, that you want to resize 
 string outputfilename_with_path the output-file, where to store the resized png 
 boolean aspectratio true, keep aspect-ratio(use size of param width as base); false, don't keep aspect-ratio 
 integer width the width of the newly created png in pixels 
 integer height the height of the newly created png in pixels 


^ Reaper version 6.02Julian Sader's plugin version 0.998Lua version 5.3 CaptureScreenAreaAsPNG

Functioncall:

boolean retval = ultraschall.CaptureScreenAreaAsPNG(string filename_with_path, integer x, integer y, integer w, integer h)

Description:
captures an area of the screen and writes it as png-file.

Note for Mac-users: it doesn't seem to work under certain circumstances, which are still under investigation.

returns false in case of an error

Returnvalues:
 boolean retval true, capturing was successful; false, capturing was unsuccessful 

Parameters:
 string filename_with_path the filename with path of the png-file to write 
 integer x the x-position of the area to capture 
 integer y the y-position of the area to capture 
 integer w the width of the area to capture 
 integer h the height of the area to capture 


^ Reaper version 6.02Julian Sader's plugin version 0.998Lua version 5.3 CaptureWindowAsPNG

Functioncall:

boolean retval = ultraschall.CaptureWindowAsPNG(identifier window_or_windowtitle, string filename_with_path, integer x, integer y, integer w, integer h, boolean win10)

Description:
captures a window and stores it as png-file.

Note for Windows-users with no Windows 10:
Keep in mind, that even if you choose a dedicated window, if it's located behind other windows, these might be captured as well.

Note for Mac-users: it doesn't seem to work under certain circumstances, which are still under investigation.

returns false in case of an error

Returnvalues:
 boolean retval true, capturing was successful; false, capturing was unsuccessful 

Parameters:
 identifier window_or_windowtitle either a hwnd or the exact windowtitle of the window, which you want to capture 
 string filename_with_path the filename with path of the output-file 
 integer x the x-position within the window to capture; nil, to use the left side of the window 
 integer y the y-position within the window to capture; nil, to use the top side of the window 
 integer w the width of the capture-area; nil, to use the width of the window 
 integer h the height of the capture-area; nil, to use the height of the window 
 boolean win10 true, use the workaround for invisible window-borders on windows 10; false, just capture the window 


^ Reaper version 5.975Lua version 5.3 Localize_UseFile

Functioncall:

boolean retval = ultraschall.Localize_UseFile(string filename, string section, string language)

Description:
Sets the localize-file and the section to use in the localize-file.
If file cannot be found, the function will also look into resource-path/LangPack/ as well to find it.

The file is of the format:
;comment
;another comment
[section]
original text=translated text
More Text with\nNewlines and %s - substitution=Translated Text with\nNewlines and %s - substitution
A third\=example with escaped equal\=in it = translated text with escaped\=equaltext

see specs for more information.

returns false in case of an error

Returnvalues:
 boolean retval true, translation-file has been found and set successfully; false, translation-file hasn't been found 

Parameters:
 string filename the filename with path to the translationfile; if no path is given, it will look in resource-folder/LangPack for the translation-file 
 string section the section of the translation-file, from which to read the translated strings 
 string language the language, which will be put after filename and before extension, like mylangpack_de.USLangPack;
us, usenglish
es, spanish
fr, french
de, german
jp, japanese
etc 


^ Reaper version 5.975Lua version 5.3 Localize

Functioncall:

string translated_string, boolean retval = ultraschall.Localize(string original_string, ...)

Description:
Translates the string original_string into its translated version, as stored in a translation-file.

To set a translationfile, see Localize_UseFile.

If the string contains %s, the optional parameters "..." will replace them. The order of the parameters is the order of the replacement of the %s in the string.

If no translation is available, it returns the original string. In that case, %s in the string could be replaced by optional parameters ...

This function can be used with or without ultraschall. at the beginning, for your convenience.

see specs for more information.

returns nil in case of an error

Returnvalues:
 string translated_string the translated string; will be the original_string(with optional substitution), if translation is not possible 
 boolean retval true, translation-was successful; false, translation wasn't successful 

Parameters:
 string original_string the original string, that you want to translate
optional parameters, who will be used to substitute %s in the returned string; order of the optional parameters reflects order of %s in the string 


^ Reaper version 5.975Lua version 5.3 Localize_RefreshFile

Functioncall:

boolean retval = ultraschall.Localize_RefreshFile()

Description:
Reloads the translation-file, that has been set using Localize_UseFile.

see specs for more information.


Returnvalues:
 boolean retval true, translation-file has been found and set successfully; false, translation-file hasn't been found 



^ Reaper version 6.02Lua version 5.3 AddNormalMarker

Functioncall:

integer marker_number, string guid = ultraschall.AddNormalMarker(number position, integer shown_number, string markertitle)

Description:
Adds a normal marker. Returns the index of the marker as marker_number.

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

returns -1 in case of an error

Returnvalues:
 integer marker_number the overall-marker-index, can be used for reaper's own marker-management functions 
 string guid the guid, associated with this marker 

Parameters:
 number position position in seconds. 
 integer shown_number the number, that will be shown within Reaper. Can be multiple times. Use -1 to let Reaper decide the number. 
 string markertitle the title of the marker. 


^ Reaper version 6.02Lua version 5.3 AddPodRangeRegion

Functioncall:

integer marker_number, string guid = ultraschall.AddPodRangeRegion(number startposition, number endposition)

Description:
Adds a region, which shows the time-range from the beginning to the end of the podcast.

returns -1 in case of an error

Returnvalues:
 integer marker_number the overall-marker-index, can be used for reaper's own marker-management functions 
 string guid the guid of the PodRangeRegion 

Parameters:
 number startposition begin of the podcast in seconds 
 number endposition end of the podcast in seconds 


^ Reaper version 6.02Lua version 5.3 GetMarkerByName

Functioncall:

integer count_markers, array foundmarkers, array found_guids = ultraschall.GetMarkerByName(string searchname, boolean searchisrgn)

Description:
Get all markers/regions that have a certain name. This function is not case-sensitive.

returns -1 in case of an error

Returnvalues:
 integer count_markers the number of found markers/regions 
 array foundmarkers an array with all marker/region-numbers of the found markers; counts only regions or markers(depending on parameter searchisrgn); markernumbers are 0-based 
 array found_guids the guids of all markers/regions found 

Parameters:
 string searchname the name to look for; must be exact; not case-sensitive 
 boolean searchisrgn true, search only within regions; false, search only within markers 


^ Reaper version 6.02Lua version 5.3 GetMarkerByName_Pattern

Functioncall:

integer count_markers, array foundmarkers, array foundguids = ultraschall.GetMarkerByName_Pattern(string searchname, boolean searchisrgn)

Description:
Get all markers/regions that have a certain character-sequence in their name. This function is not case-sensitive.

returns -1 in case of an error

Returnvalues:
 integer count_markers the number of found markers/regions 
 array foundmarkers an array with all marker/region-numbers of the found markers; counts only regions or markers(depending on parameter searchisrgn) 
 array foundguids the guids of all found markers/regions 

Parameters:
 string searchname the name to look for; a character-sequence that shall be part of the name; not case-sensitive 
 boolean searchisrgn true, search only within regions; false, search only within markers 


^ Reaper version 6.02Lua version 5.3 GetMarkerAndRegionsByIndex

Functioncall:

string name, integer shown_number, integer color, number pos, optional number rgnend, string guid = ultraschall.GetMarkerAndRegionsByIndex(integer idx, boolean searchisrgn)

Description:
Returns the values of a certain marker/region. The numbering of idx is either only for the markers or for regions, depending on what you set with parameter searchisrgn.

returns nil in case of an error

Returnvalues:
 string name the name of the marker/region 
 integer markrgnindexnumber the shown number of the marker/region 
 integer color the color-value of the marker/region 
 number pos the position of the marker/region 
 optional number rgnend the end of the region 
 string guid the guid of the marker/region; if it's a marker, the retval rgnend will be nil! 

Parameters:
 integer idx the number of the requested marker/region; counts only within either markers or regions, depending on what you've set searchisrgn to; 1-based! 
 boolean searchisrgn true, search only within regions; false, search only within markers 


^ Reaper version 5.77Lua version 5.3 SetMarkerByIndex

Functioncall:

boolean retval = ultraschall.SetMarkerByIndex(integer idx, boolean searchisrgn, integer shown_number, number position, position rgnend, string name, integer color, integer flags)

Description:
Sets the values of a certain marker/region. The numbering of idx is either only for the markers or for regions, depending on what you set with parameter searchisrgn.

returns false in case of an error

Returnvalues:
 boolean retval true, setting the marker/region was successful; false, setting of the marker/region was unsuccessful. 

Parameters:
 integer idx the number of the requested marker/region; counts only within either markers or regions, depending on what you've set searchisrgn to 
 boolean searchisrgn true, search only within regions; false, search only within markers 
 integer shown_number the shown-number of the region/marker; no duplicate numbers for regions allowed; nil to keep previous shown_number 
 number position the position of the marker/region in seconds; nil to keep previous position 
 position rgnend the end of the region in seconds; nil to keep previous region-end 
 string name the name of the marker/region; nil to keep the previous name 
 integer color color should be 0 to not change, or ColorToNative(r,g,b)|0x1000000; nil to keep the previous color 
 integer flags flags&1 to clear name; 0, keep it; nil to use the previous setting 


^ Reaper version 6.02Lua version 5.3 AddEditMarker

Functioncall:

integer marker_number, string guid = ultraschall.AddEditMarker(number position, integer shown_number, string edittitle)

Description:
Adds an Edit marker. Returns the index of the marker as marker_number.

returns -1 in case of an error

Returnvalues:
 integer marker_number the overall-marker-index, can be used for reaper's own marker-management functions 
 string guid the guid, associated with this marker 

Parameters:
 number position position in seconds. 
 integer shown_number the number, that will be shown within Reaper. Can be multiple times. Use -1 to let Reaper decide the number. 
 string edittitle the title of the edit-marker; will be shown as _Edit:edittitle 


^ Reaper version 5.40Lua version 5.3 CountNormalMarkers

Functioncall:

integer number_of_markers = ultraschall.CountNormalMarkers()

Description:
Counts all normal markers.
Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

Returnvalues:
 integer number_of_markers number of normal markers 



^ Reaper version 5.40Lua version 5.3 CountEditMarkers

Functioncall:

integer number_of_edit_markers = ultraschall.CountEditMarkers()

Description:
Counts all edit-markers.

Returnvalues:
 integer number_of_edit_markers number of edit markers 



^ Reaper version 6.02Lua version 5.3 GetPodRangeRegion

Functioncall:

number start_position, number end_position, string guid = ultraschall.GetPodRangeRegion()

Description:
Gets the start_position and the end_position of the PodRangeRegion.

returns -1 if no PodRangeRegion exists

Returnvalues:
 number start_position beginning of the podrangeregion, that marks the beginning of the podcast 
 number end_position end of the podrangeregion, that marks the end of the podcast 
 string guid the guid associated with this marker 



^ Reaper version 6.02Lua version 5.3 EnumerateNormalMarkers

Functioncall:

integer retnumber, integer retidxnum, number position, string markertitle, string guid = ultraschall.EnumerateNormalMarkers(integer number)

Description:
Get the data of a normal marker.
Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

Returns -1 in case of error

Returnvalues:
 integer retnumber overallmarker/regionnumber of marker beginning with 1 for the first marker; ignore the order of first,second,etc creation of
markers but counts from position 00:00:00 to end of project. So if you created a marker at position 00:00:00 and move the first created marker to
the end of the timeline, it will be the last one, NOT the first one in the retval! For use with reaper's own marker-functions. 
 integer retidxnum indexnumber of the marker 
 number position the position of the marker 
 string markertitle the name of the marker 
 string guid the guid of the enumerated marker 

Parameters:
 integer number number of the marker(normal markers only). Refer ultraschall.CountNormalMarkers for getting the number of normal markers. 


^ Reaper version 6.02Lua version 5.3 EnumerateEditMarkers

Functioncall:

integer retnumber, integer shown_number, number position, string edittitle, string guid = ultraschall.EnumerateEditMarkers(integer edit_index)

Description:
Gets the data of an edit marker.

returns -1 in case of an error

Returnvalues:
 integer retnumber overallmarker/regionnumber of marker beginning with 1 for the first marker; ignore the order of first,second,etc creation of
markers but counts from position 00:00:00 to end of project. So if you created a marker at position 00:00:00 and move the first created marker to
the end of the timeline, it will be the last one, NOT the first one in the retval! For use with reaper's own marker-functions. 
 integer shown_number indexnumber of the marker 
 number position the position of the marker 
 string edittitle the name of the marker 
 string guid the guid of the editmarker 

Parameters:
 integer edit_index number of the edit-marker. Refer ultraschall.CountEditMarkers for getting the number of edit-markers. 


^ Reaper version 6.02Lua version 5.3 GetAllEditMarkers

Functioncall:

integer number_of_editmarkers, array editmarkersarray = ultraschall.GetAllEditMarkers()

Description:
returns the number of editmarkers and an array with each editmarker in the format:

    editmarkersarray[index][0] - position
    editmarkersarray[index][1] - name
    editmarkersarray[index][2] - idx
    editmarkersarray[index][3] - guid
    

Returnvalues:
 integer number_of_editmarkers the number of editmarkers returned 
 array editmarkersarray an array with all the edit-markers of the project 



^ Reaper version 6.02Lua version 5.3 GetAllNormalMarkers

Functioncall:

index number_of_normalmarkers, array normalmarkersarray = ultraschall.GetAllNormalMarkers()

Description:
returns the number of normalmarkers and an array with each normalmarker in the format:

normalmarkersarray[index][0] - position
normalmarkersarray[index][1] - name
normalmarkersarray[index][2] - idx of the marker within all markers in project
normalmarkersarray[index][3] - the shown index number of the marker
normalmarkersarray[index][4] - the guid of the marker


Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

Returnvalues:
 integer number_of_normalmarkers the number of normalmarkers returned 
 array normalmarkersarray an array, that holds all normal markers of the project 



^ Reaper version 6.02Lua version 5.3 GetAllMarkers

Functioncall:

integer number_of_all_markers, array allmarkersarray = ultraschall.GetAllMarkers()

Description:
To get all Markers in the project(normal, edit, chapter), regardless of their category.
Doesn't return regions!

returns the number of markers and an array with each marker in the format:

    markersarray[index][0] - position
    markersarray[index][1] - name
    markersarray[index][2] - indexnumber of the marker within all markers in the project
    markersarray[index][3] - the shown index-number
    markersarray[index][4] - the color of the marker
    markersarray[index][5] - the guid of the marker
    

Returnvalues:
 integer number_of_allmarkers the number of markers returned 
 array allmarkersarray an array, that holds all markers(not regions!) of the project 



^ Reaper version 5.40Lua version 5.3 SetNormalMarker

Functioncall:

boolean retval = ultraschall.SetNormalMarker(integer number, number position, integer shown_number, string markertitle)

Description:
Sets values of a normal Marker(no _Chapter:, _Shownote:, etc). Returns true if successful and false if not(i.e. marker doesn't exist)

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

returns false in case of an error

Returnvalues:
 boolean retval true if successful and false if not(i.e. marker doesn't exist) 

Parameters:
 integer number the number of the normal marker 
 number position position of the marker in seconds 
 integer shown_number the number of the marker 
 string markertitle title of the marker 


^ Reaper version 5.40Lua version 5.3 SetEditMarker

Functioncall:

boolean retval = ultraschall.SetEditMarker(integer edit_index, number position, integer shown_number, string edittitle)

Description:
Sets values of an Edit Marker. Returns true if successful and false if not(i.e. marker doesn't exist)

returns false in case of an error

Returnvalues:
 boolean retval true if successful and false if not(i.e. marker doesn't exist) 

Parameters:
 integer edit_index the number of the edit marker 
 number position position of the marker in seconds 
 integer shown_number the number of the marker 
 string markertitle title of the marker 


^ Reaper version 5.40Lua version 5.3 SetPodRangeRegion

Functioncall:

integer retval = ultraschall.SetPodRangeRegion(number startposition, number endposition)

Description:
Sets "_PodRange:"-Region

returns -1 if it fails.

Returnvalues:
 integer retval number of the region, -1 if it fails 

Parameters:
 number startposition begin of the podcast in seconds 
 number endposition end of the podcast in seconds 


^ Reaper version 5.40Lua version 5.3 DeletePodRangeRegion

Functioncall:

integer retval = ultraschall.DeletePodRangeRegion()

Description:
deletes the PodRange-Region.

Returns false if unsuccessful

Returnvalues:
 boolean retval true, if deleting was successful; false, if not 



^ Reaper version 5.40Lua version 5.3 DeleteNormalMarker

Functioncall:

boolean retval = ultraschall.DeleteNormalMarker(integer number)

Description:
Deletes a Normal-Marker. Returns true if successful and false if not(i.e. marker doesn't exist) Use ultraschall.EnumerateNormalMarkers to get the correct number.

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

returns -1 in case of an error

Returnvalues:
 boolean retval true, if successful, false if not 

Parameters:
 integer number number of a normal marker 


^ Reaper version 5.40Lua version 5.3 DeleteEditMarker

Functioncall:

boolean retval = ultraschall.DeleteEditMarker(integer edit_index)

Description:
Deletes an _Edit:-Marker. Returns true if successful and false if not(i.e. marker doesn't exist) Use ultraschall.EnumerateEditMarkers to get the correct number.

Returnvalues:
 boolean retval true, if successful, false if not 

Parameters:
 integer edit_index number of an edit marker 


^ Reaper version 5.40Lua version 5.3 ExportEditMarkersToFile

Functioncall:

integer retval = ultraschall.ExportEditMarkersToFile(string filename_with_path, number PodRangeStart, number PodRangeEnd)

Description:
Export Edit-Markers (not regions!) to filename_with_path.

Each line in the exportfile contains an entry for such an edit-marker in the format:

hh:mm:ss.mss Title

Returns -1 in case of error.

Returnvalues:
 integer retval 1 in case of success, -1 if it failed 

Parameters:
 string filename_with_path the name of the export-file 
 number PodRangeStart beginning of the podcast in seconds 
 number PodRangeEnd end of the podcast in seconds 


^ Reaper version 5.40Lua version 5.3 ExportNormalMarkersToFile

Functioncall:

integer retval = ultraschall.ExportNormalMarkersToFile(string filename_with_path, number PodRangeStart, number PodRangeEnd)

Description:
Export Normal-Markers to filename_with_path. Returns -1 in case of error.

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

returns -1 in case of an error

Returnvalues:
 integer retval 1 in case of success, -1 if it failed 

Parameters:
 string filename_with_path the name of the export-file 
 number PodRangeStart beginning of the podcast in seconds 
 number PodRangeEnd end of the podcast in seconds 


^ Reaper version 5.40Lua version 5.3 ImportEditFromFile

Functioncall:

array editmarkers = ultraschall.ImportEditFromFile(string filename_with_path, PodRangestart)

Description:
Imports editentries from a file and returns an array of the imported values.

returns -1 in case of error

Returnvalues:
 array chapters array[0] is position of marker+PodRangeStart, array[1] is name of the marker 

Parameters:
 string filename_with_path markerfile to be imported 
 number PodRangeStart podcast-start-offset 


^ Reaper version 5.40Lua version 5.3 ImportMarkersFromFile

Functioncall:

array markers = ultraschall.ImportMarkersFromFile(string filename_with_path, PodrangeStart)

Description:
Imports markerentries from a file and returns an array of the imported values.

returns -1 in case of error

Returnvalues:
 array chapters array[0] is position of marker+PodRangeStart, array[1] is name of the marker 

Parameters:
 string filename_with_path markerfile to be imported 
 number PodRangeStart podcast-start-offset 


^ Reaper version 5.40Lua version 5.3 MarkerToEditMarker

Functioncall:

integer idx, integer shown_number, number position, string markertitle = ultraschall.MarkerToEditMarker(integer markerindex)

Description:
Converts a normal-marker to an edit-marker.

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

returns -1 in case of an error

Returnvalues:
 integer idx overallmarker/regionnumber of marker beginning with 1 for the first marker; ignore the order of first,second,etc creation of
markers but counts from position 00:00:00 to end of project. So if you created a marker at position 00:00:00 and move the first created marker to
the end of the timeline, it will be the last one, NOT the first one in the retval! For use with reaper's own marker-functions. 
 integer shown_number the shown number of the marker 
 number position the position of the marker in seconds 
 string markertitle the markertitle 

Parameters:
 integer markerindex number of the normal-marker. Refer ultraschall.CountNormalMarkers for getting the number of normal-markers. 


^ Reaper version 5.40Lua version 5.3 EditToMarker

Functioncall:

integer idx, integer shown_number, number position, string markertitle = ultraschall.EditToMarker(integer edit_index)

Description:
Converts an edit-marker to a normal marker.

returns -1 in case of an error

Returnvalues:
 integer idx overallmarker/regionnumber of marker beginning with 1 for the first marker; ignore the order of first,second,etc creation of
markers but counts from position 00:00:00 to end of project. So if you created a marker at position 00:00:00 and move the first created marker to
the end of the timeline, it will be the last one, NOT the first one in the retval! For use with reaper's own marker-functions. 
 integer shown_number the shown number of the marker 
 number position the position of the marker in seconds 
 string markertitle the markertitle 

Parameters:
 integer edit_index number of the edit-marker. Refer ultraschall.CountEditMarkers for getting the number of edit-markers. 


^ Reaper version 6.02Lua version 5.3 GetMarkerByScreenCoordinates

Functioncall:

string marker = ultraschall.GetMarkerByScreenCoordinates(integer xmouseposition)

Description:
returns the markers at a given absolute-x-pixel-position. It sees markers according their graphical representation in the arrange-view, not just their position! Returned string will be "Markeridx\npos\nName\nMarkeridx2\npos2\nName2\n...".
Will return "", if no marker has been found.

Returns only markers, no time markers or regions!

returns nil in case of an error

Returnvalues:
 string marker a string with all markernumbers, markerpositions and markertitles, separated by a newline.
Can contain numerous markers, if there are more markers in one position. 

Parameters:
 integer xmouseposition the absolute x-screen-position, like current mouse-position 


^ Reaper version 6.02Lua version 5.3 GetMarkerByTime

Functioncall:

string markers = ultraschall.GetMarkerByTime(number position)

Description:
returns the markers at a given project-position in seconds.
It sees markers according their actual graphical representation in the arrange-view, not just their position.
If, for example, you pass to it the current playposition, the function will return the marker as long as the playcursor is behind the marker-graphics.

Returned string will be "Markeridx\npos\nName\nMarkeridx2\npos2\nName2\n...".
Will return "", if no marker has been found.

Returns only markers, no time markers or regions!

returns nil in case of an error

Returnvalues:
 string marker a string with all markernumbers, markerpositions and markertitles, separated by a newline.
Can contain numerous markers, if there are more markers in one position. 

Parameters:
 number position the time-position in seconds 


^ Reaper version 6.02Lua version 5.3 GetRegionByScreenCoordinates

Functioncall:

string markers = ultraschall.GetRegionByScreenCoordinates(integer xmouseposition)

Description:
returns the regions at a given absolute-x-pixel-position. It sees regions according their graphical representation in the arrange-view, not just their position! Returned string will be "Regionidx\npos\nName\nRegionidx2\npos2\nName2\n...".
Returns only regions, no time markers or other markers!
Will return "", if no region has been found.
    
returns nil in case of an error

Returnvalues:
 string marker a string with all regionnumbers, regionpositions and regionnames, separated by a newline.
Can contain numerous regions, if there are more regions in one position. 

Parameters:
 integer xmouseposition the absolute x-screen-position, like current mouse-position 


^ Reaper version 6.02Lua version 5.3 GetRegionByTime

Functioncall:

string markers = ultraschall.GetRegionByTime(number position)

Description:
returns the regions at a given absolute-x-pixel-position. It sees regions according their graphical representation in the arrange-view, not just their position! Returned string will be "Regionidx\npos\nName\nRegionidx2\npos2\nName2\n...".
Returns only regions, no timesignature-markers or other markers!
Will return "", if no region has been found.

returns nil in case of an error

Returnvalues:
 string marker a string with all regionnumbers, regionpositions and regionnames, separated by a newline.
Can contain numerous regions, if there are more regions in one position. 

Parameters:
 number position position in seconds 


^ Reaper version 6.02Lua version 5.3 GetTimeSignaturesByScreenCoordinates

Functioncall:

string markers = ultraschall.GetTimeSignaturesByScreenCoordinates(integer xmouseposition)

Description:
returns the time-signature/tempo-marker at a given absolute-x-pixel-position. It sees time-signature/tempo-markers according their graphical representation in the arrange-view, not just their position! Returned string will be "tempomarkeridx\npos\ntempomarkeridx2\npos2\n...".
Returns only time-signature-markers, no regions or other markers!
Will return "", if no timesig-marker has been found.
    
returns nil in case of an error

Returnvalues:
 string marker a string with all markernumbers and markerpositions, separated by a newline.
Can contain numerous markers, if there are more markers in one position. 

Parameters:
 integer xmouseposition the absolute x-screen-position, like current mouse-position 


^ Reaper version 6.02Lua version 5.3 GetTimeSignaturesByTime

Functioncall:

string markers = ultraschall.GetTimeSignaturesByTime(number position)

Description:
returns the time-signature/tempo-marker at a given absolute-x-pixel-position. It sees time-signature/tempo-markers according their graphical representation in the arrange-view, not just their position! Returned string will be "tempomarkeridx\npos\ntempomarkeridx2\npos2\n...".
Returns only time-signature-markers, no other markers or regions!
Will return "", if no timesig-marker has been found.

returns nil in case of an error

Returnvalues:
 string marker a string with all markernumbers and markerpositions, separated by a newline.
Can contain numerous markers, if there are more markers in one position. 

Parameters:
 number position position in seconds 


^ Reaper version 5.40Lua version 5.3 IsMarkerEdit

Functioncall:

boolean retval = ultraschall.IsMarkerEdit(integer markerid)

Description:
returns true, if the marker is an edit-marker, false if not. Returns nil, if markerid is invalid.
Markerid is the marker-number for all markers, as used by marker-functions from Reaper.

returns nil in case of an error

Returnvalues:
 boolean retval true, if it's an edit-marker, false if not 

Parameters:
 integer markerid the markerid of all markers in the project, beginning with 0 for the first marker 


^ Reaper version 5.40Lua version 5.3 IsMarkerNormal

Functioncall:

boolean retval = ultraschall.IsMarkerNormal(integer markerid)

Description:
returns true, if the marker is a normal-marker, false if not. Returns nil, if markerid is invalid.
Markerid is the marker-number for all markers, as used by marker-functions from Reaper.

returns nil in case of an error

Returnvalues:
 boolean retval true, if it's an normal-marker, false if not 

Parameters:
 integer markerid the markerid of all markers in the project, beginning with 0 for the first marker 


^ Reaper version 5.40Lua version 5.3 IsRegionPodrange

Functioncall:

boolean retval = ultraschall.IsRegionPodrange(integer markerid)

Description:
returns true, if the marker is a Podrange-region, false if not. Returns nil, if markerid is invalid.
Markerid is the marker-number for all markers, as used by marker-functions from Reaper.

returns nil in case of an error

Returnvalues:
 boolean retval true, if it's a PodRange-Region, false if not 

Parameters:
 integer markerid the markerid of all markers in the project, beginning with 0 for the first marker 


^ Reaper version 5.40Lua version 5.3 IsRegionEditRegion

Functioncall:

boolean retval = ultraschall.IsRegionEditRegion(integer markerid)

Description:
returns true, if the marker is an Edit-region, false if not. Returns nil, if markerid is invalid.
Markerid is the marker-number for all markers, as used by marker-functions from Reaper.

returns nil in case of an error

Returnvalues:
 boolean retval true, if it's an Edit-Region, false if not 

Parameters:
 integer markerid the markerid of all markers in the project, beginning with 0 for the first marker 


^ Reaper version 6.02Lua version 5.3 AddEditRegion

Functioncall:

integer markernr, string guid = ultraschall.AddEditRegion(number startposition, number endposition, string text)

Description:
Adds a new edit-region and returns index of the newly created edit-marker-region.

returns -1 in case of an error

Returnvalues:
 integer markernr the number of the newly created region 
 string guid the guid, associated with this edit-region 

Parameters:
 number startposition startposition in seconds 
 number endposition endposition in seconds 
 string text the title of the marker 


^ Reaper version 5.40Lua version 5.3 SetEditRegion

Functioncall:

boolean retval = ultraschall.SetEditRegion(integer number, number position, number endposition, string edittitle)

Description:
Sets the values of an already existing edit-region. To retain an already set position, endposition and/or edittitle, use nil.
Returns true in case of success, false if not.
Note: if you set the new beginning of the region before another region, the indexnumber of the edit-region changes. So if you want to set an edit-region repeatedly, you should get the indexnumber using ultraschall.EnumerateEditRegion, or you might accidently change another region!

returns -1 in case of an error

Returnvalues:
 boolean retval true, in case of success, false if not 

Parameters:
 integer number the number of the edit-region, beginning with 1 for the first edit-region 
 number startposition startposition in seconds, nil to retain the old value 
 number endposition endposition in seconds, nil to retain the old value 
 string text the title of the marker, nil to retain the old value 


^ Reaper version 5.40Lua version 5.3 DeleteEditRegion

Functioncall:

boolean retval = ultraschall.DeleteEditRegion(integer number)

Description:
Deletes an already existing edit-region.
Returns true in case of success, false if not.

Returnvalues:
 boolean retval true, in case of success, false if not 

Parameters:
 integer number the number of the edit-region, beginning with 1 for the first edit-region 


^ Reaper version 6.02Lua version 5.3 EnumerateEditRegion

Functioncall:

integer retval, number position, number endposition, string title, integer rgnindexnumber, string guid = ultraschall.EnumerateEditRegion(integer number)

Description:
Returns the values of an edit-region.

returns -1 in case of an error

Returnvalues:
 integer retval the overall marker-index-number of all markers in the project, -1 in case of error 
 number position position in seconds 
 number endposition endposition in seconds 
 string title the title of the region 
 integer rgnindexnumber the overall region index number, as used by other of Reaper's own marker-functions 
 string guid the guid of the edit-region 

Parameters:
 integer number the number of the edit-region, beginning with 1 for the first edit-region 


^ Reaper version 5.40Lua version 5.3 CountEditRegions

Functioncall:

integer retval = ultraschall.CountEditRegions()

Description:
returns the number of edit-regions in the project.

Returnvalues:
 integer retval the number of edit-regions in the project 



^ Reaper version 6.02Lua version 5.3 GetAllMarkersBetween

Functioncall:

integer number_of_all_markers, array allmarkersarray = ultraschall.GetAllMarkersBetween(number startposition, number endposition)

Description:
To get all Markers in the project(normal, edit, chapter), regardless of their category, between startposition and endposition.
Doesn't return regions!

returns the number of markers and an array with each marker in the format:

    markersarray[index][0] - position
    markersarray[index][1] - name
    markersarray[index][2] - indexnumber of the marker within all markers in the project
    markersarray[index][3] - the shown index-number
    markersarray[index][4] - the color of the marker
    markersarray[index][5] - the guid of the marker

returns -1 in case of error

Returnvalues:
 integer number_of_allmarkers the number of markers returned 
 array allmarkersarray an array, that holds all markers(not regions!) of the project 

Parameters:
 number startposition the earliest position a returned marker may have 
 number endposition the latest position a returned marker may have 


^ Reaper version 6.02Lua version 5.3 GetAllRegions

Functioncall:

integer number_of_all_regions, array allregionsarray = ultraschall.GetAllRegions()

Description:
To get all Regions in the project(normal, edit, chapter), regardless of their category.
Doesn't return markers!

returns the number of markers and an array with each marker in the format:

    regionarray[index][0] - position
    regionarray[index][1] - endposition
    regionarray[index][2] - name
    regionarray[index][3] - indexnumber of the region within all markers in the project. This is 1-based, unlike in Reaper's own API!
    regionarray[index][4] - the shown index-number
    regionarray[index][5] - the color of the region
    regionarray[index][6] - the guid of the region
    
returns -1 in case of error

Returnvalues:
 integer number_of_allregions the number of regions returned 
 array regionsarray an array, that holds all regions(not markers!) of the project 



^ Reaper version 6.02Lua version 5.3 GetAllRegionsBetween

Functioncall:

integer number_of_all_regions, array allregionsarray = ultraschall.GetAllRegionsBetween(number startposition, number endposition, boolean partial)

Description:
To get all Regions in the project(normal, edit, chapter), regardless of their category between start- and endposition.
Set partial to true, if you want to get regions as well, that are only partially between start- and endposition
Doesn't return markers!

returns the number of markers and an array with each marker in the format:

    regionarray[index][0] - position
    regionarray[index][1] - endposition
    regionarray[index][2] - name
    regionarray[index][3] - indexnumber of the region within all markers in the project
    regionarray[index][4] - the shown index-number
    regionarray[index][5] - the color of the region
    regionarray[index][6] - the guid of the region

returns -1 in case of error

Returnvalues:
 integer number_of_allregions the number of regions returned 
 array regionsarray an array, that holds all regions(not markers!) of the project 

Parameters:
 number startposition the earliest position a returned region may have 
 number endposition the latest position a returned region may have 
 boolean retval true, to get regions that are partially within start and endposition as well; false, only regions completely within start/endposition. 


^ Reaper version 5.52Lua version 5.3 ParseMarkerString

Functioncall:

integer number_of_entries, array markerarray = ultraschall.ParseMarkerString(string markerstring, boolean strict)

Description:
Parses the entries in markerstring for timestrings and markertitles.
It returns the number of entries as well as a table with all marker-information.
The table works as such:

markertable[1][markernumber] - the timestring of the marker, -1 if no time is available
markertable[2][markernumber] - the time, converted into position in seconds, -1 if no time is available
markertable[3][markernumber] - the name of the marker

returns -1 in case of an error

Returnvalues:
 integer number_of_entries the number of markers in markerstring 
 array markerarray a table with all the information of a marker
markertable[1][markernumber] - the timestring of the marker, -1 if no time is available
markertable[2][markernumber] - the time, converted into position in seconds, -1 if no time is available
markertable[3][markernumber] - the name of the marker 

Parameters:
 string markerstring a string with all markers. An entry is "timestring markertitle\n". Each marker-entry must be separated by a newline from each other. 
 boolean strict interpret the time in timestring more strict or more loosely?
true, the time in markerstring must follow the format hh:mm:ss.mss , e.g. 11:22:33.444
false, the time can be more flexible, leading to possible misinterpretation of indexnumbers as time/seconds 


^ Reaper version 5.52Lua version 5.3 RenumerateMarkers

Functioncall:

integer retval = ultraschall.RenumerateMarkers(integer colorvalue, integer startingnumber)

Description:
Renumbers the shown numbers of markers(not regions!) in the current project, that have the color colorvalue.
The numbering starts with the number startingnumber.

The markers will be renumbered from the earliest marker in the project to the latest one.

returns -1 in case of an error

Returnvalues:
 integer retval -1 in case of error, nil in case of success 

Parameters:
 integer colorvalue the (systemdependent)colorvalue a marker must have. -1 if you want all markers to be numbered.
Keep in mind, that colors are differently interpreted on Mac compared to Windows! 
 integer startingnumber the first number that shall be given. 


^ Reaper version 5.52Lua version 5.3 CountNormalMarkers_NumGap

Functioncall:

integer number_normal_markers = ultraschall.CountNormalMarkers_NumGap()

Description:
Returns the first "gap" in shown marker-numbers. If you have markers with numbers "1, 2, 4" it will return 3, as this is the first number missing.

Normal markers are all markers, that don't include "_Shownote:" or "_Edit" in the beginning of their name, as well as markers with the color 100,255,0(planned chapter).

Returnvalues:
 integer gap_number the number of the first "gap" in the numbering of the shown marker-numbers 



^ Reaper version 5.40Lua version 5.3 IsMarkerAtPosition

Functioncall:

boolean retval, integer count, string markersstring, array markersarray = ultraschall.IsMarkerAtPosition(number position)

Description:
returns, if markers are at position and returns the marker-numbers.

The marker-numbers are numerated by order, not the shown marker-numbers!

returns false in case of error

Returnvalues:
 boolean retval true, if the function found marker(s); false, if no markers are available at position 
 integer count the count of markers at position 
 string markersstring a string with all the markernumbers, separated by a , 
 array markersarray an array with each entry consisting a markernumber 

Parameters:
 number position the position to check for markers in seconds; only positive numbers 


^ Reaper version 5.40Lua version 5.3 IsRegionAtPosition

Functioncall:

boolean retval, integer count, string regionsstring, array regionsarray = ultraschall.IsRegionAtPosition(number position)

Description:
returns, if regions are at position and returns the region-numbers.

The region-numbers are numerated by order, not the shown region-numbers!

returns false in case of error

Returnvalues:
 boolean retval true, if the function found region(s); false, if no regions are available at position 
 integer count the count of regions at position 
 string regionsstring a string with all the regionnumbers, separated by a , 
 array regionsarray an array with each entry consisting a regionnumber 

Parameters:
 number position the position to check for regions in seconds; only positive numbers 


^ Reaper version 5.40Lua version 5.3 CountMarkersAndRegions

Functioncall:

integer count_markers, integer count_regions = ultraschall.CountMarkersAndRegions()

Description:
Returns the position of the last projectmarker in the project(no regions or time-sig-markers!).
Use GetMarkerAndRegionsByIndex to enumerate markers or regions in particular.

Returns -1 in case of no markers available

Returnvalues:
 integer count_markers the number of markers available in the project 
 integer count_regions the number of regions available in the project 



^ Reaper version 5.40Lua version 5.3 GetLastMarkerPosition

Functioncall:

number position, integer marker_idx = ultraschall.GetLastMarkerPosition()

Description:
Returns the position of the last projectmarker in the project(no regions or time-sig-markers!).

Returns -1 in case of no markers available

Returnvalues:
 number position the position of the last marker in the project 
 integer marker_idx the idx of the last marker in the project. Not the shown number! 



^ Reaper version 5.40Lua version 5.3 GetLastRegion

Functioncall:

number position, number endposition, integer region_idx = ultraschall.GetLastRegion()

Description:
Returns the position of the last region in the project(no markers or time-sig-markers!).
Note: Last region means the last ending region in the project, even if it's the first starting.

Returns -1 in case of no regions available

Returnvalues:
 number startposition the startposition of the last region in the project 
 number endposition the endposition of the last region in the project 
 integer region_idx the idx of the last region in the project. Not the shown number! 



^ Reaper version 5.40Lua version 5.3 GetLastTimeSigMarkerPosition

Functioncall:

number position, number measureposition, number beatposition, integer timesig_idx = ultraschall.GetLastTimeSigMarkerPosition()

Description:
Returns the position of the last time-signature-marker in the project(no markers or regions!).

Returns -1 in case of no time-signature-markers available

Returnvalues:
 number position the position of the last timesig-marker in the project 
 number measureposition the measureposition of the last timesig-marker in the project 
 number beatposition the beatposition of the last timesig-marker in the project 
 integer timesig_idx the idx of the last timesig-marker in the project. 



^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 GetMarkerUpdateCounter

Functioncall:

integer marker_update_counter = ultraschall.GetMarkerUpdateCounter()

Description:
returns the number of times, a marker in any project has been updated since Reaper started.
Counts up, if a marker is added, set, moved, deleted from any project opened in Reaper.

This counter includes already closed projects as well

Returnvalues:
 integer marker_update_counter the number of times a marker in any project in Reaper has been updated 



^ Reaper version 5.40Lua version 5.3 MoveTimeSigMarkersBy

Functioncall:

integer retval = ultraschall.MoveTimeSigMarkersBy(number startposition, number endposition, number moveby, boolean cut_at_borders, boolean update_timeline)

Description:
Moves time-signature-markers between startposition and endposition by moveby.

Does NOT move normal projectmarkers or regions!

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of failure 

Parameters:
 number startposition the startposition in seconds 
 number endposition the endposition in seconds 
 number moveby in seconds, negative values: move toward beginning of project, positive values: move toward the end of project 
 boolean cut_at_borders shortens or cuts markers, that leave the section between startposition and endposition 
 boolean update_timeline true, updates the timeline after moving time-signature markers; false, don't update timeline(must be done manually then) 


^ Reaper version 5.95Lua version 5.3 GetAllTimeSigMarkers

Functioncall:

integer num_timesig_markers, array TimeSigArray = ultraschall.GetAllTimeSigMarkers()

Description:
Returns the number of Tempo/Time-Signature-Markers in the project, as well as an array with all attributes of all these markers.

The array is of the format: TimeSigArray[markernumber(1-based)][attribute-idx]
where attribute-idx is
1, number timepos
2, number measurepos
3, number beatpos
4, number bpm
5, number timesig_num
6, number timesig_denom
7, boolean lineartempo

returns -1 in case of error

Returnvalues:
 integer num_timesig_markers the number of time-signature-markers in the project 
 array TimeSigArray an array with all time-signature-markers and all their attributes; see Description for more details 



^ Reaper version 5.40Lua version 5.3 MoveMarkersBy

Functioncall:

integer retval = ultraschall.MoveMarkersBy(number startposition, number endposition, number moveby, boolean cut_at_borders)

Description:
Moves the markers between startposition and endposition by moveby.

Does NOT move regions and time-signature-markers!

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of failure 

Parameters:
 number startposition the startposition in seconds 
 number endposition the endposition in seconds 
 number moveby in seconds, negative values: move toward beginning of project, positive values: move toward the end of project 
 boolean cut_at_borders shortens or cuts markers, that leave the section between startposition and endposition when applying moveby 


^ Reaper version 5.40Lua version 5.3 MoveRegionsBy

Functioncall:

integer retval = ultraschall.MoveRegionsBy(number startposition, number endposition, number moveby, boolean cut_at_borders)

Description:
Moves the regions between startposition and endposition by moveby.
Will affect only regions, who start within start and endposition. It will not affect those, who end within start and endposition but start before startposition.

Does NOT move markers and time-signature-markers!

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of failure 

Parameters:
 number startposition the startposition in seconds 
 number endposition the endposition in seconds 
 number moveby in seconds, negative values: move toward beginning of project, positive values: move toward the end of project 
 boolean cut_at_borders shortens or cuts markers, that leave the section between startposition and endposition 


^ Reaper version 5.965Lua version 5.3 RippleCut_Regions

Functioncall:

boolean were_regions_altered, integer number_of_altered_regions, array altered_regions = ultraschall.RippleCut_Regions(number startposition, number endposition)

Description:
Ripplecuts regions, where applicable.
It cuts all (parts of) regions between startposition and endposition and moves remaining parts plus all regions after endposition by endposition-startposition toward projectstart.

Returns false in case of an error.

Returnvalues:
 boolean were_regions_altered true, if regions were cut/altered; false, if not 
 integer number_of_altered_regions the number of regions that were altered/cut/moved 
 array altered_regions the regions that were altered:
   altered_regions_array[index_of_region][0] - old startposition
   altered_regions_array[index_of_region][1] - old endposition
   altered_regions_array[index_of_region][2] - name
   altered_regions_array[index_of_region][3] - old indexnumber of the region within all markers in the project
   altered_regions_array[index_of_region][4] - the shown index-number
   altered_regions_array[index_of_region][5] - the color of the region
   altered_regions_array[index_of_region][6] - the change that was applied to this region
   altered_regions_array[index_of_region][7] - the new startposition
   altered_regions_array[index_of_region][8] - the new endposition 

Parameters:
 number startposition the startposition from where regions shall be cut from 
 number endposition the endposition to which regions shall be cut from; all regions/parts of regions after that will be moved toward projectstart 


^ Reaper version 6.02Lua version 5.3 GetAllCustomMarkers

Functioncall:

integer count, table marker_array = ultraschall.GetAllCustomMarkers(string custom_marker_name)

Description:
Will return all custom-markers with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not check custom-regions, use GetAllCustomRegions instead.

returns -1 in case of an error

Returnvalues:
 integer count the number of found markers; -1, in case of an error 
 table marker_array an array with all found custom-markers. It follows the scheme:

    marker_array[index]["index"] - index of the marker, in timeline-order, with 0 for the first in the project
    marker_array[index]["pos"]   - position of the marker in seconds
    marker_array[index]["name"]  - name of the marker, excluding the custom-marker-name
    marker_array[index]["shown_number"]  - the number of the marker, that is displayed in the timeline
    marker_array[index]["color"]  - color-value of the marker
    marker_array[index]["guid"]  - the guid of the marker 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 


^ Reaper version 6.02Lua version 5.3 GetAllCustomRegions

Functioncall:

integer count, table marker_array = ultraschall.GetAllCustomRegions(string custom_region_name)

Description:
Will return all custom-regions with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not check custom-markers, use GetAllCustomMarkers instead.

returns -1 in case of an error

Returnvalues:
 integer count the number of found regions; -1, in case of an error 
 table region_array an array with all found custom-markers. It follows the scheme:

    region_array[index]["index"] - index of the region, in timeline-order, with 0 for the first in the project
    region_array[index]["pos"]   - position of the region in seconds
    region_array[index]["regionend"] - the endposition of the region in seconds
    region_array[index]["name"]  - name of the region, excluding the custom-region-name
    region_array[index]["shown_number"]  - the number of the region, that is displayed in the timeline
    region_array[index]["color"]  - color-value of the region
    region_array[index]["guid"]  - the guid of the region 

Parameters:
 string custom_region_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 


^ Reaper version 5.965Lua version 5.3 CountAllCustomMarkers

Functioncall:

integer count = ultraschall.CountAllCustomMarkers(string custom_marker_name)

Description:
Will count all custom-markers with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not count custom-regions, use CountAllCustomRegions instead.

returns -1 in case of an error

Returnvalues:
 integer count the number of found markers; -1, in case of an error 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 


^ Reaper version 5.965Lua version 5.3 CountAllCustomRegions

Functioncall:

integer count = ultraschall.CountAllCustomRegions(string custom_region_name)

Description:
Will count all custom-regions with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not count custom-markers, use CountAllCustomMarkers instead.

returns -1 in case of an error

Returnvalues:
 integer count the number of found regions; -1, in case of an error 

Parameters:
 string custom_region_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 


^ Reaper version 6.02Lua version 5.3 EnumerateCustomMarkers

Functioncall:

boolean retval, integer marker_index, number pos, string name, integer shown_number, integer color = ultraschall.EnumerateCustomMarkers(string custom_marker_name, integer idx)

Description:
Will return a specific custom-marker with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not enumerate custom-regions, use EnumerateCustomRegions instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if the custom-marker exists; false, if not or an error occurred 
 integer marker_index the index of the marker within all markers and regions, as positioned in the project, with 0 for the first, 2 for the second, etc 
 number pos the position of the marker in seconds 
 string name the name of the marker, exluding the custom-marker-name 
 integer shown_number the markernumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 
 string guid the guid of the custom-marker 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 
 integer idx the index of the marker within all same-named custom-markers; 0, for the first custom-marker 


^ Reaper version 6.02Lua version 5.3 EnumerateCustomRegions

Functioncall:

boolean retval, integer marker_index, number pos, number regionend, string name, integer shown_number, integer color, string guid = ultraschall.EnumerateCustomRegions(string custom_marker_name, integer idx)

Description:
Will return a specific custom-region with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not enumerate custom-markers, use EnumerateCustomMarkers instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if the custom-region exists; false, if not or an error occurred 
 integer marker_index the index of the marker within all markers and regions, as positioned in the project, with 0 for the first, 2 for the second, etc 
 number pos the position of the region in seconds 
 number rgnend the end of the region in seconds 
 string name the name of the region, exluding the custom-region-name 
 integer shown_number the regionnumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the region 
 string guid the guid of the custom-region 

Parameters:
 string custom_region_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 
 integer idx the index of the region within all same-named custom-regions; 0, for the first custom-region 


^ Reaper version 5.965Lua version 5.3 DeleteCustomMarkers

Functioncall:

boolean retval, integer marker_index, number pos, string name, integer shown_number, integer color = ultraschall.DeleteCustomMarkers(string custom_marker_name, integer idx)

Description:
Will delete a specific custom-marker with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not delete custom-regions, use DeleteCustomRegions instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if the custom-marker exists; false, if not or an error occurred 
 integer marker_index the index of the marker within all markers and regions, as positioned in the project, with 0 for the first, 2 for the second, etc 
 number pos the position of the marker in seconds 
 string name the name of the marker, exluding the custom-marker-name 
 integer shown_number the markernumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 
 integer idx the index of the marker within all same-named custom-markers; 0, for the first custom-marker 


^ Reaper version 5.965Lua version 5.3 DeleteCustomRegions

Functioncall:

boolean retval, integer marker_index, number pos, number regionend, string name, integer shown_number, integer color = ultraschall.DeleteCustomRegions(string custom_marker_name, integer idx)

Description:
Deletes a specific custom-region with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not delete custom-markers, use DeleteCustomMarkers instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if the custom-region exists; false, if not or an error occurred 
 integer marker_index the index of the marker within all markers and regions, as positioned in the project, with 0 for the first, 2 for the second, etc 
 number pos the position of the region in seconds 
 number rgnend the end of the region in seconds 
 string name the name of the region, exluding the custom-region-name 
 integer shown_number the regionnumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the region 

Parameters:
 string custom_region_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::"
Lua-pattern-matching-expressions are allowed. This parameter is NOT case-sensitive. 
 integer idx the index of the region within all same-named custom-regions; 0, for the first custom-region 


^ Reaper version 6.02Lua version 5.3 AddCustomMarker

Functioncall:

boolean retval, integer markernumber, string guid = ultraschall.AddCustomMarker(string custom_marker_name, number pos, string name, integer shown_number, integer color)

Description:
Will add new custom-marker with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not add custom-regions, use AddCustomRegion instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if adding the custom-marker was successful; false, if not or an error occurred 
 integer markernumber the indexnumber of the newly added custommarker 
 string guid the guid of the custommarker 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"; nil, adds a normal marker 
 number pos the position of the marker in seconds 
 string name the name of the marker, exluding the custom-marker-name 
 integer shown_number the markernumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 


^ Reaper version 6.02Lua version 5.3 AddCustomRegion

Functioncall:

boolean retval, integer shown_number, integer markerindex, string guid = ultraschall.AddCustomRegion(string custom_region_name, number pos, number regionend, string name, integer shown_number, integer color)

Description:
Will add new custom-region with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not add custom-markers, use AddCustomMarker instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if adding the custom-region was successful; false, if not or an error occurred 
 integer shown_number if the desired shown_number is already used by another region, this will hold the alternative number for the new custom-region 
 integer markernumber the indexnumber of the newly added customregion 
 string guid the guid of the customregion 

Parameters:
 string custom_marker_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::"; nil, make it a normal regionname 
 number pos the position of the region in seconds 
 number regionend the endposition of the region in seconds 
 string name the name of the region, exluding the custom-region-name 
 integer shown_number the regionnumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 


^ Reaper version 5.965Lua version 5.3 SetCustomMarker

Functioncall:

boolean retval = ultraschall.SetCustomMarker(string custom_marker_name, integer idx, number pos, string name, integer shown_number, integer color)

Description:
Will set attributes of an already existing custom-marker with a certain name.

A custom-marker has the naming-scheme

_customname: text for this marker

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-marker has the name

__customname:: test for this marker

Example:

The custom-marker VanillaChief has the custom_marker_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-markers.

Will not set custom-regions, use SetCustomRegion instead.

returns false in case of an error

Returnvalues:
 boolean retval true, if setting the new attributes of the custom-marker was successful; false, if not or an error occurred 

Parameters:
 string custom_marker_name the name of the custom-marker. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-marker is called "__CustomMarker::"; nil, make it a normal marker 
 integer idx the index-number of the custom-marker within all custom-markers 
 number pos the position of the marker in seconds 
 string name the name of the marker, exluding the custom-marker-name 
 integer shown_number the markernumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 


^ Reaper version 5.965Lua version 5.3 SetCustomRegion

Functioncall:

boolean retval, integer shown_number = ultraschall.SetCustomRegion(string custom_region_name, integer idx, number pos, number regionend, string name, integer shown_number, integer color)

Description:
Will set an already existing custom-region with a certain name.

A custom-region has the naming-scheme

_customname: text for this region

You just need to pass customname to this function, leaving out the preceding _ and the trailing :
Exception: if the custom-region has the name

__customname:: test for this region

Example:

The custom-region VanillaChief has the custom_region_name VanillaChief and will be shown as _VanillaChief: text in the project.
So you pass VanillaChief to this function to get all _VanillaChief:-regions.

Will not add custom-markers, use AddCustomMarker instead.

returns false in case of an error, like the desired shown_number is already taken by another region

Returnvalues:
 boolean retval true, if adding the region was successful; false, if not or an error occurred 
 integer shown_number if the desired shown_number is already used by another region, this will hold the alternative number for the new custom-region 

Parameters:
 string custom_marker_name the name of the custom-region. Don't include the _ at the beginning and the : at the end, or it might not be found. Exception: Your custom-region is called "__CustomRegion::" 
 integer idx the index of the custom region to change 
 number pos the position of the region in seconds 
 string name the name of the region, exluding the custom-region-name 
 integer shown_number the regionnumber, that is displayed in the timeline of the arrangeview 
 integer color the color of the marker 


^ Reaper version 5.965Lua version 5.3 GetNextFreeRegionIndex

Functioncall:

integer free_shown_number = ultraschall.GetNextFreeRegionIndex()

Description:
returns the next unused region-index-number, beginning with 0.

Returnvalues:
 integer free_shown_number the next free/unused region-index-number 



^ Reaper version 5.965Lua version 5.3 IsMarkerValidCustomMarker

Functioncall:

boolean retval = ultraschall.IsMarkerValidCustomMarker(string custom_marker_name, integer markeridx)

Description:
returns true, if the marker with id markeridx is a valid custom-marker of the type custommarkername

markeridx is the index of all markers and regions!

returns false in case of an error

Returnvalues:
 boolean retval true, marker is a valid custom-marker of type custom_marker_name; false, it is not or an error occurred 



^ Reaper version 5.965Lua version 5.3 IsRegionValidCustomRegion

Functioncall:

boolean retval = ultraschall.IsRegionValidCustomRegion(string custom_region_name, integer markeridx)

Description:
returns true, if the marker with id markeridx is a valid custom-region of the type customregionname

markeridx is the index of all markers and regions!

returns false in case of an error

Returnvalues:
 boolean retval true, marker is a valid custom-region of type custom_region_name; false, it is not or an error occurred 



^ Reaper version 6.02Lua version 5.3 GetMarkerIDFromGuid

Functioncall:

integer index = ultraschall.GetMarkerIDFromGuid(string guid)

Description:
Gets the corresponding indexnumber of a marker-guid

The index is for all markers and regions, inclusive and 1-based

returns -1 in case of an error

Returnvalues:
 integer index the index of the marker/region, whose guid you have passed to this function 

Parameters:
 string guid the guid of the marker/region, whose index-number you want to retrieve 


^ Reaper version 6.02Lua version 5.3 GetGuidFromMarkerID

Functioncall:

string guid = ultraschall.GetGuidFromMarkerID(integer index)

Description:
Gets the corresponding marker-guid of a marker with a specific index

The index is for all markers and regions, inclusive and 1-based

returns -1 in case of an error

Returnvalues:
 string guid the guid of the marker/region of the marker with a specific index 

Parameters:
 integer index the index of the marker/region, whose guid you want to retrieve 


^ Reaper version 5.40Lua version 5.3 GetItemPosition

Functioncall:

number position = ultraschall.GetItemPosition(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns position-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number position the position in seconds, as set in the statechunk 

Parameters:
 MediaItem MediaItem the MediaItem, whose position you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemLength

Functioncall:

number length = ultraschall.GetItemLength(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns length-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number length the length in seconds, as set in the statechunk 

Parameters:
 MediaItem MediaItem the MediaItem, whose length you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemSnapOffset

Functioncall:

number snapoffset = ultraschall.GetItemSnapOffset(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns snapoffs-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number snapoffset the snapoffset in seconds, as set in the statechunk 

Parameters:
 MediaItem MediaItem the MediaItem, whose snapoffset you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemLoop

Functioncall:

integer loopstate = ultraschall.GetItemLoop(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns loopstate-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 integer loopstate the loopstate, as set in the statechunk; 1, loop source; 0, don't loop source 

Parameters:
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemAllTakes

Functioncall:

integer alltakes = ultraschall.GetItemAllTakes(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns alltakes-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 integer alltakes Play all takes(1) or don't play all takes(0) 

Parameters:
 MediaItem MediaItem the MediaItem, whose all-takes-playstate you want to know; nil, use parameter MediaItemStatechunk instead 
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemFadeIn

Functioncall:

number fadestate1, number fadestate2, number fadestate3, number fadestate4, integer fadestate5, number fadestate6 = ultraschall.GetItemFadeIn(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns fadein-entries of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number curvetype1 the type of the curve: 0, 1, 2, 3, 4, 5, 5.1; must be set like curvetype2 
 number fadein fadein in seconds 
 number fadestate3 fadeinstate entry as set in the rppxml-mediaitem-statechunk 
 number curvetype2 the type of the curve: 0, 1, 2, 3, 4, 5, 5.1; must be set like curvetype1 
 integer fadestate5 fadeinstate entry as set in the rppxml-mediaitem-statechunk 
 number curve curve -1 to 1 

Parameters:
 MediaItem MediaItem the MediaItem, whose fadein-state you want to know; nil, use parameter MediaItemStatechunk instead 
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemFadeOut

Functioncall:

number curvetype1, number fadeout_length, number fadeout_length2, number curvetype2, integer fadestate5, number curve = ultraschall.GetItemFadeOut(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns fadeout-entries of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number curvetype1 the type of the curve: 0, 1, 2, 3, 4, 5, 5.1; must be set like curvetype2 
 number fadeout_length the current fadeout-length in seconds 
 number fadeout_length2 the fadeout-length in seconds; overrides fadeout_length and will be moved to fadeout_length when fadeout-length changes(e.g. mouse-drag); might be autocrossfade-length 
 number curvetype2 the type of the curve: 0, 1, 2, 3, 4, 5, 5.1; must be set like curvetype1 
 integer fadestate5 unknown 
 number curve curvation of the fadeout, -1 to 1 

Parameters:
 MediaItem MediaItem the MediaItem, whose fadeout-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemMute

Functioncall:

integer mutestate = ultraschall.GetItemMute(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns mutestate-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 integer mutestate the mute-state; 1, mute is on; 0, mute is off 

Parameters:
 MediaItem MediaItem the MediaItem, whose mute-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemFadeFlag

Functioncall:

integer autofade_state = ultraschall.GetItemFadeFlag(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns autofade-entry of a MediaItem or MediaItemStateChunk.
It's the FADEFLAG-entry.
Returns nil in case of error.

Returnvalues:
 integer autofade_state the autofade-state; 1, autofade is off; nil, autofade is on 

Parameters:
 MediaItem MediaItem the MediaItem, whose fadeflag-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemLock

Functioncall:

integer lock_state = ultraschall.GetItemLock(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns itemlock-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 integer lock_state the lock-state; 1, item is locked; nil, item is not locked 

Parameters:
 MediaItem MediaItem the MediaItem, whose itemlock-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemSelected

Functioncall:

integer selected_state = ultraschall.GetItemSelected(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns item-selected-state-entry of a MediaItem or MediaItemStateChunk.
It's the SEL-entry.
Returns nil in case of error.

Returnvalues:
 integer selected_state the item-selected-state; 1 - item is selected; 0 - item is not selected 

Parameters:
 MediaItem MediaItem the MediaItem, whose selection-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemGroup

Functioncall:

integer item_group = ultraschall.GetItemGroup(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns group of a MediaItem or MediaItemStateChunk, where the item belongs to.
It's the GROUP-entry
Returns nil in case of error.

Returnvalues:
 integer item_group the group the item belongs to; nil, if item doesn't belong to any group 

Parameters:
 MediaItem MediaItem the MediaItem, whose ItemGroup-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemIGUID

Functioncall:

string IGUID = ultraschall.GetItemIGUID(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the IGUID-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 string IGUID the IGUID of the item 

Parameters:
 MediaItem MediaItem the MediaItem, whose IGUID-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemIID

Functioncall:

integer IID = ultraschall.GetItemIID(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the IID-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 integer IID the IID of the item; the item-id, which is basically a counter of all items created within this project. May change, so use it only as a counter. If you want to identify a specific item, use GUID and IGUID instead. 

Parameters:
 MediaItem MediaItem the MediaItem, whose ItemIID-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemName

Functioncall:

string name = ultraschall.GetItemName(MediaItem MediaItem, string MediaItemStateChunk)

Description:
Returns the name-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 string name the name of the item 

Parameters:
 MediaItem MediaItem the MediaItem, whose itemname-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemVolPan

Functioncall:

number volpan1, number pan, number volume, number volpan4 = ultraschall.GetItemVolPan(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the vol/pan-entries of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 number volpan1 unknown 
 number pan from -1(100%L) to 1(100%R), 0 is center 
 number volume from 0(-inf) to 3.981072(+12db), 1 is 0db; higher numbers are allowed; negative means phase inverted 
 number volpan4 unknown 

Parameters:
 MediaItem MediaItem the MediaItem, whose volpan-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemSampleOffset

Functioncall:

number sampleoffset = ultraschall.GetItemSampleOffset(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the sampleoffset-entry of a MediaItem or MediaItemStateChunk.
It's the SOFFS-entry.
Returns nil in case of error.

Returnvalues:
 number sampleoffset sampleoffset in seconds 

Parameters:
 MediaItem MediaItem the MediaItem, whose sample-offset-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.977Lua version 5.3 GetItemPlayRate

Functioncall:

number playbackrate, integer preserve_pitch, number pitch_adjust, integer takepitch_timestretch_mode, integer optimize_tonal_content, number stretch_marker_fadesize = ultraschall.GetItemPlayRate(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the playback-rate-entries of a MediaItem or MediaItemStateChunk.
It's the PLAYRATE-entry.
Returns nil in case of error.

Returnvalues:
 number playbackrate 1 is 1x, 2 is 2x, 1.8 is 1.8x,etc 
 integer preserve_pitch preserve pitch, 1 - preserve, 0 - don't preserve 
 number pitch_adjust pitch_adjust(semitones); negative values allowed; 1.1=1.1 semitones higher, -0.3=0.3 semitones lower,etc 
 integer takepitch_timestretch_mode - the item's pitchmode - 65536 for project-default
      SoundTouch:
          0 - Default settings
          1 - High Quality
          2 - Fast
      
      Simple windowed (fast):
          131072 - 50ms window, 25ms fade
          131073 - 50ms window, 16ms fade
          131074 - 50ms window, 10ms fade
          131075 - 50ms window, 7ms fade
          131076 - 75ms window, 37ms fade
          131077 - 75ms window, 25ms fade
          131078 - 75ms window, 15ms fade
          131079 - 75ms window, 10ms fade
          131080 - 100ms window, 50ms fade
          131081 - 100ms window, 33ms fade
          131082 - 100ms window, 20ms fade
          131083 - 100ms window, 14ms fade
          131084 - 150ms window, 75ms fade
          131085 - 150ms window, 50ms fade
          131086 - 150ms window, 30ms fade
          131087 - 150ms window, 21ms fade
          131088 - 225ms window, 112ms fade
          131089 - 225ms window, 75ms fade
          131090 - 225ms window, 45ms fade
          131091 - 225ms window, 32ms fade
          131092 - 300ms window, 150ms fade
          131093 - 300ms window, 100ms fade
          131094 - 300ms window, 60ms fade
          131095 - 300ms window, 42ms fade
          131096 - 40ms window, 20ms fade
          131097 - 40ms window, 13ms fade
          131098 - 40ms window, 8ms fade
          131099 - 40ms window, 5ms fade
          131100 - 30ms window, 15ms fade
          131101 - 30ms window, 10ms fade
          131102 - 30ms window, 6ms fade
          131103 - 30ms window, 4ms fade
          131104 - 20ms window, 10ms fade
          131105 - 20ms window, 6ms fade
          131106 - 20ms window, 4ms fade
          131107 - 20ms window, 2ms fade
          131108 - 10ms window, 5ms fade
          131109 - 10ms window, 3ms fade
          131110 - 10ms window, 2ms fade
          131111 - 10ms window, 1ms fade
          131112 - 5ms window, 2ms fade
          131113 - 5ms window, 1ms fade
          131114 - 5ms window, 1ms fade
          131115 - 5ms window, 1ms fade
          131116 - 3ms window, 1ms fade
          131117 - 3ms window, 1ms fade
          131118 - 3ms window, 1ms fade
          131119 - 3ms window, 1ms fade
      
      ÃƒÂ©lastique 2.2.8 Pro:
          393216 - Normal
          393217 - Preserve Formants (Lowest Pitches)
          393218 - Preserve Formants (Lower Pitches)
          393219 - Preserve Formants (Low Pitches)
          393220 - Preserve Formants (Most Pitches)
          393221 - Preserve Formants (High Pitches)
          393222 - Preserve Formants (Higher Pitches)
          393223 - Preserve Formants (Highest Pitches)
          393224 - Mid/Side
          393225 - Mid/Side, Preserve Formants (Lowest Pitches)
          393226 - Mid/Side, Preserve Formants (Lower Pitches)
          393227 - Mid/Side, Preserve Formants (Low Pitches)
          393228 - Mid/Side, Preserve Formants (Most Pitches)
          393229 - Mid/Side, Preserve Formants (High Pitches)
          393230 - Mid/Side, Preserve Formants (Higher Pitches)
          393231 - Mid/Side, Preserve Formants (Highest Pitches)
          393232 - Synchronized: Normal
          393233 - Synchronized: Preserve Formants (Lowest Pitches)
          393234 - Synchronized: Preserve Formants (Lower Pitches)
          393235 - Synchronized: Preserve Formants (Low Pitches)
          393236 - Synchronized: Preserve Formants (Most Pitches)
          393237 - Synchronized: Preserve Formants (High Pitches)
          393238 - Synchronized: Preserve Formants (Higher Pitches)
          393239 - Synchronized: Preserve Formants (Highest Pitches)
          393240 - Synchronized:  Mid/Side
          393241 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          393242 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          393243 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          393244 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          393245 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          393246 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          393247 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 2.2.8 Efficient:
          458752 - Normal
          458753 - Mid/Side
          458754 - Synchronized: Normal
          458755 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 2.2.8 Soloist:
          524288 - Monophonic
          524289 - Monophonic [Mid/Side]
          524290 - Speech
          524291 - Speech [Mid/Side]
      
      ÃƒÂ©lastique 3.3.0 Pro:
          589824 - Normal
          589825 - Preserve Formants (Lowest Pitches)
          589826 - Preserve Formants (Lower Pitches)
          589827 - Preserve Formants (Low Pitches)
          589828 - Preserve Formants (Most Pitches)
          589829 - Preserve Formants (High Pitches)
          589830 - Preserve Formants (Higher Pitches)
          589831 - Preserve Formants (Highest Pitches)
          589832 - Mid/Side
          589833 - Mid/Side, Preserve Formants (Lowest Pitches)
          589834 - Mid/Side, Preserve Formants (Lower Pitches)
          589835 - Mid/Side, Preserve Formants (Low Pitches)
          589836 - Mid/Side, Preserve Formants (Most Pitches)
          589837 - Mid/Side, Preserve Formants (High Pitches)
          589838 - Mid/Side, Preserve Formants (Higher Pitches)
          589839 - Mid/Side, Preserve Formants (Highest Pitches)
          589840 - Synchronized: Normal
          589841 - Synchronized: Preserve Formants (Lowest Pitches)
          589842 - Synchronized: Preserve Formants (Lower Pitches)
          589843 - Synchronized: Preserve Formants (Low Pitches)
          589844 - Synchronized: Preserve Formants (Most Pitches)
          589845 - Synchronized: Preserve Formants (High Pitches)
          589846 - Synchronized: Preserve Formants (Higher Pitches)
          589847 - Synchronized: Preserve Formants (Highest Pitches)
          589848 - Synchronized:  Mid/Side
          589849 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          589850 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          589851 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          589852 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          589853 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          589854 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          589855 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 3.3.0 Efficient:
          655360 - Normal
          655361 - Mid/Side
          655362 - Synchronized: Normal
          655363 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 3.3.0 Soloist:
          720896 - Monophonic
          720897 - Monophonic [Mid/Side]
          720898 - Speech
          720899 - Speech [Mid/Side]
      
      
      Rubber Band Library - Default
          851968 - nothing
      
      Rubber Band Library - Preserve Formants
          851969 - Preserve Formants
      
      Rubber Band Library - Mid/Side
          851970 - Mid/Side
      
      Rubber Band Library - Preserve Formants, Mid/Side
          851971 - Preserve Formants, Mid/Side
      
      Rubber Band Library - Independent Phase
          851972 - Independent Phase
      
      Rubber Band Library - Preserve Formants, Independent Phase
          851973 - Preserve Formants, Independent Phase
      
      Rubber Band Library - Mid/Side, Independent Phase
          851974 - Mid/Side, Independent Phase
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase
          851975 - Preserve Formants, Mid/Side, Independent Phase
      
      Rubber Band Library - Time Domain Smoothing
          851976 - Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Time Domain Smoothing
          851977 - Preserve Formants, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Time Domain Smoothing
          851978 - Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Time Domain Smoothing
          851979 - Preserve Formants, Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Independent Phase, Time Domain Smoothing
          851980 - Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Independent Phase, Time Domain Smoothing
          851981 - Preserve Formants, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Independent Phase, Time Domain Smoothing
          851982 - Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
          851983 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed
          851984 - nothing
          851985 - Preserve Formants
          851986 - Mid/Side
          851987 - Preserve Formants, Mid/Side
          851988 - Independent Phase
          851989 - Preserve Formants, Independent Phase
          851990 - Mid/Side, Independent Phase
          851991 - Preserve Formants, Mid/Side, Independent Phase
          851992 - Time Domain Smoothing
          851993 - Preserve Formants, Time Domain Smoothing
          851994 - Mid/Side, Time Domain Smoothing
          851995 - Preserve Formants, Mid/Side, Time Domain Smoothing
          851996 - Independent Phase, Time Domain Smoothing
          851997 - Preserve Formants, Independent Phase, Time Domain Smoothing
          851998 - Mid/Side, Independent Phase, Time Domain Smoothing
          851999 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth
          852000 - nothing
          852001 - Preserve Formants
          852002 - Mid/Side
          852003 - Preserve Formants, Mid/Side
          852004 - Independent Phase
          852005 - Preserve Formants, Independent Phase
          852006 - Mid/Side, Independent Phase
          852007 - Preserve Formants, Mid/Side, Independent Phase
          852008 - Time Domain Smoothing
          852009 - Preserve Formants, Time Domain Smoothing
          852010 - Mid/Side, Time Domain Smoothing
          852011 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852012 - Independent Phase, Time Domain Smoothing
          852013 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852014 - Mid/Side, Independent Phase, Time Domain Smoothing
          852015 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive
          852016 - nothing
          852017 - Preserve Formants
          852018 - Mid/Side
          852019 - Preserve Formants, Mid/Side
          852020 - Independent Phase
          852021 - Preserve Formants, Independent Phase
          852022 - Mid/Side, Independent Phase
          852023 - Preserve Formants, Mid/Side, Independent Phase
          852024 - Time Domain Smoothing
          852025 - Preserve Formants, Time Domain Smoothing
          852026 - Mid/Side, Time Domain Smoothing
          852027 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852028 - Independent Phase, Time Domain Smoothing
          852029 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852030 - Mid/Side, Independent Phase, Time Domain Smoothing
          852031 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive
          852032 - nothing
          852033 - Preserve Formants
          852034 - Mid/Side
          852035 - Preserve Formants, Mid/Side
          852036 - Independent Phase
          852037 - Preserve Formants, Independent Phase
          852038 - Mid/Side, Independent Phase
          852039 - Preserve Formants, Mid/Side, Independent Phase
          852040 - Time Domain Smoothing
          852041 - Preserve Formants, Time Domain Smoothing
          852042 - Mid/Side, Time Domain Smoothing
          852043 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852044 - Independent Phase, Time Domain Smoothing
          852045 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852046 - Mid/Side, Independent Phase, Time Domain Smoothing
          852047 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive
          852048 - nothing
          852049 - Preserve Formants
          852050 - Mid/Side
          852051 - Preserve Formants, Mid/Side
          852052 - Independent Phase
          852053 - Preserve Formants, Independent Phase
          852054 - Mid/Side, Independent Phase
          852055 - Preserve Formants, Mid/Side, Independent Phase
          852056 - Time Domain Smoothing
          852057 - Preserve Formants, Time Domain Smoothing
          852058 - Mid/Side, Time Domain Smoothing
          852059 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852060 - Independent Phase, Time Domain Smoothing
          852061 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852062 - Mid/Side, Independent Phase, Time Domain Smoothing
          852063 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft
          852064 - nothing
          852065 - Preserve Formants
          852066 - Mid/Side
          852067 - Preserve Formants, Mid/Side
          852068 - Independent Phase
          852069 - Preserve Formants, Independent Phase
          852070 - Mid/Side, Independent Phase
          852071 - Preserve Formants, Mid/Side, Independent Phase
          852072 - Time Domain Smoothing
          852073 - Preserve Formants, Time Domain Smoothing
          852074 - Mid/Side, Time Domain Smoothing
          852075 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852076 - Independent Phase, Time Domain Smoothing
          852077 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852078 - Mid/Side, Independent Phase, Time Domain Smoothing
          852079 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft
          852080 - nothing
          852081 - Preserve Formants
          852082 - Mid/Side
          852083 - Preserve Formants, Mid/Side
          852084 - Independent Phase
          852085 - Preserve Formants, Independent Phase
          852086 - Mid/Side, Independent Phase
          852087 - Preserve Formants, Mid/Side, Independent Phase
          852088 - Time Domain Smoothing
          852089 - Preserve Formants, Time Domain Smoothing
          852090 - Mid/Side, Time Domain Smoothing
          852091 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852092 - Independent Phase, Time Domain Smoothing
          852093 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852094 - Mid/Side, Independent Phase, Time Domain Smoothing
          852095 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft
          852096 - nothing
          852097 - Preserve Formants
          852098 - Mid/Side
          852099 - Preserve Formants, Mid/Side
          852100 - Independent Phase
          852101 - Preserve Formants, Independent Phase
          852102 - Mid/Side, Independent Phase
          852103 - Preserve Formants, Mid/Side, Independent Phase
          852104 - Time Domain Smoothing
          852105 - Preserve Formants, Time Domain Smoothing
          852106 - Mid/Side, Time Domain Smoothing
          852107 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852108 - Independent Phase, Time Domain Smoothing
          852109 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852110 - Mid/Side, Independent Phase, Time Domain Smoothing
          852111 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ
          852112 - nothing
          852113 - Preserve Formants
          852114 - Mid/Side
          852115 - Preserve Formants, Mid/Side
          852116 - Independent Phase
          852117 - Preserve Formants, Independent Phase
          852118 - Mid/Side, Independent Phase
          852119 - Preserve Formants, Mid/Side, Independent Phase
          852120 - Time Domain Smoothing
          852121 - Preserve Formants, Time Domain Smoothing
          852122 - Mid/Side, Time Domain Smoothing
          852123 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852124 - Independent Phase, Time Domain Smoothing
          852125 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852126 - Mid/Side, Independent Phase, Time Domain Smoothing
          852127 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ
          852128 - nothing
          852129 - Preserve Formants
          852130 - Mid/Side
          852131 - Preserve Formants, Mid/Side
          852132 - Independent Phase
          852133 - Preserve Formants, Independent Phase
          852134 - Mid/Side, Independent Phase
          852135 - Preserve Formants, Mid/Side, Independent Phase
          852136 - Time Domain Smoothing
          852137 - Preserve Formants, Time Domain Smoothing
          852138 - Mid/Side, Time Domain Smoothing
          852139 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852140 - Independent Phase, Time Domain Smoothing
          852141 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852142 - Mid/Side, Independent Phase, Time Domain Smoothing
          852143 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ
          852144 - nothing
          852145 - Preserve Formants
          852146 - Mid/Side
          852147 - Preserve Formants, Mid/Side
          852148 - Independent Phase
          852149 - Preserve Formants, Independent Phase
          852150 - Mid/Side, Independent Phase
          852151 - Preserve Formants, Mid/Side, Independent Phase
          852152 - Time Domain Smoothing
          852153 - Preserve Formants, Time Domain Smoothing
          852154 - Mid/Side, Time Domain Smoothing
          852155 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852156 - Independent Phase, Time Domain Smoothing
          852157 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852158 - Mid/Side, Independent Phase, Time Domain Smoothing
          852159 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ
          852160 - nothing
          852161 - Preserve Formants
          852162 - Mid/Side
          852163 - Preserve Formants, Mid/Side
          852164 - Independent Phase
          852165 - Preserve Formants, Independent Phase
          852166 - Mid/Side, Independent Phase
          852167 - Preserve Formants, Mid/Side, Independent Phase
          852168 - Time Domain Smoothing
          852169 - Preserve Formants, Time Domain Smoothing
          852170 - Mid/Side, Time Domain Smoothing
          852171 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852172 - Independent Phase, Time Domain Smoothing
          852173 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852174 - Mid/Side, Independent Phase, Time Domain Smoothing
          852175 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ
          852176 - nothing
          852177 - Preserve Formants
          852178 - Mid/Side
          852179 - Preserve Formants, Mid/Side
          852180 - Independent Phase
          852181 - Preserve Formants, Independent Phase
          852182 - Mid/Side, Independent Phase
          852183 - Preserve Formants, Mid/Side, Independent Phase
          852184 - Time Domain Smoothing
          852185 - Preserve Formants, Time Domain Smoothing
          852186 - Mid/Side, Time Domain Smoothing
          852187 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852188 - Independent Phase, Time Domain Smoothing
          852189 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852190 - Mid/Side, Independent Phase, Time Domain Smoothing
          852191 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ
          852192 - nothing
          852193 - Preserve Formants
          852194 - Mid/Side
          852195 - Preserve Formants, Mid/Side
          852196 - Independent Phase
          852197 - Preserve Formants, Independent Phase
          852198 - Mid/Side, Independent Phase
          852199 - Preserve Formants, Mid/Side, Independent Phase
          852200 - Time Domain Smoothing
          852201 - Preserve Formants, Time Domain Smoothing
          852202 - Mid/Side, Time Domain Smoothing
          852203 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852204 - Independent Phase, Time Domain Smoothing
          852205 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852206 - Mid/Side, Independent Phase, Time Domain Smoothing
          852207 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ
          852208 - nothing
          852209 - Preserve Formants
          852210 - Mid/Side
          852211 - Preserve Formants, Mid/Side
          852212 - Independent Phase
          852213 - Preserve Formants, Independent Phase
          852214 - Mid/Side, Independent Phase
          852215 - Preserve Formants, Mid/Side, Independent Phase
          852216 - Time Domain Smoothing
          852217 - Preserve Formants, Time Domain Smoothing
          852218 - Mid/Side, Time Domain Smoothing
          852219 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852220 - Independent Phase, Time Domain Smoothing
          852221 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852222 - Mid/Side, Independent Phase, Time Domain Smoothing
          852223 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ
          852224 - nothing
          852225 - Preserve Formants
          852226 - Mid/Side
          852227 - Preserve Formants, Mid/Side
          852228 - Independent Phase
          852229 - Preserve Formants, Independent Phase
          852230 - Mid/Side, Independent Phase
          852231 - Preserve Formants, Mid/Side, Independent Phase
          852232 - Time Domain Smoothing
          852233 - Preserve Formants, Time Domain Smoothing
          852234 - Mid/Side, Time Domain Smoothing
          852235 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852236 - Independent Phase, Time Domain Smoothing
          852237 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852238 - Mid/Side, Independent Phase, Time Domain Smoothing
          852239 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ
          852240 - nothing
          852241 - Preserve Formants
          852242 - Mid/Side
          852243 - Preserve Formants, Mid/Side
          852244 - Independent Phase
          852245 - Preserve Formants, Independent Phase
          852246 - Mid/Side, Independent Phase
          852247 - Preserve Formants, Mid/Side, Independent Phase
          852248 - Time Domain Smoothing
          852249 - Preserve Formants, Time Domain Smoothing
          852250 - Mid/Side, Time Domain Smoothing
          852251 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852252 - Independent Phase, Time Domain Smoothing
          852253 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852254 - Mid/Side, Independent Phase, Time Domain Smoothing
          852255 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent
          852256 - nothing
          852257 - Preserve Formants
          852258 - Mid/Side
          852259 - Preserve Formants, Mid/Side
          852260 - Independent Phase
          852261 - Preserve Formants, Independent Phase
          852262 - Mid/Side, Independent Phase
          852263 - Preserve Formants, Mid/Side, Independent Phase
          852264 - Time Domain Smoothing
          852265 - Preserve Formants, Time Domain Smoothing
          852266 - Mid/Side, Time Domain Smoothing
          852267 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852268 - Independent Phase, Time Domain Smoothing
          852269 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852270 - Mid/Side, Independent Phase, Time Domain Smoothing
          852271 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent
          852272 - nothing
          852273 - Preserve Formants
          852274 - Mid/Side
          852275 - Preserve Formants, Mid/Side
          852276 - Independent Phase
          852277 - Preserve Formants, Independent Phase
          852278 - Mid/Side, Independent Phase
          852279 - Preserve Formants, Mid/Side, Independent Phase
          852280 - Time Domain Smoothing
          852281 - Preserve Formants, Time Domain Smoothing
          852282 - Mid/Side, Time Domain Smoothing
          852283 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852284 - Independent Phase, Time Domain Smoothing
          852285 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852286 - Mid/Side, Independent Phase, Time Domain Smoothing
          852287 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent
          852288 - nothing
          852289 - Preserve Formants
          852290 - Mid/Side
          852291 - Preserve Formants, Mid/Side
          852292 - Independent Phase
          852293 - Preserve Formants, Independent Phase
          852294 - Mid/Side, Independent Phase
          852295 - Preserve Formants, Mid/Side, Independent Phase
          852296 - Time Domain Smoothing
          852297 - Preserve Formants, Time Domain Smoothing
          852298 - Mid/Side, Time Domain Smoothing
          852299 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852300 - Independent Phase, Time Domain Smoothing
          852301 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852302 - Mid/Side, Independent Phase, Time Domain Smoothing
          852303 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent
          852304 - nothing
          852305 - Preserve Formants
          852306 - Mid/Side
          852307 - Preserve Formants, Mid/Side
          852308 - Independent Phase
          852309 - Preserve Formants, Independent Phase
          852310 - Mid/Side, Independent Phase
          852311 - Preserve Formants, Mid/Side, Independent Phase
          852312 - Time Domain Smoothing
          852313 - Preserve Formants, Time Domain Smoothing
          852314 - Mid/Side, Time Domain Smoothing
          852315 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852316 - Independent Phase, Time Domain Smoothing
          852317 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852318 - Mid/Side, Independent Phase, Time Domain Smoothing
          852319 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent
          852320 - nothing
          852321 - Preserve Formants
          852322 - Mid/Side
          852323 - Preserve Formants, Mid/Side
          852324 - Independent Phase
          852325 - Preserve Formants, Independent Phase
          852326 - Mid/Side, Independent Phase
          852327 - Preserve Formants, Mid/Side, Independent Phase
          852328 - Time Domain Smoothing
          852329 - Preserve Formants, Time Domain Smoothing
          852330 - Mid/Side, Time Domain Smoothing
          852331 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852332 - Independent Phase, Time Domain Smoothing
          852333 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852334 - Mid/Side, Independent Phase, Time Domain Smoothing
          852335 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent
          852336 - nothing
          852337 - Preserve Formants
          852338 - Mid/Side
          852339 - Preserve Formants, Mid/Side
          852340 - Independent Phase
          852341 - Preserve Formants, Independent Phase
          852342 - Mid/Side, Independent Phase
          852343 - Preserve Formants, Mid/Side, Independent Phase
          852344 - Time Domain Smoothing
          852345 - Preserve Formants, Time Domain Smoothing
          852346 - Mid/Side, Time Domain Smoothing
          852347 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852348 - Independent Phase, Time Domain Smoothing
          852349 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852350 - Mid/Side, Independent Phase, Time Domain Smoothing
          852351 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent
          852352 - nothing
          852353 - Preserve Formants
          852354 - Mid/Side
          852355 - Preserve Formants, Mid/Side
          852356 - Independent Phase
          852357 - Preserve Formants, Independent Phase
          852358 - Mid/Side, Independent Phase
          852359 - Preserve Formants, Mid/Side, Independent Phase
          852360 - Time Domain Smoothing
          852361 - Preserve Formants, Time Domain Smoothing
          852362 - Mid/Side, Time Domain Smoothing
          852363 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852364 - Independent Phase, Time Domain Smoothing
          852365 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852366 - Mid/Side, Independent Phase, Time Domain Smoothing
          852367 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent
          852368 - nothing
          852369 - Preserve Formants
          852370 - Mid/Side
          852371 - Preserve Formants, Mid/Side
          852372 - Independent Phase
          852373 - Preserve Formants, Independent Phase
          852374 - Mid/Side, Independent Phase
          852375 - Preserve Formants, Mid/Side, Independent Phase
          852376 - Time Domain Smoothing
          852377 - Preserve Formants, Time Domain Smoothing
          852378 - Mid/Side, Time Domain Smoothing
          852379 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852380 - Independent Phase, Time Domain Smoothing
          852381 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852382 - Mid/Side, Independent Phase, Time Domain Smoothing
          852383 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent
          852384 - nothing
          852385 - Preserve Formants
          852386 - Mid/Side
          852387 - Preserve Formants, Mid/Side
          852388 - Independent Phase
          852389 - Preserve Formants, Independent Phase
          852390 - Mid/Side, Independent Phase
          852391 - Preserve Formants, Mid/Side, Independent Phase
          852392 - Time Domain Smoothing
          852393 - Preserve Formants, Time Domain Smoothing
          852394 - Mid/Side, Time Domain Smoothing
          852395 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852396 - Independent Phase, Time Domain Smoothing
          852397 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852398 - Mid/Side, Independent Phase, Time Domain Smoothing
          852399 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Short
          852400 - nothing
          852401 - Preserve Formants
          852402 - Mid/Side
          852403 - Preserve Formants, Mid/Side
          852404 - Independent Phase
          852405 - Preserve Formants, Independent Phase
          852406 - Mid/Side, Independent Phase
          852407 - Preserve Formants, Mid/Side, Independent Phase
          852408 - Time Domain Smoothing
          852409 - Preserve Formants, Time Domain Smoothing
          852410 - Mid/Side, Time Domain Smoothing
          852411 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852412 - Independent Phase, Time Domain Smoothing
          852413 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852414 - Mid/Side, Independent Phase, Time Domain Smoothing
          852415 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Short
          852416 - nothing
          852417 - Preserve Formants
          852418 - Mid/Side
          852419 - Preserve Formants, Mid/Side
          852420 - Independent Phase
          852421 - Preserve Formants, Independent Phase
          852422 - Mid/Side, Independent Phase
          852423 - Preserve Formants, Mid/Side, Independent Phase
          852424 - Time Domain Smoothing
          852425 - Preserve Formants, Time Domain Smoothing
          852426 - Mid/Side, Time Domain Smoothing
          852427 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852428 - Independent Phase, Time Domain Smoothing
          852429 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852430 - Mid/Side, Independent Phase, Time Domain Smoothing
          852431 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Short
          852432 - nothing
          852433 - Preserve Formants
          852434 - Mid/Side
          852435 - Preserve Formants, Mid/Side
          852436 - Independent Phase
          852437 - Preserve Formants, Independent Phase
          852438 - Mid/Side, Independent Phase
          852439 - Preserve Formants, Mid/Side, Independent Phase
          852440 - Time Domain Smoothing
          852441 - Preserve Formants, Time Domain Smoothing
          852442 - Mid/Side, Time Domain Smoothing
          852443 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852444 - Independent Phase, Time Domain Smoothing
          852445 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852446 - Mid/Side, Independent Phase, Time Domain Smoothing
          852447 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Short
          852448 - nothing
          852449 - Preserve Formants
          852450 - Mid/Side
          852451 - Preserve Formants, Mid/Side
          852452 - Independent Phase
          852453 - Preserve Formants, Independent Phase
          852454 - Mid/Side, Independent Phase
          852455 - Preserve Formants, Mid/Side, Independent Phase
          852456 - Time Domain Smoothing
          852457 - Preserve Formants, Time Domain Smoothing
          852458 - Mid/Side, Time Domain Smoothing
          852459 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852460 - Independent Phase, Time Domain Smoothing
          852461 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852462 - Mid/Side, Independent Phase, Time Domain Smoothing
          852463 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Short
          852464 - nothing
          852465 - Preserve Formants
          852466 - Mid/Side
          852467 - Preserve Formants, Mid/Side
          852468 - Independent Phase
          852469 - Preserve Formants, Independent Phase
          852470 - Mid/Side, Independent Phase
          852471 - Preserve Formants, Mid/Side, Independent Phase
          852472 - Time Domain Smoothing
          852473 - Preserve Formants, Time Domain Smoothing
          852474 - Mid/Side, Time Domain Smoothing
          852475 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852476 - Independent Phase, Time Domain Smoothing
          852477 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852478 - Mid/Side, Independent Phase, Time Domain Smoothing
          852479 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Short
          852480 - nothing
          852481 - Preserve Formants
          852482 - Mid/Side
          852483 - Preserve Formants, Mid/Side
          852484 - Independent Phase
          852485 - Preserve Formants, Independent Phase
          852486 - Mid/Side, Independent Phase
          852487 - Preserve Formants, Mid/Side, Independent Phase
          852488 - Time Domain Smoothing
          852489 - Preserve Formants, Time Domain Smoothing
          852490 - Mid/Side, Time Domain Smoothing
          852491 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852492 - Independent Phase, Time Domain Smoothing
          852493 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852494 - Mid/Side, Independent Phase, Time Domain Smoothing
          852495 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Short
          852496 - nothing
          852497 - Preserve Formants
          852498 - Mid/Side
          852499 - Preserve Formants, Mid/Side
          852500 - Independent Phase
          852501 - Preserve Formants, Independent Phase
          852502 - Mid/Side, Independent Phase
          852503 - Preserve Formants, Mid/Side, Independent Phase
          852504 - Time Domain Smoothing
          852505 - Preserve Formants, Time Domain Smoothing
          852506 - Mid/Side, Time Domain Smoothing
          852507 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852508 - Independent Phase, Time Domain Smoothing
          852509 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852510 - Mid/Side, Independent Phase, Time Domain Smoothing
          852511 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Short
          852512 - nothing
          852513 - Preserve Formants
          852514 - Mid/Side
          852515 - Preserve Formants, Mid/Side
          852516 - Independent Phase
          852517 - Preserve Formants, Independent Phase
          852518 - Mid/Side, Independent Phase
          852519 - Preserve Formants, Mid/Side, Independent Phase
          852520 - Time Domain Smoothing
          852521 - Preserve Formants, Time Domain Smoothing
          852522 - Mid/Side, Time Domain Smoothing
          852523 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852524 - Independent Phase, Time Domain Smoothing
          852525 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852526 - Mid/Side, Independent Phase, Time Domain Smoothing
          852527 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Short
          852528 - nothing
          852529 - Preserve Formants
          852530 - Mid/Side
          852531 - Preserve Formants, Mid/Side
          852532 - Independent Phase
          852533 - Preserve Formants, Independent Phase
          852534 - Mid/Side, Independent Phase
          852535 - Preserve Formants, Mid/Side, Independent Phase
          852536 - Time Domain Smoothing
          852537 - Preserve Formants, Time Domain Smoothing
          852538 - Mid/Side, Time Domain Smoothing
          852539 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852540 - Independent Phase, Time Domain Smoothing
          852541 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852542 - Mid/Side, Independent Phase, Time Domain Smoothing
          852543 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Short
          852544 - nothing
          852545 - Preserve Formants
          852546 - Mid/Side
          852547 - Preserve Formants, Mid/Side
          852548 - Independent Phase
          852549 - Preserve Formants, Independent Phase
          852550 - Mid/Side, Independent Phase
          852551 - Preserve Formants, Mid/Side, Independent Phase
          852552 - Time Domain Smoothing
          852553 - Preserve Formants, Time Domain Smoothing
          852554 - Mid/Side, Time Domain Smoothing
          852555 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852556 - Independent Phase, Time Domain Smoothing
          852557 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852558 - Mid/Side, Independent Phase, Time Domain Smoothing
          852559 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Short
          852560 - nothing
          852561 - Preserve Formants
          852562 - Mid/Side
          852563 - Preserve Formants, Mid/Side
          852564 - Independent Phase
          852565 - Preserve Formants, Independent Phase
          852566 - Mid/Side, Independent Phase
          852567 - Preserve Formants, Mid/Side, Independent Phase
          852568 - Time Domain Smoothing
          852569 - Preserve Formants, Time Domain Smoothing
          852570 - Mid/Side, Time Domain Smoothing
          852571 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852572 - Independent Phase, Time Domain Smoothing
          852573 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852574 - Mid/Side, Independent Phase, Time Domain Smoothing
          852575 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Short
          852576 - nothing
          852577 - Preserve Formants
          852578 - Mid/Side
          852579 - Preserve Formants, Mid/Side
          852580 - Independent Phase
          852581 - Preserve Formants, Independent Phase
          852582 - Mid/Side, Independent Phase
          852583 - Preserve Formants, Mid/Side, Independent Phase
          852584 - Time Domain Smoothing
          852585 - Preserve Formants, Time Domain Smoothing
          852586 - Mid/Side, Time Domain Smoothing
          852587 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852588 - Independent Phase, Time Domain Smoothing
          852589 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852590 - Mid/Side, Independent Phase, Time Domain Smoothing
          852591 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852592 - nothing
          852593 - Preserve Formants
          852594 - Mid/Side
          852595 - Preserve Formants, Mid/Side
          852596 - Independent Phase
          852597 - Preserve Formants, Independent Phase
          852598 - Mid/Side, Independent Phase
          852599 - Preserve Formants, Mid/Side, Independent Phase
          852600 - Time Domain Smoothing
          852601 - Preserve Formants, Time Domain Smoothing
          852602 - Mid/Side, Time Domain Smoothing
          852603 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852604 - Independent Phase, Time Domain Smoothing
          852605 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852606 - Mid/Side, Independent Phase, Time Domain Smoothing
          852607 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852608 - nothing
          852609 - Preserve Formants
          852610 - Mid/Side
          852611 - Preserve Formants, Mid/Side
          852612 - Independent Phase
          852613 - Preserve Formants, Independent Phase
          852614 - Mid/Side, Independent Phase
          852615 - Preserve Formants, Mid/Side, Independent Phase
          852616 - Time Domain Smoothing
          852617 - Preserve Formants, Time Domain Smoothing
          852618 - Mid/Side, Time Domain Smoothing
          852619 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852620 - Independent Phase, Time Domain Smoothing
          852621 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852622 - Mid/Side, Independent Phase, Time Domain Smoothing
          852623 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852624 - nothing
          852625 - Preserve Formants
          852626 - Mid/Side
          852627 - Preserve Formants, Mid/Side
          852628 - Independent Phase
          852629 - Preserve Formants, Independent Phase
          852630 - Mid/Side, Independent Phase
          852631 - Preserve Formants, Mid/Side, Independent Phase
          852632 - Time Domain Smoothing
          852633 - Preserve Formants, Time Domain Smoothing
          852634 - Mid/Side, Time Domain Smoothing
          852635 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852636 - Independent Phase, Time Domain Smoothing
          852637 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852638 - Mid/Side, Independent Phase, Time Domain Smoothing
          852639 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Short
          852640 - nothing
          852641 - Preserve Formants
          852642 - Mid/Side
          852643 - Preserve Formants, Mid/Side
          852644 - Independent Phase
          852645 - Preserve Formants, Independent Phase
          852646 - Mid/Side, Independent Phase
          852647 - Preserve Formants, Mid/Side, Independent Phase
          852648 - Time Domain Smoothing
          852649 - Preserve Formants, Time Domain Smoothing
          852650 - Mid/Side, Time Domain Smoothing
          852651 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852652 - Independent Phase, Time Domain Smoothing
          852653 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852654 - Mid/Side, Independent Phase, Time Domain Smoothing
          852655 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852656 - nothing
          852657 - Preserve Formants
          852658 - Mid/Side
          852659 - Preserve Formants, Mid/Side
          852660 - Independent Phase
          852661 - Preserve Formants, Independent Phase
          852662 - Mid/Side, Independent Phase
          852663 - Preserve Formants, Mid/Side, Independent Phase
          852664 - Time Domain Smoothing
          852665 - Preserve Formants, Time Domain Smoothing
          852666 - Mid/Side, Time Domain Smoothing
          852667 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852668 - Independent Phase, Time Domain Smoothing
          852669 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852670 - Mid/Side, Independent Phase, Time Domain Smoothing
          852671 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852672 - nothing
          852673 - Preserve Formants
          852674 - Mid/Side
          852675 - Preserve Formants, Mid/Side
          852676 - Independent Phase
          852677 - Preserve Formants, Independent Phase
          852678 - Mid/Side, Independent Phase
          852679 - Preserve Formants, Mid/Side, Independent Phase
          852680 - Time Domain Smoothing
          852681 - Preserve Formants, Time Domain Smoothing
          852682 - Mid/Side, Time Domain Smoothing
          852683 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852684 - Independent Phase, Time Domain Smoothing
          852685 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852686 - Mid/Side, Independent Phase, Time Domain Smoothing
          852687 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Short
          852688 - nothing
          852689 - Preserve Formants
          852690 - Mid/Side
          852691 - Preserve Formants, Mid/Side
          852692 - Independent Phase
          852693 - Preserve Formants, Independent Phase
          852694 - Mid/Side, Independent Phase
          852695 - Preserve Formants, Mid/Side, Independent Phase
          852696 - Time Domain Smoothing
          852697 - Preserve Formants, Time Domain Smoothing
          852698 - Mid/Side, Time Domain Smoothing
          852699 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852700 - Independent Phase, Time Domain Smoothing
          852701 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852702 - Mid/Side, Independent Phase, Time Domain Smoothing
          852703 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Short
          852704 - nothing
          852705 - Preserve Formants
          852706 - Mid/Side
          852707 - Preserve Formants, Mid/Side
          852708 - Independent Phase
          852709 - Preserve Formants, Independent Phase
          852710 - Mid/Side, Independent Phase
          852711 - Preserve Formants, Mid/Side, Independent Phase
          852712 - Time Domain Smoothing
          852713 - Preserve Formants, Time Domain Smoothing
          852714 - Mid/Side, Time Domain Smoothing
          852715 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852716 - Independent Phase, Time Domain Smoothing
          852717 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852718 - Mid/Side, Independent Phase, Time Domain Smoothing
          852719 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Short
          852720 - nothing
          852721 - Preserve Formants
          852722 - Mid/Side
          852723 - Preserve Formants, Mid/Side
          852724 - Independent Phase
          852725 - Preserve Formants, Independent Phase
          852726 - Mid/Side, Independent Phase
          852727 - Preserve Formants, Mid/Side, Independent Phase
          852728 - Time Domain Smoothing
          852729 - Preserve Formants, Time Domain Smoothing
          852730 - Mid/Side, Time Domain Smoothing
          852731 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852732 - Independent Phase, Time Domain Smoothing
          852733 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852734 - Mid/Side, Independent Phase, Time Domain Smoothing
          852735 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852736 - nothing
          852737 - Preserve Formants
          852738 - Mid/Side
          852739 - Preserve Formants, Mid/Side
          852740 - Independent Phase
          852741 - Preserve Formants, Independent Phase
          852742 - Mid/Side, Independent Phase
          852743 - Preserve Formants, Mid/Side, Independent Phase
          852744 - Time Domain Smoothing
          852745 - Preserve Formants, Time Domain Smoothing
          852746 - Mid/Side, Time Domain Smoothing
          852747 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852748 - Independent Phase, Time Domain Smoothing
          852749 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852750 - Mid/Side, Independent Phase, Time Domain Smoothing
          852751 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852752 - nothing
          852753 - Preserve Formants
          852754 - Mid/Side
          852755 - Preserve Formants, Mid/Side
          852756 - Independent Phase
          852757 - Preserve Formants, Independent Phase
          852758 - Mid/Side, Independent Phase
          852759 - Preserve Formants, Mid/Side, Independent Phase
          852760 - Time Domain Smoothing
          852761 - Preserve Formants, Time Domain Smoothing
          852762 - Mid/Side, Time Domain Smoothing
          852763 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852764 - Independent Phase, Time Domain Smoothing
          852765 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852766 - Mid/Side, Independent Phase, Time Domain Smoothing
          852767 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852768 - nothing
          852769 - Preserve Formants
          852770 - Mid/Side
          852771 - Preserve Formants, Mid/Side
          852772 - Independent Phase
          852773 - Preserve Formants, Independent Phase
          852774 - Mid/Side, Independent Phase
          852775 - Preserve Formants, Mid/Side, Independent Phase
          852776 - Time Domain Smoothing
          852777 - Preserve Formants, Time Domain Smoothing
          852778 - Mid/Side, Time Domain Smoothing
          852779 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852780 - Independent Phase, Time Domain Smoothing
          852781 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852782 - Mid/Side, Independent Phase, Time Domain Smoothing
          852783 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Short
          852784 - nothing
          852785 - Preserve Formants
          852786 - Mid/Side
          852787 - Preserve Formants, Mid/Side
          852788 - Independent Phase
          852789 - Preserve Formants, Independent Phase
          852790 - Mid/Side, Independent Phase
          852791 - Preserve Formants, Mid/Side, Independent Phase
          852792 - Time Domain Smoothing
          852793 - Preserve Formants, Time Domain Smoothing
          852794 - Mid/Side, Time Domain Smoothing
          852795 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852796 - Independent Phase, Time Domain Smoothing
          852797 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852798 - Mid/Side, Independent Phase, Time Domain Smoothing
          852799 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852800 - nothing
          852801 - Preserve Formants
          852802 - Mid/Side
          852803 - Preserve Formants, Mid/Side
          852804 - Independent Phase
          852805 - Preserve Formants, Independent Phase
          852806 - Mid/Side, Independent Phase
          852807 - Preserve Formants, Mid/Side, Independent Phase
          852808 - Time Domain Smoothing
          852809 - Preserve Formants, Time Domain Smoothing
          852810 - Mid/Side, Time Domain Smoothing
          852811 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852812 - Independent Phase, Time Domain Smoothing
          852813 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852814 - Mid/Side, Independent Phase, Time Domain Smoothing
          852815 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852816 - nothing
          852817 - Preserve Formants
          852818 - Mid/Side
          852819 - Preserve Formants, Mid/Side
          852820 - Independent Phase
          852821 - Preserve Formants, Independent Phase
          852822 - Mid/Side, Independent Phase
          852823 - Preserve Formants, Mid/Side, Independent Phase
          852824 - Time Domain Smoothing
          852825 - Preserve Formants, Time Domain Smoothing
          852826 - Mid/Side, Time Domain Smoothing
          852827 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852828 - Independent Phase, Time Domain Smoothing
          852829 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852830 - Mid/Side, Independent Phase, Time Domain Smoothing
          852831 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Long
          852832 - nothing
          852833 - Preserve Formants
          852834 - Mid/Side
          852835 - Preserve Formants, Mid/Side
          852836 - Independent Phase
          852837 - Preserve Formants, Independent Phase
          852838 - Mid/Side, Independent Phase
          852839 - Preserve Formants, Mid/Side, Independent Phase
          852840 - Time Domain Smoothing
          852841 - Preserve Formants, Time Domain Smoothing
          852842 - Mid/Side, Time Domain Smoothing
          852843 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852844 - Independent Phase, Time Domain Smoothing
          852845 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852846 - Mid/Side, Independent Phase, Time Domain Smoothing
          852847 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Long
          852848 - nothing
          852849 - Preserve Formants
          852850 - Mid/Side
          852851 - Preserve Formants, Mid/Side
          852852 - Independent Phase
          852853 - Preserve Formants, Independent Phase
          852854 - Mid/Side, Independent Phase
          852855 - Preserve Formants, Mid/Side, Independent Phase
          852856 - Time Domain Smoothing
          852857 - Preserve Formants, Time Domain Smoothing
          852858 - Mid/Side, Time Domain Smoothing
          852859 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852860 - Independent Phase, Time Domain Smoothing
          852861 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852862 - Mid/Side, Independent Phase, Time Domain Smoothing
          852863 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Long
          852864 - nothing
          852865 - Preserve Formants
          852866 - Mid/Side
          852867 - Preserve Formants, Mid/Side
          852868 - Independent Phase
          852869 - Preserve Formants, Independent Phase
          852870 - Mid/Side, Independent Phase
          852871 - Preserve Formants, Mid/Side, Independent Phase
          852872 - Time Domain Smoothing
          852873 - Preserve Formants, Time Domain Smoothing
          852874 - Mid/Side, Time Domain Smoothing
          852875 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852876 - Independent Phase, Time Domain Smoothing
          852877 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852878 - Mid/Side, Independent Phase, Time Domain Smoothing
          852879 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Long
          852880 - nothing
          852881 - Preserve Formants
          852882 - Mid/Side
          852883 - Preserve Formants, Mid/Side
          852884 - Independent Phase
          852885 - Preserve Formants, Independent Phase
          852886 - Mid/Side, Independent Phase
          852887 - Preserve Formants, Mid/Side, Independent Phase
          852888 - Time Domain Smoothing
          852889 - Preserve Formants, Time Domain Smoothing
          852890 - Mid/Side, Time Domain Smoothing
          852891 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852892 - Independent Phase, Time Domain Smoothing
          852893 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852894 - Mid/Side, Independent Phase, Time Domain Smoothing
          852895 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Long
          852896 - nothing
          852897 - Preserve Formants
          852898 - Mid/Side
          852899 - Preserve Formants, Mid/Side
          852900 - Independent Phase
          852901 - Preserve Formants, Independent Phase
          852902 - Mid/Side, Independent Phase
          852903 - Preserve Formants, Mid/Side, Independent Phase
          852904 - Time Domain Smoothing
          852905 - Preserve Formants, Time Domain Smoothing
          852906 - Mid/Side, Time Domain Smoothing
          852907 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852908 - Independent Phase, Time Domain Smoothing
          852909 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852910 - Mid/Side, Independent Phase, Time Domain Smoothing
          852911 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Long
          852912 - nothing
          852913 - Preserve Formants
          852914 - Mid/Side
          852915 - Preserve Formants, Mid/Side
          852916 - Independent Phase
          852917 - Preserve Formants, Independent Phase
          852918 - Mid/Side, Independent Phase
          852919 - Preserve Formants, Mid/Side, Independent Phase
          852920 - Time Domain Smoothing
          852921 - Preserve Formants, Time Domain Smoothing
          852922 - Mid/Side, Time Domain Smoothing
          852923 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852924 - Independent Phase, Time Domain Smoothing
          852925 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852926 - Mid/Side, Independent Phase, Time Domain Smoothing
          852927 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Long
          852928 - nothing
          852929 - Preserve Formants
          852930 - Mid/Side
          852931 - Preserve Formants, Mid/Side
          852932 - Independent Phase
          852933 - Preserve Formants, Independent Phase
          852934 - Mid/Side, Independent Phase
          852935 - Preserve Formants, Mid/Side, Independent Phase
          852936 - Time Domain Smoothing
          852937 - Preserve Formants, Time Domain Smoothing
          852938 - Mid/Side, Time Domain Smoothing
          852939 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852940 - Independent Phase, Time Domain Smoothing
          852941 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852942 - Mid/Side, Independent Phase, Time Domain Smoothing
          852943 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Long
          852944 - nothing
          852945 - Preserve Formants
          852946 - Mid/Side
          852947 - Preserve Formants, Mid/Side
          852948 - Independent Phase
          852949 - Preserve Formants, Independent Phase
          852950 - Mid/Side, Independent Phase
          852951 - Preserve Formants, Mid/Side, Independent Phase
          852952 - Time Domain Smoothing
          852953 - Preserve Formants, Time Domain Smoothing
          852954 - Mid/Side, Time Domain Smoothing
          852955 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852956 - Independent Phase, Time Domain Smoothing
          852957 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852958 - Mid/Side, Independent Phase, Time Domain Smoothing
          852959 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Long
          852960 - nothing
          852961 - Preserve Formants
          852962 - Mid/Side
          852963 - Preserve Formants, Mid/Side
          852964 - Independent Phase
          852965 - Preserve Formants, Independent Phase
          852966 - Mid/Side, Independent Phase
          852967 - Preserve Formants, Mid/Side, Independent Phase
          852968 - Time Domain Smoothing
          852969 - Preserve Formants, Time Domain Smoothing
          852970 - Mid/Side, Time Domain Smoothing
          852971 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852972 - Independent Phase, Time Domain Smoothing
          852973 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852974 - Mid/Side, Independent Phase, Time Domain Smoothing
          852975 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Long
          852976 - nothing
          852977 - Preserve Formants
          852978 - Mid/Side
          852979 - Preserve Formants, Mid/Side
          852980 - Independent Phase
          852981 - Preserve Formants, Independent Phase
          852982 - Mid/Side, Independent Phase
          852983 - Preserve Formants, Mid/Side, Independent Phase
          852984 - Time Domain Smoothing
          852985 - Preserve Formants, Time Domain Smoothing
          852986 - Mid/Side, Time Domain Smoothing
          852987 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852988 - Independent Phase, Time Domain Smoothing
          852989 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852990 - Mid/Side, Independent Phase, Time Domain Smoothing
          852991 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Long
          852992 - nothing
          852993 - Preserve Formants
          852994 - Mid/Side
          852995 - Preserve Formants, Mid/Side
          852996 - Independent Phase
          852997 - Preserve Formants, Independent Phase
          852998 - Mid/Side, Independent Phase
          852999 - Preserve Formants, Mid/Side, Independent Phase
          853000 - Time Domain Smoothing
          853001 - Preserve Formants, Time Domain Smoothing
          853002 - Mid/Side, Time Domain Smoothing
          853003 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853004 - Independent Phase, Time Domain Smoothing
          853005 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853006 - Mid/Side, Independent Phase, Time Domain Smoothing
          853007 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Long
          853008 - nothing
          853009 - Preserve Formants
          853010 - Mid/Side
          853011 - Preserve Formants, Mid/Side
          853012 - Independent Phase
          853013 - Preserve Formants, Independent Phase
          853014 - Mid/Side, Independent Phase
          853015 - Preserve Formants, Mid/Side, Independent Phase
          853016 - Time Domain Smoothing
          853017 - Preserve Formants, Time Domain Smoothing
          853018 - Mid/Side, Time Domain Smoothing
          853019 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853020 - Independent Phase, Time Domain Smoothing
          853021 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853022 - Mid/Side, Independent Phase, Time Domain Smoothing
          853023 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853024 - nothing
          853025 - Preserve Formants
          853026 - Mid/Side
          853027 - Preserve Formants, Mid/Side
          853028 - Independent Phase
          853029 - Preserve Formants, Independent Phase
          853030 - Mid/Side, Independent Phase
          853031 - Preserve Formants, Mid/Side, Independent Phase
          853032 - Time Domain Smoothing
          853033 - Preserve Formants, Time Domain Smoothing
          853034 - Mid/Side, Time Domain Smoothing
          853035 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853036 - Independent Phase, Time Domain Smoothing
          853037 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853038 - Mid/Side, Independent Phase, Time Domain Smoothing
          853039 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853040 - nothing
          853041 - Preserve Formants
          853042 - Mid/Side
          853043 - Preserve Formants, Mid/Side
          853044 - Independent Phase
          853045 - Preserve Formants, Independent Phase
          853046 - Mid/Side, Independent Phase
          853047 - Preserve Formants, Mid/Side, Independent Phase
          853048 - Time Domain Smoothing
          853049 - Preserve Formants, Time Domain Smoothing
          853050 - Mid/Side, Time Domain Smoothing
          853051 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853052 - Independent Phase, Time Domain Smoothing
          853053 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853054 - Mid/Side, Independent Phase, Time Domain Smoothing
          853055 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853056 - nothing
          853057 - Preserve Formants
          853058 - Mid/Side
          853059 - Preserve Formants, Mid/Side
          853060 - Independent Phase
          853061 - Preserve Formants, Independent Phase
          853062 - Mid/Side, Independent Phase
          853063 - Preserve Formants, Mid/Side, Independent Phase
          853064 - Time Domain Smoothing
          853065 - Preserve Formants, Time Domain Smoothing
          853066 - Mid/Side, Time Domain Smoothing
          853067 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853068 - Independent Phase, Time Domain Smoothing
          853069 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853070 - Mid/Side, Independent Phase, Time Domain Smoothing
          853071 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Long
          853072 - nothing
          853073 - Preserve Formants
          853074 - Mid/Side
          853075 - Preserve Formants, Mid/Side
          853076 - Independent Phase
          853077 - Preserve Formants, Independent Phase
          853078 - Mid/Side, Independent Phase
          853079 - Preserve Formants, Mid/Side, Independent Phase
          853080 - Time Domain Smoothing
          853081 - Preserve Formants, Time Domain Smoothing
          853082 - Mid/Side, Time Domain Smoothing
          853083 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853084 - Independent Phase, Time Domain Smoothing
          853085 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853086 - Mid/Side, Independent Phase, Time Domain Smoothing
          853087 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853088 - nothing
          853089 - Preserve Formants
          853090 - Mid/Side
          853091 - Preserve Formants, Mid/Side
          853092 - Independent Phase
          853093 - Preserve Formants, Independent Phase
          853094 - Mid/Side, Independent Phase
          853095 - Preserve Formants, Mid/Side, Independent Phase
          853096 - Time Domain Smoothing
          853097 - Preserve Formants, Time Domain Smoothing
          853098 - Mid/Side, Time Domain Smoothing
          853099 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853100 - Independent Phase, Time Domain Smoothing
          853101 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853102 - Mid/Side, Independent Phase, Time Domain Smoothing
          853103 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853104 - nothing
          853105 - Preserve Formants
          853106 - Mid/Side
          853107 - Preserve Formants, Mid/Side
          853108 - Independent Phase
          853109 - Preserve Formants, Independent Phase
          853110 - Mid/Side, Independent Phase
          853111 - Preserve Formants, Mid/Side, Independent Phase
          853112 - Time Domain Smoothing
          853113 - Preserve Formants, Time Domain Smoothing
          853114 - Mid/Side, Time Domain Smoothing
          853115 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853116 - Independent Phase, Time Domain Smoothing
          853117 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853118 - Mid/Side, Independent Phase, Time Domain Smoothing
          853119 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Long
          853120 - nothing
          853121 - Preserve Formants
          853122 - Mid/Side
          853123 - Preserve Formants, Mid/Side
          853124 - Independent Phase
          853125 - Preserve Formants, Independent Phase
          853126 - Mid/Side, Independent Phase
          853127 - Preserve Formants, Mid/Side, Independent Phase
          853128 - Time Domain Smoothing
          853129 - Preserve Formants, Time Domain Smoothing
          853130 - Mid/Side, Time Domain Smoothing
          853131 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853132 - Independent Phase, Time Domain Smoothing
          853133 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853134 - Mid/Side, Independent Phase, Time Domain Smoothing
          853135 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Long
          853136 - nothing
          853137 - Preserve Formants
          853138 - Mid/Side
          853139 - Preserve Formants, Mid/Side
          853140 - Independent Phase
          853141 - Preserve Formants, Independent Phase
          853142 - Mid/Side, Independent Phase
          853143 - Preserve Formants, Mid/Side, Independent Phase
          853144 - Time Domain Smoothing
          853145 - Preserve Formants, Time Domain Smoothing
          853146 - Mid/Side, Time Domain Smoothing
          853147 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853148 - Independent Phase, Time Domain Smoothing
          853149 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853150 - Mid/Side, Independent Phase, Time Domain Smoothing
          853151 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Long
          853152 - nothing
          853153 - Preserve Formants
          853154 - Mid/Side
          853155 - Preserve Formants, Mid/Side
          853156 - Independent Phase
          853157 - Preserve Formants, Independent Phase
          853158 - Mid/Side, Independent Phase
          853159 - Preserve Formants, Mid/Side, Independent Phase
          853160 - Time Domain Smoothing
          853161 - Preserve Formants, Time Domain Smoothing
          853162 - Mid/Side, Time Domain Smoothing
          853163 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853164 - Independent Phase, Time Domain Smoothing
          853165 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853166 - Mid/Side, Independent Phase, Time Domain Smoothing
          853167 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853168 - nothing
          853169 - Preserve Formants
          853170 - Mid/Side
          853171 - Preserve Formants, Mid/Side
          853172 - Independent Phase
          853173 - Preserve Formants, Independent Phase
          853174 - Mid/Side, Independent Phase
          853175 - Preserve Formants, Mid/Side, Independent Phase
          853176 - Time Domain Smoothing
          853177 - Preserve Formants, Time Domain Smoothing
          853178 - Mid/Side, Time Domain Smoothing
          853179 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853180 - Independent Phase, Time Domain Smoothing
          853181 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853182 - Mid/Side, Independent Phase, Time Domain Smoothing
          853183 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853184 - nothing
          853185 - Preserve Formants
          853186 - Mid/Side
          853187 - Preserve Formants, Mid/Side
          853188 - Independent Phase
          853189 - Preserve Formants, Independent Phase
          853190 - Mid/Side, Independent Phase
          853191 - Preserve Formants, Mid/Side, Independent Phase
          853192 - Time Domain Smoothing
          853193 - Preserve Formants, Time Domain Smoothing
          853194 - Mid/Side, Time Domain Smoothing
          853195 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853196 - Independent Phase, Time Domain Smoothing
          853197 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853198 - Mid/Side, Independent Phase, Time Domain Smoothing
          853199 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853200 - nothing
          853201 - Preserve Formants
          853202 - Mid/Side
          853203 - Preserve Formants, Mid/Side
          853204 - Independent Phase
          853205 - Preserve Formants, Independent Phase
          853206 - Mid/Side, Independent Phase
          853207 - Preserve Formants, Mid/Side, Independent Phase
          853208 - Time Domain Smoothing
          853209 - Preserve Formants, Time Domain Smoothing
          853210 - Mid/Side, Time Domain Smoothing
          853211 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853212 - Independent Phase, Time Domain Smoothing
          853213 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853214 - Mid/Side, Independent Phase, Time Domain Smoothing
          853215 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Long
          853216 - nothing
          853217 - Preserve Formants
          853218 - Mid/Side
          853219 - Preserve Formants, Mid/Side
          853220 - Independent Phase
          853221 - Preserve Formants, Independent Phase
          853222 - Mid/Side, Independent Phase
          853223 - Preserve Formants, Mid/Side, Independent Phase
          853224 - Time Domain Smoothing
          853225 - Preserve Formants, Time Domain Smoothing
          853226 - Mid/Side, Time Domain Smoothing
          853227 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853228 - Independent Phase, Time Domain Smoothing
          853229 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853230 - Mid/Side, Independent Phase, Time Domain Smoothing
          853231 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853232 - nothing
          853233 - Preserve Formants
          853234 - Mid/Side
          853235 - Preserve Formants, Mid/Side
          853236 - Independent Phase
          853237 - Preserve Formants, Independent Phase
          853238 - Mid/Side, Independent Phase
          853239 - Preserve Formants, Mid/Side, Independent Phase
          853240 - Time Domain Smoothing
          853241 - Preserve Formants, Time Domain Smoothing
          853242 - Mid/Side, Time Domain Smoothing
          853243 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853244 - Independent Phase, Time Domain Smoothing
          853245 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853246 - Mid/Side, Independent Phase, Time Domain Smoothing
          853247 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853248 - nothing
          853249 - Preserve Formants
          853250 - Mid/Side
          853251 - Preserve Formants, Mid/Side
          853252 - Independent Phase
          853253 - Preserve Formants, Independent Phase
          853254 - Mid/Side, Independent Phase
          853255 - Preserve Formants, Mid/Side, Independent Phase
          853256 - Time Domain Smoothing
          853257 - Preserve Formants, Time Domain Smoothing
          853258 - Mid/Side, Time Domain Smoothing
          853259 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853260 - Independent Phase, Time Domain Smoothing
          853261 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853262 - Mid/Side, Independent Phase, Time Domain Smoothing
          853263 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing 
 integer optimize_tonal_content 2, checkbox for optimize-tonal-content is set on; 0, checkbox for optimize-tonal-content is set off 
 number stretch_marker_fadesize in milliseconds; negative values are allowed 

Parameters:
 MediaItem MediaItem the MediaItem, whose playback-rate-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemChanMode

Functioncall:

integer channelmode = ultraschall.GetItemChanMode(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the channelmode-entry of a MediaItem or MediaItemStateChunk.
It's the CHANMODE-entry
Returns nil in case of error.

Returnvalues:
 integer channelmode channelmode of the MediaItem
0 - normal
1 - reverse stereo
2 - Mono (Mix L+R)
3 - Mono Left
4 - Mono Right
5 - Mono 3
...
66 - Mono 64
67 - Stereo 1/2
...
129 - Stereo 63/64 

Parameters:
 MediaItem MediaItem the MediaItem, whose channelmode-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemGUID

Functioncall:

string GUID = ultraschall.GetItemGUID(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the GUID-entry of a MediaItem or MediaItemStateChunk.
Returns nil in case of error.

Returnvalues:
 string GUID the GUID of the item 

Parameters:
 MediaItem MediaItem the MediaItem, whose GUID-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemRecPass

Functioncall:

integer recpass_state = ultraschall.GetItemRecPass(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the recpass-entry of a MediaItem or MediaItemStateChunk.
It's the counter of the recorded item-takes within a project, ordered by the order of recording. Only displayed with recorded item-takes, not imported ones.

It's the RECPASS-entry.
Returns nil in case of error.

Returnvalues:
 integer recpass_state the number of recorded mediaitem; every recorded item gets it's counting-number. 

Parameters:
 MediaItem MediaItem the MediaItem, whose recpass-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemBeat

Functioncall:

integer beatstate = ultraschall.GetItemBeat(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the beatstate/timebase-entry of a MediaItem or MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer beatstate the item-timebase state
nil - Track/project default timebase
0 - Time
1 - Beats (posiiton, length, rate)
2 - Beats (position only) 

Parameters:
 MediaItem MediaItem the MediaItem, whose beatstate/timebase-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemMixFlag

Functioncall:

integer itemmix_state = ultraschall.GetItemMixFlag(MediaItem MediaItem, optional string MediaItemStateChunk)

Description:
Returns the item-mix-behavior-entry of a MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer itemmix_state the item-mix-behavior
nil - Project Default item mix behavior
0 - Enclosed items replace enclosing items
1 - Items always mix
2 - Items always replace earlier items 

Parameters:
 MediaItem MediaItem the MediaItem, whose item-mix-behavior-state you want to know; nil, use parameter MediaItemStatechunk instead 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemUSTrackNumber_StateChunk

Functioncall:

integer tracknumber, MediaTrack track = ultraschall.GetItemUSTrackNumber_StateChunk(string MediaItemStateChunk)

Description:
Returns the tracknumber as well as the mediatrack-object from where the mediaitem was from, as given by a MediaItemStateChunk.
This works only, if the StateChunk contains the entry "ULTRASCHALL_TRACKNUMBER", which holds the original tracknumber of the MediaItem.

This entry will only be added by functions from the Ultraschall-API, like GetAllMediaItemsBetween
Returns -1 in case of error.

Returnvalues:
 integer tracknumber the tracknumber, where this item came from; starts with 1 for the first track! 
 MediaTrack track the accompanying track as MediaTrack-object 

Parameters:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 SetItemUSTrackNumber_StateChunk

Functioncall:

string MediaItemStateChunk = ultraschall.SetItemUSTrackNumber_StateChunk(string MediaItemStateChunk, integer tracknumber)

Description:
Adds/Replaces the entry "ULTRASCHALL_TRACKNUMBER" in a MediaItemStateChunk, that tells other Ultraschall-Apifunctions, from which track this item originated from.
It returns the modified MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 

Parameters:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 
 integer tracknumber the tracknumber you want to set, with 1 for track 1, 2 for track 2 


^ Reaper version 5.40Lua version 5.3 SetItemPosition

Functioncall:

string MediaItemStateChunk = ultraschall.SetItemPosition(MediaItem MediaItem, integer position, optional string MediaItemStateChunk)

Description:
Sets position in a MediaItem or MediaItemStateChunk in seconds.
It returns the modified MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 

Parameters:
 MediaItem MediaItem the MediaItem, whose state you want to change; nil, use parameter MediaItemStateChunk instead 
 integer position position in seconds 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 SetItemLength

Functioncall:

string MediaItemStateChunk = ultraschall.SetItemLength(MediaItem MediaItem, integer length, string MediaItemStateChunk)

Description:
Sets length in a MediaItem and MediaItemStateChunk in seconds.
It returns the modified MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 

Parameters:
 MediaItem MediaItem the MediaItem, whose state you want to change; nil, use parameter MediaItemStateChunk instead 
 integer length length in seconds 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.95Lua version 5.3 GetItemStateChunk

Functioncall:

boolean retval, string MediaItemStateChunk = ultraschall.GetItemStateChunk(MediaItem MediaItem, boolean AddTracknumber)

Description:
Returns the statechunk of MediaItem. Parameter AddTracknumber allows you to set, whether the tracknumber of the MediaItem shall be inserted to the statechunk as well, by the new entry "ULTRASCHALL_TRACKNUMBER".

returns false in case of an error

Returnvalues:
 boolean retval true, if getting the statechunk was successful; false, if not 
 string MediaItemStateChunk the statechunk of the MediaItem 

Parameters:
 MediaItem MediaItem the MediaItem, whose statechunk you want to have 
 boolean AddTracknumber nil or true; add the tracknumber, where the MediaItem lies, as additional entry entry "ULTRASCHALL_TRACKNUMBER" to the statechunk; false, just return the original statechunk. 


^ Reaper version 5.92Lua version 5.3 IsValidMediaItemStateChunk

Functioncall:

boolean retval = ultraschall.IsValidMediaItemStateChunk(string MediaItemStateChunk)

Description:
Checks, whether MediaItemStateChunk is a valide MediaItemStateChunk.

Returns false in case of an error

Returnvalues:
 boolean retval true, MediaItemStateChunk is valid; false, MediaItemStateChunk isn't a valid statechunk 

Parameters:
 string MediaItemStateChunk the string to check, if it's a valid MediaItemStateChunk 


^ Reaper version 5.40Lua version 5.3 CheckMediaItemArray

Functioncall:

boolean retval, integer count, array retMediaItemArray = ultraschall.CheckMediaItemArray(array MediaItemArray)

Description:
Checks, whether MediaItemArray is valid.
It throws out all entries, that are not MediaItems and returns the altered array as result.

returns false in case of error or if it is not a valid MediaItemArray

Returnvalues:
 boolean retval returns true if MediaItemArray is valid, false if not 
 integer count the number of entries in the returned retMediaItemArray 
 array retMediaItemArray the, possibly, altered MediaItemArray 

Parameters:
 array MediaItemArray a MediaItemArray that shall be checked for validity 


^ Reaper version 5.40Lua version 5.3 IsValidMediaItemArray

Functioncall:

boolean retval, integer count, array retMediaItemArray = ultraschall.IsValidMediaItemArray(array MediaItemArray)

Description:
Checks, whether MediaItemArray is valid.
It throws out all entries, that are not MediaItems and returns the altered array as result.

returns false in case of an error or if it is not a valid MediaItemArray

Returnvalues:
 boolean retval returns true if MediaItemArray is valid, false if not 
 integer count the number of entries in the returned retMediaItemArray 
 array retMediaItemArray the, possibly, altered MediaItemArray 

Parameters:
 array MediaItemArray a MediaItemArray that shall be checked for validity 


^ Reaper version 5.40Lua version 5.3 CheckMediaItemStateChunkArray

Functioncall:

boolean retval, integer count, array retMediaItemStateChunkArray = ultraschall.CheckMediaItemStateChunkArray(array MediaItemStateChunkArray)

Description:
Checks, whether MediaItemStateChunkArray is valid.
It throws out all entries, that are not MediaItemStateChunks and returns the altered array as result.

returns false in case of an error or if it is not a valid MediaItemStateChunkArray

Returnvalues:
 boolean retval returns true if MediaItemStateChunkArray is valid, false if not 
 integer count the number of entries in the returned retMediaItemStateChunkArray 
 array retMediaItemStateChunkArray the, possibly, altered MediaItemStateChunkArray 

Parameters:
 array MediaItemStateChunkArray a MediaItemStateChunkArray that shall be checked for validity 


^ Reaper version 5.40Lua version 5.3 IsValidMediaItemStateChunkArray

Functioncall:

boolean retval, integer count, array retMediaItemStateChunkArray = ultraschall.IsValidMediaItemStateChunkArray(array MediaItemStateChunkArray)

Description:
Checks, whether MediaItemStateChunkArray is valid.
It throws out all entries, that are not MediaItemStateChunks and returns the altered array as result.

returns false in case of an error or if it is not a valid MediaItemStateChunkArray

Returnvalues:
 boolean retval returns true if MediaItemStateChunkArray is valid, false if not 
 integer count the number of entries in the returned retMediaItemStateChunkArray 
 array retMediaItemStateChunkArray the, possibly, altered MediaItemStateChunkArray 

Parameters:
 array MediaItemStateChunkArray a MediaItemStateChunkArray that shall be checked for validity 


^ Reaper version 5.40Lua version 5.3 GetMediaItemsAtPosition

Functioncall:

integer number_of_items, array MediaItemArray, array MediaItemStateChunkArray = ultraschall.GetMediaItemsAtPosition(number position, string trackstring)

Description:
Gets all Mediaitems at position, from the tracks given by trackstring.
Returns a MediaItemArray with the found MediaItems

returns -1 in case of error

Returnvalues:
 integer number_of_items the number of items at position 
 array MediaItemArray an array, that contains all MediaItems at position from the tracks given by trackstring. 
 array MediaItemStateChunkArray an array, that contains all Mediaitem's MediaItemStatechunks at position from the tracks given by trackstring. 

Parameters:
 number position position in seconds 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 OnlyMediaItemsOfTracksInTrackstring

Functioncall:

integer retval, array MediaItemArray = ultraschall.OnlyMediaItemsOfTracksInTrackstring(array MediaItemArray, string trackstring)

Description:
Throws all MediaItems out of the MediaItemArray, that are not within the tracks, as given with trackstring.
Returns the "cleared" MediaItemArray

returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 array MediaItemArray the "cleared" array, that contains only Items in tracks, as given by trackstring, -1 in case of error 

Parameters:
 array MediaItemArray an array with MediaItems; no nil-entries allowed, will be seen as the end of the array 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 SplitMediaItems_Position

Functioncall:

boolean retval, array MediaItemArray = ultraschall.SplitMediaItems_Position(number position, string trackstring, boolean crossfade)

Description:
Splits items at position, in the tracks given by trackstring.
If auto-crossfade is set in the Reaper-preferences, crossfade turns it on(true) or off(false).

Returns false, in case of error.

Returnvalues:
 boolean retval true - success, false - error 
 array MediaItemArray an array with the items on the right side of the split 

Parameters:
 number position the position in seconds 
 string trackstring the numbers for the tracks, where split shall be applied to; numbers separated by a comma 
 boolean crossfade true or nil, automatic crossfade(if enabled) will be applied; false, automatic crossfade is off 


^ Reaper version 5.40Lua version 5.3 SplitItemsAtPositionFromArray

Functioncall:

boolean retval, array MediaItemArray = ultraschall.SplitItemsAtPositionFromArray(number position, array MediaItemArray, boolean crossfade)

Description:
Splits items in MediaItemArray at position, in the tracks given by trackstring.
If auto-crossfade is set in the Reaper-preferences, crossfade turns it on(true) or off(false).

Returns false, in case of error.

Returnvalues:
 boolean retval true - success, false - error 
 array MediaItemArray an array with the items on the right side of the split 

Parameters:
 number position the position in seconds 
 array MediaItemArray an array with the items, where split shall be applied to. No nil-entries allowed! 
 boolean crossfade true - automatic crossfade(if enabled) will be applied; false - automatic crossfade is off 


^ Reaper version 5.95Lua version 5.3 DeleteMediaItem

Functioncall:

boolean retval, string MediaItemStateChunk = ultraschall.DeleteMediaItem(MediaItem MediaItem)

Description:
deletes a MediaItem. Returns true, in case of success, false in case of error.

returns the MediaItemStateChunk of the deleted MediaItem as well, so you can do additional processing with a deleted item.

returns false in case of an error

Returnvalues:
 boolean retval true, delete was successful; false was unsuccessful 
 string MediaItemStateChunk the StateChunk of the deleted MediaItem
the statechunk contains an additional entry "ULTRASCHALL_TRACKNUMBER" which holds the tracknumber, in which the deleted MediaItem was located 

Parameters:
 MediaItem MediaItem the MediaItem to be deleted 


^ Reaper version 5.95Lua version 5.3 DeleteMediaItemsFromArray

Functioncall:

boolean retval, array MediaItemArray = ultraschall.DeleteMediaItemsFromArray(array MediaItemArray)

Description:
deletes the MediaItems from MediaItemArray. Returns true, in case of success, false in case of error.
In addition, it returns a MediaItemStateChunkArray, that contains the statechunks of all deleted MediaItems

returns false in case of an error

Returnvalues:
 boolean retval true, delete was successful; false was unsuccessful 
 array MediaItemStateChunkArray and array with all statechunks of all deleted MediaItems;
each statechunk contains an additional entry "ULTRASCHALL_TRACKNUMBER" which holds the tracknumber, in which the deleted MediaItem was located 

Parameters:
 array MediaItemArray a array with MediaItem-objects to delete; no nil entries allowed 


^ Reaper version 5.95Lua version 5.3 DeleteMediaItems_Position

Functioncall:

boolean retval, array MediaItemStateChunkArray = ultraschall.DeleteMediaItems_Position(number position, string trackstring)

Description:
Delete the MediaItems at given position, from the tracks as given by trackstring.
returns, if deleting was successful and an array with all statechunks of all deleted MediaItems

returns false in case of an error

Returnvalues:
 boolean retval true, delete was successful; false was unsuccessful 
 array MediaItemStateChunkArray and array with all statechunks of all deleted MediaItems;
each statechunk contains an additional entry "ULTRASCHALL_TRACKNUMBER" which holds the tracknumber, in which the deleted MediaItem was located 

Parameters:
 number position the position in seconds 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 GetAllMediaItemsBetween

Functioncall:

integer count, array MediaItemArray, array MediaItemStateChunkArray = ultraschall.GetAllMediaItemsBetween(number startposition, number endposition, string trackstring, boolean inside)

Description:
Gets all MediaItems between startposition and endposition from the tracks as given by trackstring.
Set inside to true to get only items, that are fully within the start and endposition, set it to false, if you also want items, that are just partially inside(end or just the beginning of the item).

Returns the number of items, an array with all the MediaItems and an array with all the MediaItemStateChunks of the items, as used by functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.
The statechunks include a new element "ULTRASCHALL_TRACKNUMBER", which contains the tracknumber of where the item originally was in; important, if you delete the items as you'll otherwise loose this information!
Returns -1 in case of failure.

Returnvalues:
 integer count the number of found items 
 array MediaItemArray an array with all the found MediaItems 
 array MediaItemStateChunkArray an array with the MediaItemStateChunks, that can be used to create new items with InsertMediaItem_MediaItemStateChunk 

Parameters:
 number startposition startposition in seconds 
 number endposition endposition in seconds 
 string trackstring the tracknumbers, separated by a comma 
 boolean inside true, only items that are completely within selection; false, include items that are partially within selection 


^ Reaper version 5.40Lua version 5.3 MoveMediaItemsAfter_By

Functioncall:

boolean retval = ultraschall.MoveMediaItemsAfter_By(number old_position, number change_position_by, string trackstring)

Description:
Moves all items after old_position by change_position_by-seconds. Affects only items, that begin after oldposition, so items that start before and end after old_position do not move.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 number oldposition the position, from where the movement shall be applied to, in seconds 
 number change_position_by the change of the position in seconds; positive - toward the end of the project, negative - toward the beginning. 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 MoveMediaItemsBefore_By

Functioncall:

boolean retval = ultraschall.MoveMediaItemsBefore_By(number old_position, number change_position_by, string trackstring)

Description:
Moves all items before old_position by change_position_by-seconds. Affects only items, that end before oldposition, so items that start before and end after old_position do not move.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 number oldposition the position, from where the movement shall be applied to, in seconds 
 number change_position_by the change of the position in seconds; positive - toward the end of the project, negative - toward the beginning. 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 MoveMediaItemsBetween_To

Functioncall:

boolean retval = ultraschall.MoveMediaItemsBetween_To(number startposition, number endposition, number newposition, string trackstring, boolean inside)

Description:
Moves the items between sectionstart and sectionend to newposition, within the tracks given by trackstring.
If inside is set to true, only items completely within the section are moved; if set to false, also items are affected, that are just partially within the section.

Items, that start after sectionstart, and therefore have an offset, will be moved to newposition+their offset. Keep that in mind.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 number startposition begin of the item-selection in seconds 
 number endposition end of the item-selection in seconds 
 number newposition new position in seconds 
 string trackstring the tracknumbers, separated by a , 
 boolean inside true, only items completely within the section; false, also items partially within the section 


^ Reaper version 5.40Lua version 5.3 ChangeLengthOfMediaItems_FromArray

Functioncall:

boolean retval = ultraschall.ChangeLengthOfMediaItems_FromArray(array MediaItemArray, number newlength)

Description:
Changes the length of the MediaItems in MediaItemArray to newlength.
They will all be set to the new length, regardless of their old length. If you want to change the length of the items not >to< newlength, but >by< newlength, use ChangeDeltaLengthOfMediaItems_FromArray instead.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 array MediaItemArray an array with items to be changed. No nil entries allowed! 
 number newlength the new length of the items in seconds 


^ Reaper version 5.40Lua version 5.3 ChangeDeltaLengthOfMediaItems_FromArray

Functioncall:

boolean retval = ultraschall.ChangeDeltaLengthOfMediaItems_FromArray(array MediaItemArray, number deltalength)

Description:
Changes the length of the MediaItems in MediaItemArray by deltalength.
If you want to change the length of the items not >by< deltalength, but >to< deltalength, use ChangeLengthOfMediaItems_FromArray instead.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 array MediaItemArray an array with items to be changed. No nil entries allowed! 
 number deltalength the change of the length of the items in seconds, positive value - longer, negative value - shorter 


^ Reaper version 5.40Lua version 5.3 ChangeOffsetOfMediaItems_FromArray

Functioncall:

boolean retval = ultraschall.ChangeOffsetOfMediaItems_FromArray(array MediaItemArray, number newoffset)

Description:
Changes the audio-offset of the MediaItems in MediaItemArray to newoffset.
It affects all(!) takes that the MediaItems has.
If you want to change the offset of the items not >to< newoffset, but >by< newoffset, use ChangeDeltaOffsetOfMediaItems_FromArray instead.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true, in case of success; false, in case of failure 

Parameters:
 array MediaItemArray an array with items to be changed. No nil entries allowed! 
 number newoffset the new offset of the items in seconds 


^ Reaper version 5.40Lua version 5.3 ChangeDeltaOffsetOfMediaItems_FromArray

Functioncall:

boolean retval = ultraschall.ChangeDeltaOffsetOfMediaItems_FromArray(array MediaItemArray, number deltaoffset)

Description:
Changes the audio-offset of the MediaItems in MediaItemArray by deltaoffset.
It affects all(!) takes of the MediaItems have.
If you want to change the offset of the items not >by< deltaoffset, but >to< deltaoffset, use ChangeOffsetOfMediaItems_FromArray instead.

Returns false in case of failure, true in case of success.

Returnvalues:
 boolean retval true in case of success; false in case of failure 

Parameters:
 array MediaItemArray an array with items to be changed. No nil entries allowed! 
 number newoffset the new offset of the items in seconds 


^ Reaper version 5.40Lua version 5.3 SectionCut

Functioncall:

integer number_items, array MediaItemArray_StateChunk = ultraschall.SectionCut(number startposition, number endposition, string trackstring, boolean add_to_clipboard)

Description:
Cuts out all items between startposition and endposition in the tracks given by trackstring.

Returns number of cut items as well as an array with the mediaitem-statechunks, which can be used with functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.
Returns -1 in case of failure.

Returnvalues:
 integer number_items the number of cut items 
 array MediaItemArray_StateChunk an array with the mediaitem-states of the cut items. 

Parameters:
 number startposition the startposition of the section in seconds 
 number endposition the endposition of the section in seconds 
 string trackstring the tracknumbers, separated by , 
 boolean add_to_clipboard true, puts the cut items into the clipboard; false, don't put into the clipboard 


^ Reaper version 5.40Lua version 5.3 SectionCut_Inverse

Functioncall:

integer number_items_beforestart, array MediaItemArray_StateChunk_beforestart, integer number_items_afterend, array MediaItemArray_StateChunk_afterend = ultraschall.SectionCut_Inverse(number startposition, number endposition, string trackstring, boolean add_to_clipboard)

Description:
Cuts out all items before(!) startposition and after(!) endposition in the tracks given by trackstring; it keeps all items inbetween startposition and endposition.

Returns number of cut items as well as an array with the mediaitem-statechunks, which can be used with functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.

Returns -1 in case of failure.

Returnvalues:
 integer number_items_beforestart the number of cut items before startposition 
 array MediaItemArray_StateChunk_beforestart an array with the mediaitem-states of the cut items before startposition 
 integer number_items_afterend the number of cut items after endposition 
 array MediaItemArray_StateChunk_afterend an array with the mediaitem-states of the cut items after endposition 

Parameters:
 number startposition the startposition of the section in seconds 
 number endposition the endposition of the section in seconds 
 string trackstring the tracknumbers, separated by , 
 boolean add_to_clipboard true, puts the cut items into the clipboard; false, don't put into the clipboard 


^ Reaper version 5.40Lua version 5.3 RippleCut

Functioncall:

integer number_items, array MediaItemArray_StateChunk = ultraschall.RippleCut(number startposition, number endposition, string trackstring, boolean moveenvelopepoints, boolean add_to_clipboard)

Description:
Cuts out all items between startposition and endposition in the tracks given by trackstring. After cut, it moves the remaining items after(!) endposition toward projectstart, by the difference between start and endposition.

Returns number of cut items as well as an array with the mediaitem-statechunks, which can be used with functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.

Returns -1 in case of failure.

Returnvalues:
 integer number_items the number of cut items 
 array MediaItemArray_StateChunk an array with the mediaitem-states of the cut items 

Parameters:
 number startposition the startposition of the section in seconds 
 number endposition the endposition of the section in seconds 
 string trackstring the tracknumbers, separated by , 
 boolean moveenvelopepoints moves envelopepoints, if existing, as well 
 boolean add_to_clipboard true, puts the cut items into the clipboard; false, don't put into the clipboard 


^ Reaper version 5.40Lua version 5.3 RippleCut_Reverse

Functioncall:

integer number_items, array MediaItemArray_StateChunk = ultraschall.RippleCut_Reverse(number startposition, number endposition, string trackstring, boolean moveenvelopepoints, boolean add_to_clipboard)

Description:
Cuts out all items between startposition and endposition in the tracks given by trackstring. After cut, it moves the remaining items before(!) startposition toward projectend, by the difference between start and endposition.

Returns number of cut items as well as an array with the mediaitem-statechunks, which can be used with functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.

Returns -1 in case of failure.

Returnvalues:
 integer number_items the number of cut items 
 array MediaItemArray_StateChunk an array with the mediaitem-states of the cut items 

Parameters:
 number startposition the startposition of the section in seconds 
 number endposition the endposition of the section in seconds 
 string trackstring the tracknumbers, separated by , 
 boolean moveenvelopepoints moves envelopepoints, if existing, as well 
 boolean add_to_clipboard true, puts the cut items into the clipboard; false, don't put into the clipboard 


^ Reaper version 5.40Lua version 5.3 InsertMediaItem_MediaItem

Functioncall:

integer retval, MediaItem MediaItem, number startposition, number endposition, number length = ultraschall.InsertMediaItem_MediaItem(number position, MediaItem MediaItem, MediaTrack MediaTrack)

Description:
Inserts MediaItem in MediaTrack at position. Returns the newly created(or better: inserted) MediaItem as well as startposition, endposition and length of the inserted item.

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 MediaItem MediaItem the newly created MediaItem 
 number startposition the startposition of the inserted MediaItem in seconds 
 number endposition the endposition of the inserted MediaItem in seconds 
 number length the length of the inserted MediaItem in seconds 

Parameters:
 number position the position of the newly created mediaitem 
 MediaItem MediaItem the MediaItem that shall be inserted into a track 
 MediaTrack MediaTrack the track, where the item shall be inserted to 


^ Reaper version 5.40Lua version 5.3 InsertMediaItem_MediaItemStateChunk

Functioncall:

integer retval, MediaItem MediaItem, number startposition, number endposition, number length = ultraschall.InsertMediaItem_MediaItemStateChunk(number position, string MediaItemStateChunk, MediaTrack MediaTrack)

Description:
Inserts a new MediaItem in MediaTrack at position. Uses a mediaitem-state-chunk as created by functions like GetAllMediaItemsBetween, reaper.GetItemStateChunk and reaper.SetItemStateChunk.. Returns the newly created MediaItem.

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 MediaItem MediaItem the newly created MediaItem 
 number startposition the startposition of the inserted MediaItem in seconds 
 number endposition the endposition of the inserted MediaItem in seconds 
 number length the length of the inserted MediaItem in seconds 

Parameters:
 number position the position of the newly created mediaitem 
 string MediaItemStatechunk the Statechunk for the MediaItem, that shall be inserted into a track 
 MediaTrack MediaTrack the track, where the item shall be inserted to; nil, use the statechunk-entry ULTRASCHALL_TRACKNUMBER for the track instead. 


^ Reaper version 5.40Lua version 5.3 InsertMediaItemArray

Functioncall:

integer number_of_items, array MediaItemArray = ultraschall.InsertMediaItemArray(number position, array MediaItemArray, string trackstring)

Description:
Inserts the MediaItems from MediaItemArray at position into the tracks, as given by trackstring.

Returns the number of newly created items, as well as an array with the newly create MediaItems.
Returns -1 in case of failure.

Note: this inserts the items only in the tracks, where the original items came from. Items from track 1 will be included into track 1. Trackstring only helps to include or exclude the items from inclusion into certain tracks.
If you have a MediaItemArray with items from track 1,2,3,4,5 and you give trackstring only the tracknumber for track 3 and 4 -> 3,4, then only the items, that were in tracks 3 and 4 originally, will be included, all the others will be ignored.

Returnvalues:
 integer number_of_items the number of MediaItems created 
 array MediaItemArray an array with the newly created MediaItems 

Parameters:
 number position the position of the newly created mediaitem 
 array MediaItemArray an array with the MediaItems to be inserted 
 string trackstring the numbers of the tracks, separated by a , 


^ Reaper version 5.40Lua version 5.3 GetMediaItemStateChunksFromItems

Functioncall:

integer number_of_items, array MediaItemArray_StateChunks = ultraschall.GetMediaItemStateChunksFromItems(array MediaItemArray)

Description:
Returns the MediaItem-StateChunks for all MediaItems in MediaItemArray. It returns the number of items as well as an array, with each entry one MediaItemStateChunk.

StateChunks are used by the reaper-functions reaper.GetItemStateChunk and reaper.SetItemStateChunk.

Returns -1 in case of failure.

Returnvalues:
 integer number_of_items the number of trackstatechunks, usually the same as MediaItems in MediaItemArray 
 array MediaItemArray_StateChunks an array with the StateChunks of the MediaItems in MediaItemArray 

Parameters:
 array MediaItemArray an array with the MediaItems you want the statechunks of 


^ Reaper version 5.40Lua version 5.3 RippleInsert

Functioncall:

integer number_of_items, array MediaItemArray, number endpos_inserted_items = ultraschall.RippleInsert(number position, array MediaItemArray, string trackstring, boolean moveenvelopepoints, boolean movemarkers)

Description:
It inserts the MediaItems from MediaItemArray at position into the tracks, as given by trackstring. It moves the items, that were there before, accordingly toward the end of the project.

Returns the number of newly created items, as well as an array with the newly created MediaItems and the endposition of the last(projectposition) inserted item into the project.
Returns -1 in case of failure.

Note: this inserts the items only in the tracks, where the original items came from. Items from track 1 will be included into track 1. Trackstring only helps to include or exclude the items from inclusion into certain tracks.
If you have a MediaItemArray with items from track 1,2,3,4,5 and you give trackstring only the tracknumber for track 3 and 4 -> 3,4, then only the items, that were in tracks 3 and 4 originally, will be included, all the others will be ignored.

Returnvalues:
 integer number_of_items the number of newly created items 
 array MediaItemArray an array with the newly created MediaItems 
 number endpos_inserted_items the endposition of the last newly inserted MediaItem 

Parameters:
 number position the position of the newly created mediaitem 
 array MediaItemArray an array with the MediaItems to be inserted 
 string trackstring the numbers of the tracks, separated by a , 
 boolean moveenvelopepoints true, move the envelopepoints as well; false, keep the envelopepoints where they are 
 boolean movemarkers true, move markers as well; false, keep markers where they are 


^ Reaper version 5.40Lua version 5.3 MoveMediaItems_FromArray

Functioncall:

integer retval, number earliest_itemtime, number latest_itemtime = ultraschall.MoveMediaItems_FromArray(array MediaItemArray, number newposition)

Description:
It changes the position of the MediaItems from MediaItemArray. It keeps the related position to each other, putting the earliest item at newposition, putting the others later, relative to their offset.

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of error, else returns 1 
 number earliest_itemtime the new earliest starttime of all MediaItems moved 
 number latest_itemtime the new latest endtime of all MediaItems moved 

Parameters:
 array MediaItemArray an array with the MediaItems to be inserted 
 number newposition the new position in seconds 


^ Reaper version 5.40Lua version 5.3 InsertMediaItemStateChunkArray

Functioncall:

integer number_of_items, array MediaItemArray = ultraschall.InsertMediaItemStateChunkArray(number position, array MediaItemStateChunkArray, string trackstring)

Description:
Inserts the MediaItems from MediaItemStateChunkArray at position into the tracks, as given by trackstring.
Note:Needs ULTRASCHALL_TRACKNUMBER within the statechunks, which includes the tracknumber for each mediaitem to be included. Else it will return -1. That entry will be included automatically into the MediaItemStateChunkArray as provided by GetAllMediaItemsBetween. If you need to manually insert that entry into a statechunk, use SetItemUSTRackNumber_StateChunk.

Returns the number of newly created items, as well as an array with the newly create MediaItems.
Returns -1 in case of failure.

Note: this inserts the items only in the tracks, where the original items came from(or the tracks set with the entry ULTRASCHALL_TRACKNUMBER). Items from track 1 will be included into track 1. Trackstring only helps to include or exclude the items from inclusion into certain tracks.
If you have a MediaItemStateChunkArray with items from track 1,2,3,4,5 and you give trackstring only the tracknumber for track 3 and 4 -> 3,4, then only the items, that were in tracks 3 and 4 originally, will be included, all the others will be ignored.

Returnvalues:
 integer number_of_items the number of MediaItems created 
 array MediaItemArray an array with the newly created MediaItems 

Parameters:
 number position the position of the newly created mediaitem 
 array MediaItemStateChunkArray an array with the statechunks of the MediaItems to be inserted 
 string trackstring the numbers of the tracks, separated by a , 


^ Reaper version 5.40Lua version 5.3 OnlyMediaItemsOfTracksInTrackstring_StateChunk

Functioncall:

integer retval, array MediaItemStateChunkArray = ultraschall.OnlyMediaItemsOfTracksInTrackstring_StateChunk(array MediaItemStateChunkArray, string trackstring)

Description:
Throws all MediaItems out of the MediaItemStateChunkArray, that are not within the tracks, as given with trackstring.
Returns the "cleared" MediaItemArray; returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 array MediaItemStateChunkarray the "cleared" array, that contains only the statechunks of MediaItems in tracks, as given by trackstring, -1 in case of error 

Parameters:
 array MediaItemStateChunkArray an array with MediaItems; no nil-entries allowed, will be seen as the end of the array 
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 RippleInsert_MediaItemStateChunks

Functioncall:

integer number_of_items, array MediaItemStateChunkArray, number endpos_inserted_items = ultraschall.RippleInsert_MediaItemStateChunks(number position, array MediaItemStateChunkArray, string trackstring, boolean moveenvelopepoints, boolean movemarkers)

Description:
It inserts the MediaItems from MediaItemStateChunkArray at position into the tracks, as given by trackstring. It moves the items, that were there before, accordingly toward the end of the project.

Returns the number of newly created items, as well as an array with the newly created MediaItems as statechunks and the endposition of the last(projectposition) inserted item into the project.
Returns -1 in case of failure.

Note: this inserts the items only in the tracks, where the original items came from. Items from track 1 will be included into track 1. Trackstring only helps to include or exclude the items from inclusion into certain tracks.
If you have a MediaItemStateChunkArray with items from track 1,2,3,4,5 and you give trackstring only the tracknumber for track 3 and 4 -> 3,4, then only the items, that were in tracks 3 and 4 originally, will be included, all the others will be ignored.

Returnvalues:
 integer number_of_items the number of newly created items 
 array MediaItemStateChunkArray an array with the newly created MediaItems as StateChunkArray 
 number endpos_inserted_items the endposition of the last newly inserted MediaItem 

Parameters:
 number position the position of the newly created mediaitem 
 array MediaItemStateChunkArray an array with the statechunks of MediaItems to be inserted 
 string trackstring the numbers of the tracks, separated by a , 
 boolean moveenvelopepoints true, move the envelopepoints as well; false, keep the envelopepoints where they are 
 boolean movemarkers true, move markers as well; false, keep markers where they are 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetAllMediaItemsFromTrack

Functioncall:

integer itemcount, array MediaItemArray, array MediaItemStateChunkArray = ultraschall.GetAllMediaItemsFromTrack(integer tracknumber)

Description:
returns the number of items of tracknumber, as well as an array with all MediaItems and an array with all MediaItemStateChunks
returns -1 in case of error

Returnvalues:
 integer itemcount the number of items in that track 
 array MediaItemArray an array with all MediaItems from this track 
 array MediaItemStateChunkArray an array with all MediaItemStateCunks from this track 

Parameters:
 integer tracknumber the tracknumber, from where you want to get the item 


^ Reaper version 5.40Lua version 5.3 SetItemsLockState

Functioncall:

boolean retval = ultraschall.SetItemsLockState(array MediaItemArray, boolean lockstate)

Description:
Sets the lockstate of the items in MediaItemArray. Set lockstate=true to set the items locked; false to set them unlocked.

returns true in case of success, false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 

Parameters:
 array MediaItemArray an array with the MediaItems to be processed 
 boolean lockstate true, to set the MediaItems to locked, false to set them to unlocked 


^ Reaper version 5.40Lua version 5.3 AddLockStateToMediaItemStateChunk

Functioncall:

string changedMediaItemStateChunk = ultraschall.AddLockStateToMediaItemStateChunk(string MediaItemStateChunk, boolean lockstate)

Description:
Sets the lockstate in a MediaItemStateChunk. Set lockstate=true to set the chunk locked; false to set it unlocked.

Does not apply the changes to the MediaItem itself. To do that, use reaper.GetItemStateChunk or ApplyStateChunkToItems!

returns the changed MediaItemStateChunk

returns -1 in case of failure

Returnvalues:
 string changedMediaItemStateChunk the lockstate-modified MediaItemStateChunk 

Parameters:
 string MediaItemStateChunk the statechunk of the item to be processed, as returned by functions like reaper.GetItemStateChunk 
 boolean lockstate true, to set the MediaItemStateChunk to locked, false to set it to unlocked 


^ Reaper version 5.40Lua version 5.3 AddLockStateTo_MediaItemStateChunkArray

Functioncall:

integer count, array changedMediaItemStateChunkArray = ultraschall.AddLockStateTo_MediaItemStateChunkArray(array MediaItemStateChunkArray, boolean lockstate)

Description:
Sets the lockstates in a MediaItemStateChunkArray. Set lockstate=true to set the chunks locked; false to set them unlocked.

Does not apply the changes to the MediaItem itself. To do that, use reaper.GetItemStateChunk or ApplyStateChunkToItems!

returns the number of entries and the altered MediaItemStateChunkArray; -1 in case of failure

Returnvalues:
 integer count the number of entries in the changed MediaItemStateChunkArray 
 array changedMediaItemStateChunkArray the lockstate-modified MediaItemStateChunkArray 

Parameters:
 array MediaItemStateChunkArray the statechunkarray of the items to be processed, as returned by functions like reaper.GetItemStateChunk 
 boolean lockstate true, to set the MediaItemStateChunk to locked, false to set it to unlocked 


^ Reaper version 5.40Lua version 5.3 ApplyStateChunkToItems

Functioncall:

boolean retval, integer skippeditemscount, array skipped_MediaItemStateChunkArray = ultraschall.ApplyStateChunkToItems(array MediaItemStateChunkArray, boolean undostate)

Description:
Applies changed StateChunks to the respective items. Skips deleted items, as they can't be set.

It will look into the IGUID-entry of the statechunks, to find the right corresponding MediaItem to apply the statechunk to.

returns the number of entries and the altered MediaItemStateChunkArray; -1 in case of failure

Returnvalues:
 boolean retval true it worked, false it didn't 
 integer skippeditemscount the number of entries that couldn't be applied 
 array skipped_MediaItemStateChunkArray the StateChunks, that couldn't be aplied 

Parameters:
 array MediaItemStateChunkArray the statechunkarray of the items to be applied, as returned by functions like reaper.GetItemStateChunk 
 boolean undostate true, sets the changed undo-possible, false undo-impossible 


^ Reaper version 5.40Lua version 5.3 GetAllLockedItemsFromMediaItemArray

Functioncall:

integer countlock, array locked_MediaItemArray, integer countunlock, array unlocked_MediaItemArray = ultraschall.GetAllLockedItemsFromMediaItemArray(array MediaItemArray)

Description:
Returns the number and the items that are locked, as well as the number and the items that are NOT locked.
The items are returned as MediaItemArrays
returns -1 in case of failure

Returnvalues:
 integer countlock the number of locked items. -1 in case of failure 
 array locked_MediaItemArray the locked items in a mediaitemarray 
 integer countunlock the number of un(!)locked items 
 array unlocked_MediaItemArray the un(!)locked items in a mediaitemarray 

Parameters:
 array MediaItemArray the statechunkarray of the items to be checked. 


^ Reaper version 5.40Lua version 5.3 GetMediaItemStateChunksFromMediaItemArray

Functioncall:

integer count, array MediaItemStateChunkArray = ultraschall.GetMediaItemStateChunksFromMediaItemArray(array MediaItemArray)

Description:
Returns the number of items and statechunks of the Items in MediaItemArray. It skips items in MediaItemArray, that are deleted.
returns -1 in case of failure

Returnvalues:
 integer count the number of statechunks returned. -1 in case of failure 
 array MediaItemStateChunkArray the statechunks of the items in mediaitemarray 

Parameters:
 array MediaItemArray the statechunkarray of the items to be checked. 


^ Reaper version 6.02Lua version 5.3 GetSelectedMediaItemsAtPosition

Functioncall:

integer count, array MediaItemArray, array MediaItemStateChunkArray = ultraschall.GetSelectedMediaItemsAtPosition(number position, string trackstring)

Description:
Returns all selected items at position in the tracks as given by trackstring, as MediaItemArray. Empty MediaItemAray if none is found.

returns -1 in case of error

Returnvalues:
 integer count the number of entries in the returned MediaItemArray 
 array MediaItemArray the found MediaItems returned as an array 

Parameters:
 number position position in seconds 
 string trackstring the tracknumbers, separated by commas 


^ Reaper version 5.40Lua version 5.3 GetSelectedMediaItemsBetween

Functioncall:

integer count, array MediaItemArray = ultraschall.GetSelectedMediaItemsBetween(number startposition, number endposition, string trackstring, boolean inside)

Description:
Returns all selected items between startposition and endposition in the tracks as given by trackstring, as MediaItemArray. Empty MediaItemAray if none is found.

returns -1 in case of error

Returnvalues:
 integer count the number of entries in the returned MediaItemArray 
 array MediaItemArray the found MediaItems returned as an array 

Parameters:
 number startposition startposition in seconds 
 number endposition endposition in seconds 
 string trackstring the tracknumbers, separated by commas 
 boolean inside true, only items completely within start/endposition; false, also items, that are partially within start/endposition 


^ Reaper version 5.40Lua version 5.3 DeselectMediaItems_MediaItemArray

Functioncall:

integer retval = ultraschall.DeselectMediaItems_MediaItemArray(array MediaItemArray)

Description:
Deselects all MediaItems, that are in MediaItemArray.

returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 array MediaItemArray an array with all the MediaItemObjects, that shall be deselected 


^ Reaper version 5.40Lua version 5.3 SelectMediaItems_MediaItemArray

Functioncall:

integer retval = ultraschall.SelectMediaItems_MediaItemArray(array MediaItemArray)

Description:
Selects all MediaItems, that are in MediaItemArray.

returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 array MediaItemArray an array with all the MediaItemObjects, that shall be selected 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 EnumerateMediaItemsInTrack

Functioncall:

MediaItem item, integer itemcount, array MediaItemArray = ultraschall.EnumerateMediaItemsInTrack(integer tracknumber, integer itemnumber)

Description:
returns the itemnumberth MediaItemobject in track, the number of items in tracknumber and an array with all MediaItems from this track.
returns -1 in case of error

Returnvalues:
 MediaItem item the Mediaitem, as requested by parameter itemnumber 
 integer itemcount the number of items in that track 
 array MediaItemArray an array with all MediaItems from this track 

Parameters:
 integer tracknumber the tracknumber, from where you want to get the item 
 integer itemnumber the itemnumber within that track. 1 for the first, 2 for the second, etc 


^ Reaper version 5.40Lua version 5.3 GetMediaItemArrayLength

Functioncall:

integer start, integer end, integer length = ultraschall.GetMediaItemArrayLength(array MediaItemArray)

Description:
Returns the beginning of the first item, the end of the last item as well as the length between start and end of all items within the MediaItemArray.
Will return -1, in case of error

Returnvalues:
 integer start the beginning of the earliest item in the MediaItemArray in seconds 
 integer end the end of the latest item in the MediaItemArray, timewise, in seconds 
 integer length the length of the MediaItemArray in seconds 

Parameters:
 array MediaItemArray an array with MediaItems, as returned by functions like GetAllMediaItemsBetween or GetMediaItemsAtPosition or similar. 


^ Reaper version 5.40Lua version 5.3 GetMediaItemStateChunkArrayLength

Functioncall:

integer start, integer end, integer length = ultraschall.GetMediaItemStateChunkArrayLength(array MediaItemStateChunkArray)

Description:
Returns the beginning of the first item, the end of the last item as well as the length between start and end of all items within the MediaItemStateChunkArray.
Will return -1, in case of error

Returnvalues:
 integer start the beginning of the earliest item in the MediaItemArray in seconds 
 integer end the end of the latest item in the MediaItemArray, timewise, in seconds 
 integer length the length of the MediaItemArray in seconds 

Parameters:
 array MediaItemStateChunkArray an array with MediaItemStateChunks, as returned by functions like GetAllMediaItemsBetween or GetMediaItemsAtPosition or similar. 


^ Reaper version 5.40Lua version 5.3 GetAllMediaItemGUIDs

Functioncall:

table GUID_Array, integer count_of_GUID = ultraschall.GetAllMediaItemGUIDs()

Description:
Returns an array with all MediaItem-GUIDs in order of the MediaItems-count(1 for first MediaItem, etc).

Returns nil in case of an error

Returnvalues:
 table diff_array an array with all entries from CompareArray2, that are not in Array 

Parameters:
 table GUID_Array an array with all GUIDs of all MediaItems 
 integer count_of_GUID the number of GUIDs(from MediaItems) in the GUID_Array 


^ Reaper version 5.40Lua version 5.3 GetItemSpectralConfig

Functioncall:

integer item_spectral_config = ultraschall.GetItemSpectralConfig(integer itemidx, optional string MediaItemStateChunk)

Description:
returns the item-spectral-config, which is the fft-size of the spectral view for this item.
set itemidx to -1 to use the optional parameter MediaItemStateChunk to alter a MediaItemStateChunk instead of an item directly.

returns -1 in case of error or nil if no spectral-config exists(e.g. when no spectral-edit is applied to this item)

Returnvalues:
 integer item_spectral_config the fft-size in points for the spectral-view; 16, 32, 64, 128, 256, 512, 1024(default), 2048, 4096, 8192; -1, if not existing 

Parameters:
 integer itemidx the number of the item, with 1 for the first item, 2 for the second, etc.; -1, to use the parameter MediaItemStateChunk 
 optional string MediaItemStateChunk you can give a MediaItemStateChunk to process, if itemidx is set to -1 


^ Reaper version 5.40Lua version 5.3 SetItemSpectralConfig

Functioncall:

boolean retval, string MediaItemStateChunk = ultraschall.SetItemSpectralConfig(integer itemidx, integer item_spectral_config, optional string MediaItemStateChunk)

Description:
sets the item-spectral-config, which is the fft-size of the spectral view for this item.

returns false in case of error or if no spectral-config exists(e.g. when no spectral-edit is applied to this item)

Returnvalues:
 boolean retval true, if setting spectral-config worked; false, if not 
 string MediaItemStateChunk the altered MediaItemStateChunk 

Parameters:
 integer itemidx the number of the item, with 1 for the first item, 2 for the second, etc.; -1, if you want to use the optional parameter MediaItemStateChunk 
 integer item_spectral_config the fft-size in points for the spectral-view; 16, 32, 64, 128, 256, 512, 1024(default), 2048, 4096, 8192; nil, to remove it
nil will only remove it, when SPECTRAL_EDIT is removed from item first; returned statechunk will have it removed still 
 optional string MediaItemStateChunk a MediaItemStateChunk you want to have altered; works only, if itemdidx is set to -1, otherwise it will be ignored 


^ Reaper version 5.77Lua version 5.3 CountItemSpectralEdits

Functioncall:

integer count = ultraschall.CountItemSpectralEdits(integer itemidx, optional string MediaItemStateChunk)

Description:
counts the number of SPECTRAL_EDITs in a given MediaItem/MediaItemStateChunk.
The SPECTRAL_EDITs are the individual edit-boundary-boxes in the spectral-view.
If itemidx is set to -1, you can give the function a MediaItemStateChunk to look in, instead.

returns -1 in case of error

Returnvalues:
 integer count the number of spectral-edits available in a given MediaItem/MediaItemStateChunk 

Parameters:
 integer itemidx the MediaItem to look in for the spectral-edit; -1, to use the parameter MediaItemStateChunk instead 
 optional string MediaItemStateChunk if itemidx is -1, this can be a MediaItemStateChunk to use, otherwise this will be ignored 


^ Reaper version 5.77Lua version 5.3 GetItemSpectralEdit

Functioncall:

number start_pos, number length, number gain, number fade, number freq_fade, number freq_range_bottom, number freq_range_top, integer h, integer byp_solo, number gate_thres, number gate_floor, number comp_thresh, number comp_exp_ratio, number n, number o, number fade2, number freq_fade2 = ultraschall.GetItemSpectralEdit(integer itemidx, integer spectralidx, optional string MediaItemStateChunk)

Description:
returns the settings of a specific SPECTRAL_EDIT in a given MediaItem/MediaItemStateChunk.
The SPECTRAL_EDITs are the individual edit-boundary-boxes in the spectral-view.
If itemidx is set to -1, you can give the function a MediaItemStateChunk to look in, instead.

returns -1 in case of error

Returnvalues:
 number start_pos the startposition of the spectral-edit-region in seconds 
 number length the length of the spectral-edit-region in seconds 
 number gain the gain as slider-value; 0(-224dB) to 98350.1875(99.68dB); 1 for 0dB 
 number fade 0(0%)-0.5(100%); adjusting this affects also parameter fade2! 
 number freq_fade 0(0%)-0.5(100%); adjusting this affects also parameter freq_fade2! 
 number freq_range_bottom the bottom of the edit-region, but can be moved to be top as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 number freq_range_top the top of the edit-region, but can be moved to be bottom as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 integer h unknown 
 integer byp_solo sets the solo and bypass-state. 0, no solo, no bypass; 1, bypass only; 2, solo only; 3, bypass and solo 
 number gate_thres sets the threshold of the gate; 0(-224dB)-98786.226563(99.89dB) 
 number gate_floor sets the floor of the gate; 0(-224dB)-99802.171875(99.98dB) 
 number comp_thresh sets the threshold for the compressor; 0(-224dB)-98842.484375(99.90dB); 1(0dB)is default 
 number comp_exp_ratio sets the ratio of the compressor/expander; 0.1(1:10.0)-100(100:1.0); 1(1.0:1) is default 
 number n unknown 
 number o unknown 
 number fade2 negative with fade_in set; positive with fadeout-set 
 number freq_fade2 negative with low frequency-fade, positive with high-frequency-fade 

Parameters:
 integer itemidx the MediaItem to look in for the spectral-edit; -1, to use the parameter MediaItemStateChunk instead 
 integer spectralidx the number of the spectral-edit to return; 1 for the first, 2 for the second, etc 
 optional string MediaItemStateChunk if itemidx is -1, this can be a MediaItemStateChunk to use, otherwise this will be ignored 


^ Reaper version 5.77Lua version 5.3 DeleteItemSpectralEdit

Functioncall:

boolean retval, string MediaItemStateChunk = ultraschall.DeleteItemSpectralEdit(integer itemidx, integer spectralidx, optional string MediaItemStateChunk)

Description:
deletes a specific SPECTRAL_EDIT in a given MediaItem/MediaItemStateChunk.
The SPECTRAL_EDITs are the individual edit-boundary-boxes in the spectral-view.
If itemidx is set to -1, you can give the function a MediaItemStateChunk to look in, instead.

returns false in case of error

Returnvalues:
 boolean retval true, if deleting an spectral-edit-entry was successful; false, if it was unsuccessful 
 string MediaItemStateChunk the altered MediaItemStateChunk 

Parameters:
 integer itemidx the MediaItem to look in for the spectral-edit; -1, to use the parameter MediaItemStateChunk instead 
 integer spectralidx the number of the spectral-edit to delete; 1 for the first, 2 for the second, etc 
 optional string MediaItemStateChunk if itemidx is -1, this can be a MediaItemStateChunk to use, otherwise this will be ignored 


^ Reaper version 5.40Lua version 5.3 SetItemSpectralVisibilityState

Functioncall:

string MediaItemStateChunk = ultraschall.SetItemSpectralVisibilityState(integer itemidx, integer state, optional string MediaItemStateChunk)

Description:
Sets SPECTROGRAM-state in a MediaItem or MediaItemStateChunk.
Setting it shows the spectrogram, in which you can do spectral-editing, as selected in the MediaItem-menu "Spectral-editing -> Toggle show spectrogram for selected items"

It returns the modified MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 string MediaItemStateChunk the altered rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 

Parameters:
 integer itemidx the number of the item in the project; use -1 to use MediaItemStateChunk instead 
 integer state the state of the SPECTROGRAM; 0, to hide SpectralEdit; 1, to set SpectralEdit visible 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk; only read, when itemidx=-1 


^ Reaper version 5.40Lua version 5.3 SetItemSpectralEdit

Functioncall:

string MediaItemStateChunk = ultraschall.SetItemSpectralEdit(integer itemidx, integer spectralidx, number start_pos, number length, number gain, number fade, number freq_fade, number freq_range_bottom, number freq_range_top, integer h, integer byp_solo, number gate_thres, number gate_floor, number comp_thresh, number comp_exp_ratio, number n, number o, number fade2, number freq_fade2, optional string MediaItemStateChunk)

Description:
Sets a spectral-edit-instance in a MediaItem or MediaItemStateChunk.

After committing the changed MediaItemStateChunk to a MediaItem, Reaper may change the order of the spectral-edits! Keep that in mind, when changing numerous Spectral-Edits or use MediaItemStateChunks for the setting before committing them to a MediaItem using Reaper's function reaper.SetItemStateChunk().

It returns the modified MediaItemStateChunk.
Returns -1 in case of error.

Returnvalues:
 string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 

Parameters:
 integer itemidx the number of the item in the project; use -1 to use MediaItemStateChunk instead 
 integer spectralidx the number of the spectral-edit-instance, that you want to set 
 number start_pos the startposition of the spectral-edit-region in seconds 
 number length the length of the spectral-edit-region in seconds 
 number gain the gain as slider-value; 0(-224dB) to 98350.1875(99.68dB); 1 for 0dB 
 number fade 0(0%)-0.5(100%); adjusting this affects also parameter fade2! 
 number freq_fade 0(0%)-0.5(100%); adjusting this affects also parameter freq_fade2! 
 number freq_range_bottom the bottom of the edit-region, but can be moved to be top as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 number freq_range_top the top of the edit-region, but can be moved to be bottom as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 integer h unknown 
 integer byp_solo sets the solo and bypass-state. 0, no solo, no bypass; 1, bypass only; 2, solo only; 3, bypass and solo 
 number gate_thres sets the threshold of the gate; 0(-224dB)-98786.226563(99.89dB) 
 number gate_floor sets the floor of the gate; 0(-224dB)-99802.171875(99.98dB) 
 number comp_thresh sets the threshold for the compressor; 0(-224dB)-98842.484375(99.90dB); 1(0dB)is default 
 number comp_exp_ratio sets the ratio of the compressor/expander; 0.1(1:10.0)-100(100:1.0); 1(1.0:1) is default 
 number n unknown 
 number o unknown 
 number fade2 negative with fade_in set; positive with fadeout-set 
 number freq_fade2 negative with low frequency-fade, positive with high-frequency-fade 
 optional string MediaItemStateChunk an rpp-xml-statechunk, as created by reaper-api-functions like GetItemStateChunk 


^ Reaper version 5.77Lua version 5.3 GetItemSourceFile_Take

Functioncall:

string source_filename, PCM_source source, MediaItem_Take take = ultraschall.GetItemSourceFile_Take(MediaItem MediaItem, integer take_nr)

Description:
returns filename, the PCM_Source-object and the MediaItem_Take-object of a specific take. Use take_nr=0 for active take.

returns nil in case of error

Returnvalues:
 string source_filename the filename of the requested take 
 PCM_source source the PCM_source-object of the requested take 
 MediaItem_Take take the Media-Item_Take-object of the requested take 

Parameters:
 MediaItem MediaItem the MediaItem-object, in which the requested take lies 
 integer take_nr the number of the requested take; use 0 for the active take 


^ Reaper version 5.77Lua version 5.3 AddItemSpectralEdit

Functioncall:

boolean retval, MediaItemStateChunk statechunk = ultraschall.AddItemSpectralEdit(integer itemidx, number start_pos, number length, number gain, number fade, number freq_fade, number freq_range_bottom, number freq_range_top, integer h, integer byp_solo, number gate_thres, number gate_floor, number comp_thresh, number comp_exp_ratio, number n, number o, number fade2, number freq_fade2, optional string MediaItemStateChunk)

Description:
Adds a new SPECTRAL_EDIT-entry in a given MediaItem/MediaItemStateChunk.
The SPECTRAL_EDITs are the individual edit-boundary-boxes in the spectral-view.
If itemidx is set to -1, you can give the function a MediaItemStateChunk to look in, instead.

returns false in case of error

Returnvalues:
 boolean retval true, if adding was successful; false, if adding wasn't successful 
 optional MediaItemStateChunk statechunk the altered MediaItemStateChunk 

Parameters:
 integer itemidx the MediaItem to add to another spectral-edit-entry; -1, to use the parameter MediaItemStateChunk instead 
 number start_pos the startposition of the spectral-edit-region in seconds 
 number length the length of the spectral-edit-region in seconds 
 number gain the gain as slider-value; 0(-224dB) to 98350.1875(99.68dB); 1 for 0dB 
 number fade 0(0%)-0.5(100%); adjusting this affects also parameter fade2! 
 number freq_fade 0(0%)-0.5(100%); adjusting this affects also parameter freq_fade2! 
 number freq_range_bottom the bottom of the edit-region, but can be moved to be top as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 number freq_range_top the top of the edit-region, but can be moved to be bottom as well! 0 to device-samplerate/2 (e.g 96000 for 192kHz) 
 integer h unknown 
 integer byp_solo sets the solo and bypass-state. 0, no solo, no bypass; 1, bypass only; 2, solo only; 3, bypass and solo 
 number gate_thres sets the threshold of the gate; 0(-224dB)-98786.226563(99.89dB) 
 number gate_floor sets the floor of the gate; 0(-224dB)-99802.171875(99.98dB) 
 number comp_thresh sets the threshold for the compressor; 0(-224dB)-98842.484375(99.90dB); 1(0dB)is default 
 number comp_exp_ratio sets the ratio of the compressor/expander; 0.1(1:10.0)-100(100:1.0); 1(1.0:1) is default 
 number n unknown 
 number o unknown 
 number fade2 negative with fade_in set; positive with fadeout-set 
 number freq_fade2 negative with low frequency-fade, positive with high-frequency-fade 
 string MediaItemStateChunk if itemidx is -1, this can be a MediaItemStateChunk to use, otherwise this will be ignored 


^ Reaper version 5.40Lua version 5.3 GetItemSpectralVisibilityState

Functioncall:

integer spectrogram_state = ultraschall.GetItemSpectralVisibilityState(integer itemidx, optional string MediaItemStateChunk)

Description:
returns, if spectral-editing is shown in the arrange-view of item itemidx
set itemidx to -1 to use the optional parameter MediaItemStateChunk to alter a MediaItemStateChunk instead of an item directly.

returns -1 in case of error

Returnvalues:
 integer item_spectral_config 0, if spectral-config isn't shown in arrange-view; 1, if spectral-config is shown in arrange-view 

Parameters:
 integer itemidx the number of the item, with 1 for the first item, 2 for the second, etc.; -1, to use the parameter MediaItemStateChunk 
 optional string MediaItemStateChunk you can give a MediaItemStateChunk to process, if itemidx is set to -1 


^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 InsertImageFile

Functioncall:

boolean retval, MediaItem item = ultraschall.InsertImageFile(string filename_with_path, integer track, number position, number length, boolean looped)

Description:
Inserts a supported image-file into your project.
Due API-limitations, it creates two undo-points(one for inserting the MediaItem and one for changing the length).

Returns false in case of an error

Returnvalues:
 boolean retval true, if inserting was successful; false, if inserting was unsuccessful 
 MediaItem item the MediaItem of the newly inserted image 

Parameters:
 string filename_with_path the file to check for it's image-fileformat 
 integer track the track, in which the image shall be inserted 
 number position the position of the inserted image in seconds 
 number length the length of the image-item in seconds; 1, for the default length of 1 second 
 boolean looped true, loop the inserted image-file; false, don't loop the inserted image-file 


^ Reaper version 5.40Lua version 5.3 GetAllSelectedMediaItems

Functioncall:

integer count, array MediaItemArray = ultraschall.GetAllSelectedMediaItems()

Description:
Returns all selected items in the project as MediaItemArray. Empty MediaItemAray if none is found.

Returnvalues:
 integer count the number of entries in the returned MediaItemArray 
 array MediaItemArray all selected MediaItems returned as an array 



^ Reaper version 5.40Lua version 5.3 SetMediaItemsSelected_TimeSelection

Functioncall:

ultraschall.SetMediaItemsSelected_TimeSelection()

Description:
Sets all MediaItems selected, that are within the time-selection.




^ Reaper version 5.40Lua version 5.3 GetParentTrack_MediaItem

Functioncall:

integer tracknumber, MediaTrack mediatrack = ultraschall.GetParentTrack_MediaItem(MediaItem MediaItem)

Description:
Returns the tracknumber and the MediaTrack-object of the track in which the MediaItem is placed.

returns -1 in case of error

Returnvalues:
 integer tracknumber the tracknumber of the track, in which the MediaItem is placed; 1 for track 1, 2 for track 2, etc 
 MediaTrack mediatrack the MediaTrack-object of the track, in which the MediaItem is placed 

Parameters:
 MediaItem MediaItem the MediaItem, of which you want to know the track is is placed in 


^ Reaper version 5.40Lua version 5.3 IsItemInTrack2

Functioncall:

boolean retval, integer tracknumber = ultraschall.IsItemInTrack2(MediaItem MediaItem, integer tracknumber)

Description:
Checks, whether a MediaItem is in track with tracknumber.

see IsItemInTrack to use itemidx instead of the MediaItem-object.
see IsItemInTrack3 to check against multiple tracks at once using a trackstring.

returns nil in case of error

Returnvalues:
 boolean retval true, if item is in track; false, if not 
 integer tracknumber the tracknumber of the track, in which the item lies 

Parameters:
 MediaItem MediaItem the MediaItem, of which you want to know the track is is placed in 
 integer tracknumber the tracknumber to check the parent track of the MediaItem against, with 1 for track 1, etc 


^ Reaper version 5.40Lua version 5.3 IsItemInTimerange

Functioncall:

boolean retval = ultraschall.IsItemInTimerange(MediaItem MediaItem, number startposiiton, number endposition, boolean inside)

Description:
checks, whether a given MediaItem is within startposition and endposition and returns the result.

returns nil in case of an error

Returnvalues:
 boolean retval true, item is in timerange; false, item isn't in timerange 

Parameters:
 MediaItem MediaItem the MediaItem to check for, if it's within the timerange 
 number startposition the starttime of the timerange, in which the MediaItem must be, in seconds 
 number endposition the endtime of the timerange, in which the MediaItem must be, in seconds 
 boolean inside true, MediaItem must be fully within timerange; false, MediaItem can be partially inside timerange 


^ Reaper version 5.40Lua version 5.3 OnlyItemsInTracksAndTimerange

Functioncall:

integer count, MediaItemArray MediaItemArray = ultraschall.OnlyItemsInTracksAndTimerange(MediaItemArray MediaItemArray, string trackstring, number starttime, number endtime, boolean inside)

Description:
Removes all items from MediaItemArray, that aren't in tracks, as given by trackstring and are outside the timerange(starttime to endtime).

returns -1 in case of an error

Returnvalues:
 integer count the number of items that fit the requested tracks and timerange 
 MediaItemArray MediaItemArray the altered MediaItemArray, that has only the MediaItems from tracks as requested by trackstring and from within timerange 

Parameters:
 MediaItemArray MediaItemArray an array with all MediaItems, that shall be checked for trackexistence and timerange 
 string trackstring a string with all requested tracknumbers in which the MediaItem must be, separated by commas; 1 for track 1, 2 for track 2, etc 
 number starttime the starttime of the timerange, in which the MediaItem must be, in seconds 
 number endtime the endtime of the timerange, in which the MediaItem must be, in seconds 
 boolean inside true, only MediaItems are returned, that are fully within starttime and endtime; false, return also MediaItems partially in timerange 


^ Reaper version 5.77Lua version 5.3 ApplyActionToMediaItem

Functioncall:

boolean retval = ultraschall.ApplyActionToMediaItem(MediaItem MediaItem, string actioncommandid, integer repeat_action, boolean midi, optional HWND MIDI_hwnd)

Description:
Applies an action to a MediaItem, in either main or MIDI-Editor section-context.
The action given must support applying itself to selected items.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running the action was successful; false, if not or an error occured 

Parameters:
 MediaItem MediaItem the MediaItem, to whom the action shall be applied to 
 string actioncommandid the commandid-number or ActionCommandID, that shall be run. 
 integer repeat_action the number of times this action shall be applied to each item; minimum value is 1 
 boolean midi true, run an action from MIDI-Editor-section-context; false, run an action from the main section 
 optional HWND MIDI_hwnd the HWND-handle of the MIDI-Editor, to which a MIDI-action shall be applied to; nil, to use the currently selected one 


^ Reaper version 5.77Lua version 5.3 ApplyActionToMediaItemArray

Functioncall:

boolean retval = ultraschall.ApplyActionToMediaItemArray(MediaItemArray MediaItemArray, string actioncommandid, integer repeat_action, boolean midi, optional HWND MIDI_hwnd)

Description:
Applies an action to the MediaItems in MediaItemArray, in either main or MIDI-Editor section-context
The action given must support applying itself to selected items.

This function applies the action to each MediaItem individually. To apply the action to all MediaItems in MediaItemArray at once, see ApplyActionToMediaItemArray2.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running the action was successful; false, if not or an error occured 

Parameters:
 MediaItemArray MediaItemArray an array with all MediaItems, to whom the action shall be applied to 
 string actioncommandid the commandid-number or ActionCommandID, that shall be run. 
 integer repeat_action the number of times this action shall be applied to each item; minimum value is 1 
 boolean midi true, run an action from MIDI-Editor-section-context; false, run an action from the main section 
 optional HWND MIDI_hwnd the HWND-handle of the MIDI-Editor, to which a MIDI-action shall be applied to; nil, to use the currently selected one 


^ Reaper version 5.77Lua version 5.3 GetAllMediaItemsInTimeSelection

Functioncall:

integer count, array MediaItemArray = ultraschall.GetAllMediaItemsInTimeSelection(string trackstring, boolean inside)

Description:
Gets all MediaItems from within a time-selection

Returns -1 in case of an error

Returnvalues:
 integer count the number of items found in time-selection 
 array MediaItemArray an array with all MediaItems found within time-selection 

Parameters:
 string trackstring a string with all tracknumbers, separated by a comma; 1 for the first track, 2 for the second 


^ Reaper version 5.77Lua version 5.3 NormalizeItems

Functioncall:

integer retval = ultraschall.NormalizeItems(array MediaItemArray)

Description:
Normalizes all items in MediaItemArray.

Returns -1 in case of an error

Returnvalues:
 integer retval -1, in case of an error 

Parameters:
 array MediaItemArray an array with all MediaItems, that shall be normalized 


^ Reaper version 5.77Lua version 5.3 GetAllMediaItems

Functioncall:

integer itemcount, MediaItemArray MediaItemArray = ultraschall.GetAllMediaItems()

Description:
Returns a MediaItemArray with all MediaItems in the current project

Returnvalues:
 integer itemcount the number of items in the MediaItemArray 
 MediaItemArray MediaItemArray an array with all MediaItems from the current project 



^ Reaper version 5.77SWS version 2.9.8Lua version 5.3 PreviewMediaItem

Functioncall:

boolean retval = ultraschall.PreviewMediaItem(MediaItem MediaItem, integer Previewtype)

Description:
Will play a preview a given MediaItem.
You can just play one preview at a time, except when previewing additionally through the MediaExplorer.

Returns false in case of an error

Returnvalues:
 boolean retval false, in case of error; true, in case of success 

Parameters:
 MediaItem MediaItem the MediaItem, of which you want to play a preview 
 integer Previewtype the type of the preview
0, Preview the MediaItem in the Media Explorer
1, Preview the MediaItem
2, Preview the MediaItem at track fader volume of the track, in which it lies
3, Preview the MediaItem through the track, in which it lies(including FX-settings) 


^ Reaper version 5.77Julian Sader's plugin version 0.986Lua version 5.3 StopAnyPreview

Functioncall:

ultraschall.StopAnyPreview()

Description:
Stops any playing preview of a MediaItem.




^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 PreviewMediaFile

Functioncall:

integer retval = ultraschall.PreviewMediaFile(string filename_with_path, optional number gain, optional boolean loop)

Description:
Plays a preview of a media-file. You can only play one file at a time.

Returns false in case of an error

Returnvalues:
 boolean retval true, starting preview was successful; false, starting preview wasn't successful 

Parameters:
 string filename_with_path the filename with path of the media-file to play 
 optional number gain the gain of the volume; nil, defaults to 1 
 optional boolean loop true, loop the previewed file; false or nil, don't loop the file 


^ Reaper version 5.92Lua version 5.3 GetMediaItemTake

Functioncall:

MediaItem_Take Take, integer TakeCount = ultraschall.GetMediaItemTake(MediaItem MediaItem, integer TakeNr)

Description:
Returns the requested MediaItem-Take of MediaItem. Use TakeNr=0 for the active take(!)

Returns nil in case of an error

Returnvalues:
 MediaItem_Take Take the requested take of a MediaItem 
 integer TakeCount the number of takes available within this Mediaitem 

Parameters:
 MediaItem MediaItem the MediaItem, of whom you want to request a certain take. 
 integer TakeNr the take that you want to request; 1 for the first; 2 for the second, etc; 0, for the current active take 


^ Reaper version 5.92Lua version 5.3 ApplyFunctionToMediaItemArray

Functioncall:

table returnvalues = ultraschall.ApplyFunctionToMediaItemArray(MediaItemArray MediaItemArray, function functionname, functionparameters1, ..., functionparametersn)

Description:
Applies function "functionname" on all items in MediaItemArray. Parameter ... is all parameters used for function "functionname", where you should use nil in place of the parameter that shall hold a MediaItem.

Returns a table with a boolean(did the function run without an error) and all returnvalues returned by function "functionname".

Returns nil in case of an error. Will NOT(!) stop execution, if function "functionname" produces an error(see table returnvalues for more details)

Returnvalues:
 table returnvalues a table with all returnvalues of the following structure:
    returnvalues[1]=boolean - true, running the function succeeded; false, running the function did not succeed
    returnvalues[2]=optional(!) string - the errormessage, if returnvalues[1]=false; will be omitted if returnvalues[1]=true
all other tableentries contain the returnvalues, as returned by function "functionname" 

Parameters:
 MediaItemArray MediaItemArray an array with all MediaItems, who you want to apply functionname to. 
 function functionname the name of the function to apply to every MediaItem in MediaItemArray 
 functionparameters1...n the parameters needed for function "functionname". Important: the function-parameter that is intended for the MediaItem, must be nil.
This nil-parameter will be filled with the appropriate MediaItem by ApplyFunctionToMediaItemArray automatically 


^ Reaper version 5.77Lua version 5.3 GetGapsBetweenItems

Functioncall:

integer number_of_gaps, array gaptable = ultraschall.GetGapsBetweenItems(MediaTrack MediaTrack)

Description:
Returns a table with all gaps between items in MediaTrack.

Returns -1 in case of an error

Returnvalues:
 integer number_of_gaps the number of gaps found between items; -1, in case of error 
 array gaptable an array with all gappositions found
gaptable[idx][1]=startposition of gap
gaptable[idx][2]=endposition of gap 

Parameters:
 MediaTrack MediaTrack the track, of which you want to have the gaps between items 


^ Reaper version 5.95Lua version 5.3 DeleteMediaItems_Position

Functioncall:

boolean retval, array MediaItemStateChunkArray = ultraschall.DeleteMediaItems_Between(number startposition, number endposition, string trackstring, boolean inside)

Description:
Delete the MediaItems between start- and endposition, from the tracks as given by trackstring.
Returns also a MediaItemStateChunkArray, that contains the statechunks of all deleted MediaItem

returns false in case of an error

Returnvalues:
 boolean retval true, delete was successful; false was unsuccessful 
 array MediaItemStateChunkArray and array with all statechunks of all deleted MediaItems;
each statechunk contains an additional entry "ULTRASCHALL_TRACKNUMBER" which holds the tracknumber, in which the deleted MediaItem was located 

Parameters:
 number startposition the startposition in seconds 
 number endposition the endposition in seconds 
 string trackstring the tracknumbers, separated by a comma 
 boolean inside true, delete only MediaItems that are completely within start and endposition; false, also include MediaItems partially within start and endposition 


^ Reaper version 5.95Lua version 5.3 ApplyActionToMediaItemArray2

Functioncall:

boolean retval = ultraschall.ApplyActionToMediaItemArray2(MediaItemArray MediaItemArray, string actioncommandid, integer repeat_action, boolean midi, optional HWND MIDI_hwnd)

Description:
Applies an action to the MediaItems in MediaItemArray, in either main or MIDI-Editor section-context
The action given must support applying itself to selected items.

This function applies the action to all MediaItems at once. To apply the action to each MediaItem in MediaItemArray individually, see ApplyActionToMediaItemArray

Returns false in case of an error

Returnvalues:
 boolean retval true, if running the action was successful; false, if not or an error occured 

Parameters:
 MediaItemArray MediaItemArray an array with all MediaItems, to whom the action shall be applied to 
 string actioncommandid the commandid-number or ActionCommandID, that shall be run. 
 integer repeat_action the number of times this action shall be applied to each item; minimum value is 1 
 boolean midi true, run an action from MIDI-Editor-section-context; false, run an action from the main section 
 optional HWND MIDI_hwnd the HWND-handle of the MIDI-Editor, to which a MIDI-action shall be applied to; nil, to use the currently selected one 


^ Reaper version 5.40Lua version 5.3 GetMediafileAttributes

Functioncall:

number length, integer numchannels, integer Samplerate, string Filetype = ultraschall.GetMediafileAttributes(string filename)

Description:
returns the attributes of a mediafile

if the mediafile is an rpp-project, this function creates a proxy-file called filename.RPP-PROX, which is a wave-file of the length of the project.
This file can be deleted safely after that, but would be created again the next time this function is called.    

returns -1 in case of an error

Returnvalues:
 number length the length of the mediafile in seconds 
 integer numchannels the number of channels of the mediafile 
 integer Samplerate the samplerate of the mediafile in hertz 
 string Filetype the type of the mediafile, like MP3, WAV, MIDI, FLAC, RPP_PROJECT etc 

Parameters:
 string filename the file whose attributes you want to have 


^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 InsertMediaItemFromFile

Functioncall:

integer retval, MediaItem item, number endposition, integer numchannels, integer Samplerate, string Filetype, number editcursorposition, MediaTrack track = ultraschall.InsertMediaItemFromFile(string filename, integer track, number position, number endposition, integer editcursorpos, optional number offset)

Description:
Inserts the mediafile filename into the project at position in track
When giving an rpp-projectfile, it will be rendered by Reaper and inserted as subproject!

Due API-limitations, it creates two undo-points: one for inserting the MediaItem and one for changing the length(when endposition isn't -1).    

Returns -1 in case of failure

Returnvalues:
 integer retval 0, if insertion worked; -1, if it failed 
 MediaItem item the newly created MediaItem 
 number endposition the endposition of the newly created MediaItem in seconds 
 integer numchannels the number of channels of the mediafile 
 integer Samplerate the samplerate of the mediafile in hertz 
 string Filetype the type of the mediafile, like MP3, WAV, MIDI, FLAC, etc 
 number editcursorposition the (new) editcursorposition 
 MediaTrack track returns the MediaTrack, in which the item is included 

Parameters:
 string filename the path+filename of the mediafile to be inserted into the project 
 integer track the track, in which the file shall be inserted
  0, insert the file into a newly inserted track after the last track
-1, insert the file into a newly inserted track before the first track 
 number position the position of the newly inserted item 
 number endposition the length of the newly created mediaitem; -1, use the length of the sourcefile 
 integer editcursorpos the position of the editcursor after insertion of the mediafile
0 - the old editcursorposition
1 - the position, at which the item was inserted
2 - the end of the newly inserted item 
 optional number offset an offset, to delay the insertion of the item, to overcome possible "too late"-starting of playback of item during recording 


^ Reaper version 5.965Lua version 5.3 CopyMediaItemToDestinationTrack

Functioncall:

MediaItem newMediaItem, MediaItemStateChunk statechunk = ultraschall.CopyMediaItemToDestinationTrack(MediaItem MediaItem, MediaTrack MediaTrack_destination, number position)

Description:
Copies MediaItem to MediaTrack_destination at position.

Returns nil in case of an error

Returnvalues:
 MediaItem newMediaItem the newly created MediaItem; nil, if no item could be created 
 MediaItemStateChunk statechunk the statechunk of the newly created MediaItem 

Parameters:
 MediaItem MediaItem the MediaItem, that you want to create a copy from 
 MediaTrack MediaTrack_destination the track, into which you want to copy the MediaItem 
 number position the position of the copy of the MediaItem; negative, to keep the position of the source-MediaItem 


^ Reaper version 5.965Lua version 5.3 IsSplitAtPosition

Functioncall:

boolean retval = ultraschall.IsSplitAtPosition(string trackstring, number position)

Description:
returns, if theres at least one split, MediaItemend or MediaItemstart at position within the tracks given in trackstring.

returns false in case of an error

Returnvalues:
 boolean retval true, there's a split/mediaitemend/mediaitemstart at position; false, it isn't 

Parameters:
 string trackstring the tracknumbers, within to search for, as comma separated string. Starting 1 for the first track. 
 number position the position, at which to check for. 


^ Reaper version 5.965Lua version 5.3 GetItem_Number

Functioncall:

integer itemidx = ultraschall.GetItem_Number(MediaItem MediaItem)

Description:
returns the indexnumber of a MediaItem-object

Can be helpful with Reaper's own API-functions, like reaper.GetMediaItem(ReaProject proj, integer itemidx)

returns -1 in case of an error

Returnvalues:
 integer itemidx the indexnumber of the MediaItem, zero based.  

Parameters:
 MediaItem MediaItem the MediaItem, whose itemidx you want to have 


^ Reaper version 5.982Lua version 5.3 GetItem_HighestRecCounter

Functioncall:

integer highest_item_reccount, integer found = ultraschall.GetItem_HighestRecCounter()

Description:
Takes the RECPASS-counters of all items and takes and returns the highest one, which usually means, the number of items, who have been recorded since the project has been created.

Note: a RECPASS-entry can also be part of a copy of a recorded item, so multiple items/takes can share the same RECPASS-entries with the same counter.
Means: the highest number can be of multiple items

returns -1 if no recorded item/take has been found.

Returnvalues:
 integer highest_item_reccount the highest reccount of all MediaItems, which usually means, that so many Items have been recorded in this project 
 integer found the number of MediaItems, who have a recpass-entry in their StateChunk, means, who have been recorded.     



^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 GetItem_ClickState

Functioncall:

boolean clickstate, number position, MediaItem item, MediaItem_Take take = ultraschall.GetItem_ClickState()

Description:
Returns the currently clicked item and take, as well as the current timeposition.

Mostly useful in defer-scripts.

Returns false, if no item is clicked at

Returnvalues:
 boolean clickstate true, item is clicked on; false, item isn't clicked on 
 number position the position, at which the item is currently clicked at 
 MediaItem item the Item, which is currently clicked at 
 MediaItem_Take take the take found at clickposition 



^ Reaper version 5.40Lua version 5.3 GetEndOfItem

Functioncall:

number end_of_item_position = ultraschall.GetEndOfItem(MediaItem MediaItem)

Description:
Returns the endposition of MediaItem

returns nil in case of an error

Returnvalues:
 number end_of_item_position the position of the ending edge of the MediaItem 

Parameters:
 MediaItem MediaItem the MediaItem, whose ending-position you want to know 


^ Reaper version 6.02Lua version 5.3 GetAllMediaItemAttributes_Table

Functioncall:

table AttributeTable = ultraschall.GetAllMediaItemAttributes_Table(MediaItem MediaItem)

Description:
Returns all attributes of MediaItem as a handy table.

The returned table is of the following scheme:
    AttributeTable["B_MUTE"] - bool * : muted
    AttributeTable["B_LOOPSRC"] - bool * : loop source
    AttributeTable["B_ALLTAKESPLAY"] - bool * : all takes play
    AttributeTable["B_UISEL"] - bool * : selected in arrange view
    AttributeTable["C_BEATATTACHMODE"] - char * : item timebase, -1=track or project default, 1=beats (position, length, rate), 2=beats (position only). for auto-stretch timebase: C_BEATATTACHMODE=1, C_AUTOSTRETCH=1
    AttributeTable["C_AUTOSTRETCH:"] - char * : auto-stretch at project tempo changes, 1=enabled, requires C_BEATATTACHMODE=1
    AttributeTable["C_LOCK"] - char * : locked, &1=locked
    AttributeTable["D_VOL"] - double * : item volume, 0=-inf, 0.5=-6dB, 1=+0dB, 2=+6dB, etc
    AttributeTable["D_POSITION"] - double * : item position in seconds
    AttributeTable["D_LENGTH"] - double * : item length in seconds
    AttributeTable["D_SNAPOFFSET"] - double * : item snap offset in seconds
    AttributeTable["D_FADEINLEN"] - double * : item manual fadein length in seconds
    AttributeTable["D_FADEOUTLEN"] - double * : item manual fadeout length in seconds
    AttributeTable["D_FADEINDIR"] - double * : item fadein curvature, -1..1
    AttributeTable["D_FADEOUTDIR"] - double * : item fadeout curvature, -1..1
    AttributeTable["D_FADEINLEN_AUTO"] - double * : item auto-fadein length in seconds, -1=no auto-fadein
    AttributeTable["D_FADEOUTLEN_AUTO"] - double * : item auto-fadeout length in seconds, -1=no auto-fadeout
    AttributeTable["C_FADEINSHAPE"] - int * : fadein shape, 0..6, 0=linear
    AttributeTable["C_FADEOUTSHAPE"] - int * : fadeout shape, 0..6, 0=linear
    AttributeTable["I_GROUPID"] - int * : group ID, 0=no group
    AttributeTable["I_LASTY"] - int * : Y-position of track in pixels (read-only)
    AttributeTable["I_LASTH"] - int * : height in track in pixels (read-only)
    AttributeTable["I_CUSTOMCOLOR"] - int * : custom color, OS dependent color|0x100000 (i.e. ColorToNative(r,g,b)|0x100000). If you do not |0x100000, then it will not be used, but will store the color anyway)
    AttributeTable["I_CURTAKE"] - int * : active take number
    AttributeTable["IP_ITEMNUMBER"] - int, item number on this track (read-only, returns the item number directly)
    AttributeTable["F_FREEMODE_Y"] - float * : free item positioning Y-position, 0=top of track, 1=bottom of track (will never be 1)
    AttributeTable["F_FREEMODE_H"] - float * : free item positioning height, 0=no height, 1=full height of track (will never be 0)
    AttributeTable["P_TRACK"] - MediaTrack * (read-only)

returns nil in case of an error

Returnvalues:
 table AttributeTable a table with all attributes of a MediaItem 

Parameters:
 MediaItem MediaItem the MediaItem, whose attributes you want to retrieve 


^ Reaper version 6.02Lua version 5.3 SetAllMediaItemAttributes_Table

Functioncall:

boolean retval = ultraschall.SetAllMediaItemAttributes_Table(MediaItem MediaItem, table AttributeTable)

Description:
Sets all attributes of MediaItem using a AttributeTable, which holds all the new settings for the MediaItem.

The expected table is of the following scheme:
    AttributeTable["B_MUTE"] - bool * : muted
    AttributeTable["B_LOOPSRC"] - bool * : loop source
    AttributeTable["B_ALLTAKESPLAY"] - bool * : all takes play
    AttributeTable["B_UISEL"] - bool * : selected in arrange view
    AttributeTable["C_BEATATTACHMODE"] - char * : item timebase, -1=track or project default, 1=beats (position, length, rate), 2=beats (position only). for auto-stretch timebase: C_BEATATTACHMODE=1, C_AUTOSTRETCH=1
    AttributeTable["C_AUTOSTRETCH:"] - char * : auto-stretch at project tempo changes, 1=enabled, requires C_BEATATTACHMODE=1
    AttributeTable["C_LOCK"] - char * : locked, &1=locked
    AttributeTable["D_VOL"] - double * : item volume, 0=-inf, 0.5=-6dB, 1=+0dB, 2=+6dB, etc
    AttributeTable["D_POSITION"] - double * : item position in seconds
    AttributeTable["D_LENGTH"] - double * : item length in seconds
    AttributeTable["D_SNAPOFFSET"] - double * : item snap offset in seconds
    AttributeTable["D_FADEINLEN"] - double * : item manual fadein length in seconds
    AttributeTable["D_FADEOUTLEN"] - double * : item manual fadeout length in seconds
    AttributeTable["D_FADEINDIR"] - double * : item fadein curvature, -1..1
    AttributeTable["D_FADEOUTDIR"] - double * : item fadeout curvature, -1..1
    AttributeTable["D_FADEINLEN_AUTO"] - double * : item auto-fadein length in seconds, -1=no auto-fadein
    AttributeTable["D_FADEOUTLEN_AUTO"] - double * : item auto-fadeout length in seconds, -1=no auto-fadeout
    AttributeTable["C_FADEINSHAPE"] - int * : fadein shape, 0..6, 0=linear
    AttributeTable["C_FADEOUTSHAPE"] - int * : fadeout shape, 0..6, 0=linear
    AttributeTable["I_GROUPID"] - int * : group ID, 0=no group
    AttributeTable["I_LASTY"] - int * : Y-position of track in pixels (read-only)
    AttributeTable["I_LASTH"] - int * : height in track in pixels (read-only)
    AttributeTable["I_CUSTOMCOLOR"] - int * : custom color, OS dependent color|0x100000 (i.e. ColorToNative(r,g,b)|0x100000). If you do not |0x100000, then it will not be used, but will store the color anyway)
    AttributeTable["I_CURTAKE"] - int * : active take number
    AttributeTable["IP_ITEMNUMBER"] - int, item number on this track (read-only, returns the item number directly)
    AttributeTable["F_FREEMODE_Y"] - float * : free item positioning Y-position, 0=top of track, 1=bottom of track (will never be 1)
    AttributeTable["F_FREEMODE_H"] - float * : free item positioning height, 0=no height, 1=full height of track (will never be 0)
    AttributeTable["P_TRACK"] - MediaTrack * (read-only)

returns false in case of an error or if some of the attributes could not be set.

Returnvalues:
 boolean retval true, setting was successful; false, setting attributes failed 

Parameters:
 MediaItem MediaItem the MediaItem, whose attributes you want to set 
 table AttributeTable a table which holds all settings, that you want to set 


^ Reaper version 6.02Lua version 5.3 GetAllSelectedMediaItemsBetween

Functioncall:

integer count, array MediaItemArray, array MediaItemStateChunkArray = ultraschall.GetAllSelectedMediaItemsBetween(number startposition, number endposition, string trackstring, boolean inside)

Description:
Gets all selected MediaItems between startposition and endposition from the tracks as given by trackstring.
Set inside to true to get only items, that are fully within the start and endposition, set it to false, if you also want items, that are just partially inside(end or just the beginning of the item).

Returns the number of selected items, an array with all the selected MediaItems and an array with all the MediaItemStateChunks of the selected items, as used by functions as InsertMediaItem_MediaItemStateChunk, reaper.GetItemStateChunk and reaper.SetItemStateChunk.
The statechunks include a new element "ULTRASCHALL_TRACKNUMBER", which contains the tracknumber of where the item originally was in; important, if you delete the items as you'll otherwise loose this information!
Returns -1 in case of failure.

Returnvalues:
 integer count the number of selected items 
 array MediaItemArray an array with all the found and selected MediaItems 
 array MediaItemStateChunkArray an array with the MediaItemStateChunks, that can be used to create new items with InsertMediaItem_MediaItemStateChunk 

Parameters:
 number startposition startposition in seconds 
 number endposition endposition in seconds 
 string trackstring the tracknumbers, separated by a comma 
 boolean inside true, only items that are completely within selection; false, include items that are partially within selection 


^ Reaper version 5.40Lua version 5.3 DeleteProjExtState_Section

Functioncall:

integer retval = ultraschall.DeleteProjExtState_Section(string section)

Description:
Deletes all key/values from a specific section.

Returns -1 in case of an error.

Returnvalues:
 integer retval 0, in case of success; -1, in case of an error 

Parameters:
 string section the section/extname, whose key/values shall be deleted 


^ Reaper version 5.40Lua version 5.3 DeleteProjExtState_Key

Functioncall:

integer retval = ultraschall.DeleteProjExtState_Key(string section, section key)

Description:
Deletes the value from a specific section -> key.

Returns -1 in case of an error.

Returnvalues:
 integer retval 0, in case of success; -1, in case of an error 

Parameters:
 string section the section/extname, from whom a key/value shall be deleted 
 string key the key, whose value shall be deleted 


^ Reaper version 5.40Lua version 5.3 GetProjExtState_AllKeyValues

Functioncall:

integer retval = ultraschall.GetProjExtState_AllKeyValues(string section)

Description:
Returns the count of all key/values in a specific section, as well as an array with all keynames and their accompanying stored values.
The array has the format:
   AllValues[idx][1]=Key
   AllValues[idx][2]=Value

Returns -1 in case of an error or if no key exists in the given section

Returnvalues:
 integer retval 0, in case of success; -1, in case of an error 

Parameters:
 string section the section/extname, from whom a key/value shall be deleted 


^ Reaper version 5.40Lua version 5.3 GetGuidExtState

Functioncall:

integer retval, string value = ultraschall.GetGuidExtState(string guid, string key, integer savelocation)

Description:
Gets an extension-state using a given guid. Good for storing additional metadata of objects like MediaTracks, MediaItems, MediaItem_Takes, etc(everything, that has a guid).
The guid can have additional text, but must contain a valid guid somewhere in it!
A valid guid is a string that follows the following pattern:
{........-....-....-....-............}
where . is a hexadecimal value(0-F)

Returns -1 in case of error

Returnvalues:
 integer retval the idx of the extstate(if a project extension state); 1, successful(with extension states), -1, unsuccessful 
 string value the returned value from the extstate 

Parameters:
 string guid the guid of the object, for whom you want to get the key/value-pair; can have additional characters before and after the guid, but must contain a valid guid! 
 string key the key for this guid 
 integer savelocation 0, get as project extension state(from the currently opened project); 1, get as global extension state(when persist=true, from reaper-extstate.ini in the resourcesfolder) 


^ Reaper version 6.02Lua version 5.3 SetMarkerExtState

Functioncall:

integer retval = ultraschall.SetMarkerExtState(integer index, string key, string value)

Description:
Stores an Extstate for a specific marker/region.

The index is for all markers and regions, inclusive and 1-based

returns -1 in case of an error

Returnvalues:
 integer retval -1, in case of an error; 1, in case of success 

Parameters:
 integer index the marker/region-index, for which to store an extstate; starting with 1 for first marker/region, 2 for second marker/region 
 string key the key, into which the marker-extstate shall be stored 
 string value the value, which you want to store into the marker-extstate 


^ Reaper version 6.02Lua version 5.3 GetMarkerExtState

Functioncall:

string value = ultraschall.GetMarkerExtState(integer index, string key)

Description:
Retrieves an Extstate for a specific marker/region.

The index is for all markers and regions, inclusive and 1-based

returns nil in case of an error

Returnvalues:
 string value the value, that has been stored into the marker-extstate; nil, in case of an error 

Parameters:
 integer index the marker/region-index, for which an extstate has been stored; starting with 1 for first marker/region, 2 for second marker/region 
 string key the key, in which the marker-extstate is stored 


^ Reaper version 6.02Lua version 5.3 ProjExtState_CountAllKeys

Functioncall:

integer count = ultraschall.ProjExtState_CountAllKeys(string section)

Description:
Counts all keys stored within a certain ProjExtState-section.

Be aware: if you want to enumerate them using reaper.EnumProjExtState, the first key is indexed 0, the second 1, etc!

returns -1 in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 string section the section, of which you want to count all keys 


^ Reaper version 5.77Lua version 5.3 ZoomVertical_MidiEditor

Functioncall:

boolean retval = ultraschall.ZoomVertical_MidiEditor(integer zoomamt, optional HWND midieditor_hwnd)

Description:
Zooms within the Midi-Editor vertically.

returns false in case of an error

Returnvalues:
 boolean retval true, if zooming was successful; false, if not 

Parameters:
 integer zoomamt the zoom-factor; positive values, zoom in; negative values, zoom out 
 optional HWND midieditor_hwnd the HWND of the MIDI-Editor, in which you want to zoom; nil, uses active MIDI-Editor 


^ Reaper version 5.77Lua version 5.3 ZoomHorizontal_MidiEditor

Functioncall:

boolean retval = ultraschall.ZoomHorizontal_MidiEditor(integer zoomamt, optional HWND midieditor_hwnd)

Description:
Zooms within the Midi-Editor horizontally.

returns false in case of an error

Returnvalues:
 boolean retval true, if zooming was successful; false, if not 

Parameters:
 integer zoomamt the zoom-factor; positive values, zoom in; negative values, zoom out 
 optional HWND midieditor_hwnd the HWND of the MIDI-Editor, in which you want to zoom; nil, uses active MIDI-Editor 


^ Reaper version 5.77Lua version 5.3 OpenItemInMidiEditor

Functioncall:

boolean retval = ultraschall.OpenItemInMidiEditor(MediaItem MediaItem)

Description:
opens a given MediaItem in the MIDI-Editor

returns false in case of an error

Returnvalues:
 boolean retval true, if opening was successful; false, if not 

Parameters:
 MediaItem MediaItem the MediaItem to be opened in the MIDI-Editor 


^ Reaper version 5.965Lua version 5.3 MIDI_SendMidiNote

Functioncall:

ultraschall.MIDI_SendMidiNote(integer Channel, integer Note, integer Velocity, optional integer Mode)

Description:
Sends a MIDI-note to a specific channel with a specific velocity.


Parameters:
 integer Channel the channel, to which the Midi-note shall be sent; 1-16 
 integer Note the note to be played; 0-127 
 integer Velocity the velocity of the note; 0-255 
 optional integer Mode 0 for VKB
1 for control (actions map etc)
2 for VKB-on-current-channel
16 for external MIDI device 0, 17 for external MIDI device 1, etc 


^ Reaper version 5.965Lua version 5.3 MIDI_SendMidiCC

Functioncall:

ultraschall.MIDI_SendMidiCC(integer Channel, integer Note, integer Velocity, optional integer Mode)

Description:
Sends a MIDI-CC-message to a specific channel with a specific velocity.


Parameters:
 integer Channel the channel, to which the Midi-note shall be sent; 1-16 
 integer Note the note to be played; 0-127 
 integer Velocity the velocity of the note; 0-255 
 optional integer Mode 0 for VKB
1 for control (actions map etc)
2 for VKB-on-current-channel
16 for external MIDI device 0, 17 for external MIDI device 1, etc 


^ Reaper version 5.965Lua version 5.3 MIDI_SendMidiPC

Functioncall:

ultraschall.MIDI_SendMidiPC(integer Channel, integer Note, integer Velocity, optional integer Mode)

Description:
Sends a MIDI-PC-message to a specific channel with a specific velocity.


Parameters:
 integer Channel the channel, to which the Midi-note shall be sent; 1-16 
 integer Note the note to be played; 0-127 
 integer Velocity the velocity of the note; 0-255 
 optional integer Mode 0 for VKB
1 for control (actions map etc)
2 for VKB-on-current-channel
16 for external MIDI device 0, 17 for external MIDI device 1, etc 


^ Reaper version 5.965Lua version 5.3 MIDI_SendMidiPitch

Functioncall:

ultraschall.MIDI_SendMidiPitch(integer Channel, integer Pitch, optional integer Mode)

Description:
Sends a MIDI-Pitch-message to a specific channel with a specific velocity.


Parameters:
 integer Channel the channel, to which the Midi-pitch shall be sent; 1-16 
 integer Pitch the pitchbend of the note; 0-127 
 optional integer Mode 0 for VKB
1 for control (actions map etc)
2 for VKB-on-current-channel
16 for external MIDI device 0, 17 for external MIDI device 1, etc 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 QueryMIDIMessageNameByID

Functioncall:

string midimessage_name = ultraschall.QueryMIDIMessageNameByID(integer modifier, integer key)

Description:
Returns the name of the MIDI-message, as used by Reaper's function StuffMIDIMessage.

Just pass over the first and second value. The last one is always velocity, which is ~=0 for it to be accepted.
However, some codes don't have a name associated. In that case, this function returns "-1"

Only returns the names for mode 1 and english on Windows!

returns nil in case of an error

Returnvalues:
 string midimessage_name the actual name of the midi-message, like "A" or "F1" or "Ctrl+Alt+Shift+Win+PgUp". 

Parameters:
 integer modifier the modifier value, which is the second parameter of StuffMIDIMessage 
 integer key the key value, which is the third parameter of StuffMIDIMessage 


^ Reaper version 5.40Lua version 5.3 ToggleMute

Functioncall:

integer retval = ultraschall.ToggleMute(integer track, number position, integer state)

Description:
Sets mute within the mute-envelope-lane, by inserting the fitting envelope-points. Can be used to program coughbuttons.

Returns -1, in case of an error

Returnvalues:
 integer retval toggling was 0, success; -1, fail 

Parameters:
 integer track the track-number, for where you want to set the mute-envelope-lane. 
 number position position in seconds 
 integer state 0, for mute the track on this position; 1, for unmuting the track on this position 


^ Reaper version 5.40Lua version 5.3 ToggleMute_TrackObject

Functioncall:

integer retval = ultraschall.ToggleMute_TrackObject(MediaTrack trackobject, number position, integer state)

Description:
Sets mute within the mute-envelope-lane, by inserting the fitting envelope-points. Can be used to program coughbuttons.

Returns -1, if it fails.

Works like ultraschall.ToggleMute but uses a trackobject instead of the tracknumber as parameter.

Returnvalues:
 integer retval toggling was 0, success; -1, fail 

Parameters:
 MediaTrack trackobject the track-object for the track, where you want to set the mute-envelope-lane. Refer GetTrack() for more details. 
 number position position in seconds 
 integer state 0, for mute the track on this position, 1, for unmuting the track on this position 


^ Reaper version 5.40Lua version 5.3 GetNextMuteState

Functioncall:

integer envIDX, number envVal, number envPosition = ultraschall.GetNextMuteState(integer track, number position)

Description:
Returns the next mute-envelope-point-ID, it's value(0 or 1) and it's time. Envelope-Points numbering starts with 0!

Returns -1 if not existing.

Returnvalues:
 integer envIDX number of the muteenvelope-point 
 number envVal value of the muteenvelope-point (0 or 1) 
 number envPosition position of the muteenvelope-point in seconds 

Parameters:
 integer track the track-number, for where you want to set the mute-envelope-lane, beginning with 1. 
 number position position in seconds, from where to look for the next mute-envelope-point 


^ Reaper version 5.40Lua version 5.3 GetPreviousMuteState

Functioncall:

integer envIDX, number envVal, number envPosition = ultraschall.GetPreviousMuteState(integer track, number position)

Description:
Returns the previous mute-envelope-point-ID, it's value(0 or 1) and it's time. Envelope-Points numbering starts with 0!

Returns -1 if not existing.

Returnvalues:
 integer envIDX number of the muteenvelope-point 
 number envVal value of the muteenvelope-point (0 or 1) 
 number envPosition position of the muteenvelope-point in seconds 

Parameters:
 integer track the track-number, for where you want to set the mute-envelope-lane, beginning with 1. 
 number position position in seconds, from where to look for the previous mute-envelope-point 


^ Reaper version 5.40Lua version 5.3 GetNextMuteState_TrackObject

Functioncall:

integer envIDX, number envVal, number envPosition = ultraschall.GetNextMuteState_TrackObject(MediaTrack track, number position)

Description:
Returns the next mute-envelope-point-ID, it's value(0 or 1) and it's time. Envelope-Points numbering starts with 0!

Returns -1 if not existing.

Returnvalues:
 integer envIDX number of the muteenvelope-point 
 number envVal value of the muteenvelope-point (0 or 1) 
 number envPosition position of the muteenvelope-point in seconds 

Parameters:
 MediaTrack track the MediaTrack-object, for the track, where you want to set the mute-envelope-lane. 
 number position position in seconds, from where to look for the next mute-envelope-point 


^ Reaper version 5.40Lua version 5.3 GetPreviousMuteState_TrackObject

Functioncall:

integer envIDX, number envVal, number envPosition = ultraschall.GetPreviousMuteState_TrackObject(MediaTrack track, number position)

Description:
Returns the previous mute-envelope-point-ID, it's value(0 or 1) and it's time. Envelope-Points numbering starts with 0!

Returns -1 if not existing.

Returnvalues:
 integer envIDX number of the muteenvelope-point 
 number envVal value of the muteenvelope-point (0 or 1) 
 number envPosition position of the muteenvelope-point in seconds 

Parameters:
 MediaTrack track the MediaTrack-object, for the track, where you want to set the mute-envelope-lane. 
 number position position in seconds, from where to look for the previous mute-envelope-point 


^ Reaper version 5.40Lua version 5.3 CountMuteEnvelopePoints

Functioncall:

integer retval = ultraschall.CountMuteEnvelopePoints(integer track)

Description:
Returns the number of the envelope-points in the Mute-lane of track "track".

Returns -1, if it fails.

Returnvalues:
 integer retval number of mute-envelope-points 

Parameters:
 integer track the track-number, for which you want to count the mute-envelope-points, beginning with 1. 


^ Reaper version 5.95Lua version 5.3 DeleteMuteState

Functioncall:

boolean retval = ultraschall.DeleteMuteState(integer tracknumber, number position)

Description:
Deletes a mute-point in track tracknumber at position.

Returns false in case of an error

Returnvalues:
 boolean retval true, deleting was successful; false, deleting wasn't successful. 

Parameters:
 integer tracknumber the track in which to delete the mute-point; is 1-based, means 1 for track 1 
 number position the position of the mute-point to delete 


^ Reaper version 5.95Lua version 5.3 DeleteMuteState_TrackObject

Functioncall:

boolean retval = ultraschall.DeleteMuteState_TrackObject(MediaTrack MediaTrack, number position)

Description:
Deletes a mute-point in a MediaTrack-object at position.

Returns false in case of an error

Returnvalues:
 boolean retval true, deleting was successful; false, deleting wasn't successful. 

Parameters:
 MediaTrack MediaTrack the track in which to delete the mute-point 
 number position the position of the mute-point to delete 


^ Reaper version 5.95Lua version 5.3 IsMuteAtPosition

Functioncall:

boolean retval, optional integer envIDX, optional number envVal = ultraschall.IsMuteAtPosition(integer tracknumber, number position)

Description:
Returns true, if a mute-point exists in track tracknumber at position position.

Returns false in case of an error

Returnvalues:
 boolean retval true, if there is a mute-point; false, if there isn't one 
 optional integer envIDX if a mute-point is at position, this holds the index of the envelope-point 
 optional number envVal the current set value of the mute-point 

Parameters:
 integer tracknumber the track in which to check for a mute-point; is 1-based, means 1 for track 1 
 number position the position to check for a mute-point 


^ Reaper version 5.95Lua version 5.3 IsMuteAtPosition_TrackObject

Functioncall:

boolean retval, optional integer envIDX, optional number envVal = ultraschall.IsMuteAtPosition_TrackObject(MediaTrack MediaTrack, number position)

Description:
Returns true, if a mute-point exists in MediaTrack-object at position position.

Returns false in case of an error

Returnvalues:
 boolean retval true, if there is a mute-point; false, if there isn't one 
 optional integer envIDX if a mute-point is at position, this holds the index of the envelope-point 
 optional number envVal the current set value of the mute-point 

Parameters:
 MediaTrack MediaTrack the track in which to check for a mute-point 
 number position the position to check for a mute-point 


^ Reaper version 5.40Lua version 5.3 ToggleScrollingDuringPlayback

Functioncall:

ultraschall.ToggleScrollingDuringPlayback(integer scrolling_switch, boolean move_editcursor, boolean goto_playcursor)

Description:
Toggles scrolling during playback and recording. Let's you choose to put the edit-marker at the playposition, where you toggled scrolling.
You can also move the view to the playcursor-position.

It changes, if necessary, the state of the actions 41817, 40036 and 40262 to scroll or not to scroll; keep that in mind, if you use these actions otherwise as well!

returns -1 in case of error

Returnvalues:
 integer retval -1, in case of an error 

Parameters:
 integer scrolling_switch 1, on; 0, off 
 boolean move_editcursor when scrolling stops, shall the editcursor be moved to current position of the playcursor(true) or not(false) 
 boolean goto_playcursor true, move view to playcursor; false, don't move 


^ Reaper version 5.40Lua version 5.3 SetPlayCursor_WhenPlaying

Functioncall:

ultraschall.SetPlayCursor_WhenPlaying(number position)

Description:
Changes position of the play-cursor, when playing. Changes view to new playposition.

Has no effect during recording, when paused or stop and returns -1 in these cases!


Parameters:
 number position in seconds 


^ Reaper version 5.40Lua version 5.3 SetPlayAndEditCursor_WhenPlaying

Functioncall:

ultraschall.SetPlayAndEditCursor_WhenPlaying(number position)

Description:
Changes position of the play and edit-cursor, when playing. Changes view to new playposition.

Has no effect during recording, when paused or stop and returns -1 in these cases!


Parameters:
 number position in seconds 


^ Reaper version 5.40Lua version 5.3 JumpForwardBy

Functioncall:

ultraschall.JumpForwardBy(number seconds, boolean seekplay)

Description:
Jumps editcursor forward by seconds seconds.

Returns -1 if parameter is negative. During Recording: only the playcursor will be moved, the current recording-position is still at it's "old" position! If you want to move the current recording position as well, use ultraschall.JumpForwardBy_Recording instead.


Parameters:
 number seconds jump forward by seconds 
 boolean seekplay true, move playcursor as well; false, don't move playcursor 


^ Reaper version 5.40Lua version 5.3 JumpBackwardBy

Functioncall:

ultraschall.JumpBackwardBy(number seconds, boolean seekplay)

Description:
Jumps editcursor backward by seconds seconds.

Returns -1 if parameter is negative. During Recording: only the playcursor will be moved, the current recording-position is still at it's "old" position! If you want to move the current recording position as well, use ultraschall.JumpBackwardBy_Recording instead.


Parameters:
 number seconds jump backwards by seconds 
 boolean seekplay true, move playcursor as well; false, leave playcursor at it's old position 


^ Reaper version 5.40Lua version 5.3 JumpForwardBy_Recording

Functioncall:

ultraschall.JumpForwardBy_Recording(number seconds)

Description:
Stops recording, jumps forward by seconds seconds and restarts recording. Will keep paused-recording, if recording was paused. Has no effect during play,play/pause and stop.

returns -1 in case of an error


Parameters:
 number seconds restart recording forwards by seconds 


^ Reaper version 5.40Lua version 5.3 JumpBackwardBy_Recording

Functioncall:

ultraschall.JumpBackwardBy_Recording(number seconds)

Description:
Stops recording, jumps backward by seconds seconds and restarts recording. Will keep paused-recording, if recording was paused. Has no effect during play,play/pause and stop.

returns -1 in case of an error


Parameters:
 number seconds restart recording backwards by seconds 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetNextClosestItemEdge

Functioncall:

number position, integer item_number, string edgetype, MediaItem found_item = ultraschall.GetNextClosestItemEdge(string trackstring, integer cursor_type, optional number time_position)

Description:
returns the position of the next closest item in seconds. It will return the position of the beginning or the end of that item, depending on what is closer.

returns -1 in case of an error

Returnvalues:
 number position the position of the next closest item-edge in tracks in trackstring 
 integer item_number the itemnumber in the project 
 string edgetype "beg" for beginning of the item, "end" for the end of the item 
 MediaItem found_item the next closest found MediaItem  

Parameters:
 string trackstring a string with the numbers of tracks to check for closest items, separated by a comma (e.g. "0,1,6") 
 integer cursor_type next closest item related to the current position of 0 - Edit Cursor, 1 - Play Cursor, 2 - Mouse Cursor, 3 - Timeposition 
 optional number time_position only, when cursor_type=3, a time position in seconds, from where to check for the next closest item. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetPreviousClosestItemEdge

Functioncall:

number position, number position, integer item_number, string edgetype, MediaItem found_item = ultraschall.GetPreviousClosestItemEdge(string tracks, integer cursor_type, optional number time_position)

Description:
returns the position of the previous closest item-edge in seconds. It will return the position of the beginning or the end of that item, depending on what is closer.

returns -1 in case of an error

Returnvalues:
 number position the position of the previous closest item edge in tracks in trackstring 
 integer item_number the itemnumber in the project 
 string edgetype "beg" for beginning of the item, "end" for the end of the item 
 MediaItem found_item the next closest found MediaItem  

Parameters:
 string tracks a string with the numbers of tracks to check for closest items, separated by a comma (e.g. "0,1,6") 
 integer cursor_type previous closest item related to the current position of 0 - Edit Cursor, 1 - Play Cursor, 2 - Mouse Cursor, 3 - Timeposition 
 optional time_position only, when cursor_type=3, a time position in seconds, from where to check for the previous closest item. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetClosestNextMarker

Functioncall:

number markerindex, number position, string markertitle = ultraschall.GetClosestNextMarker(integer cursor_type, optional number time_position)

Description:
returns the markerindex(counted from all markers), the position and the name of the next closest marker in seconds.

returns -1 in case of an error

Returnvalues:
 number markerindex the next closest markerindex (of all(!) markers) 
 number position the position of the next closest marker 
 string markertitle the name of the next closest marker 

Parameters:
 integer cursor_type previous closest marker related to the current position of 0 - Edit Cursor, 1 - Play Cursor, 2 - Mouse Cursor, 3 - Timeposition 
 optional number time_position only, when cursor_type=3, a time position in seconds, from where to check for the next closest marker. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetClosestPreviousMarker

Functioncall:

number markerindex, number position, string markertitle = ultraschall.GetClosestPreviousMarker(integer cursor_type, optional number time_position)

Description:
returns the markerindex(counted from all markers), the position and the name of the previous closest marker in seconds.

Returnvalues:
 number markerindex the previous closest markerindex (of all(!) markers) 
 number position the position of the previous closest marker 
 string markertitle the name of the previous closest marker 

Parameters:
 integer cursor_type previous closest marker related to the current position of 0 - Edit Cursor, 1 - Play Cursor, 2 - Mouse Cursor, 3 - Timeposition 
 optional number time_position only, when cursor_type=3, a time position in seconds, from where to check for the previous closest marker. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetClosestNextRegionEdge

Functioncall:

number markerindex, number position, string markertitle, string edge_type = ultraschall.GetClosestNextRegionEdge(integer cursor_type, optional number time_position)

Description:
returns the regionindex(counted from all markers and regions), the position and the name of the next closest regionstart/end(depending on which is closer to time_position) in seconds.

returns -1 in case of an error

Returnvalues:
 number markerindex the next closest markerindex (of all(!) markers) 
 number position the position of the next closest region 
 string markertitle the name of the next closest region 
 string edge_type the type of the edge of the region, either "beg" or "end" 

Parameters:
 integer cursor_type previous closest regionstart/end related to the current position of
0, Edit Cursor,
1, Play Cursor,
2, Mouse Cursor,
3, Timeposition 
 only number time_position only, when cursor_type=3, a time position in seconds, from where to check for the next closest regionstart/end. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetClosestPreviousRegionEdge

Functioncall:

number markerindex, number position, string markertitle, string edge_type = ultraschall.GetClosestPreviousRegionEdge(integer cursor_type, optional number time_position)

Description:
returns the regionindex(counted from all markers and regions), the position and the name of the previous closest regionstart/end(depending on which is closer to time_position) in seconds.

returns -1 in case of an error

Returnvalues:
 number markerindex the previous closest markerindex (of all(!) markers) 
 number position the position of the previous closest marker 
 string markertitle the name of the previous closest marker 
 string edge_type the type of the edge of the region, either "beg" or "end" 

Parameters:
 integer cursor_type previous closest regionstart/end related to the current position of 0 - Edit Cursor, 1 - Play Cursor, 2 - Mouse Cursor, 3 - Timeposition 
 optional number time_position only, when cursor_type=3, a time position in seconds, from where to check for the previous closest regionstart/end. When omitted, it will take the current play(during play and rec) or edit-cursor-position. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 GetClosestGoToPoints

Functioncall:

number elementposition_prev, string elementtype_prev, integer number_prev, number elementposition_next, string elementtype_next, integer number_next = ultraschall.GetClosestGoToPoints(string trackstring, number time_position, optional boolean check_itemedge, optional boolean check_marker, optional boolean check_region)

Description:
returns, what are the closest markers/regions/item starts/itemends to position and within the chosen tracks.

returns -1 in case of error

Returnvalues:
 number elementposition_prev previous closest markers/regions/item starts/itemends 
 string elementtype_prev type of the previous closest markers/regions/item starts/itemends
the type can be either Itembeg, Itemend, Marker: name, Region_beg: name; Region_end: name, ProjectStart, ProjectEnd; "name" is the name of the marker or region 
 integer number_prev number of previous closest markers/regions/item starts/itemends 
 number elementposition_next previous closest markers/regions/item starts/itemends 
 string elementtype_next type of the previous closest markers/regions/item starts/itemends
the type can be either Itembeg, Itemend, Marker: name, Region_beg: name; Region_end: name, ProjectStart, ProjectEnd; "name" is the name of the marker or region 
 integer number_next number of previous closest markers/regions/item starts/itemends 

Parameters:
 string trackstring tracknumbers, separated by a comma. 
 number time_position a time position in seconds, from where to check for the next/previous closest items/markers/regions.
-1, for editcursorposition; -2, for playcursor-position, -3, the mouse-cursor-position in seconds(where in the project the mousecursor hovers over) 
 optional boolean check_itemedge true, look for itemedges as possible goto-points; false, do not 
 optional boolean check_marker true, look for markers as possible goto-points; false, do not 
 optional boolean check_region true, look for regions as possible goto-point; false, do not 


^ Reaper version 5.52SWS version 2.9.7Lua version 5.3 CenterViewToCursor

Functioncall:

ultraschall.CenterViewToCursor(integer cursortype, optional number position)

Description:
centers the arrange-view around a given cursor

returns nil in case of an error


Parameters:
 integer cursortype the cursortype to center
1 - change arrangeview with edit-cursor centered
2 - change arrangeview with play-cursor centered
3 - change arrangeview with mouse-cursor-position centered
4 - change arrangeview with optional parameter position centered 
 optional number position the position to center the arrangeview to; only used, when cursortype=4 


^ Reaper version 5.95Lua version 5.3 GetLastCursorPosition

Functioncall:

number last_editcursor_position, number new_editcursor_position, number statechangetime = ultraschall.GetLastCursorPosition()

Description:
Returns the last and current editcursor-position. Needs Ultraschall-API-background-scripts started first, see RunBackgroundHelperFeatures().

Has an issue, when editcursor-position was changed using a modifier, like alt+click or shift+click! Because of that, you should use this only in defer-scripts.

returns -1, if Ultraschall-API-backgroundscripts weren't started yet.

Returnvalues:
 number last_editcursor_position the last cursorposition before the current one; -1, in case of an error 
 number new_editcursor_position the new cursorposition; -1, in case of an error 
 number statechangetime the time, when the state has changed the last time 



^ Reaper version 5.95Lua version 5.3 GetLastPlayState

Functioncall:

string last_play_state, string new_play_state, number statechangetime = ultraschall.GetLastPlayState()

Description:
Returns the last and current playstate. Needs Ultraschall-API-background-scripts started first, see RunBackgroundHelperFeatures().

possible states are STOP, PLAY, PLAYPAUSE, REC, RECPAUSE

returns -1, if Ultraschall-API-backgroundscripts weren't started yet.

Returnvalues:
 string last_play_state the last playstate before the current one; -1, in case of an error 
 string new_play_state the new playstate; -1, in case of an error 
 number statechangetime the time, when the state has changed the last time 



^ Reaper version 5.95Lua version 5.3 GetLastLoopState

Functioncall:

string last_loop_state, string new_loop_state, number statechangetime = ultraschall.GetLastLoopState()

Description:
Returns the last and current loopstate. Needs Ultraschall-API-background-scripts started first, see RunBackgroundHelperFeatures().

Possible states are LOOPED, UNLOOPED

returns -1, if Ultraschall-API-backgroundscripts weren't started yet.

Returnvalues:
 string last_loop_state the last loopstate before the current one; -1, in case of an error 
 string new_loop_state the current loopstate; -1, in case of an error 
 number statechangetime the time, when the state has changed the last time 



^ Reaper version 5.965Lua version 5.3 GetLoopState

Functioncall:

integer retval = ultraschall.GetLoopState()

Description:
Returns the current loop-state

Returnvalues:
 integer retval 0, loop is on; 1, loop is off 



^ Reaper version 5.965Lua version 5.3 SetLoopState

Functioncall:

boolean retval = ultraschall.SetLoopState(integer state)

Description:
Sets the current loop-state

returns false in case of an error

Returnvalues:
 boolean retval true, if setting was successful; false, if setting was unsuccessful 

Parameters:
 integer state 0, loop is on; 1, loop is off 


^ Reaper version 5.965SWS version 2.10.0.1Lua version 5.3 Scrubbing_MoveCursor_GetToggleState

Functioncall:

boolean state = ultraschall.Scrubbing_MoveCursor_GetToggleState()

Description:
Returns, if scrub is toggled on/off, for when moving editcursor via action or control surface, as set in Preferences -> Playback.

Returnvalues:
 boolean retval true, scrub is on; false, scrub is off 



^ Reaper version 5.965SWS version 2.10.0.1Lua version 5.3 Scrubbing_MoveCursor_Toggle

Functioncall:

boolean state, optional integer new_scrubmode = ultraschall.Scrubbing_MoveCursor_Toggle(boolean toggle)

Description:
Toggles scrub on/off, for when moving editcursor via action or control surface, as set in Preferences -> Playback.

returns false in case of an error

Returnvalues:
 boolean retval true, toggling was successful; false, toggling was unsuccessful 
 optional integer new_scrubmode this is the new value of the configvariable scrubmode, which is altered by this function 

Parameters:
 boolean toggle true, toggles scrubbing on; false, toggles scrubbing off 


^ Reaper version 5.40Lua version 5.3 GetProjectFilename

Functioncall:

string projectfilename_with_path = ultraschall.GetProjectFilename(ReaProject proj)

Description:
Returns the filename of a currently opened project(-tab)

returns nil in case of an error

Returnvalues:
 string projectfilename_with_path the filename of the project; "", project hasn't been saved yet; nil, in case of an error 

Parameters:
 ReaProject proj a currently opened project, whose filename you want to know 


^ Reaper version 5.40Lua version 5.3 CheckForChangedProjectTabs

Functioncall:

boolean retval, integer countReorderedProj, array reorderedProj, integer countNewProj, array newProj, integer countClosedProj, array closedProj, integer countRenamedProjects, array RenamesProjects = ultraschall.CheckForChangedProjectTabs(boolean update)

Description:
Returns if projecttabs have been changed due reordering, new projects or closed projects, since last calling this function.
Set update=true to update Ultraschall's internal project-monitoring-list or it will only return the changes since starting the API in this script or since the last time you used this function with parameter update set to true!

Returns false, -1 in case of error.

Returnvalues:
 boolean retval false, no changes in the projecttabs at all; true, either order, newprojects or closed project-changes 
 integer countReorderedProj the number of reordered projects 
 array reorderedProj ReaProjects, who got reordered within the tabs 
 integer countNewProj the number of new projects 
 array newProj the new projects as ReaProjects 
 integer countClosedProj the number of closed projects 
 array closedProj the closed projects as ReaProjects 
 integer countRenamedProjects the number of projects, who got renamed by either saving under a new filename or loading of another project 
 array RenamesProjects the renamed projects, by loading a new project or saving the project under another filename 

Parameters:
 boolean update true, update Ultraschall's internal projecttab-monitoring-list to the current state of all tabs
false, don't update the internal projecttab-monitoring-list, so it will keep the "old" project-tab-state as checking-reference 


^ Reaper version 5.40Lua version 5.3 IsValidProjectStateChunk

Functioncall:

boolean retval = ultraschall.IsValidProjectStateChunk(string ProjectStateChunk)

Description:
Checks, whether ProjectStateChunk is a valid ProjectStateChunk

Returnvalues:
 boolean retval true, if it's a valid ProjectStateChunk; false, if not 

Parameters:
 string ProjectStateChunk the string to check, if it's a valid ProjectStateChunk 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetProjectStateChunk

Functioncall:

string ProjectStateChunk = ultraschall.GetProjectStateChunk(optional string projectfilename_with_path, optional boolean keepqrender)

Description:
Gets the ProjectStateChunk of the current active project or a projectfile.

Important: when calling it too often in a row, this might fail and result in a timeout-error.
I tried to circumvent this, but best practice is to wait 2-3 seconds inbetween calling this function.
This function also eats up a lot of resources, so be sparse with it in general!

returns nil if getting the ProjectStateChunk took too long

Returnvalues:
 string ProjectStateChunk the ProjectStateChunk of the current project; nil, if getting the ProjectStateChunk took too long 

Parameters:
 optional string projectfilename_with_path the filename of an rpp-projectfile, that you want to load as ProjectStateChunk; nil, to get the ProjectStateChunk from the currently active project 
 optional boolean keepqrender true, keeps the QUEUED_RENDER_OUTFILE and QUEUED_RENDER_ORIGINAL_FILENAME entries in the ProjectStateChunk, if existing; false or nil, remove them 


^ Reaper version 5.40Lua version 5.3 EnumProjects

Functioncall:

ReaProject retval, string projfn = ultraschall.EnumProjects(integer idx)

Description:
returns, ReaProject-object and projectname of a requested, opened project.

Returns nil in case of an error.

Returnvalues:
 ReaProject retval a ReaProject-object of the project you requested; nil, if not existing 
 string projfn the path+filename.rpp of the project. returns "" if no filename exists 

Parameters:
 integer idx the project to request; 1(first project-tab) to n(last project-tab), 0 for current project; -1 for currently-rendering project 


^ Reaper version 5.40Lua version 5.3 GetProjectLength

Functioncall:

number project_length, number last_itemedge, number last_regionedgepos, number last_markerpos, number last_timesigmarker = ultraschall.GetProjectLength(optional boolean return_last_itemedge, optional boolean return_last_markerpos, optional boolean return_lat_timesigmarkerpos)

Description:
Returns the position of the last itemedge, regionend, marker, time-signature-marker in the project.

It will return -1, if no such elements are found, means: last_markerpos=-1 if no marker has been found
Exception when no items are found, it will return nil for last_itemedge

You can optimise the speed of the function, by setting the appropriate parameters to false.
So if you don't need the last itemedge, setting return_last_itemedge=false speeds up execution massively.

To do the same for projectfiles, use: GetProject_Length

Returnvalues:
 number length_of_project the overall length of the project, including markers, regions, itemedges and time-signature-markers 
 number last_itemedge the position of the last itemedge in the project; nil, if not found 
 number last_regionedgepos the position of the last regionend in the project; -1, if not found 
 number last_markerpos the position of the last marker in the project; -1, if not found  
 number last_timesigmarker the position of the last timesignature-marker in the project; -1, if not found 

Parameters:
 optional boolean return_last_itemedge true or nil, return the last itemedge; false, don't return it 
 optional boolean return_last_markerpos true or nil, return the last marker/regionend-position; false, don't return it  
 optional boolean return_lat_timesigmarkerpos true or nil, return the last timesignature-marker-position; false, don't return it 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 GetRecentProjects

Functioncall:

integer count_of_RecentProjects, array RecentProjectsFilenamesWithPath = ultraschall.GetRecentProjects()

Description:
returns all available recent projects, as listed in the File -> Recent projects-menu

Returnvalues:
 integer count_of_RecentProjects the number of available recent projects 
 array RecentProjectsFilenamesWithPath the filenames of the recent projects 



^ Reaper version 6.02Lua version 5.3 IsValidProjectBayStateChunk

Functioncall:

boolean retval = ultraschall.IsValidProjectBayStateChunk(string ProjectBayStateChunk)

Description:
checks, if ProjectBayStateChunk is a valid ProjectBayStateChunk

returns false in case of an error

Returnvalues:
 boolean retval true, valid ProjectBayStateChunk; false, not a valid ProjectBayStateChunk 

Parameters:
 string ProjectBayStateChunk a string, that you want to check for being a valid ProjectBayStateChunk 


^ Reaper version 6.02Lua version 5.3 GetAllMediaItems_FromProjectBayStateChunk

Functioncall:

integer count, array MediaItemStateChunkArray = ultraschall.GetAllMediaItems_FromProjectBayStateChunk(string ProjectBayStateChunk)

Description:
returns all items from a ProjectBayStateChunk as MediaItemStateChunkArray

returns -1 in case of an error

Returnvalues:
 integer count the number of items found in the ProjectBayStateChunk 
 array MediaitemStateChunkArray all items as ItemStateChunks in a handy array 

Parameters:
 string ProjectBayStateChunk a string, that you want to check for being a valid ProjectBayStateChunk 


^ Reaper version 6.02Lua version 5.3 GetProjectState_NumbersOnly

Functioncall:

table values = ultraschall.GetProjectState_NumbersOnly(string projectfilename_with_path, string state, optional string ProjectStateChunk, optional boolean numbertoggle)

Description:
returns a state of the project or a ProjectStateChunk.

It only supports single-entry-states with numbers/integers, separated by spaces!
All other values will be set to nil and strings with spaces will produce weird results!

returns nil in case of an error

Returnvalues:
 table values all values found as numerical indexed array 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the states; nil to use ProjectStateChunk 
 string state the state, whose attributes you want to retrieve 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 
 optional string functionname if this function is used within specific getprojectstate-functions, pass here the "host"-functionname, so error-messages will reflect that 
 optional boolean numbertoggle true or nil; converts all values to numbers; false, keep them as string versions 


^ Reaper version 5.40Lua version 5.3 GetProject_ReaperVersion

Functioncall:

string reaperversion, string timestamp = ultraschall.GetProject_ReaperVersion(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the reaperversion and the timestamp from an RPP-Projectfile or a ProjectStateChunk.

It's the entry "<REAPER_PROJECT"

Returns nil in case of error or if no such entry exists.

Returnvalues:
 string reaperversion the version of Reaper, with which this project had been saved 
 string timestamp a timestamp for this project 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 6.04Lua version 5.3 GetProject_RenderCFG

Functioncall:

string render_cfg, string render_cfg2 = ultraschall.GetProject_RenderCFG(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-cfg-string2, that contains all render-settings for primary and secondary render-settings of a project from an RPP-Projectfile or a ProjectStateChunk.

It's the entry <RENDER_CFG

Returns nil in case of error or if no such entry exists.

Returnvalues:
 string render_cfg the renderstring, which contains all render-settings for a project/projectstatechunk 
 string render_cfg2 the renderstring, which contains all secondary-render-settings for a project/projectstatechunk 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RippleState

Functioncall:

integer ripplestate = ultraschall.GetProject_RippleState(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the ripple-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry RIPPLE

Returns nil in case of error or if no such entry exists.

Returnvalues:
 integer ripplestate 0, no Ripple; 1, Ripple One Track; 2, Ripple All 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_GroupOverride

Functioncall:

integer group_override1, integer group_override2, integer group_override3 = ultraschall.GetProject_GroupOverride(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the group-override-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry GROUPOVERRIDE

Returns nil in case of error or if no such entry exists.

Returnvalues:
 integer group_override1 the group-override state 
 integer track_group_enabled the track_group_enabled-setting, as set in the context-menu of the Master-Track; 1, checked; 0, unchecked 
 integer group_override3 the group-override state 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_AutoCrossFade

Functioncall:

integer autocrossfade_state = ultraschall.GetProject_AutoCrossFade(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the autocrossfade-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry AUTOXFADE

Returns nil in case of error or if no such entry exists.

Returnvalues:
 integer autocrossfade_state the autocrossfade-state 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 string ProjectStateChunk a ProjectStateChunk to use instead if a filename 


^ Reaper version 5.40Lua version 5.3 GetProject_EnvAttach

Functioncall:

integer env_attach = ultraschall.GetProject_EnvAttach(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the EnvAttach-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry ENVATTACH

Returns nil in case of error.

Returnvalues:
 integer env_attach the env-attach state 

Parameters:
 string projectfilename_with_path filename with path of the rpp-project-file; nil, use parameter ProjectStateChunk instead 
 string ProjectStateChunk a projectstatechunk to read the value from; only used, projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_PooledEnvAttach

Functioncall:

integer pooled_env_attach = ultraschall.GetProject_PooledEnvAttach(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the PooledEnvAttach-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry POOLEDENVATTACH

Returns nil in case of error.

Returnvalues:
 integer pooled_env_attach the pooled-env-attach state 

Parameters:
 string projectfilename_with_path filename with path of the rpp-project-file; nil, use parameter ProjectStateChunk instead 
 string ProjectStateChunk a projectstatechunk to read the value from; only used, projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_MixerUIFlags

Functioncall:

integer state1, integer state2 = ultraschall.GetProject_MixerUIFlags(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the MixerUI-state-flags from an RPP-Projectfile or a ProjectStateChunk.

It's the entry MIXERUIFLAGS

Returns nil in case of error.

Returnvalues:
 integer state1 folders, receives, etc
0 - Show tracks in folders, Auto arrange tracks in mixer
1 - Show normal top level tracks
2 - Show Folders
4 - Group folders to left
8 - Show tracks that have receives
16 - Group tracks that have receives to left
32 - don't show tracks that are in folder
64 - No Autoarrange tracks in mixer
128 - ?
256 - ? 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_PeakGain

Functioncall:

number peakgain_state = ultraschall.GetProject_PeakGain(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the GetProject_PeakGain-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry PEAKGAIN

Returns nil in case of error.

Returnvalues:
 number peakgain_state peakgain-state 

Parameters:
 string projectfilename_with_path filename with path of the rpp-project-file 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_Feedback

Functioncall:

integer feedback_state = ultraschall.GetProject_Feedback(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the GetProject_Feedback-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry FEEDBACK

Returns nil in case of error.

Returnvalues:
 integer feedback_state feedback-state 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_PanLaw

Functioncall:

number panlaw_state = ultraschall.GetProject_PanLaw(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the GetProject_PanLaw-state from an RPP-Projectfile or a ProjectStateChunk, as set in the project-settings->Advanced->Pan law/mode->Pan:law(db).

It's the entry PANLAW

Returns nil in case of error.

Returnvalues:
 number panlaw_state state of the panlaw, as set in the project-settings->Advanced->Pan law/mode->Pan:law(db). 0.5(-6.02 db) to 1(default +0.0 db) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.941Lua version 5.3 GetProject_ProjOffsets

Functioncall:

number start_time, integer start_measure, integer base_ruler_marking_off_this_measure = ultraschall.GetProject_ProjOffsets(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the Project Offset-state from an RPP-Projectfile or a ProjectStateChunk, start time as well as start measure.
as set in ProjectSettings->ProjectSettings->Project Start Time/Measure and the checkbox Base Ruler Marking Off This Measure-checkbox

It's the entry PROJOFFS

Returns nil in case of error.

Returnvalues:
 number start_time the project-start-time in seconds 
 integer start_measure starting with 0, unlike the Settingswindow, where the 0 becomes 1 as measure 
 integer base_ruler_marking_off_this_measure 0, checkbox unchecked; 1, checkbox checked 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_MaxProjectLength

Functioncall:

integer limit_project_length, number projectlength_limit = ultraschall.GetProject_MaxProjectLength(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the maximum-project-length from an RPP-Projectfile or a ProjectStateChunk, as set in ProjectSettings->Advanced->
as set in ProjectSettings->ProjectSettings->Project Start Time/Measure.

It's the entry MAXPROJLEN

Returns nil in case of error.

Returnvalues:
 integer limit_project_length checkbox "Limit project length, stop playback/recording at:" - 0 off, 1 on 
 number projectlength_limit projectlength-limit in seconds 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_Grid

Functioncall:

integer gridstate1, integer gridstate2, number gridstate3, integer gridstate4, number gridstate5, integer gridstate6, integer gridstate7, number gridstate8 = ultraschall.GetProject_Grid(string projectfilename_with_path)

Description:
Returns the grid-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry GRID

Returns nil in case of error.

Returnvalues:
 integer gridstate1 gridstate1 
 integer gridstate2 gridstate2 
 number gridstate3 gridstate3 
 integer gridstate4 gridstate4 
 number gridstate5 gridstate5 
 integer gridstate6 gridstate6 
 integer gridstate7 gridstate7 
 number gridstate8 gridstate8 

Parameters:
 string projectfilename_with_path filename with path of the rpp-project-file 


^ Reaper version 5.40Lua version 5.3 GetProject_Timemode

Functioncall:

integer ruler_timemode, integer timemode2, integer showntime, integer timemode4, integer timemode5, integer timemode6, integer timemode7 = ultraschall.GetProject_Timemode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the timemode-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry TIMEMODE

Returns nil in case of error.

Returnvalues:
 integer ruler_timemode ruler-timemode-state
-1, Use ruler time unit
  0, Minutes:Seconds
  1, Measures.Beats / Minutes:Seconds
  2, Measures.Beats
  3, Seconds
  4, Samples
  5, Hours:Minutes:Seconds:Frames
  8, Absolute Frames 
 integer timemode2 timemode-state 
 integer showntime Transport shown time
      -1 - use ruler time unit
       0 - minutes:seconds
       1 - measures:beats/minutes:seconds
       2 - measures:beats
       3 - seconds
       4 - samples
       5 - hours:minutes:seconds:frames
       8 - absolute frames 
 integer timemode4 timemode-state 
 integer timemode5 timemode-state 
 integer timemode6 timemode-state 
 integer timemode7 timemode-state 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_VideoConfig

Functioncall:

integer preferredVidSizeX, integer preferredVidSizeY, integer settingsflags = ultraschall.GetProject_VideoConfig(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the videoconfig-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry VIDEO_CONFIG

Returns nil in case of error.

Returnvalues:
 integer preferredVidSizeX preferred video size, x pixels 
 integer preferredVidSizeY preferred video size, y pixels 
 integer settingsflags settings
             0 - turned on/selected: use high quality filtering, preserve aspect ratio(letterbox) when resizing,
                                     Video colorspace set to Auto,
                                     Items in higher numbered tracks replace lower, as well as Video colorspace set to Auto
             1 - Video colorspace: I420/YV12
             2 - Video colorspace: YUV2
             3 - RGB
             256 - Items in lower numbered tracks replace higher
             512 - Always resize video sources to preferred video size
             1024 - Always resize output to preferred video size
             2048 - turn off "Use high quality filtering when resizing"
             4096 - turn off "preserve aspect ratio (letterbox) when resizing" 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_PanMode

Functioncall:

integer panmode_state = ultraschall.GetProject_PanMode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the panmode-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry PANMODE

Returns nil in case of error.

Returnvalues:
 integer panmode_state panmode-state
0 reaper 3.x balance (deprecated)
3 Stereo balance / mono pan (default)
5 Stereo pan
6 Dual Pan 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_CursorPos

Functioncall:

number cursorpos = ultraschall.GetProject_CursorPos(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the cursorposition-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry CURSOR

Returns nil in case of error.

Returnvalues:
 number cursorpos editcursorposition in seconds 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_HorizontalZoom

Functioncall:

number hzoom, integer hzoomscrollpos, integer scrollbarfactor = ultraschall.GetProject_HorizontalZoom(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the horizontal-zoom-state from an RPP-Projectfile or a ProjectStateChunk.
Keep in mind, that hzoomscrollpos and scrollbarfactor depend on each other. hzoomscrollpos is a smaller positioning-unit, while scrollbarfactor is the bigger positioning-unit.
Experiment with it to get an idea.

It's the entry ZOOM

Returns nil in case of error.

Returnvalues:
 number hzoom HorizontalZoomfactor, 0.007 to 1000000 
 integer hzoomscrollpos horizontalscrollbarposition - 0 - 4294967296 
 integer scrollbarfactor 0 to 500837, counts up, when maximum hzoomscrollpos overflows 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_VerticalZoom

Functioncall:

integer vzoom = ultraschall.GetProject_VerticalZoom(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the verticalzoom from an RPP-Projectfile or a ProjectStateChunk.

It's the entry VZOOMEX

Returns nil in case of error.

Returnvalues:
 integer vzoom vertical zoomfactor(0-40) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_UseRecConfig

Functioncall:

integer rec_cfg = ultraschall.GetProject_UseRecConfig(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the rec-cfg-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry USE_REC_CFG

Returns nil in case of error.

Returnvalues:
 integer rec_cfg recording-cfg-state
0 - Automatic .wav (recommended)
1 - Custom (use ultraschall.GetProject_ApplyFXCFG to get recording_cfg_string)
2 - Recording Format 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RecMode

Functioncall:

integer rec_mode = ultraschall.GetProject_RecMode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the rec-mode-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry RECMODE

Returns nil in case of error.

Returnvalues:
 integer rec_mode recording-mode-state
0 - Autopunch/Selected Items
1 - normal
2 - Time Selection/Auto Punch 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_SMPTESync

Functioncall:

integer smptesync_state1, number smptesync_fps, integer smptesync_resyncdrift, integer smptesync_skipdropframes, integer smptesync_syncseek, integer smptesync_freewheel, integer smptesync_userinput, number smptesync_offsettimecode, integer smptesync_stop_rec_drift, integer smptesync_state10, integer smptesync_stop_rec_lacktime = ultraschall.GetProject_SMPTESync(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the smpte-sync-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry SMPTESYNC

Returns nil in case of error.

Returnvalues:
 integer smptesync_state1 flag
0 - external timecode synchronization disabled
1 - external timecode synchronization enabled
4 - Start playback on valid timecode when stopped
8 - turned off: display flashing notification window when waiting for sync for recording
16 - playback off
32 - recording off
256 - MTC - 24/30fps MTC is 23.976/29.97ND works only with smptesync_userinput set to 4159
512 - MTC - 24/30fps MTC is 24/30ND 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_Loop

Functioncall:

integer loopbutton_state = ultraschall.GetProject_Loop(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the loop-button-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry LOOP

Returns nil in case of error.

Returnvalues:
 integer loop_mode loopbutton-state, 0 - off, 1 - on 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_LoopGran

Functioncall:

integer loopgran_state1, number loopgran_state2 = ultraschall.GetProject_LoopGran(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the loop_gran-state from an RPP-Projectfile or a ProjectStateChunk.

It's the entry LOOPGRAN

Returns nil in case of error.

Returnvalues:
 integer loopgran_state1 loopgran_state1 
 number loopgran_state2 loopgran_state2 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RecPath

Functioncall:

string prim_recpath, string sec_recpath = ultraschall.GetProject_RecPath(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the primary and secondary recording-path from an RPP-Projectfile or a ProjectStateChunk.

It's the entry RECORD_PATH

Returns nil in case of error.

Returnvalues:
 string prim_recpath the primary recording path 
 string sec_recpath the secondary recording path 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RecordCFG

Functioncall:

string recording_cfg_string = ultraschall.GetProject_RecordCFG(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the recording-configuration as encoded BASE64-string from an RPP-Projectfile or a ProjectStateChunk, as set in ProjectSettings->Media->Recording.

It's the entry <RECORD_CFG

Returns nil in case of error.

Returnvalues:
 recording_cfg_string the record-configuration as encoded string 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_ApplyFXCFG

Functioncall:

string applyfx_cfg_string = ultraschall.GetProject_ApplyFXCFG(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the audioformat-configuration, for fx-appliance-operation, as an encoded BASE64-string from an RPP-Projectfile or a ProjectStateChunk, as set in ProjectSettings->Media->Format for Apply FX, Glue, Freeze, etc

It's the entry <APPLY_CFG

Returns nil in case of error.

Returnvalues:
 string applyfx_cfg_string the file-format-configuration for fx-appliance as encoded string 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_RenderPattern

Functioncall:

string render_pattern = ultraschall.GetProject_RenderPattern(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-pattern, that tells Reaper, how to automatically name the render-file, from an RPP-Projectfile or a ProjectStateChunk. If it contains nothing, you should check the Render_Pattern using GetProject_RenderFilename, as a render-pattern influences the rendering-filename as well.

It's the entry RENDER_PATTERN

Returns nil in case of error.

Returnvalues:
 string render_pattern the pattern, with which the rendering-filename will be automatically created. Check also GetProject_RenderFilename
Capitalizing the first character of the wildcard will capitalize the first letter of the substitution. Capitalizing the first two characters of the wildcard will capitalize all letters.

Directories will be created if necessary. For example if the render target is "$project/track", the directory "$project" will be created.

Immediately following a wildcard, character replacement statements may be specified:
     -- single character which is to be removed from the substituion. For example: $track< > removes all spaces from the track name, $track<\> removes all slashes.
   -- multiple characters, abcde are all replaced with X. For example: <_.> replaces all underscores with periods, replaces all slashes with underscores. If > is specified as a source character, it must be listed first in the list.

$item    media item take name, if the input is a media item
$itemnumber  1 for the first media item on a track, 2 for the second...
$track    track name
$tracknumber  1 for the first track, 2 for the second...
$parenttrack  parent track name
$region    region name
$regionnumber  1 for the first region, 2 for the second...
$project    project name
$tempo    project tempo at the start of the render region
$timesignature  project time signature at the start of the render region, formatted as 4-4
$filenumber  blank (optionally 1) for the first file rendered, 1 (optionally 2) for the second...
$filenumber[N]  N for the first file rendered, N+1 for the second...
$note    C0 for the first file rendered,C#0 for the second...
$note[X]    X (example: B2) for the first file rendered, X+1 (example: C3) for the second...
$natural    C0 for the first file rendered, D0 for the second...
$natural[X]  X (example: F2) for the first file rendered, X+1 (example: G2) for the second...
$namecount  1 for the first item or region of the same name, 2 for the second...
$timelineorder  1 for the first item or region on the timeline, 2 for the second...

Position/Length:
$start    start time of the media item, render region, or time selection, in M-SS.TTT
$end    end time of the media item, render region, or time selection, in M-SS.TTT
$length    length of the media item, render region, or time selection, in M-SS.TTT
$startbeats  start time in measures.beats of the media item, render region, or time selection
$endbeats  end time in measures.beats of the media item, render region, or time selection
$lengthbeats    length in measures.beats of the media item, render region, or time selection
$starttimecode  start time in H-MM-SS-FF format of the media item, render region, or time selection
$endtimecode  end time in H-MM-SS-FF format of the media item, render region, or time selection
$startframes  start time in absolute frames of the media item, render region, or time selection
$endframes  end time in absolute frames of the media item, render region, or time selection
$lengthframes  length in absolute frames of the media item, render region, or time selection
$startseconds  start time in whole seconds of the media item, render region, or time selection
$endseconds  end time in whole seconds of the media item, render region, or time selection
$lengthseconds  length in whole seconds of the media item, render region, or time selection

Output Format:
$format    render format (example: wav)
$samplerate  sample rate (example: 44100)
$sampleratek  sample rate (example: 44.1)
$bitdepth  bit depth, if available (example: 24 or 32FP)

Current Date/Time:
$year    year, currently 2019
$year2    last 2 digits of the year,currently 19
$month    month number,currently 04
$monthname  month name,currently apr
$day    day of the month, currently 28
$hour    hour of the day in 24-hour format,currently 23
$hour12    hour of the day in 12-hour format,currently 11
$ampm    am if before noon,pm if after noon,currently pm
$minute    minute of the hour,currently 30
$second    second of the minute,currently 27

Computer Information:
$user    user name
$computer  computer name
(this description has been taken from the Render Wildcard Help within the Render-Dialog of Reaper) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RenderFreqNChans

Functioncall:

integer unknown, integer rendernum_chans, integer render_frequency = ultraschall.GetProject_RenderFreqNChans(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns an unknown number, the render-frequency and rendernumber of channels from an RPP-Projectfile or a ProjectStateChunk.
It's the entry RENDER_FMT

Returns nil in case of error.

Returnvalues:
 integer unknown unknown number 
 integer rendernum_chans Number_Channels 0-seems default-project-settings(?), 1-Mono, 2-Stereo, ... up to 64 channels 
 integer render_frequency RenderFrequency -2147483647 to 2147483647, except 0, which seems to be default-project-settings-frequency 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RenderSpeed

Functioncall:

integer render_speed = ultraschall.GetProject_RenderSpeed(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the rendering-speed from an RPP-Projectfile or a ProjectStateChunk.
It's the entry RENDER_1X

Returns nil in case of error.

Returnvalues:
 integer render_speed render_speed
0-Fullspeed Offline
1-1x Offline
2-Online Render
3-Offline Render (Idle)
4-1x Offline Render (Idle) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_RenderRange

Functioncall:

integer bounds, number time_start, number time_end, integer tail, integer tail_length = ultraschall.GetProject_RenderRange(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-range, render-timestart, render-timeend, render-tail and render-taillength from an RPP-Projectfile or a ProjectStateChunk. To get RENDER_STEMS, refer GetProject_RenderStems

It's the entry RENDER_RANGE

Returns nil in case of error.

Returnvalues:
 integer bounds the bounds of the project to be rendered
0, Custom Time Range
1, Entire Project
2, Time Selection,
3, Project Regions
4, Selected Media Items(in combination with RENDER_STEMS 32); to get RENDER_STEMS, refer GetProject_RenderStems
5, Selected regions 
 number time_start TimeStart in milliseconds -2147483647 to 2147483647 
 number time_end TimeEnd in milliseconds 2147483647 to 2147483647 
 integer tail Tail on/off-flags for individual bounds
0, tail off for all bounds
1, custom time range -> tail on
2, entire project -> tail on
4, time selection -> tail on
8, project regions -> tail on     
 integer tail_length TailLength in milliseconds, valuerange 0 - 2147483647 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_RenderResample

Functioncall:

integer resample_mode, integer playback_resample_mode, integer project_smplrate4mix_and_fx = ultraschall.GetProject_RenderResample(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns Resamplemode for a)Rendering and b)Playback as well as c)if both are combined from an RPP-Projectfile or a ProjectStateChunk.

It's the entry RENDER_RESAMPLE

Returns nil in case of error.

Returnvalues:
 integer resample_mode Resample_Mode
0-medium (64pt Sinc),
1-Low (Linear Interpolation),
2-Lowest (Point Sampling),
3-Good(192pt Sinc),
4-Better(384pt Sinc),
5-Fast (IIR + Linear Interpolation),
6-Fast (IIRx2 + Linear Interpolation),
7-Fast (16pt sinc) - Default,
8-HQ (512pt Sinc),
9-Extreme HQ (768pt HQ Sinc) 
 integer playback_resample_mode Playback Resample Mode (as set in the Project-Settings)
0-medium (64pt Sinc),
1-Low (Linear Interpolation),
2-Lowest (Point Sampling),
3-Good(192pt Sinc),
4-Better(384pt Sinc),
5-Fast (IIR + Linear Interpolation),
6-Fast (IIRx2 + Linear Interpolation),
7-Fast (16pt sinc) - Default,
8-HQ (512pt Sinc),
9-Extreme HQ (768pt HQ Sinc) 
 integer project_smplrate4mix_and_fx Use project sample rate for mixing and FX/synth processing-checkbox; 1, checked; 0, unchecked 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_AddMediaToProjectAfterRender

Functioncall:

integer addmedia_after_render_state = ultraschall.GetProject_AddMediaToProjectAfterRender(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns, if rendered media shall be added to the project afterwards, from an RPP-Projectfile or a ProjectStateChunk.
It's the entry RENDER_ADDTOPROJ

Returns nil in case of error.

Returnvalues:
 integer addmedia_after_render_state 1, rendered media shall be added to the project afterwards; 0, don't add 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 6.02Lua version 5.3 GetProject_RenderStems

Functioncall:

integer render_stems = ultraschall.GetProject_RenderStems(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-stems-state from an rpp-project-file or a ProjectStateChunk.

It's the entry RENDER_STEMS

Returns nil in case of error.

Returnvalues:
 integer render_stems the state of Render Stems
0, Source Master Mix,
1, Source Master mix + stems,
3, Source Stems, selected tracks,
&4, Multichannel Tracks to Multichannel Files,
8, Source Region Render Matrix,
&16, Tracks with only Mono-Media to Mono Files,  
32, Selected Media Items(in combination with RENDER_RANGE->Bounds->4, refer to GetProject_RenderRange to get RENDER_RANGE)
64,  Selected media items via master
128, Selected tracks via master
&256, Embed stretch markers/transient guides-checkbox 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 6.02Lua version 5.3 GetProject_RenderDitherState

Functioncall:

integer renderdither_state = ultraschall.GetProject_RenderDitherState(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-dither-state from an rpp-project-file or a ProjectStateChunk.

It's the entry RENDER_DITHER

Returns nil in case of error.

Returnvalues:
 integer renderdither_state the state of render dithering
&1,   Dither Master mix
&2,   Noise shaping Master mix
&4,   Dither Stems
&8,   Noise shaping Stems 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_TimeBase

Functioncall:

integer timebase = ultraschall.GetProject_TimeBase(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the timebase-state from an rpp-project-file or a ProjectStateChunk.
It's the entry TIMELOCKMODE x

Returns nil in case of error.

Returnvalues:
 integer timebase the timebase for items/envelopes/markers as set in the project settings
0 - Time,
1 - Beats (position, length, rate),
2 - Beats (position only) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_TempoTimeSignature

Functioncall:

integer tempotimesignature = ultraschall.GetProject_TempoTimeSignature(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the timebase for tempo/time-signature as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
It's the entry TEMPOENVLOCKMODE

Returns nil in case of error.

Returnvalues:
 integer tempotimesignature the timebase for tempo/time-signature as set in the project settings
0 - Time
1 - Beats 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_ItemMixBehavior

Functioncall:

integer item_mix_behav_state = ultraschall.GetProject_ItemMixBehavior(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the item mix behavior, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
It's the entry ITEMMIX

Returns nil in case of error.

Returnvalues:
 integer item_mix_behav_state item mix behavior
0 - Enclosed items replace enclosing items
1 - Items always mix
2 - Items always replace earlier items 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.977Lua version 5.3 GetProject_DefPitchMode

Functioncall:

integer def_pitch_mode_state, integer stretch_marker_mode = ultraschall.GetProject_DefPitchMode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the default-pitch-mode, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.

It's the entry DEFPITCHMODE

Returns nil in case of error.

Returnvalues:
 integer def_pitch_mode_state the default pitch mode
      SoundTouch:
          0 - Default settings
          1 - High Quality
          2 - Fast
      
      Simple windowed (fast):
          131072 - 50ms window, 25ms fade
          131073 - 50ms window, 16ms fade
          131074 - 50ms window, 10ms fade
          131075 - 50ms window, 7ms fade
          131076 - 75ms window, 37ms fade
          131077 - 75ms window, 25ms fade
          131078 - 75ms window, 15ms fade
          131079 - 75ms window, 10ms fade
          131080 - 100ms window, 50ms fade
          131081 - 100ms window, 33ms fade
          131082 - 100ms window, 20ms fade
          131083 - 100ms window, 14ms fade
          131084 - 150ms window, 75ms fade
          131085 - 150ms window, 50ms fade
          131086 - 150ms window, 30ms fade
          131087 - 150ms window, 21ms fade
          131088 - 225ms window, 112ms fade
          131089 - 225ms window, 75ms fade
          131090 - 225ms window, 45ms fade
          131091 - 225ms window, 32ms fade
          131092 - 300ms window, 150ms fade
          131093 - 300ms window, 100ms fade
          131094 - 300ms window, 60ms fade
          131095 - 300ms window, 42ms fade
          131096 - 40ms window, 20ms fade
          131097 - 40ms window, 13ms fade
          131098 - 40ms window, 8ms fade
          131099 - 40ms window, 5ms fade
          131100 - 30ms window, 15ms fade
          131101 - 30ms window, 10ms fade
          131102 - 30ms window, 6ms fade
          131103 - 30ms window, 4ms fade
          131104 - 20ms window, 10ms fade
          131105 - 20ms window, 6ms fade
          131106 - 20ms window, 4ms fade
          131107 - 20ms window, 2ms fade
          131108 - 10ms window, 5ms fade
          131109 - 10ms window, 3ms fade
          131110 - 10ms window, 2ms fade
          131111 - 10ms window, 1ms fade
          131112 - 5ms window, 2ms fade
          131113 - 5ms window, 1ms fade
          131114 - 5ms window, 1ms fade
          131115 - 5ms window, 1ms fade
          131116 - 3ms window, 1ms fade
          131117 - 3ms window, 1ms fade
          131118 - 3ms window, 1ms fade
          131119 - 3ms window, 1ms fade
      
      ÃƒÂ©lastique 2.2.8 Pro:
          393216 - Normal
          393217 - Preserve Formants (Lowest Pitches)
          393218 - Preserve Formants (Lower Pitches)
          393219 - Preserve Formants (Low Pitches)
          393220 - Preserve Formants (Most Pitches)
          393221 - Preserve Formants (High Pitches)
          393222 - Preserve Formants (Higher Pitches)
          393223 - Preserve Formants (Highest Pitches)
          393224 - Mid/Side
          393225 - Mid/Side, Preserve Formants (Lowest Pitches)
          393226 - Mid/Side, Preserve Formants (Lower Pitches)
          393227 - Mid/Side, Preserve Formants (Low Pitches)
          393228 - Mid/Side, Preserve Formants (Most Pitches)
          393229 - Mid/Side, Preserve Formants (High Pitches)
          393230 - Mid/Side, Preserve Formants (Higher Pitches)
          393231 - Mid/Side, Preserve Formants (Highest Pitches)
          393232 - Synchronized: Normal
          393233 - Synchronized: Preserve Formants (Lowest Pitches)
          393234 - Synchronized: Preserve Formants (Lower Pitches)
          393235 - Synchronized: Preserve Formants (Low Pitches)
          393236 - Synchronized: Preserve Formants (Most Pitches)
          393237 - Synchronized: Preserve Formants (High Pitches)
          393238 - Synchronized: Preserve Formants (Higher Pitches)
          393239 - Synchronized: Preserve Formants (Highest Pitches)
          393240 - Synchronized:  Mid/Side
          393241 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          393242 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          393243 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          393244 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          393245 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          393246 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          393247 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 2.2.8 Efficient:
          458752 - Normal
          458753 - Mid/Side
          458754 - Synchronized: Normal
          458755 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 2.2.8 Soloist:
          524288 - Monophonic
          524289 - Monophonic [Mid/Side]
          524290 - Speech
          524291 - Speech [Mid/Side]
      
      ÃƒÂ©lastique 3.3.0 Pro:
          589824 - Normal
          589825 - Preserve Formants (Lowest Pitches)
          589826 - Preserve Formants (Lower Pitches)
          589827 - Preserve Formants (Low Pitches)
          589828 - Preserve Formants (Most Pitches)
          589829 - Preserve Formants (High Pitches)
          589830 - Preserve Formants (Higher Pitches)
          589831 - Preserve Formants (Highest Pitches)
          589832 - Mid/Side
          589833 - Mid/Side, Preserve Formants (Lowest Pitches)
          589834 - Mid/Side, Preserve Formants (Lower Pitches)
          589835 - Mid/Side, Preserve Formants (Low Pitches)
          589836 - Mid/Side, Preserve Formants (Most Pitches)
          589837 - Mid/Side, Preserve Formants (High Pitches)
          589838 - Mid/Side, Preserve Formants (Higher Pitches)
          589839 - Mid/Side, Preserve Formants (Highest Pitches)
          589840 - Synchronized: Normal
          589841 - Synchronized: Preserve Formants (Lowest Pitches)
          589842 - Synchronized: Preserve Formants (Lower Pitches)
          589843 - Synchronized: Preserve Formants (Low Pitches)
          589844 - Synchronized: Preserve Formants (Most Pitches)
          589845 - Synchronized: Preserve Formants (High Pitches)
          589846 - Synchronized: Preserve Formants (Higher Pitches)
          589847 - Synchronized: Preserve Formants (Highest Pitches)
          589848 - Synchronized:  Mid/Side
          589849 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          589850 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          589851 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          589852 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          589853 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          589854 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          589855 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 3.3.0 Efficient:
          655360 - Normal
          655361 - Mid/Side
          655362 - Synchronized: Normal
          655363 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 3.3.0 Soloist:
          720896 - Monophonic
          720897 - Monophonic [Mid/Side]
          720898 - Speech
          720899 - Speech [Mid/Side]
      
      
      Rubber Band Library - Default
          851968 - nothing
      
      Rubber Band Library - Preserve Formants
          851969 - Preserve Formants
      
      Rubber Band Library - Mid/Side
          851970 - Mid/Side
      
      Rubber Band Library - Preserve Formants, Mid/Side
          851971 - Preserve Formants, Mid/Side
      
      Rubber Band Library - Independent Phase
          851972 - Independent Phase
      
      Rubber Band Library - Preserve Formants, Independent Phase
          851973 - Preserve Formants, Independent Phase
      
      Rubber Band Library - Mid/Side, Independent Phase
          851974 - Mid/Side, Independent Phase
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase
          851975 - Preserve Formants, Mid/Side, Independent Phase
      
      Rubber Band Library - Time Domain Smoothing
          851976 - Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Time Domain Smoothing
          851977 - Preserve Formants, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Time Domain Smoothing
          851978 - Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Time Domain Smoothing
          851979 - Preserve Formants, Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Independent Phase, Time Domain Smoothing
          851980 - Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Independent Phase, Time Domain Smoothing
          851981 - Preserve Formants, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Independent Phase, Time Domain Smoothing
          851982 - Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
          851983 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed
          851984 - nothing
          851985 - Preserve Formants
          851986 - Mid/Side
          851987 - Preserve Formants, Mid/Side
          851988 - Independent Phase
          851989 - Preserve Formants, Independent Phase
          851990 - Mid/Side, Independent Phase
          851991 - Preserve Formants, Mid/Side, Independent Phase
          851992 - Time Domain Smoothing
          851993 - Preserve Formants, Time Domain Smoothing
          851994 - Mid/Side, Time Domain Smoothing
          851995 - Preserve Formants, Mid/Side, Time Domain Smoothing
          851996 - Independent Phase, Time Domain Smoothing
          851997 - Preserve Formants, Independent Phase, Time Domain Smoothing
          851998 - Mid/Side, Independent Phase, Time Domain Smoothing
          851999 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth
          852000 - nothing
          852001 - Preserve Formants
          852002 - Mid/Side
          852003 - Preserve Formants, Mid/Side
          852004 - Independent Phase
          852005 - Preserve Formants, Independent Phase
          852006 - Mid/Side, Independent Phase
          852007 - Preserve Formants, Mid/Side, Independent Phase
          852008 - Time Domain Smoothing
          852009 - Preserve Formants, Time Domain Smoothing
          852010 - Mid/Side, Time Domain Smoothing
          852011 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852012 - Independent Phase, Time Domain Smoothing
          852013 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852014 - Mid/Side, Independent Phase, Time Domain Smoothing
          852015 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive
          852016 - nothing
          852017 - Preserve Formants
          852018 - Mid/Side
          852019 - Preserve Formants, Mid/Side
          852020 - Independent Phase
          852021 - Preserve Formants, Independent Phase
          852022 - Mid/Side, Independent Phase
          852023 - Preserve Formants, Mid/Side, Independent Phase
          852024 - Time Domain Smoothing
          852025 - Preserve Formants, Time Domain Smoothing
          852026 - Mid/Side, Time Domain Smoothing
          852027 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852028 - Independent Phase, Time Domain Smoothing
          852029 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852030 - Mid/Side, Independent Phase, Time Domain Smoothing
          852031 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive
          852032 - nothing
          852033 - Preserve Formants
          852034 - Mid/Side
          852035 - Preserve Formants, Mid/Side
          852036 - Independent Phase
          852037 - Preserve Formants, Independent Phase
          852038 - Mid/Side, Independent Phase
          852039 - Preserve Formants, Mid/Side, Independent Phase
          852040 - Time Domain Smoothing
          852041 - Preserve Formants, Time Domain Smoothing
          852042 - Mid/Side, Time Domain Smoothing
          852043 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852044 - Independent Phase, Time Domain Smoothing
          852045 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852046 - Mid/Side, Independent Phase, Time Domain Smoothing
          852047 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive
          852048 - nothing
          852049 - Preserve Formants
          852050 - Mid/Side
          852051 - Preserve Formants, Mid/Side
          852052 - Independent Phase
          852053 - Preserve Formants, Independent Phase
          852054 - Mid/Side, Independent Phase
          852055 - Preserve Formants, Mid/Side, Independent Phase
          852056 - Time Domain Smoothing
          852057 - Preserve Formants, Time Domain Smoothing
          852058 - Mid/Side, Time Domain Smoothing
          852059 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852060 - Independent Phase, Time Domain Smoothing
          852061 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852062 - Mid/Side, Independent Phase, Time Domain Smoothing
          852063 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft
          852064 - nothing
          852065 - Preserve Formants
          852066 - Mid/Side
          852067 - Preserve Formants, Mid/Side
          852068 - Independent Phase
          852069 - Preserve Formants, Independent Phase
          852070 - Mid/Side, Independent Phase
          852071 - Preserve Formants, Mid/Side, Independent Phase
          852072 - Time Domain Smoothing
          852073 - Preserve Formants, Time Domain Smoothing
          852074 - Mid/Side, Time Domain Smoothing
          852075 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852076 - Independent Phase, Time Domain Smoothing
          852077 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852078 - Mid/Side, Independent Phase, Time Domain Smoothing
          852079 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft
          852080 - nothing
          852081 - Preserve Formants
          852082 - Mid/Side
          852083 - Preserve Formants, Mid/Side
          852084 - Independent Phase
          852085 - Preserve Formants, Independent Phase
          852086 - Mid/Side, Independent Phase
          852087 - Preserve Formants, Mid/Side, Independent Phase
          852088 - Time Domain Smoothing
          852089 - Preserve Formants, Time Domain Smoothing
          852090 - Mid/Side, Time Domain Smoothing
          852091 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852092 - Independent Phase, Time Domain Smoothing
          852093 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852094 - Mid/Side, Independent Phase, Time Domain Smoothing
          852095 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft
          852096 - nothing
          852097 - Preserve Formants
          852098 - Mid/Side
          852099 - Preserve Formants, Mid/Side
          852100 - Independent Phase
          852101 - Preserve Formants, Independent Phase
          852102 - Mid/Side, Independent Phase
          852103 - Preserve Formants, Mid/Side, Independent Phase
          852104 - Time Domain Smoothing
          852105 - Preserve Formants, Time Domain Smoothing
          852106 - Mid/Side, Time Domain Smoothing
          852107 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852108 - Independent Phase, Time Domain Smoothing
          852109 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852110 - Mid/Side, Independent Phase, Time Domain Smoothing
          852111 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ
          852112 - nothing
          852113 - Preserve Formants
          852114 - Mid/Side
          852115 - Preserve Formants, Mid/Side
          852116 - Independent Phase
          852117 - Preserve Formants, Independent Phase
          852118 - Mid/Side, Independent Phase
          852119 - Preserve Formants, Mid/Side, Independent Phase
          852120 - Time Domain Smoothing
          852121 - Preserve Formants, Time Domain Smoothing
          852122 - Mid/Side, Time Domain Smoothing
          852123 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852124 - Independent Phase, Time Domain Smoothing
          852125 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852126 - Mid/Side, Independent Phase, Time Domain Smoothing
          852127 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ
          852128 - nothing
          852129 - Preserve Formants
          852130 - Mid/Side
          852131 - Preserve Formants, Mid/Side
          852132 - Independent Phase
          852133 - Preserve Formants, Independent Phase
          852134 - Mid/Side, Independent Phase
          852135 - Preserve Formants, Mid/Side, Independent Phase
          852136 - Time Domain Smoothing
          852137 - Preserve Formants, Time Domain Smoothing
          852138 - Mid/Side, Time Domain Smoothing
          852139 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852140 - Independent Phase, Time Domain Smoothing
          852141 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852142 - Mid/Side, Independent Phase, Time Domain Smoothing
          852143 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ
          852144 - nothing
          852145 - Preserve Formants
          852146 - Mid/Side
          852147 - Preserve Formants, Mid/Side
          852148 - Independent Phase
          852149 - Preserve Formants, Independent Phase
          852150 - Mid/Side, Independent Phase
          852151 - Preserve Formants, Mid/Side, Independent Phase
          852152 - Time Domain Smoothing
          852153 - Preserve Formants, Time Domain Smoothing
          852154 - Mid/Side, Time Domain Smoothing
          852155 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852156 - Independent Phase, Time Domain Smoothing
          852157 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852158 - Mid/Side, Independent Phase, Time Domain Smoothing
          852159 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ
          852160 - nothing
          852161 - Preserve Formants
          852162 - Mid/Side
          852163 - Preserve Formants, Mid/Side
          852164 - Independent Phase
          852165 - Preserve Formants, Independent Phase
          852166 - Mid/Side, Independent Phase
          852167 - Preserve Formants, Mid/Side, Independent Phase
          852168 - Time Domain Smoothing
          852169 - Preserve Formants, Time Domain Smoothing
          852170 - Mid/Side, Time Domain Smoothing
          852171 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852172 - Independent Phase, Time Domain Smoothing
          852173 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852174 - Mid/Side, Independent Phase, Time Domain Smoothing
          852175 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ
          852176 - nothing
          852177 - Preserve Formants
          852178 - Mid/Side
          852179 - Preserve Formants, Mid/Side
          852180 - Independent Phase
          852181 - Preserve Formants, Independent Phase
          852182 - Mid/Side, Independent Phase
          852183 - Preserve Formants, Mid/Side, Independent Phase
          852184 - Time Domain Smoothing
          852185 - Preserve Formants, Time Domain Smoothing
          852186 - Mid/Side, Time Domain Smoothing
          852187 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852188 - Independent Phase, Time Domain Smoothing
          852189 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852190 - Mid/Side, Independent Phase, Time Domain Smoothing
          852191 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ
          852192 - nothing
          852193 - Preserve Formants
          852194 - Mid/Side
          852195 - Preserve Formants, Mid/Side
          852196 - Independent Phase
          852197 - Preserve Formants, Independent Phase
          852198 - Mid/Side, Independent Phase
          852199 - Preserve Formants, Mid/Side, Independent Phase
          852200 - Time Domain Smoothing
          852201 - Preserve Formants, Time Domain Smoothing
          852202 - Mid/Side, Time Domain Smoothing
          852203 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852204 - Independent Phase, Time Domain Smoothing
          852205 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852206 - Mid/Side, Independent Phase, Time Domain Smoothing
          852207 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ
          852208 - nothing
          852209 - Preserve Formants
          852210 - Mid/Side
          852211 - Preserve Formants, Mid/Side
          852212 - Independent Phase
          852213 - Preserve Formants, Independent Phase
          852214 - Mid/Side, Independent Phase
          852215 - Preserve Formants, Mid/Side, Independent Phase
          852216 - Time Domain Smoothing
          852217 - Preserve Formants, Time Domain Smoothing
          852218 - Mid/Side, Time Domain Smoothing
          852219 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852220 - Independent Phase, Time Domain Smoothing
          852221 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852222 - Mid/Side, Independent Phase, Time Domain Smoothing
          852223 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ
          852224 - nothing
          852225 - Preserve Formants
          852226 - Mid/Side
          852227 - Preserve Formants, Mid/Side
          852228 - Independent Phase
          852229 - Preserve Formants, Independent Phase
          852230 - Mid/Side, Independent Phase
          852231 - Preserve Formants, Mid/Side, Independent Phase
          852232 - Time Domain Smoothing
          852233 - Preserve Formants, Time Domain Smoothing
          852234 - Mid/Side, Time Domain Smoothing
          852235 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852236 - Independent Phase, Time Domain Smoothing
          852237 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852238 - Mid/Side, Independent Phase, Time Domain Smoothing
          852239 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ
          852240 - nothing
          852241 - Preserve Formants
          852242 - Mid/Side
          852243 - Preserve Formants, Mid/Side
          852244 - Independent Phase
          852245 - Preserve Formants, Independent Phase
          852246 - Mid/Side, Independent Phase
          852247 - Preserve Formants, Mid/Side, Independent Phase
          852248 - Time Domain Smoothing
          852249 - Preserve Formants, Time Domain Smoothing
          852250 - Mid/Side, Time Domain Smoothing
          852251 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852252 - Independent Phase, Time Domain Smoothing
          852253 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852254 - Mid/Side, Independent Phase, Time Domain Smoothing
          852255 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent
          852256 - nothing
          852257 - Preserve Formants
          852258 - Mid/Side
          852259 - Preserve Formants, Mid/Side
          852260 - Independent Phase
          852261 - Preserve Formants, Independent Phase
          852262 - Mid/Side, Independent Phase
          852263 - Preserve Formants, Mid/Side, Independent Phase
          852264 - Time Domain Smoothing
          852265 - Preserve Formants, Time Domain Smoothing
          852266 - Mid/Side, Time Domain Smoothing
          852267 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852268 - Independent Phase, Time Domain Smoothing
          852269 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852270 - Mid/Side, Independent Phase, Time Domain Smoothing
          852271 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent
          852272 - nothing
          852273 - Preserve Formants
          852274 - Mid/Side
          852275 - Preserve Formants, Mid/Side
          852276 - Independent Phase
          852277 - Preserve Formants, Independent Phase
          852278 - Mid/Side, Independent Phase
          852279 - Preserve Formants, Mid/Side, Independent Phase
          852280 - Time Domain Smoothing
          852281 - Preserve Formants, Time Domain Smoothing
          852282 - Mid/Side, Time Domain Smoothing
          852283 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852284 - Independent Phase, Time Domain Smoothing
          852285 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852286 - Mid/Side, Independent Phase, Time Domain Smoothing
          852287 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent
          852288 - nothing
          852289 - Preserve Formants
          852290 - Mid/Side
          852291 - Preserve Formants, Mid/Side
          852292 - Independent Phase
          852293 - Preserve Formants, Independent Phase
          852294 - Mid/Side, Independent Phase
          852295 - Preserve Formants, Mid/Side, Independent Phase
          852296 - Time Domain Smoothing
          852297 - Preserve Formants, Time Domain Smoothing
          852298 - Mid/Side, Time Domain Smoothing
          852299 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852300 - Independent Phase, Time Domain Smoothing
          852301 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852302 - Mid/Side, Independent Phase, Time Domain Smoothing
          852303 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent
          852304 - nothing
          852305 - Preserve Formants
          852306 - Mid/Side
          852307 - Preserve Formants, Mid/Side
          852308 - Independent Phase
          852309 - Preserve Formants, Independent Phase
          852310 - Mid/Side, Independent Phase
          852311 - Preserve Formants, Mid/Side, Independent Phase
          852312 - Time Domain Smoothing
          852313 - Preserve Formants, Time Domain Smoothing
          852314 - Mid/Side, Time Domain Smoothing
          852315 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852316 - Independent Phase, Time Domain Smoothing
          852317 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852318 - Mid/Side, Independent Phase, Time Domain Smoothing
          852319 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent
          852320 - nothing
          852321 - Preserve Formants
          852322 - Mid/Side
          852323 - Preserve Formants, Mid/Side
          852324 - Independent Phase
          852325 - Preserve Formants, Independent Phase
          852326 - Mid/Side, Independent Phase
          852327 - Preserve Formants, Mid/Side, Independent Phase
          852328 - Time Domain Smoothing
          852329 - Preserve Formants, Time Domain Smoothing
          852330 - Mid/Side, Time Domain Smoothing
          852331 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852332 - Independent Phase, Time Domain Smoothing
          852333 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852334 - Mid/Side, Independent Phase, Time Domain Smoothing
          852335 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent
          852336 - nothing
          852337 - Preserve Formants
          852338 - Mid/Side
          852339 - Preserve Formants, Mid/Side
          852340 - Independent Phase
          852341 - Preserve Formants, Independent Phase
          852342 - Mid/Side, Independent Phase
          852343 - Preserve Formants, Mid/Side, Independent Phase
          852344 - Time Domain Smoothing
          852345 - Preserve Formants, Time Domain Smoothing
          852346 - Mid/Side, Time Domain Smoothing
          852347 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852348 - Independent Phase, Time Domain Smoothing
          852349 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852350 - Mid/Side, Independent Phase, Time Domain Smoothing
          852351 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent
          852352 - nothing
          852353 - Preserve Formants
          852354 - Mid/Side
          852355 - Preserve Formants, Mid/Side
          852356 - Independent Phase
          852357 - Preserve Formants, Independent Phase
          852358 - Mid/Side, Independent Phase
          852359 - Preserve Formants, Mid/Side, Independent Phase
          852360 - Time Domain Smoothing
          852361 - Preserve Formants, Time Domain Smoothing
          852362 - Mid/Side, Time Domain Smoothing
          852363 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852364 - Independent Phase, Time Domain Smoothing
          852365 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852366 - Mid/Side, Independent Phase, Time Domain Smoothing
          852367 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent
          852368 - nothing
          852369 - Preserve Formants
          852370 - Mid/Side
          852371 - Preserve Formants, Mid/Side
          852372 - Independent Phase
          852373 - Preserve Formants, Independent Phase
          852374 - Mid/Side, Independent Phase
          852375 - Preserve Formants, Mid/Side, Independent Phase
          852376 - Time Domain Smoothing
          852377 - Preserve Formants, Time Domain Smoothing
          852378 - Mid/Side, Time Domain Smoothing
          852379 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852380 - Independent Phase, Time Domain Smoothing
          852381 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852382 - Mid/Side, Independent Phase, Time Domain Smoothing
          852383 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent
          852384 - nothing
          852385 - Preserve Formants
          852386 - Mid/Side
          852387 - Preserve Formants, Mid/Side
          852388 - Independent Phase
          852389 - Preserve Formants, Independent Phase
          852390 - Mid/Side, Independent Phase
          852391 - Preserve Formants, Mid/Side, Independent Phase
          852392 - Time Domain Smoothing
          852393 - Preserve Formants, Time Domain Smoothing
          852394 - Mid/Side, Time Domain Smoothing
          852395 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852396 - Independent Phase, Time Domain Smoothing
          852397 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852398 - Mid/Side, Independent Phase, Time Domain Smoothing
          852399 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Short
          852400 - nothing
          852401 - Preserve Formants
          852402 - Mid/Side
          852403 - Preserve Formants, Mid/Side
          852404 - Independent Phase
          852405 - Preserve Formants, Independent Phase
          852406 - Mid/Side, Independent Phase
          852407 - Preserve Formants, Mid/Side, Independent Phase
          852408 - Time Domain Smoothing
          852409 - Preserve Formants, Time Domain Smoothing
          852410 - Mid/Side, Time Domain Smoothing
          852411 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852412 - Independent Phase, Time Domain Smoothing
          852413 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852414 - Mid/Side, Independent Phase, Time Domain Smoothing
          852415 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Short
          852416 - nothing
          852417 - Preserve Formants
          852418 - Mid/Side
          852419 - Preserve Formants, Mid/Side
          852420 - Independent Phase
          852421 - Preserve Formants, Independent Phase
          852422 - Mid/Side, Independent Phase
          852423 - Preserve Formants, Mid/Side, Independent Phase
          852424 - Time Domain Smoothing
          852425 - Preserve Formants, Time Domain Smoothing
          852426 - Mid/Side, Time Domain Smoothing
          852427 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852428 - Independent Phase, Time Domain Smoothing
          852429 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852430 - Mid/Side, Independent Phase, Time Domain Smoothing
          852431 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Short
          852432 - nothing
          852433 - Preserve Formants
          852434 - Mid/Side
          852435 - Preserve Formants, Mid/Side
          852436 - Independent Phase
          852437 - Preserve Formants, Independent Phase
          852438 - Mid/Side, Independent Phase
          852439 - Preserve Formants, Mid/Side, Independent Phase
          852440 - Time Domain Smoothing
          852441 - Preserve Formants, Time Domain Smoothing
          852442 - Mid/Side, Time Domain Smoothing
          852443 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852444 - Independent Phase, Time Domain Smoothing
          852445 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852446 - Mid/Side, Independent Phase, Time Domain Smoothing
          852447 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Short
          852448 - nothing
          852449 - Preserve Formants
          852450 - Mid/Side
          852451 - Preserve Formants, Mid/Side
          852452 - Independent Phase
          852453 - Preserve Formants, Independent Phase
          852454 - Mid/Side, Independent Phase
          852455 - Preserve Formants, Mid/Side, Independent Phase
          852456 - Time Domain Smoothing
          852457 - Preserve Formants, Time Domain Smoothing
          852458 - Mid/Side, Time Domain Smoothing
          852459 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852460 - Independent Phase, Time Domain Smoothing
          852461 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852462 - Mid/Side, Independent Phase, Time Domain Smoothing
          852463 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Short
          852464 - nothing
          852465 - Preserve Formants
          852466 - Mid/Side
          852467 - Preserve Formants, Mid/Side
          852468 - Independent Phase
          852469 - Preserve Formants, Independent Phase
          852470 - Mid/Side, Independent Phase
          852471 - Preserve Formants, Mid/Side, Independent Phase
          852472 - Time Domain Smoothing
          852473 - Preserve Formants, Time Domain Smoothing
          852474 - Mid/Side, Time Domain Smoothing
          852475 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852476 - Independent Phase, Time Domain Smoothing
          852477 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852478 - Mid/Side, Independent Phase, Time Domain Smoothing
          852479 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Short
          852480 - nothing
          852481 - Preserve Formants
          852482 - Mid/Side
          852483 - Preserve Formants, Mid/Side
          852484 - Independent Phase
          852485 - Preserve Formants, Independent Phase
          852486 - Mid/Side, Independent Phase
          852487 - Preserve Formants, Mid/Side, Independent Phase
          852488 - Time Domain Smoothing
          852489 - Preserve Formants, Time Domain Smoothing
          852490 - Mid/Side, Time Domain Smoothing
          852491 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852492 - Independent Phase, Time Domain Smoothing
          852493 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852494 - Mid/Side, Independent Phase, Time Domain Smoothing
          852495 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Short
          852496 - nothing
          852497 - Preserve Formants
          852498 - Mid/Side
          852499 - Preserve Formants, Mid/Side
          852500 - Independent Phase
          852501 - Preserve Formants, Independent Phase
          852502 - Mid/Side, Independent Phase
          852503 - Preserve Formants, Mid/Side, Independent Phase
          852504 - Time Domain Smoothing
          852505 - Preserve Formants, Time Domain Smoothing
          852506 - Mid/Side, Time Domain Smoothing
          852507 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852508 - Independent Phase, Time Domain Smoothing
          852509 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852510 - Mid/Side, Independent Phase, Time Domain Smoothing
          852511 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Short
          852512 - nothing
          852513 - Preserve Formants
          852514 - Mid/Side
          852515 - Preserve Formants, Mid/Side
          852516 - Independent Phase
          852517 - Preserve Formants, Independent Phase
          852518 - Mid/Side, Independent Phase
          852519 - Preserve Formants, Mid/Side, Independent Phase
          852520 - Time Domain Smoothing
          852521 - Preserve Formants, Time Domain Smoothing
          852522 - Mid/Side, Time Domain Smoothing
          852523 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852524 - Independent Phase, Time Domain Smoothing
          852525 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852526 - Mid/Side, Independent Phase, Time Domain Smoothing
          852527 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Short
          852528 - nothing
          852529 - Preserve Formants
          852530 - Mid/Side
          852531 - Preserve Formants, Mid/Side
          852532 - Independent Phase
          852533 - Preserve Formants, Independent Phase
          852534 - Mid/Side, Independent Phase
          852535 - Preserve Formants, Mid/Side, Independent Phase
          852536 - Time Domain Smoothing
          852537 - Preserve Formants, Time Domain Smoothing
          852538 - Mid/Side, Time Domain Smoothing
          852539 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852540 - Independent Phase, Time Domain Smoothing
          852541 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852542 - Mid/Side, Independent Phase, Time Domain Smoothing
          852543 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Short
          852544 - nothing
          852545 - Preserve Formants
          852546 - Mid/Side
          852547 - Preserve Formants, Mid/Side
          852548 - Independent Phase
          852549 - Preserve Formants, Independent Phase
          852550 - Mid/Side, Independent Phase
          852551 - Preserve Formants, Mid/Side, Independent Phase
          852552 - Time Domain Smoothing
          852553 - Preserve Formants, Time Domain Smoothing
          852554 - Mid/Side, Time Domain Smoothing
          852555 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852556 - Independent Phase, Time Domain Smoothing
          852557 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852558 - Mid/Side, Independent Phase, Time Domain Smoothing
          852559 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Short
          852560 - nothing
          852561 - Preserve Formants
          852562 - Mid/Side
          852563 - Preserve Formants, Mid/Side
          852564 - Independent Phase
          852565 - Preserve Formants, Independent Phase
          852566 - Mid/Side, Independent Phase
          852567 - Preserve Formants, Mid/Side, Independent Phase
          852568 - Time Domain Smoothing
          852569 - Preserve Formants, Time Domain Smoothing
          852570 - Mid/Side, Time Domain Smoothing
          852571 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852572 - Independent Phase, Time Domain Smoothing
          852573 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852574 - Mid/Side, Independent Phase, Time Domain Smoothing
          852575 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Short
          852576 - nothing
          852577 - Preserve Formants
          852578 - Mid/Side
          852579 - Preserve Formants, Mid/Side
          852580 - Independent Phase
          852581 - Preserve Formants, Independent Phase
          852582 - Mid/Side, Independent Phase
          852583 - Preserve Formants, Mid/Side, Independent Phase
          852584 - Time Domain Smoothing
          852585 - Preserve Formants, Time Domain Smoothing
          852586 - Mid/Side, Time Domain Smoothing
          852587 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852588 - Independent Phase, Time Domain Smoothing
          852589 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852590 - Mid/Side, Independent Phase, Time Domain Smoothing
          852591 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852592 - nothing
          852593 - Preserve Formants
          852594 - Mid/Side
          852595 - Preserve Formants, Mid/Side
          852596 - Independent Phase
          852597 - Preserve Formants, Independent Phase
          852598 - Mid/Side, Independent Phase
          852599 - Preserve Formants, Mid/Side, Independent Phase
          852600 - Time Domain Smoothing
          852601 - Preserve Formants, Time Domain Smoothing
          852602 - Mid/Side, Time Domain Smoothing
          852603 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852604 - Independent Phase, Time Domain Smoothing
          852605 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852606 - Mid/Side, Independent Phase, Time Domain Smoothing
          852607 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852608 - nothing
          852609 - Preserve Formants
          852610 - Mid/Side
          852611 - Preserve Formants, Mid/Side
          852612 - Independent Phase
          852613 - Preserve Formants, Independent Phase
          852614 - Mid/Side, Independent Phase
          852615 - Preserve Formants, Mid/Side, Independent Phase
          852616 - Time Domain Smoothing
          852617 - Preserve Formants, Time Domain Smoothing
          852618 - Mid/Side, Time Domain Smoothing
          852619 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852620 - Independent Phase, Time Domain Smoothing
          852621 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852622 - Mid/Side, Independent Phase, Time Domain Smoothing
          852623 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852624 - nothing
          852625 - Preserve Formants
          852626 - Mid/Side
          852627 - Preserve Formants, Mid/Side
          852628 - Independent Phase
          852629 - Preserve Formants, Independent Phase
          852630 - Mid/Side, Independent Phase
          852631 - Preserve Formants, Mid/Side, Independent Phase
          852632 - Time Domain Smoothing
          852633 - Preserve Formants, Time Domain Smoothing
          852634 - Mid/Side, Time Domain Smoothing
          852635 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852636 - Independent Phase, Time Domain Smoothing
          852637 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852638 - Mid/Side, Independent Phase, Time Domain Smoothing
          852639 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Short
          852640 - nothing
          852641 - Preserve Formants
          852642 - Mid/Side
          852643 - Preserve Formants, Mid/Side
          852644 - Independent Phase
          852645 - Preserve Formants, Independent Phase
          852646 - Mid/Side, Independent Phase
          852647 - Preserve Formants, Mid/Side, Independent Phase
          852648 - Time Domain Smoothing
          852649 - Preserve Formants, Time Domain Smoothing
          852650 - Mid/Side, Time Domain Smoothing
          852651 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852652 - Independent Phase, Time Domain Smoothing
          852653 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852654 - Mid/Side, Independent Phase, Time Domain Smoothing
          852655 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852656 - nothing
          852657 - Preserve Formants
          852658 - Mid/Side
          852659 - Preserve Formants, Mid/Side
          852660 - Independent Phase
          852661 - Preserve Formants, Independent Phase
          852662 - Mid/Side, Independent Phase
          852663 - Preserve Formants, Mid/Side, Independent Phase
          852664 - Time Domain Smoothing
          852665 - Preserve Formants, Time Domain Smoothing
          852666 - Mid/Side, Time Domain Smoothing
          852667 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852668 - Independent Phase, Time Domain Smoothing
          852669 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852670 - Mid/Side, Independent Phase, Time Domain Smoothing
          852671 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852672 - nothing
          852673 - Preserve Formants
          852674 - Mid/Side
          852675 - Preserve Formants, Mid/Side
          852676 - Independent Phase
          852677 - Preserve Formants, Independent Phase
          852678 - Mid/Side, Independent Phase
          852679 - Preserve Formants, Mid/Side, Independent Phase
          852680 - Time Domain Smoothing
          852681 - Preserve Formants, Time Domain Smoothing
          852682 - Mid/Side, Time Domain Smoothing
          852683 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852684 - Independent Phase, Time Domain Smoothing
          852685 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852686 - Mid/Side, Independent Phase, Time Domain Smoothing
          852687 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Short
          852688 - nothing
          852689 - Preserve Formants
          852690 - Mid/Side
          852691 - Preserve Formants, Mid/Side
          852692 - Independent Phase
          852693 - Preserve Formants, Independent Phase
          852694 - Mid/Side, Independent Phase
          852695 - Preserve Formants, Mid/Side, Independent Phase
          852696 - Time Domain Smoothing
          852697 - Preserve Formants, Time Domain Smoothing
          852698 - Mid/Side, Time Domain Smoothing
          852699 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852700 - Independent Phase, Time Domain Smoothing
          852701 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852702 - Mid/Side, Independent Phase, Time Domain Smoothing
          852703 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Short
          852704 - nothing
          852705 - Preserve Formants
          852706 - Mid/Side
          852707 - Preserve Formants, Mid/Side
          852708 - Independent Phase
          852709 - Preserve Formants, Independent Phase
          852710 - Mid/Side, Independent Phase
          852711 - Preserve Formants, Mid/Side, Independent Phase
          852712 - Time Domain Smoothing
          852713 - Preserve Formants, Time Domain Smoothing
          852714 - Mid/Side, Time Domain Smoothing
          852715 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852716 - Independent Phase, Time Domain Smoothing
          852717 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852718 - Mid/Side, Independent Phase, Time Domain Smoothing
          852719 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Short
          852720 - nothing
          852721 - Preserve Formants
          852722 - Mid/Side
          852723 - Preserve Formants, Mid/Side
          852724 - Independent Phase
          852725 - Preserve Formants, Independent Phase
          852726 - Mid/Side, Independent Phase
          852727 - Preserve Formants, Mid/Side, Independent Phase
          852728 - Time Domain Smoothing
          852729 - Preserve Formants, Time Domain Smoothing
          852730 - Mid/Side, Time Domain Smoothing
          852731 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852732 - Independent Phase, Time Domain Smoothing
          852733 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852734 - Mid/Side, Independent Phase, Time Domain Smoothing
          852735 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852736 - nothing
          852737 - Preserve Formants
          852738 - Mid/Side
          852739 - Preserve Formants, Mid/Side
          852740 - Independent Phase
          852741 - Preserve Formants, Independent Phase
          852742 - Mid/Side, Independent Phase
          852743 - Preserve Formants, Mid/Side, Independent Phase
          852744 - Time Domain Smoothing
          852745 - Preserve Formants, Time Domain Smoothing
          852746 - Mid/Side, Time Domain Smoothing
          852747 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852748 - Independent Phase, Time Domain Smoothing
          852749 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852750 - Mid/Side, Independent Phase, Time Domain Smoothing
          852751 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852752 - nothing
          852753 - Preserve Formants
          852754 - Mid/Side
          852755 - Preserve Formants, Mid/Side
          852756 - Independent Phase
          852757 - Preserve Formants, Independent Phase
          852758 - Mid/Side, Independent Phase
          852759 - Preserve Formants, Mid/Side, Independent Phase
          852760 - Time Domain Smoothing
          852761 - Preserve Formants, Time Domain Smoothing
          852762 - Mid/Side, Time Domain Smoothing
          852763 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852764 - Independent Phase, Time Domain Smoothing
          852765 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852766 - Mid/Side, Independent Phase, Time Domain Smoothing
          852767 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852768 - nothing
          852769 - Preserve Formants
          852770 - Mid/Side
          852771 - Preserve Formants, Mid/Side
          852772 - Independent Phase
          852773 - Preserve Formants, Independent Phase
          852774 - Mid/Side, Independent Phase
          852775 - Preserve Formants, Mid/Side, Independent Phase
          852776 - Time Domain Smoothing
          852777 - Preserve Formants, Time Domain Smoothing
          852778 - Mid/Side, Time Domain Smoothing
          852779 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852780 - Independent Phase, Time Domain Smoothing
          852781 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852782 - Mid/Side, Independent Phase, Time Domain Smoothing
          852783 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Short
          852784 - nothing
          852785 - Preserve Formants
          852786 - Mid/Side
          852787 - Preserve Formants, Mid/Side
          852788 - Independent Phase
          852789 - Preserve Formants, Independent Phase
          852790 - Mid/Side, Independent Phase
          852791 - Preserve Formants, Mid/Side, Independent Phase
          852792 - Time Domain Smoothing
          852793 - Preserve Formants, Time Domain Smoothing
          852794 - Mid/Side, Time Domain Smoothing
          852795 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852796 - Independent Phase, Time Domain Smoothing
          852797 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852798 - Mid/Side, Independent Phase, Time Domain Smoothing
          852799 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852800 - nothing
          852801 - Preserve Formants
          852802 - Mid/Side
          852803 - Preserve Formants, Mid/Side
          852804 - Independent Phase
          852805 - Preserve Formants, Independent Phase
          852806 - Mid/Side, Independent Phase
          852807 - Preserve Formants, Mid/Side, Independent Phase
          852808 - Time Domain Smoothing
          852809 - Preserve Formants, Time Domain Smoothing
          852810 - Mid/Side, Time Domain Smoothing
          852811 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852812 - Independent Phase, Time Domain Smoothing
          852813 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852814 - Mid/Side, Independent Phase, Time Domain Smoothing
          852815 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852816 - nothing
          852817 - Preserve Formants
          852818 - Mid/Side
          852819 - Preserve Formants, Mid/Side
          852820 - Independent Phase
          852821 - Preserve Formants, Independent Phase
          852822 - Mid/Side, Independent Phase
          852823 - Preserve Formants, Mid/Side, Independent Phase
          852824 - Time Domain Smoothing
          852825 - Preserve Formants, Time Domain Smoothing
          852826 - Mid/Side, Time Domain Smoothing
          852827 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852828 - Independent Phase, Time Domain Smoothing
          852829 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852830 - Mid/Side, Independent Phase, Time Domain Smoothing
          852831 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Long
          852832 - nothing
          852833 - Preserve Formants
          852834 - Mid/Side
          852835 - Preserve Formants, Mid/Side
          852836 - Independent Phase
          852837 - Preserve Formants, Independent Phase
          852838 - Mid/Side, Independent Phase
          852839 - Preserve Formants, Mid/Side, Independent Phase
          852840 - Time Domain Smoothing
          852841 - Preserve Formants, Time Domain Smoothing
          852842 - Mid/Side, Time Domain Smoothing
          852843 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852844 - Independent Phase, Time Domain Smoothing
          852845 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852846 - Mid/Side, Independent Phase, Time Domain Smoothing
          852847 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Long
          852848 - nothing
          852849 - Preserve Formants
          852850 - Mid/Side
          852851 - Preserve Formants, Mid/Side
          852852 - Independent Phase
          852853 - Preserve Formants, Independent Phase
          852854 - Mid/Side, Independent Phase
          852855 - Preserve Formants, Mid/Side, Independent Phase
          852856 - Time Domain Smoothing
          852857 - Preserve Formants, Time Domain Smoothing
          852858 - Mid/Side, Time Domain Smoothing
          852859 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852860 - Independent Phase, Time Domain Smoothing
          852861 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852862 - Mid/Side, Independent Phase, Time Domain Smoothing
          852863 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Long
          852864 - nothing
          852865 - Preserve Formants
          852866 - Mid/Side
          852867 - Preserve Formants, Mid/Side
          852868 - Independent Phase
          852869 - Preserve Formants, Independent Phase
          852870 - Mid/Side, Independent Phase
          852871 - Preserve Formants, Mid/Side, Independent Phase
          852872 - Time Domain Smoothing
          852873 - Preserve Formants, Time Domain Smoothing
          852874 - Mid/Side, Time Domain Smoothing
          852875 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852876 - Independent Phase, Time Domain Smoothing
          852877 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852878 - Mid/Side, Independent Phase, Time Domain Smoothing
          852879 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Long
          852880 - nothing
          852881 - Preserve Formants
          852882 - Mid/Side
          852883 - Preserve Formants, Mid/Side
          852884 - Independent Phase
          852885 - Preserve Formants, Independent Phase
          852886 - Mid/Side, Independent Phase
          852887 - Preserve Formants, Mid/Side, Independent Phase
          852888 - Time Domain Smoothing
          852889 - Preserve Formants, Time Domain Smoothing
          852890 - Mid/Side, Time Domain Smoothing
          852891 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852892 - Independent Phase, Time Domain Smoothing
          852893 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852894 - Mid/Side, Independent Phase, Time Domain Smoothing
          852895 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Long
          852896 - nothing
          852897 - Preserve Formants
          852898 - Mid/Side
          852899 - Preserve Formants, Mid/Side
          852900 - Independent Phase
          852901 - Preserve Formants, Independent Phase
          852902 - Mid/Side, Independent Phase
          852903 - Preserve Formants, Mid/Side, Independent Phase
          852904 - Time Domain Smoothing
          852905 - Preserve Formants, Time Domain Smoothing
          852906 - Mid/Side, Time Domain Smoothing
          852907 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852908 - Independent Phase, Time Domain Smoothing
          852909 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852910 - Mid/Side, Independent Phase, Time Domain Smoothing
          852911 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Long
          852912 - nothing
          852913 - Preserve Formants
          852914 - Mid/Side
          852915 - Preserve Formants, Mid/Side
          852916 - Independent Phase
          852917 - Preserve Formants, Independent Phase
          852918 - Mid/Side, Independent Phase
          852919 - Preserve Formants, Mid/Side, Independent Phase
          852920 - Time Domain Smoothing
          852921 - Preserve Formants, Time Domain Smoothing
          852922 - Mid/Side, Time Domain Smoothing
          852923 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852924 - Independent Phase, Time Domain Smoothing
          852925 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852926 - Mid/Side, Independent Phase, Time Domain Smoothing
          852927 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Long
          852928 - nothing
          852929 - Preserve Formants
          852930 - Mid/Side
          852931 - Preserve Formants, Mid/Side
          852932 - Independent Phase
          852933 - Preserve Formants, Independent Phase
          852934 - Mid/Side, Independent Phase
          852935 - Preserve Formants, Mid/Side, Independent Phase
          852936 - Time Domain Smoothing
          852937 - Preserve Formants, Time Domain Smoothing
          852938 - Mid/Side, Time Domain Smoothing
          852939 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852940 - Independent Phase, Time Domain Smoothing
          852941 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852942 - Mid/Side, Independent Phase, Time Domain Smoothing
          852943 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Long
          852944 - nothing
          852945 - Preserve Formants
          852946 - Mid/Side
          852947 - Preserve Formants, Mid/Side
          852948 - Independent Phase
          852949 - Preserve Formants, Independent Phase
          852950 - Mid/Side, Independent Phase
          852951 - Preserve Formants, Mid/Side, Independent Phase
          852952 - Time Domain Smoothing
          852953 - Preserve Formants, Time Domain Smoothing
          852954 - Mid/Side, Time Domain Smoothing
          852955 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852956 - Independent Phase, Time Domain Smoothing
          852957 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852958 - Mid/Side, Independent Phase, Time Domain Smoothing
          852959 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Long
          852960 - nothing
          852961 - Preserve Formants
          852962 - Mid/Side
          852963 - Preserve Formants, Mid/Side
          852964 - Independent Phase
          852965 - Preserve Formants, Independent Phase
          852966 - Mid/Side, Independent Phase
          852967 - Preserve Formants, Mid/Side, Independent Phase
          852968 - Time Domain Smoothing
          852969 - Preserve Formants, Time Domain Smoothing
          852970 - Mid/Side, Time Domain Smoothing
          852971 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852972 - Independent Phase, Time Domain Smoothing
          852973 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852974 - Mid/Side, Independent Phase, Time Domain Smoothing
          852975 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Long
          852976 - nothing
          852977 - Preserve Formants
          852978 - Mid/Side
          852979 - Preserve Formants, Mid/Side
          852980 - Independent Phase
          852981 - Preserve Formants, Independent Phase
          852982 - Mid/Side, Independent Phase
          852983 - Preserve Formants, Mid/Side, Independent Phase
          852984 - Time Domain Smoothing
          852985 - Preserve Formants, Time Domain Smoothing
          852986 - Mid/Side, Time Domain Smoothing
          852987 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852988 - Independent Phase, Time Domain Smoothing
          852989 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852990 - Mid/Side, Independent Phase, Time Domain Smoothing
          852991 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Long
          852992 - nothing
          852993 - Preserve Formants
          852994 - Mid/Side
          852995 - Preserve Formants, Mid/Side
          852996 - Independent Phase
          852997 - Preserve Formants, Independent Phase
          852998 - Mid/Side, Independent Phase
          852999 - Preserve Formants, Mid/Side, Independent Phase
          853000 - Time Domain Smoothing
          853001 - Preserve Formants, Time Domain Smoothing
          853002 - Mid/Side, Time Domain Smoothing
          853003 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853004 - Independent Phase, Time Domain Smoothing
          853005 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853006 - Mid/Side, Independent Phase, Time Domain Smoothing
          853007 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Long
          853008 - nothing
          853009 - Preserve Formants
          853010 - Mid/Side
          853011 - Preserve Formants, Mid/Side
          853012 - Independent Phase
          853013 - Preserve Formants, Independent Phase
          853014 - Mid/Side, Independent Phase
          853015 - Preserve Formants, Mid/Side, Independent Phase
          853016 - Time Domain Smoothing
          853017 - Preserve Formants, Time Domain Smoothing
          853018 - Mid/Side, Time Domain Smoothing
          853019 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853020 - Independent Phase, Time Domain Smoothing
          853021 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853022 - Mid/Side, Independent Phase, Time Domain Smoothing
          853023 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853024 - nothing
          853025 - Preserve Formants
          853026 - Mid/Side
          853027 - Preserve Formants, Mid/Side
          853028 - Independent Phase
          853029 - Preserve Formants, Independent Phase
          853030 - Mid/Side, Independent Phase
          853031 - Preserve Formants, Mid/Side, Independent Phase
          853032 - Time Domain Smoothing
          853033 - Preserve Formants, Time Domain Smoothing
          853034 - Mid/Side, Time Domain Smoothing
          853035 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853036 - Independent Phase, Time Domain Smoothing
          853037 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853038 - Mid/Side, Independent Phase, Time Domain Smoothing
          853039 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853040 - nothing
          853041 - Preserve Formants
          853042 - Mid/Side
          853043 - Preserve Formants, Mid/Side
          853044 - Independent Phase
          853045 - Preserve Formants, Independent Phase
          853046 - Mid/Side, Independent Phase
          853047 - Preserve Formants, Mid/Side, Independent Phase
          853048 - Time Domain Smoothing
          853049 - Preserve Formants, Time Domain Smoothing
          853050 - Mid/Side, Time Domain Smoothing
          853051 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853052 - Independent Phase, Time Domain Smoothing
          853053 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853054 - Mid/Side, Independent Phase, Time Domain Smoothing
          853055 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853056 - nothing
          853057 - Preserve Formants
          853058 - Mid/Side
          853059 - Preserve Formants, Mid/Side
          853060 - Independent Phase
          853061 - Preserve Formants, Independent Phase
          853062 - Mid/Side, Independent Phase
          853063 - Preserve Formants, Mid/Side, Independent Phase
          853064 - Time Domain Smoothing
          853065 - Preserve Formants, Time Domain Smoothing
          853066 - Mid/Side, Time Domain Smoothing
          853067 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853068 - Independent Phase, Time Domain Smoothing
          853069 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853070 - Mid/Side, Independent Phase, Time Domain Smoothing
          853071 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Long
          853072 - nothing
          853073 - Preserve Formants
          853074 - Mid/Side
          853075 - Preserve Formants, Mid/Side
          853076 - Independent Phase
          853077 - Preserve Formants, Independent Phase
          853078 - Mid/Side, Independent Phase
          853079 - Preserve Formants, Mid/Side, Independent Phase
          853080 - Time Domain Smoothing
          853081 - Preserve Formants, Time Domain Smoothing
          853082 - Mid/Side, Time Domain Smoothing
          853083 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853084 - Independent Phase, Time Domain Smoothing
          853085 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853086 - Mid/Side, Independent Phase, Time Domain Smoothing
          853087 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853088 - nothing
          853089 - Preserve Formants
          853090 - Mid/Side
          853091 - Preserve Formants, Mid/Side
          853092 - Independent Phase
          853093 - Preserve Formants, Independent Phase
          853094 - Mid/Side, Independent Phase
          853095 - Preserve Formants, Mid/Side, Independent Phase
          853096 - Time Domain Smoothing
          853097 - Preserve Formants, Time Domain Smoothing
          853098 - Mid/Side, Time Domain Smoothing
          853099 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853100 - Independent Phase, Time Domain Smoothing
          853101 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853102 - Mid/Side, Independent Phase, Time Domain Smoothing
          853103 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853104 - nothing
          853105 - Preserve Formants
          853106 - Mid/Side
          853107 - Preserve Formants, Mid/Side
          853108 - Independent Phase
          853109 - Preserve Formants, Independent Phase
          853110 - Mid/Side, Independent Phase
          853111 - Preserve Formants, Mid/Side, Independent Phase
          853112 - Time Domain Smoothing
          853113 - Preserve Formants, Time Domain Smoothing
          853114 - Mid/Side, Time Domain Smoothing
          853115 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853116 - Independent Phase, Time Domain Smoothing
          853117 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853118 - Mid/Side, Independent Phase, Time Domain Smoothing
          853119 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Long
          853120 - nothing
          853121 - Preserve Formants
          853122 - Mid/Side
          853123 - Preserve Formants, Mid/Side
          853124 - Independent Phase
          853125 - Preserve Formants, Independent Phase
          853126 - Mid/Side, Independent Phase
          853127 - Preserve Formants, Mid/Side, Independent Phase
          853128 - Time Domain Smoothing
          853129 - Preserve Formants, Time Domain Smoothing
          853130 - Mid/Side, Time Domain Smoothing
          853131 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853132 - Independent Phase, Time Domain Smoothing
          853133 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853134 - Mid/Side, Independent Phase, Time Domain Smoothing
          853135 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Long
          853136 - nothing
          853137 - Preserve Formants
          853138 - Mid/Side
          853139 - Preserve Formants, Mid/Side
          853140 - Independent Phase
          853141 - Preserve Formants, Independent Phase
          853142 - Mid/Side, Independent Phase
          853143 - Preserve Formants, Mid/Side, Independent Phase
          853144 - Time Domain Smoothing
          853145 - Preserve Formants, Time Domain Smoothing
          853146 - Mid/Side, Time Domain Smoothing
          853147 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853148 - Independent Phase, Time Domain Smoothing
          853149 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853150 - Mid/Side, Independent Phase, Time Domain Smoothing
          853151 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Long
          853152 - nothing
          853153 - Preserve Formants
          853154 - Mid/Side
          853155 - Preserve Formants, Mid/Side
          853156 - Independent Phase
          853157 - Preserve Formants, Independent Phase
          853158 - Mid/Side, Independent Phase
          853159 - Preserve Formants, Mid/Side, Independent Phase
          853160 - Time Domain Smoothing
          853161 - Preserve Formants, Time Domain Smoothing
          853162 - Mid/Side, Time Domain Smoothing
          853163 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853164 - Independent Phase, Time Domain Smoothing
          853165 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853166 - Mid/Side, Independent Phase, Time Domain Smoothing
          853167 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853168 - nothing
          853169 - Preserve Formants
          853170 - Mid/Side
          853171 - Preserve Formants, Mid/Side
          853172 - Independent Phase
          853173 - Preserve Formants, Independent Phase
          853174 - Mid/Side, Independent Phase
          853175 - Preserve Formants, Mid/Side, Independent Phase
          853176 - Time Domain Smoothing
          853177 - Preserve Formants, Time Domain Smoothing
          853178 - Mid/Side, Time Domain Smoothing
          853179 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853180 - Independent Phase, Time Domain Smoothing
          853181 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853182 - Mid/Side, Independent Phase, Time Domain Smoothing
          853183 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853184 - nothing
          853185 - Preserve Formants
          853186 - Mid/Side
          853187 - Preserve Formants, Mid/Side
          853188 - Independent Phase
          853189 - Preserve Formants, Independent Phase
          853190 - Mid/Side, Independent Phase
          853191 - Preserve Formants, Mid/Side, Independent Phase
          853192 - Time Domain Smoothing
          853193 - Preserve Formants, Time Domain Smoothing
          853194 - Mid/Side, Time Domain Smoothing
          853195 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853196 - Independent Phase, Time Domain Smoothing
          853197 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853198 - Mid/Side, Independent Phase, Time Domain Smoothing
          853199 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853200 - nothing
          853201 - Preserve Formants
          853202 - Mid/Side
          853203 - Preserve Formants, Mid/Side
          853204 - Independent Phase
          853205 - Preserve Formants, Independent Phase
          853206 - Mid/Side, Independent Phase
          853207 - Preserve Formants, Mid/Side, Independent Phase
          853208 - Time Domain Smoothing
          853209 - Preserve Formants, Time Domain Smoothing
          853210 - Mid/Side, Time Domain Smoothing
          853211 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853212 - Independent Phase, Time Domain Smoothing
          853213 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853214 - Mid/Side, Independent Phase, Time Domain Smoothing
          853215 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Long
          853216 - nothing
          853217 - Preserve Formants
          853218 - Mid/Side
          853219 - Preserve Formants, Mid/Side
          853220 - Independent Phase
          853221 - Preserve Formants, Independent Phase
          853222 - Mid/Side, Independent Phase
          853223 - Preserve Formants, Mid/Side, Independent Phase
          853224 - Time Domain Smoothing
          853225 - Preserve Formants, Time Domain Smoothing
          853226 - Mid/Side, Time Domain Smoothing
          853227 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853228 - Independent Phase, Time Domain Smoothing
          853229 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853230 - Mid/Side, Independent Phase, Time Domain Smoothing
          853231 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853232 - nothing
          853233 - Preserve Formants
          853234 - Mid/Side
          853235 - Preserve Formants, Mid/Side
          853236 - Independent Phase
          853237 - Preserve Formants, Independent Phase
          853238 - Mid/Side, Independent Phase
          853239 - Preserve Formants, Mid/Side, Independent Phase
          853240 - Time Domain Smoothing
          853241 - Preserve Formants, Time Domain Smoothing
          853242 - Mid/Side, Time Domain Smoothing
          853243 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853244 - Independent Phase, Time Domain Smoothing
          853245 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853246 - Mid/Side, Independent Phase, Time Domain Smoothing
          853247 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853248 - nothing
          853249 - Preserve Formants
          853250 - Mid/Side
          853251 - Preserve Formants, Mid/Side
          853252 - Independent Phase
          853253 - Preserve Formants, Independent Phase
          853254 - Mid/Side, Independent Phase
          853255 - Preserve Formants, Mid/Side, Independent Phase
          853256 - Time Domain Smoothing
          853257 - Preserve Formants, Time Domain Smoothing
          853258 - Mid/Side, Time Domain Smoothing
          853259 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853260 - Independent Phase, Time Domain Smoothing
          853261 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853262 - Mid/Side, Independent Phase, Time Domain Smoothing
          853263 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing 
 integer stretch_marker_mode the stretch marker mode
0, Balanced
1, Tonal-optimized
2, Transient-optimized
3, No pre-echo reduction 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_TakeLane

Functioncall:

integer take_lane_state = ultraschall.GetProject_TakeLane(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the take-lane-state from an rpp-project-file or a ProjectStateChunk.

It's the entry TAKELANE

Returns nil in case of error.

Returnvalues:
 integer take_lane_state take-lane-state 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_SampleRate

Functioncall:

integer sample_rate, integer project_sample_rate, integer force_tempo_time_sig = ultraschall.GetProject_SampleRate(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the take-lane-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.

It's the entry SAMPLERATE

Returns nil in case of error.

Returnvalues:
 integer sample_rate Project Sample Rate in Hz 
 integer project_sample_rate Checkbox: Project Sample Rate 
 integer force_tempo_time_sig Checkbox: Force Project Tempo/Time Signature changes to occur on whole samples  

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_TrackMixingDepth

Functioncall:

integer track_mixing_depth = ultraschall.GetProject_TrackMixingDepth(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the track-mixing-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
It's the entry INTMIXMODE

Returns -1 in case of error, nil if it's set to 64bit(default)!

Returnvalues:
 integer track_mixing_depth track mixing depth
nil - 64bit float (default)
1 - 32 bit float
2 - 39 bit integer
3 - 24 bit integer
4 - 16 bit integer
5 - 12 bit integer
6 - 8 bit integer 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_TrackStateChunk

Functioncall:

string trackstatechunk = ultraschall.GetProject_TrackStateChunk(string projectfilename_with_path, integer idx, boolean deletetrackid, optional string ProjectStateChunk)

Description:
Returns an RPPXML-trackstatechunk from an rpp-project-file or a ProjectStateChunk, with tracknumber idx. IDX is 1 for the first track in the project-file, 2 for the second, etc
Returns -1 in case of error.

Use GetProject_NumberOfTracks to get the number of tracks within an rpp-file.

The returned trackstatechunk can be inserted into the current project with InsertTrack_TrackStateChunk.

Returnvalues:
 string trackstatechunk an RPP-XML-Trackstate-chunk, that can be used by functions like reaper.SetTrackStateChunk() 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 integer idx the tracknumber you want to have 
 boolean deletetrackid deletes the trackID in the trackstate-chunk, to avoid possible conflicts within a project, where it shall be imported to 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_NumberOfTracks

Functioncall:

integer number_of_tracks = ultraschall.GetProject_NumberOfTracks(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the number of tracks within an rpp-project-file or a GetProject_NumberOfTracks.
Returns -1 in case of error.

Note: Huge projectfiles with thousands of items may take some seconds to load.

Returnvalues:
 integer number_of_tracks the number of tracks within an projectfile 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 GetProject_Selection

Functioncall:

number start_selection, number end_selection, number start_selection2, number end_selection2 = ultraschall.GetProject_Selection(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the selection-range from an RPP-Projectfile or a ProjectStateChunk.

It's the entry SELECTION

Returns nil in case of error or if no such entry exists.

Returnvalues:
 number start_selection start of the time-selection 
 number end_selection end of the time-selection 
 number start_selection2 start of the time-selection 
 number end_selection2 end of the time-selection 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_RenderQueueDelay

Functioncall:

boolean qdelay_checkstate, integer qdelay_seconds = ultraschall.GetProject_Selection(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the state of the checkbox Delay queued render to allow samples to load-checkbox and the length of the delay.

It's the entry RENDER_QDELAY

Returns nil in case of error or if no such entry exists.

Returnvalues:
 boolean qdelay_checkstate true, the checkbox is checked; false, it is unchecked 
 integer qdelay_seconds the length of the queued-render-delay in seconds 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_QRenderOriginalProject

Functioncall:

string qrender_originalproject_file = ultraschall.GetProject_QRenderOriginalProject(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the original-filename of a queue-render-projectfile. Will return empty string, if the queued-render-project hadn't been saved before it was added to the render-queue.

It's the entry QUEUED_RENDER_ORIGINAL_FILENAME

Returns nil in case of error or if no such entry exists.

Returnvalues:
 string qrender_originalproject_file the original-projectfilename of the queue-render-project 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_QRenderOutFiles

Functioncall:

integer count_outfiles, table QRenderOutFilesList, table QRenderOutFilesListGuid, boolean AutoCloseWhenFinished, boolean AutoIncrementFilename, boolean SaveCopyToOutfile = ultraschall.GetProject_QRenderOutFiles(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the outfiles of the rendered files, stored in a queue-render-projectfile. This includes the path and files of the files, that will be rendered.

It's the entry QUEUED_RENDER_OUTFILE

Returns nil in case of error or if no such entry exists.

Returnvalues:
 integer count_outfiles the number of render-outfiles 
 table QRenderOutFilesList an array with all filenames-with-paths that the rendered files will have;
if the filename contains "-001" or higher, this represents a file for a rendered stem, otherwise it is the one for the master. 
 table QRenderOutFilesListGuid the guids of the rendered outfiles 
 boolean AutoCloseWhenFinished true, the render-dialog will be closed after render is finished; false, the render-dialog keeps open 
 boolean AutoIncrementFilename true, autoincrement filename if the file already exists; false, don't autoincrement filename 
 boolean SaveCopyToOutfile true, save a copy of the project as e.g. "outfile.wav.RPP"; false, don't save a copy of the project 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.40Lua version 5.3 SetProject_RippleState

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RippleState(string projectfilename_with_path, integer ripple_state, optional string ProjectStatechunk)

Description:
Sets the ripple-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer ripple_state 0, no Ripple; 1, Ripple One Track; 2, Ripple All 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_RenderQueueDelay

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderQueueDelay(string projectfilename_with_path, integer renderqdelay, optional string ProjectStatechunk)

Description:
Sets the render-queue-delay-time in an rpp-project-file or a ProjectStateChunk.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer renderqdelay 0 and higher, sets the checkbox "Delay queued render to allow samples to load and the amount of time to wait in seconds
nil, if you want to turn off render-queue-delay in the project/ProjectStateChunk 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_Selection

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_Selection(string projectfilename_with_path, number starttime, number endtime, number starttime2, number endtime2, optional string ProjectStatechunk)

Description:
Sets the ripple-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number starttime start of the selection in seconds 
 number endtime end of the selection in seconds 
 number starttime2 start of the second selection in seconds 
 number endtime2 end of the second selection in seconds 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_GroupOverride

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_GroupOverride(string projectfilename_with_path, integer group_override1, optional string ProjectStateChunk)

Description:
Sets the group-override-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer group_override1 the group-override state 
 integer group_override2 the group-override state 
 integer group_override3 the group-override state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_AutoCrossFade

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_AutoCrossFade(string projectfilename_with_path, integer autocrossfade_state, optional string ProjectStateChunk)

Description:
Sets the autocrossfade-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer autocrossfade_state autocrossfade-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_EnvAttach

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_EnvAttach(string projectfilename_with_path, integer env_attach, optional string ProjectStateChunk)

Description:
Sets the env_attach-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer env_attach env_attach-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_MixerUIFlags

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_MixerUIFlags(string projectfilename_with_path, integer state_bitfield1, integer state_bitfield2, optional string ProjectStateChunk)

Description:
Sets the Mixer-UI-state-flags in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer state_bitfield1 folders, receives, etc
             0 - Show tracks in folders, Auto arrange tracks in mixer
             1 - Show normal top level tracks
             2 - Show Folders
             4 - Group folders to left
             8 - Show tracks that have receives
             16 - Group tracks that have receives to left
             32 - don't show tracks that are in folder
             64 - No Autoarrange tracks in mixer
             128 - ?
             256 - ? 


^ Reaper version 5.40Lua version 5.3 SetProject_PeakGain

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_PeakGain(string projectfilename_with_path, number peakgain_state, optional string ProjectStateChunk)

Description:
Sets the peak-gain-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number peakgain_state peak-gain-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_Feedback

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_Feedback(string projectfilename_with_path, integer feedback_state, optional string ProjectStateChunk)

Description:
Sets the feedback-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer feedback_state feedback-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_PanLaw

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_PanLaw(string projectfilename_with_path, number panlaw_state, optional string ProjectStateChunk)

Description:
Sets the panlaw-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number panlaw_state state of the panlaw, as set in the project-settings->Advanced->Pan law/mode->Pan:law(db). 0.5(-6.02 db) to 1(default +0.0 db) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.941Lua version 5.3 SetProject_ProjOffsets

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_ProjOffsets(string projectfilename_with_path, number start_time, integer start_measure, integer base_ruler_marking_off_this_measure, optional ProjectStateChunk)

Description:
Sets the project-offset-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.

The project-offset, as set in the ProjectSettings -> Project Time Start, Project start measure and Base Ruler Marking Off This Measure-checkbox

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number start_time the project-start-time in seconds 
 integer start_measure the start-measure; starting with 0, unlike in the Project-Settings-window, where the 0 becomes 1 as startmeasure 
 integer base_ruler_marking_off_this_measure 0, checkbox unchecked; 1, checkbox checked 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_MaxProjectLength

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_MaxProjectLength(string projectfilename_with_path, integer limit_project_length, number projectlength_limit, optional string ProjectStateChunk)

Description:
Sets the max-project-length-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer limit_project_length checkbox "Limit project length, stop playback/recording at:" - 0 off, 1 on 
 number projectlength_limit projectlength-limit in seconds 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_Grid

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_Grid(string projectfilename_with_path, integer gridstate1, integer gridstate2, number gridstate3, integer gridstate4, number gridstate5, integer gridstate6, integer gridstate7, number gridstate8, optional string ProjectStateChunk)

Description:
Sets the setproject-grid-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer gridstate1 gridstate1 
 integer gridstate2 gridstate2 
 number gridstate3 gridstate3 
 integer gridstate4 gridstate4 
 number gridstate5 gridstate5 
 integer gridstate6 gridstate6 
 integer gridstate7 gridstate7 
 number gridstate8 gridstate8 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_Timemode

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_Timemode(string projectfilename_with_path, integer timemode1, integer timemode2, integer showntime, integer timemode4, integer timemode5, optional string ProjectStateChunk)

Description:
Sets the timemode-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer ruler_timemode ruler-timemode-state
-1, Use ruler time unit
  0, Minutes:Seconds
  1, Measures.Beats / Minutes:Seconds
  2, Measures.Beats
  3, Seconds
  4, Samples
  5, Hours:Minutes:Seconds:Frames
  8, Absolute Frames 
 integer timemode2 timemode-state 
 integer showntime Transport shown time
              -1 - use ruler time unit
              0 - minutes:seconds
              1 - measures:beats/minutes:seconds
              2 - measures:beats
              3 - seconds
              4 - samples
              5 - hours:minutes:seconds:frames
              8 - absolute frames 
 integer timemode4 timemode-state 
 integer timemode5 timemode-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_VideoConfig

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_VideoConfig(string projectfilename_with_path, integer preferredVidSizeX, integer preferredVidSizeY, integer settingsBitfield, optional string ProjectStateChunk)

Description:
Sets the video-config-settings, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer preferredVidSizeX preferred video size, x pixels 
 integer preferredVidSizeY preferred video size, y pixels 
 integer settingsBitfield settings
             0 - turned on/selected: use high quality filtering, preserve aspect ratio(letterbox) when resizing,
                                     Video colorspace set to Auto,
                                     Items in higher numbered tracks replace lower, as well as Video colorspace set to Auto
             1 - Video colorspace: I420/YV12
             2 - Video colorspace: YUV2
             3 - RGB
             256 - Items in lower numbered tracks replace higher
             512 - Always resize video sources to preferred video size
             1024 - Always resize output to preferred video size
             2048 - turn off "Use high quality filtering when resizing"
             4096 - turn off "preserve aspect ratio (letterbox) when resizing" 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_PanMode

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_PanMode(string projectfilename_with_path, integer panmode_state, optional string ProjectStateChunk)

Description:
Sets the panmode-settings, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer panmode_state panmode-state - ProjectSettings->Advanced->Pan law/mode->Pan mode
             0 reaper 3.x balance (deprecated)
             3 Stereo balance / mono pan (default)
             5 Stereo pan
             6 Dual Pan 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_CursorPos

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_CursorPos(string projectfilename_with_path, number cursorpos, optional string ProjectStateChunk)

Description:
Sets the cursor-position in an rpp-project-file or a ProjectStateChunk
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number cursorpos editcursorposition in seconds 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_HorizontalZoom

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_HorizontalZoom(string projectfilename_with_path, number hzoom, integer hzoomscrollpos, integer scrollbarfactor, optional string ProjectStateChunk)

Description:
Sets the horizontal-zoom in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number hzoom HorizontalZoomfactor, 0.007 to 1000000 
 integer hzoomscrollpos horizontalscrollbarposition - 0 - 4294967296 
 integer scrollbarfactor 0 to 500837, counts up, when maximum hzoomscrollpos overflows 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_VerticalZoom

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_VerticalZoom(string projectfilename_with_path, integer vzoom, optional string ProjectStateChunk)

Description:
Sets the vertical-zoom from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer vzoom vertical zoomfactor(0-40) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_UseRecConfig

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_UseRecConfig(string projectfilename_with_path, integer rec_cfg, optional string ProjectStateChunk)

Description:
Sets the UseRec-Config in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer rec_cfg recording-cfg-state
              0 - Automatic .wav (recommended)
              1 - Custom (use ultraschall.GetProject_ApplyFXCFG to get recording_cfg_string)
              2 - Recording Format 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RecMode

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RecMode(string projectfilename_with_path, integer rec_mode, optional string ProjectStateChunk)

Description:
Sets the recording-mode-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer rec_mode recording mode
0, Autopunch/Selected Items
1, normal
2, Time Selection/Auto Punch 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_SMPTESync

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_SMPTESync(string projectfilename_with_path, integer smptesync_state1, number smptesync_fps, integer smptesync_resyncdrift, integer smptesync_skipdropframes, integer smptesync_syncseek, integer smptesync_freewheel, integer smptesync_userinput, number smptesync_offsettimecode, integer smptesync_stop_rec_drift, integer smptesync_state10, integer smptesync_stop_rec_lacktime, optional string ProjectStateChunk)

Description:
Sets the TimeCodeSyncronization-SMPTE-Config in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer smptesync_state1 flag
             0 - external timecode synchronization disabled
             1 - external timecode synchronization enabled
             4 - Start playback on valid timecode when stopped
             8 - turned off: display flashing notification window when waiting for sync for recording
             16 - playback off
             32 - recording off
             256 - MTC - 24/30fps MTC is 23.976/29.97ND works only with smptesync_userinput set to 4159
             512 - MTC - 24/30fps MTC is 24/30ND 


^ Reaper version 5.40Lua version 5.3 SetProject_Loop

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_Loop(string projectfilename_with_path, integer loopbutton_state, optional string ProjectStateChunk)

Description:
Sets the UseRec-Config in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer loop_mode loopbutton-state, 0, off; 1, on 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_LoopGran

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_LoopGran(string projectfilename_with_path, integer loopgran_state1, number loopgran_state2, optional string ProjectStateChunk)

Description:
Sets the Loop-Gran-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer loopgran_state1 loopgran_state1 
 number loopgran_state2 loopgran_state2 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RecPath

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RecPath(string projectfilename_with_path, string prim_recpath, string sec_recpath, optional string ProjectStateChunk)

Description:
Sets the primary and secondary recording-paths in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 string prim_recpath primary recording path 
 string sec_recpath secondary recording path 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RecordCFG

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RecordCFG(string projectfilename_with_path, string recording_cfg_string, optional string ProjectStateChunk)

Description:
Sets the recording-configuration as encoded string in an RPP-Projectfile or a ProjectStateChunk, as set in ProjectSettings->Media->Recording.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 recording_cfg_string the record-configuration as encoded string 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 6.04Lua version 5.3 SetProject_RenderCFG

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderCFG(string projectfilename_with_path, string rendercfg_string, string rendercfg_string2, optional string ProjectStateChunk)

Description:
Sets the primary and secondary render-configuration as encoded string in an RPP-Projectfile or a ProjectStateChunk, as set in Render-Settings

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 rendercfg_string the render-configuration as encoded string 
 rendercfg_string2 the secondary render-configuration as encoded string; use "" or nil to not set it 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_ApplyFXCFG

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_ApplyFXCFG(string projectfilename_with_path, string applyfx_cfg_string, optional string ProjectStateChunk)

Description:
Sets the audioformat-configuration, for fx-appliance-operation, as an encoded string in an RPP-Projectfile or a ProjectStateChunk, as set in ProjectSettings->Media->Format for Apply FX, Glue, Freeze, etc

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 string applyfx_cfg_string the file-format-configuration for fx-appliance as encoded string 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RenderFilename

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderFilename(string projectfilename_with_path, string renderfilename, optional string ProjectStateChunk)

Description:
Sets the render-filename in an rpp-projectfile or a ProjectStateChunk. Set to "", if you want to set a render-pattern with SetProject_RenderPattern.

The rendername is influenced by the settings in the RENDER_PATTERN-entry in the RPP-file, see SetProject_RenderPattern to influence or remove the RENDER_PATTERN-entry(Removing RENDER_PATTERN may help when Reaper rendering it to the name given in parameter render_filename.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk insteadO 
 string render_filename the filename for rendering, check also GetProject_RenderPattern 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RenderFreqNChans

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderFreqNChans(string projectfilename_with_path, integer unknown, integer rendernum_chans, integer render_frequency, optional string ProjectStateChunk)

Description:
Returns an unknown number, the render-frequency and rendernumber of channels from an RPP-Projectfile or a ProjectStateChunk.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer unknown unknown number 
 integer rendernum_chans Number_Channels 0-seems default-project-settings(?), 1-Mono, 2-Stereo, ... up to 64 channels 
 integer render_frequency RenderFrequency -2147483647 to 2147483647, except 0, which seems to be default-project-settings-frequency 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RenderSpeed

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderSpeed(string projectfilename_with_path, integer render_speed, optional string ProjectStateChunk)

Description:
Sets a rendering-speed in an RPP-Projectfile or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer render_speed render_speed
             0-Fullspeed Offline
             1-1x Offline
             2-Online Render
             3-Offline Render (Idle)
            4-1x Offline Render (Idle) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_RenderRange

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderRange(string projectfilename_with_path, integer bounds, number time_start, number time_end, integer tail, integer tail_length, optional string ProjectStateChunk)

Description:
Sets the render-range, render-timestart, render-timeend, render-tail and render-taillength in an RPP-Projectfile or a ProjectStateChunk.
To get RENDER_STEMS, refer GetProject_RenderStems
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer bounds the bounds of the project to be rendered
             0, Custom Time Range
             1, Entire Project
             2, Time Selection,
             3, Project Regions
             4, Selected Media Items(in combination with RENDER_STEMS 32); to get RENDER_STEMS, refer GetProject_RenderStems
             5, Selected regions 
 number time_start TimeStart in milliseconds -2147483647 to 2147483647 
 number time_end TimeEnd in milliseconds 2147483647 to 2147483647 
 integer tail Tail on/off-flags for individual bounds
             0, tail off for all bounds
             1, custom time range -> tail on
             2, entire project -> tail on
             4, time selection -> tail on
             8, project regions -> tail on 


^ Reaper version 5.40Lua version 5.3 SetProject_RenderResample

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderResample(string projectfilename_with_path, integer resample_mode, integer playback_resample_mode, integer project_smplrate4mix_and_fx, optional string ProjectStateChunk)

Description:
Resamplemode for a)Rendering and b)Playback as well as c)if both are combined from an RPP-Projectfile or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer resample_mode Resample_Mode
             0-medium (64pt Sinc),
             1-Low (Linear Interpolation),
             2-Lowest (Point Sampling),
             3-Good(192pt Sinc),
             4-Better(384pt Sinc),
             5-Fast (IIR + Linear Interpolation),
             6-Fast (IIRx2 + Linear Interpolation),
             7-Fast (16pt sinc) - Default,
             8-HQ (512pt Sinc),
             9-Extreme HQ (768pt HQ Sinc) 
 integer playback_resample_mode Playback Resample Mode (as set in the Project-Settings)
           0-medium (64pt Sinc),
           1-Low (Linear Interpolation),
           2-Lowest (Point Sampling),
           3-Good(192pt Sinc),
           4-Better(384pt Sinc),
           5-Fast (IIR + Linear Interpolation),
           6-Fast (IIRx2 + Linear Interpolation),
           7-Fast (16pt sinc) - Default,
           8-HQ (512pt Sinc),
           9-Extreme HQ (768pt HQ Sinc)     
 integer project_smplrate4mix_and_fx Use project sample rate for mixing and FX/synth processing-checkbox; 1, checked; 0, unchecked 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_AddMediaToProjectAfterRender

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_AddMediaToProjectAfterRender(string projectfilename_with_path, integer addmedia_after_render_state, optional string ProjectStateChunk)

Description:
Returns, if rendered media shall be added to the project afterwards, from an RPP-Projectfile or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer addmedia_after_render_state 1 - rendered media shall be added to the project afterwards, 0 - don't add 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 6.02Lua version 5.3 SetProject_RenderStems

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderStems(string projectfilename_with_path, integer render_stems, optional string ProjectStateChunk)

Description:
Sets the render-stems-state from an RPP-Projectfile or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer render_stems the state of Render Stems
0, Source Master Mix,
1, Source Master mix + stems,
3, Source Stems, selected tracks,
&4, Multichannel Tracks to Multichannel Files,
8, Source Region Render Matrix,
&16, Tracks with only Mono-Media to Mono Files,  
32, Selected Media Items(in combination with RENDER_RANGE->Bounds->4, refer to GetProject_RenderRange to get RENDER_RANGE)
64, Selected media items via master
128, Selected tracks via master
&256, Embed stretch markers/transient guides-checkbox  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_RenderDitherState

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_RenderDitherState(string projectfilename_with_path, integer renderdither_state, optional string ProjectStateChunk)

Description:
Sets the render-dither-state from an RPP-Projectfile or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer renderdither_state the state of render dithering
&1,   Dither Master mix
&2,   Noise shaping Master mix
&4,   Dither Stems
&8,   Noise shaping Stems 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_TimeBase

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_TimeBase(string projectfilename_with_path, integer timebase, optional string ProjectStateChunk)

Description:
Sets the timebase, as set in the project-settings, in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer timebase the timebase for items/envelopes/markers as set in the project settings
             0 - Time,
             1 - Beats (position, length, rate),
             2 - Beats (position only) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_TempoTimeSignature

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_TempoTimeSignature(string projectfilename_with_path, integer tempotimesignature, optional string ProjectStateChunk)

Description:
Sets the timebase, as set in the project-settings, in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer tempotimesignature the timebase for tempo/time-signature as set in the project settings
             0 - Time
             1 - Beats 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_ItemMixBehavior

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_ItemMixBehavior(string projectfilename_with_path, integer item_mix_behav_state, optional string ProjectStateChunk)

Description:
Sets the item mix behavior, as set in the project-settings, from an rpp-project-file.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path filename with path of the rpp-project-file 
 integer item_mix_behav_state item mix behavior
              0 - Enclosed items replace enclosing items
              1 - Items always mix
              2 - Items always replace earlier items 


^ Reaper version 5.977Lua version 5.3 SetProject_DefPitchMode

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_DefPitchMode(string projectfilename_with_path, integer def_pitch_mode_state, integer stretch_marker_mode, optional string ProjectStateChunk)

Description:
Sets the default-pitch-mode, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer def_pitch_mode_state the default pitch mode
      SoundTouch:
          0 - Default settings
          1 - High Quality
          2 - Fast
      
      Simple windowed (fast):
          131072 - 50ms window, 25ms fade
          131073 - 50ms window, 16ms fade
          131074 - 50ms window, 10ms fade
          131075 - 50ms window, 7ms fade
          131076 - 75ms window, 37ms fade
          131077 - 75ms window, 25ms fade
          131078 - 75ms window, 15ms fade
          131079 - 75ms window, 10ms fade
          131080 - 100ms window, 50ms fade
          131081 - 100ms window, 33ms fade
          131082 - 100ms window, 20ms fade
          131083 - 100ms window, 14ms fade
          131084 - 150ms window, 75ms fade
          131085 - 150ms window, 50ms fade
          131086 - 150ms window, 30ms fade
          131087 - 150ms window, 21ms fade
          131088 - 225ms window, 112ms fade
          131089 - 225ms window, 75ms fade
          131090 - 225ms window, 45ms fade
          131091 - 225ms window, 32ms fade
          131092 - 300ms window, 150ms fade
          131093 - 300ms window, 100ms fade
          131094 - 300ms window, 60ms fade
          131095 - 300ms window, 42ms fade
          131096 - 40ms window, 20ms fade
          131097 - 40ms window, 13ms fade
          131098 - 40ms window, 8ms fade
          131099 - 40ms window, 5ms fade
          131100 - 30ms window, 15ms fade
          131101 - 30ms window, 10ms fade
          131102 - 30ms window, 6ms fade
          131103 - 30ms window, 4ms fade
          131104 - 20ms window, 10ms fade
          131105 - 20ms window, 6ms fade
          131106 - 20ms window, 4ms fade
          131107 - 20ms window, 2ms fade
          131108 - 10ms window, 5ms fade
          131109 - 10ms window, 3ms fade
          131110 - 10ms window, 2ms fade
          131111 - 10ms window, 1ms fade
          131112 - 5ms window, 2ms fade
          131113 - 5ms window, 1ms fade
          131114 - 5ms window, 1ms fade
          131115 - 5ms window, 1ms fade
          131116 - 3ms window, 1ms fade
          131117 - 3ms window, 1ms fade
          131118 - 3ms window, 1ms fade
          131119 - 3ms window, 1ms fade
      
      ÃƒÂ©lastique 2.2.8 Pro:
          393216 - Normal
          393217 - Preserve Formants (Lowest Pitches)
          393218 - Preserve Formants (Lower Pitches)
          393219 - Preserve Formants (Low Pitches)
          393220 - Preserve Formants (Most Pitches)
          393221 - Preserve Formants (High Pitches)
          393222 - Preserve Formants (Higher Pitches)
          393223 - Preserve Formants (Highest Pitches)
          393224 - Mid/Side
          393225 - Mid/Side, Preserve Formants (Lowest Pitches)
          393226 - Mid/Side, Preserve Formants (Lower Pitches)
          393227 - Mid/Side, Preserve Formants (Low Pitches)
          393228 - Mid/Side, Preserve Formants (Most Pitches)
          393229 - Mid/Side, Preserve Formants (High Pitches)
          393230 - Mid/Side, Preserve Formants (Higher Pitches)
          393231 - Mid/Side, Preserve Formants (Highest Pitches)
          393232 - Synchronized: Normal
          393233 - Synchronized: Preserve Formants (Lowest Pitches)
          393234 - Synchronized: Preserve Formants (Lower Pitches)
          393235 - Synchronized: Preserve Formants (Low Pitches)
          393236 - Synchronized: Preserve Formants (Most Pitches)
          393237 - Synchronized: Preserve Formants (High Pitches)
          393238 - Synchronized: Preserve Formants (Higher Pitches)
          393239 - Synchronized: Preserve Formants (Highest Pitches)
          393240 - Synchronized:  Mid/Side
          393241 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          393242 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          393243 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          393244 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          393245 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          393246 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          393247 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 2.2.8 Efficient:
          458752 - Normal
          458753 - Mid/Side
          458754 - Synchronized: Normal
          458755 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 2.2.8 Soloist:
          524288 - Monophonic
          524289 - Monophonic [Mid/Side]
          524290 - Speech
          524291 - Speech [Mid/Side]
      
      ÃƒÂ©lastique 3.3.0 Pro:
          589824 - Normal
          589825 - Preserve Formants (Lowest Pitches)
          589826 - Preserve Formants (Lower Pitches)
          589827 - Preserve Formants (Low Pitches)
          589828 - Preserve Formants (Most Pitches)
          589829 - Preserve Formants (High Pitches)
          589830 - Preserve Formants (Higher Pitches)
          589831 - Preserve Formants (Highest Pitches)
          589832 - Mid/Side
          589833 - Mid/Side, Preserve Formants (Lowest Pitches)
          589834 - Mid/Side, Preserve Formants (Lower Pitches)
          589835 - Mid/Side, Preserve Formants (Low Pitches)
          589836 - Mid/Side, Preserve Formants (Most Pitches)
          589837 - Mid/Side, Preserve Formants (High Pitches)
          589838 - Mid/Side, Preserve Formants (Higher Pitches)
          589839 - Mid/Side, Preserve Formants (Highest Pitches)
          589840 - Synchronized: Normal
          589841 - Synchronized: Preserve Formants (Lowest Pitches)
          589842 - Synchronized: Preserve Formants (Lower Pitches)
          589843 - Synchronized: Preserve Formants (Low Pitches)
          589844 - Synchronized: Preserve Formants (Most Pitches)
          589845 - Synchronized: Preserve Formants (High Pitches)
          589846 - Synchronized: Preserve Formants (Higher Pitches)
          589847 - Synchronized: Preserve Formants (Highest Pitches)
          589848 - Synchronized:  Mid/Side
          589849 - Synchronized:  Mid/Side, Preserve Formants (Lowest Pitches)
          589850 - Synchronized:  Mid/Side, Preserve Formants (Lower Pitches)
          589851 - Synchronized:  Mid/Side, Preserve Formants (Low Pitches)
          589852 - Synchronized:  Mid/Side, Preserve Formants (Most Pitches)
          589853 - Synchronized:  Mid/Side, Preserve Formants (High Pitches)
          589854 - Synchronized:  Mid/Side, Preserve Formants (Higher Pitches)
          589855 - Synchronized:  Mid/Side, Preserve Formants (Highest Pitches)
      
      ÃƒÂ©lastique 3.3.0 Efficient:
          655360 - Normal
          655361 - Mid/Side
          655362 - Synchronized: Normal
          655363 - Synchronized: Mid/Side
      
      ÃƒÂ©lastique 3.3.0 Soloist:
          720896 - Monophonic
          720897 - Monophonic [Mid/Side]
          720898 - Speech
          720899 - Speech [Mid/Side]
      
      
      Rubber Band Library - Default
          851968 - nothing
      
      Rubber Band Library - Preserve Formants
          851969 - Preserve Formants
      
      Rubber Band Library - Mid/Side
          851970 - Mid/Side
      
      Rubber Band Library - Preserve Formants, Mid/Side
          851971 - Preserve Formants, Mid/Side
      
      Rubber Band Library - Independent Phase
          851972 - Independent Phase
      
      Rubber Band Library - Preserve Formants, Independent Phase
          851973 - Preserve Formants, Independent Phase
      
      Rubber Band Library - Mid/Side, Independent Phase
          851974 - Mid/Side, Independent Phase
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase
          851975 - Preserve Formants, Mid/Side, Independent Phase
      
      Rubber Band Library - Time Domain Smoothing
          851976 - Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Time Domain Smoothing
          851977 - Preserve Formants, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Time Domain Smoothing
          851978 - Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Time Domain Smoothing
          851979 - Preserve Formants, Mid/Side, Time Domain Smoothing
      
      Rubber Band Library - Independent Phase, Time Domain Smoothing
          851980 - Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Independent Phase, Time Domain Smoothing
          851981 - Preserve Formants, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Mid/Side, Independent Phase, Time Domain Smoothing
          851982 - Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
          851983 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed
          851984 - nothing
          851985 - Preserve Formants
          851986 - Mid/Side
          851987 - Preserve Formants, Mid/Side
          851988 - Independent Phase
          851989 - Preserve Formants, Independent Phase
          851990 - Mid/Side, Independent Phase
          851991 - Preserve Formants, Mid/Side, Independent Phase
          851992 - Time Domain Smoothing
          851993 - Preserve Formants, Time Domain Smoothing
          851994 - Mid/Side, Time Domain Smoothing
          851995 - Preserve Formants, Mid/Side, Time Domain Smoothing
          851996 - Independent Phase, Time Domain Smoothing
          851997 - Preserve Formants, Independent Phase, Time Domain Smoothing
          851998 - Mid/Side, Independent Phase, Time Domain Smoothing
          851999 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth
          852000 - nothing
          852001 - Preserve Formants
          852002 - Mid/Side
          852003 - Preserve Formants, Mid/Side
          852004 - Independent Phase
          852005 - Preserve Formants, Independent Phase
          852006 - Mid/Side, Independent Phase
          852007 - Preserve Formants, Mid/Side, Independent Phase
          852008 - Time Domain Smoothing
          852009 - Preserve Formants, Time Domain Smoothing
          852010 - Mid/Side, Time Domain Smoothing
          852011 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852012 - Independent Phase, Time Domain Smoothing
          852013 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852014 - Mid/Side, Independent Phase, Time Domain Smoothing
          852015 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive
          852016 - nothing
          852017 - Preserve Formants
          852018 - Mid/Side
          852019 - Preserve Formants, Mid/Side
          852020 - Independent Phase
          852021 - Preserve Formants, Independent Phase
          852022 - Mid/Side, Independent Phase
          852023 - Preserve Formants, Mid/Side, Independent Phase
          852024 - Time Domain Smoothing
          852025 - Preserve Formants, Time Domain Smoothing
          852026 - Mid/Side, Time Domain Smoothing
          852027 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852028 - Independent Phase, Time Domain Smoothing
          852029 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852030 - Mid/Side, Independent Phase, Time Domain Smoothing
          852031 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive
          852032 - nothing
          852033 - Preserve Formants
          852034 - Mid/Side
          852035 - Preserve Formants, Mid/Side
          852036 - Independent Phase
          852037 - Preserve Formants, Independent Phase
          852038 - Mid/Side, Independent Phase
          852039 - Preserve Formants, Mid/Side, Independent Phase
          852040 - Time Domain Smoothing
          852041 - Preserve Formants, Time Domain Smoothing
          852042 - Mid/Side, Time Domain Smoothing
          852043 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852044 - Independent Phase, Time Domain Smoothing
          852045 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852046 - Mid/Side, Independent Phase, Time Domain Smoothing
          852047 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive
          852048 - nothing
          852049 - Preserve Formants
          852050 - Mid/Side
          852051 - Preserve Formants, Mid/Side
          852052 - Independent Phase
          852053 - Preserve Formants, Independent Phase
          852054 - Mid/Side, Independent Phase
          852055 - Preserve Formants, Mid/Side, Independent Phase
          852056 - Time Domain Smoothing
          852057 - Preserve Formants, Time Domain Smoothing
          852058 - Mid/Side, Time Domain Smoothing
          852059 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852060 - Independent Phase, Time Domain Smoothing
          852061 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852062 - Mid/Side, Independent Phase, Time Domain Smoothing
          852063 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft
          852064 - nothing
          852065 - Preserve Formants
          852066 - Mid/Side
          852067 - Preserve Formants, Mid/Side
          852068 - Independent Phase
          852069 - Preserve Formants, Independent Phase
          852070 - Mid/Side, Independent Phase
          852071 - Preserve Formants, Mid/Side, Independent Phase
          852072 - Time Domain Smoothing
          852073 - Preserve Formants, Time Domain Smoothing
          852074 - Mid/Side, Time Domain Smoothing
          852075 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852076 - Independent Phase, Time Domain Smoothing
          852077 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852078 - Mid/Side, Independent Phase, Time Domain Smoothing
          852079 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft
          852080 - nothing
          852081 - Preserve Formants
          852082 - Mid/Side
          852083 - Preserve Formants, Mid/Side
          852084 - Independent Phase
          852085 - Preserve Formants, Independent Phase
          852086 - Mid/Side, Independent Phase
          852087 - Preserve Formants, Mid/Side, Independent Phase
          852088 - Time Domain Smoothing
          852089 - Preserve Formants, Time Domain Smoothing
          852090 - Mid/Side, Time Domain Smoothing
          852091 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852092 - Independent Phase, Time Domain Smoothing
          852093 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852094 - Mid/Side, Independent Phase, Time Domain Smoothing
          852095 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft
          852096 - nothing
          852097 - Preserve Formants
          852098 - Mid/Side
          852099 - Preserve Formants, Mid/Side
          852100 - Independent Phase
          852101 - Preserve Formants, Independent Phase
          852102 - Mid/Side, Independent Phase
          852103 - Preserve Formants, Mid/Side, Independent Phase
          852104 - Time Domain Smoothing
          852105 - Preserve Formants, Time Domain Smoothing
          852106 - Mid/Side, Time Domain Smoothing
          852107 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852108 - Independent Phase, Time Domain Smoothing
          852109 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852110 - Mid/Side, Independent Phase, Time Domain Smoothing
          852111 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ
          852112 - nothing
          852113 - Preserve Formants
          852114 - Mid/Side
          852115 - Preserve Formants, Mid/Side
          852116 - Independent Phase
          852117 - Preserve Formants, Independent Phase
          852118 - Mid/Side, Independent Phase
          852119 - Preserve Formants, Mid/Side, Independent Phase
          852120 - Time Domain Smoothing
          852121 - Preserve Formants, Time Domain Smoothing
          852122 - Mid/Side, Time Domain Smoothing
          852123 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852124 - Independent Phase, Time Domain Smoothing
          852125 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852126 - Mid/Side, Independent Phase, Time Domain Smoothing
          852127 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ
          852128 - nothing
          852129 - Preserve Formants
          852130 - Mid/Side
          852131 - Preserve Formants, Mid/Side
          852132 - Independent Phase
          852133 - Preserve Formants, Independent Phase
          852134 - Mid/Side, Independent Phase
          852135 - Preserve Formants, Mid/Side, Independent Phase
          852136 - Time Domain Smoothing
          852137 - Preserve Formants, Time Domain Smoothing
          852138 - Mid/Side, Time Domain Smoothing
          852139 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852140 - Independent Phase, Time Domain Smoothing
          852141 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852142 - Mid/Side, Independent Phase, Time Domain Smoothing
          852143 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ
          852144 - nothing
          852145 - Preserve Formants
          852146 - Mid/Side
          852147 - Preserve Formants, Mid/Side
          852148 - Independent Phase
          852149 - Preserve Formants, Independent Phase
          852150 - Mid/Side, Independent Phase
          852151 - Preserve Formants, Mid/Side, Independent Phase
          852152 - Time Domain Smoothing
          852153 - Preserve Formants, Time Domain Smoothing
          852154 - Mid/Side, Time Domain Smoothing
          852155 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852156 - Independent Phase, Time Domain Smoothing
          852157 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852158 - Mid/Side, Independent Phase, Time Domain Smoothing
          852159 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ
          852160 - nothing
          852161 - Preserve Formants
          852162 - Mid/Side
          852163 - Preserve Formants, Mid/Side
          852164 - Independent Phase
          852165 - Preserve Formants, Independent Phase
          852166 - Mid/Side, Independent Phase
          852167 - Preserve Formants, Mid/Side, Independent Phase
          852168 - Time Domain Smoothing
          852169 - Preserve Formants, Time Domain Smoothing
          852170 - Mid/Side, Time Domain Smoothing
          852171 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852172 - Independent Phase, Time Domain Smoothing
          852173 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852174 - Mid/Side, Independent Phase, Time Domain Smoothing
          852175 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ
          852176 - nothing
          852177 - Preserve Formants
          852178 - Mid/Side
          852179 - Preserve Formants, Mid/Side
          852180 - Independent Phase
          852181 - Preserve Formants, Independent Phase
          852182 - Mid/Side, Independent Phase
          852183 - Preserve Formants, Mid/Side, Independent Phase
          852184 - Time Domain Smoothing
          852185 - Preserve Formants, Time Domain Smoothing
          852186 - Mid/Side, Time Domain Smoothing
          852187 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852188 - Independent Phase, Time Domain Smoothing
          852189 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852190 - Mid/Side, Independent Phase, Time Domain Smoothing
          852191 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ
          852192 - nothing
          852193 - Preserve Formants
          852194 - Mid/Side
          852195 - Preserve Formants, Mid/Side
          852196 - Independent Phase
          852197 - Preserve Formants, Independent Phase
          852198 - Mid/Side, Independent Phase
          852199 - Preserve Formants, Mid/Side, Independent Phase
          852200 - Time Domain Smoothing
          852201 - Preserve Formants, Time Domain Smoothing
          852202 - Mid/Side, Time Domain Smoothing
          852203 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852204 - Independent Phase, Time Domain Smoothing
          852205 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852206 - Mid/Side, Independent Phase, Time Domain Smoothing
          852207 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ
          852208 - nothing
          852209 - Preserve Formants
          852210 - Mid/Side
          852211 - Preserve Formants, Mid/Side
          852212 - Independent Phase
          852213 - Preserve Formants, Independent Phase
          852214 - Mid/Side, Independent Phase
          852215 - Preserve Formants, Mid/Side, Independent Phase
          852216 - Time Domain Smoothing
          852217 - Preserve Formants, Time Domain Smoothing
          852218 - Mid/Side, Time Domain Smoothing
          852219 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852220 - Independent Phase, Time Domain Smoothing
          852221 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852222 - Mid/Side, Independent Phase, Time Domain Smoothing
          852223 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ
          852224 - nothing
          852225 - Preserve Formants
          852226 - Mid/Side
          852227 - Preserve Formants, Mid/Side
          852228 - Independent Phase
          852229 - Preserve Formants, Independent Phase
          852230 - Mid/Side, Independent Phase
          852231 - Preserve Formants, Mid/Side, Independent Phase
          852232 - Time Domain Smoothing
          852233 - Preserve Formants, Time Domain Smoothing
          852234 - Mid/Side, Time Domain Smoothing
          852235 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852236 - Independent Phase, Time Domain Smoothing
          852237 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852238 - Mid/Side, Independent Phase, Time Domain Smoothing
          852239 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ
          852240 - nothing
          852241 - Preserve Formants
          852242 - Mid/Side
          852243 - Preserve Formants, Mid/Side
          852244 - Independent Phase
          852245 - Preserve Formants, Independent Phase
          852246 - Mid/Side, Independent Phase
          852247 - Preserve Formants, Mid/Side, Independent Phase
          852248 - Time Domain Smoothing
          852249 - Preserve Formants, Time Domain Smoothing
          852250 - Mid/Side, Time Domain Smoothing
          852251 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852252 - Independent Phase, Time Domain Smoothing
          852253 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852254 - Mid/Side, Independent Phase, Time Domain Smoothing
          852255 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent
          852256 - nothing
          852257 - Preserve Formants
          852258 - Mid/Side
          852259 - Preserve Formants, Mid/Side
          852260 - Independent Phase
          852261 - Preserve Formants, Independent Phase
          852262 - Mid/Side, Independent Phase
          852263 - Preserve Formants, Mid/Side, Independent Phase
          852264 - Time Domain Smoothing
          852265 - Preserve Formants, Time Domain Smoothing
          852266 - Mid/Side, Time Domain Smoothing
          852267 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852268 - Independent Phase, Time Domain Smoothing
          852269 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852270 - Mid/Side, Independent Phase, Time Domain Smoothing
          852271 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent
          852272 - nothing
          852273 - Preserve Formants
          852274 - Mid/Side
          852275 - Preserve Formants, Mid/Side
          852276 - Independent Phase
          852277 - Preserve Formants, Independent Phase
          852278 - Mid/Side, Independent Phase
          852279 - Preserve Formants, Mid/Side, Independent Phase
          852280 - Time Domain Smoothing
          852281 - Preserve Formants, Time Domain Smoothing
          852282 - Mid/Side, Time Domain Smoothing
          852283 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852284 - Independent Phase, Time Domain Smoothing
          852285 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852286 - Mid/Side, Independent Phase, Time Domain Smoothing
          852287 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent
          852288 - nothing
          852289 - Preserve Formants
          852290 - Mid/Side
          852291 - Preserve Formants, Mid/Side
          852292 - Independent Phase
          852293 - Preserve Formants, Independent Phase
          852294 - Mid/Side, Independent Phase
          852295 - Preserve Formants, Mid/Side, Independent Phase
          852296 - Time Domain Smoothing
          852297 - Preserve Formants, Time Domain Smoothing
          852298 - Mid/Side, Time Domain Smoothing
          852299 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852300 - Independent Phase, Time Domain Smoothing
          852301 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852302 - Mid/Side, Independent Phase, Time Domain Smoothing
          852303 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent
          852304 - nothing
          852305 - Preserve Formants
          852306 - Mid/Side
          852307 - Preserve Formants, Mid/Side
          852308 - Independent Phase
          852309 - Preserve Formants, Independent Phase
          852310 - Mid/Side, Independent Phase
          852311 - Preserve Formants, Mid/Side, Independent Phase
          852312 - Time Domain Smoothing
          852313 - Preserve Formants, Time Domain Smoothing
          852314 - Mid/Side, Time Domain Smoothing
          852315 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852316 - Independent Phase, Time Domain Smoothing
          852317 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852318 - Mid/Side, Independent Phase, Time Domain Smoothing
          852319 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent
          852320 - nothing
          852321 - Preserve Formants
          852322 - Mid/Side
          852323 - Preserve Formants, Mid/Side
          852324 - Independent Phase
          852325 - Preserve Formants, Independent Phase
          852326 - Mid/Side, Independent Phase
          852327 - Preserve Formants, Mid/Side, Independent Phase
          852328 - Time Domain Smoothing
          852329 - Preserve Formants, Time Domain Smoothing
          852330 - Mid/Side, Time Domain Smoothing
          852331 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852332 - Independent Phase, Time Domain Smoothing
          852333 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852334 - Mid/Side, Independent Phase, Time Domain Smoothing
          852335 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent
          852336 - nothing
          852337 - Preserve Formants
          852338 - Mid/Side
          852339 - Preserve Formants, Mid/Side
          852340 - Independent Phase
          852341 - Preserve Formants, Independent Phase
          852342 - Mid/Side, Independent Phase
          852343 - Preserve Formants, Mid/Side, Independent Phase
          852344 - Time Domain Smoothing
          852345 - Preserve Formants, Time Domain Smoothing
          852346 - Mid/Side, Time Domain Smoothing
          852347 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852348 - Independent Phase, Time Domain Smoothing
          852349 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852350 - Mid/Side, Independent Phase, Time Domain Smoothing
          852351 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent
          852352 - nothing
          852353 - Preserve Formants
          852354 - Mid/Side
          852355 - Preserve Formants, Mid/Side
          852356 - Independent Phase
          852357 - Preserve Formants, Independent Phase
          852358 - Mid/Side, Independent Phase
          852359 - Preserve Formants, Mid/Side, Independent Phase
          852360 - Time Domain Smoothing
          852361 - Preserve Formants, Time Domain Smoothing
          852362 - Mid/Side, Time Domain Smoothing
          852363 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852364 - Independent Phase, Time Domain Smoothing
          852365 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852366 - Mid/Side, Independent Phase, Time Domain Smoothing
          852367 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent
          852368 - nothing
          852369 - Preserve Formants
          852370 - Mid/Side
          852371 - Preserve Formants, Mid/Side
          852372 - Independent Phase
          852373 - Preserve Formants, Independent Phase
          852374 - Mid/Side, Independent Phase
          852375 - Preserve Formants, Mid/Side, Independent Phase
          852376 - Time Domain Smoothing
          852377 - Preserve Formants, Time Domain Smoothing
          852378 - Mid/Side, Time Domain Smoothing
          852379 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852380 - Independent Phase, Time Domain Smoothing
          852381 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852382 - Mid/Side, Independent Phase, Time Domain Smoothing
          852383 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent
          852384 - nothing
          852385 - Preserve Formants
          852386 - Mid/Side
          852387 - Preserve Formants, Mid/Side
          852388 - Independent Phase
          852389 - Preserve Formants, Independent Phase
          852390 - Mid/Side, Independent Phase
          852391 - Preserve Formants, Mid/Side, Independent Phase
          852392 - Time Domain Smoothing
          852393 - Preserve Formants, Time Domain Smoothing
          852394 - Mid/Side, Time Domain Smoothing
          852395 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852396 - Independent Phase, Time Domain Smoothing
          852397 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852398 - Mid/Side, Independent Phase, Time Domain Smoothing
          852399 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Short
          852400 - nothing
          852401 - Preserve Formants
          852402 - Mid/Side
          852403 - Preserve Formants, Mid/Side
          852404 - Independent Phase
          852405 - Preserve Formants, Independent Phase
          852406 - Mid/Side, Independent Phase
          852407 - Preserve Formants, Mid/Side, Independent Phase
          852408 - Time Domain Smoothing
          852409 - Preserve Formants, Time Domain Smoothing
          852410 - Mid/Side, Time Domain Smoothing
          852411 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852412 - Independent Phase, Time Domain Smoothing
          852413 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852414 - Mid/Side, Independent Phase, Time Domain Smoothing
          852415 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Short
          852416 - nothing
          852417 - Preserve Formants
          852418 - Mid/Side
          852419 - Preserve Formants, Mid/Side
          852420 - Independent Phase
          852421 - Preserve Formants, Independent Phase
          852422 - Mid/Side, Independent Phase
          852423 - Preserve Formants, Mid/Side, Independent Phase
          852424 - Time Domain Smoothing
          852425 - Preserve Formants, Time Domain Smoothing
          852426 - Mid/Side, Time Domain Smoothing
          852427 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852428 - Independent Phase, Time Domain Smoothing
          852429 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852430 - Mid/Side, Independent Phase, Time Domain Smoothing
          852431 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Short
          852432 - nothing
          852433 - Preserve Formants
          852434 - Mid/Side
          852435 - Preserve Formants, Mid/Side
          852436 - Independent Phase
          852437 - Preserve Formants, Independent Phase
          852438 - Mid/Side, Independent Phase
          852439 - Preserve Formants, Mid/Side, Independent Phase
          852440 - Time Domain Smoothing
          852441 - Preserve Formants, Time Domain Smoothing
          852442 - Mid/Side, Time Domain Smoothing
          852443 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852444 - Independent Phase, Time Domain Smoothing
          852445 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852446 - Mid/Side, Independent Phase, Time Domain Smoothing
          852447 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Short
          852448 - nothing
          852449 - Preserve Formants
          852450 - Mid/Side
          852451 - Preserve Formants, Mid/Side
          852452 - Independent Phase
          852453 - Preserve Formants, Independent Phase
          852454 - Mid/Side, Independent Phase
          852455 - Preserve Formants, Mid/Side, Independent Phase
          852456 - Time Domain Smoothing
          852457 - Preserve Formants, Time Domain Smoothing
          852458 - Mid/Side, Time Domain Smoothing
          852459 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852460 - Independent Phase, Time Domain Smoothing
          852461 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852462 - Mid/Side, Independent Phase, Time Domain Smoothing
          852463 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Short
          852464 - nothing
          852465 - Preserve Formants
          852466 - Mid/Side
          852467 - Preserve Formants, Mid/Side
          852468 - Independent Phase
          852469 - Preserve Formants, Independent Phase
          852470 - Mid/Side, Independent Phase
          852471 - Preserve Formants, Mid/Side, Independent Phase
          852472 - Time Domain Smoothing
          852473 - Preserve Formants, Time Domain Smoothing
          852474 - Mid/Side, Time Domain Smoothing
          852475 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852476 - Independent Phase, Time Domain Smoothing
          852477 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852478 - Mid/Side, Independent Phase, Time Domain Smoothing
          852479 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Short
          852480 - nothing
          852481 - Preserve Formants
          852482 - Mid/Side
          852483 - Preserve Formants, Mid/Side
          852484 - Independent Phase
          852485 - Preserve Formants, Independent Phase
          852486 - Mid/Side, Independent Phase
          852487 - Preserve Formants, Mid/Side, Independent Phase
          852488 - Time Domain Smoothing
          852489 - Preserve Formants, Time Domain Smoothing
          852490 - Mid/Side, Time Domain Smoothing
          852491 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852492 - Independent Phase, Time Domain Smoothing
          852493 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852494 - Mid/Side, Independent Phase, Time Domain Smoothing
          852495 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Short
          852496 - nothing
          852497 - Preserve Formants
          852498 - Mid/Side
          852499 - Preserve Formants, Mid/Side
          852500 - Independent Phase
          852501 - Preserve Formants, Independent Phase
          852502 - Mid/Side, Independent Phase
          852503 - Preserve Formants, Mid/Side, Independent Phase
          852504 - Time Domain Smoothing
          852505 - Preserve Formants, Time Domain Smoothing
          852506 - Mid/Side, Time Domain Smoothing
          852507 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852508 - Independent Phase, Time Domain Smoothing
          852509 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852510 - Mid/Side, Independent Phase, Time Domain Smoothing
          852511 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Short
          852512 - nothing
          852513 - Preserve Formants
          852514 - Mid/Side
          852515 - Preserve Formants, Mid/Side
          852516 - Independent Phase
          852517 - Preserve Formants, Independent Phase
          852518 - Mid/Side, Independent Phase
          852519 - Preserve Formants, Mid/Side, Independent Phase
          852520 - Time Domain Smoothing
          852521 - Preserve Formants, Time Domain Smoothing
          852522 - Mid/Side, Time Domain Smoothing
          852523 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852524 - Independent Phase, Time Domain Smoothing
          852525 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852526 - Mid/Side, Independent Phase, Time Domain Smoothing
          852527 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Short
          852528 - nothing
          852529 - Preserve Formants
          852530 - Mid/Side
          852531 - Preserve Formants, Mid/Side
          852532 - Independent Phase
          852533 - Preserve Formants, Independent Phase
          852534 - Mid/Side, Independent Phase
          852535 - Preserve Formants, Mid/Side, Independent Phase
          852536 - Time Domain Smoothing
          852537 - Preserve Formants, Time Domain Smoothing
          852538 - Mid/Side, Time Domain Smoothing
          852539 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852540 - Independent Phase, Time Domain Smoothing
          852541 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852542 - Mid/Side, Independent Phase, Time Domain Smoothing
          852543 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Short
          852544 - nothing
          852545 - Preserve Formants
          852546 - Mid/Side
          852547 - Preserve Formants, Mid/Side
          852548 - Independent Phase
          852549 - Preserve Formants, Independent Phase
          852550 - Mid/Side, Independent Phase
          852551 - Preserve Formants, Mid/Side, Independent Phase
          852552 - Time Domain Smoothing
          852553 - Preserve Formants, Time Domain Smoothing
          852554 - Mid/Side, Time Domain Smoothing
          852555 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852556 - Independent Phase, Time Domain Smoothing
          852557 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852558 - Mid/Side, Independent Phase, Time Domain Smoothing
          852559 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Short
          852560 - nothing
          852561 - Preserve Formants
          852562 - Mid/Side
          852563 - Preserve Formants, Mid/Side
          852564 - Independent Phase
          852565 - Preserve Formants, Independent Phase
          852566 - Mid/Side, Independent Phase
          852567 - Preserve Formants, Mid/Side, Independent Phase
          852568 - Time Domain Smoothing
          852569 - Preserve Formants, Time Domain Smoothing
          852570 - Mid/Side, Time Domain Smoothing
          852571 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852572 - Independent Phase, Time Domain Smoothing
          852573 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852574 - Mid/Side, Independent Phase, Time Domain Smoothing
          852575 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Short
          852576 - nothing
          852577 - Preserve Formants
          852578 - Mid/Side
          852579 - Preserve Formants, Mid/Side
          852580 - Independent Phase
          852581 - Preserve Formants, Independent Phase
          852582 - Mid/Side, Independent Phase
          852583 - Preserve Formants, Mid/Side, Independent Phase
          852584 - Time Domain Smoothing
          852585 - Preserve Formants, Time Domain Smoothing
          852586 - Mid/Side, Time Domain Smoothing
          852587 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852588 - Independent Phase, Time Domain Smoothing
          852589 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852590 - Mid/Side, Independent Phase, Time Domain Smoothing
          852591 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852592 - nothing
          852593 - Preserve Formants
          852594 - Mid/Side
          852595 - Preserve Formants, Mid/Side
          852596 - Independent Phase
          852597 - Preserve Formants, Independent Phase
          852598 - Mid/Side, Independent Phase
          852599 - Preserve Formants, Mid/Side, Independent Phase
          852600 - Time Domain Smoothing
          852601 - Preserve Formants, Time Domain Smoothing
          852602 - Mid/Side, Time Domain Smoothing
          852603 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852604 - Independent Phase, Time Domain Smoothing
          852605 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852606 - Mid/Side, Independent Phase, Time Domain Smoothing
          852607 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852608 - nothing
          852609 - Preserve Formants
          852610 - Mid/Side
          852611 - Preserve Formants, Mid/Side
          852612 - Independent Phase
          852613 - Preserve Formants, Independent Phase
          852614 - Mid/Side, Independent Phase
          852615 - Preserve Formants, Mid/Side, Independent Phase
          852616 - Time Domain Smoothing
          852617 - Preserve Formants, Time Domain Smoothing
          852618 - Mid/Side, Time Domain Smoothing
          852619 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852620 - Independent Phase, Time Domain Smoothing
          852621 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852622 - Mid/Side, Independent Phase, Time Domain Smoothing
          852623 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Short
          852624 - nothing
          852625 - Preserve Formants
          852626 - Mid/Side
          852627 - Preserve Formants, Mid/Side
          852628 - Independent Phase
          852629 - Preserve Formants, Independent Phase
          852630 - Mid/Side, Independent Phase
          852631 - Preserve Formants, Mid/Side, Independent Phase
          852632 - Time Domain Smoothing
          852633 - Preserve Formants, Time Domain Smoothing
          852634 - Mid/Side, Time Domain Smoothing
          852635 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852636 - Independent Phase, Time Domain Smoothing
          852637 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852638 - Mid/Side, Independent Phase, Time Domain Smoothing
          852639 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Short
          852640 - nothing
          852641 - Preserve Formants
          852642 - Mid/Side
          852643 - Preserve Formants, Mid/Side
          852644 - Independent Phase
          852645 - Preserve Formants, Independent Phase
          852646 - Mid/Side, Independent Phase
          852647 - Preserve Formants, Mid/Side, Independent Phase
          852648 - Time Domain Smoothing
          852649 - Preserve Formants, Time Domain Smoothing
          852650 - Mid/Side, Time Domain Smoothing
          852651 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852652 - Independent Phase, Time Domain Smoothing
          852653 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852654 - Mid/Side, Independent Phase, Time Domain Smoothing
          852655 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852656 - nothing
          852657 - Preserve Formants
          852658 - Mid/Side
          852659 - Preserve Formants, Mid/Side
          852660 - Independent Phase
          852661 - Preserve Formants, Independent Phase
          852662 - Mid/Side, Independent Phase
          852663 - Preserve Formants, Mid/Side, Independent Phase
          852664 - Time Domain Smoothing
          852665 - Preserve Formants, Time Domain Smoothing
          852666 - Mid/Side, Time Domain Smoothing
          852667 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852668 - Independent Phase, Time Domain Smoothing
          852669 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852670 - Mid/Side, Independent Phase, Time Domain Smoothing
          852671 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Short
          852672 - nothing
          852673 - Preserve Formants
          852674 - Mid/Side
          852675 - Preserve Formants, Mid/Side
          852676 - Independent Phase
          852677 - Preserve Formants, Independent Phase
          852678 - Mid/Side, Independent Phase
          852679 - Preserve Formants, Mid/Side, Independent Phase
          852680 - Time Domain Smoothing
          852681 - Preserve Formants, Time Domain Smoothing
          852682 - Mid/Side, Time Domain Smoothing
          852683 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852684 - Independent Phase, Time Domain Smoothing
          852685 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852686 - Mid/Side, Independent Phase, Time Domain Smoothing
          852687 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Short
          852688 - nothing
          852689 - Preserve Formants
          852690 - Mid/Side
          852691 - Preserve Formants, Mid/Side
          852692 - Independent Phase
          852693 - Preserve Formants, Independent Phase
          852694 - Mid/Side, Independent Phase
          852695 - Preserve Formants, Mid/Side, Independent Phase
          852696 - Time Domain Smoothing
          852697 - Preserve Formants, Time Domain Smoothing
          852698 - Mid/Side, Time Domain Smoothing
          852699 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852700 - Independent Phase, Time Domain Smoothing
          852701 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852702 - Mid/Side, Independent Phase, Time Domain Smoothing
          852703 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Short
          852704 - nothing
          852705 - Preserve Formants
          852706 - Mid/Side
          852707 - Preserve Formants, Mid/Side
          852708 - Independent Phase
          852709 - Preserve Formants, Independent Phase
          852710 - Mid/Side, Independent Phase
          852711 - Preserve Formants, Mid/Side, Independent Phase
          852712 - Time Domain Smoothing
          852713 - Preserve Formants, Time Domain Smoothing
          852714 - Mid/Side, Time Domain Smoothing
          852715 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852716 - Independent Phase, Time Domain Smoothing
          852717 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852718 - Mid/Side, Independent Phase, Time Domain Smoothing
          852719 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Short
          852720 - nothing
          852721 - Preserve Formants
          852722 - Mid/Side
          852723 - Preserve Formants, Mid/Side
          852724 - Independent Phase
          852725 - Preserve Formants, Independent Phase
          852726 - Mid/Side, Independent Phase
          852727 - Preserve Formants, Mid/Side, Independent Phase
          852728 - Time Domain Smoothing
          852729 - Preserve Formants, Time Domain Smoothing
          852730 - Mid/Side, Time Domain Smoothing
          852731 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852732 - Independent Phase, Time Domain Smoothing
          852733 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852734 - Mid/Side, Independent Phase, Time Domain Smoothing
          852735 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852736 - nothing
          852737 - Preserve Formants
          852738 - Mid/Side
          852739 - Preserve Formants, Mid/Side
          852740 - Independent Phase
          852741 - Preserve Formants, Independent Phase
          852742 - Mid/Side, Independent Phase
          852743 - Preserve Formants, Mid/Side, Independent Phase
          852744 - Time Domain Smoothing
          852745 - Preserve Formants, Time Domain Smoothing
          852746 - Mid/Side, Time Domain Smoothing
          852747 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852748 - Independent Phase, Time Domain Smoothing
          852749 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852750 - Mid/Side, Independent Phase, Time Domain Smoothing
          852751 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852752 - nothing
          852753 - Preserve Formants
          852754 - Mid/Side
          852755 - Preserve Formants, Mid/Side
          852756 - Independent Phase
          852757 - Preserve Formants, Independent Phase
          852758 - Mid/Side, Independent Phase
          852759 - Preserve Formants, Mid/Side, Independent Phase
          852760 - Time Domain Smoothing
          852761 - Preserve Formants, Time Domain Smoothing
          852762 - Mid/Side, Time Domain Smoothing
          852763 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852764 - Independent Phase, Time Domain Smoothing
          852765 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852766 - Mid/Side, Independent Phase, Time Domain Smoothing
          852767 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Short
          852768 - nothing
          852769 - Preserve Formants
          852770 - Mid/Side
          852771 - Preserve Formants, Mid/Side
          852772 - Independent Phase
          852773 - Preserve Formants, Independent Phase
          852774 - Mid/Side, Independent Phase
          852775 - Preserve Formants, Mid/Side, Independent Phase
          852776 - Time Domain Smoothing
          852777 - Preserve Formants, Time Domain Smoothing
          852778 - Mid/Side, Time Domain Smoothing
          852779 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852780 - Independent Phase, Time Domain Smoothing
          852781 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852782 - Mid/Side, Independent Phase, Time Domain Smoothing
          852783 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Short
          852784 - nothing
          852785 - Preserve Formants
          852786 - Mid/Side
          852787 - Preserve Formants, Mid/Side
          852788 - Independent Phase
          852789 - Preserve Formants, Independent Phase
          852790 - Mid/Side, Independent Phase
          852791 - Preserve Formants, Mid/Side, Independent Phase
          852792 - Time Domain Smoothing
          852793 - Preserve Formants, Time Domain Smoothing
          852794 - Mid/Side, Time Domain Smoothing
          852795 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852796 - Independent Phase, Time Domain Smoothing
          852797 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852798 - Mid/Side, Independent Phase, Time Domain Smoothing
          852799 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852800 - nothing
          852801 - Preserve Formants
          852802 - Mid/Side
          852803 - Preserve Formants, Mid/Side
          852804 - Independent Phase
          852805 - Preserve Formants, Independent Phase
          852806 - Mid/Side, Independent Phase
          852807 - Preserve Formants, Mid/Side, Independent Phase
          852808 - Time Domain Smoothing
          852809 - Preserve Formants, Time Domain Smoothing
          852810 - Mid/Side, Time Domain Smoothing
          852811 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852812 - Independent Phase, Time Domain Smoothing
          852813 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852814 - Mid/Side, Independent Phase, Time Domain Smoothing
          852815 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Short
          852816 - nothing
          852817 - Preserve Formants
          852818 - Mid/Side
          852819 - Preserve Formants, Mid/Side
          852820 - Independent Phase
          852821 - Preserve Formants, Independent Phase
          852822 - Mid/Side, Independent Phase
          852823 - Preserve Formants, Mid/Side, Independent Phase
          852824 - Time Domain Smoothing
          852825 - Preserve Formants, Time Domain Smoothing
          852826 - Mid/Side, Time Domain Smoothing
          852827 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852828 - Independent Phase, Time Domain Smoothing
          852829 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852830 - Mid/Side, Independent Phase, Time Domain Smoothing
          852831 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Window: Long
          852832 - nothing
          852833 - Preserve Formants
          852834 - Mid/Side
          852835 - Preserve Formants, Mid/Side
          852836 - Independent Phase
          852837 - Preserve Formants, Independent Phase
          852838 - Mid/Side, Independent Phase
          852839 - Preserve Formants, Mid/Side, Independent Phase
          852840 - Time Domain Smoothing
          852841 - Preserve Formants, Time Domain Smoothing
          852842 - Mid/Side, Time Domain Smoothing
          852843 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852844 - Independent Phase, Time Domain Smoothing
          852845 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852846 - Mid/Side, Independent Phase, Time Domain Smoothing
          852847 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Window: Long
          852848 - nothing
          852849 - Preserve Formants
          852850 - Mid/Side
          852851 - Preserve Formants, Mid/Side
          852852 - Independent Phase
          852853 - Preserve Formants, Independent Phase
          852854 - Mid/Side, Independent Phase
          852855 - Preserve Formants, Mid/Side, Independent Phase
          852856 - Time Domain Smoothing
          852857 - Preserve Formants, Time Domain Smoothing
          852858 - Mid/Side, Time Domain Smoothing
          852859 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852860 - Independent Phase, Time Domain Smoothing
          852861 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852862 - Mid/Side, Independent Phase, Time Domain Smoothing
          852863 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Window: Long
          852864 - nothing
          852865 - Preserve Formants
          852866 - Mid/Side
          852867 - Preserve Formants, Mid/Side
          852868 - Independent Phase
          852869 - Preserve Formants, Independent Phase
          852870 - Mid/Side, Independent Phase
          852871 - Preserve Formants, Mid/Side, Independent Phase
          852872 - Time Domain Smoothing
          852873 - Preserve Formants, Time Domain Smoothing
          852874 - Mid/Side, Time Domain Smoothing
          852875 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852876 - Independent Phase, Time Domain Smoothing
          852877 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852878 - Mid/Side, Independent Phase, Time Domain Smoothing
          852879 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Window: Long
          852880 - nothing
          852881 - Preserve Formants
          852882 - Mid/Side
          852883 - Preserve Formants, Mid/Side
          852884 - Independent Phase
          852885 - Preserve Formants, Independent Phase
          852886 - Mid/Side, Independent Phase
          852887 - Preserve Formants, Mid/Side, Independent Phase
          852888 - Time Domain Smoothing
          852889 - Preserve Formants, Time Domain Smoothing
          852890 - Mid/Side, Time Domain Smoothing
          852891 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852892 - Independent Phase, Time Domain Smoothing
          852893 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852894 - Mid/Side, Independent Phase, Time Domain Smoothing
          852895 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Window: Long
          852896 - nothing
          852897 - Preserve Formants
          852898 - Mid/Side
          852899 - Preserve Formants, Mid/Side
          852900 - Independent Phase
          852901 - Preserve Formants, Independent Phase
          852902 - Mid/Side, Independent Phase
          852903 - Preserve Formants, Mid/Side, Independent Phase
          852904 - Time Domain Smoothing
          852905 - Preserve Formants, Time Domain Smoothing
          852906 - Mid/Side, Time Domain Smoothing
          852907 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852908 - Independent Phase, Time Domain Smoothing
          852909 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852910 - Mid/Side, Independent Phase, Time Domain Smoothing
          852911 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Window: Long
          852912 - nothing
          852913 - Preserve Formants
          852914 - Mid/Side
          852915 - Preserve Formants, Mid/Side
          852916 - Independent Phase
          852917 - Preserve Formants, Independent Phase
          852918 - Mid/Side, Independent Phase
          852919 - Preserve Formants, Mid/Side, Independent Phase
          852920 - Time Domain Smoothing
          852921 - Preserve Formants, Time Domain Smoothing
          852922 - Mid/Side, Time Domain Smoothing
          852923 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852924 - Independent Phase, Time Domain Smoothing
          852925 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852926 - Mid/Side, Independent Phase, Time Domain Smoothing
          852927 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Window: Long
          852928 - nothing
          852929 - Preserve Formants
          852930 - Mid/Side
          852931 - Preserve Formants, Mid/Side
          852932 - Independent Phase
          852933 - Preserve Formants, Independent Phase
          852934 - Mid/Side, Independent Phase
          852935 - Preserve Formants, Mid/Side, Independent Phase
          852936 - Time Domain Smoothing
          852937 - Preserve Formants, Time Domain Smoothing
          852938 - Mid/Side, Time Domain Smoothing
          852939 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852940 - Independent Phase, Time Domain Smoothing
          852941 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852942 - Mid/Side, Independent Phase, Time Domain Smoothing
          852943 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Window: Long
          852944 - nothing
          852945 - Preserve Formants
          852946 - Mid/Side
          852947 - Preserve Formants, Mid/Side
          852948 - Independent Phase
          852949 - Preserve Formants, Independent Phase
          852950 - Mid/Side, Independent Phase
          852951 - Preserve Formants, Mid/Side, Independent Phase
          852952 - Time Domain Smoothing
          852953 - Preserve Formants, Time Domain Smoothing
          852954 - Mid/Side, Time Domain Smoothing
          852955 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852956 - Independent Phase, Time Domain Smoothing
          852957 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852958 - Mid/Side, Independent Phase, Time Domain Smoothing
          852959 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Window: Long
          852960 - nothing
          852961 - Preserve Formants
          852962 - Mid/Side
          852963 - Preserve Formants, Mid/Side
          852964 - Independent Phase
          852965 - Preserve Formants, Independent Phase
          852966 - Mid/Side, Independent Phase
          852967 - Preserve Formants, Mid/Side, Independent Phase
          852968 - Time Domain Smoothing
          852969 - Preserve Formants, Time Domain Smoothing
          852970 - Mid/Side, Time Domain Smoothing
          852971 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852972 - Independent Phase, Time Domain Smoothing
          852973 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852974 - Mid/Side, Independent Phase, Time Domain Smoothing
          852975 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: HighQ, Window: Long
          852976 - nothing
          852977 - Preserve Formants
          852978 - Mid/Side
          852979 - Preserve Formants, Mid/Side
          852980 - Independent Phase
          852981 - Preserve Formants, Independent Phase
          852982 - Mid/Side, Independent Phase
          852983 - Preserve Formants, Mid/Side, Independent Phase
          852984 - Time Domain Smoothing
          852985 - Preserve Formants, Time Domain Smoothing
          852986 - Mid/Side, Time Domain Smoothing
          852987 - Preserve Formants, Mid/Side, Time Domain Smoothing
          852988 - Independent Phase, Time Domain Smoothing
          852989 - Preserve Formants, Independent Phase, Time Domain Smoothing
          852990 - Mid/Side, Independent Phase, Time Domain Smoothing
          852991 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: HighQ, Window: Long
          852992 - nothing
          852993 - Preserve Formants
          852994 - Mid/Side
          852995 - Preserve Formants, Mid/Side
          852996 - Independent Phase
          852997 - Preserve Formants, Independent Phase
          852998 - Mid/Side, Independent Phase
          852999 - Preserve Formants, Mid/Side, Independent Phase
          853000 - Time Domain Smoothing
          853001 - Preserve Formants, Time Domain Smoothing
          853002 - Mid/Side, Time Domain Smoothing
          853003 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853004 - Independent Phase, Time Domain Smoothing
          853005 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853006 - Mid/Side, Independent Phase, Time Domain Smoothing
          853007 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: HighQ, Window: Long
          853008 - nothing
          853009 - Preserve Formants
          853010 - Mid/Side
          853011 - Preserve Formants, Mid/Side
          853012 - Independent Phase
          853013 - Preserve Formants, Independent Phase
          853014 - Mid/Side, Independent Phase
          853015 - Preserve Formants, Mid/Side, Independent Phase
          853016 - Time Domain Smoothing
          853017 - Preserve Formants, Time Domain Smoothing
          853018 - Mid/Side, Time Domain Smoothing
          853019 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853020 - Independent Phase, Time Domain Smoothing
          853021 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853022 - Mid/Side, Independent Phase, Time Domain Smoothing
          853023 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853024 - nothing
          853025 - Preserve Formants
          853026 - Mid/Side
          853027 - Preserve Formants, Mid/Side
          853028 - Independent Phase
          853029 - Preserve Formants, Independent Phase
          853030 - Mid/Side, Independent Phase
          853031 - Preserve Formants, Mid/Side, Independent Phase
          853032 - Time Domain Smoothing
          853033 - Preserve Formants, Time Domain Smoothing
          853034 - Mid/Side, Time Domain Smoothing
          853035 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853036 - Independent Phase, Time Domain Smoothing
          853037 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853038 - Mid/Side, Independent Phase, Time Domain Smoothing
          853039 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853040 - nothing
          853041 - Preserve Formants
          853042 - Mid/Side
          853043 - Preserve Formants, Mid/Side
          853044 - Independent Phase
          853045 - Preserve Formants, Independent Phase
          853046 - Mid/Side, Independent Phase
          853047 - Preserve Formants, Mid/Side, Independent Phase
          853048 - Time Domain Smoothing
          853049 - Preserve Formants, Time Domain Smoothing
          853050 - Mid/Side, Time Domain Smoothing
          853051 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853052 - Independent Phase, Time Domain Smoothing
          853053 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853054 - Mid/Side, Independent Phase, Time Domain Smoothing
          853055 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: HighQ, Window: Long
          853056 - nothing
          853057 - Preserve Formants
          853058 - Mid/Side
          853059 - Preserve Formants, Mid/Side
          853060 - Independent Phase
          853061 - Preserve Formants, Independent Phase
          853062 - Mid/Side, Independent Phase
          853063 - Preserve Formants, Mid/Side, Independent Phase
          853064 - Time Domain Smoothing
          853065 - Preserve Formants, Time Domain Smoothing
          853066 - Mid/Side, Time Domain Smoothing
          853067 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853068 - Independent Phase, Time Domain Smoothing
          853069 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853070 - Mid/Side, Independent Phase, Time Domain Smoothing
          853071 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: HighQ, Window: Long
          853072 - nothing
          853073 - Preserve Formants
          853074 - Mid/Side
          853075 - Preserve Formants, Mid/Side
          853076 - Independent Phase
          853077 - Preserve Formants, Independent Phase
          853078 - Mid/Side, Independent Phase
          853079 - Preserve Formants, Mid/Side, Independent Phase
          853080 - Time Domain Smoothing
          853081 - Preserve Formants, Time Domain Smoothing
          853082 - Mid/Side, Time Domain Smoothing
          853083 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853084 - Independent Phase, Time Domain Smoothing
          853085 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853086 - Mid/Side, Independent Phase, Time Domain Smoothing
          853087 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853088 - nothing
          853089 - Preserve Formants
          853090 - Mid/Side
          853091 - Preserve Formants, Mid/Side
          853092 - Independent Phase
          853093 - Preserve Formants, Independent Phase
          853094 - Mid/Side, Independent Phase
          853095 - Preserve Formants, Mid/Side, Independent Phase
          853096 - Time Domain Smoothing
          853097 - Preserve Formants, Time Domain Smoothing
          853098 - Mid/Side, Time Domain Smoothing
          853099 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853100 - Independent Phase, Time Domain Smoothing
          853101 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853102 - Mid/Side, Independent Phase, Time Domain Smoothing
          853103 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: HighQ, Window: Long
          853104 - nothing
          853105 - Preserve Formants
          853106 - Mid/Side
          853107 - Preserve Formants, Mid/Side
          853108 - Independent Phase
          853109 - Preserve Formants, Independent Phase
          853110 - Mid/Side, Independent Phase
          853111 - Preserve Formants, Mid/Side, Independent Phase
          853112 - Time Domain Smoothing
          853113 - Preserve Formants, Time Domain Smoothing
          853114 - Mid/Side, Time Domain Smoothing
          853115 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853116 - Independent Phase, Time Domain Smoothing
          853117 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853118 - Mid/Side, Independent Phase, Time Domain Smoothing
          853119 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Pitch Mode: Consistent, Window: Long
          853120 - nothing
          853121 - Preserve Formants
          853122 - Mid/Side
          853123 - Preserve Formants, Mid/Side
          853124 - Independent Phase
          853125 - Preserve Formants, Independent Phase
          853126 - Mid/Side, Independent Phase
          853127 - Preserve Formants, Mid/Side, Independent Phase
          853128 - Time Domain Smoothing
          853129 - Preserve Formants, Time Domain Smoothing
          853130 - Mid/Side, Time Domain Smoothing
          853131 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853132 - Independent Phase, Time Domain Smoothing
          853133 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853134 - Mid/Side, Independent Phase, Time Domain Smoothing
          853135 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Pitch Mode: Consistent, Window: Long
          853136 - nothing
          853137 - Preserve Formants
          853138 - Mid/Side
          853139 - Preserve Formants, Mid/Side
          853140 - Independent Phase
          853141 - Preserve Formants, Independent Phase
          853142 - Mid/Side, Independent Phase
          853143 - Preserve Formants, Mid/Side, Independent Phase
          853144 - Time Domain Smoothing
          853145 - Preserve Formants, Time Domain Smoothing
          853146 - Mid/Side, Time Domain Smoothing
          853147 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853148 - Independent Phase, Time Domain Smoothing
          853149 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853150 - Mid/Side, Independent Phase, Time Domain Smoothing
          853151 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Pitch Mode: Consistent, Window: Long
          853152 - nothing
          853153 - Preserve Formants
          853154 - Mid/Side
          853155 - Preserve Formants, Mid/Side
          853156 - Independent Phase
          853157 - Preserve Formants, Independent Phase
          853158 - Mid/Side, Independent Phase
          853159 - Preserve Formants, Mid/Side, Independent Phase
          853160 - Time Domain Smoothing
          853161 - Preserve Formants, Time Domain Smoothing
          853162 - Mid/Side, Time Domain Smoothing
          853163 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853164 - Independent Phase, Time Domain Smoothing
          853165 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853166 - Mid/Side, Independent Phase, Time Domain Smoothing
          853167 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853168 - nothing
          853169 - Preserve Formants
          853170 - Mid/Side
          853171 - Preserve Formants, Mid/Side
          853172 - Independent Phase
          853173 - Preserve Formants, Independent Phase
          853174 - Mid/Side, Independent Phase
          853175 - Preserve Formants, Mid/Side, Independent Phase
          853176 - Time Domain Smoothing
          853177 - Preserve Formants, Time Domain Smoothing
          853178 - Mid/Side, Time Domain Smoothing
          853179 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853180 - Independent Phase, Time Domain Smoothing
          853181 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853182 - Mid/Side, Independent Phase, Time Domain Smoothing
          853183 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853184 - nothing
          853185 - Preserve Formants
          853186 - Mid/Side
          853187 - Preserve Formants, Mid/Side
          853188 - Independent Phase
          853189 - Preserve Formants, Independent Phase
          853190 - Mid/Side, Independent Phase
          853191 - Preserve Formants, Mid/Side, Independent Phase
          853192 - Time Domain Smoothing
          853193 - Preserve Formants, Time Domain Smoothing
          853194 - Mid/Side, Time Domain Smoothing
          853195 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853196 - Independent Phase, Time Domain Smoothing
          853197 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853198 - Mid/Side, Independent Phase, Time Domain Smoothing
          853199 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Percussive, Pitch Mode: Consistent, Window: Long
          853200 - nothing
          853201 - Preserve Formants
          853202 - Mid/Side
          853203 - Preserve Formants, Mid/Side
          853204 - Independent Phase
          853205 - Preserve Formants, Independent Phase
          853206 - Mid/Side, Independent Phase
          853207 - Preserve Formants, Mid/Side, Independent Phase
          853208 - Time Domain Smoothing
          853209 - Preserve Formants, Time Domain Smoothing
          853210 - Mid/Side, Time Domain Smoothing
          853211 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853212 - Independent Phase, Time Domain Smoothing
          853213 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853214 - Mid/Side, Independent Phase, Time Domain Smoothing
          853215 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Detector: Soft, Pitch Mode: Consistent, Window: Long
          853216 - nothing
          853217 - Preserve Formants
          853218 - Mid/Side
          853219 - Preserve Formants, Mid/Side
          853220 - Independent Phase
          853221 - Preserve Formants, Independent Phase
          853222 - Mid/Side, Independent Phase
          853223 - Preserve Formants, Mid/Side, Independent Phase
          853224 - Time Domain Smoothing
          853225 - Preserve Formants, Time Domain Smoothing
          853226 - Mid/Side, Time Domain Smoothing
          853227 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853228 - Independent Phase, Time Domain Smoothing
          853229 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853230 - Mid/Side, Independent Phase, Time Domain Smoothing
          853231 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Mixed, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853232 - nothing
          853233 - Preserve Formants
          853234 - Mid/Side
          853235 - Preserve Formants, Mid/Side
          853236 - Independent Phase
          853237 - Preserve Formants, Independent Phase
          853238 - Mid/Side, Independent Phase
          853239 - Preserve Formants, Mid/Side, Independent Phase
          853240 - Time Domain Smoothing
          853241 - Preserve Formants, Time Domain Smoothing
          853242 - Mid/Side, Time Domain Smoothing
          853243 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853244 - Independent Phase, Time Domain Smoothing
          853245 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853246 - Mid/Side, Independent Phase, Time Domain Smoothing
          853247 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing
      
      Rubber Band Library - Transients: Smooth, Detector: Soft, Pitch Mode: Consistent, Window: Long
          853248 - nothing
          853249 - Preserve Formants
          853250 - Mid/Side
          853251 - Preserve Formants, Mid/Side
          853252 - Independent Phase
          853253 - Preserve Formants, Independent Phase
          853254 - Mid/Side, Independent Phase
          853255 - Preserve Formants, Mid/Side, Independent Phase
          853256 - Time Domain Smoothing
          853257 - Preserve Formants, Time Domain Smoothing
          853258 - Mid/Side, Time Domain Smoothing
          853259 - Preserve Formants, Mid/Side, Time Domain Smoothing
          853260 - Independent Phase, Time Domain Smoothing
          853261 - Preserve Formants, Independent Phase, Time Domain Smoothing
          853262 - Mid/Side, Independent Phase, Time Domain Smoothing
          853263 - Preserve Formants, Mid/Side, Independent Phase, Time Domain Smoothing 
 integer stretch_marker_mode the stretch marker mode
0, Balanced
1, Tonal-optimized
2, Transient-optimized
3, No pre-echo reduction 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_TakeLane

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_TakeLane(string projectfilename_with_path, integer take_lane_state, optional string ProjectStateChunk)

Description:
Sets the take-lane-state in an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer take_lane_state take-lane-state 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_SampleRate

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_SampleRate(string projectfilename_with_path, integer sample_rate, integer project_sample_rate, integer force_tempo_time_sig, optional string ProjectStateChunk)

Description:
Sets the project-samplerate-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer sample_rate Project Sample Rate in Hz 
 integer project_sample_rate Checkbox: Project Sample Rate 
 integer force_tempo_time_sig Checkbox: Force Project Tempo/Time Signature changes to occur on whole samples  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 SetProject_TrackMixingDepth

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_TrackMixingDepth(string projectfilename_with_path, integer mixingdepth, optional string ProjectStateChunk)

Description:
Sets the project-samplerate-state, as set in the project-settings, from an rpp-project-file or a ProjectStateChunk.
Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer mixingdepth the track mixing depth
   1 - 32 bit float
   2 - 39 bit integer
   3 - 24 bit integer
   4 - 16 bit integer
   5 - 12 bit integer
   6 - 8 bit integer 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 GetProject_CountMarkersAndRegions

Functioncall:

integer number_of_markers_and_regions, integer number_of_regions_only, integer number_of_markers_only = ultraschall.GetProject_CountMarkersAndRegions(string projectfilename_with_path)

Description:
returns the number of all markers, the number of regions and the number of markers(that are not regions) in the project.

It's the entry MARKER

returns -1 in case of an error

Returnvalues:
 integer number_of_markers_and_regions the number of all markers and regions 
 integer number_of_regions_only the number of regions 
 integer number_of_markers_only the number of markers only 

Parameters:
 string projectfilename_with_path the projectfilename in which to count the markers 


^ Reaper version 5.40Lua version 5.3 GetProject_GetMarker

Functioncall:

boolean retval, integer shownnumber, number markerposition, string markertitle, integer markercolor = ultraschall.GetProject_GetMarker(string projectfilename_with_path, integer idx)

Description:
returns the information of the marker idx in a projectfile.

It's the entry MARKER

returns false in case of error

Returnvalues:
 boolean retval true, in case of success; false in case of failure 
 integer shownnumber the number that is shown with the marker in the arrange-view 
 number markerposition the position of the marker in seconds 
 string markertitle the name of the marker. "" if no name is given. 
 integer markercolor the colorvalue of the marker 

Parameters:
 string projectfilename_with_path the projectfilename from where to get the marker 
 integer idx the number of the marker, you want to have the information of 


^ Reaper version 5.40Lua version 5.3 GetProject_GetRegion

Functioncall:

boolean retval, integer shownnumber, number start_of_region, number end_of_region, string regionname, integer regioncolor = ultraschall.GetProject_GetRegion(string projectfilename_with_path, integer idx)

Description:
returns the information of the region idx in a projectfile.

It's the entry MARKER

returns false in case of error

Returnvalues:
 boolean retval true, in case of success; false in case of failure 
 integer shownnumber the number that is shown with the region in the arrange-view 
 number start_of_region the startposition of the region in seconds 
 number end_of_region the endposition of the region in seconds 
 string regionname the name of the region. "" if no name is given. 
 integer regioncolor the colorvalue of the region 

Parameters:
 string projectfilename_with_path the projectfilename from where to get the region 
 integer idx the number of the marker, you want to have the information of 


^ Reaper version 6.02Lua version 5.3 GetProject_MarkersAndRegions

Functioncall:

integer markerregioncount, integer NumMarker, integer Numregions, array Markertable = ultraschall.GetProject_MarkersAndRegions(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the markers and regions from an RPP-Projectfile or a ProjectStateChunk.
Doe not return TimeSignature-markers(!)
Returns nil in case of error or if no such entry exists.

Returnvalues:
 integer markerregioncount the number of markers and regions in the projectfile/ProjectStateChunk 
 array markertable an array with all elements of markers/regions
markertable has the following entries:
markertable[id][1]=boolean isrgn - true, marker is a region; false, marker is a normal marker
markertable[id][2]=number pos    - the startposition of the marker/region
markertable[id][3]=number rgnend - the endposition of a region; 0, if it's a marker
markertable[id][4]=string name   - the name of the marker/region
markertable[id][5]=integer markrgnindexnumber - the shown number of the region/marker
markertable[id][6]=integer color - the color-value of the marker
markertable[id][7]=string guid - the guid of the marker 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.77Lua version 5.3 IsValidReaProject

Functioncall:

boolean retval = ultraschall.IsValidReaProject(ReaProject ReaProject)

Description:
Returns, if parameter ReaProject is a valid ReaProject(means, an existing opened project) or not.

returns false in case of an error

Returnvalues:
 boolean retval true, if parameter ReaProject is a valid ReaProject; false, if parameter ReaProject isn't a valid ReaProject 

Parameters:
 ReaProject ReaProject the object that you want to check for being a valid ReaProject 


^ Reaper version 5.941Lua version 5.3 NewProjectTab

Functioncall:

ReaProject newproject = ultraschall.NewProjectTab(boolean switch_to_new_tab)

Description:
Opens a new projecttab and optionally switches to it. Returns the newly created ReaProject.

returns nil in case of an error

Returnvalues:
 ReaProject newproject the newly created project-object of the projecttab 

Parameters:
 boolean switch_to_new_tab true, switch to the newly created project-tab; false, stay in the "old" project-tab 


^ Reaper version 5.941Lua version 5.3 GetCurrentTimeLengthOfFrame

Functioncall:

number length = ultraschall.GetCurrentTimeLengthOfFrame(ReaProject ReaProject)

Description:
Returns a project's length of a frame in seconds. Depends on the fps set in the Project's settings of ReaProject.

Returns -1 in case of an error

Returnvalues:
 number length the current length of a frame of ReaProject in seconds 

Parameters:
 ReaProject ReaProject the project to check for; use nil or 0 for the current project 


^ Reaper version 5.941Lua version 5.3 GetLengthOfFrames

Functioncall:

number length = ultraschall.GetLengthOfFrames(integer frames, ReaProject ReaProject)

Description:
Returns the length of a number of frames of a ReaProject. Depends on the fps set in the Project's settings of ReaProject.

Returns -1 in case of an error

Returnvalues:
 number length the current length of frames of ReaProject in seconds 

Parameters:
 integer frames the number of frames, whose length you would love to know 
 ReaProject ReaProject the project to check for; use nil or 0 for the current project 


^ Reaper version 5.941Lua version 5.3 ConvertOldProjectToCurrentReaperVersion

Functioncall:

boolean retval = ultraschall.ConvertOldProjectToCurrentReaperVersion(string filename_with_path)

Description:
Convert an old Reaper-project to the current Reaper-version.
It creates a backup-copy of the old version of the project.rpp to project.rpp~0
After that, it will open the project and save it again, so it is saved with the newest version of Reaper.

Maybe helpful, when you want to use the Ultraschall-API Get/SetProject-State-functions on older projects, where some states were saved differently.
Just create a "new" version of it and use the aforementioned functions on the new project-version.

Returns false in case of an error.

Returnvalues:
 boolean retval true, conversion was successfull; false, conversion wasn't successful(file doesn't exist or a copy can't be created) 

Parameters:
 string filename_with_path the filename with path of the rpp-projectfile to be converted. 


^ Reaper version 5.95Lua version 5.3 GetProject_ProjectBay

Functioncall:

string ProjectBayStateChunk = ultraschall.GetProject_ProjectBay(string ProjectStateChunk, optional string ProjectStateChunk)

Description:
returns the ProjectBay-StateChunk, that holds MediaItems, that shall be retained in the "background" of the project, even if they are deleted from the project.
These MediaItems can be seen and set to retain from within the ProjectBay-window.

It's the entry <PROJBAY ... >

returns nil in case of an error

Returnvalues:
 string ProjectBayStateChunk the statechunk of the ProjectBay 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the projectbay-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Metronome

Functioncall:

string MetronomeStateChunk = ultraschall.GetProject_Metronome(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Metronome-StateChunk, that holds metronome-settings.

It's the entry <METRONOME ... >

returns nil in case of an error

Returnvalues:
 string MetronomeStateChunk the statechunk of the Metronome 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the metronome-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterPlayspeed

Functioncall:

string MasterPlayspeedStateChunk = ultraschall.GetProject_MasterPlayspeed(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-Playspeed-StateChunk, that holds Playspeed-settings of the master.

It's the entry <MASTERPLAYSPEEDENV ... >

returns nil in case of an error

Returnvalues:
 string MasterPlayspeedStateChunk the statechunk of the MasterPlaySpeed 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-playspeed-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_TempoEnvEx

Functioncall:

string TempoStateChunk = ultraschall.GetProject_TempoEnvEx(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Tempo-StateChunk, that holds tempo-settings of the master.

It's the entry <TEMPOENVEX ... >

returns nil in case of an error

Returnvalues:
 string TempoStateChunk the statechunk of the Tempo 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the tempo-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Extensions

Functioncall:

string ExtensionsStateChunk = ultraschall.GetProject_Extensions(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Extensions-settings-StateChunk, that holds tempo-settings of the master.

It's the entry <EXTENSIONS ... >

returns nil in case of an error

Returnvalues:
 string ExtensionsStateChunk the statechunk of the Extensions-settings 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the extension-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Lock

Functioncall:

integer lock_state = ultraschall.GetProject_Lock(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the individual lock-settings of the project, as set in menu Options -> Locking -> Locking Settings

It's the entry LOCK
It is the one before(!) any
It is a bitfield, containing numerous settings.

returns nil in case of an error

Returnvalues:
 integer lock_state the lock-state, which is a bitfield
&1     - Time selection
&2     - Items (full)
&4     - Track envelopes
&8     - Markers
&16    - Regions
&32    - Time signature markers
&64    - Items (prevent left/right movement)
&128   - Items (prevent up/down movement)
&256   - Item edges
&512   - Item fade/volume handles
&1024  - Loop points locked
&2048  - Item envelopes
&4096  - Item stretch markers
&16384 - Enable locking 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the lock-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_GlobalAuto

Functioncall:

integer globalauto_state = ultraschall.GetProject_GlobalAuto(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the global-automation-settings of the project.

It's the entry GLOBAL_AUTO

returns nil in case of an error or if the setting isn't existing

Returnvalues:
 integer globalauto_state the global automation override state, this sets the same automation mode to all tracks!
-1, No global automation override, automation-mode will be set by track
0, trim/read mode
1, read mode
2, touch mode
3, write mode
4, latch mode
5, latch preview mode
6, bypass all automation 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the global-automation-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Tempo

Functioncall:

number bpm, integer beat, integer denominator = ultraschall.GetProject_Tempo(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the tempo-settings of the project, as set in the Project Settings -> Project Settings-tab

It's the entry TEMPO

returns nil in case of an error

Returnvalues:
 number bpm the tempo of the project in bpm 
 integer beat the beat of the project 
 integer denominator the denominator for the beat 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the tempo-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Playrate

Functioncall:

number playrate, integer preserve_pitch, number min_playrate, number max_playrate = ultraschall.GetProject_Playrate(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the tempo-settings of the project, as set in the Project Settings -> Project Settings-tab

It's the entry PLAYRATE

returns nil in case of an error

Returnvalues:
 number playrate the currently set playrate; 0.01 to 10 
 integer preserve_pitch 0, don't preserve pitch, when changing playrate; 1, preserve pitch, when changing playrate 
 number min_playrate the minimum playrate possible in the project; 0.01 to 10 
 number max_playrate the maximum playrate possible in the project; 0.01 to 10 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the playrate-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterAutomode

Functioncall:

integer automode = ultraschall.GetProject_MasterAutomode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the automation-mode of the master-track of the project, as set in the "Envelopes for Master Track"-dialog or the context-menu for the Master Track -> Set track automation mode -> ...

It's the entry MASTERAUTOMODE

returns nil in case of an error

Returnvalues:
 integer automode the automation-mode, as set in the Envelopes for Master Track
0, Trim/Read
1, Read
2, Touch
3, Write
4, Latch
5, Latch Preview 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-automation-mode; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterSel

Functioncall:

integer selection = ultraschall.GetProject_MasterSel(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-track-selection-state of the master-track of the project.

It's the entry MASTER_SEL

returns nil in case of an error

Returnvalues:
 integer selection the selection-state; 0, master-track unselected; 1, master-track selected 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-selection; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterFXByp

Functioncall:

integer fx_byp_state = ultraschall.GetProject_MasterFXByp(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the fx-bypass-state of the master-track of the project.

It's the entry MASTER_FX

returns nil in case of an error

Returnvalues:
 integer fx_byp_state the fx-bypass-state; 0, master-track-fx bypassed; 1, master-track-fx normal 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-fx-bypass-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterMuteSolo

Functioncall:

integer mute_solo_state = ultraschall.GetProject_MasterMuteSolo(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the mute-solo-state of the master-track of the project.
Has no exclusive-solo/mute-settings!

It's the entry MASTERMUTESOLO

returns nil in case of an error

Returnvalues:
 integer mute_solo_state the mute-solo-state; it is a bitfield
0, no mute, no solo, Mono mode L+R
&1, master-track muted
&2, master-track soloed
&4, master-track mono-button
&8, Mono mode:L
&16, Mono mode:R
add 24 for Mono mode L-R 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-mute-solo-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterNChans

Functioncall:

integer number_of_channels, integer peak_metering = ultraschall.GetProject_MasterNChans(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the number of output channels-settings and the vu-peak-metering-settings of the master-track of the project.

It's the entry MASTER_NCH

returns nil in case of an error

Returnvalues:
 integer number_of_channels the number of output-channels, as set in the "Outputs for the Master Channel -> Track Channels"-dialog 
 integer peak_metering 2, Multichannel peak metering-setting, as set in the "Master VU settings"-dialog 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-nchans; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterTrackHeight

Functioncall:

integer height_state, integer height_lock = ultraschall.GetProject_MasterTrackHeight(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-trackheight-states of the master-track of the project.

It's the entry MASTERTRACKHEIGHT

returns nil in case of an error

Returnvalues:
 integer height_state the current-height of the master-track, from 24 to 260 
 integer height_lock 0, height-lock is off; 1, height-lock is on 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the mastertrackheight-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterTrackColor

Functioncall:

integer color = ultraschall.GetProject_MasterTrackColor(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-color of the master-track of the project.

It's the entry MASTERPEAKCOL

returns nil in case of an error

Returnvalues:
 integer color the color for the master-track 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the mastertrack-color; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterTrackView

Functioncall:

integer tcp_visibility, number state2, number state3, number state4, integer state5, integer state6, integer state7, integer state8, integer state9, integer state10 = ultraschall.GetProject_MasterTrackView(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-view-state of the master-track of the project or a ProjectStateChunk.

It's the entry MASTERTRACKVIEW

returns nil in case of an error

Returnvalues:
 integer tcp_visibility 0, Master-track is invisible in MCP; 1, Master-track is visible in MCP 
 number state2 unknown 
 number state3 unknown 
 number state4 unknown 
 integer state5 unknown 
 integer state6 unknown 
 integer state7 unknown 
 integer state8 unknown 
 integer state9 unknown 
 integer state10 unknown 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the trackview-states; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_CountMasterHWOuts

Functioncall:

integer count_of_hwouts = ultraschall.GetProject_CountMasterHWOuts(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the number of available hwouts in an rpp-project or ProjectStateChunk

It's the entry MASTERHWOUT

returns nil in case of an error

Returnvalues:
 integer count_of_hwouts the number of available hwouts in an rpp-project or ProjectStateChunk 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to count the master-hwouts; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterHWOut

Functioncall:

integer state1, integer state2, number volume, number pan, integer mute, integer phase, integer output_channels, number state8 = ultraschall.GetProject_MasterHWOut(string projectfilename_with_path, integer idx, optional string ProjectStateChunk)

Description:
returns the HWOut of the master-track of the project, as set in the "Outputs for Master Track"-dialog
There can be multiple HWOuts for the Master-Track.

It's the entry MASTERHWOUT

returns nil in case of an error

Returnvalues:
 integer state1 unknown 
 integer state2 unknown 
 number volume volume of the HWOut;  
 number pan the panning; -1(left), 1(right), 0(center) 
 integer mute mute-state; 0, unmuted; 1, muted 
 integer phase phase-inversion; 0, normal phase; 1, inversed phase 
 integer output_channels -1 - None
Stereo Source 1/2
Stereo Source 5/6
New Channels On Sending Track Stereo Source Channel 13/14
Mono Source 1
Mono Source 6
New Channels On Sending Track Mono Source Channel 7
New Channels On Sending Track Mono Source Channel 9
MultiChannel 4 Channels 1-4
Multichannel 4 Channels 3-6
Multichannel 6 Channels 1-6  
 number state8 unknown 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-hwout-states; nil to use ProjectStateChunk 
 integer idx the number of the requested HWOut-setting; 1 for the first, etc. 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterVolume

Functioncall:

number volume, number pan, number pan_law, number state4, number pan_knob3 = ultraschall.GetProject_MasterVolume(string projectfilename_with_path, integer idx, optional string ProjectStateChunk)

Description:
returns the Master-volume-state of the master-track of the project.

It's the entry MASTER_VOLUME

returns nil in case of an error

Returnvalues:
 number volume Volume; 0(-inf dB) to 3.981071705535(+12dB);1 for 0dB 
 number pan Panning; -1(left), 1(right), 0(center) 
 number pan_law Pan_Law, as set in the "Pan Law: Master Track"-dialog; 1(0dB); 0.5(-6.02dB) 
 number state4 unknown 
 number pan_knob3 the second pan_knob for pan-mode "Dual Pan"  

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-volume-states; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterPanMode

Functioncall:

integer panmode = ultraschall.GetProject_MasterPanMode(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-panmode of the master-track of the project.

It's the entry MASTER_PANMODE

returns nil in case of an error

Returnvalues:
 integer panmode the panmode for the master-track;
  -1, Project default (Stereo balance)
   3, Stereo balance  / mono pan(default)
   5, Stereo Pan
   6, Dual Pan
   nil, REAPER 3.x balance(deprecated) 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-panmode; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterWidth

Functioncall:

number pan_knob_two = ultraschall.GetProject_MasterWidth(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the master-width for the second pan-knob in stereo pan-modes, of the master-track of the project.

It's the entry MASTER_WIDTH

returns nil in case of an error

Returnvalues:
 number pan_knob_two -1(left), 1(right), 0(center) 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the masterwidth-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.40Lua version 5.3 GetProject_MasterGroupFlagsState

Functioncall:

integer GroupState_as_Flags, array IndividualGroupState_Flags = ultraschall.GetProject_MasterGroupFlagsState(string projectfilename_with_path, optional stirng ProjectStateChunk)

Description:
returns the state of the group-flags for the Master-Track, as set in the menu Track Grouping Parameters; from an rpp-projectfile or a ProjectStateChunk.

Returns a 23bit flagvalue as well as an array with 32 individual 23bit-flagvalues. You must use bitoperations to get the individual values.

You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table contains up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to get Volume Master(table entry 1) to check if it's set in Group 1(2^0=1) and 3(2^2=4):
  group1=groups_bitfield_table[1]&1
  group2=groups_bitfield_table[1]&4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

The GroupState_as_Flags-bitfield is a hint, if a certain flag is set in any of the groups. So, if you want to know, if VCA Master is set in any group, check if flag &1048576 (2^20) is set to 1048576.

This function will work only for Groups 1 to 32. To get Groups 33 to 64, use GetTrackGroupFlags_HighState instead!

It's the entry MASTER_GROUP_FLAGS

returns -1 in case of failure

Returnvalues:
 integer GroupState_as_Flags returns a flagvalue with 23 bits, that tells you, which grouping-flag is set in at least one of the 32 groups available.
returns -1 in case of failure

the following flags are available:
2^0 - Volume Master
2^1 - Volume Slave
2^2 - Pan Master
2^3 - Pan Slave
2^4 - Mute Master
2^5 - Mute Slave
2^6 - Solo Master
2^7 - Solo Slave
2^8 - Record Arm Master
2^9 - Record Arm Slave
2^10 - Polarity/Phase Master
2^11 - Polarity/Phase Slave
2^12 - Automation Mode Master
2^13 - Automation Mode Slave
2^14 - Reverse Volume
2^15 - Reverse Pan
2^16 - Do not master when slaving
2^17 - Reverse Width
2^18 - Width Master
2^19 - Width Slave
2^20 - VCA Master
2^21 - VCA Slave
2^22 - VCA pre-FX slave 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the groups-state-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.40Lua version 5.3 GetProject_MasterGroupFlagsHighState

Functioncall:

integer GroupState_as_Flags, array IndividualGroupState_Flags = ultraschall.GetProject_MasterGroupFlagsHighState(string projectfilename_with_path, optional stirng ProjectStateChunk)

Description:
returns the state of the group-high-flags for the Master-Track, as set in the menu Track Grouping Parameters; from an rpp-projectfile or a ProjectStateChunk.

Returns a 23bit flagvalue as well as an array with 32 individual 23bit-flagvalues. You must use bitoperations to get the individual values.

You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table contains up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to get Volume Master(table entry 1) to check if it's set in Group 1(2^0=1) and 3(2^2=4):
  group1=groups_bitfield_table[1]&1
  group2=groups_bitfield_table[1]&4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

The GroupState_as_Flags-bitfield is a hint, if a certain flag is set in any of the groups. So, if you want to know, if VCA Master is set in any group, check if flag &1048576 (2^20) is set to 1048576.

This function will work only for Groups 1 to 32. To get Groups 33 to 64, use GetTrackGroupFlags_HighState instead!

It's the entry MASTER_GROUP_FLAGS_HIGH

returns -1 in case of failure

Returnvalues:
 integer GroupState_as_Flags returns a flagvalue with 23 bits, that tells you, which grouping-flag is set in at least one of the 32 groups available.
returns -1 in case of failure

the following flags are available:
2^0 - Volume Master
2^1 - Volume Slave
2^2 - Pan Master
2^3 - Pan Slave
2^4 - Mute Master
2^5 - Mute Slave
2^6 - Solo Master
2^7 - Solo Slave
2^8 - Record Arm Master
2^9 - Record Arm Slave
2^10 - Polarity/Phase Master
2^11 - Polarity/Phase Slave
2^12 - Automation Mode Master
2^13 - Automation Mode Slave
2^14 - Reverse Volume
2^15 - Reverse Pan
2^16 - Do not master when slaving
2^17 - Reverse Width
2^18 - Width Master
2^19 - Width Slave
2^20 - VCA Master
2^21 - VCA Slave
2^22 - VCA pre-FX slave 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the groupshigh-state-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_GroupDisabled

Functioncall:

integer disabled1, integer disabled2 = ultraschall.GetProject_GroupDisabled(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the group-disabled-stated, of the master-track of the project.

It's the entry GROUPS_DISABLED

returns nil in case of an error

Returnvalues:
 integer disabled1 the disabled groups; it is a bitfield, with &1 for group 1; &32 for group 32; if it's set, the accompanying group is disabled 
 integer disabled2 the disabled groups_high; it is a bitfield, with &1 for group 33; &32 for group 64; if it's set, the accompanying group is disabled 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the groups-disabled-state; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterHWVolEnvStateChunk

Functioncall:

string MasterHWVolEnvStateChunk = ultraschall.GetProject_MasterHWVolEnvStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-HWVolEnv-StateChunk, that holds MasterHWVolEnv-settings of the master.

It's the entry <MASTERHWVOLENV ... >

returns nil in case of an error

Returnvalues:
 string MasterHWVolEnvStateChunk the statechunk of the HWVolEnv 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-hwvolenv-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterFXListStateChunk

Functioncall:

string MasterFXListStateChunk = ultraschall.GetProject_MasterFXListStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-FX_List-StateChunk, that holds Master-FX-settings for the window as well as the FX themselves, of the master.

It's the entry <MASTERFXLIST ... >

returns nil in case of an error

Returnvalues:
 string MasterFXListStateChunk the statechunk of the Master-FX-list 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-fxlist-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterDualPanEnvStateChunk

Functioncall:

string MasterDualPanEnvStateChunk = ultraschall.GetProject_MasterDualPanEnvStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-DualPanEnv-StateChunk, that holds MasterDualPanEnv-settings of the master.

It's the entry <MASTERDUALPANENV ... >

returns nil in case of an error

Returnvalues:
 string MasterDualPanEnvStateChunk the statechunk of the Master-DualPan-Env-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-dualpan-env-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterDualPanEnv2StateChunk

Functioncall:

string MasterDualPanEnv2StateChunk = ultraschall.GetProject_MasterDualPanEnv2StateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-DualPanEnv2-StateChunk, that holds master-DualPanEnv2-settings of the master.

It's the entry <MASTERDUALPANENV2 ... >

returns nil in case of an error

Returnvalues:
 string MasterDualPanEnvStateChunk the statechunk of the Master-DualPan-Env-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-dualpan-env2-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterDualPanEnvLStateChunk

Functioncall:

string MasterDualPanEnvLStateChunk = ultraschall.GetProject_MasterDualPanEnvLStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-DualPan-EnvL-StateChunk, that holds Master-DualPan-EnvL-settings of the master.

It's the entry <MASTERDUALPANENVL ... >

returns nil in case of an error

Returnvalues:
 string MasterDualPanEnvLStateChunk the statechunk of the Master-DualPan-EnvL-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-dualpan-envL-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterDualPanEnvL2StateChunk

Functioncall:

string MasterDualPanEnvL2StateChunk = ultraschall.GetProject_MasterDualPanEnvL2StateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-Dual-Pan-EnvL2-StateChunk, that holds Master-FX-Dual-Pan-EnvL2-settings of the master.

It's the entry <MASTERDUALPANENVL2 ... >

returns nil in case of an error

Returnvalues:
 string MasterDualPanEnvL2StateChunk the statechunk of the Master-DualPan-EnvL2-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-dualpan-envL2-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterVolEnvStateChunk

Functioncall:

string MasterVolEnvStateChunk = ultraschall.GetProject_MasterVolEnvStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-Vol-Env-StateChunk, that holds Master-Vol-Env-settings of the master.

It's the entry <MASTERVOLENV ... >

returns nil in case of an error

Returnvalues:
 string MasterVolEnvStateChunk the statechunk of the Master-volenv-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-volenv-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterVolEnv2StateChunk

Functioncall:

string MasterVolEnv2StateChunk = ultraschall.GetProject_MasterVolEnv2StateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-Vol-Env2-StateChunk, that holds Master-Vol-Env2-settings of the master.

It's the entry <MASTERVOLENV2 ... >

returns nil in case of an error

Returnvalues:
 string MasterVolEnv2StateChunk the statechunk of the Master-volenv2-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-volenv2-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterVolEnv3StateChunk

Functioncall:

string MasterVolEnv3StateChunk = ultraschall.GetProject_MasterVolEnv3StateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-Vol-Env3-StateChunk, that holds Master-Vol-Env3-settings of the master.

It's the entry <MASTERVOLENV3 ... >

returns nil in case of an error

Returnvalues:
 string MasterVolEnv3StateChunk the statechunk of the Master-volenv3-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-volenv3-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterHWPanEnvStateChunk

Functioncall:

string MasterHWPanEnvStateChunk = ultraschall.GetProject_MasterHWPanEnvStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-HW-pan-env-StateChunk, that holds Master-pan-env-settings of the master.

It's the entry <MASTERHWPANENV ... >

returns nil in case of an error

Returnvalues:
 string MasterHWPanEnvStateChunk the statechunk of the Master-volenv3-state 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-HW-pan-env-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_MasterPanMode_Ex

Functioncall:

string MasterHWPanModeEx_StateChunk = ultraschall.GetProject_MasterPanMode_Ex(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the Master-HW-pan-mode-ex-StateChunk, that holds Master-pan-mode-ex-settings of the master.

It's the entry <MASTER_PANMODE_EX ... >

returns nil in case of an error

Returnvalues:
 string MasterHWPanModeEx_StateChunk the statechunk of the Master-pan-mode-ex 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the master-HW-pan-env-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_TempoEnv_ExStateChunk

Functioncall:

string TempoEnv_ExStateChunk = ultraschall.GetProject_TempoEnv_ExStateChunk(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
returns the TempoEnv_ExStateChunk, that holds TempoEnv_Ex-settings of an rpp-project or ProjectStateChunk.

It's the entry <TEMPOENVEX ... >

returns nil in case of an error

Returnvalues:
 string TempoEnv_ExStateChunk the statechunk of the Tempo-Env-Ex 

Parameters:
 string projectfilename_with_path the projectfile+path, from which to get the tempo-env-ex-statechunk; nil to use ProjectStateChunk 
 optional string ProjectStateChunk a statechunk of a project, usually the contents of a rpp-project-file 


^ Reaper version 5.95Lua version 5.3 GetProject_Length

Functioncall:

number length, number last_itemedge, number last_marker_reg_edge, number last_timesig_marker = ultraschall.GetProject_Length(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the projectlength of an rpp-project-file.

It's returning the position of the overall length, as well as the position of the last itemedge/regionedge/marker/time-signature-marker of the project.

To do the same for currently opened projects, use: [GetProjectLength](#GetProjectLength)

Returns -1 in case of an error

Returnvalues:
 number length the length of the project 
 number last_itemedge the postion of the last itemedge in the project 
 number last_marker_reg_edge the position of the last marker/regionedge in the project 
 number last_timesig_marker the position of the last time-signature-marker in the project 

Parameters:
 string projectfilename_with_path the filename of the project, that you want to know it's length of; nil, to use Parameter ProjectStateChunk instead 
 optional string ProjectStateChunk a ProjectStateChunk to count the length of; only available when projectfilename_with_path=nil 


^ Reaper version 5.965Lua version 5.3 CreateTemporaryFileOfProjectfile

Functioncall:

string tempfile = ultraschall.CreateTemporaryFileOfProjectfile(string projectfilename_with_path)

Description:
Creates a temporary copy of an rpp-projectfile, which can be altered and rendered again.

Must be deleted by hand using os.remove(tempfile) after you're finished.

returns nil in case of an error

Returnvalues:
 string tempfile the temporary-file, that is a valid copy of the projectfilename_with_path 

Parameters:
 string projectfilename_with_path the project to render; nil, for the currently opened project(needs to be saved first) 


^ Reaper version 5.95Lua version 5.3 GetProject_Length

Functioncall:

number length, number last_itemedge, number last_marker_reg_edge, number last_timesig_marker = ultraschall.GetProject_Length(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the projectlength of an rpp-project-file.

It's eturning the position of the overall length, as well as the position of the last itemedge/regionedge/marker/time-signature-marker of the project.

Returns -1 in case of an error

Returnvalues:
 number length the length of the project 
 number last_itemedge the postion of the last itemedge in the project 
 number last_marker_reg_edge the position of the last marker/regionedge in the project 
 number last_timesig_marker the position of the last time-signature-marker in the project 

Parameters:
 string projectfilename_with_path the filename of the project, that you want to know it's length of; nil, to use Parameter ProjectStateChunk instead 
 optional string ProjectStateChunk a ProjectStateChunk to count the length of; only available when projectfilename_with_path=nil 


^ Reaper version 5.975Lua version 5.3 SetProject_RenderPattern

Functioncall:

integer retval = ultraschall.SetProject_RenderPattern(string projectfilename_with_path, string render_pattern, optional string ProjectStateChunk)

Description:
Sets the render-filename in an rpp-projectfile or a ProjectStateChunk. Set it to "", if you want to set the render-filename with SetProject_RenderFilename.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 string render_pattern the pattern, with which the rendering-filename will be automatically created. Check also GetProject_RenderFilename
Capitalizing the first character of the wildcard will capitalize the first letter of the substitution. Capitalizing the first two characters of the wildcard will capitalize all letters.

Directories will be created if necessary. For example if the render target is "$project/track", the directory "$project" will be created.

Immediately following a wildcard, character replacement statements may be specified:
     -- single character which is to be removed from the substituion. For example: $track< > removes all spaces from the track name, $track<\> removes all slashes.
   -- multiple characters, abcde are all replaced with X. For example: <_.> replaces all underscores with periods, replaces all slashes with underscores. If > is specified as a source character, it must be listed first in the list.

$item    media item take name, if the input is a media item
$itemnumber  1 for the first media item on a track, 2 for the second...
$track    track name
$tracknumber  1 for the first track, 2 for the second...
$parenttrack  parent track name
$region    region name
$regionnumber  1 for the first region, 2 for the second...
$project    project name
$tempo    project tempo at the start of the render region
$timesignature  project time signature at the start of the render region, formatted as 4-4
$filenumber  blank (optionally 1) for the first file rendered, 1 (optionally 2) for the second...
$filenumber[N]  N for the first file rendered, N+1 for the second...
$note    C0 for the first file rendered,C#0 for the second...
$note[X]    X (example: B2) for the first file rendered, X+1 (example: C3) for the second...
$natural    C0 for the first file rendered, D0 for the second...
$natural[X]  X (example: F2) for the first file rendered, X+1 (example: G2) for the second...
$namecount  1 for the first item or region of the same name, 2 for the second...
$timelineorder  1 for the first item or region on the timeline, 2 for the second...

Position/Length:
$start    start time of the media item, render region, or time selection, in M-SS.TTT
$end    end time of the media item, render region, or time selection, in M-SS.TTT
$length    length of the media item, render region, or time selection, in M-SS.TTT
$startbeats  start time in measures.beats of the media item, render region, or time selection
$endbeats  end time in measures.beats of the media item, render region, or time selection
$lengthbeats    length in measures.beats of the media item, render region, or time selection
$starttimecode  start time in H-MM-SS-FF format of the media item, render region, or time selection
$endtimecode  end time in H-MM-SS-FF format of the media item, render region, or time selection
$startframes  start time in absolute frames of the media item, render region, or time selection
$endframes  end time in absolute frames of the media item, render region, or time selection
$lengthframes  length in absolute frames of the media item, render region, or time selection
$startseconds  start time in whole seconds of the media item, render region, or time selection
$endseconds  end time in whole seconds of the media item, render region, or time selection
$lengthseconds  length in whole seconds of the media item, render region, or time selection

Output Format:
$format    render format (example: wav)
$samplerate  sample rate (example: 44100)
$sampleratek  sample rate (example: 44.1)
$bitdepth  bit depth, if available (example: 24 or 32FP)

Current Date/Time:
$year    year, currently 2019
$year2    last 2 digits of the year,currently 19
$month    month number,currently 04
$monthname  month name,currently apr
$day    day of the month, currently 28
$hour    hour of the day in 24-hour format,currently 23
$hour12    hour of the day in 12-hour format,currently 11
$ampm    am if before noon,pm if after noon,currently pm
$minute    minute of the hour,currently 30
$second    second of the minute,currently 27

Computer Information:
$user    user name
$computer  computer name
(this description has been taken from the Render Wildcard Help within the Render-Dialog of Reaper) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.40Lua version 5.3 GetProject_RenderFilename

Functioncall:

string render_filename = ultraschall.GetProject_RenderFilename(string projectfilename_with_path, optional string ProjectStateChunk)

Description:
Returns the render-filename from an RPP-Projectfile or a ProjectStateChunk. If it contains only a path or nothing, you should check the Render_Pattern using GetProject_RenderPattern, as a render-pattern influences the rendering-filename as well.

It's the entry RENDER_FILE

Returns nil in case of error.

Returnvalues:
 string render_filename the filename for rendering, check also GetProject_RenderPattern 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 GetProject_GroupName

Functioncall:

string groupname = ultraschall.GetProject_GroupName(string projectfilename_with_path, integer idx, optional string ProjectStateChunk)

Description:
Returns the name associated to a specific group of items. There can be more than one!

It is the GROUP-entry in the root of the ProjectStateChunk.

Returns nil in case of error or if no such entry exists.

Returnvalues:
 string groupname the associated groupname of the itemgroup; nil, no such group or no name is given(default Group idx) 

Parameters:
 string projectfilename_with_path filename with path for the rpp-projectfile; nil, if you want to use parameter ProjectStateChunk 
 integer idx the index of the item-group, whose name you want to know 
 optional string ProjectStateChunk a ProjectStateChunk to use instead if a filename; only used, when projectfilename_with_path is nil 


^ Reaper version 5.975Lua version 5.3 SetProject_Lock

Functioncall:

integer retval = ultraschall.SetProject_Lock(string projectfilename_with_path, integer lock_state, optional string ProjectStateChunk)

Description:
Sets the Locked-state of an rpp-projectfile or a ProjectStateChunk.

It's the entry LOCK
It is the one before(!) any
It is a bitfield, containing numerous settings.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer lock_state the lock-state, which is a bitfield
&1     - Time selection
&2     - Items (full)
&4     - Track envelopes
&8     - Markers
&16    - Regions
&32    - Time signature markers
&64    - Items (prevent left/right movement)
&128   - Items (prevent up/down movement)
&256   - Item edges
&512   - Item fade/volume handles
&1024  - Loop points locked
&2048  - Item envelopes
&4096  - Item stretch markers
&16384 - Enable locking 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_GlobalAuto

Functioncall:

integer retval = ultraschall.SetProject_GlobalAuto(string projectfilename_with_path, integer global_auto_state, optional string ProjectStateChunk)

Description:
Sets the global-auto-override-state of an rpp-projectfile or a ProjectStateChunk.

It's the entry GLOBAL_AUTO

This sets the same automation mode to all tracks!

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer global_auto_state the global automation override state, this sets the same automation mode to all tracks!
-1, No global automation override, automation-mode will be set by track
0, trim/read mode
1, read mode
2, touch mode
3, write mode
4, latch mode
5, latch preview mode
6, bypass all automation 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_Tempo

Functioncall:

integer retval = ultraschall.SetProject_Tempo(string projectfilename_with_path, integer bpm, integer beat, integer denominator, optional string ProjectStateChunk)

Description:
Sets the tempo, bpm, beat, denominator-state of an rpp-projectfile or a ProjectStateChunk.

It's the entry TEMPO

They are set in the Project Settings -> "Project BPM" and "Time signature"

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer bpm the tempo of the project in bpm 
 integer beat the beat of the project  
 integer denominator the denominator for the beat  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_Playrate

Functioncall:

integer retval = ultraschall.SetProject_Playrate(string projectfilename_with_path, number playrate, integer preserve_pitch, number min_playrate, number max_playrate, optional string ProjectStateChunk)

Description:
Sets the playrate of an rpp-projectfile or a ProjectStateChunk.

It's the entry PLAYRATE

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 number playrate the currently set playrate; 0.01 to 10 
 integer preserve_pitch 0, don't preserve pitch, when changing playrate; 1, preserve pitch, when chaning playrate  
 number min_playrate the minimum playrate possible in the project; 0.01 to 10 
 number max_playrate the maximum playrate possible in the project; 0.01 to 10 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterAutomode

Functioncall:

integer retval = ultraschall.SetProject_MasterAutomode(string projectfilename_with_path, integer automode, optional string ProjectStateChunk)

Description:
Sets the automation-mode for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTERAUTOMODE

This sets the same automation mode to all tracks!

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer automode the automation mode for the master-track
0, trim/read mode
1, read mode
2, touch mode
3, write mode
4, latch mode
5, latch preview mode 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterSel

Functioncall:

integer retval = ultraschall.SetProject_MasterSel(string projectfilename_with_path, integer selection_state, optional string ProjectStateChunk)

Description:
Sets the selection-state for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTER_SEL

This sets the same automation mode to all tracks!

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer selection_state the selection-state of the MasterTrack; 0, unselected; 1, selected 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterMuteSolo

Functioncall:

integer retval = ultraschall.SetProject_MasterMuteSolo(string projectfilename_with_path, integer mute_solo_state, optional string ProjectStateChunk)

Description:
Sets the mute/solo-state for the master-track of an rpp-projectfile or a ProjectStateChunk.
Has no exclusive-solo/mute-settings!

It's the entry MASTERMUTESOLO

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer mute_solo_state the mute-solo-state; it is a bitfield
   0, no mute, no solo, Mono mode L+R
   &1, master-track muted
   &2, master-track soloed
   &4, master-track mono-button
   &8, Mono mode:L
   &16, Mono mode:R
   add 24 for Mono mode L-R  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterFXByp

Functioncall:

integer retval = ultraschall.SetProject_MasterFXByp(string projectfilename_with_path, integer fx_byp_state, optional string ProjectStateChunk)

Description:
Sets the fx-bypass-state for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTER_FX

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer fx_byp_state the fx-bypass-state; 0, master-track-fx bypassed; 1, master-track-fx normal  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterNChans

Functioncall:

integer retval = ultraschall.SetProject_MasterNChans(string projectfilename_with_path, integer number_of_channels, integer peak_metering, optional string ProjectStateChunk)

Description:
Sets the number of channels and vu-meter-settings for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTER_NCH

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer number_of_channels the number of output-channels, as set in the "Outputs for the Master Channel -> Track Channels"-dialog  
 integer peak_metering 2, Multichannel peak metering-setting, as set in the "Master VU settings"-dialog  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterTrackHeight

Functioncall:

integer retval = ultraschall.SetProject_MasterTrackHeight(string projectfilename_with_path, integer height_state, integer height_lock, optional string ProjectStateChunk)

Description:
Sets the trackheight for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTERTRACKHEIGHT

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer height_state the current-height of the master-track, from 24 to 260  
 integer height_lock 0, height-lock is off; 1, height-lock is on  
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterTrackColor

Functioncall:

integer retval = ultraschall.SetProject_MasterTrackColor(string projectfilename_with_path, integer color, integer peak_metering, optional string ProjectStateChunk)

Description:
Sets the color for the master-track of an rpp-projectfile or a ProjectStateChunk.

To generate the correct color-value, use ConvertColor.
Note: This color reverses red and blue component on Mac, so it looks different on Mac compared to Windows and Linux!

It's the entry MASTERPEAKCOL

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer color the color-value of the MasterTrack 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.975Lua version 5.3 SetProject_MasterPanMode

Functioncall:

integer retval = ultraschall.SetProject_MasterPanMode(string projectfilename_with_path, integer panmode, integer peak_metering, optional string ProjectStateChunk)

Description:
Sets the panmode for the master-track of an rpp-projectfile or a ProjectStateChunk.

It's the entry MASTER_PANMODE

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer panmode the panmode for the master-track;
  -1, Project default (Stereo balance)
   3, Stereo balance  / mono pan(default)
   5, Stereo Pan
   6, Dual Pan
   nil, REAPER 3.x balance(deprecated) 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 6.02Lua version 5.3 SetProject_MasterTrackView

Functioncall:

integer retval, optional string ProjectStateChunk = ultraschall.SetProject_MasterTrackView(string projectfilename_with_path, integer tcp_visibility, number state2, number state3, number state4, integer state5, integer state6, integer state7, optional string ProjectStatechunk)

Description:
Sets the master-view-state of the master-track of the project or a ProjectStateChunk.

It is the entry: MASTERTRACKVIEW

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 optional string ProjectStateChunk the altered ProjectStateChunk 

Parameters:
 string projectfilename_with_path the filename of the projectfile; nil, to use Parameter ProjectStateChunk instead 
 integer tcp_visibility 0, Master-track is invisible in MCP; 1, Master-track is visible in MCP 
 number state2 unknown 
 number state3 unknown 
 number state4 unknown 
 integer state5 unknown 
 integer state6 unknown 
 integer state7 unknown 
 integer state8 unknown 
 integer state9 unknown 
 integer state10 unknown 
 optional string ProjectStateChunk a projectstatechunk, that you want to be changed 


^ Reaper version 5.977SWS version 2.10.0.1Julian Sader's plugin version 0.986Lua version 5.3 AutoSearchReaMoteSlaves

Functioncall:

ultraschall.AutoSearchReaMoteSlaves()

Description:
Auto-searches for new ReaMote-Slaves




^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 GetVerticalZoom

Functioncall:

integer vertical_zoom_factor = ultraschall.GetVerticalZoom()

Description:
Returns the vertical-zoom-factor.

Returns -1 in case of error

Returnvalues:
 integer vertical_zoom_factor the current vertical zoom-factor 



^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 SetVerticalZoom

Functioncall:

integer retval = ultraschall.SetVerticalZoom(integer vertical_zoom_factor)

Description:
Sets the vertical zoom factor.

To set it relative to the current vertical-zoom-value, use Reaper's own API-function CSurf_OnZoom

Returns -1 in case of error.

Returnvalues:
 integer retval -1, in case of error 

Parameters:
 integer vertical_zoom_factor the current vertical zoom-factor 


^ Reaper version 5.40Lua version 5.3 StoreArrangeviewSnapshot

Functioncall:

integer retval = ultraschall.StoreArrangeviewSnapshot(integer slot, string description, boolean position, boolean vzoom, boolean vscroll)

Description:
Stores a new Arrangeview-snapshot, that includes the position, horizontal zoom, vertical zoom and vertical scroll.

Returns -1 in case of error.

Returnvalues:
 integer retval -1, in case of error 

Parameters:
 integer slot the slot for arrangeview-snapshot 
 string description a description for this arrangeview-snapshot 
 boolean position true, store start and endposition of the current arrangeview; false, don't store start and endposition of current arrangeview(keep old position in slot, if existing) 
 boolean vzoom true, store current vertical-zoom-factor; false, don't store current vertical-zoom-factor(keep old zoomfactor in slot, if existing) 
 boolean vscroll true, store current vertical scroll-factor; false, don't store current vertival-scroll-factor 


^ Reaper version 5.40Lua version 5.3 IsValidArrangeviewSnapshot

Functioncall:

boolean retval = ultraschall.IsValidArrangeviewSnapshot(integer slot)

Description:
Checks, if an Arrangeview-snapshot-slot is valid(means set).

Returns false in case of error.

Returnvalues:
 boolean retval true, if Arrangeview-Snapshot is valid; false, if Arrangeview-Snapshot is not existing 

Parameters:
 integer slot the slot for arrangeview-snapshot 


^ Reaper version 5.40Lua version 5.3 RetrieveArrangeviewSnapshot

Functioncall:

boolean retval, string description, number startposition, number endposition, integer vzoomfactor, number hzoomfactor, number vertical_scroll = ultraschall.RetrieveArrangeviewSnapshot(integer slot)

Description:
Retrieves an Arrangeview-snapshot and returns the startposition, endposition and vertical and horizontal zoom-factor as well as the number vertical-scroll-factor..

Returns false in case of error.

Returnvalues:
 boolean retval false, in case of error; true, in case of success 
 string description a description for this arrangeview-snapshot 
 number startposition the startposition of the arrangeview 
 number endposition the endposition of the arrangeview 
 integer vzoom the vertical-zoomfactor(0-40) 
 number hzoomfactor the horizontal zoomfactor 
 number vertical_scroll the vertical scroll-value 

Parameters:
 integer slot the slot for arrangeview-snapshot 


^ Reaper version 5.40SWS version 2.9.7Lua version 5.3 RestoreArrangeviewSnapshot

Functioncall:

boolean retval, string description, number startposition, number endposition, integer vzoomfactor, number hzoomfactor, number vertical_scroll_factor = ultraschall.RestoreArrangeviewSnapshot(integer slot, optional boolean position, optional boolean vzoom, optional integer hcentermode, optional boolean verticalscroll)

Description:
Sets arrangeview to start/endposition and horizontal and vertical-zoom, as received from Arrangeview-Snapshot-slot. It returns the newly set start/endposition, vertical zoom, horizontal zoom and description of slot.

Returns false in case of error.

Returnvalues:
 boolean retval false, in case of error; true, in case of success 
 string description a description for this arrangeview-snapshot 
 number startposition the startposition of the arrangeview 
 number endposition the endposition of the arrangeview 
 integer vzoom the vertical-zoomfactor(0-40) 
 number hzoomfactor the horizontal zoomfactor 
 number vertical_scroll_factor the vertical-scroll-factor 

Parameters:
 integer slot the slot for arrangeview-snapshot 
 optional boolean position nil or true, set arrange to stored start and endposition(and it's horizontal-zoom); false, set only horizontal-zoom 
 optional boolean vzoom nil or true, set vertical-zoom; false, don't set vertical zoom 
 optional integer hcentermode decides, what shall be in the center of the zoomed horizontal view. Only available when position==false
The following are available:
  nil, keeps center of view in the center during zoom(default)
   -1, default selection, as set in the reaper-prefs,
    0, edit-cursor or playcursor(if it's in the current zoomfactor of the view during playback/recording) in center,
    1, keeps edit-cursor in center of zoom
    2, keeps center of view in the center during zoom
    3, keeps in center of zoom, what is beneath the mousecursor 
 optional boolean verticalscroll true, sets vertical scroll-value as well; false, doesn't set vertical-scroll-value 


^ Reaper version 5.40Lua version 5.3 DeleteArrangeviewSnapshot

Functioncall:

integer retval = ultraschall.DeleteArrangeviewSnapshot(integer slot)

Description:
Deletes an ArrangeviewSnapshot-slot.

Returns -1 if the slot is unset or slot is an invalid value.

Returnvalues:
 integer retval -1 in case of an error; 0 in case of success 

Parameters:
 integer slot the slot for arrangeview-snapshot 


^ Reaper version 5.77Lua version 5.3 SetIDEFontSize

Functioncall:

boolean retval = ultraschall.SetIDEFontSize(integer fontsize)

Description:
Sets the fontsize of Reaper's IDE (ReaScript/Video Processor/JSFX)
New fontsize is valid for all IDE's opened after calling this function.

Returns false in case of an error

Returnvalues:
 boolean retval true, if setting was successful; false, if not 

Parameters:
 integer fontsize the new font-size for Reaper's IDEs 


^ Reaper version 5.77Lua version 5.3 GetIDEFontSize

Functioncall:

integer retval = ultraschall.GetIDEFontSize()

Description:
Returns the current fontsize of Reaper's IDE (ReaScript/Video Processor/JSFX)

Returnvalues:
 integer fontsize the currently set fontsize within Reaper's IDEs 



^ Reaper version 5.941SWS version 2.9.7Lua version 5.3 GetPlayCursorWidth

Functioncall:

integer play_cursor_width = ultraschall.GetPlayCursorWidth()

Description:
Returns the width of the playcursor in pixels

see SetPlayCursorWidth for setting the playcursor-width.

Returnvalues:
 integer play_cursor_width the width of the playcursor in pixels 



^ Reaper version 5.941SWS version 2.9.7Lua version 5.3 SetPlayCursorWidth

Functioncall:

boolean retval = ultraschall.SetPlayCursorWidth(integer play_cursor_width, boolean persist)

Description:
Sets a new playcursor-width.

see GetPlayCursorWidth for getting the playcursor-width.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 integer play_cursor_width the new width of the playcursor 
 boolean persist true, set the setting to reaper.ini so it persists after restarting Reaper; false, set it only for the time, until Reaper is restarted 


^ Reaper version 5.95Lua version 5.3 GetScreenWidth

Functioncall:

integer width = ultraschall.GetScreenWidth(optional boolean want_workarea)

Description:
returns the width of the screen in pixels.

returns -1 in case of an error

Returnvalues:
 integer width the width of the screen in pixels 

Parameters:
 optional boolean want_workarea true, returns workspace only; false, full monitor coordinates of the returned viewport; nil, will be seen as true 


^ Reaper version 5.95Lua version 5.3 GetScreenHeight

Functioncall:

integer height = ultraschall.GetScreenHeight(optional boolean want_workarea)

Description:
returns the height of the screen in pixels.

returns -1 in case of an error

Returnvalues:
 integer width the height of the screen in pixels 

Parameters:
 optional boolean want_workarea true, returns workspace only; false, full monitor coordinates of the returned viewport; nil, will be seen as true 


^ Reaper version 5.95Lua version 5.3 ShowMenu

Functioncall:

integer retval = ultraschall.ShowMenu(string Title, string Entries, integer x, integer y)

Description:
Draws a menu at position x,y.

Entries is the string, that contains the Menuentries, separated by |
Example: "Entry1|Entry2|Entry3"

Each field can start with a special character
  # grays out the entry
  ! entry is checked
  > starts a new submenu, where every following entry will be part of the submenu
  < ends a submenu with this entry being the last one
These special characters can be combined, however, grayed out entries don't open submenus, even if they are shown as submenus.
A field with nothing in it || creates a separator.    

The returned number follows the numbering of the clickable(!) entries. Even if grayed out-entries can't be selected, they count as well.
However, opening-submenu-entries and separators don't count as clickable.
That said, if you have one grayed out entry and one normal entry, the grayed out entry is 1, the normal entry(the only selectable one) is 2.

The following entry

  Normal1|>SubmenuOpener|Submenuentry1|
creates the following menu:

  Normal1
  SubmenuOpener >
    Submenuentry1
    SubmenuEntry2Closer
  Grayed Out

One last thing: the title does not count as entry!

Note for Mac-users: has a possible issue with the y coordinate, where it's position is actually "reversed", due a Reaper-bug.
Note for Linux: does not work on Linux yet.

returns -1 in case of an error

Returnvalues:
 integer retval the selected entry; 0, nothing selected 

Parameters:
 string Title the title shown on top of the menu 
 string Entries the individual entries. See above on how to create such an entry. 
 integer x the x-position of the menu 
 integer y the y-position of the menu 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 IsValidHWND

Functioncall:

boolean retval = ultraschall.IsValidHWND(HWND hwnd)

Description:
Checks, if a HWND-handler is a valid one.

Returns false in case of an error

Returnvalues:
 boolean retval true, if running it was successful; false, if not 

Parameters:
 HWND hwnd the HWND-handler to check for 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 BrowseForOpenFiles

Functioncall:

string path, integer number_of_files, array filearray = ultraschall.BrowseForOpenFiles(string windowTitle, string initialFolder, string initialFile, string extensionList, boolean allowMultiple)

Description:
Opens a filechooser-dialog which optionally allows selection of multiple files.
Unlike Reaper's own GetUserFileNameForRead, this dialog allows giving non-existant files as well(for saving operations).

Returns nil in case of an error

Returnvalues:
 string path the path, in which the selected file(s) lie; nil, in case of an error; "" if no file was selected 
 integer number_of_files the number of files selected; 0, if no file was selected 
 array filearray an array with all the selected files 

Parameters:
 string windowTitle the title shown in the filechooser-dialog 
 string initialFolder the initial-folder opened in the filechooser-dialog 
 string initialFile the initial-file selected in the filechooser-dialog, good for giving default filenames 
 string extensionList a list of extensions that can be selected in the selection-list.
the list has the following structure(separate the entries with a \0):
       "description of type1\0type1\0description of type 2\0type2\0"
the description of type can be anything that describes the type(s),
to define one type, write: *.ext
to define multiple types, write: *.ext;*.ext2;*.ext3
the extensionList must end with a \0 
 boolean allowMultiple true, allows selection of multiple files; false, only allows selection of single files 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 HasHWNDChildWindowNames

Functioncall:

boolean retval = ultraschall.HasHWNDChildWindowNames(HWND hwnd, string childwindownames)

Description:
Returns, whether the given HWND has childhwnds with a certain name in them. This is good for checking for valid Reaper-windows.
As gfx.init()-windows can have the same as Reaper's original-windows, this function gives you the chance for aditional checks.
gfx.init windows don't have child-hwnds and other applications probably have child-hwnds with different names.

returns false in case of an error

Returnvalues:
 boolean retal true, the HWND has child-hwnds with that name(s); false, it doesn't 

Parameters:
 HWND hwnd the HWND, whose child-hwnd-names you want to check 
 string childwindownames a string with the names of the child-HWNDs the parameter hwnd must have. It is a \0-separated string, means, you put \0 in between the child-Hwnd-names. 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 CloseReaScriptConsole

Functioncall:

boolean retval = ultraschall.CloseReaScriptConsole()

Description:
Closes the ReaConsole-window, if opened.

Returns false in case of an error

Returnvalues:
 boolean retval true, if there is a mute-point; false, if there isn't one 



^ Reaper version 5.977Julian Sader's plugin version 0.986Lua version 5.3 MB

Functioncall:

integer retval = ultraschall.MB(string msg, optional string title, optional integer type, optional string button1_caption, optional string button2_caption, optional string button3_caption)

Description:
Shows Messagebox with user-clickable buttons. Works like reaper.MB() but unlike reaper.MB, this function accepts omitting some parameters for quicker use.

Important: This works only on Windows.

You can change the text in the buttons with button1_caption, button2_caption and button3_caption.

Returns -1 in case of an error

Returnvalues:
 integer the button pressed by the user
-1, error while executing this function
1, Button 1
2, Button 2
3, Button 3 

Parameters:
 string msg the message, that shall be shown in messagebox 
 optional string title the title of the messagebox 
 optional integer type which buttons shall be shown in the messagebox, in that order
0, OK
1, OK CANCEL
2, ABORT RETRY IGNORE
3, YES NO CANCEL
4, YES NO
5, RETRY CANCEL
nil, defaults to OK 
 optional string button1_caption caption of the first button 
 optional string button2_caption caption of the second button 
 optional string button3_caption caption of the third button 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 GetTopmostHWND

Functioncall:

HWND topmost_hwnd, integer number_of_parent_hwnd, table all_parent_hwnds = ultraschall.GetTopmostHWND(HWND hwnd)

Description:
returns the topmost-parent hwnd of a hwnd, as sometimes, hwnds are children of a higher hwnd. It also returns the number of parent hwnds available and a list of all parent hwnds for this hwnd.

A hwnd is a window-handler, which contains all attributes of a certain window.

returns nil in case of an error

Returnvalues:
 HWND hwnd the top-most parent hwnd available 
 integer number_of_parent_hwnd the number of parent hwnds, that are above the parameter hwnd 
 table all_parent_hwnds all available parent hwnds, above the parameter hwnd, including the topmost-hwnd 

Parameters:
 HWND hwnd the HWND, whose topmost parent-HWND you want to have 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 GetReaperWindowAttributes

Functioncall:

integer left, integer top, integer right, integer bottom, boolean active, boolean visible, string title, integer number_of_childhwnds, table childhwnds = ultraschall.GetReaperWindowAttributes()

Description:
returns many attributes of the Reaper Main-window, like position, size, active, visibility, childwindows

A hwnd is a window-handler, which contains all attributes of a certain window.

returns nil in case of an error

Returnvalues:
 integer left the left position of the Reaper-window in pixels 
 integer top the top position of the Reaper-window in pixels 
 integer right the right position of the Reaper-window in pixels 
 integer bottom the bottom position of the Reaper-window in pixels 
 boolean active true, if the window is active(any child-hwnd of the Reaper-window has focus currently); false, if not 
 boolean visible true, Reaper-window is visible; false, Reaper-window is not visible 
 string title the current title of the Reaper-window 
 integer number_of_childhwnds the number of available child-hwnds that the Reaper-window currently has 
 table childhwnds a table with all child-hwnds in the following format:
      childhwnds[index][1]=hwnd
      childhwnds[index][2]=title 

Parameters:
 HWND hwnd the HWND, whose topmost parent-HWND you want to have 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 Windows_Find

Functioncall:

integer count_hwnds, array hwnd_array, array hwnd_adresses = ultraschall.Windows_Find(string title, boolean strict)

Description:
Returns all Reaper-window-HWND-handler, with a given title. Can be further used with the JS_Window_functions of the JS-function-plugin.

Doesn't return IDE-windows! Use GetAllReaScriptIDEWindows to get them.

returns -1 in case of an error

Returnvalues:
 string title the title the window has 
 boolean strict true, if the title must be exactly as given by parameter title; false, only parts of a windowtitle must match parameter title 

Parameters:
 integer count_hwnds the number of windows found 
 array hwnd_array the hwnd-handler of all found windows 
 array hwnd_adresses the adresses of all found windows 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetAllReaScriptIDEWindows

Functioncall:

integer count_ide_hwnds, array ide_hwnd_array, array ide_titles = ultraschall.GetAllReaScriptIDEWindows()

Description:
Returns the hwnds and all titles of all Reaper-IDE-windows currently opened.

Returnvalues:
 integer count_ide_hwnds the number of windows found 
 array ide_hwnd_array the hwnd-handler of all found windows 
 array ide_titles the titles of all found windows 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetReaScriptConsoleWindow

Functioncall:

HWND reascript_console_hwnd = ultraschall.GetReaScriptConsoleWindow()

Description:
Returns the hwnd of the ReaScript-Console-window, if opened.

returns nil when ReaScript-console isn't opened

Returnvalues:
 HWND reascript_console_hwnd the window-handler to the ReaScript-console, if opened 



^ Reaper version 5.965SWS version 2.9.7Julian Sader's plugin version 0.964Lua version 5.3 GetHWND_ArrangeViewAndTimeLine

Functioncall:

HWND arrange_view, HWND timeline, HWND TrackControlPanel = ultraschall.GetHWND_ArrangeViewAndTimeLine()

Description:
Returns the HWND-Reaper-Windowhandler for the tracklist- and timeline-area in the arrange-view

returns nil in case of an error. Please report such an error, which means, that you should use ultraschall.ShowLastErrorMessage() to show that error and report the information requested(fruitful bugreports lead to a handwritten postcard as reward :) )

Returnvalues:
 HWND arrange_view the HWND-window-handler for the tracklist-area of the arrangeview 
 HWND timeline the HWND-window-handler for the timeline/markerarea of the arrangeview 
 HWND TrackControlPanel the HWND-window-handler for the track-control-panel(TCP)(may not work anymore in an upcoming Reaper-release!) 



^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 GetVerticalScroll

Functioncall:

integer vertical_scroll_factor = ultraschall.GetVerticalScroll()

Description:
Gets the current vertical_scroll_value. The valuerange is dependent on the vertical zoom.

Returnvalues:
 integer vertical_scroll_factor the vertical-scroll-factor 



^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 SetVerticalScroll

Functioncall:

boolean retval = ultraschall.SetVerticalScroll(integer scrollposition)

Description:
Sets the absolute vertical-scroll-factor.

The possible value-range depends on the vertical-zoom.

returns false in case of an error or if scrolling is impossible(e.g. zoomed out fully)

Returnvalues:
 boolean retval true, if setting was successful; false, if setting was unsuccessful 

Parameters:
 integer scrollposition the vertical scrolling-position 


^ Reaper version 5.965Julian Sader's plugin version 0.962Lua version 5.3 SetVerticalRelativeScroll

Functioncall:

boolean retval = ultraschall.SetVerticalRelativeScroll(integer relative_scrollposition)

Description:
Sets the vertical-scroll-factor, relative to it's current position.

The possible value-range depends on the vertical-zoom.

returns false in case of an error or if scrolling is impossible(e.g. zoomed out fully)

Returnvalues:
 boolean retval true, if setting was successful; false, if setting was unsuccessful 

Parameters:
 integer scrollposition the vertical scrolling-position 


^ Reaper version 5.980Julian Sader's plugin version 0.986Lua version 5.3 GetUserInputs

Functioncall:

boolean retval, integer number_of_inputfields, table returnvalues = ultraschall.GetUserInputs(string title, table caption_names, table default_retvals, optional integer values_length, optional integer caption_length, optional integer x_pos, optional integer y_pos)

Description:
Gets inputs from the user.

Important: This works only on Windows, currently.

The captions and the default-returnvalues must be passed as an integer-index table.
e.g.
  caption_names[1]="first caption name"
  caption_names[2]="second caption name"
  caption_names[1]="*third caption name, which creates an inputfield for passwords, due the * at the beginning"
  
The number of entries in the tables "caption_names" and "default_retvals" decide, how many inputfields are shown. Maximum is 16 inputfields.
You can safely pass "" as entry for a name, if you don't want to set it.
  
  The following example shows an input-dialog with three fields, where the first two the have default-values:
  
    retval, number_of_inputfields, returnvalues = ultraschall.GetUserInputs("I am the title", {"first", "second", "third"}, {1,"two"})  

Note: Don't use this function within defer-scripts or scripts that are started by defer-scripts, as this produces errors.
     This is due limitations in Reaper, sorry.

returns false in case of an error.

Returnvalues:
 boolean retval true, the user clicked ok on the userinput-window; false, the user clicked cancel or an error occured 
 integer number_of_inputfields the number of returned values; nil, in case of an error 
 table returnvalues the returnvalues input by the user as a table; nil, in case of an error 

Parameters:
 string title the title of the inputwindow 
 table caption_names a table with all inputfield-captions. All non-string-entries will be converted to string-entries. Begin an entry with a * for password-entry-fields.
it can be up to 16 fields
This dialog only allows limited caption-field-length, about 19-30 characters, depending on the size of the used characters.
Don't enter nil as captionname, as this will be seen as end of the table by this function, omitting possible following captionnames! 
 table default_retvals a table with all default retvals. All non-string-entries will be converted to string-entries.
it can be up to 16 fields
Only enter nil as default-retval, if no further default-retvals are existing, otherwise use "" for empty retvals. 
 optional integer values_length the extralength of the values-inputfield. With that, you can enhance the length of the inputfields.
1-500 
 optional integer caption_length the length of the caption in pixels; inputfields and OK, Cancel-buttons will be moved accordingly. 
 optional integer x_pos the x-position of the GetUserInputs-dialog; nil, to keep default position 
 optional integer y_pos the y-position of the GetUserInputs-dialog; nil, to keep default position
keep in mind: on Mac, the y-position starts with 0 at the bottom, while on Windows and Linux, 0 starts at the top of the screen!
               this is the standard-behavior of the operating-systems themselves. 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetRenderToFileHWND

Functioncall:

HWND hwnd = ultraschall.GetRenderToFileHWND()

Description:
returns the HWND of the Render to File-dialog, if the window is opened.

returns nil if Render to File-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Render to File-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetActionsHWND

Functioncall:

HWND hwnd = ultraschall.GetActionsHWND()

Description:
returns the HWND of the Actions-dialog, if the window is opened.

returns nil if the Actions-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Actions-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetVideoHWND

Functioncall:

HWND hwnd = ultraschall.GetVideoHWND()

Description:
returns the HWND of the Video window, if the window is opened.

due API-limitations on Mac and Linux: if more than one window called "Video Window" is opened, it will return -1
I hope to find a workaround for that problem at some point...

returns nil if the Video Window is closed or can't be determined

Returnvalues:
 HWND hwnd the window-handler of the Video Window 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetRenderQueueHWND

Functioncall:

HWND hwnd = ultraschall.GetRenderQueueHWND()

Description:
returns the HWND of the Render-Queue-dialog, if the window is opened.

returns nil if the Render-Queue-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Render-Queue-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetProjectSettingsHWND

Functioncall:

HWND hwnd = ultraschall.GetProjectSettingsHWND()

Description:
returns the HWND of the Project Settings-dialog, if the window is opened.

returns nil if the Project-Settings-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Project Settings-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetPreferencesHWND

Functioncall:

HWND hwnd = ultraschall.GetPreferencesHWND()

Description:
returns the HWND of the Preferences-dialog, if the window is opened.

returns nil if the Preferences-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Preferences-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetSaveLiveOutputToDiskHWND

Functioncall:

HWND hwnd = ultraschall.GetSaveLiveOutputToDiskHWND()

Description:
returns the HWND of the "Save live output to disk(bounce)"-dialog, if the window is opened.

returns nil if the "Save live output to disk(bounce)"-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the "Save live output to disk(bounce)"-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetConsolidateTracksHWND

Functioncall:

HWND hwnd = ultraschall.GetConsolidateTracksHWND()

Description:
returns the HWND of the Consolidate Tracks-dialog, if the window is opened.

returns nil if the Consolidate Tracks-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Consolidate Tracks-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetExportProjectMIDIHWND

Functioncall:

HWND hwnd = ultraschall.GetExportProjectMIDIHWND()

Description:
returns the HWND of the "Export Project MIDI"-dialog, if the window is opened.

returns nil if the "Export Project MIDI"-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the "Export Project MIDI"-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetProjectDirectoryCleanupHWND

Functioncall:

HWND hwnd = ultraschall.GetProjectDirectoryCleanupHWND()

Description:
returns the HWND of the "Project Directory Cleanup"-dialog, if the window is opened.

returns nil if the "Project Directory Cleanup"-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the "Project Directory Cleanup"-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetBatchFileItemConverterHWND

Functioncall:

HWND hwnd = ultraschall.GetBatchFileItemConverterHWND()

Description:
returns the HWND of the "Batch File/Item Converter"-dialog, if the window is opened.

returns nil if the "Batch File/Item Converter"-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the "Batch File/Item Converter"-dialog 



^ Reaper version 5.965Julian Sader's plugin version 0.972Lua version 5.3 MoveChildWithinParentHWND

Functioncall:

integer newxpos, integer newypos, integer newrightpos, integer newbottompos, integer newrelativeleft, integer newrelativetop, integer newwidth, integer newheight = ultraschall.MoveChildWithinParentHWND(hwnd parenthwnd, hwnd childhwnd, boolean relative, integer left, integer top, integer width, integer height)

Description:
Moves a childhwnd within the coordinates of its parenthwnd.
Good for moving gui-elements around without having to deal with screen-coordinates.

You can decide, whether the new position shall be relative to its old position or absolute within the parenthwnd-position.

The parent-hwnd must not be necessarily the parenthwnd of the childhwnd, so you can move the childhwnd relative to other hwnds as well, but
keep in mind, that the childhwnd is only seeable within the boundaries of it's own parenthwnd!

Returns nil in case of an error

Returnvalues:
 integer newxpos the new x-position on the screen in pixels 
 integer newypos the new y-position on the screen in pixels 
 integer newrightpos the new right-position on the screen in pixels 
 integer newbottompos the new bottom-position on the screen in pixels 
 integer newrelativex the new x-position of the childhwnd, relative to it's position within the parenthwnd 
 integer newrelativey the new y-position of the childhwnd, relative to it's position within the parenthwnd 
 integer newwidth the new width of the childhwnd in pixels 
 integer newheight the new height of the childhwnd in pixels 

Parameters:
 hwnd parenthwnd the parenthwnd of the childhwnd, within whose dimensions you want to move the childhwnd 
 hwnd childhwnd the childhwnd, that you want to move 
 boolean relative true, new position will be relative to the old position; false, new position will be absolute within the boundaries of the parenthwnd 
 integer left the new x-position of the childhwnd in pixels 
 integer top the new y-position of the childhwnd in pixels 
 integer width the new width of the childhwnd in pixels; when relative=true then 0 keeps the old width; when relative=false then 0 is width of 0 pixels 
 integer height the new height of the childhwnd in pixels; when relative=true then 0 keeps the old height; when relative=false then 0 is height of 0 pixels 


^ Reaper version 5.965Julian Sader's plugin version 0.972Lua version 5.3 GetChildSizeWithinParentHWND

Functioncall:

integer xpos, integer ypos, integer width, integer height = ultraschall.GetChildSizeWithinParentHWND(hwnd parenthwnd, hwnd childhwnd)

Description:
Returns the position, height and width of a childhwnd, relative to the position of parenthwnd

Returns nil in case of an error

Returnvalues:
 integer xpos the x-position of the childhwnd relative to the position of the parenthwnd in pixels 
 integer ypos the y-position of the childhwnd relative to the position of the parenthwnd in pixels 
 integer width the width of the childhwnd in pixels 
 integer height the height of the childhwnd in pixels 

Parameters:
 hwnd parenthwnd the parenthwnd of the childhwnd, whose position will be the base for position-calculation of the childhwnd 
 hwnd childhwnd the childhwnd, whose dimensions you want to get, relative to the position of the parenthwnd 


^ Reaper version 5.975Julian Sader's plugin version 0.972Lua version 5.3 GetCheckboxState

Functioncall:

boolean retval = ultraschall.GetCheckboxState(HWND hwnd)

Description:
Gets the checked-state of a checkbox-hwnd.
This function will not check, whether the hwnd is an actual checkbox!

Returns nil in case of an error

Returnvalues:
 boolean retval true, checkbox is checked; false, checkbox isn't checked 

Parameters:
 HWND hwnd the hwnd-handler of the checkbox 


^ Reaper version 5.975Julian Sader's plugin version 0.972Lua version 5.3 SetCheckboxState

Functioncall:

integer retval = ultraschall.SetCheckboxState(HWND hwnd, boolean state)

Description:
Sets the checked-state of a checkbox-hwnd.
This function will not check, whether the hwnd is an actual checkbox!

Returns nil in case of an error

Returnvalues:
 integer retval 0, in case of success 

Parameters:
 HWND hwnd the hwnd-handler of the checkbox 
 boolean state true, checkbox will be checked; false, checkbox will be unchecked 


^ Reaper version 5.977Lua version 5.3 GetRenderingToFileHWND

Functioncall:

HWND rendertofile_dialog = ultraschall.GetRenderingToFileHWND()

Description:
Gets the HWND of the Rendering to File-dialog, which is displayed while Reaper is rendering.

returns nil in case of an error

Returnvalues:
 HWND rendertofile_dialog the HWND of the render to file-dialog; nil, in case of an error 



^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 ConvertScreen2ClientXCoordinate_ReaperWindow

Functioncall:

integer Xclientcoordinate = ultraschall.ConvertScreen2ClientXCoordinate_ReaperWindow(integer Xscreencoordinate)

Description:
Converts an x-screencoordinate into a x-coordinate within the Reaper-Main-Window.
Due to Api-limitations, if the Reaper-window is too small, the position might be wrong up to about 74 pixels!

returns -1 in case of error

Returnvalues:
 integer Xclientcoordinate coordinate within the main Reaper-window. Negative, if the coordinate is left of the edge of the window; -1, in case of error 

Parameters:
 integer Xscreencoordinate the screen-coordinate, you want to have converted to. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 ConvertClient2ScreenXCoordinate_ReaperWindow

Functioncall:

integer Xscreencoordinate = ultraschall.ConvertClient2ScreenXCoordinate_ReaperWindow(integer Xclientcoordinate)

Description:
Converts an x-clientcoordinate from within the main Reaper-window into a x-screencoordinate.
Due to Api-limitations, if the Reaper-window is too small, the position might be wrong up to about 74 pixels!

returns -1 in case of error

Returnvalues:
 integer Xscreencoordinate coordinate within the screen. 

Parameters:
 integer Xclientcoordinate the screen-coordinate, you want to have converted to. Negative, if left of the left edge of the main Reaper-window. 


^ Reaper version 5.40SWS version 2.8.8Lua version 5.3 SetReaperWindowToSize

Functioncall:

integer retval = ultraschall.SetReaperWindowToSize(integer width, integer height)

Description:
Sets the Reaper-Window to the size of w and h. The x and y-windowposition will be retained.

Returns -1 in case of error.

Returnvalues:
 integer retval -1 in case of error 

Parameters:
 integer w the new width of the Reaper-window in pixels 
 integer h the new height of the reaper-windows in pixels 


^ Reaper version 5.40Lua version 5.3 ConvertYCoordsMac2Win

Functioncall:

integer conv_ycoord = ultraschall.ConvertYCoordsMac2Win(integer ycoord, optional integer height)

Description:
Converts the y-coordinate between Windows/Linux and MacOS-based systems.

Note: MacOS y-coordinates begin at the bottom of the screen, while Windows and Linux y-coordinates begin at the top.
With this function, you can convert between these two coordinate-systems

returns nil in case of error

Returnvalues:
 integer conv_ycoord the converted coordinate in pixels 

Parameters:
 integer ycoord the y-coordinate to convert in pixels 
 optional integer height the height of the screen in pixels, which is the base for the conversion; nil, uses current screenheight 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetMediaExplorerHWND

Functioncall:

HWND hwnd = ultraschall.GetMediaExplorerHWND()

Description:
returns the HWND of the Media Explorer, if the window is opened.

returns nil if Media Explorer is closed

Returnvalues:
 HWND hwnd the window-handler of the Media Explorer 



^ Reaper version 5.981SWS version 2.10.0.1Lua version 5.3 GetTimeByMouseXPosition

Functioncall:

number position = ultraschall.GetTimeByMouseXPosition(integer xposition)

Description:
Returns the projectposition at x-mouseposition.

Returns nil in case of an error

Returnvalues:
 number position the projectposition at x-coordinate in seconds 

Parameters:
 integer xposition the x-position in pixels, from which you would love to have the projectposition 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowTrackInputMenu

Functioncall:

boolean retval = ultraschall.ShowTrackInputMenu(integer x, integer y, optional MediaTrack MediaTrack, optional HWND HWNDParent)

Description:
Opens a TrackInput-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional MediaTrack MediaTrack the MediaTrack, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected one 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowTrackPanelMenu

Functioncall:

boolean retval = ultraschall.ShowTrackPanelMenu(integer x, integer y, optional MediaTrack MediaTrack, optional HWND HWNDParent)

Description:
Opens a TrackPanel-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional MediaTrack MediaTrack the MediaTrack, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected one 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowTrackAreaMenu

Functioncall:

boolean retval = ultraschall.ShowTrackAreaMenu(integer x, integer y, optional HWND HWNDParent)

Description:
Opens a TrackArea-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowTrackRoutingMenu

Functioncall:

boolean retval = ultraschall.ShowTrackRoutingMenu(integer x, integer y, optional MediaTrack MediaTrack, optional HWND HWNDParent)

Description:
Opens a TrackRouting-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional MediaTrack MediaTrack the MediaTrack, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected one 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowRulerMenu

Functioncall:

boolean retval = ultraschall.ShowRulerMenu(integer x, integer y, optional HWND HWNDParent)

Description:
Opens a Ruler-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowMediaItemMenu

Functioncall:

boolean retval = ultraschall.ShowMediaItemMenu(integer x, integer y, optional MediaItem MediaItem, optional HWND HWNDParent)

Description:
Opens a MediaItem-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional MediaItem MediaItem the MediaItem, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected one 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowEnvelopeMenu

Functioncall:

boolean retval = ultraschall.ShowEnvelopeMenu(integer x, integer y, optional TrackEnvelope TrackEnvelope, optional HWND HWNDParent)

Description:
Opens a Track/TakeEnvelope-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 optional TrackEnvelope TrackEnvelope the TrackEnvelope/TakeEnvelope, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected TrackEnvelope 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowEnvelopePointMenu

Functioncall:

boolean retval = ultraschall.ShowEnvelopePointMenu(integer x, integer y, integer Pointidx, optional TrackEnvelope TrackEnvelope, optional HWND HWNDParent)

Description:
Opens a Track/TakeEnvelope-Point-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 integer Pointidx the envelope-point, which shall be influenced by the context-menu 
 optional TrackEnvelope TrackEnvelope the TrackEnvelope/TakeEnvelope, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected TrackEnvelope 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowEnvelopePointMenu_AutomationItem

Functioncall:

boolean retval = ultraschall.ShowEnvelopePointMenu_AutomationItem(integer x, integer y, integer Pointidx, integer AutomationIDX, optional TrackEnvelope TrackEnvelope, optional HWND HWNDParent)

Description:
Opens a Track/TakeEnvelope-Point-context menu for AutomationItems

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 integer Pointidx the envelope-point, which shall be influenced by the context-menu 
 integer AutomationIDX the automation item-id within this Envelope, beginning with 1 for the first 
 optional TrackEnvelope TrackEnvelope the TrackEnvelope/TakeEnvelope, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected TrackEnvelope 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.92Julian Sader's plugin version 0.986Lua version 5.3 ShowAutomationItemMenu

Functioncall:

boolean retval = ultraschall.ShowAutomationItemMenu(integer x, integer y, integer AutomationIDX, optional TrackEnvelope TrackEnvelope, optional HWND HWNDParent)

Description:
Opens an AutomationItem-context menu

Returns false in case of error.

Returnvalues:
 boolean retval true, opening the menu worked; false, there was an error 

Parameters:
 integer x x position of the context-menu in pixels 
 integer y y position of the context-menu in pixels 
 integer AutomationIDX the automation item-id within this Envelope which shall be influenced by the menu-selection of the opened context-menu, beginning with 1 for the first 
 optional TrackEnvelope TrackEnvelope the TrackEnvelope/TakeEnvelope, which shall be influenced by the menu-selection of the opened context-menu; nil, use the currently selected TrackEnvelope 
 optional HWND HWNDParent a HWND, in which the context-menu shall be shown in; nil, use Reaper's main window 


^ Reaper version 5.965Julian Sader's plugin version 0.963Lua version 5.3 GetSaveProjectAsHWND

Functioncall:

HWND hwnd = ultraschall.GetSaveProjectAsHWND()

Description:
returns the HWND of the Save As-dialog, if the window is opened.

returns nil if the Save As-dialog is closed

Returnvalues:
 HWND hwnd the window-handler of the Save As-dialog 



^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 SetHelpDisplayMode

Functioncall:

boolean retval = ultraschall.SetHelpDisplayMode(integer helpcontent, boolean mouseediting)

Description:
sets the help-display-mode, as shown in the area beneath the track control panels.

returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 integer helpcontent 0, No information display  
1, Reaper tips  
2, Track/item count  
3, selected track/item/envelope details  
4, CPU/RAM use, time since last save   
 boolean mouseediting true, show mouse editing-help; false, don't show mouse editing-help 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 GetHelpDisplayMode

Functioncall:

integer helpcontent, boolean mouseediting = ultraschall.GetHelpDisplayMode()

Description:
gets the current help-display-mode, as shown in the area beneath the track control panels.

Returnvalues:
 integer helpcontent 0, No information display  
1, Reaper tips  
2, Track/item count  
3, selected track/item/envelope details  
4, CPU/RAM use, time since last save   
 boolean mouseediting true, show mouse editing-help; false, don't show mouse editing-help 



^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 WiringDiagram_SetOptions

Functioncall:

boolean retval = ultraschall.WiringDiagram_SetOptions(boolean show_send_wires, boolean show_routing_controls, boolean show_hardware_outputs)

Description:
sets the current wiring-display-options

Returnvalues:
 boolean retval true, setting was successful; false, setting was not successful 

Parameters:
 boolean show_send_wires only show send wires on track mouseover; true, it's set; false, it's unset 
 boolean show_routing_controls show routing controls when creating send/hardware output; true, it's set; false, it's unset 
 boolean show_hardware_outputs only show hardware output/input wires on track mouseover; true, it's set; false, it's unset 


^ Reaper version 6.02SWS version 2.10.0.1Lua version 5.3 WiringDiagram_GetOptions

Functioncall:

boolean show_send_wires, boolean show_routing_controls, boolean show_hardware_outputs = ultraschall.WiringDiagram_GetOptions()

Description:
gets the current wiring-display-options

Returnvalues:
 boolean show_send_wires only show send wires on track mouseover; true, it's set; false, it's unset 
 boolean show_routing_controls show routing controls when creating send/hardware output; true, it's set; false, it's unset 
 boolean show_hardware_outputs only show hardware output/input wires on track mouseover; true, it's set; false, it's unset 



^ Reaper version 6.02Julian Sader's plugin version 0.998Lua version 5.3 GetTCPWidth

Functioncall:

integer width = ultraschall.GetTCPWidth()

Description:
Returns the current width of the TrackControlPanel.

Returnvalues:
 integer width the width of the TCP 



^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_FLAC

Functioncall:

integer encoding_depth, integer compression = ultraschall.GetRenderCFG_Settings_FLAC(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for flac.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer encoding_depth the encoding-depth of the flac in bits(16 to 24) 
 integer compression the data-compression speed from fastest and worst efficiency(0) to slowest but best efficiency(8); default is 5 

Parameters:
 string render_cfg the render-cfg-string, that contains the flac-settings 


^ Reaper version 6.02Lua version 5.3 GetRenderCFG_Settings_AIFF

Functioncall:

integer bitdepth, boolean EmbedBeatLength = ultraschall.GetRenderCFG_Settings_AIFF(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for aiff.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer bitdepth the bitdepth of the AIFF-file(8, 16, 24, 32) 
 boolean EmbedBeatLength Embed beat length if exact-checkbox; true, checked; false, unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the aiff-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_AudioCD

Functioncall:

integer trackmode, boolean use_markers_hashes, integer leadin_silence_tracks, integer leadin_silence_disc, boolean burn_cd_after_render = ultraschall.GetRenderCFG_Settings_AudioCD(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for AudioCD.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer trackmode the trackmode
   0, Markers define new tracks
   1, Regions define tracks (other areas ignored)
   2, One track 
 boolean use_markers_hashes Only use markers starting with #-checkbox; only available when trackmode=0, otherwise it will be ignored
  true, checkbox is checked; false, checkbox is unchecked 
 integer leadin_silence_tracks the leadin-silence for tracks in milliseconds(0 to 2147483647) 
 integer leadin_silence_disc the leadin-silence for discs in milliseconds(0 to 2147483647) 
 boolean burn_cd_after_render burn cd image after render-checkbox
    true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the audiocd-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP3

Functioncall:

integer Mode, integer enc_quality, integer vbr_quality, integer abr_bitrate, integer cbr_bitrate, boolean no_joint_stereo, boolean write_replay_gain = ultraschall.GetRenderCFG_Settings_MP3(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP3.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Mode the encoding-mode
32, Target quality(VBR)
1056, Target bitrate (ABR)
65344, Constant bitrate (CBR)
65088, Maximum bitrate/quality 
 integer enc_quality the encoding-quality
   0, Maximum(slow)
   2, Better(recommended)
   3, Normal
   5, Fast encode
   7, Faster encode
   9, Fastest encode 
 integer vbr_quality target-quality for VBR; 0(best 100%) to 9(worst 10%); 4, when Mode is set to  ABR, CBR or Maximum bitrate/quality 
 integer abr_bitrate the average bitrate for ABR in kbps
8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320 
 integer cbr_bitrate the bitrate for CBR in kbps
8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320 
 boolean no_joint_stereo the do not allow joint stereo-checkbox
true, checkbox is checked; false, checkbox is unchecked 
 boolean write_replay_gain the write ReplayGain tag-checkbox
true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the mp3-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP3MaxQuality

Functioncall:

integer retval, boolean write_replay_gain = ultraschall.GetRenderCFG_Settings_MP3MaxQuality(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP3 with maximum quality-settings.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer retval 0, the renderstring is a valid MP3-MaxQuality-setting; -1, it is not a valid renderstring for MP3-MaxQuality 
 boolean write_replay_gain the write ReplayGain tag-checkbox
true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the mp3-maxquality-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP3CBR

Functioncall:

integer cbr_bitrate, integer enc_quality, boolean no_joint_stereo, boolean write_replay_gain = ultraschall.GetRenderCFG_Settings_MP3CBR(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP3 CBR.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer cbr_bitrate the bitrate for CBR in kbps
8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320 
 integer enc_quality the encoding-quality
   0, Maximum(slow)
   2, Better(recommended)
   3, Normal
   5, Fast encode
   7, Faster encode
   9, Fastest encode 
 boolean no_joint_stereo the do not allow joint stereo-checkbox
true, checkbox is checked; false, checkbox is unchecked 
 boolean write_replay_gain the write ReplayGain tag-checkbox
true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the mp3-cbr-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP3VBR

Functioncall:

integer vbr_bitrate, integer enc_quality, boolean no_joint_stereo, boolean write_replay_gain = ultraschall.GetRenderCFG_Settings_MP3VBR(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP3 VBR.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer vbr_quality the variable-bitrate quality; 1(for 10%) to 10(for 100%)  
 integer enc_quality the encoding-quality
   0, Maximum(slow)
   2, Better(recommended)
   3, Normal
   5, Fast encode
   7, Faster encode
   9, Fastest encode 
 boolean no_joint_stereo the do not allow joint stereo-checkbox
true, checkbox is checked; false, checkbox is unchecked 
 boolean write_replay_gain the write ReplayGain tag-checkbox
true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the mp3-vbr-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP3ABR

Functioncall:

integer bitrate, integer enc_quality, boolean no_joint_stereo, boolean write_replay_gain = ultraschall.GetRenderCFG_Settings_MP3ABR(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP3 ABR.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer bitrate the encoding quality for the mp3
      0, 8 kbps
      1, 16 kbps
      2, 24 kbps
      3, 32 kbps
      4, 40 kbps
      5, 48 kbps
      6, 56 kbps
      7, 64 kbps
      8, 80 kbps
      9, 96 kbps
      10, 112 kbps
      11, 128 kbps
      12, 160 kbps
      13, 192 kbps
      14, 224 kbps
      15, 256 kbps
      16, 320 kbps  
 integer enc_quality the encoding-quality
   0, Maximum(slow)
   2, Better(recommended)
   3, Normal
   5, Fast encode
   7, Faster encode
   9, Fastest encode 
 boolean no_joint_stereo the do not allow joint stereo-checkbox
true, checkbox is checked; false, checkbox is unchecked 
 boolean write_replay_gain the write ReplayGain tag-checkbox
true, checkbox is checked; false, checkbox is unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the mp3-abr-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_OGG

Functioncall:

integer Mode, integer VBR_quality, integer CBR_KBPS, integer ABR_KBPS, integer ABR_KBPS_MIN, integer ABR_KBPS_MAX = ultraschall.GetRenderCFG_Settings_OGG(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for OGG.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Mode the mode for the ogg-file; 0, VBR; 1, CBR; 2, ABR  
 integer VBR_quality the quality for VBR-mode; a floating-value between 0 and 1 
 integer CBR_KBPS the bitrate for CBR-mode; 0 to 4294967295  
 integer ABR_KBPS the bitrate for ABR-mode; 0 to 4294967295 
 integer ABR_KBPS_MIN the minimum bitrate for ABR-mode; 0 to 4294967295 
 integer ABR_KBPS_MAX the maximum bitrate for ABR-mode; 0 to 4294967295 

Parameters:
 string render_cfg the render-cfg-string, that contains the ogg-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_OPUS

Functioncall:

integer Mode, integer Bitrate, integer Complexity, boolean channel_audio, boolean per_channel = ultraschall.GetRenderCFG_Settings_OPUS(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for Opus.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Mode the Mode for the Opus-file; 0, VBR; 1, CVBR; 2, HARDCBR  
 integer Bitrate the kbps of the opus-file; between 1 and 256  
 integer Complexity the complexity-setting between 0(lowest quality) and 10(highest quality, slow encoding)  
 boolean channel_audio true, Encode 3-8 channel audio as 2.1-7.1(LFE) -> checked; false, DON'T Encode 3-8 channel audio as 2.1-7.1(LFE) -> unchecked 
 boolean per_channel true, kbps per channel (6-256); false, kbps combined for all channels  

Parameters:
 string render_cfg the render-cfg-string, that contains the opus-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_GIF

Functioncall:

integer Width, integer Height, number MaxFramerate, boolean PreserveAspectRatio, integer IgnoreLowBits, boolean Transparency = ultraschall.GetRenderCFG_Settings_GIF(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for Gif.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Width the width of the gif in pixels; 1 to 2147483647 pixels 
 integer Height the height of the gif in pixels; 1 to 2147483647 pixels 
 number MaxFramerate the maximum framerate of the gif 
 boolean PreserveAspectRatio Preserve aspect ratio (black bars, if necessary)-checkbox; true, checked; false, unchecked 
 integer IgnoreLowBits Ignore changed in low bits of color (0-7, 0 = full quality)-inputbox 
 boolean Transparency Encode transparency (bad for normal video, good for some things possibly)-checkbox; true, checked; false, unchecked 

Parameters:
 string render_cfg the render-cfg-string, that contains the gif-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_LCF

Functioncall:

integer Width, integer Height, number MaxFramerate, boolean PreserveAspectRatio, string TweakSettings = ultraschall.GetRenderCFG_Settings_LCF(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for LCF.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Width the width of the gif in pixels; 1 to 2147483647 pixels 
 integer Height the height of the gif in pixels; 1 to 2147483647 pixels 
 number MaxFramerate the maximum framerate of the gif 
 boolean PreserveAspectRatio Preserve aspect ratio (black bars, if necessary)-checkbox; true, checked; false, unchecked 
 string TweakSettings the tweak-settings for LCF, default is "t20 x128 y16" 

Parameters:
 string render_cfg the render-cfg-string, that contains the lcf-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_WAV

Functioncall:

integer BitDepth, integer LargeFiles, integer BWFChunk, integer IncludeMarkers, boolean EmbedProjectTempo = ultraschall.GetRenderCFG_Settings_WAV(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for WAV.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer BitDepth the bitdepth of the WAV-file
   0, 8 Bit PCM
   1, 16 Bit PCM
   2, 24 Bit PCM
   3, 32 Bit FP
   4, 64 Bit FP
   5, 4 Bit IMA ADPCM
   6, 2 Bit cADPCM  
 integer LargeFiles how shall Reaper treat large WAV-files
   0, Auto WAV/Wave64
   1, Auto Wav/RF64
   2, Force WAV
   3, Force Wave64
   4, Force RF64  
 integer BWFChunk The "Write BWF ('bext') chunk" and "Include project filename in BWF data" - checkboxes
   0, unchecked - unchecked
   1, checked - unchecked
   2, unchecked - checked
   3, checked - checked  
 integer IncludeMarkers The include markerlist-dropdownlist
   0, Do not include markers and regions
   1, Markers + regions
   2, Markers + regions starting with #
   3, Markers only
   4, Markers starting with # only
   5, Regions only
   6, Regions starting with # only  
 boolean EmbedProjectTempo Embed project tempo (use with care)-checkbox; true, checked; false, unchecked  

Parameters:
 string render_cfg the render-cfg-string, that contains the wav-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_WAVPACK

Functioncall:

integer Mode, integer Bitdepth, integer Writemarkers, boolean WriteBWFChunk, boolean IncludeFilenameBWF = ultraschall.GetRenderCFG_Settings_WAVPACK(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for WAVPACK.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer Mode 0, Normal; 1, Fast; 2, High; 3, Very High(slowest)  
 integer Bitdepth the bitdepth of the WAVPACK-file
      0(16Bit)
      1(24Bit)
      2(32Bit integer)
      3(32Bit floating point)
      4(23/24 Bit)
      5(22/24 Bit)
      6(21/24 Bit)
      7(20/24 Bit)
      8(19/24 Bit)
      9(18/24 Bit)
      10(17/24 Bit)
      11(32 bit floating point -144dB floor)
      12(32 bit floating point -120dB floor)
      13(32 bit floating point -96dB floor)  
 integer Writemarkers Write markers as cues-checkboxes
   0, nothing checked
   1, Write markers as cues->checked
   2, Write markers as cues and Only write markers starting with #->checked  
 boolean WriteBWFChunk the Write BWF chunk-checkbox; true, checked; false, unchecked  
 boolean IncludeFilenameBWF the include project filename in BWF data-checkbox; true, checked; false, unchecked  

Parameters:
 string render_cfg the render-cfg-string, that contains the wavpack-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_WebMVideo

Functioncall:

integer VIDKBPS, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_WebMVideo(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for WEBM_Video.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer VIDKBPS the video-bitrate of the video in kbps 
 integer AUDKBPS the audio-bitrate of the video in kbps 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the webm-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MKV_Video

Functioncall:

integer VIDEO_CODEC, integer MJPEG_quality, integer AUDIO_CODEC, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_MKV_Video(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MKV-Video.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer VIDEO_CODEC the used VideoCodec for the MKV-video
0, FFV1 (lossless)
1, Hufyuv (lossless)
2, MJPEG 
 integer MJPEG_quality the MJPEG-quality of the MKV-video, if VIDEO_CODEC=2 
 integer AUDIO_CODEC the audio-codec of the MKV-video
0, 16 bit PCM
1, 24 bit PCM
2, 32 bit FP 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the mkv-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_AVI_Video

Functioncall:

integer VIDEO_CODEC, integer MJPEG_quality, integer AUDIO_CODEC, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_AVI_Video(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for AVI_Video.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer VIDEO_CODEC the used VideoCodec for the AVI-video
0, DV
1, MJPEG
2, FFV1 (lossless)
3, Hufyuv (lossless) 
 integer MJPEG_quality the MJPEG-quality of the AVI-video, if VIDEO_CODEC=1 
 integer AUDIO_CODEC the audio-codec of the avi-video
0, 16 bit PCM
1, 24 bit PCM
2, 32 bit FP 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the avi-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_QTMOVMP4_Video

Functioncall:

integer MJPEG_quality, integer AUDIO_CODEC, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_QTMOVMP4_Video(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for QT/MOV/MP4-video.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer MJPEG_quality the MJPEG-quality of the video 
 integer AUDIO_CODEC the audio-codec of the video
0, 16 bit PCM
1, 24 bit PCM
2, 32 bit FP 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the qt/mov/mp4-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_DDP

Functioncall:

boolean retval = ultraschall.GetRenderCFG_Settings_DDP(string rendercfg)

Description:
Returns, if a renderstring is a valid DDP-render-string

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 boolean retval true, if renderstring is of the format DDP; false, if not 

Parameters:
 string render_cfg the render-cfg-string, that contains the DDP-settings 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_GIF

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_GIF(integer Width, integer Height, number MaxFPS, boolean AspectRatio, integer IgnoreLowBits, boolean EncodeTransparency)

Description:
Creates the render-cfg-string for the GIF-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected GIF-settings 

Parameters:
 integer Width the width of the gif in pixels; 1 to 2147483647 
 integer Height the height of the gif in pixels; 1 to 2147483647  
 number MaxFPS the maximum framerate of the gif in fps; 0.01 to 2000.01 supported by the Ultraschall API 
 boolean AspectRatio Preserve aspect ratio-checkbox; true, checked; false, unchecked 
 integer IgnoreLowBits Ignore changes in low bits of color-inputbox, 0-7 
 boolean EncodeTransparency Encode transparency-checkbox; true, checked; false, unchecked 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_LCF

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_LCF(integer Width, integer Height, number MaxFPS, boolean AspectRatio, optional string LCFoptionstweak)

Description:
Creates the render-cfg-string for the LCF-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected LCF-settings 

Parameters:
 integer Width the width of the lcf in pixels; 1 to 2147483647 
 integer Height the height of the lcf in pixels; 1 to 2147483647  
 number MaxFPS the maximum framerate of the lcf in fps; 0.01 to 2000.01 supported by the Ultraschall API 
 boolean AspectRatio Preserve aspect ratio-checkbox; true, checked; false, unchecked 
 optional string LCFoptionstweak a 64bytes string, which can hold tweak-settings for lcf; default is "t20 x128 y16"; this function does not check for these options to be valid! 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_WebMVideo

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_WebMVideo(integer VIDKBPS, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the WebM-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected WebM-Video-settings 

Parameters:
 integer VIDKBPS the video-bitrate of the video in kbps; 1 to 2147483647 
 integer AUDKBPS the audio-bitrate of the video in kbps; 1 to 2147483647 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MKV_Video

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MKV_Video(integer VideoCodec, integer MJPEG_quality, integer AudioCodec, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the MKV-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MKV-Video-settings 

Parameters:
 integer VideoCodec the videocodec used for the video;
   1, FFV1 (lossless)
   2, Hufyuv (lossles)
   3, MJPEG 
 integer MJPEG_quality set here the MJPEG-quality in percent, when VideoCodec=3; otherwise just set it to 0 
 integer AudioCodec the audiocodec to use for the video
1, 16 bit PCM
2, 24 bit PCM
3, 32 bit FP 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_QTMOVMP4_Video

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_QTMOVMP4_Video(integer VideoCodec, integer MJPEG_quality, integer AudioCodec, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the QT/MOV/MP4-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected QT/MOV/MP4-Video-settings 

Parameters:
 integer VideoCodec the videocodec used for the video;
   1, MJPEG 
 integer MJPEG_quality set here the MJPEG-quality in percent 
 integer AudioCodec the audiocodec to use for the video
1, 16 bit PCM
2, 24 bit PCM
3, 32 bit FP 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_AVI_Video

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_AVI_Video(integer VideoCodec, integer MJPEG_quality, integer AudioCodec, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the AVI-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected QT/MOV/MP4-Video-settings 

Parameters:
 integer VideoCodec the videocodec used for the video;
1, DV
2, MJPEG
3, FFV1 (lossless)
4, Hufyuv (lossless) 
 integer MJPEG_quality set here the MJPEG-quality in percent when VideoCodec=2, otherwise just set it to 0 
 integer AudioCodec the audiocodec to use for the video
1, 16 bit PCM
2, 24 bit PCM
3, 32 bit FP 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MP4Mac_Video

Functioncall:

boolean Stream, integer VIDKBPS, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_MP4Mac_Video(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MP4 for Mac_Video(stream optimised and non-stream optimised).
This is Mac-OS only!

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 boolean Stream true, mp4-video would be stream-optimized; false, mp4-video would not be stream-optimized 
 integer VIDKBPS the video-bitrate of the video in kbps 
 integer AUDKBPS the audio-bitrate of the video in kbps 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the webm-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_MOVMac_Video

Functioncall:

integer VideoCodec, integer VIDKBPS, integer MJPEG_quality, integer AudioCodec, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_MOVMac_Video(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for MOV for Mac_Video.
This is MacOS-only.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer VideoCodec the videocodec used for this setting
0, h264
1, Apple ProRes 4444
2, Apple ProRes 422
3, MJPEG 
 integer VIDKBPS the video-bitrate of the video in kbps 
 integer MJPEG_quality when VideoCodec==3, then MJPEG is used; given in percent 
 integer AudioCodec the audiocodec used
0, AAC
1, 16-bit PCM
2, 24-bit PCM
3, 32-bit FP PCM 
 integer AUDKBPS the audio-bitrate of the video in kbps 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the webm-settings 


^ Reaper version 5.975Lua version 5.3 GetRenderCFG_Settings_M4AMac

Functioncall:

integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio = ultraschall.GetRenderCFG_Settings_M4AMac(string rendercfg)

Description:
Returns the settings stored in a render-cfg-string for M4A for Mac_Video(even though this stores only audio-files).
This is MacOS-only.

You can get this from the current RENDER_FORMAT using reaper.GetSetProjectInfo_String or from ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns -1 in case of an error

Returnvalues:
 integer AUDKBPS the audio-bitrate of the audio in kbps 
 integer WIDTH the width of the audio in pixels 
 integer HEIGHT the height of the audio in pixels 
 integer FPS the fps of the audio; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  

Parameters:
 string render_cfg the render-cfg-string, that contains the webm-settings 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MP4MAC_Video

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MP4MAC_Video(boolean stream, integer VIDKBPS, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the MP4-Mac-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini
Only available on MacOS!

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MP4-Mac-Video-settings 

Parameters:
 boolean Stream true, the mp4-video is stream-optimized; false, the video is not stream-optimized 
 integer VIDKBPS the video-bitrate for the video; 0 to 2147483647kbps 
 integer AUDKBPS the audio-bitrate for the video; 0 to 2147483647kbps 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_M4AMAC

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_M4AMAC(integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the M4A-Mac-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini
Only available on MacOS!

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected M4A-Mac-settings 

Parameters:
 integer AUDKBPS the audio-bitrate for the video; 0 to 2147483647 kbps 
 integer WIDTH the width of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer HEIGHT the height of the video in pixels; 1 to 2147483647; only even values(2,4,6,etc) will be accepted by Reaper, uneven will be rounded up! 
 integer FPS the fps of the video; must be a double-precision-float value (e.g. 9.09 or 25.00); 0.01 to 2000.00 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MOVMAC_Video

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MOVMAC_Video(integer VideoCodec, integer VIDKBPS, integer MJPEG_quality, integer AudioCodec, integer AUDKBPS, integer WIDTH, integer HEIGHT, integer FPS, boolean AspectRatio)

Description:
Returns the render-cfg-string for the MOV-Mac-Video-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini
Only available on MacOS!

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MP4-Mac-Video-settings 

Parameters:
 integer VideoCodec the videocodec used for this setting
0, h264
1, Apple ProRes 4444
2, Apple ProRes 422
3, MJPEG 
 integer VIDKBPS the video-bitrate of the video in kbps 
 integer MJPEG_quality when VideoCodec==3, then MJPEG is used; given in percent 
 integer AudioCodec the audiocodec used
0, AAC
1, 16-bit PCM
2, 24-bit PCM
3, 32-bit FP PCM 
 integer AUDKBPS the audio-bitrate of the video in kbps 
 integer WIDTH the width of the video in pixels 
 integer HEIGHT the height of the video in pixels 
 integer FPS the fps of the video; must be a double-precision-float value (9.09 or 25.00); due API-limitations, this supports 0.01fps to 2000.00fps 
 boolean AspectRatio the aspect-ratio; true, keep source aspect ratio; false, don't keep source aspect ratio  


^ Reaper version 6.04SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRenderTable_Project

Functioncall:

table RenderTable = ultraschall.GetRenderTable_Project()

Description:
Returns all stored render-settings for the current project, as a handy table.

RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; true, checked; false, unchecked
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - true, closes rendering to file-dialog after render; false, doesn't close it
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle)
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox; true, checked; false, unchecked
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; true, checked; false, unchecked
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; true, checked; false, unchecked
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail

Returns nil in case of an error

Returnvalues:
 table RenderTable a table with all of the current project's render-settings 



^ Reaper version 6.04Lua version 5.3 GetRenderTable_ProjectFile

Functioncall:

table RenderTable = ultraschall.GetRenderTable_ProjectFile(string projectfilename_with_path)

Description:
Returns all stored render-settings in a projectfile, as a handy table.

RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; true, checked; false, unchecked
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - close rendering to file-dialog after render; always true, as this isn't stored in projectfiles
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle)
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox; true, checkbox is checked; false, checkbox is unchecked
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; always true(checked), as this isn't stored in projectfiles
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; always false, as this is not stored in projectfiles
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail

Returns nil in case of an error

Returnvalues:
 table RenderTable a table with all of the current project's render-settings 

Parameters:
 string projectfilename_with_path the projectfile, whose render-settings you want to get 


^ Reaper version 5.975Lua version 5.3 GetOutputFormat_RenderCfg

Functioncall:

string outputformat, string renderstring = ultraschall.GetOutputFormat_RenderCfg(string Renderstring, optional ReaProject ReaProject)

Description:
Returns the output-format set in a render-cfg-string, as stored in rpp-files and the render-presets file reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string outputformat the outputformat, set in the render-cfg-string
The following are valid:
WAV, AIFF, AUDIOCD-IMAGE, DDP, FLAC, MP3, OGG, Opus, Video, Video (Mac), Video GIF, Video LCF, WAVPACK 
 string renderstring the renderstringm which is either the renderstring you've passed or the one from the ReaProject you passed as second parameter 

Parameters:
 string Renderstring the render-cfg-string from a rpp-projectfile or the reaper-render.ini
nil, to get the settings of the currently opened project 
 optional ReaProject ReaProject a ReaProject, whose renderformat you want to know; only available, when Renderstring=nil
set to nil, to use the currently opened project
pass as integer to get the renderformat of a specific projecttab, with 0 for the current, 1 for the first, 2 for the second, etc 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_Opus

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_Opus(integer Mode, integer Kbps, integer Complexity, optional boolean channel_audio, optional boolean per_channel)

Description:
Creates the render-cfg-string for the Opus-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected Opus-settings 

Parameters:
 integer Mode the Mode for the Opus-file; 0, VBR; 1, CVBR; 2, HARDCBR 
 integer Kbps the kbps of the opus-file; Ultraschall-Api supports between 1 and 10256  
 integer Complexity the complexity-setting between 0(lowest quality) and 10(highest quality, slow encoding) 
 boolean channel_audio true, Encode 3-8 channel audio as 2.1-7.1(LFE); false, DON'T Encode 3-8 channel audio as 2.1-7.1(LFE)  
 boolean per_channel true, kbps per channel (6-256); false, kbps combined for all channels  


^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_OGG

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_OGG(integer Mode, number VBR_Quality, integer CBR_KBPS, integer ABR_KBPS, integer ABR_KBPS_MIN, integer ABR_KBPS_MAX)

Description:
Returns the render-cfg-string for the OGG-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini
For all mode-settings that you don't need(kbps or quality), you can safely set them to 1.

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected OGG-settings 

Parameters:
 integer Mode the mode for the ogg-file; 0, VBR; 1, CBR; 2, ABR 
 number VBR_Quality the quality for VBR-mode; a floating-value between 0 and 1 
 integer CBR_KBPS the bitrate for CBR-mode; 0 to 2048 
 integer ABR_KBPS the bitrate for ABR-mode; 0 to 2048 
 integer ABR_KBPS_MIN the minimum-bitrate for ABR-mode; 0 to 2048 
 integer ABR_KBPS_MAX the maximum-bitrate for ABR-mode; 0 to 2048 


^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_DDP

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_DDP()

Description:
Returns the render-cfg-string for the DDP-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected DDP-settings 



^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_FLAC

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_FLAC(integer Bitrate, integer EncSpeed)

Description:
Returns the render-cfg-string for the FLAC-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected FLAC-settings 

Parameters:
 integer Bitrate the bitrate of the flac-file;
0, 24 bit
1, 23/24 bit
2, 22/24 bit
3, 21/24 bit
4, 20/24 bit
5, 19/24 bit
6, 18/24 bit
7, 17/24 bit
8, 16 bit 
 integer EncSpeed the encoding speed; 0(fastest) to 8(slowest); 5(default) 


^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_WAVPACK

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_WAVPACK(integer Mode, integer Bitdepth, integer Writemarkers, boolean WriteBWFChunk, boolean IncludeFilenameBWF)

Description:
Returns the render-cfg-string for the WAVPACK-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected WAVPACK-settings 

Parameters:
 integer Mode 0, Normal; 1, Fast; 2, High; 3, Very High(slowest) 
 integer Bitdepth the bitdepth of the WAVPACK-file
   0(16Bit)
   1(24Bit)
   2(32Bit integer)
   3(32Bit floating point)
   4(23/24 Bit)
   5(22/24 Bit)
   6(21/24 Bit)
   7(20/24 Bit)
   8(19/24 Bit)
   9(18/24 Bit)
   10(17/24 Bit)
   11(32 bit floating point -144dB floor)
   12(32 bit floating point -120dB floor)
   13(32 bit floating point -96dB floor) 
 integer Writemarkers Write markers as cues-checkboxes
0, nothing checked
1, Write markers as cues->checked
2, Write markers as cues and Only write markers starting with #->checked 
 boolean WriteBWFChunk the Write BWF chunk-checkbox; true, checked; false, unchecked 
 boolean IncludeFilenameBWF the include project filename in BWF data-checkbox; true, checked; false, unchecked 


^ Reaper version 6.04Lua version 5.3 IsValidRenderTable

Functioncall:

boolean retval = ultraschall.IsValidRenderTable(RenderTable RenderTable)

Description:
returns, if the table RenderTable is a valid RenderTable.

Returns false in case of an error; the error-message contains the faulty table-entry.

Returnvalues:
 boolean retval true, RenderTable is a valid RenderTable; false, it is not a valid RenderTable 

Parameters:
 RenderTable RenderTable the table, that you want to check for validity 


^ Reaper version 6.04SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 ApplyRenderTable_Project

Functioncall:

boolean retval = ultraschall.ApplyRenderTable_Project(RenderTable RenderTable, optional boolean apply_rendercfg_string)

Description:
Sets all stored render-settings from a RenderTable as the current project-settings.

Expected table is of the following structure:
RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; true, checked; false, unchecked
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - true, close rendering to file-dialog after render; false, don't close it
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle)
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox; true, checked; false, unchecked
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; true, checked; false, unchecked
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; true, checked; false, unchecked
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail

Returns false in case of an error

Returnvalues:
 boolean retval true, setting the render-settings was successful; false, it wasn't successful 

Parameters:
 RenderTable RenderTable a RenderTable, that contains all render-dialog-settings 
 optional boolean apply_rendercfg_string true or nil, apply it as well; false, don't apply it 


^ Reaper version 6.04Lua version 5.3 ApplyRenderTable_ProjectFile

Functioncall:

boolean retval, string ProjectStateChunk = ultraschall.ApplyRenderTable_ProjectFile(RenderTable RenderTable, string projectfilename_with_path, optional boolean apply_rendercfg_string, optional string ProjectStateChunk)

Description:
Sets all stored render-settings from a RenderTable as the current project-settings.

Expected table is of the following structure:
RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; true, checked; false, unchecked
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - close rendering to file-dialog after render; ignored, as this can't be set in projectfiles
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle);
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; ignored, as this can't be stored in projectfiles
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; ignored, as this can't be stored in projectfiles
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail

Returns false in case of an error

Returnvalues:
 boolean retval true, setting the render-settings was successful; false, it wasn't successful 
 string ProjectStateChunk the altered project/ProjectStateChunk as a string 

Parameters:
 RenderTable RenderTable a RenderTable, that contains all render-dialog-settings 
 string projectfilename_with_path the rpp-projectfile, to which you want to apply the RenderTable; nil, to use parameter ProjectStateChunk instead 
 optional boolean apply_rendercfg_string true or nil, apply it as well; false, don't apply it 
 optional parameter ProjectStateChunk the ProjectStateChunkk, to which you want to apply the RenderTable 


^ Reaper version 6.04Lua version 5.3 CreateNewRenderTable

Functioncall:

RenderTable RenderTable = ultraschall.CreateNewRenderTable(integer Source, integer Bounds, number Startposition, number Endposition, integer TailFlag, integer TailMS, string RenderFile, string RenderPattern, integer SampleRate, integer Channels, integer OfflineOnlineRendering, boolean ProjectSampleRateFXProcessing, integer RenderResample, boolean OnlyMonoMedia, boolean MultiChannelFiles, integer Dither, string RenderString, boolean SilentlyIncrementFilename, boolean AddToProj, boolean SaveCopyOfProject, boolean RenderQueueDelay, integer RenderQueueDelaySeconds, boolean CloseAfterRender, optional boolean EmbedStretchMarkers, optional string RenderString2)

Description:
Creates a new RenderTable.

Returns nil in case of an error

Returnvalues:
 RenderTable RenderTable the created RenderTable 

Parameters:
 integer Source The Source-dropdownlist;
0, Master mix
1, Master mix + stems
3, Stems (selected tracks)
8, Region render matrix
32, Selected media items
256, Embed stretch markers/transient guides-checkbox=on; optional, as parameter EmbedStretchMarkers is meant for that 
 integer Bounds The Bounds-dropdownlist
0, Custom time range
1, Entire project
2, Time selection
3, Project regions
4, Selected Media Items(in combination with Source 32)
5, Selected regions 
 number Startposition the startposition of the render-section in seconds; only used when Bounds=0(Custom time range) 
 number Endposition the endposition of the render-section in seconds; only used when Bounds=0(Custom time range) 
 integer TailFlag in which bounds is the Tail-checkbox checked?
&1, custom time bounds
&2, entire project
&4, time selection
&8, all project regions
&16, selected media items
&32, selected project regions 
 integer TailMS the amount of milliseconds of the tail 
 string RenderFile the contents of the Directory-inputbox of the Render to File-dialog 
 string RenderPattern the render pattern as input into the File name-inputbox of the Render to File-dialog; set to "" if you don't want to use it 
 integer SampleRate the samplerate of the rendered file(s) 
 integer Channels the number of channels in the rendered file;
1, mono
2, stereo
3 and higher, the number of channels 
 integer OfflineOnlineRendering Offline/Online rendering-dropdownlist
0, Full-speed Offline
1, 1x Offline
2, Online Render
3, Online Render(Idle)
4, Offline Render(Idle) 
 boolean ProjectSampleRateFXProcessing Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked 
 integer RenderResample Resample mode-dropdownlist
0, Medium (64pt Sinc)
1, Low (Linear Interpolation)
2, Lowest (Point Sampling)
3, Good (192pt Sinc)
4, Better (348 pt Sinc)
5, Fast (IIR + Linear Interpolation)
6, Fast (IIRx2 + Linear Interpolation)
7, Fast (16pt Sinc)
8, HQ (512 pt)
9, Extreme HQ(768pt HQ Sinc) 
 boolean OnlyMonoMedia Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked 
 boolean MultiChannelFiles Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked 
 integer Dither the Dither/Noise shaping-checkboxes:
&1, dither master mix
&2, noise shaping master mix
&4, dither stems
&8, dither noise shaping stems 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_SaveCopyOfProject

Functioncall:

boolean retval = ultraschall.GetRender_SaveCopyOfProject()

Description:
Gets the current state of the "Save copy of project to outfile.wav.RPP"-checkbox from the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, checkbox is checked; false, checkbox is unchecked 



^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_SaveCopyOfProject

Functioncall:

boolean retval = ultraschall.SetRender_SaveCopyOfProject(boolean state)

Description:
Sets the "Save copy of project to outfile.wav.RPP"-checkbox of the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 boolean state true, check the checkbox; false, uncheck the checkbox 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_QueueDelay

Functioncall:

boolean retval = ultraschall.SetRender_QueueDelay(boolean state, integer length)

Description:
Sets the "Delay queued render to allow samples to load"-checkbox of the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 boolean state true, check the checkbox; false, uncheck the checkbox 
 integer length the number of seconds the delay shall be 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_QueueDelay

Functioncall:

boolean retval, integer length = ultraschall.GetRender_QueueDelay()

Description:
Gets the current checkstate of the "Delay queued render to allow samples to load"-checkbox from the Render to File-dialog,
as well as the length of the queue-render-delay.

Returnvalues:
 boolean state true, check the checkbox; false, uncheck the checkbox 
 integer length the number of seconds the delay shall be 



^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_ProjectSampleRateForMix

Functioncall:

boolean retval = ultraschall.SetRender_ProjectSampleRateForMix(boolean state)

Description:
Sets the "Use project sample rate for mixing and FX/synth processing"-checkbox of the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 boolean state true, check the checkbox; false, uncheck the checkbox 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_ProjectSampleRateForMix

Functioncall:

boolean retval = ultraschall.GetRender_ProjectSampleRateForMix()

Description:
Gets the current state of the "Use project sample rate for mixing and FX/synth processing"-checkbox from the Render to File-dialog.

Returnvalues:
 boolean state true, check the checkbox; false, uncheck the checkbox 



^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_AutoIncrementFilename

Functioncall:

boolean retval = ultraschall.SetRender_AutoIncrementFilename(boolean state)

Description:
Gets the current state of the "Silently increment filenames to avoid overwriting"-checkbox from the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 boolean state true, check the checkbox; false, uncheck the checkbox 


^ Reaper version 5.975SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_AutoIncrementFilename

Functioncall:

boolean retval = ultraschall.GetRender_AutoIncrementFilename()

Description:
Gets the current state of the "Silently increment filenames to avoid overwriting"-checkbox from the Render to File-dialog.

Returnvalues:
 boolean state true, check the checkbox; false, uncheck the checkbox 



^ Reaper version 6.02Lua version 5.3 GetRenderPreset_Names

Functioncall:

integer bounds_presets, table bounds_names, integer options_format_presets, table options_format_names, integer both_presets, table both_names = ultraschall.GetRenderPreset_Names()

Description:
Returns all render-preset-names for a) Bounds and output pattern/filename b) Options and format c) both presets, who share the same name

Returnvalues:
 integer bounds_presets the number of found bounds and output-pattern-presets 
 table bounds_names the names of all found bounds and output-pattern-presets 
 integer options_format_presets the number of found options and format-presets 
 table options_format_names the names of all found options and format-presets 
 integer both_presets the number of found presets, who both share the same name 
 table both_names the names of all found presets, who both share the same name 



^ Reaper version 6.02Lua version 5.3 GetRenderPreset_RenderTable

Functioncall:

RenderTable RenderTable = ultraschall.GetRenderPreset_RenderTable(string Bounds_Name, string Options_and_Format_Name)

Description:
returns a rendertable, that contains all settings of a specific render-preset.

use GetRenderPreset_Names to get the available render-preset-names.

Some settings aren't stored in Presets and will get default values:
TailMS=0, SilentlyIncrementFilename=false, AddToProj=false, SaveCopyOfProject=false, RenderQueueDelay=false, RenderQueueDelaySeconds=false

returned table if of the following format:

RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; always false, as this isn't stored in render-presets
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - close rendering to file-dialog after rendering; always true, as this isn't stored in render-presets
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle)
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox; always false, as this isn't stored in render-presets
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay; always 0, as this isn't stored in render-presets
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; always false, as this isn't stored in render-presets
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; always true, as this isn't stored in Presets
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail; always 0, as this isn't stored in render-presets


Returns nil in case of an error

Returnvalues:
 RenderTable RenderTable a render-table, which contains all settings from a render-preset 

Parameters:
 string Bounds_Name the name of the Bounds-render-preset you want to get 
 string Options_and_Format_Name the name of the Renderformat-options-render-preset you want to get 


^ Reaper version 6.02Lua version 5.3 DeleteRenderPreset_Bounds

Functioncall:

boolean retval = ultraschall.DeleteRenderPreset_Bounds(string Bounds_Name)

Description:
deletes a Bounds-render-preset from Reaper's render-presets.

This deletes all(!) occurrences of the Bounds-render-preset with the same name.
Though, you shouldn't store multiple Bounds-render-presets with the same name into reaper-render.ini in the first place.

use GetRenderPreset_Names to get the available render-preset-names.

Returns false in case of an error

Returnvalues:
 boolean retval true, deleting was successful; false, deleting was unsuccessful 

Parameters:
 string Bounds_Name the name of the Bounds-render-preset you want to get 


^ Reaper version 5.975Lua version 5.3 DeleteRenderPreset_FormatOptions

Functioncall:

boolean retval = ultraschall.DeleteRenderPreset_FormatOptions(string Options_and_Format_Name)

Description:
deletes a Render-Format-Options-render-preset from Reaper's render-presets.

This deletes all(!) occurrences of the Render-Format-Options-render-preset with the same name.
Though, you shouldn't store multiple Render-Format-Options-render-preset with the same name into reaper-render.ini in the first place.

use GetRenderPreset_Names to get the available render-preset-names.

Returns false in case of an error

Returnvalues:
 boolean retval true, deleting was successful; false, deleting was unsuccessful 

Parameters:
 string Options_and_Format_Name the name of the Renderformat-options-render-preset you want to get 


^ Reaper version 6.02Lua version 5.3 AddRenderPreset

Functioncall:

boolean retval = ultraschall.AddRenderPreset(string Bounds_Name, string Options_and_Format_Name, RenderTable RenderTable)

Description:
adds a new render-preset into reaper-render.ini.

This function will check, whether the chosen names are already in use.

Added render-presets are available after (re-)opening in the Render to File-dialog    

Note: You can choose, whether to include only Bounds, only RenderFormatOptions of both. The Bounds and the RenderFormatOptions store different parts of the render-presets.

Bounds_Name stores only:
         RenderTable["Bounds"] - the bounds-dropdownlist,
                                 0, Custom time range
                                 1, Entire project
                                 2, Time selection
                                 3, Project regions
                                 4, Selected Media Items(in combination with Source 32)
                                 5, Selected regions
         RenderTable["Startposition"] - the startposition of the render
         RenderTable["Endposition"] - the endposition of the render
         RenderTable["Source"] - the source dropdownlist, includes
                                 0, Master mix
                                 1, Master mix + stems
                                 3, Stems (selected tracks)
                                 8, Region render matrix
                                 32, Selected media items
                                 64, selected media items via master
                                 128, selected tracks via master
         "0"    - unknown, default setting is 0
         RenderTable["RenderPattern"] - the renderpattern, which hold also the wildcards
         RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked?
                                 &1, custom time bounds
                                 &2, entire project
                                 &4, time selection
                                 &8, all project regions
                                 &16, selected media items
                                 &32, selected project regions

Options_and_Format_Name stores only:
         RenderTable["SampleRate"] - the samplerate, with which to render; 0, use project-settings
         RenderTable["Channels"] - the number of channels for the output-file
         RenderTable["OfflineOnlineRendering"] - the offline/online-dropdownlist
                                 0, Full-speed Offline
                                 1, 1x Offline
                                 2, Online Render
                                 3, Online Render(Idle)
                                 4, Offline Render(Idle);
         RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; 1, checked; 0, unchecked
         RenderTable["RenderResample"] - Resample mode-dropdownlist;
                                 0, Medium (64pt Sinc)
                                 1, Low (Linear Interpolation)
                                 2, Lowest (Point Sampling)
                                 3, Good (192pt Sinc)
                                 4, Better (348 pt Sinc)
                                 5, Fast (IIR + Linear Interpolation)
                                 6, Fast (IIRx2 + Linear Interpolation)
                                 7, Fast (16pt Sinc)
                                 8, HQ (512 pt)
                                 9, Extreme HQ(768pt HQ Sinc)
         RenderTable["Dither"] - the Dither/Noise shaping-checkboxes:
                                 &1, dither master mix
                                 &2, noise shaping master mix
                                 &4, dither stems
                                 &8, dither noise shaping stems
         RenderTable["MultiChannelFiles"] - multichannel-files-checkbox
         RenderTable["OnlyMonoMedia"] - only mono media-checkbox
         RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides-checkbox
         RenderTable["RenderString"] - the render-cfg-string, which holds the render-outformat-settings
         RenderTable["RenderString2"] - the render-cfg-string, which holds the secondary render-outformat-settings

Returns false in case of an error

Returnvalues:
 boolean retval true, adding was successful; false, adding was unsuccessful 

Parameters:
 string Bounds_Name the name of the Bounds-render-preset you want to add; nil, to not add a new Bounds-render-preset 
 string Options_and_Format_Name the name of the Renderformat-options-render-preset you want to add; to not add a new Render-Format-Options-render-preset 
 RenderTable RenderTable the RenderTable, which holds all information for inclusion into the Render-Preset 


^ Reaper version 6.04Lua version 5.3 SetRenderPreset

Functioncall:

boolean retval = ultraschall.SetRenderPreset(string Bounds_Name, string Options_and_Format_Name, RenderTable RenderTable)

Description:
sets an already existing render-preset in reaper-render.ini.

This function will check, whether the chosen names aren't given yet in any preset.

Changed render-presets are updated after (re-)opening in the Render to File-dialog    

Note: You can choose, whether to include only Bounds, only RenderFormatOptions of both. The Bounds and the RenderFormatOptions store different parts of the render-presets.

Bounds_Name stores only:
         RenderTable["Bounds"] - the bounds-dropdownlist,
                                 0, Custom time range
                                 1, Entire project
                                 2, Time selection
                                 3, Project regions
                                 4, Selected Media Items(in combination with Source 32)
                                 5, Selected regions
         RenderTable["Startposition"] - the startposition of the render
         RenderTable["Endposition"] - the endposition of the render
         RenderTable["Source"]+RenderTable["MultiChannelFiles"]+RenderTable["OnlyMonoMedia"] - the source dropdownlist, includes
                                 0, Master mix
                                 1, Master mix + stems
                                 3, Stems (selected tracks)
                                 &4, Multichannel tracks to multichannel files
                                 8, Region render matrix
                                 &16, Tracks with only mono media to mono files
                                 32, Selected media items
                                 64, selected media items via master
                                 128, selected tracks via master
         "0"    - unknown, default setting is 0
         RenderTable["RenderPattern"] - the renderpattern, which hold also the wildcards
         RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked?
                                 &1, custom time bounds
                                 &2, entire project
                                 &4, time selection
                                 &8, all project regions
                                 &16, selected media items
                                 &32, selected project regions

Options_and_Format_Name stores only:
         RenderTable["SampleRate"] - the samplerate, with which to render; 0, use project-settings
         RenderTable["Channels"] - the number of channels for the output-file
         RenderTable["OfflineOnlineRendering"] - the offline/online-dropdownlist
                                 0, Full-speed Offline
                                 1, 1x Offline
                                 2, Online Render
                                 3, Online Render(Idle)
                                 4, Offline Render(Idle);
         RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; 1, checked; 0, unchecked
         RenderTable["RenderResample"] - Resample mode-dropdownlist;
                                 0, Medium (64pt Sinc)
                                 1, Low (Linear Interpolation)
                                 2, Lowest (Point Sampling)
                                 3, Good (192pt Sinc)
                                 4, Better (348 pt Sinc)
                                 5, Fast (IIR + Linear Interpolation)
                                 6, Fast (IIRx2 + Linear Interpolation)
                                 7, Fast (16pt Sinc)
                                 8, HQ (512 pt)
                                 9, Extreme HQ(768pt HQ Sinc)
         RenderTable["Dither"] - the Dither/Noise shaping-checkboxes:
                                 &1, dither master mix
                                 &2, noise shaping master mix
                                 &4, dither stems
                                 &8, dither noise shaping stems
         RenderTable["RenderString"] - the render-cfg-string, which holds the render-outformat-settings
         RenderTable["RenderString2"] - the render-cfg-string, which holds the secondary render-outformat-settings; "" to remove it from this preset

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, setting was unsuccessful 

Parameters:
 string Bounds_Name the name of the Bounds-render-preset you want to add; nil, to not add a new Bounds-render-preset 
 string Options_and_Format_Name the name of the Renderformat-options-render-preset you want to add; to not add a new Render-Format-Options-render-preset 
 RenderTable RenderTable the RenderTable, which holds all information for inclusion into the Render-Preset 


^ Reaper version 6.04SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 RenderProject_RenderTable

Functioncall:

integer count, array MediaItemStateChunkArray, array Filearray = ultraschall.RenderProject_RenderTable(optional string projectfilename_with_path, optional RenderTable RenderTable, optional boolean AddToProj, optional boolean CloseAfterRender, optional boolean SilentlyIncrementFilename)

Description:
Renders a projectfile or the current active project, using the settings from a RenderTable.

Expected RenderTable is of the following structure:
RenderTable["AddToProj"] - Add rendered items to new tracks in project-checkbox; true, checked; false, unchecked
RenderTable["Bounds"] - 0, Custom time range; 1, Entire project; 2, Time selection; 3, Project regions; 4, Selected Media Items(in combination with Source 32); 5, Selected regions
RenderTable["Channels"] - the number of channels in the rendered file; 1, mono; 2, stereo; higher, the number of channels
RenderTable["CloseAfterRender"] - true, close rendering to file-dialog after render; false, don't close it
RenderTable["Dither"] - &1, dither master mix; &2, noise shaping master mix; &4, dither stems; &8, dither noise shaping stems
RenderTable["EmbedStretchMarkers"] - Embed stretch markers/transient guides; true, checked; false, unchecked
RenderTable["Endposition"] - the endposition of the rendering selection in seconds
RenderTable["MultiChannelFiles"] - Multichannel tracks to multichannel files-checkbox; true, checked; false, unchecked
RenderTable["OfflineOnlineRendering"] - Offline/Online rendering-dropdownlist; 0, Full-speed Offline; 1, 1x Offline; 2, Online Render; 3, Online Render(Idle); 4, Offline Render(Idle)
RenderTable["OnlyMonoMedia"] - Tracks with only mono media to mono files-checkbox; true, checked; false, unchecked
RenderTable["ProjectSampleRateFXProcessing"] - Use project sample rate for mixing and FX/synth processing-checkbox; true, checked; false, unchecked
RenderTable["RenderFile"] - the contents of the Directory-inputbox of the Render to File-dialog
RenderTable["RenderPattern"] - the render pattern as input into the File name-inputbox of the Render to File-dialog
RenderTable["RenderQueueDelay"] - Delay queued render to allow samples to load-checkbox; true, checked; false, unchecked
RenderTable["RenderQueueDelaySeconds"] - the amount of seconds for the render-queue-delay
RenderTable["RenderResample"] - Resample mode-dropdownlist; 0, Medium (64pt Sinc); 1, Low (Linear Interpolation); 2, Lowest (Point Sampling); 3, Good (192pt Sinc); 4, Better (348 pt Sinc); 5, Fast (IIR + Linear Interpolation); 6, Fast (IIRx2 + Linear Interpolation); 7, Fast (16pt Sinc); 8, HQ (512 pt); 9, Extreme HQ(768pt HQ Sinc)
RenderTable["RenderString"] - the render-cfg-string, that holds all settings of the currently set render-output-format as BASE64 string
RenderTable["RenderString2"] - the render-cfg-string, that holds all settings of the currently set secondary-render-output-format as BASE64 string
RenderTable["RenderTable"]=true - signals, this is a valid render-table
RenderTable["SampleRate"] - the samplerate of the rendered file(s)
RenderTable["SaveCopyOfProject"] - the "Save copy of project to outfile.wav.RPP"-checkbox; true, checked; false, unchecked
RenderTable["SilentlyIncrementFilename"] - Silently increment filenames to avoid overwriting-checkbox; true, checked; false, unchecked
RenderTable["Source"] - 0, Master mix; 1, Master mix + stems; 3, Stems (selected tracks); 8, Region render matrix; 16, Tracks with only Mono-Media to Mono Files; 32, Selected media items; 64, selected media items via master; 128, selected tracks via master
RenderTable["Startposition"] - the startposition of the rendering selection in seconds
RenderTable["TailFlag"] - in which bounds is the Tail-checkbox checked? &1, custom time bounds; &2, entire project; &4, time selection; &8, all project regions; &16, selected media items; &32, selected project regions
RenderTable["TailMS"] - the amount of milliseconds of the tail

Returns -1 in case of an error

Returnvalues:
 integer count the number of files that have been rendered 
 array MediaItemStateChunkArray the MediaItemStateChunks of all the rendered files 
 array Filearray filenames with path of all rendered files 

Parameters:
 optional string projectfilename_with_path the projectfilename with path of the rpp-file that you want to render; nil, to render the current active project 
 optional RenderTable RenderTable the RenderTable with all render-settings, that you want to apply; nil, use the project's existing settings 
 optional boolean AddToProj true, add the rendered files to the project; nil or false, don't add them;
will overwrite the settings in the RenderTable; will default to true, if no RenderTable is passed
only has an effect, when rendering the current active project 
 optional boolean CloseAfterRender true or nil, closes rendering to file-dialog after rendering is finished; false, keep it open
will overwrite the settings in the RenderTable; will default to true, if no RenderTable is passed 
 optional boolean SilentlyIncrementFilename true or nil, silently increment filename, when file already exists; false, ask for overwriting
will overwrite the settings in the RenderTable; will default to true, if no RenderTable is passed 


^ Reaper version 5.975Lua version 5.3 GetRenderQueuedProjects

Functioncall:

integer Filecount, array Filearray = ultraschall.GetRenderQueuedProjects()

Description:
Gets the number and names of files currently in the render-queue

Returnvalues:
 integer Filecount the number of project-files in the render-queue 
 array Filearray filenames with path of all queued-projectfiles 



^ Reaper version 5.975Lua version 5.3 AddProjectFileToRenderQueue

Functioncall:

boolean retval = ultraschall.AddProjectFileToRenderQueue(string projectfilename_with_path)

Description:
Adds a projectfile or the current active project to the render-queue

returns false in case of an error

Returnvalues:
 boolean retval true, adding was successful; false, adding was unsuccessful 

Parameters:
 string projectfilename_with_path the projectfile, that you want to add to the render-queue; nil, to add the current active project 


^ Reaper version 5.975Lua version 5.3 RenderProject_RenderQueue

Functioncall:

boolean retval = ultraschall.RenderProject_RenderQueue(integer index)

Description:
Renders a specific project from the render-queue.

See GetRenderQueuedProjects to get the names of the currently existing render-queue-projects, where the filename-order reflects the index needed for this function.

returns false in case of an error

Returnvalues:
 boolean retval false, a problem occurred; true, rendering went through; returns true as well, when rendering is aborted! 

Parameters:
 integer index the index of the render-queued-project; beginning with 1; -1 to render all projects in the render-queue 


^ Reaper version 6.04SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 RenderProject

Functioncall:

integer retval, integer renderfilecount, array MediaItemStateChunkArray, array Filearray = ultraschall.RenderProject(string projectfilename_with_path, string renderfilename_with_path, number startposition, number endposition, boolean overwrite_without_asking, boolean renderclosewhendone, boolean filenameincrease, optional string rendercfg, optional string rendercfg2)

Description:
Renders a project, using a specific render-cfg-string.
To get render-cfg-strings, see functions starting with CreateRenderCFG_, like CreateRenderCFG_AIFF, CreateRenderCFG_DDP, CreateRenderCFG_FLAC, CreateRenderCFG_OGG, CreateRenderCFG_Opus, etc.

Will use the render-settings currently set in projectfilename_with_path/the currently active project, except bound(set to Custom time range), render file and render-pattern, as they are set by this function!

Returns -1 in case of an error

Returnvalues:
 integer retval -1, in case of error; 0, in case of success 
 integer renderfilecount the number of rendered files 
 array MediaItemStateChunkArray the MediaItemStateChunks of all rendered files, with the one in entry 1 being the rendered master-track(when rendering stems+master) 
 array Filearray the filenames of the rendered files, including their paths. The filename in entry 1 is the one of the mastered track(when rendering stems+master) 

Parameters:
 string projectfilename_with_path the project to render; nil, for the currently opened project 
 string renderfilename_with_path the filename with path of the output-file. If you give the wrong extension, Reaper will exchange it by the correct one.
You can use wildcards to some extend in the actual filename(not the path!)
note: parameter overwrite_without_asking only works, when you give the right extension and use no wildcards, due API-limitations! 
 number startposition the startposition of the render-area in seconds;
-1, to use the startposition set in the projectfile itself;
-2, to use the start of the time-selection 
 number endposition the endposition of the render-area in seconds;
-1, to use the endposition set in the projectfile/current project itself
-2, to use the end of the time-selection 
 boolean overwrite_without_asking true, overwrite an existing renderfile; false, don't overwrite an existing renderfile
works only, when renderfilename_with_path has the right extension given and when not using wildcards(due API-limitations)! 
 boolean renderclosewhendone true, automatically close the render-window after rendering; false, keep rendering window open after rendering; nil, use current settings 
 boolean filenameincrease true, silently increase filename, if it already exists; false, ask before overwriting an already existing outputfile; nil, use current settings 
 optional string rendercfg the rendercfg-string, that contains all render-settings for an output-format
To get render-cfg-strings, see CreateRenderCFG_xxx-functions, like: CreateRenderCFG_AIFF, CreateRenderCFG_DDP, CreateRenderCFG_FLAC, CreateRenderCFG_OGG, CreateRenderCFG_Opus, CreateRenderCFG_WAVPACK, CreateRenderCFG_WebMVideo

If you want to render the current project, you can use a four-letter-version of the render-string; will use the default settings for that format. Not available with projectfiles!
"evaw" for wave, "ffia" for aiff, " iso" for audio-cd, " pdd" for ddp, "calf" for flac, "l3pm" for mp3, "vggo" for ogg, "SggO" for Opus, "PMFF" for FFMpeg-video, "FVAX" for MP4Video/Audio on Mac, " FIG" for Gif, " FCL" for LCF, "kpvw" for wavepack  
 optional string rendercfg2 just like rendercfg, but for the secondary render-format 


^ Reaper version 6.04Lua version 5.3 RenderProject_Regions

Functioncall:

integer retval, integer renderfilecount, array MediaItemStateChunkArray, array Filearray = ultraschall.RenderProject_Regions(string projectfilename_with_path, string renderfilename_with_path, integer region, boolean addregionname, boolean overwrite_without_asking, boolean renderclosewhendone, boolean filenameincrease, string rendercfg, optional string addregionnameseparator, optional string rendercfg2)

Description:
Renders a region of a project, using a specific render-cfg-string.
To get render-cfg-strings, see CreateRenderCFG_AIFF, CreateRenderCFG_DDP, CreateRenderCFG_FLAC, CreateRenderCFG_OGG, CreateRenderCFG_Opus

Returns -1 in case of an error

Returnvalues:
 integer retval -1, in case of error; 0, in case of success 
 integer renderfilecount the number of rendered files 
 array MediaItemStateChunkArray the MediaItemStateChunks of all rendered files, with the one in entry 1 being the rendered master-track(when rendering stems) 
 array Filearray the filenames of the rendered files, including their paths. The filename in entry 1 is the one of the mastered track(when rendering stems) 

Parameters:
 string projectfilename_with_path the project to render; nil, for the currently opened project 
 string renderfilename_with_path the filename of the output-file.
You can use wildcards to some extend in the actual filename(not the path!); doesn't support $region yet
Will be seen as path only, when you set addregionname=true and addregionnameseparator="/" 
 integer region the number of the region in the Projectfile to render 
 boolean addregionname add the name of the region to the renderfilename; only works, when you don't add a file-extension to renderfilename_with_path 
 boolean overwrite_without_asking true, overwrite an existing renderfile; false, don't overwrite an existing renderfile 
 boolean renderclosewhendone true, automatically close the render-window after rendering; false, keep rendering window open after rendering; nil, use current settings 
 boolean filenameincrease true, silently increase filename, if it already exists; false, ask before overwriting an already existing outputfile; nil, use current settings 
 string rendercfg the rendercfg-string, that contains all render-settings for an output-format
To get render-cfg-strings, see CreateRenderCFG_xxx-functions, like: CreateRenderCFG_AIFF, CreateRenderCFG_DDP, CreateRenderCFG_FLAC, CreateRenderCFG_OGG, CreateRenderCFG_Opus, CreateRenderCFG_WAVPACK, CreateRenderCFG_WebMVideo

If you want to render the current project, you can use a four-letter-version of the render-string; will use the default settings for that format. Not available with projectfiles!
"evaw" for wave, "ffia" for aiff, " iso" for audio-cd, " pdd" for ddp, "calf" for flac, "l3pm" for mp3, "vggo" for ogg, "SggO" for Opus, "PMFF" for FFMpeg-video, "FVAX" for MP4Video/Audio on Mac, " FIG" for Gif, " FCL" for LCF, "kpvw" for wavepack  
 optional string addregionnameseparator when addregionname==true, this parameter allows you to set a separator between renderfilename_with_path and regionname.
Also allows / or \\ to use renderfilename_with_path as only path as folder, into which the files are stored having the regionnames only.
Default is an empty string. 
 optional string rendercfg2 the render-cfg-string for secondary render-format 


^ Reaper version 5.979Lua version 5.3 AddSelectedItemsToRenderQueue

Functioncall:

boolean retval, integer num_queued_projects = ultraschall.AddSelectedItemsToRenderQueue(optional boolean render_items_individually, optional boolean render_items_through_master, optional RenderTable RenderTables)

Description:
Adds the selected MediaItems to the render-queue.

returns false in case of an error

Returnvalues:
 boolean retval true, adding was successful; false, adding was unsuccessful 
 integer num_queued_projects the number of newly created projects in the render-queue 

Parameters:
 optional boolean render_items_individually false or nil, render all selected MediaItems in one render-queued-project; true, render all selected MediaItems individually as separate Queued-projects 
 optional boolean render_items_through_master false or nil, just render the MediaItems; true, render the MediaItems through the Master-channel 
 optional RenderTable RenderTables a RenderTable to apply for the renders in the render-queue 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MP3MaxQuality

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MP3MaxQuality(optional boolean write_replay_gain)

Description:
Creates the render-cfg-string for the MP3-format with highest quality-settings. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returnvalues:
 string render_cfg_string the renderstring for MP3 with maximum quality 

Parameters:
 optional boolean write_replay_gain the "Write ReplayGain-tag"-checkbox; true, checked; false, unchecked; default is unchecked 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MP3VBR

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MP3VBR(integer vbr_quality, integer quality, optional boolean no_joint_stereo, optional boolean write_replay_gain)

Description:
Creates the render-cfg-string for the MP3-format with variable bitrate. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MP3-VBR-settings 

Parameters:
 integer vbr_quality the variable-bitrate quality; 1(for 10%) to 10(for 100%) 
 integer quality the encoding speed for the mp3
0, Maximum
1, Better
2, Normal
3, FastEncode
4, FasterEncode
5, FastestEncode 
 optional boolean no_joint_stereo the "Do not allow joint stereo"-checkbox; true, checked; false, unchecked; default is unchecked 
 optional boolean write_replay_gain the "Write ReplayGain-tag"-checkbox; true, checked; false, unchecked; default is unchecked 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MP3ABR

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MP3ABR(integer bitrate, integer quality, optional boolean no_joint_stereo, optional boolean write_replay_gain)

Description:
Creates the render-cfg-string for the MP3-format with average bitrate. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MP3-ABR-settings 

Parameters:
 integer bitrate the encoding quality for the mp3
0, 8 kbps
1, 16 kbps
2, 24 kbps
3, 32 kbps
4, 40 kbps
5, 48 kbps
6, 56 kbps
7, 64 kbps
8, 80 kbps
9, 96 kbps
10, 112 kbps
11, 128 kbps
12, 160 kbps
13, 192 kbps
14, 224 kbps
15, 256 kbps
16, 320 kbps 
 integer quality the encoding speed for the mp3
0, Maximum
1, Better
2, Normal
3, FastEncode
4, FasterEncode
5, FastestEncode 
 optional boolean no_joint_stereo the "Do not allow joint stereo"-checkbox; true, checked; false, unchecked; default is unchecked 
 optional boolean write_replay_gain the "Write ReplayGain-tag"-checkbox; true, checked; false, unchecked; default is unchecked 


^ Reaper version 5.975Lua version 5.3 CreateRenderCFG_MP3CBR

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_MP3CBR(integer bitrate, integer quality, optional boolean no_joint_stereo, optional boolean write_replay_gain)

Description:
Creates the render-cfg-string for the MP3-format with constant bitrate. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected MP3-CBR-settings 

Parameters:
 integer bitrate the encoding quality for the mp3
0, 8 kbps
1, 16 kbps
2, 24 kbps
3, 32 kbps
4, 40 kbps
5, 48 kbps
6, 56 kbps
7, 64 kbps
8, 80 kbps
9, 96 kbps
10, 112 kbps
11, 128 kbps
12, 160 kbps
13, 192 kbps
14, 224 kbps
15, 256 kbps
16, 320 kbps 
 integer quality the encoding speed for the mp3
0, Maximum
1, Better
2, Normal
3, FastEncode
4, FasterEncode
5, FastestEncode 
 optional boolean no_joint_stereo the "Do not allow joint stereo"-checkbox; true, checked; false, unchecked; default is unchecked 
 optional boolean write_replay_gain the "Write ReplayGain-tag"-checkbox; true, checked; false, unchecked; default is unchecked 


^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_WAV

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_WAV(integer BitDepth, integer LargeFiles, integer BWFChunk, integer IncludeMarkers, boolean EmbedProjectTempo)

Description:
Creates the render-cfg-string for the WAV-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected WAV-settings 

Parameters:
 integer BitDepth the bitdepth of the WAV-file
0, 8 Bit PCM
1, 16 Bit PCM
2, 24 Bit PCM
3, 32 Bit FP
4, 64 Bit FP
5, 4 Bit IMA ADPCM
6, 2 Bit cADPCM 
 integer LargeFiles how shall Reaper treat large WAV-files
0, Auto WAV/Wave64
1, Auto Wav/RF64
2, Force WAV
3, Force Wave64
4, Force RF64 
 integer BWFChunk Write BWF ('bext') chunk and Include project filename in BWF data - checkboxes
0, unchecked - unchecked
1, checked - unchecked
2, unchecked - checked
3, checked - checked 
 integer IncludeMarkers The include markerlist-dropdownlist
0, Do not include markers and regions
1, Markers + regions
2, Markers + regions starting with #
3, Markers only
4, Markers starting with # only
5, Regions only
6, Regions starting with # only 
 boolean EmbedProjectTempo Embed project tempo (use with care)-checkbox; true, checked; false, unchecked 


^ Reaper version 5.977SWS version 2.10.0.1Lua version 5.3 GetLastUsedRenderPatterns

Functioncall:

array last_render_patterns = ultraschall.GetLastUsedRenderPatterns()

Description:
returns the last 12 used render-patterns, that have been used for rendering by any project in Reaper.

Returnvalues:
 array last_render_patterns a table, which holds the last 12 used render-patterns, used by any project in Reaper 



^ Reaper version 5.977SWS version 2.10.0.1Lua version 5.3 GetLastRenderPaths

Functioncall:

array last_render_paths = ultraschall.GetLastRenderPaths()

Description:
returns the last 20 used render-output-paths, that have been used for rendering by any project in Reaper.

Returnvalues:
 array last_render_paths a table, which holds the last 20 used render-output-paths, used by any project in Reaper 



^ Reaper version 5.965Lua version 5.3 IsReaperRendering

Functioncall:

boolean retval, optional number render_position, optional number render_projectlength, optional ReaProject proj, optional boolean queue_render = ultraschall.IsReaperRendering()

Description:
Returns, if Reaper is currently rendering and the rendering position and projectlength of the rendered project

Returnvalues:
 boolean retval true, Reaper is rendering; false, Reaper does not render 
 optional number render_position the current rendering-position of the rendering project 
 optional number render_projectlength the length of the currently rendering project 
 optional ReaProject proj the project currently rendering 
 optional boolean queue_render true, if a project from the queued-folder is currently being rendered; false, if not; a hint if queued-rendering is currently active 



^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_AIFF

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_AIFF(integer bits, optional boolean EmbedBeatLength)

Description:
Returns the render-cfg-string for the AIFF-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected AIFF-settings 

Parameters:
 integer bits the bitdepth of the aiff-file; 8, 16, 24 and 32 are supported 
 optional boolean EmbedBeatLength Embed beat length if exact-checkbox; true, checked; false or nil, unchecked 


^ Reaper version 5.77Lua version 5.3 CreateRenderCFG_AudioCD

Functioncall:

string render_cfg_string = ultraschall.CreateRenderCFG_AudioCD(integer trackmode, boolean only_markers_starting_with_hash, integer leadin_silence_tracks, integer leadin_silence_disc, boolean burncd_image_after_render)

Description:
Returns the render-cfg-string for the AudioCD-format. You can use this in ProjectStateChunks, RPP-Projectfiles and reaper-render.ini

You can also check, whether to burn the created cd-image after rendering.

Returns nil in case of an error

Returnvalues:
 string render_cfg_string the render-cfg-string for the selected AudioCD-image-settings 

Parameters:
 integer trackmode Track mode-dropdownlist: 1, Markers define new track; 2, Regions define tracks (other areas ignored); 3, One Track 
 boolean only_markers_starting_with_hash Only use markers starting with #-checkbox; true, checked; false, unchecked 
 integer leadin_silence_tracks Lead-in silence for tracks-inputbox, in milliseconds 
 integer leadin_silence_disc Extra lead-in silence for disc-inputbox, in milliseconds 
 boolean burncd_image_after_render Burn CD image after render-checkbox; true, checked; false, unchecked 


^ Reaper version 6.02SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 GetRender_EmbedStretchMarkers

Functioncall:

boolean retval = ultraschall.GetRender_EmbedStretchMarkers()

Description:
Gets the current state of the "Embed stretch markers/transient guides"-checkbox from the Render to File-dialog.

Returnvalues:
 boolean state true, check the checkbox; false, uncheck the checkbox 



^ Reaper version 6.02SWS version 2.10.0.1Julian Sader's plugin version 0.972Lua version 5.3 SetRender_EmbedStretchMarkers

Functioncall:

boolean retval = ultraschall.SetRender_EmbedStretchMarkers(boolean state)

Description:
Sets the new state of the "Embed stretch markers/transient guides"-checkbox from the Render to File-dialog.

Returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 boolean state true, check the checkbox; false, uncheck the checkbox 


^ Reaper version 6.02SWS version 2.10.0.1Julian Sader's plugin version 0.998Lua version 5.3 Render_Loop

Functioncall:

integer count, array MediaItemStateChunkArray, array Filearray = ultraschall.Render_Loop(table RenderTable, string RenderFilename, boolean AutoIncrement, number FirstStart, number FirstEnd, number SecondStart, number SecondEnd, number FadeIn, number FadeOut, integer FadeInShape, integer FadeOutShape)

Description:
Renders a part of a project using 2 passes. Good for rendering loops, including wetloops.

The first pass will be set by FirstStart and FirstStart. This is the one for possible fx-buildups(reverbs, etc).
The second pass will be set by SecondStart and SecondEnd. This is the one, which "crops" the first-pass to its correct length.

You can also influence the second pass by setting fadein and fadeout, including the fadein/fadeout-shape.
That way, you can control, how the beginning and the end of the loop-item sounds.

SecondStart and SecondEnd are in relation of the original source project. SecondStart is from the beginning of the source-project, NOT FirstStart!

returns -1 in case of an error

Returnvalues:
 integer count the number of rendered files 
 array MediaItemStateChunkArray all MediaItemStateChunks within an array 
 array Filearray all rendered filenames including path 

Parameters:
 table RenderTable the RenderTable, which holds the render-settings for the second pass 
 string RenderFilename the filename with path of the final rendered file 
 boolean AutoIncrement true, autoincrement the filename(if it already exists); false, ask before rendering(if file already exists) 
 number FirstStart the beginning of the first-pass-render in seconds 
 number FirstEnd the end of the first-pass-render in seconds 
 number SecondStart the beginning of the second-pass-render in seconds 
 number SecondEnd the end of the second-pass-render in seconds 
 number FadeIn the length of the fade-in in the second-pass-render and therefore the final rendered file in seconds 
 number FadeOut the length of the fade-out in the second-pass-render and therefore the final rendered file in seconds 
 integer FadeInShape the shape of the fade-in-curve; fadein shape, 0..6, 0=linear 
 integer FadeOutShape the shape of the fade-out-curve; fadeout shape, 0..6, 0=linear 


^ Reaper version 6.02Lua version 5.3 GetAllThemeLayoutNames

Functioncall:

integer index, table ThemeLayoutNames= ultraschall.GetAllThemeLayoutNames()

Description:
returns all layout-names and values of the current theme

the table ThemeLayoutNames is of the following format:

ThemeLayoutNames[parameter_index]["layout section"] - the name of the layout-section of the parameter
ThemeLayoutNames[parameter_index]["value"] - the value of the parameter
ThemeLayoutNames[parameter_index]["description"] - the description of the parameter

returns nil in case of an error

Returnvalues:
 integer index the number of theme-layout-parameters available 
 table ThemeLayoutParameters a table with all theme-layout-parameter available in the current theme 



^ Reaper version 6.02Lua version 5.3 GetAllThemeLayoutParameters

Functioncall:

integer index, table ThemeLayoutParameters = ultraschall.GetAllThemeLayoutParameters()

Description:
returns all theme-layout-parameter attributes of the current theme

the table ThemeLayoutParameters is of the following format:

ThemeLayoutParameters[parameter_index]["name"] - the name of the parameter
ThemeLayoutParameters[parameter_index]["description"] - the description of the parameter
ThemeLayoutParameters[parameter_index]["value"] - the value of the parameter
ThemeLayoutParameters[parameter_index]["value default"] - the defult value of the parameter
ThemeLayoutParameters[parameter_index]["value min"] - the minimum value of the parameter
ThemeLayoutParameters[parameter_index]["value max"] - the maximum value of the parameter

returns nil in case of an error

Returnvalues:
 integer index the number of theme-layout-parameters available 
 table ThemeLayoutParameters a table with all theme-layout-parameter available in the current theme 



^ Reaper version 5.40Lua version 5.3 IsValidTrackString

Functioncall:

boolean valid, integer count, array individual_tracknumbers = ultraschall.IsValidTrackString(string trackstring)

Description:
checks, whether a given trackstring is a valid one. Will also return all valid numbers, from trackstring, that can be used as tracknumbers, as an array.

returns false in case of an error

Returnvalues:
 boolean valid true, is a valid trackstring; false, is not a valid trackstring 
 integer count the number of entries found in trackstring 
 array individual_tracknumbers an array that contains all available tracknumbers 

Parameters:
 string trackstring the trackstring to check, if it's a valid one 


^ Reaper version 5.40Lua version 5.3 IsValidTrackStateChunk

Functioncall:

boolean valid = ultraschall.IsValidTrackStateChunk(string TrackStateChunk)

Description:
returns, if a TrackStateChunk is a valid statechunk

returns false in case of an error

Returnvalues:
 boolean valid true, if the string is a valid statechunk; false, if not a valid statechunk 

Parameters:
 string TrackStateChunk a string to check, if it's a valid TrackStateChunk 


^ Reaper version 5.40Lua version 5.3 CreateTrackString

Functioncall:

string trackstring = ultraschall.CreateTrackString(integer firstnumber, integer lastnumber, optional integer step)

Description:
returns a string with the all numbers from firstnumber to lastnumber, separated by a ,
e.g. firstnumber=4, lastnumber=8 -> 4,5,6,7,8

returns nil in case of an error

Returnvalues:
 string trackstring a string with all tracknumbers, separated by a , 

Parameters:
 integer firstnumber the number, with which the string starts 
 integer lastnumber the number, with which the string ends 
 integer step how many numbers shall be skipped inbetween. Can lead to a different lastnumber, when step is not 1! nil or invalid value=1 


^ Reaper version 5.40Lua version 5.3 CreateTrackString_SelectedTracks

Functioncall:

string trackstring = ultraschall.CreateTrackString_SelectedTracks()

Description:
Creates a string with all numbers from selected tracks, separated by a ,

Returns an empty string, if no tracks are selected.

Returnvalues:
 string trackstring a string with the tracknumbers, separated by a string 



^ Reaper version 5.40Lua version 5.3 InsertTrack_TrackStateChunk

Functioncall:

boolean retval, MediaTrack MediaTrack = ultraschall.InsertTrack_TrackStateChunk(string trackstatechunk)

Description:
Creates a new track at the end of the project and sets it's trackstate, using the parameter trackstatechunk.
Returns true, if it succeeded and the newly created MediaTrack.

Returnvalues:
 boolean retval true, if creation succeeded, false if not 
 MediaTrack MediaTrack the newly created track, as MediaItem-trackobject 

Parameters:
 string trackstatechunk the rpp-xml-Trackstate-Chunk, as created by reaper.GetTrackStateChunk or GetProject_TrackStateChunk 


^ Reaper version 5.40Lua version 5.3 RemoveDuplicateTracksInTrackstring

Functioncall:

integer retval, string trackstring, array trackstringarray, integer number_of_entries = ultraschall.RemoveDuplicateTracksInTrackstring(string trackstring)

Description:
Sorts tracknumbers in trackstring and throws out duplicates. It also throws out entries, that are no numbers.
Returns the "cleared" trackstring as string and as array, as well as the number of entries.

Returns -1 in case of failure.

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 string trackstring the cleared trackstring, -1 in case of error 
 array trackstringarray the "cleared" trackstring as an array 
 integer number_of_entries the number of entries in the trackstring 

Parameters:
 string trackstring the tracknumbers, separated by a comma 


^ Reaper version 5.40Lua version 5.3 IsTrackObjectTracknumber

Functioncall:

boolean retval, integer tracknumber = ultraschall.IsTrackObjectTracknumber(MediaTrack track, integer tracknumber)

Description:
returns true, if MediaTrack has the tracknumber "tracknumber"; false if not.

Returns nil in case of error.

Returnvalues:
 boolean retval true if track is tracknumber, false if not 
 integer tracknumber the number of track, so in case of false, you know it's number 

Parameters:
 MediaTrack track the MediaTrack of which you want to check it's number 
 integer tracknumber the tracknumber you want to check for 


^ Reaper version 5.40Lua version 5.3 InverseTrackstring

Functioncall:

string inv_trackstring = ultraschall.InverseTrackstring(string trackstring, integer limit)

Description:
returns a newtrackstring with numbers, that are NOT in trackstring, in the range between 0 and limit

returns -1 in case of error

Returnvalues:
 string inv_trackstring the tracknumbers, that are NOT in the parameter trackstring, from 0 to limit 

Parameters:
 string trackstring the tracknumbers, separated with a , 
 integer limit the maximum tracknumber to include. Use reaper.CountTracks(0) function to use the maximum tracks in current project 


^ Reaper version 5.40Lua version 5.3 CountItemsInTrackStateChunk

Functioncall:

integer countitems = ultraschall.CountItemsInTrackStateChunk(string trackstatechunk)

Description:
returns the number of items in a trackstatechunk

returns -1 in case of error

Returnvalues:
 integer countitems number of items in the trackstatechunk 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 


^ Reaper version 5.40Lua version 5.3 GetItemStateChunkFromTrackStateChunk

Functioncall:

boolean retval, string mediaitemstatechunk = ultraschall.GetItemStateChunkFromTrackStateChunk(string trackstatechunk, integer idx)

Description:
Returns a mediaitemstatechunk of the idx'th item in trackstatechunk.

returns false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 
 string mediaitemstatechunk number of items in the trackstatechunk 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 integer idx the number of the item you want to have returned as mediaitemstatechunk 


^ Reaper version 5.40Lua version 5.3 AddMediaItemStateChunk_To_TrackStateChunk

Functioncall:

string trackstatechunk = ultraschall.AddMediaItemStateChunk_To_TrackStateChunk(string trackstatechunk, string mediaitemstatechunk)

Description:
Adds the item mediaitemstatechunk into trackstatechunk and returns this altered trackstatechunk.

returns nil in case of error

Returnvalues:
 string trackstatechunk the new trackstatechunk with mediaitemstatechunk added 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 string mediaitemstatechunk a mediaitemstatechunk, as returned by reaper's api function reaper.GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 RemoveMediaItem_TrackStateChunk

Functioncall:

boolean retval, string trackstatechunk = ultraschall.RemoveMediaItem_TrackStateChunk(string trackstatechunk, integer idx)

Description:
Deletes the idx'th item from trackstatechunk and returns this altered trackstatechunk.

returns false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 
 string trackstatechunk the new trackstatechunk with the idx'th item deleted 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 integer idx the number of the item you want to delete 


^ Reaper version 5.40Lua version 5.3 RemoveMediaItemByIGUID_TrackStateChunk

Functioncall:

boolean retval, string trackstatechunk = ultraschall.RemoveMediaItemByIGUID_TrackStateChunk(string trackstatechunk, string IGUID)

Description:
Deletes the item with the iguid IGUID from trackstatechunk and returns this altered trackstatechunk.

returns false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 
 string trackstatechunk the new trackstatechunk with the IGUID-item deleted 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 string IGUID the IGUID of the item you want to delete 


^ Reaper version 5.40Lua version 5.3 RemoveMediaItemByGUID_TrackStateChunk

Functioncall:

boolean retval, string trackstatechunk = ultraschall.RemoveMediaItemByGUID_TrackStateChunk(string trackstatechunk, string GUID)

Description:
Deletes the item with the guid GUID from trackstatechunk and returns this altered trackstatechunk.

returns false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 
 string trackstatechunk the new trackstatechunk with the GUID-item deleted 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 string GUID the GUID of the item you want to delete 


^ Reaper version 5.40Lua version 5.3 OnlyTracksInBothTrackstrings

Functioncall:

integer retval, string trackstring, array trackstringarray, integer number_of_entries = ultraschall.OnlyTracksInBothTrackstrings(string trackstring1, string trackstring2)

Description:
returns a new trackstring, that contains only the tracknumbers, that are in trackstring1 and trackstring2.

returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 string trackstring the cleared trackstring, -1 in case of error 
 array trackstringarray the "cleared" trackstring as an array 
 integer number_of_entries the number of entries in the trackstring 

Parameters:
 string trackstring1 a string with the tracknumbers, separated by commas 
 string trackstring2 a string with the tracknumbers, separated by commas 


^ Reaper version 5.40Lua version 5.3 OnlyTracksInOneTrackstring

Functioncall:

integer retval, string trackstring, array trackstringarray, integer number_of_entries = ultraschall.OnlyTracksInOneTrackstring(string trackstring1, string trackstring2)

Description:
returns a new trackstring, that contains only the tracknumbers, that are in either trackstring1 or trackstring2, NOT in both!

returns -1 in case of error

Returnvalues:
 integer retval -1 in case of error, 1 in case of success 
 string trackstring the cleared trackstring, -1 in case of error 
 array trackstringarray the "cleared" trackstring as an array 
 integer number_of_entries the number of entries in the trackstring 

Parameters:
 string trackstring1 a string with the tracknumbers, separated by commas 
 string trackstring2 a string with the tracknumbers, separated by commas 


^ Reaper version 5.40Lua version 5.3 SetMediaItemStateChunk_in_TrackStateChunk

Functioncall:

boolean retval, string trackstatechunk = ultraschall.SetMediaItemStateChunk_in_TrackStateChunk(string trackstatechunk, integer idx, string mediaitemstatechunk)

Description:
Overwrites the idx'th item from trackstatechunk with mediaitemstatechunk and returns this altered trackstatechunk.

returns false in case of error

Returnvalues:
 boolean retval true in case of success, false in case of error 
 string trackstatechunk the new trackstatechunk with the idx'th item replaced 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by reaper's api function reaper.GetTrackStateChunk 
 integer idx the number of the item you want to delete 
 string mediaitemstatechunk a mediaitemstatechunk, as returned by reaper's api function reaper.GetItemStateChunk 


^ Reaper version 5.40Lua version 5.3 GetAllMediaItemsFromTrackStateChunk

Functioncall:

integer count, array MediaItemStateChunkArray = ultraschall.GetAllMediaItemsFromTrackStateChunk(string trackstatechunk)

Description:
Returns a MediaItemStateChunkArray with all items in trackstatechunk.

returns -1 in case of error

Returnvalues:
 integer count number of MediaItemStateChunks in the returned array. -1 in case of error 
 array MediaItemStateChunkArray an array with all MediaItemStateChunks from trackstatechunk 

Parameters:
 string trackstatechunk a trackstatechunk, as returned by functions like reaper.GetTrackStateChunk 


^ Reaper version 5.40Lua version 5.3 CreateTrackString_AllTracks

Functioncall:

string trackstring = ultraschall.CreateTrackString_AllTracks()

Description:
Returns a trackstring with all tracknumbers from the current project.

Returns an empty string, if no track is available.

Returnvalues:
 string trackstring a string with all tracknumbers, separated by commas. 



^ Reaper version 5.40Lua version 5.3 GetTrackLength

Functioncall:

integer length = ultraschall.GetTrackLength(integer Tracknumber)

Description:
Returns the length of a track, that means, the end of the last item in track Tracknumber.
Will return -1, in case of error

Returnvalues:
 integer length the length of the track in seconds 

Parameters:
 integer Tracknumber the tracknumber, whose length you want to know 


^ Reaper version 5.40Lua version 5.3 GetLengthOfAllMediaItems_Track

Functioncall:

integer length = ultraschall.GetLengthOfAllMediaItems_Track(integer Tracknumber)

Description:
Returns the length of all MediaItems in track, combined.
Will return -1, in case of error

Returnvalues:
 integer length the length of all MediaItems in the track combined, in seconds 

Parameters:
 integer Tracknumber the tracknumber, whose length you want to know; 1, track 1; 2, track 2, etc 


^ Reaper version 5.77Lua version 5.3 ApplyActionToTrack

Functioncall:

boolean retval = ultraschall.ApplyActionToTrack(string trackstring, string/number actioncommandid)

Description:
Applies action to the tracks, given by trackstring
The action given must support applying itself to selected tracks.

Returns false in case of an error

Returnvalues:
 boolean retval true, running action was successful; false, running the action was unsuccessful 

Parameters:
 string trackstring a string with all tracknumbers, separated by a comma; 1 for the first track, 2 for the second 


^ Reaper version 5.77Lua version 5.3 InsertTrackAtIndex

Functioncall:

string trackarray, integer new_track_count, array trackarray_newtracks = ultraschall.InsertTrackAtIndex(integer index, integer number_of_tracks, boolean wantdefaults)

Description:
Inserts one or more tracks at index.

Returns nil in case of an error

Returnvalues:
 string trackstring a trackstring with all newly created tracknumbers 
 integer new_track_count the number of newly created tracks 
 array trackarray_newtracks an array with the MediaTrack-objects of all newly created tracks 

Parameters:
 integer index the index, at which to include the new tracks; 0, for including before the first track 
 integer number_of_tracks the number of tracks that you want to create; 0 for including before track 1; number of tracks+1, include new tracks after last track 
 boolean wantdefaults true, set the tracks with default settings/fx/etc; false, create new track without any defaults 


^ Reaper version 5.92Lua version 5.3 MoveTracks

Functioncall:

boolean retval = ultraschall.MoveTracks(string trackstring, integer targetindex, integer makepreviousfolder)

Description:
Moves tracks in trackstring to position targetindex. You can also set, if the tracks shall become folders.
Multiple tracks in trackstring will be put together, so track 2, 4, 6 would become 1, 2, 3, when moved above the first track!

Returns false in case of an error

Returnvalues:
 boolean retval true, moving was successful; false, moving wasn't successful 

Parameters:
 string trackstring a string with all tracknumbers of the tracks you want to move, separated by commas 
 integer targetindex the index, to which to move the tracks; 0, move tracks before track 1; number of tracks+1, move after the last track 
 integer makepreviousfolder make tracks a folder or not
0, for normal,
1, as child of track preceding track specified by makepreviousfolder
2, if track preceding track specified by makepreviousfolder is last track in folder, extend folder 


^ Reaper version 5.941Lua version 5.3 CreateTrackString_ArmedTracks

Functioncall:

string trackstring = ultraschall.CreateTrackString_ArmedTracks()

Description:
Gets a trackstring with tracknumbers of all armed tracks in it.

Returns "" if no track is armed.

Returnvalues:
 string trackstring a trackstring with the tracknumbers of all armed tracks as comma separated csv-string, eg: "1,3,4,7" 



^ Reaper version 5.941Lua version 5.3 CreateTrackString_UnarmedTracks

Functioncall:

string trackstring = ultraschall.CreateTrackString_UnarmedTracks()

Description:
Gets a trackstring with tracknumbers of all unarmed tracks in it.

Returns "" if all tracks are armed.

Returnvalues:
 string trackstring a trackstring with the tracknumbers of all unarmed tracks as comma separated csv-string, eg: "1,3,4,7" 



^ Reaper version 5.95SWS version 2.9.7Lua version 5.3 CreateTrackStringByGUID

Functioncall:

string trackstring = ultraschall.CreateTrackStringByGUID(string guid_csv_string)

Description:
returns a trackstring with all tracks, as given by the GUIDs in the comma-separated-csv-string guid_csv_string.

returns "" in case of an error, like no track available or an invalid string

Returnvalues:
 string trackstring a string with all the tracknumbers of the tracks given as GUIDs in guid_csv_string 

Parameters:
 string guid_csv_string a comma-separated csv-string, that includes all GUIDs of all track to be included in the trackstring. 


^ Reaper version 5.95Lua version 5.3 CreateTrackStringByTracknames

Functioncall:

string trackstring = ultraschall.CreateTrackStringByTracknames(string tracknames_csv_string)

Description:
returns a trackstring with all tracks, as given by the tracknames in the newline(!)-separated-csv-string guid_csv_string.

returns "" in case of an error, like no track available or an invalid string

Returnvalues:
 string trackstring a string with all the tracknumbers of the tracks given as tracknames in tracknames_csv_string 

Parameters:
 string tracknames_csv_string a newline(!)-separated csv-string, that includes all tracknames of all track to be included in the trackstring. Tracknames are case sensitive! 


^ Reaper version 5.95Lua version 5.3 CreateTrackStringByMediaTracks

Functioncall:

string trackstring = ultraschall.CreateTrackStringByMediaTracks(array MediaTrackArray)

Description:
returns a trackstring with all tracks, as given in the array MediaTrackArray

returns "" in case of an error, like no track available or an invalid string

Returnvalues:
 string trackstring a string with all the tracknumbers of the MediaTrack-objects given in parameter MediaTrackArray 

Parameters:
 array MediaTrackArray an array, that includes all MediaTrack-objects to be included in the trackstring; a nil-entry is seen as the end of the array 


^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 GetTracknumberByGuid

Functioncall:

integer tracknumber, MediaTrack tr = ultraschall.GetTracknumberByGuid(string guid)

Description:
returns the tracknumber and track of a guid. The track must be in the currently active project!

Supports the returned guids by reaper.BR_GetMediaTrackGUID and reaper.GetTrackGUID.

returns -1 in case of an error

Returnvalues:
 integer tracknumber the number of the track; 0, for master track; 1, for track 1; 2, for track 2, etc. -1, in case of an error 
 MediaTrack tr the MediaTrack-object of the requested track; nil, if no track is found 

Parameters:
 string gui the guid of the track, that you want to request 


^ Reaper version 5.975Lua version 5.3 DeleteTracks_TrackString

Functioncall:

boolean retval = ultraschall.DeleteTracks_TrackString(string trackstring)

Description:
deletes all tracks in trackstring

Returns false in case of an error

Returnvalues:
 boolean retval true, setting it was successful; false, setting it was unsuccessful 

Parameters:
 string trackstring a string with all tracknumbers, separated by commas 


^ Reaper version 5.979Lua version 5.3 AnyTrackMute

Functioncall:

boolean retval = ultraschall.AnyTrackMute(optional boolean master)

Description:
returns true, if any track is muted, otherwise returns false.

Returnvalues:
 boolean retval true, if any track is muted; false, if not 

Parameters:
 optional boolean master true, include the master-track as well; false, don't include master-track 


^ Reaper version 5.975Lua version 5.3 AnyTrackRecarmed

Functioncall:

boolean retval = ultraschall.AnyTrackRecarmed()

Description:
Returns true, if any track is recarmed.

Returnvalues:
 boolean retval true, at least one track is recarmed; false, no track is recarmed 



^ Reaper version 5.975Lua version 5.3 AnyTrackPhased

Functioncall:

boolean retval = ultraschall.AnyTrackPhased()

Description:
Returns true, if any track has phase-invert activated.

Returnvalues:
 boolean retval true, at least one track has an activated phase-invert; false, no track is phase-inverted 



^ Reaper version 5.975Lua version 5.3 AnyTrackRecMonitored

Functioncall:

boolean retval = ultraschall.AnyTrackRecMonitored()

Description:
Returns true, if any track has monitoring of recinput activated.

Returnvalues:
 boolean retval true, at least one track has an activated rec-monitoring; false, no track is rec-monitored 



^ Reaper version 5.975Lua version 5.3 AnyTrackHiddenTCP

Functioncall:

boolean retval = ultraschall.AnyTrackHiddenTCP(optional boolean master)

Description:
Returns true, if any track is hidden in Track Control Panel.

Returnvalues:
 boolean retval true, at least one track is hidden in TCP; false, no track is hidden 

Parameters:
 optional boolean master true, include the master-track; false, don't include the master-track 


^ Reaper version 5.975SWS version 2.9.7Lua version 5.3 AnyTrackHiddenMCP

Functioncall:

boolean retval = ultraschall.AnyTrackHiddenMCP(optional boolean master)

Description:
Returns true, if any track is hidden in Mixer Control Panel.

Returnvalues:
 boolean retval true, at least one track is hidden in MCP; false, no track is hidden 

Parameters:
 optional boolean master true, include the master-track; false, don't include the master-track 


^ Reaper version 5.975Lua version 5.3 AnyTrackFreeItemPositioningMode

Functioncall:

boolean retval = ultraschall.AnyTrackFreeItemPositioningMode()

Description:
Returns true, if any track has free item positioning mode(freemode) activated.

Returnvalues:
 boolean retval true, at least one track has freemode activated; false, no track has freemode-activated 



^ Reaper version 5.975Lua version 5.3 AnyTrackFXBypass

Functioncall:

boolean retval = ultraschall.AnyTrackFXBypass(optional boolean master)

Description:
Returns true, if any track has fx-bypass activated.

Returnvalues:
 boolean retval true, at least one track has fx bypass activated; false, no track has fx-bypass activated 

Parameters:
 optional boolean master true, include the master-track; false, don't include the master-track 


^ Reaper version 5.40Lua version 5.3 GetTrackHWOut

Functioncall:

integer outputchannel, integer post_pre_fader, number volume, number pan, integer mute, integer phase, integer source, number pan_law, integer automationmode = ultraschall.GetTrackHWOut(integer tracknumber, integer idx, optional string TrackStateChunk)

Description:
Returns the settings of the HWOUT-HW-destination, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber. There can be more than one, which you can choose with idx.

It's the entry HWOUT

returns -1 in case of failure

Returnvalues:
 integer outputchannel outputchannel, with 1024+x the individual hw-outputchannels, 0,2,4,etc stereo output channels 
 integer post_pre_fader 0-post-fader(post pan), 1-preFX, 3-pre-fader(Post-FX), as set in the Destination "Controls for Track"-dialogue 
 number volume volume, as set in the Destination "Controls for Track"-dialogue; see [MKVOL2DB](#MKVOL2DB) to convert it into a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue 
 integer mute mute, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer phase Phase, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer source source, as set in the Destination "Controls for Track"-dialogue
                                    -1 - None
                                     0 - Stereo Source 1/2
                                     4 - Stereo Source 5/6
                                    12 - New Channels On Sending Track Stereo Source Channel 13/14
                                    1024 - Mono Source 1
                                    1029 - Mono Source 6
                                    1030 - New Channels On Sending Track Mono Source Channel 7
                                    1032 - New Channels On Sending Track Mono Source Channel 9
                                    2048 - MultiChannel 4 Channels 1-4
                                    2050 - Multichannel 4 Channels 3-6
                                    3072 - Multichannel 6 Channels 1-6 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer automationmode automation mode, as set in the Destination "Controls for Track"-dialogue
                                    -1 - Track Automation Mode
                                     0 - Trim/Read
                                     1 - Read
                                     2 - Touch
                                     3 - Write
                                     4 - Latch
                                     5 - Latch Preview 

Parameters:
 integer tracknumber the number of the track, whose HWOut you want, 0 for Master Track 
 integer idx the id-number of the HWOut, beginning with 1 for the first HWOut-Settings 
 optional string TrackStateChunk a TrackStateChunk, whose HWOUT-entries you want to get 


^ Reaper version 5.40Lua version 5.3 GetTrackAUXSendReceives

Functioncall:

integer recv_tracknumber, integer post_pre_fader, number volume, number pan, integer mute, integer mono_stereo, integer phase, integer chan_src, integer snd_chan, number pan_law, integer midichanflag, integer automation = ultraschall.GetTrackAUXSendReceives(integer tracknumber, integer idx, optional string TrackStateChunk)

Description:
Returns the settings of the Send/Receive, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber. There can be more than one, which you can choose with idx.
Remember, if you want to get the sends of a track, you need to check the recv_tracknumber-returnvalues of the OTHER(!) tracks, as you can only get the receives. With the receives checked, you know, which track sends.

It's the entry AUXRECV

returns -1 in case of failure

Returnvalues:
 integer recv_tracknumber Tracknumber, from where to receive the audio from 
 integer post_pre_fader 0-PostFader, 1-PreFX, 3-Pre-Fader 
 number volume Volume; see [MKVOL2DB](#MKVOL2DB) to convert it into a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue; negative=left, positive=right, 0=center 
 integer mute Mute this send(1) or not(0) 
 integer mono_stereo Mono(1), Stereo(0) 
 integer phase Phase of this send on(1) or off(0) 
 integer chan_src Audio-Channel Source
                                        -1 - None
                                        0 - Stereo Source 1/2
                                        1 - Stereo Source 2/3
                                        2 - Stereo Source 3/4
                                        1024 - Mono Source 1
                                        1025 - Mono Source 2
                                        2048 - Multichannel Source 4 Channels 1-4 
 integer snd_chan send to channel
                                        0 - Stereo 1/2
                                        1 - Stereo 2/3
                                        2 - Stereo 3/4
                                        ...
                                        1024 - Mono Channel 1
                                        1025 - Mono Channel 2 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer midichanflag 0 - All Midi Tracks
                                        1 to 16 - Midi Channel 1 to 16
                                        32 - send to Midi Channel 1
                                        64 - send to MIDI Channel 2
                                        96 - send to MIDI Channel 3
                                        ...
                                        512 - send to MIDI Channel 16
                                        4194304 - send to MIDI-Bus B1
                                        send to MIDI-Bus B1 + send to MIDI Channel nr = MIDIBus B1 1/nr:
                                        16384 - BusB1
                                        BusB1+1 to 16 - BusB1-Channel 1 to 16
                                        32768 - BusB2
                                        BusB2+1 to 16 - BusB2-Channel 1 to 16
                                        49152 - BusB3
                                        ...
                                        BusB3+1 to 16 - BusB3-Channel 1 to 16
                                        262144 - BusB16
                                        BusB16+1 to 16 - BusB16-Channel 1 to 16

                                        1024 - Add that value to switch MIDI On
                                        4177951 - MIDI - None 
 integer automation Automation Mode
                                       -1 - Track Automation Mode
                                        0 - Trim/Read
                                        1 - Read
                                        2 - Touch
                                        3 - Write
                                        4 - Latch
                                        5 - Latch Preview 

Parameters:
 integer tracknumber the number of the track, whose Send/Receive you want 
 integer idx the id-number of the Send/Receive, beginning with 1 for the first Send/Receive-Settings 
 optional string TrackStateChunk a TrackStateChunk, whose AUXRECV-entries you want to get 


^ Reaper version 5.40Lua version 5.3 CountTrackHWOuts

Functioncall:

integer count_HWOuts = ultraschall.CountTrackHWOuts(integer tracknumber, optional string TrackStateChunk)

Description:
Counts and returns the number of existing HWOUT-HW-destination, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber.
returns -1 in case of failure

Returnvalues:
 integer count_HWOuts the number of HWOuts in tracknumber 

Parameters:
 integer tracknumber the number of the track, whose HWOUTs you want to count. 0 for Master Track; -1, to use optional parameter TrackStateChunk instead 
 optional string TrackStateChunk the TrackStateChunk, whose hwouts you want to count; only when tracknumber=-1 


^ Reaper version 5.40Lua version 5.3 CountTrackAUXSendReceives

Functioncall:

integer count_SendReceives = ultraschall.CountTrackAUXSendReceives(integer tracknumber, optional string TrackStateChunk)

Description:
Counts and returns the number of existing Send/Receives/Routing-settings, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber.
returns -1 in case of failure

Returnvalues:
 integer count_SendReceives the number of Send/Receives-Settings in tracknumber 

Parameters:
 integer tracknumber the number of the track, whose Send/Receive you want; -1, if you want to pass a TrackStateChunk instead 
 optional string TrackStateChunk the TrackStateChunk, whose hwouts you want to count; only when tracknumber=-1 


^ Reaper version 5.40Lua version 5.3 AddTrackHWOut

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.AddTrackHWOut(integer tracknumber, integer outputchannel, integer post_pre_fader, number volume, number pan, integer mute, integer phase, integer source, number pan_law, integer automationmode, optional parameter TrackStateChunk)

Description:
Adds a setting of the HWOUT-HW-destination, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber.
This function does not check the parameters for plausability, so check your settings twice!

returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 optional parameter TrackStateChunk an altered TrackStateChunk into which you added the new hwout-setting 

Parameters:
 integer tracknumber the number of the track, whose HWOut you want. 0 for Master Track; -1, use parameter TrackStateChunk instead 
 integer outputchannel outputchannel, with 1024+x the individual hw-outputchannels, 0,2,4,etc stereo output channels 
 integer post_pre_fader 0-post-fader(post pan), 1-preFX, 3-pre-fader(Post-FX), as set in the Destination "Controls for Track"-dialogue 
 number volume volume, as set in the Destination "Controls for Track"-dialogue; see [DB2MKVOL](#DB2MKVOL) to convert from a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue 
 integer mute mute, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer phase Phase, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer source source, as set in the Destination "Controls for Track"-dialogue
                                    -1 - None
                                     0 - Stereo Source 1/2
                                     4 - Stereo Source 5/6
                                    12 - New Channels On Sending Track Stereo Source Channel 13/14
                                    1024 - Mono Source 1
                                    1029 - Mono Source 6
                                    1030 - New Channels On Sending Track Mono Source Channel 7
                                    1032 - New Channels On Sending Track Mono Source Channel 9
                                    2048 - MultiChannel 4 Channels 1-4
                                    2050 - Multichannel 4 Channels 3-6
                                    3072 - Multichannel 6 Channels 1-6 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer automationmode automation mode, as set in the Destination "Controls for Track"-dialogue
                                    -1 - Track Automation Mode
                                     0 - Trim/Read
                                     1 - Read
                                     2 - Touch
                                     3 - Write
                                     4 - Latch
                                     5 - Latch Preview 
 optional parameter TrackStateChunk a TrackStateChunk into which to add the hwout-setting; only available, when tracknumber=-1 


^ Reaper version 5.975Lua version 5.3 AddTrackAUXSendReceives

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.AddTrackAUXSendReceives(integer tracknumber, integer recv_tracknumber, integer post_pre_fader, number volume, number pan, integer mute, integer mono_stereo, integer phase, integer chan_src, integer snd_chan, number pan_law, integer midichanflag, integer automation, optional string TrackStateChunk)

Description:
Adds a setting of Send/Receive, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber. There can be more than one.
Remember, if you want to set the sends of a track, you need to add it to the track, that shall receive, not the track that sends! Set recv_tracknumber in the track that receives with the tracknumber that sends, and you've set it successfully.

Due to the complexity of send/receive-settings, this function does not check, whether the parameters are plausible. So check twice, whether the added sends/receives appear, as they might not appear!
returns false in case of failure

Returnvalues:
 boolean retval true if it worked, false if it didn't. 
 optional parameter TrackStateChunk an altered TrackStateChunk into which you added a new receive/routing; only available, when tracknumber=-1 

Parameters:
 integer tracknumber the number of the track, whose Send/Receive you want; -1, if you want to use the parameter TrackStateChunk 
 integer recv_tracknumber Tracknumber, from where to receive the audio from 
 integer post_pre_fader 0-PostFader, 1-PreFX, 3-Pre-Fader 
 number volume Volume, see [DB2MKVOL](#DB2MKVOL) to convert from a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue; negative=left, positive=right, 0=center 
 integer mute Mute this send(1) or not(0) 
 integer mono_stereo Mono(1), Stereo(0) 
 integer phase Phase of this send on(1) or off(0) 
 integer chan_src Audio-Channel Source
                                       -1 - None
                                        0 - Stereo Source 1/2
                                        1 - Stereo Source 2/3
                                        2 - Stereo Source 3/4
                                        1024 - Mono Source 1
                                        1025 - Mono Source 2
                                        2048 - Multichannel Source 4 Channels 1-4 
 integer snd_chan send to channel
                                        0 - Stereo 1/2
                                        1 - Stereo 2/3
                                        2 - Stereo 3/4
                                        ...
                                        1024 - Mono Channel 1
                                        1025 - Mono Channel 2 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer midichanflag 0 - All Midi Tracks
                                        1 to 16 - Midi Channel 1 to 16
                                        32 - send to Midi Channel 1
                                        64 - send to MIDI Channel 2
                                        96 - send to MIDI Channel 3
                                        ...
                                        512 - send to MIDI Channel 16    
                                        4194304 - send to MIDI-Bus B1
                                        send to MIDI-Bus B1 + send to MIDI Channel nr = MIDIBus B1 1/nr:
                                        16384 - BusB1
                                        BusB1+1 to 16 - BusB1-Channel 1 to 16
                                        32768 - BusB2
                                        BusB2+1 to 16 - BusB2-Channel 1 to 16
                                        49152 - BusB3
                                        ...
                                        BusB3+1 to 16 - BusB3-Channel 1 to 16
                                        262144 - BusB16
                                        BusB16+1 to 16 - BusB16-Channel 1 to 16

                                        1024 - Add that value to switch MIDI On
                                        4177951 - MIDI - None 
 integer automation Automation Mode
                                       -1 - Track Automation Mode
                                        0 - Trim/Read
                                        1 - Read
                                        2 - Touch
                                        3 - Write
                                        4 - Latch
                                        5 - Latch Preview 
 optional string TrackStateChunk the TrackStateChunk, to which you want to add a new receive-routing 


^ Reaper version 5.965Lua version 5.3 DeleteTrackHWOut

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.DeleteTrackHWOut(integer tracknumber, integer idx, optional string TrackStateChunk)

Description:
Deletes the idxth HWOut-Setting of tracknumber.
returns false in case of failure

Returnvalues:
 boolean retval true if it worked, false if it didn't. 
 optional string TrackStateChunk the altered TrackStateChunk, from which you deleted HWOut-entries; only available, when tracknumber=-1 

Parameters:
 integer tracknumber the number of the track, whose HWOUTs you want to delete. 0 for Master Track. -1, if you want to use the parameter TrackStateChunk instead 
 integer idx the number of the HWOut-setting, that you want to delete; -1, to delete all HWOuts from this track 
 optional string TrackStateChunk the TrackStateChunk, from which you want to delete HWOut-entries 


^ Reaper version 5.965Lua version 5.3 DeleteTrackAUXSendReceives

Functioncall:

boolean retval = ultraschall.DeleteTrackAUXSendReceives(integer tracknumber, integer idx, optional string TrackStateChunk)

Description:
Deletes the idxth Send/Receive-Setting of tracknumber.
returns false in case of failure

Returnvalues:
 boolean retval true if it worked, false if it didn't. 
 optional string TrackStateChunk an altered TrackStateChunk, from which you deleted a Send/Receive-entrie; only available, when tracknumber=-1 

Parameters:
 integer tracknumber the number of the track, whose Send/Receive you want; -1, if you want to use the parameter TrackStateChunk 
 integer idx the number of the send/receive-setting, that you want to delete; -1, deletes all AuxReceives on this track 
 optional string TrackStateChunk a TrackStateChunk, from which you want to delete Send/Receive-entries; only available, when tracknumber=-1 


^ Reaper version 5.40Lua version 5.3 SetTrackHWOut

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.SetTrackHWOut(integer tracknumber, integer idx, integer outputchannel, integer post_pre_fader, number volume, number pan, integer mute, integer phase, integer source, number pan_law, integer automationmode, optional string TrackStateChunk)

Description:
Sets a setting of the HWOUT-HW-destination, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber. There can be more than one, so choose the one you want to change with idx.
To retain old-settings, use nil with the accompanying parameters.
This function does not check the parameters for plausability, so check your settings twice, or the HWOut-setting might disappear with faulty parameters!

returns false in case of failure

Returnvalues:
 boolean retval true, if it worked; false if it didn't 
 optional string TrackStateChunk an altered TrackStateChunk, in which you've set a send/receive-setting; only available when track=-1 

Parameters:
 integer tracknumber the number of the track, whose HWOut you want. 0 for Master Track 
 integer idx the number of the HWOut-setting, you want to change 
 integer outputchannel outputchannel, with 1024+x the individual hw-outputchannels, 0,2,4,etc stereo output channels 
 integer post_pre_fader 0-post-fader(post pan), 1-preFX, 3-pre-fader(Post-FX), as set in the Destination "Controls for Track"-dialogue 
 number volume volume, as set in the Destination "Controls for Track"-dialogue; see [DB2MKVOL](#DB2MKVOL) to convert from a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue 
 integer mute mute, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer phase Phase, 1-on, 0-off, as set in the Destination "Controls for Track"-dialogue 
 integer source source, as set in the Destination "Controls for Track"-dialogue
                                    -1 - None
                                     0 - Stereo Source 1/2
                                     4 - Stereo Source 5/6
                                    12 - New Channels On Sending Track Stereo Source Channel 13/14
                                    1024 - Mono Source 1
                                    1029 - Mono Source 6
                                    1030 - New Channels On Sending Track Mono Source Channel 7
                                    1032 - New Channels On Sending Track Mono Source Channel 9
                                    2048 - MultiChannel 4 Channels 1-4
                                    2050 - Multichannel 4 Channels 3-6
                                    3072 - Multichannel 6 Channels 1-6 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer automationmode automation mode, as set in the Destination "Controls for Track"-dialogue
                                    -1 - Track Automation Mode
                                     0 - Trim/Read
                                     1 - Read
                                     2 - Touch
                                     3 - Write
                                     4 - Latch
                                     5 - Latch Preview 
 optional string TrackStateChunk sets an HWOUT-entry in a TrackStateChunk 


^ Reaper version 5.95Lua version 5.3 SetTrackAUXSendReceives

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.SetTrackAUXSendReceives(integer tracknumber, integer idx, integer recv_tracknumber, integer post_pre_fader, number volume, number pan, integer mute, integer mono_stereo, integer phase, integer chan_src, integer snd_chan, number pan_law, integer midichanflag, integer automation, optional string TrackStateChunk)

Description:
Alters a setting of Send/Receive, as set in the routing-matrix, as well as in the Destination "Controls for Track"-dialogue, of tracknumber. There can be more than one, so choose the right one with idx.
You can keep the old-setting by using nil as a parametervalue.
Remember, if you want to set the sends of a track, you need to add it to the track, that shall receive, not the track that sends! Set recv_tracknumber in the track that receives with the tracknumber that sends, and you've set it successfully.

Due to the complexity of send/receive-settings, this function does not check, whether the parameters are plausible. So check twice, whether the change sends/receives still appear, as they might disappear with faulty settings!
returns false in case of failure

Returnvalues:
 boolean retval true if it worked, false if it didn't. 
 optional string TrackStateChunk an altered TrackStateChunk, whose AUXRECV-entries you've altered 

Parameters:
 integer tracknumber the number of the track, whose Send/Receive you want 
 integer idx the send/receive-setting, you want to set 
 integer recv_tracknumber Tracknumber, from where to receive the audio from 
 integer post_pre_fader 0-PostFader, 1-PreFX, 3-Pre-Fader 
 number volume Volume; see [DB2MKVOL](#DB2MKVOL) to convert from a dB-value 
 number pan pan, as set in the Destination "Controls for Track"-dialogue; negative=left, positive=right, 0=center 
 integer mute Mute this send(1) or not(0) 
 integer mono_stereo Mono(1), Stereo(0) 
 integer phase Phase of this send on(1) or off(0) 
 integer chan_src Audio-Channel Source
                                        -1 - None
                                        0 - Stereo Source 1/2
                                        1 - Stereo Source 2/3
                                        2 - Stereo Source 3/4
                                        1024 - Mono Source 1
                                        1025 - Mono Source 2
                                        2048 - Multichannel Source 4 Channels 1-4 
 integer snd_chan send to channel
                                        0 - Stereo 1/2
                                        1 - Stereo 2/3
                                        2 - Stereo 3/4
                                        ...
                                        1024 - Mono Channel 1
                                        1025 - Mono Channel 2 
 number pan_law pan-law, as set in the dialog that opens, when you right-click on the pan-slider in the routing-settings-dialog; default is -1 for +0.0dB 
 integer midichanflag 0 - All Midi Tracks
                                        1 to 16 - Midi Channel 1 to 16
                                        32 - send to Midi Channel 1
                                        64 - send to MIDI Channel 2
                                        96 - send to MIDI Channel 3
                                        ...
                                        512 - send to MIDI Channel 16
                                        4194304 - send to MIDI-Bus B1
                                        send to MIDI-Bus B1 + send to MIDI Channel nr = MIDIBus B1 1/nr:
                                        16384 - BusB1
                                        BusB1+1 to 16 - BusB1-Channel 1 to 16
                                        32768 - BusB2
                                        BusB2+1 to 16 - BusB2-Channel 1 to 16
                                        49152 - BusB3
                                        ...
                                        BusB3+1 to 16 - BusB3-Channel 1 to 16
                                        262144 - BusB16
                                        BusB16+1 to 16 - BusB16-Channel 1 to 16

                                        1024 - Add that value to switch MIDI On
                                        4177951 - MIDI - None 
 integer automation Automation Mode
                                       -1 - Track Automation Mode
                                        0 - Trim/Read
                                        1 - Read
                                        2 - Touch
                                        3 - Write
                                        4 - Latch
                                        5 - Latch Preview 
 optional string TrackStateChunk a TrackStateChunk, whose AUXRECV-entries you want to set 


^ Reaper version 5.965Lua version 5.3 ClearRoutingMatrix

Functioncall:

boolean retval = ultraschall.ClearRoutingMatrix(boolean ClearHWOuts, boolean ClearAuxRecvs, boolean ClearTrackMasterSends, boolean ClearMasterTrack, boolean undo)

Description:
Clears all routing-matrix-settings or optionally part of them

returns false in case of an error

Returnvalues:
 boolean retval true, clearing was successful; false, clearing was unsuccessful 

Parameters:
 boolean ClearHWOuts nil or true, clear all HWOuts; false, keep the HWOuts intact 
 boolean ClearAuxRecvs nil or true, clear all Send/Receive-settings; false, keep the Send/Receive-settings intact 
 boolean ClearTrackMasterSends nil or true, clear all send to master-checkboxes; false, keep them intact 
 boolean ClearMasterTrack nil or true, include the Mastertrack as well; false, don't include it 
 boolean undo true, set undo point; false or nil, don't set undo point 


^ Reaper version 5.965Lua version 5.3 ClearRoutingMatrix

Functioncall:

boolean retval = ultraschall.ClearRoutingMatrix(boolean ClearHWOuts, boolean ClearAuxRecvs, boolean ClearTrackMasterSends, boolean ClearMasterTrack, boolean undo)

Description:
Clears all routing-matrix-settings or optionally part of them

Returnvalues:
 boolean retval true, clearing was successful; false, clearing was unsuccessful 

Parameters:
 boolean ClearHWOuts nil or true, clear all HWOuts; false, keep the HWOuts intact 
 boolean ClearAuxRecvs nil or true, clear all Send/Receive-settings; false, keep the Send/Receive-settings intact 
 boolean ClearTrackMasterSends nil or true, clear all send to master-checkboxes; false, keep them intact 
 boolean ClearMasterTrack nil or true, include the Mastertrack as well; false, don't include it 
 boolean undo true, set undo point; false or nil, don't set undo point 


^ Reaper version 5.965Lua version 5.3 GetAllHWOuts

Functioncall:

table AllHWOuts, integer number_of_tracks = ultraschall.GetAllHWOuts()

Description:
returns a table with all HWOut-settings of all tracks, including master-track(track index: 0)

returned table is of structure:
table["HWOuts"]=true - signals, this is a HWOuts-table; don't change that!
table["number_of_tracks"] - the number of tracks in this table, from track 0(master) to track n
table[tracknumber]["HWOut_count"] - the number of HWOuts of tracknumber, beginning with 1
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
table[tracknumber][HWOutIndex]["outputchannel"] - the number of outputchannels of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["post_pre_fader"] - the setting of post-pre-fader of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["volume"] - the volume of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan"] - the panning of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["mute"] - the mute-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["phase"] - the phase-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["source"] - the source/input of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan_law"] - pan-law, default is -1
table[tracknumber][HWOutIndex]["automationmode"] - the automation-mode of this HWOutIndex of tracknumber

See GetTrackHWOut for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllHWOuts a table with all HWOuts of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.965Lua version 5.3 ApplyAllHWOuts

Functioncall:

boolean retval = ultraschall.ApplyAllHWOuts(table AllHWOuts, optional integer option)

Description:
Takes a table, as returned by GetAllHWOuts with all HWOut-settings of all tracks and applies it to all tracks.

When you set option to 2, the individual entries will be applied to the tracks, that have the guids stored in table
table[tracknumber]["TrackID"], otherwise, this function will apply it to track0 to trackn, which is the same as table["number_of_tracks"].
That way, you can create RoutingSnapshots, that will stay in the right tracks, even if they are ordered differently or when tracks have been added/deleted.

This influences the MasterTrack as well!

expected table is of structure:

table["HWOuts"]=true - signals, this is a HWOuts-table; don't change that!
table["number_of_tracks"] - the number of tracks in this table, from track 0(master) to track n
table[tracknumber]["HWOut_count"] - the number of HWOuts of tracknumber, beginning with 1
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
table[tracknumber][HWOutIndex]["outputchannel"] - the number of outputchannels of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["post_pre_fader"] - the setting of post-pre-fader of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["volume"] - the volume of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan"] - the panning of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["mute"] - the mute-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["phase"] - the phase-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["source"] - the source/input of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan_law"] - pan-law, default is -1
table[tracknumber][HWOutIndex]["automationmode"] - the automation-mode of this HWOutIndex of tracknumber

See GetTrackHWOut for more details on the individual settings, stored in the entries.

returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 table AllHWOuts a table with all AllHWOut-entries of the current project 
 optional integer option nil or 1, HWOuts will be applied to Track 0(MasterTrack) to table["number_of_tracks"]; 2, HWOuts will be applied to the tracks with the guid TrackID 


^ Reaper version 5.965Lua version 5.3 GetAllAUXSendReceives

Functioncall:

table AllAUXSendReceives, integer number_of_tracks = ultraschall.GetAllAUXSendReceives()

Description:
returns a table with all AUX-SendReceive-settings of all tracks, excluding master-track

returned table is of structure:
table["AllAUXSendReceive"]=true - signals, this is an AllAUXSendReceive-table. Don't alter!
table["number_of_tracks"] - the number of tracks in this table, from track 1 to track n
table[tracknumber]["AUXSendReceives_count"] - the number of AUXSendReceives of tracknumber, beginning with 1
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
table[tracknumber][AUXSendReceivesIndex]["recv_tracknumber"] - the track, from which to receive audio in this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["recv_track_guid"] - the guid of the receive-track; with that, you can be sure to get the right receive-track, even if trackorder changes
table[tracknumber][AUXSendReceivesIndex]["post_pre_fader"] - the setting of post-pre-fader of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["volume"] - the volume of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan"] - the panning of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mute"] - the mute-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mono_stereo"] - the mono/stereo-button-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["phase"] - the phase-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["chan_src"] - the audiochannel-source of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["snd_src"] - the send-to-channel-target of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan_law"] - pan-law, default is -1
table[tracknumber][AUXSendReceivesIndex]["midichanflag"] - the Midi-channel of this AUXSendReceivesIndex of tracknumber, leave it 0
table[tracknumber][AUXSendReceivesIndex]["automation"] - the automation-mode of this AUXSendReceivesIndex of tracknumber

See GetTrackAUXSendReceives for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllAUXSendReceives a table with all SendReceive-entries of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.40Lua version 5.3 ApplyAllAUXSendReceives

Functioncall:

boolean retval = ultraschall.ApplyAllAUXSendReceives(table AllAUXSendReceives, optional integer option)

Description:
akes a table, as returned by GetAllAUXSendReceive with all AUXSendReceive-settings of all tracks and applies it to all tracks.

When you set option to 2, the individual entries will be applied to the tracks, that have the guids stored in table
able[tracknumber]["TrackID"], otherwise, this function will apply it to track1 to trackn, which is the same as table["number_of_tracks"].
That way, you can create RoutingSnapshots, that will stay in the right tracks, even if they are ordered differently or when tracks have been added/deleted.


expected table is of structure:
table["AllAUXSendReceive"]=true - signals, this is an AllAUXSendReceive-table. Don't alter!
table["number_of_tracks"] - the number of tracks in this table, from track 1 to track n
table[tracknumber]["AUXSendReceives_count"] - the number of AUXSendReceives of tracknumber, beginning with 1
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
table[tracknumber][AUXSendReceivesIndex]["recv_tracknumber"] - the track, from which to receive audio in this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["recv_track_guid"] - the guid of the receive-track; with that, you can be sure to get the right receive-track, even if trackorder changes
table[tracknumber][AUXSendReceivesIndex]["post_pre_fader"] - the setting of post-pre-fader of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["volume"] - the volume of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan"] - the panning of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mute"] - the mute-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mono_stereo"] - the mono/stereo-button-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["phase"] - the phase-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["chan_src"] - the audiochannel-source of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["snd_src"] - the send-to-channel-target of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan_law"] - pan-law, default is -1
table[tracknumber][AUXSendReceivesIndex]["midichanflag"] - the Midi-channel of this AUXSendReceivesIndex of tracknumber, leave it 0
table[tracknumber][AUXSendReceivesIndex]["automation"] - the automation-mode of this AUXSendReceivesIndex of tracknumber

See GetTrackAUXSendReceives for more details on the individual settings, stored in the entries.

returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 table AllAUXSendReceives a table with all AllAUXSendReceive-entries of the current project 
 optional integer option nil or 1, AUXRecvs will be applied to Track 1 to table["number_of_tracks"]; 2, AUXRecvs will be applied to the tracks with the guid TrackID 


^ Reaper version 5.965SWS version 2.9.7Lua version 5.3 GetAllMainSendStates

Functioncall:

table AllMainSends, integer number_of_tracks = ultraschall.GetAllMainSendStates()

Description:
returns a table with all MainSend-settings of all tracks, excluding master-track.

The MainSend-settings are the settings, if a certain track sends it's signal to the Master Track

returned table is of structure:
Table["number_of_tracks"] - The number of tracks in this table, from track 1 to track n
Table["MainSend"]=true - signals, this is an AllMainSends-table
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
Table[tracknumber]["MainSendOn"] - Send to Master on(1) or off(1)
Table[tracknumber]["ParentChannels"] - the parent channels of this track

See GetTrackMainSendState for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllMainSends a table with all AllMainSends-entries of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.965Lua version 5.3 ApplyAllMainSendStates

Functioncall:

boolean retval = ultraschall.ApplyAllMainSendStates(table AllMainSendsTable, optional integer option)

Description:
akes a table, as returned by GetAllMainSendStates with all MainSend-settings of all tracks and applies it to all tracks.

The MainSend-settings are the settings, if a certain track sends it's signal to the Master Track.

When you set option to 2, the individual entries will be applied to the tracks, that have the guids stored in table
able[tracknumber]["TrackID"], otherwise, this function will apply it to track0 to trackn, which is the same as table["number_of_tracks"].
That way, you can create RoutingSnapshots, that will stay in the right tracks, even if they are ordered differently or when tracks have been added/deleted.

This influences the MasterTrack as well!

expected table is of structure:
Table["number_of_tracks"] - The number of tracks in this table, from track 1 to track n
Table["MainSend"]=true - signals, this is an AllMainSends-table
table[tracknumber]["TrackID"] - the unique id of the track as guid; can be used to get the MediaTrack using reaper.BR_GetMediaTrackByGUID(0, guid)
Table[tracknumber]["MainSendOn"] - Send to Master on(1) or off(1)
Table[tracknumber]["ParentChannels"] - the parent channels of this track

See GetTrackMainSendState for more details on the individual settings, stored in the entries.

returns false in case of an error

Returnvalues:
 boolean retval true, setting was successful; false, it was unsuccessful 

Parameters:
 table AllMainSends a table with all AllMainSends-entries of the current project 
 optional integer option nil or 1, MainSend-settings will be applied to Track 1 to table["number_of_tracks"]; 2, MasterSends will be applied to the tracks with the guid stored in table[tracknumber]["TrackID"]. 


^ Reaper version 5.965Lua version 5.3 AreHWOutsTablesEqual

Functioncall:

boolean retval = ultraschall.AreHWOutsTablesEqual(table AllHWOuts, table AllHWOuts2, optional integer option)

Description:
Compares two HWOuts-tables, as returned by GetAllHWOuts or GetAllHWOuts2

if option=2 then it will also compare, if the stored track-guids are the equal. Otherwise, it will only check the individual settings, even if the guids are different between the two tables.

returns false in case of an error

Returnvalues:
 boolean retval true, if the two tables are equal HWOuts; false, if not 

Parameters:
 table AllHWOuts a table with all HWOut-settings of all tracks 
 table AllHWOuts2 a table with all HWOut-settings of all tracks, that you want to compare to AllHWOuts 
 optional integer option nil or 1, to compare everything, except the stored TrackGuids; 2, include comparing the stored TrackGuids as well 


^ Reaper version 5.965Lua version 5.3 AreMainSendsTablesEqual

Functioncall:

boolean retval = ultraschall.AreMainSendsTablesEqual(table AllMainSends, table AllMainSends2, optional integer option)

Description:
Compares two AllMainSends-tables, as returned by GetAllMainSendStates or GetAllMainSendStates2

if option=2 then it will also compare, if the stored track-guids are the equal. Otherwise, it will only check the individual settings, even if the guids are different between the two tables.

returns false in case of an error

Returnvalues:
 boolean retval true, if the two tables are equal AllMainSends; false, if not 

Parameters:
 table AllMainSends a table with all AllMainSends-settings of all tracks 
 table AllMainSends2 a table with all AllMainSends-settings of all tracks, that you want to compare to AllMainSends 
 optional integer option nil or 1, to compare everything, except the stored TrackGuids; 2, include comparing the stored TrackGuids as well 


^ Reaper version 5.965Lua version 5.3 AreAUXSendReceivesTablesEqual

Functioncall:

boolean retval = ultraschall.AreAUXSendReceivesTablesEqual(table AllAUXSendReceives, table AllAUXSendReceives2, optional integer option)

Description:
Compares two AllAUXSendReceives-tables, as returned by GetAllAUXSendReceives or GetAllAUXSendReceives2

if option=2 then it will also compare, if the stored track-guids are the equal. Otherwise, it will only check the individual settings, even if the guids are different between the two tables.

returns false in case of an error

Returnvalues:
 boolean retval true, if the two tables are equal AllMainSends; false, if not 

Parameters:
 table AllAUXSendReceives a table with all AllAUXSendReceives-settings of all tracks 
 table AllAUXSendReceives2 a table with all AllAUXSendReceives-settings of all tracks, that you want to compare to AllAUXSendReceives 
 optional integer option nil or 1, to compare everything, except the stored TrackGuids; 2, include comparing the stored TrackGuids as well 


^ Reaper version 5.92Lua version 5.3 GetTrackStateChunk_Tracknumber

Functioncall:

boolean retval, string trackstatechunk = ultraschall.GetTrackStateChunk_Tracknumber(integer tracknumber)

Description:
returns the trackstatechunk for track tracknumber

returns false in case of an error

Returnvalues:
 boolean retval true in case of success; false in case of error 
 string trackstatechunk the trackstatechunk for track tracknumber 

Parameters:
 integer tracknumber the tracknumber, 0 for master track, 1 for track 1, 2 for track 2, etc.     


^ Reaper version 6.02Lua version 5.3 GetTrackState_NumbersOnly

Functioncall:

table values = ultraschall.GetTrackState_NumbersOnly(string state, optional string TrackStateChunk, optional string functionname, optional boolean numbertoggle)

Description:
returns a state of a TrackStateChunk.

It only supports single-entry-states with numbers/integers, separated by spaces!
All other values will be set to nil and strings with spaces will produce weird results!

returns nil in case of an error

Returnvalues:
 table values all values found as numerical indexed array 

Parameters:
 string state the state, whose attributes you want to retrieve 
 string TrackStateChunk a statechunk of a track 
 optional string functionname if this function is used within specific gettrackstate-functions, pass here the "host"-functionname, so error-messages will reflect that 
 optional boolean numbertoggle true or nil; converts all values to numbers; false, keep them as string versions 


^ Reaper version 5.40Lua version 5.3 GetTrackName

Functioncall:

string trackname = ultraschall.GetTrackName(integer tracknumber, optional string TrackStateChunk)

Description:
returns name of the track.

It's the entry NAME

returns nil in case of an error

Returnvalues:
 string trackname the name of the track 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackPeakColorState

Functioncall:

integer PeakColorState = ultraschall.GetTrackPeakColorState(integer tracknumber, optional string TrackStateChunk)

Description:
returns state of the PeakColor-number, which is the trackcolor. Will be returned as string, to avoid losing trailing or preceding zeros.

It's the entry PEAKCOL

returns nil in case of an error

Returnvalues:
 string PeakColorState the color of the track 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackBeatState

Functioncall:

number BeatState = ultraschall.GetTrackBeatState(integer tracknumber,optional string TrackStateChunk)

Description:
returns Track-BeatState.

It's the entry BEAT

returns nil in case of an error

Returnvalues:
 number BeatState -1 - Project time base; 0 - Time; 1 - Beats position, length, rate; 2 - Beats position only 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackAutoRecArmState

Functioncall:

integer AutoRecArmState = ultraschall.GetTrackAutoRecArmState(integer tracknumber, optional string TrackStateChunk)

Description:
returns if the track is in AutoRecArm, when selected. Returns nil if not.

It's the entry AUTO_RECARM

returns nil in case of an error

Returnvalues:
 integer AutoRecArmState state of autorecarm; 1 for set; nil, if unset 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMuteSoloState

Functioncall:

integer Mute, integer Solo, integer SoloDefeat = ultraschall.GetTrackMuteSoloState(integer tracknumber, optional string TrackStateChunk)

Description:
returns states of Mute and Solo-Buttons.

It's the entry MUTESOLO

returns nil in case of an error

Returnvalues:
 integer Mute Mute set to 0 - Mute off, 1 - Mute On 
 integer Solo Solo set to 0 - Solo off, 1 - Solo ignore routing, 2 - Solo on 
 integer SoloDefeat SoloDefeat set to 0 - off, 1 - on 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackIPhaseState

Functioncall:

number IPhase = ultraschall.GetTrackIPhaseState(integer tracknumber, optional string TrackStateChunk)

Description:
returns state of the IPhase. If the Phase-button is pressed, it will return 1, else it will return 0.

It's the entry IPHASE

returns nil in case of an error

Returnvalues:
 number IPhase state of the phase-button; 0, normal phase; 1, inverted phase(180°) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackIsBusState

Functioncall:

integer busstate1, integer busstate2 = ultraschall.GetTrackIsBusState(integer tracknumber, optional string trackstatechunk)

Description:
returns busstate of the track, means: if it's a folder track

It's the entry ISBUS

returns nil in case of an error

Returnvalues:
 integer busstate1=0, integer busstate2=0 track is no folder
or 
 integer busstate1=1, integer busstate2=1 track is a folder
or 
 integer busstate1=1, integer busstate2=2 track is a folder but view of all subtracks not compactible
or 
 integer busstate1=2, integer busstate2= 1 - track is last track in folder(no tracks of subfolders follow) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 6.02Lua version 5.3 GetTrackBusCompState

Functioncall:

number BusCompState1, number BusCompState2, number BusCompState3, number BusCompState4, number BusCompState5 = ultraschall.GetTrackBusCompState(integer tracknumber, optional string TrackStateChunk)

Description:
returns BusCompState, if the tracks in a folder are compacted or not.

It's the entry BUSCOMP

returns nil in case of an error

Returnvalues:
 number BusCompState1 0 - no compacting, 1 - compacted tracks, 2 - minimized tracks 
 number BusCompState2 0 - unknown,1 - unknown 
 number BusCompState3 0 - unknown,1 - unknown 
 number BusCompState4 0 - unknown,1 - unknown 
 number BusCompState5 0 - unknown,1 - unknown 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackShowInMixState

Functioncall:

integer MCPvisible, number MCP_FX_visible, number MCPTrackSendsVisible, integer TCPvisible, number ShowInMix5, number ShowInMix6, number ShowInMix7, number ShowInMix8 = ultraschall.GetTrackShowInMixState(integer tracknumber, optional string TrackStateChunk)

Description:
returns Show in Mix-state.

It's the entry SHOWINMIX

returns nil in case of an error

Returnvalues:
 integer MCPvisible 0 invisible, 1 visible 
 number MCP_FX_visible 0 visible, 1 FX-Parameters visible, 2 invisible 
 number MCPTrackSendsVisible 0 & 1.1 and higher TrackSends in MCP visible, every other number makes them invisible 
 integer TCPvisible 0 track is invisible in TCP, 1 track is visible in TCP 
 number ShowInMix5 unknown 
 number ShowInMix6 unknown 
 number ShowInMix7 unknown 
 number ShowInMix8 unknown 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackFreeModeState

Functioncall:

integer FreeModeState = ultraschall.GetTrackFreeModeState(integer tracknumber, optional string TrackStateChunk)

Description:
returns if the track has track free item positioning enabled(1) or not(0).

It's the entry FREEMODE

returns nil in case of an error

Returnvalues:
 integer FreeModeState 1 - enabled, 0 - not enabled 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackRecState

Functioncall:

integer ArmState, integer InputChannel, integer MonitorInput, integer RecInput, integer MonitorWhileRec, integer presPDCdelay, integer RecordingPath = ultraschall.GetTrackRecState(integer tracknumber, optional string TrackStateChunk)

Description:
returns Track Rec State.

It's the entry REC

returns nil in case of an error

Returnvalues:
 integer ArmState returns 1(armed) or 0(unarmed) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackVUState

Functioncall:

integer VUState = ultraschall.GetTrackVUState(integer tracknumber, optional string TrackStateChunk)

Description:
returns VUState.

It's the entry VU

returns nil in case of an error

Returnvalues:
 integer VUState nil if MultiChannelMetering is off, 2 if MultichannelMetering is on, 3 Metering is off 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.941Lua version 5.3 GetTrackHeightState

Functioncall:

integer height, integer heightstate2, integer unknown = ultraschall.GetTrackHeightState(integer tracknumber, optional string TrackStateChunk)

Description:
returns height of the track.

It's the entry TRACKHEIGHT

returns nil in case of an error

Returnvalues:
 integer height 24 up to 443 
 integer heightstate2 0 - use height, 1 - compact the track and ignore the height 
 integer lock_trackheight 0, don't lock the trackheight; 1, lock the trackheight 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackINQState

Functioncall:

integer quantMIDI, integer quantPOS, integer quantNoteOffs, number quantToFractBeat, integer quantStrength, integer swingStrength, integer quantRangeMin, integer quantRangeMax = ultraschall.GetTrackINQState(integer tracknumber, optional string TrackStateChunk)

Description:
Gets INQ-state, mostly the quantize-settings for MIDI, as set in the "Track: View track recording settings (MIDI quantize, file format/path) for last touched track"-dialog (action 40604)

It's the entry INQ

returns nil in case of an error

Returnvalues:
 integer quantMIDI quantize MIDI; 0 or 1 
 integer quantPOS quantize to position; -1,prev; 0, nearest; 1, next 
 integer quantNoteOffs quantize note-offs; 0 or 1 
 number quantToFractBeat quantize to (fraction of beat) 
 integer quantStrength quantize strength; -128 to 127 
 integer swingStrength swing strength; -128 to 127 
 integer quantRangeMin quantize range minimum; -128 to 127 
 integer quantRangeMax quantize range maximum; -128 to 127 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackNChansState

Functioncall:

integer channelnumber = ultraschall.GetTrackNChansState(integer tracknumber, optional string TrackStateChunk)

Description:
returns the number of channels for this track, as set in the routing.

It's the entry NCHAN

returns nil in case of an error

Returnvalues:
 integer channelnumber number of channels for this track 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackBypFXState

Functioncall:

integer FXState = ultraschall.GetTrackBypFXState(integer tracknumber, optional string TrackStateChunk)

Description:
returns the off/bypass(0) or nobypass(1) state of the FX-Chain

It's the entry FX

returns nil in case of an error

Returnvalues:
 integer FXState off/bypass(0) or nobypass(1) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackPerfState

Functioncall:

integer TrackPerfState = ultraschall.GetTrackPerfState(integer tracknumber, optional string TrackStateChunk)

Description:
returns TrackPerformance-state

It's the entry PERF

returns nil in case of an error

Returnvalues:
 integer TrackPerfState TrackPerformance-state
0 - allow anticipative FX + allow media buffering
1 - allow anticipative FX + prevent media buffering
2 - prevent anticipative FX + allow media buffering
3 - prevent anticipative FX + prevent media buffering
settings seem to repeat with higher numbers (e.g. 4(like 0) - allow anticipative FX + allow media buffering) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMIDIOutState

Functioncall:

integer MidiOutState = ultraschall.GetTrackMIDIOutState(integer tracknumber, optional string TrackStateChunk)

Description:
returns MIDI_Out-State, as set in the Routing-Settings

It's the entry MIDIOUT

returns nil in case of an error

Returnvalues:
 integer MidiOutState MIDI_Out-State, as set in the Routing-Settings
-1 no output
416 - microsoft GS wavetable synth - send to original channels
417-432 - microsoft GS wavetable synth - send to channel state minus 416
-31 - no Output, send to original channel 1
-16 - no Output, send to original channel 16 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMainSendState

Functioncall:

integer MainSendOn, integer ParentChannels = ultraschall.GetTrackMainSendState(integer tracknumber, optional string TrackStateChunk)

Description:
returns, if Main-Send is on(1) or off(0) and the ParentChannels(0-63), as set in the Routing-Settings.

It's the entry MAINSEND

returns nil in case of an error

Returnvalues:
 integer MainSendOn Main-Send is on(1) or off(0) 
 integer ParentChannels ParentChannels(0-63) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackGroupFlagsState

Functioncall:

integer GroupState_as_Flags, array IndividualGroupState_Flags = ultraschall.GetTrackGroupFlagsState(integer tracknumber, optional string TrackStateChunk)

Description:
returns the state of the group-flags, as set in the menu Track Grouping Parameters. Returns a 23bit flagvalue as well as an array with 32 individual 23bit-flagvalues. You must use bitoperations to get the individual values.

You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table contains up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to get Volume Master(table entry 1) to check if it's set in Group 1(2^0=1) and 3(2^2=4):
  group1=groups_bitfield_table[1]&1
  group2=groups_bitfield_table[1]&4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

The GroupState_as_Flags-bitfield is a hint, if a certain flag is set in any of the groups. So, if you want to know, if VCA Master is set in any group, check if flag &1048576 (2^20) is set to 1048576.

This function will work only for Groups 1 to 32. To get Groups 33 to 64, use GetTrackGroupFlags_HighState instead!

It's the entry GROUP_FLAGS

returns -1 in case of failure

Returnvalues:
 integer GroupState_as_Flags returns a flagvalue with 23 bits, that tells you, which grouping-flag is set in at least one of the 32 groups available.
returns -1 in case of failure

the following flags are available:
2^0 - Volume Master
2^1 - Volume Slave
2^2 - Pan Master
2^3 - Pan Slave
2^4 - Mute Master
2^5 - Mute Slave
2^6 - Solo Master
2^7 - Solo Slave
2^8 - Record Arm Master
2^9 - Record Arm Slave
2^10 - Polarity/Phase Master
2^11 - Polarity/Phase Slave
2^12 - Automation Mode Master
2^13 - Automation Mode Slave
2^14 - Reverse Volume
2^15 - Reverse Pan
2^16 - Do not master when slaving
2^17 - Reverse Width
2^18 - Width Master
2^19 - Width Slave
2^20 - VCA Master
2^21 - VCA Slave
2^22 - VCA pre-FX slave 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.941Lua version 5.3 GetTrackGroupFlags_HighState

Functioncall:

integer GroupState_as_Flags, array IndividualGroupState_Flags = ultraschall.GetTrackGroupFlags_HighState(integer tracknumber, optional string TrackStateChunk)

Description:
returns the state of the group-flags, as set in the menu Track Grouping Parameters. Returns a 23bit flagvalue as well as an array with 32 individual 23bit-flagvalues. You must use bitoperations to get the individual values.

You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table contains up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to get Volume Master(table entry 1) to check if it's set in Group 33(2^0=1) and 35(2^2=4):
  group1=groups_bitfield_table[1]&1
  group2=groups_bitfield_table[1]&4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

The GroupState_as_Flags-bitfield is a hint, if a certain flag is set in any of the groups. So, if you want to know, if VCA Master is set in any group, check if flag &1048576 (2^20) is set to 1048576.

This function will work only for Groups 33(2^0) to 64(2^31). To get Groups 1 to 32, use GetTrackGroupFlagsState instead!

It's the entry GROUP_FLAGS_HIGH

returns -1 in case of failure

Returnvalues:
 integer GroupState_as_Flags returns a flagvalue with 23 bits, that tells you, which grouping-flag is set in at least one of the 32 groups available.
returns -1 in case of failure

the following flags are available:
2^0 - Volume Master
2^1 - Volume Slave
2^2 - Pan Master
2^3 - Pan Slave
2^4 - Mute Master
2^5 - Mute Slave
2^6 - Solo Master
2^7 - Solo Slave
2^8 - Record Arm Master
2^9 - Record Arm Slave
2^10 - Polarity/Phase Master
2^11 - Polarity/Phase Slave
2^12 - Automation Mode Master
2^13 - Automation Mode Slave
2^14 - Reverse Volume
2^15 - Reverse Pan
2^16 - Do not master when slaving
2^17 - Reverse Width
2^18 - Width Master
2^19 - Width Slave
2^20 - VCA Master
2^21 - VCA Slave
2^22 - VCA pre-FX slave 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackLockState

Functioncall:

integer lockedstate = ultraschall.GetTrackLockState(integer tracknumber, optional string TrackStateChunk)

Description:
returns, if the track-controls of this track are locked(1) or not(nil).

It's the entry LOCK
Only the LOCK within TrackStateChunks, but not MediaItemStateChunks

returns nil in case of an error

Returnvalues:
 integer lockedstate locked(1) or not(nil) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackLayoutNames

Functioncall:

string TCP_Layoutname, string MCP_Layoutname = ultraschall.GetTrackLayoutNames(integer tracknumber, optional string TrackStateChunk)

Description:
returns the current selected layouts for TrackControlPanel and MixerControlPanel for this track as strings. Returns nil, if default is set.

It's the entry LAYOUTS

returns nil in case of an error

Returnvalues:
 string TCP_Layoutname name of the TCP-Layoutname 
 string MCP_Layoutname name of the MCP-Layoutname 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackAutomodeState

Functioncall:

integer automodestate = ultraschall.GetTrackAutomodeState(integer tracknumber, optional string TrackStateChunk)

Description:
returns, if the automation-mode for envelopes of this track

It's the entry AUTOMODE

returns nil in case of an error

Returnvalues:
 integer automodestate is set to 0 - trim/read, 1 - read, 2 - touch, 3 - write, 4 - latch. 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackIcon_Filename

Functioncall:

string filename_with_path = ultraschall.GetTrackIcon_Filename(integer tracknumber, optional string TrackStateChunk)

Description:
returns the filename with path for the track-icon of the current track. Returns nil, if no trackicon has been set.

It's the entry TRACKIMGFN

returns nil in case of an error

Returnvalues:
 string filename_with_path filename with path for the current track-icon. 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackRecCFG

Functioncall:

string reccfg = ultraschall.GetTrackRecCFG(integer tracknumber, optional string TrackStateChunk)

Description:
returns the Rec-configuration-string, with which recordings are made. Returns nil, if no reccfg exists.

It's the entry
returns nil in case of an error

Returnvalues:
 string reccfg the string, that encodes the recording configuration of the track. 
 integer reccfgnr the number of the recording-configuration of the track;
0, use default project rec-setting
1, use track-customized rec-setting, as set in the "Track: View track recording settings (MIDI quantize, file format/path) for last touched track"-dialog (action 40604) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMidiInputChanMap

Functioncall:

integer MidiInputChanMap_state = ultraschall.GetTrackMidiInputChanMap(integer tracknumber, optional string TrackStateChunk)

Description:
returns the state of the MIDIInputChanMap for the current track, as set in the Input-MIDI->Map Input to Channel menu. 0 for channel 1, 2 for channel 2, etc. Nil, if not existing.

It's the entry MIDI_INPUT_CHANMAP

returns nil in case of an error

Returnvalues:
 integer MidiInputChanMap_state 0 for channel 1, 1 for channel 2, ... 15 for channel 16; nil, source channel. 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMidiCTL

Functioncall:

integer LinkedToMidiChannel, integer unknown = ultraschall.GetTrackMidiCTL(integer tracknumber, optional string TrackStateChunk)

Description:
returns linked to Midi channel and an unknown value. Nil if not existing.

It's the entry MIDICTL

returns nil in case of an error

Returnvalues:
 integer LinkedToMidiChannel linked to midichannel 
 integer unknown unknown 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackWidth

Functioncall:

number width = ultraschall.GetTrackWidth(integer tracknumber, optional string TrackStateChunk)

Description:
returns width of the track. 1 if set to +100%.

Note for TrackStateChunk-enthusiasts: When set to +100%, it is not stored in the TrackStateChunk

It's the entry WIDTH

returns nil in case of an error

Returnvalues:
 number width width of the track, from -1(-100%) to 1(+100%) 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackPanMode

Functioncall:

integer PanMode = ultraschall.GetTrackPanMode(integer tracknumber, optional string TrackStateChunk)

Description:
returns Panmode of the track.

It's the entry PANMODE

returns nil in case of an error

Returnvalues:
 integer PanMode the Panmode of the track
nil - Project Default
0 - Reaper 3.x balance (deprecated)
3 - Stereo Balance/ Mono Pan(Default)
5 - Stereo Balance
6 - Dual Pan 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMidiColorMapFn

Functioncall:

string MidiColorMapFn = ultraschall.GetTrackMidiColorMapFn(integer tracknumber, optional string TrackStateChunk)

Description:
returns MidiColorMap-Filename of the track. Nil if not existing.

It's the entry MIDICOLORMAPFN

returns nil in case of an error

Returnvalues:
 string MidiColorMapFn the MidiColorMap-Filename; nil if not existing 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMidiBankProgFn

Functioncall:

string MidiBankProgFn = ultraschall.GetTrackMidiBankProgFn(integer tracknumber, optional string TrackStateChunk)

Description:
returns MidiBankProg-Filename of the track. Nil if not existing.

It's the entry MIDIBANKPROGFN

returns nil in case of an error

Returnvalues:
 string MidiBankProgFn the MidiBankProg-Filename; nil if not existing 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackMidiTextStrFn

Functioncall:

string MidiTextStrFn = ultraschall.GetTrackMidiTextStrFn(integer tracknumber, optional string TrackStateChunk)

Description:
returns MidiTextStrFn-Filename of the track. Nil if not existing.

It's the entry MIDIEXTSTRFN

returns nil in case of an error

Returnvalues:
 string MidiTextStrFn the MidiTextStrFn-Filename; nil if not existing 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackID

Functioncall:

string TrackID = ultraschall.GetTrackID(integer tracknumber, optional string TrackStateChunk)

Description:
returns TrackID of the track.

It's the entry TRACKID

returns nil in case of an error

Returnvalues:
 string TrackID the TrackID as GUID 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackScore

Functioncall:

integer Score1, integer Score2, number Score3, number Score4 = ultraschall.GetTrackScore(integer tracknumber, optional string TrackStateChunk)

Description:
returns Score of the track.

It's the entry SCORE

returns nil in case of an error

Returnvalues:
 integer Score1 unknown  
 integer Score2 unknown 
 number Score3 unknown 
 number Score4 unknown 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 GetTrackVolPan

Functioncall:

number Vol, number Pan, number OverridePanLaw, number unknown, number unknown2 = ultraschall.GetTrackVolPan(integer tracknumber, optional string TrackStateChunk)

Description:
returns Vol and Pan-states of the track.

It's the entry VOLPAN

returns nil in case of an error

Returnvalues:
 number Vol Volume Settings
-Inf dB(0) to +12dB (3.98107170553497) 
 number Pan Pan Settings
-1(-100%); 0(center); 1(100% R) 
 number OverridePanLaw Override Default Pan Track Law
0dB(1) to -144dB(0.00000006309573) 
 number unknown unknown 
 number unknown2 unknown 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master track; -1, if you want to use the parameter TrackStateChunk instead. 
 optional string TrackStateChunk a TrackStateChunk that you want to use, instead of a given track 


^ Reaper version 5.40Lua version 5.3 SetTrackName

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackName(integer tracknumber, string name, optional string TrackStateChunk)

Description:
Set the name of a track or a trackstatechunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string name new name of the track 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackPeakColorState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackPeakColorState(integer tracknumber, integer colorvalue, optional string TrackStateChunk)

Description:
Set the color of the track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer colorvalue the color for the track 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackBeatState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackBeatState(integer tracknumber, integer beatstate, optional string TrackStateChunk)

Description:
Set the timebase for a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer beatstate tracktimebase for this track; -1 - Project time base, 0 - Time, 1 - Beats position, length, rate, 2 - Beats position only 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackAutoRecArmState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackAutoRecArmState(integer tracknumber, integer autorecarmstate, optional string TrackStateChunk)

Description:
Set the AutoRecArmState for a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer autorecarmstate autorecarmstate - 1 - autorecarm on, <> than 1 - off 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMuteSoloState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMuteSoloState(integer tracknumber, integer Mute, integer Solo, integer SoloDefeat, optional string TrackStateChunk)

Description:
Set the Track Mute/Solo/Solodefeat for a track or a TrackStateChunk.
Has no real effect on master track.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer Mute Mute set to 0 - Mute off, 1 - Mute On 
 integer Solo Solo set to 0 - Solo off, 1 - Solo ignore routing, 2 - Solo on 
 integer SoloDefeat SoloDefeat set to 0 - off, 1 - on 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackIPhaseState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackIPhaseState(integer tracknumber, integer iphasestate, optional string TrackStateChunk)

Description:
Sets IPhase, the Phase-Buttonstate of the track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer iphasestate 0-off, <> than 0-on 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackIsBusState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackIsBusState(integer tracknumber, integer busstate1, integer busstate2, optional string TrackStateChunk)

Description:
Sets ISBUS-state of the track or a TrackStateChunk; if it's a folder track.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 integer busstate1=0, integer busstate2=0 track is no folder 
 integer busstate1=1, integer busstate2=1 track is a folder 
 integer busstate1=1, integer busstate2=2 track is a folder but view of all subtracks not compactible 
 integer busstate1=2, integer busstate2= 1 - track is last track in folder(no tracks of subfolders follow) 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackBusCompState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackBusCompState(integer tracknumber, integer buscompstate1, integer buscompstate2, optional string TrackStateChunk)

Description:
Sets BUSCOMP-state of the track or a TrackStateChunk; This is the state, if tracks in a folder are compacted or not.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 integer buscompstate1 - 0 - no compacting, 1 - compacted tracks, 2 - minimized tracks 
 integer buscompstate2 - 0 - unknown, 1 - unknown 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackShowInMixState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackShowInMixState(integer tracknumber, integer MCPvisible, number MCP_FX_visible, number MCP_TrackSendsVisible, integer TCPvisible, number ShowInMix5, integer ShowInMix6, integer ShowInMix7, integer ShowInMix8, optional string TrackStateChunk)

Description:
Sets SHOWINMIX, that sets visibility of track or TrackStateChunk in MCP and TCP.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer MCPvisible 0 invisible, 1 visible 
 number MCP_FX_visible 0 visible, 1 FX-Parameters visible, 2 invisible 
 number MCPTrackSendsVisible 0 & 1.1 and higher TrackSends in MCP visible, every other number makes them invisible 
 integer TCPvisible 0 track is invisible in TCP, 1 track is visible in TCP
with Master-Track, 1 shows all active envelopes, 0 hides all active envelopes 
 number ShowInMix5 unknown 
 integer ShowInMix6 unknown 
 integer ShowInMix7 unknown 
 integer ShowInMix8 unknown 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackFreeModeState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackFreeModeState(integer tracknumber, integer freemodestate, optional string TrackStateChunk)

Description:
Sets FREEMODE-state of a track or a TrackStateChunk; enables Track-Free Item Positioning.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 integer freemodestate 0 - off, 1 - on 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackRecState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackRecState(integer tracknumber, integer ArmState, integer InputChannel, integer MonitorInput, integer RecInput, integer MonitorWhileRec, integer presPDCdelay, integer RecordingPath, optional string TrackStateChunk)

Description:
Sets REC, that sets the Recording-state of the track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer ArmState set to 1(armed) or 0(unarmed) 


^ Reaper version 5.40Lua version 5.3 SetTrackVUState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackVUState(integer tracknumber, integer VUState, optional string TrackStateChunk)

Description:
Sets VU-state of a track or a TrackStateChunk; the way metering shows.

Has no real effect on master track.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer VUState 0 MultiChannelMetering is off, 2 MultichannelMetering is on, 3 Metering is off;seems to have no effect on MasterTrack 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.977Lua version 5.3 SetTrackHeightState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackHeightState(integer tracknumber, integer height, integer heightstate2, integer lockedtrackheight, optional string TrackStateChunk)

Description:
Sets TRACKHEIGHT-state; the height and compacted state of the track or a TrackStateChunk.

Has no visible effect on the master-track.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer height 24 up to 443 pixels 
 integer lockedtrackheight 0, trackheight is not locked; 1, trackheight is locked 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackINQState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackINQState(integer tracknumber, integer quantMIDI, integer quantPOS, integer quantNoteOffs, number quantToFractBeat, integer quantStrength, integer swingStrength, integer quantRangeMin, integer quantRangeMax, optional string TrackStateChunk)

Description:
Sets INQ-state, mostly the quantize-settings for MIDI, of a track or a TrackStateChunk, as set in the "Track: View track recording settings (MIDI quantize, file format/path) for last touched track"-dialog (action 40604)

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer quantMIDI quantize MIDI; 0 or 1 
 integer quantPOS quantize to position; -1,prev; 0, nearest; 1, next 
 integer quantNoteOffs quantize note-offs; 0 or 1 
 number quantToFractBeat quantize to (fraction of beat) 
 integer quantStrength quantize strength; -128 to 127 
 integer swingStrength swing strength; -128 to 127 
 integer quantRangeMin quantize range minimum; -128 to 127 
 integer quantRangeMax quantize range maximum; -128 to 127 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackNChansState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackNChansState(integer tracknumber, integer NChans, optional string TrackStateChunk)

Description:
Sets NCHAN-state; the number of channels in this track or a TrackStateChunk, as set in the routing.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer NChans 2 to 64, counted every second channel (2,4,6,8,etc) with stereo-tracks. Unknown, if Multichannel and Mono-tracks count differently. 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackBypFXState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackBypFXState(integer tracknumber, integer FXBypassState, optional string TrackStateChunk)

Description:
Sets FX, FX-Bypass-state of the track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer FXBypassState 0 bypass, 1 activate fx; has only effect, if FX or instruments are added to this track 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackPerfState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackPerfState(integer tracknumber, integer Perf, optional string TrackStateChunk)

Description:
Sets PERF, the TrackPerformance-State of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 integer Perf performance-state
0 - allow anticipative FX + allow media buffering
1 - allow anticipative FX + prevent media buffering
2 - prevent anticipative FX + allow media buffering
3 - prevent anticipative FX + prevent media buffering 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMIDIOutState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMIDIOutState(integer tracknumber, integer MIDIOutState, optional string TrackStateChunk)

Description:
Sets MIDIOUT, the state of MIDI out for this track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer MIDIOutState %-1 no output
416 %- microsoft GS wavetable synth-send to original channels
417-432 %- microsoft GS wavetable synth-send to channel state minus 416
-31 %- no Output, send to original channel 1
-16 %- no Output, send to original channel 16 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40 SetTrackMainSendState

Functioncall:

boolean retval, optional string TrackStateChunk = ultraschall.SetTrackMainSendState(integer tracknumber, integer MainSendOn, integer ParentChannels, optional string TrackStateChunk)

Description:
Sets MAINSEND, as set in the routing-settings, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 optional string TrackStateChunk the altered TrackStateChunk, if tracknumber=-1 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer MainSendOn on(1) or off(0) 
 integer ParentChannels the ParentChannels(0-64), interpreted as beginning with ParentChannels to ParentChannels+NCHAN 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackLockState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackLockState(integer tracknumber, integer LockedState, optional string TrackStateChunk)

Description:
Sets LOCK-State, as set by the menu entry Lock Track Controls, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 integer LockedState 1 - locked, 0 - unlocked 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackLayoutNames

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackLayoutNames(integer tracknumber, string TCP_Layoutname, string MCP_Layoutname, optional string TrackStateChunk)

Description:
Sets LAYOUTS, the MCP and TCP-layout by name of the layout as defined in the theme, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string TCP_Layoutname name of the TrackControlPanel-Layout from the theme to use 
 string MCP_Layoutname name of the MixerControlPanel-Layout from the theme to use 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackAutomodeState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackAutomodeState(integer tracknumber, integer automodestate, optional string TrackStateChunk)

Description:
Sets AUTOMODE-State, as set by the menu entry Set Track Automation Mode, for a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer automodestate 0 - trim/read, 1 - read, 2 - touch, 3 - write, 4 - latch 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackIcon_Filename

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackIcon_Filename(integer tracknumber, string Iconfilename_with_path, optional string TrackStateChunk)

Description:
Sets TRACKIMGFN, the trackicon-filename with path, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; -1 if you want to use parameter TrackStateChunk 
 string Iconfilename_with_path filename+path of the imagefile to use as the trackicon; "", to remove track-icon 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMidiInputChanMap

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMidiInputChanMap(integer tracknumber, integer InputChanMap, optional string TrackStateChunk)

Description:
Sets MIDI_INPUT_CHANMAP, as set in the Input-MIDI->Map Input to Channel menu, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer InputChanMap 0 for channel 1, 2 for channel 2, etc. -1 if not existing; nil, to remove MidiInputChanMap 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMidiCTL

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMidiCTL(integer tracknumber, integer LinkedToMidiChannel, integer unknown, optional string TrackStateChunk)

Description:
sets MIDICTL-state, the linkage to Midi-Channels of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer LinkedToMidiChannel unknown; nil, to remove this setting completely 
 integer unknown unknown 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackID

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackID(integer tracknumber, string guid, optional string TrackStateChunk)

Description:
sets the track-id, which must be a valid GUID, of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string guid a valid GUID. Can be generated with the native Reaper-function reaper.genGuid() 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMidiColorMapFn

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMidiColorMapFn(integer tracknumber, string MIDI_ColorMapFN, optional string TrackStateChunk)

Description:
sets the filename+path to the MIDI-ColorMap-graphicsfile of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string MIDI_ColorMapFN filename+path to the MIDI-ColorMap-file; "", to remove it 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMidiBankProgFn

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMidiBankProgFn(integer tracknumber, string MIDIBankProgFn, optional string TrackStateChunk)

Description:
sets the filename+path to the MIDI-Bank-Prog-file of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string MIDIBankProgFn filename+path to the MIDI-Bank-Prog-file; "", to remove it 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackMidiTextStrFn

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackMidiTextStrFn(integer tracknumber, string MIDITextStrFn, optional string TrackStateChunk)

Description:
sets the filename+path to the MIDI-Text-Str-file of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string MIDITextStrFn filename+path to the MIDI-Text-Str-file; "", to remove it 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackPanMode

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackPanMode(integer tracknumber, integer panmode, optional string TrackStateChunk)

Description:
sets the panmode for a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer panmode the Panmode of the track
nil - Project Default
0 - Reaper 3.x balance (deprecated)
3 - Stereo Balance/ Mono Pan(Default)
5 - Stereo Balance
6 - Dual Pan
7 - unknown mode 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackWidth

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackWidth(integer tracknumber, number width, optional string TrackStateChunk)

Description:
sets the width of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 number width width of the track, from -1(-100%) to 1(+100%) 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackScore

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackScore(integer tracknumber, integer unknown1, integer unknown2, number unknown3, number unknown4, optional string TrackStateChunk)

Description:
sets the SCORE of a track or a TrackStateChunk.

set unknown1 to unknown4 to 0 to remove the entry from the TrackStateChunk

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 integer unknown1 unknown 
 integer unknown2 unknown 
 number unknown3 unknown 
 number unknown4 unknown 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackVolPan

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackVolPan(integer tracknumber, number Vol, number Pan, number OverridePanLaw, number unknown, number unknown2, optional string TrackStateChunk)

Description:
sets the VOLPAN-state of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1, if you want to use parameter TrackStateChunk 
 number Vol Volume Settings; -Inf dB(0) to +12dB (3.98107170553497) 
 number Pan Pan Settings; -1(-100%); 0(center); 1(100% R) 
 number OverridePanLaw Override Default Pan Track Law; 0dB(1) to -144dB(0.00000006309573) 
 number unknown unknown 
 number unknown2 unknown 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 SetTrackRecCFG

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackRecCFG(integer tracknumber, string reccfg_string, integer reccfg_nr, optional string TrackStateChunk)

Description:
sets the RECCFG of a track or a TrackStateChunk.

returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 string reccfg_string the string, that encodes the recording configuration of the track 
 integer reccfgnr the number of the recording-configuration of the track;
-1, removes the reccfg-setting
0, use default project rec-setting
1, use track-customized rec-setting, as set in the "Track: View track recording settings (MIDI quantize, file format/path) for last touched track"-dialog (action 40604) 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.40Lua version 5.3 GetAllLockedTracks

Functioncall:

string locked_trackstring, string unlocked_trackstring = ultraschall.GetAllLockedTracks()

Description:
returns a trackstring with all tracknumbers of tracks, that are locked, as well as one with all tracknumbers of tracks, that are unlocked.

returns an empty locked_trackstring, if none is locked, returns an empty unlocked_trackstring if all are locked.

Returnvalues:
 string locked_trackstring the tracknumbers of all tracks, that are locked; empty string if none is locked 
 string unlocked_trackstring the tracknumbers of all tracks, that are NOT locked; empty string if all are locked 



^ Reaper version 5.40Lua version 5.3 GetAllSelectedTracks

Functioncall:

string selected_trackstring, string unselected_trackstring = ultraschall.GetAllSelectedTracks()

Description:
returns a trackstring with all tracknumbers of tracks, that are selected, as well as one with all tracknumbers of tracks, that are unselected.
returns an empty selected_trackstring, if none is selected, returns an empty unselected_trackstring if all are selected.

Returnvalues:
 string selected_trackstring the tracknumbers of all tracks, that are selected; empty string if none is selected 
 string unselected_trackstring the tracknumbers of all tracks, that are NOT selected; empty string if all are selected 



^ Reaper version 5.965Lua version 5.3 GetTrackSelection_TrackStateChunk

Functioncall:

integer selection_state = ultraschall.GetTrackSelection_TrackStateChunk(string TrackStateChunk)

Description:
returns selection of the track.    

It's the entry SEL.

Works only with statechunks stored in ProjectStateChunks, due API-limitations!

returns nil in case of an error

Returnvalues:
 integer selection_state 0, track is unselected; 1, track is selected 



^ Reaper version 5.965Lua version 5.3 SetTrackSelection_TrackStateChunk

Functioncall:

string alteredTrackStateChunk = ultraschall.SetTrackSelection_TrackStateChunk(integer selection_state, string TrackStateChunk)

Description:
set selection of the track in a TrackStateChunk.    

It's the entry SEL.

Works only with statechunks stored in ProjectStateChunks, due API-limitations!

returns nil in case of an error

Returnvalues:
 string alteredTrackStateChunk the altered TrackStateChunk with the new selection 



^ Reaper version 5.40Lua version 5.3 SetAllTracksSelected

Functioncall:

integer retval = ultraschall.SetAllTracksSelected(boolean selected)

Description:
Sets all tracks selected(if selected is true) of unselected(if selected is false)

returns -1 in case of error

Returnvalues:
 integer retval returns -1 in case of error 

Parameters:
 boolean selected true, if all tracks shall be selected, false if all shall be deselected 


^ Reaper version 5.40Lua version 5.3 SetTracksSelected

Functioncall:

integer retval = ultraschall.SetTracksSelected(string trackstring, boolean reset)

Description:
Sets tracks in trackstring selected. If reset is set to true, then the previous selection will be discarded.

returns -1 in case of error

Returnvalues:
 integer retval returns -1 in case of error 

Parameters:
 string trackstring a string with the tracknumbers, separated by a comma; nil or "", deselects all 
 boolean reset true, any previous selection will be discarded; false, it will be kept 


^ Reaper version 5.40Lua version 5.3 SetTracksToLocked

Functioncall:

boolean retval = ultraschall.SetTracksToLocked(string trackstring, boolean reset)

Description:
sets tracks in trackstring locked.
returns false in case or error, true in case of success

Returnvalues:
 boolean retval true in case of success, false in case of error 

Parameters:
 string trackstring the tracknumbers, separated with a , 
 boolean reset reset lockedstate of other tracks
true - resets the locked-state of all tracks not included in trackstring
false - the lockedstate of tracks not in trackstring is retained 


^ Reaper version 5.40Lua version 5.3 SetTracksToUnlocked

Functioncall:

boolean retval = ultraschall.SetTracksToUnlocked(string trackstring)

Description:
sets tracks in trackstring unlocked.
returns false in case or error, true in case of success

Returnvalues:
 boolean retval true in case of success, false in case of error 

Parameters:
 string trackstring the tracknumbers, separated with a , 


^ Reaper version 5.52Lua version 5.3 SetTrackStateChunk_Tracknumber

Functioncall:

boolean retval = ultraschall.SetTrackStateChunk_Tracknumber(integer tracknumber, string trackstatechunk, boolean undo)

Description:
Sets the trackstatechunk for track tracknumber. Undo flag is a performance/caching hint.

returns false in case of an error

Returnvalues:
 boolean retval true in case of success; false in case of error 

Parameters:
 integer tracknumber the tracknumber, 0 for master track, 1 for track 1, 2 for track 2, etc. 
 string trackstatechunk the trackstatechunk, you want to set this track with 
 boolean undo Undo flag is a performance/caching hint. 


^ Reaper version 5.941Lua version 5.3 SetTrackGroupFlagsState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackGroupFlagsState(integer tracknumber, array groups_bitfield_table, optional string TrackStateChunk)

Description:
Set the GroupFlags-state of a track or trackstatechunk.
You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table can contain up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to set Volume Master(table entry 1) to checked in Group 1(2^0=1) and 3(2^2=4):
  groups_bitfield_table[1]=groups_bitfield_table[1]+1+4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

This function will work only for Groups 1 to 32. To set Groups 33 to 64, use SetTrackGroupFlags_HighState instead!

Returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 array groups_bitfield_table an array with all bitfields with all groupflag-settings 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.941Lua version 5.3 SetTrackGroupFlags_HighState

Functioncall:

boolean retval, string TrackStateChunk = ultraschall.SetTrackGroupFlags_HighState(integer tracknumber, array groups_bitfield_table, optional string TrackStateChunk)

Description:
Set the GroupFlags-state of a track or trackstatechunk.
You can reach the Group-Flag-Settings in the context-menu of a track.

The groups_bitfield_table can contain up to 23 entries. Every entry represents one of the checkboxes in the Track grouping parameters-dialog

Each entry is a bitfield, that represents the groups, in which this flag is set to checked or unchecked.

So if you want to set Volume Master(table entry 1) to checked in Group 33(2^0=1) and 35(2^2=4):
  groups_bitfield_table[1]=groups_bitfield_table[1]+1+4

The following flags(and their accompanying array-entry-index) are available:
                       1 - Volume Master
                       2 - Volume Slave
                       3 - Pan Master
                       4 - Pan Slave
                       5 - Mute Master
                       6 - Mute Slave
                       7 - Solo Master
                       8 - Solo Slave
                       9 - Record Arm Master
                       10 - Record Arm Slave
                       11 - Polarity/Phase Master
                       12 - Polarity/Phase Slave
                       13 - Automation Mode Master
                       14 - Automation Mode Slave
                       15 - Reverse Volume
                       16 - Reverse Pan
                       17 - Do not master when slaving
                       18 - Reverse Width
                       19 - Width Master
                       20 - Width Slave
                       21 - VCA Master
                       22 - VCA Slave
                       23 - VCA pre-FX slave

This function will work only for Groups 33(2^0) to 64(2^31). To set Groups 1 to 32, use SetTrackGroupFlagsState instead!

Returns false in case of an error

Returnvalues:
 boolean retval true, if successful, false if unsuccessful 
 string TrackStateChunk the altered TrackStateChunk 

Parameters:
 integer tracknumber number of the track, beginning with 1; 0 for master-track; -1 if you want to use parameter TrackStateChunk 
 array groups_bitfield_table an array with all bitfields with all groupflag-settings 
 optional string TrackStateChunk use a trackstatechunk instead of a track; only used when tracknumber is -1 


^ Reaper version 5.95Lua version 5.3 pause_follow_one_cycle

Functioncall:

ultraschall.pause_follow_one_cycle()

Description:
Skips auto-follow-off-checking-script for one cycle.
FollowMode in Ultraschall turns on Autoscrolling in a useable way. In addition, under certain circumstances, followmode will be turned off automatically.
If you experience this but want to avoid the follow-off-functionality, use this function.

This function is only relevant, if you want to develop scripts that work perfectly within the Ultraschall.fm-extension.




^ Reaper version 5.95Lua version 5.3 IsTrackSoundboard

Functioncall:

boolean retval = ultraschall.IsTrackSoundboard(integer tracknumber)

Description:
Returns, if this track is a soundboard-track, means, contains an Ultraschall-Soundboard-plugin.

Only relevant in Ultraschall-installations

returns false in case of an error

Returnvalues:
 boolean retval true, it is an Ultraschall-Soundboard-track; false, it is not 

Parameters:
 integer tracknumber the tracknumber to check for; 0, for master-track; 1, for track 1; n for track n 


^ Reaper version 5.95Lua version 5.3 IsTrackStudioLink

Functioncall:

boolean retval = ultraschall.IsTrackStudioLink(integer tracknumber)

Description:
Returns, if this track is a StudioLink-track, means, contains a StudioLink-Plugin

Only relevant in Ultraschall-installations

returns false in case of an error

Returnvalues:
 boolean retval true, it is a StudioLink-track; false, it is not 

Parameters:
 integer tracknumber the tracknumber to check for; 0, for master-track; 1, for track 1; n for track n 


^ Reaper version 5.95Lua version 5.3 IsTrackStudioLinkOnAir

Functioncall:

boolean retval = ultraschall.IsTrackStudioLinkOnAir(integer tracknumber)

Description:
Returns, if this track is a StudioLinkOnAir-track, means, contains a StudioLinkOnAir-Plugin

Only relevant in Ultraschall-installations

returns false in case of an error

Returnvalues:
 boolean retval true, it is a StudioLinkOnAir-track; false, it is not 

Parameters:
 integer tracknumber the tracknumber to check for; 0, for master-track; 1, for track 1; n for track n 


^ Reaper version 5.95Lua version 5.3 GetTypeOfTrack

Functioncall:

string type, boolean multiple = ultraschall.GetTypeOfTrack(integer tracknumber)

Description:
Returns the tracktype of a specific track. Will return the type of the first valid SoundBoard, StudioLink, StudioLinkOnAir-plugin in the track-fx-chain.
If there are multiple valid plugins and therefore types, the second retval multiple will be set to true, else to false.

Only relevant in Ultraschall-installations

returns "", false in case of an error

Returnvalues:
 string type Either "StudioLink", "StudioLinkOnAir", "SoundBoard" or "Other". "", in case of an error 
 boolean multiple true, the track has other valid plugins as well; false, it is a "pure typed" track 

Parameters:
 integer tracknumber the tracknumber to check for; 0, for master-track; 1, for track 1; n for track n 


^ Reaper version 5.40Lua version 5.3 GetAllAUXSendReceives2

Functioncall:

table AllAUXSendReceives, integer number_of_tracks = ultraschall.GetAllAUXSendReceives2()

Description:
returns a table with all AUX-SendReceive-settings of all tracks, excluding master-track

like GetAllAUXSendReceives, but returns the type of a track as well

returned table is of structure:
table["AllAUXSendReceive"]=true - signals, this is an AllAUXSendReceive-table. Don't alter!
table["number_of_tracks"] - the number of tracks in this table, from track 1 to track n
table[tracknumber]["type"] - type of the track, SoundBoard, StudioLink, StudioLinkOnAir or Other
table[tracknumber]["AUXSendReceives_count"] - the number of AUXSendReceives of tracknumber, beginning with 1
table[tracknumber][AUXSendReceivesIndex]["recv_tracknumber"] - the track, from which to receive audio in this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["post_pre_fader"] - the setting of post-pre-fader of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["volume"] - the volume of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan"] - the panning of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mute"] - the mute-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["mono_stereo"] - the mono/stereo-button-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["phase"] - the phase-setting of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["chan_src"] - the audiochannel-source of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["snd_src"] - the send-to-channel-target of this AUXSendReceivesIndex of tracknumber
table[tracknumber][AUXSendReceivesIndex]["pan_law"] - pan-law, default is -1
table[tracknumber][AUXSendReceivesIndex]["midichanflag"] - the Midi-channel of this AUXSendReceivesIndex of tracknumber, leave it 0
table[tracknumber][AUXSendReceivesIndex]["automation"] - the automation-mode of this AUXSendReceivesIndex of tracknumber

See GetTrackAUXSendReceives for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllAUXSendReceives a table with all SendReceive-entries of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.40Lua version 5.3 GetAllHWOuts2

Functioncall:

table AllHWOuts, integer number_of_tracks = ultraschall.GetAllHWOuts2()

Description:
returns a table with all HWOut-settings of all tracks, including master-track(track index: 0)

like GetAllHWOuts but includes the type of a track as well

returned table is of structure:
table["HWOuts"]=true - signals, this is a HWOuts-table; don't change that!
table["number_of_tracks"] - the number of tracks in this table, from track 0(master) to track n
table[tracknumber]["type"] - type of the track, SoundBoard, StudioLink, StudioLinkOnAir or Other
table[tracknumber]["HWOut_count"] - the number of HWOuts of tracknumber, beginning with 1
table[tracknumber][HWOutIndex]["outputchannel"] - the number of outputchannels of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["post_pre_fader"] - the setting of post-pre-fader of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["volume"] - the volume of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan"] - the panning of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["mute"] - the mute-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["phase"] - the phase-setting of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["source"] - the source/input of this HWOutIndex of tracknumber
table[tracknumber][HWOutIndex]["pan\law"] - pan-law, default is -1
table[tracknumber][HWOutIndex]["automationmode"] - the automation-mode of this HWOutIndex of tracknumber

See GetTrackHWOut for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllHWOuts a table with all HWOuts of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.40Lua version 5.3 GetAllMainSendStates2

Functioncall:

table AllMainSends, integer number_of_tracks = ultraschall.GetAllMainSendStates2()

Description:
returns a table with all MainSend-settings of all tracks, excluding master-track.

like GetAllMainSendStates, but includes the type of the track as well.

The MainSend-settings are the settings, if a certain track sends it's signal to the Master Track

returned table is of structure:
Table["number_of_tracks"] - The number of tracks in this table, from track 1 to track n
Table[tracknumber]["type"] - type of the track, SoundBoard, StudioLink, StudioLinkOnAir or Other
Table[tracknumber]["MainSend"] - Send to Master on(1) or off(1)
Table[tracknumber]["ParentChannels"] - the parent channels of this track

See GetTrackMainSendState for more details on the individual settings, stored in the entries.

Returnvalues:
 table AllMainSends a table with all AllMainSends-entries of the current project. 
 integer number_of_tracks the number of tracks in the AllMainSends-table 



^ Reaper version 5.40Lua version 5.3 SetUSExternalState

Functioncall:

boolean retval = ultraschall.SetUSExternalState(string section, string key, string value, optional string filename)

Description:
stores values into ultraschall.ini. Returns true if successful, false if unsuccessful.

unlike other Ultraschall-API-functions, this converts the values, that you pass as parameters, into strings, regardless of their type

Returnvalues:
 boolean retval true, if successful, false if unsuccessful. 

Parameters:
 string section section within the ini-file 
 string key key within the section 
 string value the value itself 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 


^ Reaper version 5.40Lua version 5.3 GetUSExternalState

Functioncall:

string value = ultraschall.GetUSExternalState(string section, string key, optional string filename)

Description:
gets a value from ultraschall.ini.

returns an empty string in case of an error

Returnvalues:
 string value the value itself; empty string in case of an error or no such extstate 

Parameters:
 string section the section of the ultraschall.ini. 
 string key the key of which you want it's value. 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 


^ Reaper version 5.40Lua version 5.3 CountUSExternalState_sec

Functioncall:

integer section_count = ultraschall.CountUSExternalState_sec(optional filename)

Description:
returns the number of [sections] in the ultraschall.ini

Returnvalues:
 integer section_count the number of section in the ultraschall.ini 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 



^ Reaper version 5.40Lua version 5.3 CountUSExternalState_key

Functioncall:

integer key_count = ultraschall.CountUSExternalState_key(string section, optional string filename)

Description:
returns the number of keys in the given [section] in ultraschall.ini

returns -1 in case of an error

Returnvalues:
 integer key_count the number of keys within an ultraschall.ini-section 

Parameters:
 string section the section of the ultraschall.ini, of which you want the number of keys. 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 


^ Reaper version 5.40Lua version 5.3 EnumerateUSExternalState_sec

Functioncall:

string section_name = ultraschall.EnumerateUSExternalState_sec(integer number, optional string filename)

Description:
returns name of the numberth section in ultraschall.ini or nil if invalid

Returnvalues:
 string section_name the name of the numberth section within ultraschall.ini 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 

Parameters:
 integer number the number of section, whose name you want to know 


^ Reaper version 5.40Lua version 5.3 EnumerateUSExternalState_key

Functioncall:

string key_name = ultraschall.EnumerateUSExternalState_key(string section, integer number, optional string filename)

Description:
returns name of a numberth key within a section in ultraschall.ini or nil if invalid or not existing

Returnvalues:
 string key_name the name ob the numberth key in ultraschall.ini. 

Parameters:
 string section the section within ultraschall.ini, where the key is stored. 
 integer number the number of the key, whose name you want to know; 1 for the first one 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 


^ Reaper version 5.982Lua version 5.3 DeleteUSExternalState

Functioncall:

boolean retval = ultraschall.DeleteUSExternalState(string section, string key, optional string filename)

Description:
Deletes an external state from the ultraschall.ini

Returns false in case of error.

Returnvalues:
 boolean retval false in case of error; true in case of success 

Parameters:
 string section the section, in which the to be deleted-key is located 
 string key the key to delete 
 optional string filename set this to a filename, if you don't want to use ultraschall.ini; it will be stored into the resource-path of Reaper, so no path needed
nil, uses ultraschall.ini 


^ Reaper version 5.965Lua version 5.3 SoundBoard_StopAllSounds

Functioncall:

ultraschall.Soundboard_StopAllSounds()

Description:
Stops all sounds currently playing in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.




^ Reaper version 5.965Lua version 5.3 SoundBoard_TogglePlayPause

Functioncall:

ultraschall.Soundboard_TogglePlayPause(integer playerindex)

Description:
Toggles between Play and Pause of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 


^ Reaper version 5.965Lua version 5.3 SoundBoard_TogglePlayStop

Functioncall:

ultraschall.Soundboard_TogglePlayStop(integer playerindex)

Description:
Toggles between Play and Stop of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 


^ Reaper version 5.965Lua version 5.3 SoundBoard_Play

Functioncall:

ultraschall.Soundboard_Play(integer playerindex)

Description:
Starts playing of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 


^ Reaper version 5.965Lua version 5.3 SoundBoard_Stop

Functioncall:

ultraschall.Soundboard_Stop(integer playerindex)

Description:
Stops playing of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 


^ Reaper version 5.965Lua version 5.3 SoundBoard_TogglePlay_FadeOutStop

Functioncall:

ultraschall.Soundboard_TogglePlay_FadeOutStop(integer playerindex)

Description:
Toggles between Play and FadeOut with Stop of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 


^ Reaper version 5.965Lua version 5.3 SoundBoard_PlayList_CurrentIndex

Functioncall:

integer current_playlist_position = ultraschall.Soundboard_PlayList_CurrentIndex()

Description:
Returns the position within the playlist of the Ultraschall Soundboard.

Playlist means, the player within all players of the Ultraschall-Soundboard.

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.

For other playlist-related functions, see also SoundBoard_PlayList_SetIndex, SoundBoard_PlayList_Next and SoundBoard_PlayList_Previous

Returnvalues:
 integer current_playlist_position the position in the playlist 



^ Reaper version 5.965Lua version 5.3 SoundBoard_PlayList_SetIndex

Functioncall:

ultraschall.Soundboard_PlayList_SetIndex(integer playerindex, optional boolean play, optional boolean stop_all_others)

Description:
sets a new playerindex within the playlist of the Ultraschall-Soundboard.

You can optionally start the player and stop all others currently playing.

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.

For other playlist-related functions, see also Soundboard_PlayList_CurrentIndex, SoundBoard_PlayList_Next and SoundBoard_PlayList_Previous


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 
 optional boolean play true, start playing of this player immediately; nil or false, don't start playing 
 optional boolean stop_all_others true, stop all other players currently playing; nil or false, don't stop anything 


^ Reaper version 5.965Lua version 5.3 SoundBoard_PlayList_Next

Functioncall:

ultraschall.Soundboard_PlayList_Next()

Description:
Stops current player and starts the next player within the playlist of the Ultraschall-Soundboard.

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.

For other playlist-related functions, see also Soundboard_PlayList_CurrentIndex, SoundBoard_PlayList_SetIndex and SoundBoard_PlayList_Previous




^ Reaper version 5.965Lua version 5.3 SoundBoard_PlayList_Previous

Functioncall:

ultraschall.Soundboard_PlayList_Previous()

Description:
Stops current player and starts the previous player within the playlist of the Ultraschall-Soundboard.

When the previous would be before the first, it will not do anything.

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.

For other playlist-related functions, see also Soundboard_PlayList_CurrentIndex, SoundBoard_PlayList_SetIndex and SoundBoard_PlayList_Next.




^ Reaper version 6.02Lua version 5.3 Soundboard_PlayFadeIn

Functioncall:

ultraschall.Soundboard_PlayFadeIn(integer playerindex)

Description:
Starts a sound with a fade-in of a certain player in the Ultraschall-SoundBoard

Needs ultraschall-Soundboard installed to be useable!

Track(s) who hold the soundboard must be recarmed and recinput set to MIDI or VKB.


Parameters:
 integer playerindex the player of the SoundBoard; from 1-24 



Automatically generated by Ultraschall-API 4.00 - 1111 functions and 6 Api-variables available