home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / OTL-MS02.DMS / in.adf / Guide / MovieShop / rexx / tl_u_Crop.msrx < prev    next >
Encoding:
Text File  |  1995-06-25  |  2.2 KB  |  96 lines

  1. /*
  2.  
  3. Effektmodul-Beispiel mit UPN Schnittliste
  4.  
  5. Überblendung zweier Szenen mit Crop
  6.  
  7. Edwin Bielawski 30. 5. 95
  8.  
  9. */
  10.  
  11. OPTIONS RESULTS
  12. OPTIONS FAILAT 21
  13.  
  14. /* ----------------------------------------------------- */
  15.  
  16. Example = 'U_Crop'
  17.  
  18. InitRun = GetClip('mstl_'Example)
  19. /* ----------------------------------------------------- */
  20.  
  21. If ("MS_GUIDE:Rexx/tl_init.msrx"(UPN 2)>0) Then Exit 10
  22.  
  23. /* ----------------------------------------------------- */
  24.  
  25. Path_Crop = InitOperator('Crop')
  26. Path_Compose = InitOperator('Compose')
  27.  
  28. ADDRESS MOVIESHOP
  29.  
  30. /* ----------------------------------------------------- */
  31.  
  32. TIMETONUMBER '1:00'
  33. Offset = RESULT
  34.  
  35. /* ----------------------------------------------------- */
  36.  
  37. GOTOSCENE 'NUMBER 0'
  38. If (RC>0) Then Exit 10
  39. GETFRAMENUMBER
  40. If (RC>0) Then Exit 10
  41. Sc1Len = RESULT
  42.  
  43. SCENETOTIMELINE 'TIME 0 TRACK 2'
  44. If (RC>0) Then Exit 10                  /* Erste Szene */
  45.  
  46. /* ----------------------------------------------------- */
  47.  
  48. GOTOSCENE 'NUMBER 1'
  49. If (RC>0) Then Exit 10
  50. GETFRAMENUMBER
  51. If (RC>0) Then Exit 10
  52. Sc2Len = RESULT
  53.  
  54. Sc2Pos = ((Sc1Len%2+Offset)%Offset)*Offset /* Runden auf Sekunden */
  55.  
  56. If (Sc2Pos>Sc1Len) Then Sc2Pos=0
  57. If ((Sc1Len-Sc2Pos)>Offset) Then Sc2Pos=Sc1Len-Offset
  58. If ((Sc2Pos+Sc2Len)<Sc1Len) Then Sc2Pos=Sc1Len-Sc2Len
  59.  
  60. NUMBERTOTIME Sc2Pos
  61. Sc2PosTime = RESULT
  62.  
  63. SCENETOTIMELINE 'TIME' Sc2PosTime 'TRACK 0'
  64. If (RC>0) Then Exit 10                  /* Zweite Szene */
  65.  
  66. /* ----------------------------------------------------- */
  67.  
  68. NUMBERTOTIME Sc1Len-Sc2Pos
  69. Op1LenTime = RESULT
  70.  
  71. EFFECTTOTIMELINE Path_Crop 'TRACK 1 TIME' Sc2PosTime 'LENGTH' Op1LenTime
  72. If (RC>0) Then Exit 10
  73.  
  74. EFFECTTOTIMELINE Path_Compose 'TRACK 3 TIME' Sc2PosTime 'LENGTH' Op1LenTime
  75. If (RC>0) Then Exit 10
  76.  
  77. Call "MS_GUIDE:Rexx/tl_calc.msrx"(Example 'Demo')
  78.  
  79. Exit 0
  80.  
  81. /* ----------------------------------------------------- */
  82.  
  83. InitOperator:
  84.   Parse ARG OpName
  85.  
  86.   Call "MS_GUIDE:Rexx/tl_search.msrx"(OpName)
  87.   OpFullName = GetClip('OpFullName')
  88.   Call SetClip('OpFullName')
  89.  
  90.   If (Exists('MS_GUIDE:Prefs/'Example'.'OpName)) Then ADDRESS COMMAND 'Copy >NIL:' 'MS_GUIDE:Prefs/'Example'.'OpName TO OpFullName'.prefs'
  91.   Else Do
  92.     Call SetClip('mstl_'Example,'1')
  93.     If (InitRun=1) Then ADDRESS COMMAND 'Copy >NIL:' OpFullName'.prefs' TO 'MS_GUIDE:Prefs/'Example'.'OpName
  94.   End
  95.   Return(OpFullName)
  96.