Advertisement
duquesne9

Import From Eos(WIP)

Oct 28th, 2019
1,841
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. -- ###FIXME### Impact of housing such a large script in the workspace unknown!
  3. -- ###FIXME### Testing has not been _exhaustive_, for obvious reasons!
  4. -- ###FIXME### Unclear whether script can run in the background while you continue working in QLab (or elsewhere)
  5.  
  6. -- Best run as a separate process so it can be happening in the background
  7.  
  8. set userEscapeHatchInterval to 50 -- Set the number of cues to process between each progress report / opportunity to cancel
  9.  
  10. set theExplanation to "This script will attempt to import Eos cues from an open Excel CSV. It will not work if there is no Excel file open."
  11.  
  12. -- Declarations
  13.  
  14. global dialogTitle, userEscapeHatchInterval, startTime, ohDear, abortAbort, theSelectionRef
  15. set dialogTitle to "Import Eos"
  16. set theSelectionRef to ""
  17.  
  18. global subChoiceImportCues, subChoiceImportNotes, subChoiceImportSceneEnds, subChoiceLogging, subChoiceSetColors
  19.  
  20. --set processChoices to {"Import Cues From Eos", "Import Scene Notes", "Import Scene Ends", "Set Colors", "Build Logging Playlist", "Insert Logging Cues"}
  21.  
  22. set processChoices to {"Import to existing cue list?", "Import to empty cue list?"}
  23. set subChoiceEmpty to {"Cues only", "Cues, Scene Notes, and Scene Ends"}
  24. set subChoiceExisting to {"Cues only", "Cues, Scene Notes, and Scene Ends"}
  25.  
  26. (* -- Do I need sub choice for next routines, or just to start sub routine?
  27.  
  28. set subChoiceColors to {} -- These values can be customised as they are never used explicitly
  29. set subChoiceLogPlaylist to {}
  30. set subChoiceLogCues to {}
  31.  
  32. *)
  33.  
  34. -- NB: use "false " rather than "false" in lists presented to pickFromList()
  35.  
  36. -- Preamble
  37.  
  38. set theProcess to ""
  39. set firstTime to true
  40. --repeat until theProcess is "Finished adjusting"
  41.  
  42. set ohDear to false -- A simple flag to detect problems
  43. set abortAbort to false -- A flag for aborting!
  44. (*
  45.     -- Test for a selection; modify options if only one cue selected
  46.    
  47.     if firstTime is true then -- Only need to do this step once
  48.        
  49.         tell application id "com.figure53.QLab.4"
  50.             try
  51.                 set theSelection to (selected of front workspace as list)
  52.             end try
  53.         end tell
  54.        
  55.         set theSelectionRef to a reference to theSelection
  56.         set countSelection to count theSelectionRef
  57.         if countSelection is 0 then
  58.             --return
  59.             set theProcess to "Import to empty cue list?"
  60.         end if
  61.        
  62.         set firstTime to false
  63.        
  64.     end if
  65.    
  66.     *)
  67. -- Choose a process
  68. --fix so it ends after one run through
  69.  
  70. set theProcess to pickFromList(processChoices, theExplanation & return & return & ¬
  71.     "So that you can run more than one process, you'll keep coming back to this screen until you hit any \"Cancel\" button, " & ¬
  72.     "or choose \"Finished adjusting\"." & return & return & "Choose a property category:")
  73.  
  74. -- Find out more about what we're doing, and then call a subroutine to do it…
  75. (*
  76.  
  77.        
  78.        
  79.     if theProcess is "Set Colors" then
  80.        
  81.         doColors(theSelectionRef, "selected cues")
  82.        
  83.     else if theProcess is "Build Logging Playlist" then
  84.        
  85.         buildLogPlay(theSelectionRef, "selected cues")
  86.        
  87.     else if theProcess is "Insert Logging Cues" then
  88.        
  89.         insertLogCues(theSelectionRef, "selected cues")
  90.         *)
  91.  
  92. if theProcess is "Import to existing cue list?" then
  93.    
  94.     set theChoice to pickFromList(subChoiceEmpty, "Choose how you would like to import")
  95.    
  96.     if theChoice is "Cues only" then
  97.         importA(theSelectionRef, "selected cues")
  98.     else if theChoice is "Cues, Scene Notes, and Scene Ends" then
  99.         importB(theSelectionRef, "selected cues")
  100.     end if
  101.    
  102. else if theProcess is "Import to empty cue list?" then
  103.    
  104.     set theChoice to pickFromList(subChoiceExisting, "Choose how you would like to import")
  105.    
  106.     if theChoice is "Cues only" then
  107.         importC(theSelectionRef, "selected cues")
  108.     else if theChoice is "Cues, Scene Notes, and Scene Ends" then
  109.         importD(theSelectionRef, "selected cues")
  110.     end if
  111.    
  112. end if
  113.  
  114. --end repeat
  115.  
  116. --subroutines
  117.  
  118. on pickFromList(theChoice, thePrompt) -- [Shared subroutine]
  119.     tell application id "com.figure53.QLab.4"
  120.         choose from list theChoice with prompt thePrompt with title dialogTitle default items item 1 of theChoice
  121.         if result is not false then
  122.             return item 1 of result
  123.         else
  124.             error number -128
  125.         end if
  126.     end tell
  127. end pickFromList
  128.  
  129. on importA(cuesToProcess, whichCuesString)
  130.    
  131.     (*Currently only moves cues if new placement is in group in Qlab 3, marks misplaced cues red. Fully functional in Qlab4 with edits*)
  132.    
  133.     tell application id "com.figure53.QLab.4" to tell front workspace
  134.        
  135.         set namePrefix to "LX"
  136.         set lblCol to "F"
  137.         set listnumCol to "C"
  138.         set qnumCol to "D"
  139.         set qNotesCol to "AE"
  140.         set startRow to "3"
  141.         set endRow to "700"
  142.         set cueCount to ""
  143.        
  144.         set grabbedQs to (selected as list)
  145.         repeat with targetQ in (selected as list)
  146.            
  147.             set TEST to q number of targetQ
  148.             set rowNum to startRow
  149.            
  150.             tell application "Microsoft Excel"
  151.                 repeat until (value of cell ("A" & rowNum) as string) is "END_TARGETS"
  152.                     if (value of cell (qNotesCol & rowNum) as string) is not "" then
  153.                         if (value of cell (qNotesCol & rowNum) as real) mod 1 is 0 then
  154.                             set qNotesStr to (value of cell (qNotesCol & rowNum) as integer) as string
  155.                         else
  156.                             set qNotesStr to (value of cell (qNotesCol & rowNum) as string)
  157.                         end if
  158.                        
  159.                         if qNotesStr is equal to TEST then
  160.                             --next series creates data for settings in newQ
  161.                             if (value of cell (qnumCol & rowNum) as real) mod 1 is 0 then
  162.                                 set qNumStr to (value of cell (qnumCol & rowNum) as integer) as string
  163.                             else
  164.                                 set qNumStr to (value of cell (qnumCol & rowNum) as string)
  165.                             end if
  166.                             if (value of cell (lblCol & rowNum) as string) is not "" then
  167.                                 set lblTxt to " - " & (value of cell (lblCol & rowNum) as string) as string
  168.                             else
  169.                                 set lblTxt to "" as string
  170.                             end if
  171.                             set qname to namePrefix & qNumStr & lblTxt
  172.                             set groupName to lblTxt
  173.                             set qCmd to ("/eos/cue/" & (value of cell (listnumCol & rowNum) as integer as string) & "/" & qNumStr & "/fire") as string
  174.                            
  175.                             tell application id "com.figure53.QLab.4" to tell front workspace
  176.                                
  177.                                 set qlq to TEST & "LX"
  178.                                 make type "NETWORK"
  179.                                 set newQ to last item of (selected as list)
  180.                                 set properties of newQ to {q name:qname, osc message type:custom, custom message:qCmd, q number:qlq, continue mode:auto_continue}
  181.                                
  182.                                 set newCueID to uniqueID of newQ
  183.                                
  184.                                 if q type of targetQ is "group" then
  185.                                     move cue id newCueID of parent of newQ to beginning of targetQ
  186.                                 else
  187.                                     tell parent of newQ
  188.                                         move cue id newCueID to after cue (q number of targetQ)
  189.                                     end tell
  190.                                     set continue mode of cue before newQ to auto_continue
  191.                                 end if
  192.                                 (* 
  193.                                 if q type of parent of newQ is not "group" then
  194.                                     tell parent of newQ
  195.                                         move cue id newCueID to after cue (q number of targetQ)
  196.                                     end tell
  197.                                 end if
  198.                             *)
  199.                                 if q type of parent of newQ is not "group" then
  200.                                     set continue mode of newQ to do_not_continue
  201.                                 end if
  202.                                
  203.                                 if q type of parent of newQ is "group" then
  204.                                     set cueCount to ((count cues) in parent of newQ)
  205.                                 end if
  206.                                 if cueCount is less than "2" then
  207.                                     set continue mode of newQ to do_not_continue
  208.                                 end if
  209.                                
  210.                                 if q number of cue before newQ is not TEST then
  211.                                     set myColor to "red"
  212.                                    
  213.                                     set myOSC to "/cue/selected/colorName " & myColor
  214.                                     do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  215.                                     --set q color of newQ to "red"
  216.                                    
  217.                                 end if
  218.                                
  219.                                 set rowNum to rowNum + 1
  220.                                 exit repeat
  221.                             end tell
  222.                            
  223.                         else
  224.                             set rowNum to rowNum + 1
  225.                         end if
  226.                        
  227.                     else
  228.                         set rowNum to rowNum + 1
  229.                     end if
  230.                    
  231.                 end repeat
  232.                
  233.             end tell
  234.            
  235.         end repeat
  236.         set selected to (grabbedQs)
  237.        
  238.     end tell
  239.    
  240. end importA
  241.  
  242. on importB(cuesToProcess, whichCuesString)
  243.    
  244.     tell application id "com.figure53.QLab.4" to tell front workspace
  245.         set namePrefix to "LX"
  246.         set lblCol to "F"
  247.         set listnumCol to "C"
  248.         set qnumCol to "D"
  249.         set qNotesCol to "AE"
  250.         set sceneEndCol to "AG"
  251.         set sceneNotesCol to "AF"
  252.         set startRow to "3"
  253.         set endRow to "700"
  254.         set cueCount to ""
  255.        
  256.         set grabbedQs to (selected as list)
  257.         repeat with targetQ in (selected as list)
  258.            
  259.             set TEST to q number of targetQ
  260.             set rowNum to startRow
  261.            
  262.             tell application "Microsoft Excel"
  263.                 repeat until (value of cell ("A" & rowNum) as string) is "END_TARGETS"
  264.                    
  265.                     set endName to ""
  266.                     set noteName to ""
  267.                    
  268.                     if (value of cell (qNotesCol & rowNum) as string) is not "" then
  269.                         if (value of cell (qNotesCol & rowNum) as real) mod 1 is 0 then
  270.                             set qNotesStr to (value of cell (qNotesCol & rowNum) as integer) as string
  271.                         else
  272.                             set qNotesStr to (value of cell (qNotesCol & rowNum) as string)
  273.                         end if
  274.                        
  275.                         if qNotesStr is equal to TEST then
  276.                             --next series creates data for settings in newQ
  277.                             if (value of cell (qnumCol & rowNum) as real) mod 1 is 0 then
  278.                                 set qNumStr to (value of cell (qnumCol & rowNum) as integer) as string
  279.                             else
  280.                                 set qNumStr to (value of cell (qnumCol & rowNum) as string)
  281.                             end if
  282.                             if (value of cell (lblCol & rowNum) as string) is not "" then
  283.                                 set lblTxt to " - " & (value of cell (lblCol & rowNum) as string) as string
  284.                             else
  285.                                 set lblTxt to "" as string
  286.                             end if
  287.                            
  288.                             --checks for Scene End
  289.                             if (value of cell (sceneEndCol & rowNum) as string) is "Scene_End" then
  290.                                 set endTxt to (value of cell (sceneNotesCol & rowNum) as string) as string
  291.                                 set endName to endTxt & " END"
  292.                             else
  293.                                 set endTxt to "" as string
  294.                             end if
  295.                            
  296.                             --checks for Scene Note
  297.                             if (value of cell (sceneNotesCol & rowNum) as string) is not "" then
  298.                                 set noteTxt to (value of cell (sceneNotesCol & rowNum) as string) as string
  299.                                 set noteName to noteTxt & " BEGIN"
  300.                             else
  301.                                 set noteTxt to "" as string
  302.                             end if
  303.                            
  304.                             --build Q settings
  305.                             set qname to namePrefix & qNumStr & lblTxt
  306.                             set groupName to lblTxt
  307.                             set qCmd to ("/eos/cue/" & (value of cell (listnumCol & rowNum) as integer as string) & "/" & qNumStr & "/fire") as string
  308.                            
  309.                             tell application id "com.figure53.QLab.4" to tell front workspace
  310.                                
  311.                                 set qlq to TEST & "LX"
  312.                                 make type "NETWORK"
  313.                                 set newQ to last item of (selected as list)
  314.                                 set properties of newQ to {q name:qname, osc message type:custom, custom message:qCmd, q number:qlq, continue mode:auto_continue}
  315.                                
  316.                                 set newCueID to uniqueID of newQ
  317.                                
  318.                                 if q type of targetQ is "group" then
  319.                                     move cue id newCueID of parent of newQ to beginning of targetQ
  320.                                 else
  321.                                     tell parent of newQ
  322.                                         move cue id newCueID to after cue (q number of targetQ)
  323.                                     end tell
  324.                                     set continue mode of cue before newQ to auto_continue
  325.                                 end if
  326.                                
  327.                                 if q type of parent of newQ is not "group" then
  328.                                     set continue mode of newQ to do_not_continue
  329.                                 end if
  330.                                
  331.                                 if q type of parent of newQ is "group" then
  332.                                     set cueCount to ((count cues) in parent of newQ)
  333.                                 end if
  334.                                 if cueCount is less than "2" then
  335.                                     set continue mode of newQ to do_not_continue
  336.                                 end if
  337.                                
  338.                                 if q number of cue before newQ is not TEST then
  339.                                     set myColor to "red"
  340.                                    
  341.                                     set myOSC to "/cue/selected/colorName " & myColor
  342.                                     do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  343.                                     --set q color of newQ to "red"
  344.                                    
  345.                                 end if
  346.                                
  347.                                 if noteName is not "" then
  348.                                     set noteNum to (q number of targetQ) & ".BEGIN"
  349.                                     make type "Memo"
  350.                                     set noteQ to last item of (selected as list)
  351.                                     set properties of noteQ to {q name:noteName, q number:noteNum, continue mode:do_not_continue}
  352.                                     set noteCueID to uniqueID of noteQ
  353.                                    
  354.                                     tell parent of noteQ
  355.                                         move cue id noteCueID to beginning of cue (q number of targetQ)
  356.                                     end tell
  357.                                     set myCue to q number of noteQ
  358.                                     set myColor to "yellow"
  359.                                     set myOSC to "/cue/" & myCue & "/colorName " & myColor
  360.                                     do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  361.                                 end if
  362.                                
  363.                                 if endName is not "" then
  364.                                     set endNum to (q number of targetQ) & ".END"
  365.                                     make type "Memo"
  366.                                     set endQ to last item of (selected as list)
  367.                                     set properties of endQ to {q name:endName, q number:endNum, continue mode:do_not_continue}
  368.                                     set endCueID to uniqueID of endQ
  369.                                     tell parent of endQ
  370.                                         move cue id endCueID to after cue (q number of targetQ)
  371.                                     end tell
  372.                                     set contTestQ to cue before endQ
  373.                                     set continue mode of parent of contTestQ to auto_continue
  374.                                     set myCue to q number of endQ
  375.                                     set myColor to "yellow"
  376.                                     set myOSC to "/cue/" & myCue & "/colorName " & myColor
  377.                                     do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  378.                                 end if
  379.                                
  380.                                 set rowNum to rowNum + 1
  381.                                 exit repeat
  382.                             end tell
  383.                            
  384.                         else
  385.                             set rowNum to rowNum + 1
  386.                         end if
  387.                        
  388.                     else
  389.                         set rowNum to rowNum + 1
  390.                     end if
  391.                    
  392.                 end repeat
  393.                
  394.             end tell
  395.            
  396.         end repeat
  397.         set selected to (grabbedQs)
  398.        
  399.     end tell
  400.    
  401. end importB
  402.  
  403.  
  404. on importC(cuesToProcess, whichCuesString)
  405.    
  406.     set namePrefix to "LX "
  407.     set lblCol to "F"
  408.     set listnumCol to "C"
  409.     set qnumCol to "D"
  410.     set afCol to "W"
  411.     set startRow to "3"
  412.     set endRow to "700"
  413.     set rowNum to startRow
  414.    
  415.     set cellval to "Cell"
  416.    
  417.     tell application "Microsoft Excel"
  418.         repeat until (value of cell ("A" & rowNum) as string) is "END_TARGETS"
  419.             if (value of cell (afCol & rowNum - 1) as string) starts with "F" then
  420.                 set rowNum to rowNum + 1
  421.             else if (value of cell (afCol & rowNum - 1) as string) starts with "H" then
  422.                 set rowNum to rowNum + 1
  423.             else
  424.                 if (value of cell (qnumCol & rowNum) as real) mod 1 is 0 then
  425.                     set qNumStr to (value of cell (qnumCol & rowNum) as integer) as string
  426.                 else
  427.                     set qNumStr to (value of cell (qnumCol & rowNum) as string)
  428.                 end if
  429.                 if (value of cell (lblCol & rowNum) as string) is not "" then
  430.                     set lblTxt to " - " & (value of cell (lblCol & rowNum) as string) as string
  431.                 else
  432.                     set lblTxt to "" as string
  433.                 end if
  434.                 set qname to namePrefix & qNumStr & lblTxt
  435.                 set groupName to lblTxt
  436.                 set qCmd to ("/eos/cue/" & (value of cell (listnumCol & rowNum) as integer as string) & "/" & qNumStr & "/fire") as string
  437.                
  438.                 tell application id "com.figure53.QLab.4" to tell front workspace
  439.                     make type "group"
  440.                     set selectedCue to last item of (selected as list)
  441.                     set mode of selectedCue to fire_all
  442.                     set the q number of selectedCue to qNumStr
  443.                    
  444.                     if q type of selectedCue is "Group" then
  445.                         make type "NETWORK"
  446.                         set newQ to last item of (selected as list)
  447.                         set q name of newQ to qname
  448.                         set the q number of newQ to ""
  449.                         set the osc message type of newQ to custom
  450.                         set the custom message of newQ to qCmd
  451.                         set newCueID to uniqueID of newQ
  452.                         move cue id newCueID of parent of newQ to end of selectedCue
  453.                         set rowNum to rowNum + 1
  454.                        
  455.                     end if
  456.                 end tell
  457.             end if
  458.         end repeat
  459.     end tell
  460.    
  461.    
  462. end importC
  463.  
  464. on importD(cuesToProcess, whichCuesString)
  465.    
  466.     set namePrefix to "LX "
  467.     set lblCol to "F"
  468.     set listnumCol to "C"
  469.     set qnumCol to "D"
  470.     set sceneEndCol to "AG"
  471.     set sceneNotesCol to "AF"
  472.     set afCol to "W"
  473.     set startRow to "3"
  474.     set endRow to "700"
  475.     set rowNum to startRow
  476.    
  477.    
  478.    
  479.     set cellval to "Cell"
  480.    
  481.     tell application "Microsoft Excel"
  482.         repeat until (value of cell ("A" & rowNum) as string) is "END_TARGETS"
  483.             set endName to ""
  484.             set noteName to ""
  485.             if (value of cell (afCol & rowNum - 1) as string) starts with "F" then
  486.                 set rowNum to rowNum + 1
  487.             else if (value of cell (afCol & rowNum - 1) as string) starts with "H" then
  488.                 set rowNum to rowNum + 1
  489.             else
  490.                 if (value of cell (qnumCol & rowNum) as real) mod 1 is 0 then
  491.                     set qNumStr to (value of cell (qnumCol & rowNum) as integer) as string
  492.                 else
  493.                     set qNumStr to (value of cell (qnumCol & rowNum) as string)
  494.                 end if
  495.                 if (value of cell (lblCol & rowNum) as string) is not "" then
  496.                     set lblTxt to " - " & (value of cell (lblCol & rowNum) as string) as string
  497.                 else
  498.                     set lblTxt to "" as string
  499.                 end if
  500.                
  501.                 if (value of cell (sceneEndCol & rowNum) as string) is "Scene_End" then
  502.                     set endTxt to (value of cell (sceneNotesCol & rowNum) as string) as string
  503.                     set endName to endTxt & " END"
  504.                 else
  505.                     set endTxt to "" as string
  506.                 end if
  507.                
  508.                 if (value of cell (sceneNotesCol & rowNum) as string) is not "" then
  509.                     set noteTxt to (value of cell (sceneNotesCol & rowNum) as string) as string
  510.                     set noteName to noteTxt & " BEGIN"
  511.                 else
  512.                     set noteTxt to "" as string
  513.                 end if
  514.                
  515.                 set qname to namePrefix & qNumStr & lblTxt
  516.                 set groupName to lblTxt
  517.                 set qCmd to ("/eos/cue/" & (value of cell (listnumCol & rowNum) as integer as string) & "/" & qNumStr & "/fire") as string
  518.                
  519.                 tell application id "com.figure53.QLab.4" to tell front workspace
  520.                     make type "group"
  521.                     set selectedCue to last item of (selected as list)
  522.                     set mode of selectedCue to fire_all
  523.                     set the q number of selectedCue to qNumStr
  524.                    
  525.                     if q type of selectedCue is "Group" then
  526.                         make type "NETWORK"
  527.                         set newQ to last item of (selected as list)
  528.                         set q name of newQ to qname
  529.                         set the q number of newQ to ""
  530.                         set the osc message type of newQ to custom
  531.                         set the custom message of newQ to qCmd
  532.                         set newCueID to uniqueID of newQ
  533.                         move cue id newCueID of parent of newQ to end of selectedCue
  534.                        
  535.                     end if
  536.                    
  537.                     --creates newQ, then moves it into targetQ, deletes newQ if targetQ is not group
  538.                     if endName is not "" then
  539.                         set endNum to (q number of selectedCue) & ".END"
  540.                         make type "Memo"
  541.                         set endQ to last item of (selected as list)
  542.                         set properties of endQ to {q name:endName, q number:endNum, continue mode:do_not_continue}
  543.                        
  544.                         set endCueID to uniqueID of endQ
  545.                         tell parent of endQ
  546.                             move cue id endCueID to after cue (q number of selectedCue)
  547.                         end tell
  548.                         set contTestQ to cue before endQ
  549.                         set continue mode of parent of contTestQ to auto_continue
  550.                         set myCue to q number of endQ
  551.                         set myColor to "yellow"
  552.                        
  553.                         set myOSC to "/cue/" & myCue & "/colorName " & myColor
  554.                         do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  555.                     end if
  556.                    
  557.                     --creates newQ, then moves it into targetQ, deletes newQ if targetQ is not group
  558.                     if noteName is not "" then
  559.                         set noteNum to (q number of selectedCue) & ".BEGIN"
  560.                         make type "Memo"
  561.                         set noteQ to last item of (selected as list)
  562.                         set properties of noteQ to {q name:noteName, q number:noteNum, continue mode:auto_continue}
  563.                        
  564.                         set noteCueID to uniqueID of noteQ
  565.                         tell parent of noteQ
  566.                             move cue id noteCueID to beginning of selectedCue
  567.                         end tell
  568.                         if q type of cue before noteQ is not "group" then
  569.                             set continue mode of parent of noteQ to auto_continue
  570.                         else
  571.                             set continue mode of parent of parent of noteQ to auto_continue
  572.                         end if
  573.                        
  574.                         set myCue to q number of noteQ
  575.                         set myColor to "yellow"
  576.                        
  577.                         set myOSC to "/cue/" & myCue & "/colorName " & myColor
  578.                         do shell script "echo " & myOSC & " | nc -u -w 0 127.0.0.1 53535"
  579.                     end if
  580.                    
  581.                    
  582.                 end tell
  583.                
  584.                 set rowNum to rowNum + 1
  585.             end if
  586.         end repeat
  587.     end tell
  588.    
  589. end importD
  590.  
  591.  
  592.  
  593. --doColors
  594. --buildLogPlay
  595. --insertLogCues
  596. --import eos a
  597. --import eos b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement