source: branches/classes/bin/videoext.rx@ 202

Last change on this file since 202 was 4, checked in by stevenhl, 8 years ago

Import modifications from cwmm-0_2_9-work-01_10_2006.zip dated 2006-08-27

File size: 2.5 KB
Line 
1/* rexx - Get the extension of video types added using
2 the multimedia setup object. For example *.QT.
3 This script is called by M_MMVideo.
4*/
5
6call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
7call SysLoadFuncs
8
9allExt=""
10waveaudio=""
11
12/* Get MMOS2 directory */
13mmos2Dir=STRIP(TRANSLATE(value("MMBASE",,"OS2ENVIRONMENT")," ",";"))
14if LEFT(mmos2Dir,1)='\' THEN
15 mmpm2Ini=mmos2Dir||'mmpm2.ini'
16else
17 mmpm2Ini=mmos2Dir||'\mmpm2.ini'
18
19if STREAM(mmpm2ini, "C", "Query exists")='' THEN DO
20 /* MMPM2.INI not found */
21 rc=""
22 exit ""
23END
24
25/* Read ini */
26a=0
27DO WHILE LINES(mmpm2ini)
28 a=a+1
29 mmini.a=STRIP(LINEIN(mmpm2ini))
30END
31mmini.0=a
32ret=STREAM(mmpm2ini, "C", "close")
33
34/* Find [DRIVERS] section */
35DO a=1 to mmini.0
36 if ABBREV(TRANSLATE(mmini.a), "[DRIVERS]")=1 THEN DO
37 call parseDrivers
38 LEAVE
39 END
40END
41
42if waveaudio="" THEN DO
43 rc=""
44 exit ""
45END
46/*Now we have the wave device(s) */
47
48/* Get extensions from all devices */
49tempext=""
50DO b=1 to WORDS(waveaudio)
51 /* We may have several video devices */
52 /* OpenMPEG by IBM is handled by it's own script called by M_MMPG */
53 IF POS("IBMMPEG", TRANSLATE(WORD(waveaudio, b))) = 0 THEN
54 tempExt=tempExt||' '||parseWaveDevice(WORD(waveaudio, b))
55END
56
57/* Build string and remove known extensions */
58DO b=1 to WORDS(tempExt)
59 curExt=WORD(tempExt,b)
60 SELECT
61 WHEN TRANSLATE(curExt)="AVI" THEN NOP /* Already supported by a spezialized class */
62 WHEN TRANSLATE(curExt)="FLI" THEN NOP
63 WHEN TRANSLATE(curExt)="MOV" THEN NOP
64 WHEN TRANSLATE(curExt)="MPG" THEN NOP
65
66 OTHERWISE
67 if allExt\='' THEN allExt=allExt||','
68 allExt=allExt||'*.'||STRIP(curExt)
69 END
70END
71return allExt
72EXIT
73
74/**************************************/
75
76parseDrivers:
77a=a+1
78DO WHILE LEFT(mmini.a,1)\='['
79 IF ABBREV(TRANSLATE(mmini.a),"DIGITALVIDEO")=1 THEN DO
80 thePos=POS("=",mmini.a)
81 if thePos=0 then return
82 waveaudio=TRANSLATE(RIGHT(mmini.a, LENGTH(mmini.a)-thePos)," ",",") /* There may be several entries */
83 return
84 END
85 a=a+1
86 IF a>mmini.0 THEN return
87END
88return
89
90parseWavedevice:
91
92theDevice='['ARG(1)']'
93DO a=1 to mmini.0
94 if ABBREV(TRANSLATE(mmini.a), TRANSLATE(theDevice))=1 THEN DO
95 /* Device section found */
96 a=a+1
97 DO WHILE LEFT(mmini.a,1)\='['
98 IF ABBREV(TRANSLATE(mmini.a),"EXTNAMES")=1 THEN DO
99 thePos=POS("=",mmini.a)
100 if thePos=0 then return
101 ext=SUBWORD(TRANSLATE(RIGHT(mmini.a, LENGTH(mmini.a)-thePos)," ",","),2)
102 return ext
103 END
104 a=a+1
105 IF a>mmini.0 THEN return ""
106 END
107 END
108END
109return ""
110
Note: See TracBrowser for help on using the repository browser.