<dictionary xmlns:xi="http://www.w3.org/2003/XInclude">
    <!--<xi:include href="file:///System/Library/ScriptingDefinitions/CocoaStandard.sdef" xpointer="xpointer(/dictionary/suite)"/>-->
    
    <suite name="CocoaSplit Scripting Suite" code="CSss">
        <class name="application" code="capp">
            <cocoa class="NSApplication"/>
            <element type="audioTrack">
                <cocoa key="audioTracks"/>
            </element>
            
            <element type="layout">
                <cocoa key="layouts"/>
            </element>
            <element type="layoutscript">
                <cocoa key="layoutscripts"/>
            </element>
            <element type="audioInput">
                <cocoa key="audioInputs"/>
            </element>
            <element type="output">
                <cocoa key="captureDestinations"/>
            </element>
            <element type="transition">
                <cocoa key="transitions"/>
            </element>
            
            <property name="recordingActive" code="CSra" type="boolean" access="r"/>
            <property name="stagingEnabled" code="CSse" type="boolean" access="r"/>
            <property name="activelayout" code="CSal" type="layout" access="r"/>
            <property name="staginglayout" code="CSsl" type="layout" access = "r"/>
            <property name="livelayout" code="CSll" type="layout" access="r"/>
            <property name="useTransitions" code="CSut" type="boolean"/>
            <property name="streamRunning" code="CSsr" type="boolean"/>
            <property name="streamAudio" code="CSsa" type="audioInput" access="r"/>
            <property name="previewAudio" code="CSpa" type="audioInput" access="r"/>
            
            
        </class>
        
        <class name="output" code="CSot">
            <cocoa class="OutputDestination"/>
            <property name="name" code="pnam" type="text"/>
            <property name="active" code="CSac" type="boolean"/>
            <property name="layout" code="CSly" type="layout">
                <cocoa key="assignedLayout"/>
            </property>
            <property name="running" code="CSru" type="boolean" access="r">
                <cocoa key="scriptRunning"/>
            </property>
            <property name="errored" code="CSer" type="boolean" access="r">
                <cocoa key="errored"/>
            </property>

            <property name="isDraining" code="CSid" type="boolean" access="r">
                <cocoa key="buffer_draining"/>
            </property>
            
            <property name="inputFramerate" code="CSif" type="real" access="r">
                <cocoa key="input_framerate"/>
            </property>
            
            <property name="id" code="ID  " type="text" access="r">
                <cocoa key="uuid"/>
            </property>
            
            <property name="bitrateOut" code="CSbo" type="real" access="r">
                <cocoa key="output_bitrate"/>
            </property>
            <property name="bufferedFrames" code="CSbf" type="integer" access="r">
                <cocoa key="buffered_frame_count"/>
            </property>
            <property name="bufferedSize" code="CSbs" type="integer" access="r">
                <cocoa key="buffered_frame_size"/>
            </property>
            <property name="droppedFrames" code="CSdf" type="integer" access="r">
                <cocoa key="dropped_frame_count"/>
            </property>
            <property name="outputFrameRate" code="CSfr" type="real" access="r">
                <cocoa key="output_framerate"/>
            </property>
            <property name="compressor" code="CScm" type="text" access="r">
                <cocoa key="compressor_name"/>
            </property>
        </class>
        
        <class name="inputSource" code="CSis">
            <cocoa class="InputSource"/>
            <property name="name" code="pnam" type="text"/>
            <property name="opacity" code="CSop" type="real">
                <cocoa key="opacity"/>
            </property>
            <property name="uuid" code="CSuu" type="text">
                <cocoa key="uuid"/>
            </property>

        </class>
        
        
        <class name="audioTrack" code="CSat">
            <cocoa class="CAMultiAudioOutputTrack"/>
            <property name="name" code="pnam" type="text"/>
            <property name="id" code="ID  " type="text">
                <cocoa key="uuid"/>
            </property>
        </class>
        
        <class name="audioInput" code="CSai">
            <cocoa class="CAMultiAudioNode"/>
            <property name="name" code="pnam" type="text" access="r"/>
            <property name="sound volume" code="CSvl" type="real">
                <cocoa key="volume"/>
            </property>
            <property name="enabled" code="CSen" type="boolean"/>
            <property name="muted" code="CSmu" type="boolean"/>
            <property name="id" code="ID  " type="text">
                <cocoa key="nodeUID"/>
            </property>
            
            <responds-to name="mute">
                <cocoa method="scriptMute:"/>
            </responds-to>
            
            <responds-to name="unmute">
                <cocoa method="scriptUnmute:"/>
            </responds-to>
            
            
        </class>
        
        <class name="transition" code="CStr">
            <cocoa class="CSTransitionBase"/>
            <property name="name" code="pnam" type="text">
                <cocoa key="name"/>
            </property>
            
            <property name="id" code="ID  " type="text" access="r">
                <cocoa key="uuid"/>
            </property>
            
            <property name="duration" code="CSdu" type="real">
                <cocoa key="duration"/>
            </property>
            
            <property name="active" code="CSac" type="boolean">
                <cocoa key="active"/>
            </property>
            
            <property name="isToggle" code="CSit" type="boolean" access="r">
                <cocoa key="isToggle"/>
            </property>
            
            <property name="canToggle" code="CSct" type="boolean" access="r">
                <cocoa key="canToggle"/>
            </property>
            
            <responds-to name="deactivate">
                <cocoa method="scriptDeactivate:"/>
            </responds-to>
            
            <responds-to name="activate">
                <cocoa method="scriptActivate:"/>
            </responds-to>
            
            <responds-to name="toggle">
                <cocoa method="scriptToggle:"/>
            </responds-to>
            
            <responds-to name="activateLive">
                <cocoa method="scriptActivateLive:"/>
            </responds-to>
            
            <responds-to name="deactivateLive">
                <cocoa method="scriptDeactivateLive:"/>
            </responds-to>
            
            <responds-to name="toggleLive">
                <cocoa method="scriptToggleLive:"/>
            </responds-to>
        </class>
        
        
        <class name="layoutscript" code="CSsc">
            <cocoa class="CSLayoutSequence"/>
            <property name="name" code="pnam" type="text">
                <cocoa key="name"/>
            </property>
            
            <responds-to name="run">
                <cocoa method="scriptRun:"/>
            </responds-to>
            
            <responds-to name="stop">
                <cocoa method="scriptStop:"/>
            </responds-to>
        </class>
        
        
        
        <class name="layout" code="CSly">
            <cocoa class="SourceLayout"/>
            <element type="inputSource">
                <cocoa key="sources"/>
            </element>


            <property name="id" code="ID  " type="text" access="r">
                <cocoa key="uuid"/>
            </property>
            
            <property name="name" code="pnam" type="text">
                <cocoa key="name"/>
            </property>
            
            <property name="hasSources" code="CShs" type="boolean">
                <cocoa key="hasSources"/>
            </property>
            
            
            <property name="width" code="CSwd" type="integer">
                <cocoa key="canvas_width"/>
            </property>
            <property name="height" code="CSht" type="integer">
                <cocoa key="canvas_height"/>
            </property>
            <property name="frame rate" code="CSfp" type="integer">
                <cocoa key="frameRate"/>
            </property>


            <property name="inStaging" code="CSls" type="boolean">
                <cocoa key="in_staging"/>
            </property>
            
            <property name="inLive" code="CSll" type="boolean">
                <cocoa key="in_live"/>
            </property>
            
            <responds-to name="merge">
                <cocoa method="scriptMergeLayout:"/>
            </responds-to>
            
            <responds-to name="remove">
                <cocoa method="scriptRemoveLayout:"/>
            </responds-to>

            <responds-to name="toggle">
                <cocoa method="scriptToggleLayout:"/>
            </responds-to>
                
            
            <responds-to name="replace with">
                <cocoa method="scriptSwitchToLayout:"/>
            </responds-to>
            
            <responds-to name="record">
                <cocoa method="scriptRecord:"/>
            </responds-to>
            
            <responds-to name="stopRecord">
                <cocoa method="scriptStopRecord:"/>
            </responds-to>

            <responds-to name="activate">
                <cocoa method="scriptActivate:"/>
            </responds-to>
        </class>
        
        <command name="startRecording" code="CSsrRecd">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="stopRecording" code="CSstRecd">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="toggleRecording" code="CStgRecd">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        
        <command name="record" code="CSlyRecd">
            <direct-parameter type="layout"/>
        </command>
        <command name="stopRecord" code="CSlystre">
            <direct-parameter type="layout"/>
        </command>

        <command name="goLive" code="CSstlive">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="swapLayouts" code="CSssswap">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="startStream" code="CSssstrm">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="stopStream" code="CSssstst">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="instantRecord" code="CSssirec">
            <cocoa class="CSScriptCommand"/>
        </command>
        
        <command name="toggleStagingView" code="CSsstgst">
            <cocoa class="CSScriptCommand"/>
        </command>

        <command name="hideStagingView" code="CSsshdst">
            <cocoa class="CSScriptCommand"/>
        </command>


        <command name="showStagingView" code="CSssshst">
            <cocoa class="CSScriptCommand"/>
        </command>


        <command name="deactivate" code="CStrdeac">
            <direct-parameter type="transition"/>
        </command>
        
        <command name="activate" code="CStracti">
            <direct-parameter type="transition"/>
        </command>
        
        <command name="toggle" code="CStrtogg">
            <direct-parameter type="transition"/>
        </command>
        
        <command name="activateLive" code="CStraclv">
            <direct-parameter type="transition"/>
        </command>
    
        <command name="deactivateLive" code="CStrdclv">
            <direct-parameter type="transition"/>
        </command>
        <command name="toggleLive" code="CStrtglv">
            <direct-parameter type="transition"/>
        </command>

        <command name="toggle" code="CSsstogl">
            <direct-parameter type="layout"/>
            <parameter name="using" code="toly" type="layout" description="Which layout to operate on" optional="yes">
                <cocoa key="useLayout"/>
            </parameter>
            <parameter name="order" code="lyor" type="text" description="How to order merged sources, 'above' or 'below'" optional="yes">
                <cocoa key="sourceOrder"/>
            </parameter>
        </command>
        
        <command name="replace with" code="CSssrwly">
            <direct-parameter type="layout"/>
            <parameter name="using" code="toly" type="layout" description="Which layout to operate on" optional="yes">
                <cocoa key="useLayout"/>
            </parameter>


        </command>
        
        <command name="mute" code="CSaumute">
            <direct-parameter type="audioInput"/>
        </command>
        
        <command name="unmute" code="CSauunmu">
            <direct-parameter type="audioInput"/>
        </command>
        
        <command name="activate" code="CSlyACtv">
            <direct-parameter type="layout"/>
        </command>
        
        <command name="run" code="CSssruns">
            <direct-parameter type="layoutscript"/>
            <parameter name="in" code="toly" type="layout" description="Which layout to operate on" optional="yes">
                <cocoa key="useLayout"/>
            </parameter>

        </command>
        
        <command name="stop" code="CSssstls">
            <direct-parameter type="layoutscript"/>
        </command>


        <command name="merge" code="CSssmgly">
            <direct-parameter type="layout"/>
            <parameter name="into" code="toly" type="layout" description="Which layout to operate on" optional="yes">
                <cocoa key="useLayout"/>
            </parameter>
            <parameter name="order" code="lyor" type="text" description="How to order merged sources, 'above' or 'below'" optional="yes">
                <cocoa key="sourceOrder"/>
            </parameter>
        </command>

        <command name="remove" code="CSssrmly">
            <direct-parameter type="layout"/>
            <parameter name="from" code="toly" type="layout" description="Which layout to operate on" optional="yes">
                <cocoa key="useLayout"/>
            </parameter>
    
        </command>

    </suite>
    
    
</dictionary>
