mmreg.pp 106 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135
  1. {
  2. This file is part of the Free Pascal run time library.
  3. Copyright (c) 2008 Free Pascal development team.
  4. See the file COPYING.FPC, included in this distribution,
  5. for details about the copyright.
  6. This program is distributed in the hope that it will be useful,
  7. but WITHOUT ANY WARRANTY; without even the implied warranty of
  8. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  9. ********************************************************************** }
  10. //
  11. // Module Name:
  12. //
  13. // mmreg.h
  14. //
  15. // Abstract:
  16. //
  17. // Multimedia Registration
  18. //
  19. //
  20. // Microsoft Windows Mobile 6.0 for PocketPC SDK.
  21. //
  22. unit mmreg;
  23. interface
  24. uses Windows;
  25. {
  26. Automatically converted by H2Pas 1.0.0 from mmreg.h
  27. The following command line parameters were used:
  28. -d
  29. -w
  30. -D
  31. -l
  32. mmreg.h
  33. }
  34. { Define the following to skip definitions }
  35. { }
  36. { NOMMIDS Multimedia IDs are not defined }
  37. { NONEWWAVE No new waveform types are defined except WAVEFORMATEX }
  38. { NONEWRIFF No new RIFF forms are defined }
  39. { NOJPEGDIB No JPEG DIB definitions }
  40. { NONEWIC No new Image Compressor types are defined }
  41. { NOBITMAP No extended bitmap info header definition }
  42. {$PACKRECORDS 1} // {#include "pshpack1.h" /* Assume byte packing throughout */ }
  43. type
  44. FOURCC = DWORD; //* a four character code */
  45. {$IFNDEF NOMMIDS}
  46. // manufacturer IDs
  47. const
  48. MM_MICROSOFT = 1; // Microsoft Corporation
  49. MM_CREATIVE = 2; // Creative Labs, Inc
  50. { Media Vision, Inc. }
  51. MM_MEDIAVISION = 3;
  52. { Fujitsu Corp. }
  53. MM_FUJITSU = 4;
  54. { Artisoft, Inc. }
  55. MM_ARTISOFT = 20;
  56. { Turtle Beach, Inc. }
  57. MM_TURTLE_BEACH = 21;
  58. { IBM Corporation }
  59. MM_IBM = 22;
  60. { Vocaltec LTD. }
  61. MM_VOCALTEC = 23;
  62. { Roland }
  63. MM_ROLAND = 24;
  64. { DSP Solutions, Inc. }
  65. MM_DSP_SOLUTIONS = 25;
  66. { NEC }
  67. MM_NEC = 26;
  68. { ATI }
  69. MM_ATI = 27;
  70. { Wang Laboratories, Inc }
  71. MM_WANGLABS = 28;
  72. { Tandy Corporation }
  73. MM_TANDY = 29;
  74. { Voyetra }
  75. MM_VOYETRA = 30;
  76. { Antex Electronics Corporation }
  77. MM_ANTEX = 31;
  78. { ICL Personal Systems }
  79. MM_ICL_PS = 32;
  80. { Intel Corporation }
  81. MM_INTEL = 33;
  82. { Advanced Gravis }
  83. MM_GRAVIS = 34;
  84. { Video Associates Labs, Inc. }
  85. MM_VAL = 35;
  86. { InterActive Inc }
  87. MM_INTERACTIVE = 36;
  88. { Yamaha Corporation of America }
  89. MM_YAMAHA = 37;
  90. { Everex Systems, Inc }
  91. MM_EVEREX = 38;
  92. { Echo Speech Corporation }
  93. MM_ECHO = 39;
  94. { Sierra Semiconductor Corp }
  95. MM_SIERRA = 40;
  96. { Computer Aided Technologies }
  97. MM_CAT = 41;
  98. { APPS Software International }
  99. MM_APPS = 42;
  100. { DSP Group, Inc }
  101. MM_DSP_GROUP = 43;
  102. { microEngineering Labs }
  103. MM_MELABS = 44;
  104. { Computer Friends, Inc. }
  105. MM_COMPUTER_FRIENDS = 45;
  106. { ESS Technology }
  107. MM_ESS = 46;
  108. { Audio, Inc. }
  109. MM_AUDIOFILE = 47;
  110. { Motorola, Inc. }
  111. MM_MOTOROLA = 48;
  112. { Canopus, co., Ltd. }
  113. MM_CANOPUS = 49;
  114. { Seiko Epson Corporation }
  115. MM_EPSON = 50;
  116. { Truevision }
  117. MM_TRUEVISION = 51;
  118. { Aztech Labs, Inc. }
  119. MM_AZTECH = 52;
  120. { Videologic }
  121. MM_VIDEOLOGIC = 53;
  122. { SCALACS }
  123. MM_SCALACS = 54;
  124. { Korg Inc. }
  125. MM_KORG = 55;
  126. { Audio Processing Technology }
  127. MM_APT = 56;
  128. { Integrated Circuit Systems, Inc. }
  129. MM_ICS = 57;
  130. { Iterated Systems, Inc. }
  131. MM_ITERATEDSYS = 58;
  132. { Metheus }
  133. MM_METHEUS = 59;
  134. { Logitech, Inc. }
  135. MM_LOGITECH = 60;
  136. { Winnov, Inc. }
  137. MM_WINNOV = 61;
  138. { NCR Corporation }
  139. MM_NCR = 62;
  140. { EXAN }
  141. MM_EXAN = 63;
  142. { AST Research Inc. }
  143. MM_AST = 64;
  144. { Willow Pond Corporation }
  145. MM_WILLOWPOND = 65;
  146. { Sonic Foundry }
  147. MM_SONICFOUNDRY = 66;
  148. { Vitec Multimedia }
  149. MM_VITEC = 67;
  150. { MOSCOM Corporation }
  151. MM_MOSCOM = 68;
  152. { Silicon Soft, Inc. }
  153. MM_SILICONSOFT = 69;
  154. { Supermac }
  155. MM_SUPERMAC = 73;
  156. { Audio Processing Technology }
  157. MM_AUDIOPT = 74;
  158. { Speech Compression }
  159. MM_SPEECHCOMP = 76;
  160. { Ahead, Inc. }
  161. MM_AHEAD = 77;
  162. { Dolby Laboratories }
  163. MM_DOLBY = 78;
  164. { OKI }
  165. MM_OKI = 79;
  166. { AuraVision Corporation }
  167. MM_AURAVISION = 80;
  168. { Ing C. Olivetti & C., S.p.A. }
  169. MM_OLIVETTI = 81;
  170. { I/O Magic Corporation }
  171. MM_IOMAGIC = 82;
  172. { Matsushita Electric Industrial Co., LTD. }
  173. MM_MATSUSHITA = 83;
  174. { Control Resources Limited }
  175. MM_CONTROLRES = 84;
  176. { Xebec Multimedia Solutions Limited }
  177. MM_XEBEC = 85;
  178. { New Media Corporation }
  179. MM_NEWMEDIA = 86;
  180. { Natural MicroSystems }
  181. MM_NMS = 87;
  182. { Lyrrus Inc. }
  183. MM_LYRRUS = 88;
  184. { Compusic }
  185. MM_COMPUSIC = 89;
  186. { OPTi Computers Inc. }
  187. MM_OPTI = 90;
  188. { Adlib Accessories Inc. }
  189. MM_ADLACC = 91;
  190. { Compaq Computer Corp. }
  191. MM_COMPAQ = 92;
  192. { Dialogic Corporation }
  193. MM_DIALOGIC = 93;
  194. { InSoft, Inc. }
  195. MM_INSOFT = 94;
  196. { M.P. Technologies, Inc. }
  197. MM_MPTUS = 95;
  198. { Weitek }
  199. MM_WEITEK = 96;
  200. { Lernout & Hauspie }
  201. MM_LERNOUT_AND_HAUSPIE = 97;
  202. { Quanta Computer Inc. }
  203. MM_QCIAR = 98;
  204. { Apple Computer, Inc. }
  205. MM_APPLE = 99;
  206. { Digital Equipment Corporation }
  207. MM_DIGITAL = 100;
  208. { Mark of the Unicorn }
  209. MM_MOTU = 101;
  210. { Workbit Corporation }
  211. MM_WORKBIT = 102;
  212. { Ositech Communications Inc. }
  213. MM_OSITECH = 103;
  214. { miro Computer Products AG }
  215. MM_MIRO = 104;
  216. { Cirrus Logic }
  217. MM_CIRRUSLOGIC = 105;
  218. { ISOLUTION B.V. }
  219. MM_ISOLUTION = 106;
  220. { Horizons Technology, Inc }
  221. MM_HORIZONS = 107;
  222. { Computer Concepts Ltd }
  223. MM_CONCEPTS = 108;
  224. { Voice Technologies Group, Inc. }
  225. MM_VTG = 109;
  226. { Radius }
  227. MM_RADIUS = 110;
  228. { Rockwell International }
  229. MM_ROCKWELL = 111;
  230. { Co. XYZ for testing }
  231. MM_XYz = 112;
  232. { Opcode Systems }
  233. MM_OPCODE = 113;
  234. { Voxware Inc }
  235. MM_VOXWARE = 114;
  236. { Northern Telecom Limited }
  237. MM_NORTHERN_TELECOM = 115;
  238. { APICOM }
  239. MM_APICOM = 116;
  240. { Grande Software }
  241. MM_GRANDE = 117;
  242. { ADDX }
  243. MM_ADDX = 118;
  244. { Wildcat Canyon Software }
  245. MM_WILDCAT = 119;
  246. { Rhetorex Inc }
  247. MM_RHETOREX = 120;
  248. { Brooktree Corporation }
  249. MM_BROOKTREE = 121;
  250. { ENSONIQ Corporation }
  251. MM_ENSONIQ = 125;
  252. { ///FAST Multimedia AG }
  253. MM_FAST = 126;
  254. { NVidia Corporation }
  255. MM_NVIDIA = 127;
  256. { OKSORI Co., Ltd. }
  257. MM_OKSORI = 128;
  258. { DiAcoustics, Inc. }
  259. MM_DIACOUSTICS = 129;
  260. { Gulbransen, Inc. }
  261. MM_GULBRANSEN = 130;
  262. { Kay Elemetrics, Inc. }
  263. MM_KAY_ELEMETRICS = 131;
  264. { Crystal Semiconductor Corporation }
  265. MM_CRYSTAL = 132;
  266. { Splash Studios }
  267. MM_SPLASH_STUDIOS = 133;
  268. { Quarterdeck Corporation }
  269. MM_QUARTERDECK = 134;
  270. { TDK Corporation }
  271. MM_TDK = 135;
  272. { Digital Audio Labs, Inc. }
  273. MM_DIGITAL_AUDIO_LABS = 136;
  274. { Seer Systems, Inc. }
  275. MM_SEERSYS = 137;
  276. { PictureTel Corporation }
  277. MM_PICTURETEL = 138;
  278. { AT&T Microelectronics }
  279. MM_ATT_MICROELECTRONICS = 139;
  280. { Osprey Technologies, Inc. }
  281. MM_OSPREY = 140;
  282. { Mediatrix Peripherals }
  283. MM_MEDIATRIX = 141;
  284. { SounDesignS M.C.S. Ltd. }
  285. MM_SOUNDESIGNS = 142;
  286. { A.L. Digital Ltd. }
  287. MM_ALDIGITAL = 143;
  288. { Spectrum Signal Processing, Inc. }
  289. MM_SPECTRUM_SIGNAL_PROCESSING = 144;
  290. { Electronic Courseware Systems, Inc. }
  291. MM_ECS = 145;
  292. { AMD }
  293. MM_AMD = 146;
  294. { Core Dynamics }
  295. MM_COREDYNAMICS = 147;
  296. { CANAM Computers }
  297. MM_CANAM = 148;
  298. { Softsound, Ltd. }
  299. MM_SOFTSOUND = 149;
  300. { Norris Communications, Inc. }
  301. MM_NORRIS = 150;
  302. { Danka Data Devices }
  303. MM_DDD = 151;
  304. { EuPhonics }
  305. MM_EUPHONICS = 152;
  306. { Precept Software, Inc. }
  307. MM_PRECEPT = 153;
  308. { Crystal Net Corporation }
  309. MM_CRYSTAL_NET = 154;
  310. { Chromatic Research, Inc }
  311. MM_CHROMATIC = 155;
  312. { Voice Information Systems, Inc }
  313. MM_VOICEINFO = 156;
  314. { Vienna Systems }
  315. MM_VIENNASYS = 157;
  316. { Connectix Corporation }
  317. MM_CONNECTIX = 158;
  318. { Gadget Labs LLC }
  319. MM_GADGETLABS = 159;
  320. { Frontier Design Group LLC }
  321. MM_FRONTIER = 160;
  322. { Viona Development GmbH }
  323. MM_VIONA = 161;
  324. { Casio Computer Co., LTD }
  325. MM_CASIO = 162;
  326. { Diamond Multimedia }
  327. MM_DIAMONDMM = 163;
  328. { S3 }
  329. MM_S3 = 164;
  330. { Fraunhofer }
  331. MM_FRAUNHOFER_IIS = 172;
  332. { MM_MICROSOFT product IDs }
  333. {$IFNDEF MM_MIDI_MAPPER}
  334. const
  335. MM_MIDI_MAPPER = 1; // Midi Mapper
  336. { Wave Mapper }
  337. MM_WAVE_MAPPER = 2;
  338. { Sound Blaster MIDI output port }
  339. MM_SNDBLST_MIDIOUT = 3;
  340. { Sound Blaster MIDI input port }
  341. MM_SNDBLST_MIDIIN = 4;
  342. { Sound Blaster internal synth }
  343. MM_SNDBLST_SYNTH = 5;
  344. { Sound Blaster waveform output }
  345. MM_SNDBLST_WAVEOUT = 6;
  346. { Sound Blaster waveform input }
  347. MM_SNDBLST_WAVEIN = 7;
  348. { Ad Lib Compatible synth }
  349. MM_ADLIB = 9;
  350. { MPU 401 compatible MIDI output port }
  351. MM_MPU401_MIDIOUT = 10;
  352. { MPU 401 compatible MIDI input port }
  353. MM_MPU401_MIDIIN = 11;
  354. { Joystick adapter }
  355. MM_PC_JOYSTICK = 12;
  356. {$ENDIF MM_MIDI_MAPPER}
  357. const
  358. MM_PCSPEAKER_WAVEOUT = 13; { PC speaker waveform output }
  359. { MS Audio Board waveform input }
  360. MM_MSFT_WSS_WAVEIN = 14;
  361. { MS Audio Board waveform output }
  362. MM_MSFT_WSS_WAVEOUT = 15;
  363. { MS Audio Board Stereo FM synth }
  364. MM_MSFT_WSS_FMSYNTH_STEREO = 16;
  365. { MS Audio Board Mixer Driver }
  366. MM_MSFT_WSS_MIXER = 17;
  367. { MS OEM Audio Board waveform input }
  368. MM_MSFT_WSS_OEM_WAVEIN = 18;
  369. { MS OEM Audio Board waveform output }
  370. MM_MSFT_WSS_OEM_WAVEOUT = 19;
  371. { MS OEM Audio Board Stereo FM Synth }
  372. MM_MSFT_WSS_OEM_FMSYNTH_STEREO = 20;
  373. { MS Audio Board Aux. Port }
  374. MM_MSFT_WSS_AUX = 21;
  375. { MS OEM Audio Aux Port }
  376. MM_MSFT_WSS_OEM_AUX = 22;
  377. { MS Vanilla driver waveform input }
  378. MM_MSFT_GENERIC_WAVEIN = 23;
  379. { MS Vanilla driver wavefrom output }
  380. MM_MSFT_GENERIC_WAVEOUT = 24;
  381. { MS Vanilla driver MIDI in }
  382. MM_MSFT_GENERIC_MIDIIN = 25;
  383. { MS Vanilla driver MIDI external out }
  384. MM_MSFT_GENERIC_MIDIOUT = 26;
  385. { MS Vanilla driver MIDI synthesizer }
  386. MM_MSFT_GENERIC_MIDISYNTH = 27;
  387. { MS Vanilla driver aux (line in) }
  388. MM_MSFT_GENERIC_AUX_LINE = 28;
  389. { MS Vanilla driver aux (mic) }
  390. MM_MSFT_GENERIC_AUX_MIC = 29;
  391. { MS Vanilla driver aux (CD) }
  392. MM_MSFT_GENERIC_AUX_CD = 30;
  393. { MS OEM Audio Board Mixer Driver }
  394. MM_MSFT_WSS_OEM_MIXER = 31;
  395. { MS Audio Compression Manager }
  396. MM_MSFT_MSACM = 32;
  397. { MS ADPCM Codec }
  398. MM_MSFT_ACM_MSADPCM = 33;
  399. { IMA ADPCM Codec }
  400. MM_MSFT_ACM_IMAADPCM = 34;
  401. { MS Filter }
  402. MM_MSFT_ACM_MSFILTER = 35;
  403. { GSM 610 codec }
  404. MM_MSFT_ACM_GSM610 = 36;
  405. { G.711 codec }
  406. MM_MSFT_ACM_G711 = 37;
  407. { PCM converter }
  408. MM_MSFT_ACM_PCM = 38;
  409. { Microsoft Windows Sound System drivers }
  410. { Sound Blaster 16 waveform input }
  411. MM_WSS_SB16_WAVEIN = 39;
  412. { Sound Blaster 16 waveform output }
  413. MM_WSS_SB16_WAVEOUT = 40;
  414. { Sound Blaster 16 midi-in }
  415. MM_WSS_SB16_MIDIIN = 41;
  416. { Sound Blaster 16 midi out }
  417. MM_WSS_SB16_MIDIOUT = 42;
  418. { Sound Blaster 16 FM Synthesis }
  419. MM_WSS_SB16_SYNTH = 43;
  420. { Sound Blaster 16 aux (line in) }
  421. MM_WSS_SB16_AUX_LINE = 44;
  422. { Sound Blaster 16 aux (CD) }
  423. MM_WSS_SB16_AUX_CD = 45;
  424. { Sound Blaster 16 mixer device }
  425. MM_WSS_SB16_MIXER = 46;
  426. { Sound Blaster Pro waveform input }
  427. MM_WSS_SBPRO_WAVEIN = 47;
  428. { Sound Blaster Pro waveform output }
  429. MM_WSS_SBPRO_WAVEOUT = 48;
  430. { Sound Blaster Pro midi in }
  431. MM_WSS_SBPRO_MIDIIN = 49;
  432. { Sound Blaster Pro midi out }
  433. MM_WSS_SBPRO_MIDIOUT = 50;
  434. { Sound Blaster Pro FM synthesis }
  435. MM_WSS_SBPRO_SYNTH = 51;
  436. { Sound Blaster Pro aux (line in ) }
  437. MM_WSS_SBPRO_AUX_LINE = 52;
  438. { Sound Blaster Pro aux (CD) }
  439. MM_WSS_SBPRO_AUX_CD = 53;
  440. { Sound Blaster Pro mixer }
  441. MM_WSS_SBPRO_MIXER = 54;
  442. { WSS NT wave in }
  443. MM_MSFT_WSS_NT_WAVEIN = 55;
  444. { WSS NT wave out }
  445. MM_MSFT_WSS_NT_WAVEOUT = 56;
  446. { WSS NT FM synth }
  447. MM_MSFT_WSS_NT_FMSYNTH_STEREO = 57;
  448. { WSS NT mixer }
  449. MM_MSFT_WSS_NT_MIXER = 58;
  450. { WSS NT aux }
  451. MM_MSFT_WSS_NT_AUX = 59;
  452. { Sound Blaster 16 waveform input }
  453. MM_MSFT_SB16_WAVEIN = 60;
  454. { Sound Blaster 16 waveform output }
  455. MM_MSFT_SB16_WAVEOUT = 61;
  456. { Sound Blaster 16 midi-in }
  457. MM_MSFT_SB16_MIDIIN = 62;
  458. { Sound Blaster 16 midi out }
  459. MM_MSFT_SB16_MIDIOUT = 63;
  460. { Sound Blaster 16 FM Synthesis }
  461. MM_MSFT_SB16_SYNTH = 64;
  462. { Sound Blaster 16 aux (line in) }
  463. MM_MSFT_SB16_AUX_LINE = 65;
  464. { Sound Blaster 16 aux (CD) }
  465. MM_MSFT_SB16_AUX_CD = 66;
  466. { Sound Blaster 16 mixer device }
  467. MM_MSFT_SB16_MIXER = 67;
  468. { Sound Blaster Pro waveform input }
  469. MM_MSFT_SBPRO_WAVEIN = 68;
  470. { Sound Blaster Pro waveform output }
  471. MM_MSFT_SBPRO_WAVEOUT = 69;
  472. { Sound Blaster Pro midi in }
  473. MM_MSFT_SBPRO_MIDIIN = 70;
  474. { Sound Blaster Pro midi out }
  475. MM_MSFT_SBPRO_MIDIOUT = 71;
  476. { Sound Blaster Pro FM synthesis }
  477. MM_MSFT_SBPRO_SYNTH = 72;
  478. { Sound Blaster Pro aux (line in ) }
  479. MM_MSFT_SBPRO_AUX_LINE = 73;
  480. { Sound Blaster Pro aux (CD) }
  481. MM_MSFT_SBPRO_AUX_CD = 74;
  482. { Sound Blaster Pro mixer }
  483. MM_MSFT_SBPRO_MIXER = 75;
  484. { Yamaha OPL2/OPL3 compatible FM synthesis }
  485. MM_MSFT_MSOPL_SYNTH = 76;
  486. { Voice Modem Serial Line Wave Input }
  487. MM_MSFT_VMDMS_LINE_WAVEIN = 80;
  488. { Voice Modem Serial Line Wave Output }
  489. MM_MSFT_VMDMS_LINE_WAVEOUT = 81;
  490. { Voice Modem Serial Handset Wave Input }
  491. MM_MSFT_VMDMS_HANDSET_WAVEIN = 82;
  492. { Voice Modem Serial Handset Wave Output }
  493. MM_MSFT_VMDMS_HANDSET_WAVEOUT = 83;
  494. { Voice Modem Wrapper Line Wave Input }
  495. MM_MSFT_VMDMW_LINE_WAVEIN = 84;
  496. { Voice Modem Wrapper Line Wave Output }
  497. MM_MSFT_VMDMW_LINE_WAVEOUT = 85;
  498. { Voice Modem Wrapper Handset Wave Input }
  499. MM_MSFT_VMDMW_HANDSET_WAVEIN = 86;
  500. { Voice Modem Wrapper Handset Wave Output }
  501. MM_MSFT_VMDMW_HANDSET_WAVEOUT = 87;
  502. { Voice Modem Wrapper Mixer }
  503. MM_MSFT_VMDMW_MIXER = 88;
  504. { Voice Modem Game Compatible Wave Device }
  505. MM_MSFT_VMDM_GAME_WAVEOUT = 89;
  506. { Voice Modem Game Compatible Wave Device }
  507. MM_MSFT_VMDM_GAME_WAVEIN = 90;
  508. { }
  509. MM_MSFT_ACM_MSNAUDIO = 91;
  510. { }
  511. MM_MSFT_ACM_MSG723 = 92;
  512. { Generic id for WDM Audio drivers }
  513. MM_MSFT_WDMAUDIO_WAVEOUT = 100;
  514. { Generic id for WDM Audio drivers }
  515. MM_MSFT_WDMAUDIO_WAVEIN = 101;
  516. { Generic id for WDM Audio drivers }
  517. MM_MSFT_WDMAUDIO_MIDIOUT = 102;
  518. { Generic id for WDM Audio drivers }
  519. MM_MSFT_WDMAUDIO_MIDIIN = 103;
  520. { Generic id for WDM Audio drivers }
  521. MM_MSFT_WDMAUDIO_MIXER = 104;
  522. { MM_CREATIVE product IDs }
  523. MM_CREATIVE_SB15_WAVEIN = 1; { SB (r) 1.5 waveform input }
  524. MM_CREATIVE_SB20_WAVEIN = 2;
  525. MM_CREATIVE_SBPRO_WAVEIN = 3;
  526. MM_CREATIVE_SBP16_WAVEIN = 4;
  527. MM_CREATIVE_PHNBLST_WAVEIN = 5;
  528. MM_CREATIVE_SB15_WAVEOUT = 101;
  529. MM_CREATIVE_SB20_WAVEOUT = 102;
  530. MM_CREATIVE_SBPRO_WAVEOUT = 103;
  531. MM_CREATIVE_SBP16_WAVEOUT = 104;
  532. MM_CREATIVE_PHNBLST_WAVEOUT = 105;
  533. { SB (r) }
  534. MM_CREATIVE_MIDIOUT = 201;
  535. { SB (r) }
  536. MM_CREATIVE_MIDIIN = 202;
  537. { SB (r) }
  538. MM_CREATIVE_FMSYNTH_MONO = 301;
  539. { SB Pro (r) stereo synthesizer }
  540. MM_CREATIVE_FMSYNTH_STEREO = 302;
  541. MM_CREATIVE_MIDI_AWE32 = 303;
  542. { SB Pro (r) aux (CD) }
  543. MM_CREATIVE_AUX_CD = 401;
  544. { SB Pro (r) aux (Line in ) }
  545. MM_CREATIVE_AUX_LINE = 402;
  546. { SB Pro (r) aux (mic) }
  547. MM_CREATIVE_AUX_MIC = 403;
  548. MM_CREATIVE_AUX_MASTER = 404;
  549. MM_CREATIVE_AUX_PCSPK = 405;
  550. MM_CREATIVE_AUX_WAVE = 406;
  551. MM_CREATIVE_AUX_MIDI = 407;
  552. MM_CREATIVE_SBPRO_MIXER = 408;
  553. MM_CREATIVE_SB16_MIXER = 409;
  554. { MM_MEDIAVISION product IDs }
  555. { Pro Audio Spectrum }
  556. MM_MEDIAVISION_PROAUDIO = $10;
  557. MM_PROAUD_MIDIOUT = MM_MEDIAVISION_PROAUDIO+1;
  558. MM_PROAUD_MIDIIN = MM_MEDIAVISION_PROAUDIO+2;
  559. MM_PROAUD_SYNTH = MM_MEDIAVISION_PROAUDIO+3;
  560. MM_PROAUD_WAVEOUT = MM_MEDIAVISION_PROAUDIO+4;
  561. MM_PROAUD_WAVEIN = MM_MEDIAVISION_PROAUDIO+5;
  562. MM_PROAUD_MIXER = MM_MEDIAVISION_PROAUDIO+6;
  563. MM_PROAUD_AUX = MM_MEDIAVISION_PROAUDIO+7;
  564. { Thunder Board }
  565. MM_MEDIAVISION_THUNDER = $20;
  566. MM_THUNDER_SYNTH = MM_MEDIAVISION_THUNDER+3;
  567. MM_THUNDER_WAVEOUT = MM_MEDIAVISION_THUNDER+4;
  568. MM_THUNDER_WAVEIN = MM_MEDIAVISION_THUNDER+5;
  569. MM_THUNDER_AUX = MM_MEDIAVISION_THUNDER+7;
  570. { Audio Port }
  571. MM_MEDIAVISION_TPORT = $40;
  572. MM_TPORT_WAVEOUT = MM_MEDIAVISION_TPORT+1;
  573. MM_TPORT_WAVEIN = MM_MEDIAVISION_TPORT+2;
  574. MM_TPORT_SYNTH = MM_MEDIAVISION_TPORT+3;
  575. { Pro Audio Spectrum Plus }
  576. MM_MEDIAVISION_PROAUDIO_PLUS = $50;
  577. MM_PROAUD_PLUS_MIDIOUT = MM_MEDIAVISION_PROAUDIO_PLUS+1;
  578. MM_PROAUD_PLUS_MIDIIN = MM_MEDIAVISION_PROAUDIO_PLUS+2;
  579. MM_PROAUD_PLUS_SYNTH = MM_MEDIAVISION_PROAUDIO_PLUS+3;
  580. MM_PROAUD_PLUS_WAVEOUT = MM_MEDIAVISION_PROAUDIO_PLUS+4;
  581. MM_PROAUD_PLUS_WAVEIN = MM_MEDIAVISION_PROAUDIO_PLUS+5;
  582. MM_PROAUD_PLUS_MIXER = MM_MEDIAVISION_PROAUDIO_PLUS+6;
  583. MM_PROAUD_PLUS_AUX = MM_MEDIAVISION_PROAUDIO_PLUS+7;
  584. { Pro Audio Spectrum 16 }
  585. MM_MEDIAVISION_PROAUDIO_16 = $60;
  586. MM_PROAUD_16_MIDIOUT = MM_MEDIAVISION_PROAUDIO_16+1;
  587. MM_PROAUD_16_MIDIIN = MM_MEDIAVISION_PROAUDIO_16+2;
  588. MM_PROAUD_16_SYNTH = MM_MEDIAVISION_PROAUDIO_16+3;
  589. MM_PROAUD_16_WAVEOUT = MM_MEDIAVISION_PROAUDIO_16+4;
  590. MM_PROAUD_16_WAVEIN = MM_MEDIAVISION_PROAUDIO_16+5;
  591. MM_PROAUD_16_MIXER = MM_MEDIAVISION_PROAUDIO_16+6;
  592. MM_PROAUD_16_AUX = MM_MEDIAVISION_PROAUDIO_16+7;
  593. { Pro Audio Studio 16 }
  594. MM_MEDIAVISION_PROSTUDIO_16 = $60;
  595. MM_STUDIO_16_MIDIOUT = MM_MEDIAVISION_PROSTUDIO_16+1;
  596. MM_STUDIO_16_MIDIIN = MM_MEDIAVISION_PROSTUDIO_16+2;
  597. MM_STUDIO_16_SYNTH = MM_MEDIAVISION_PROSTUDIO_16+3;
  598. MM_STUDIO_16_WAVEOUT = MM_MEDIAVISION_PROSTUDIO_16+4;
  599. MM_STUDIO_16_WAVEIN = MM_MEDIAVISION_PROSTUDIO_16+5;
  600. MM_STUDIO_16_MIXER = MM_MEDIAVISION_PROSTUDIO_16+6;
  601. MM_STUDIO_16_AUX = MM_MEDIAVISION_PROSTUDIO_16+7;
  602. { CDPC }
  603. MM_MEDIAVISION_CDPC = $70;
  604. MM_CDPC_MIDIOUT = MM_MEDIAVISION_CDPC+1;
  605. MM_CDPC_MIDIIN = MM_MEDIAVISION_CDPC+2;
  606. MM_CDPC_SYNTH = MM_MEDIAVISION_CDPC+3;
  607. MM_CDPC_WAVEOUT = MM_MEDIAVISION_CDPC+4;
  608. MM_CDPC_WAVEIN = MM_MEDIAVISION_CDPC+5;
  609. MM_CDPC_MIXER = MM_MEDIAVISION_CDPC+6;
  610. MM_CDPC_AUX = MM_MEDIAVISION_CDPC+7;
  611. { Opus MV 1208 Chipsent }
  612. MM_MEDIAVISION_OPUS1208 = $80;
  613. MM_OPUS401_MIDIOUT = MM_MEDIAVISION_OPUS1208+1;
  614. MM_OPUS401_MIDIIN = MM_MEDIAVISION_OPUS1208+2;
  615. MM_OPUS1208_SYNTH = MM_MEDIAVISION_OPUS1208+3;
  616. MM_OPUS1208_WAVEOUT = MM_MEDIAVISION_OPUS1208+4;
  617. MM_OPUS1208_WAVEIN = MM_MEDIAVISION_OPUS1208+5;
  618. MM_OPUS1208_MIXER = MM_MEDIAVISION_OPUS1208+6;
  619. MM_OPUS1208_AUX = MM_MEDIAVISION_OPUS1208+7;
  620. { Opus MV 1216 chipset }
  621. MM_MEDIAVISION_OPUS1216 = $90;
  622. MM_OPUS1216_MIDIOUT = MM_MEDIAVISION_OPUS1216+1;
  623. MM_OPUS1216_MIDIIN = MM_MEDIAVISION_OPUS1216+2;
  624. MM_OPUS1216_SYNTH = MM_MEDIAVISION_OPUS1216+3;
  625. MM_OPUS1216_WAVEOUT = MM_MEDIAVISION_OPUS1216+4;
  626. MM_OPUS1216_WAVEIN = MM_MEDIAVISION_OPUS1216+5;
  627. MM_OPUS1216_MIXER = MM_MEDIAVISION_OPUS1216+6;
  628. MM_OPUS1216_AUX = MM_MEDIAVISION_OPUS1216+7;
  629. { MM_ARTISOFT product IDs }
  630. { Artisoft sounding Board waveform input }
  631. MM_ARTISOFT_SBWAVEIN = 1;
  632. { Artisoft sounding Board waveform output }
  633. MM_ARTISOFT_SBWAVEOUT = 2;
  634. { MM_IBM product IDs }
  635. { IBM M-Motion Auxiliary Device }
  636. MM_MMOTION_WAVEAUX = 1;
  637. { IBM M-Motion Waveform output }
  638. MM_MMOTION_WAVEOUT = 2;
  639. { IBM M-Motion Waveform Input }
  640. MM_MMOTION_WAVEIN = 3;
  641. { IBM waveform input }
  642. MM_IBM_PCMCIA_WAVEIN = 11;
  643. { IBM Waveform output }
  644. MM_IBM_PCMCIA_WAVEOUT = 12;
  645. { IBM Midi Synthesis }
  646. MM_IBM_PCMCIA_SYNTH = 13;
  647. { IBM external MIDI in }
  648. MM_IBM_PCMCIA_MIDIIN = 14;
  649. { IBM external MIDI out }
  650. MM_IBM_PCMCIA_MIDIOUT = 15;
  651. { IBM auxiliary control }
  652. MM_IBM_PCMCIA_AUX = 16;
  653. MM_IBM_THINKPAD200 = 17;
  654. MM_IBM_MWAVE_WAVEIN = 18;
  655. MM_IBM_MWAVE_WAVEOUT = 19;
  656. MM_IBM_MWAVE_MIXER = 20;
  657. MM_IBM_MWAVE_MIDIIN = 21;
  658. MM_IBM_MWAVE_MIDIOUT = 22;
  659. MM_IBM_MWAVE_AUX = 23;
  660. MM_IBM_WC_MIDIOUT = 30;
  661. MM_IBM_WC_WAVEOUT = 31;
  662. MM_IBM_WC_MIXEROUT = 33;
  663. { MM_VOCALTEC product IDs }
  664. MM_VOCALTEC_WAVEOUT = 1;
  665. MM_VOCALTEC_WAVEIN = 2;
  666. { MM_ROLAND product IDs }
  667. { MM_ROLAND_RAP10 }
  668. MM_ROLAND_RAP10_MIDIOUT = 10;
  669. { MM_ROLAND_RAP10 }
  670. MM_ROLAND_RAP10_MIDIIN = 11;
  671. { MM_ROLAND_RAP10 }
  672. MM_ROLAND_RAP10_SYNTH = 12;
  673. { MM_ROLAND_RAP10 }
  674. MM_ROLAND_RAP10_WAVEOUT = 13;
  675. { MM_ROLAND_RAP10 }
  676. MM_ROLAND_RAP10_WAVEIN = 14;
  677. MM_ROLAND_MPU401_MIDIOUT = 15;
  678. MM_ROLAND_MPU401_MIDIIN = 16;
  679. MM_ROLAND_SMPU_MIDIOUTA = 17;
  680. MM_ROLAND_SMPU_MIDIOUTB = 18;
  681. MM_ROLAND_SMPU_MIDIINA = 19;
  682. MM_ROLAND_SMPU_MIDIINB = 20;
  683. MM_ROLAND_SC7_MIDIOUT = 21;
  684. MM_ROLAND_SC7_MIDIIN = 22;
  685. MM_ROLAND_SERIAL_MIDIOUT = 23;
  686. MM_ROLAND_SERIAL_MIDIIN = 24;
  687. MM_ROLAND_SCP_MIDIOUT = 38;
  688. MM_ROLAND_SCP_MIDIIN = 39;
  689. MM_ROLAND_SCP_WAVEOUT = 40;
  690. MM_ROLAND_SCP_WAVEIN = 41;
  691. MM_ROLAND_SCP_MIXER = 42;
  692. MM_ROLAND_SCP_AUX = 48;
  693. { MM_DSP_SOLUTIONS product IDs }
  694. MM_DSP_SOLUTIONS_WAVEOUT = 1;
  695. MM_DSP_SOLUTIONS_WAVEIN = 2;
  696. MM_DSP_SOLUTIONS_SYNTH = 3;
  697. MM_DSP_SOLUTIONS_AUX = 4;
  698. { MM_WANGLABS product IDs }
  699. { Input audio wave on CPU board models: Exec 4010, 4030, 3450; PC 251/25c, pc 461/25s , pc 461/33c }
  700. MM_WANGLABS_WAVEIN1 = 1;
  701. MM_WANGLABS_WAVEOUT1 = 2;
  702. { MM_TANDY product IDs }
  703. MM_TANDY_VISWAVEIN = 1;
  704. MM_TANDY_VISWAVEOUT = 2;
  705. MM_TANDY_VISBIOSSYNTH = 3;
  706. MM_TANDY_SENS_MMAWAVEIN = 4;
  707. MM_TANDY_SENS_MMAWAVEOUT = 5;
  708. MM_TANDY_SENS_MMAMIDIIN = 6;
  709. MM_TANDY_SENS_MMAMIDIOUT = 7;
  710. MM_TANDY_SENS_VISWAVEOUT = 8;
  711. MM_TANDY_PSSJWAVEIN = 9;
  712. MM_TANDY_PSSJWAVEOUT = 10;
  713. { product IDs }
  714. { HID2 WaveAudio Driver }
  715. MM_INTELOPD_WAVEIN = 1;
  716. { HID2 }
  717. MM_INTELOPD_WAVEOUT = 101;
  718. { HID2 for mixing }
  719. MM_INTELOPD_AUX = 401;
  720. MM_INTEL_NSPMODEMLINE = 501;
  721. { MM_INTERACTIVE product IDs }
  722. MM_INTERACTIVE_WAVEIN = $45;
  723. MM_INTERACTIVE_WAVEOUT = $45;
  724. { MM_YAMAHA product IDs }
  725. MM_YAMAHA_GSS_SYNTH = $01;
  726. MM_YAMAHA_GSS_WAVEOUT = $02;
  727. MM_YAMAHA_GSS_WAVEIN = $03;
  728. MM_YAMAHA_GSS_MIDIOUT = $04;
  729. MM_YAMAHA_GSS_MIDIIN = $05;
  730. MM_YAMAHA_GSS_AUX = $06;
  731. MM_YAMAHA_SERIAL_MIDIOUT = $07;
  732. MM_YAMAHA_SERIAL_MIDIIN = $08;
  733. MM_YAMAHA_OPL3SA_WAVEOUT = $10;
  734. MM_YAMAHA_OPL3SA_WAVEIN = $11;
  735. MM_YAMAHA_OPL3SA_FMSYNTH = $12;
  736. MM_YAMAHA_OPL3SA_YSYNTH = $13;
  737. MM_YAMAHA_OPL3SA_MIDIOUT = $14;
  738. MM_YAMAHA_OPL3SA_MIDIIN = $15;
  739. MM_YAMAHA_OPL3SA_MIXER = $17;
  740. MM_YAMAHA_OPL3SA_JOYSTICK = $18;
  741. { MM_EVEREX product IDs }
  742. MM_EVEREX_CARRIER = $01;
  743. { MM_ECHO product IDs }
  744. MM_ECHO_SYNTH = $01;
  745. MM_ECHO_WAVEOUT = $02;
  746. MM_ECHO_WAVEIN = $03;
  747. MM_ECHO_MIDIOUT = $04;
  748. MM_ECHO_MIDIIN = $05;
  749. MM_ECHO_AUX = $06;
  750. { MM_SIERRA product IDs }
  751. MM_SIERRA_ARIA_MIDIOUT = $14;
  752. MM_SIERRA_ARIA_MIDIIN = $15;
  753. MM_SIERRA_ARIA_SYNTH = $16;
  754. MM_SIERRA_ARIA_WAVEOUT = $17;
  755. MM_SIERRA_ARIA_WAVEIN = $18;
  756. MM_SIERRA_ARIA_AUX = $19;
  757. MM_SIERRA_ARIA_AUX2 = $20;
  758. MM_SIERRA_QUARTET_WAVEIN = $50;
  759. MM_SIERRA_QUARTET_WAVEOUT = $51;
  760. MM_SIERRA_QUARTET_MIDIIN = $52;
  761. MM_SIERRA_QUARTET_MIDIOUT = $53;
  762. MM_SIERRA_QUARTET_SYNTH = $54;
  763. MM_SIERRA_QUARTET_AUX_CD = $55;
  764. MM_SIERRA_QUARTET_AUX_LINE = $56;
  765. MM_SIERRA_QUARTET_AUX_MODEM = $57;
  766. MM_SIERRA_QUARTET_MIXER = $58;
  767. { MM_CAT product IDs }
  768. MM_CAT_WAVEOUT = 1;
  769. { MM_DSP_GROUP product IDs }
  770. MM_DSP_GROUP_TRUESPEECH = $01;
  771. { MM_MELABS product IDs }
  772. MM_MELABS_MIDI2GO = $01;
  773. { MM_ESS product IDs }
  774. MM_ESS_AMWAVEOUT = $01;
  775. MM_ESS_AMWAVEIN = $02;
  776. MM_ESS_AMAUX = $03;
  777. MM_ESS_AMSYNTH = $04;
  778. MM_ESS_AMMIDIOUT = $05;
  779. MM_ESS_AMMIDIIN = $06;
  780. MM_ESS_MIXER = $07;
  781. MM_ESS_AUX_CD = $08;
  782. MM_ESS_MPU401_MIDIOUT = $09;
  783. MM_ESS_MPU401_MIDIIN = $0A;
  784. MM_ESS_ES488_WAVEOUT = $10;
  785. MM_ESS_ES488_WAVEIN = $11;
  786. MM_ESS_ES488_MIXER = $12;
  787. MM_ESS_ES688_WAVEOUT = $13;
  788. MM_ESS_ES688_WAVEIN = $14;
  789. MM_ESS_ES688_MIXER = $15;
  790. MM_ESS_ES1488_WAVEOUT = $16;
  791. MM_ESS_ES1488_WAVEIN = $17;
  792. MM_ESS_ES1488_MIXER = $18;
  793. MM_ESS_ES1688_WAVEOUT = $19;
  794. MM_ESS_ES1688_WAVEIN = $1A;
  795. MM_ESS_ES1688_MIXER = $1B;
  796. MM_ESS_ES1788_WAVEOUT = $1C;
  797. MM_ESS_ES1788_WAVEIN = $1D;
  798. MM_ESS_ES1788_MIXER = $1E;
  799. MM_ESS_ES1888_WAVEOUT = $1F;
  800. MM_ESS_ES1888_WAVEIN = $20;
  801. MM_ESS_ES1888_MIXER = $21;
  802. MM_ESS_ES1868_WAVEOUT = $22;
  803. MM_ESS_ES1868_WAVEIN = $23;
  804. MM_ESS_ES1868_MIXER = $24;
  805. MM_ESS_ES1878_WAVEOUT = $25;
  806. MM_ESS_ES1878_WAVEIN = $26;
  807. MM_ESS_ES1878_MIXER = $27;
  808. { product IDs }
  809. MM_EPS_FMSND = 1;
  810. { MM_TRUEVISION product IDs }
  811. MM_TRUEVISION_WAVEIN1 = 1;
  812. MM_TRUEVISION_WAVEOUT1 = 2;
  813. { MM_AZTECH product IDs }
  814. MM_AZTECH_MIDIOUT = 3;
  815. MM_AZTECH_MIDIIN = 4;
  816. MM_AZTECH_WAVEIN = 17;
  817. MM_AZTECH_WAVEOUT = 18;
  818. MM_AZTECH_FMSYNTH = 20;
  819. MM_AZTECH_MIXER = 21;
  820. MM_AZTECH_PRO16_WAVEIN = 33;
  821. MM_AZTECH_PRO16_WAVEOUT = 34;
  822. MM_AZTECH_PRO16_FMSYNTH = 38;
  823. MM_AZTECH_DSP16_WAVEIN = 65;
  824. MM_AZTECH_DSP16_WAVEOUT = 66;
  825. MM_AZTECH_DSP16_FMSYNTH = 68;
  826. MM_AZTECH_DSP16_WAVESYNTH = 70;
  827. MM_AZTECH_NOVA16_WAVEIN = 71;
  828. MM_AZTECH_NOVA16_WAVEOUT = 72;
  829. MM_AZTECH_NOVA16_MIXER = 73;
  830. MM_AZTECH_WASH16_WAVEIN = 74;
  831. MM_AZTECH_WASH16_WAVEOUT = 75;
  832. MM_AZTECH_WASH16_MIXER = 76;
  833. MM_AZTECH_AUX_CD = 401;
  834. MM_AZTECH_AUX_LINE = 402;
  835. MM_AZTECH_AUX_MIC = 403;
  836. MM_AZTECH_AUX = 404;
  837. { MM_VIDEOLOGIC product IDs }
  838. MM_VIDEOLOGIC_MSWAVEIN = 1;
  839. MM_VIDEOLOGIC_MSWAVEOUT = 2;
  840. { MM_KORG product IDs }
  841. MM_KORG_PCIF_MIDIOUT = 1;
  842. MM_KORG_PCIF_MIDIIN = 2;
  843. { MM_APT product IDs }
  844. MM_APT_ACE100CD = 1;
  845. { MM_ICS product IDs }
  846. { MS WSS compatible card and driver }
  847. MM_ICS_WAVEDECK_WAVEOUT = 1;
  848. MM_ICS_WAVEDECK_WAVEIN = 2;
  849. MM_ICS_WAVEDECK_MIXER = 3;
  850. MM_ICS_WAVEDECK_AUX = 4;
  851. MM_ICS_WAVEDECK_SYNTH = 5;
  852. MM_ICS_WAVEDEC_SB_WAVEOUT = 6;
  853. MM_ICS_WAVEDEC_SB_WAVEIN = 7;
  854. MM_ICS_WAVEDEC_SB_FM_MIDIOUT = 8;
  855. MM_ICS_WAVEDEC_SB_MPU401_MIDIOUT = 9;
  856. MM_ICS_WAVEDEC_SB_MPU401_MIDIIN = 10;
  857. MM_ICS_WAVEDEC_SB_MIXER = 11;
  858. MM_ICS_WAVEDEC_SB_AUX = 12;
  859. MM_ICS_2115_LITE_MIDIOUT = 13;
  860. MM_ICS_2120_LITE_MIDIOUT = 14;
  861. { MM_ITERATEDSYS product IDs }
  862. MM_ITERATEDSYS_FUFCODEC = 1;
  863. { MM_METHEUS product IDs }
  864. MM_METHEUS_ZIPPER = 1;
  865. { MM_WINNOV product IDs }
  866. MM_WINNOV_CAVIAR_WAVEIN = 1;
  867. MM_WINNOV_CAVIAR_WAVEOUT = 2;
  868. MM_WINNOV_CAVIAR_VIDC = 3;
  869. { Fourcc is CHAM }
  870. MM_WINNOV_CAVIAR_CHAMPAGNE = 4;
  871. { Fourcc is YUV8 }
  872. MM_WINNOV_CAVIAR_YUV8 = 5;
  873. { MM_NCR product IDs }
  874. MM_NCR_BA_WAVEIN = 1;
  875. MM_NCR_BA_WAVEOUT = 2;
  876. MM_NCR_BA_SYNTH = 3;
  877. MM_NCR_BA_AUX = 4;
  878. MM_NCR_BA_MIXER = 5;
  879. { MM_VITEC product IDs }
  880. MM_VITEC_VMAKER = 1;
  881. MM_VITEC_VMPRO = 2;
  882. { MM_MOSCOM product IDs }
  883. { Four Port Voice Processing / Voice Recognition Board }
  884. MM_MOSCOM_VPC2400_IN = 1;
  885. { VPC2400 }
  886. MM_MOSCOM_VPC2400_OUT = 2;
  887. { MM_SILICONSOFT product IDs }
  888. { Waveform in , high sample rate }
  889. MM_SILICONSOFT_SC1_WAVEIN = 1;
  890. { Waveform out , high sample rate }
  891. MM_SILICONSOFT_SC1_WAVEOUT = 2;
  892. { Waveform in 2 channels, high sample rate }
  893. MM_SILICONSOFT_SC2_WAVEIN = 3;
  894. { Waveform out 2 channels, high sample rate }
  895. MM_SILICONSOFT_SC2_WAVEOUT = 4;
  896. { Waveform out, self powered, efficient }
  897. MM_SILICONSOFT_SOUNDJR2_WAVEOUT = 5;
  898. { Waveform in, self powered, efficient }
  899. MM_SILICONSOFT_SOUNDJR2PR_WAVEIN = 6;
  900. { Waveform out 2 channels, self powered, efficient }
  901. MM_SILICONSOFT_SOUNDJR2PR_WAVEOUT = 7;
  902. { Waveform in 2 channels, self powered, efficient }
  903. MM_SILICONSOFT_SOUNDJR3_WAVEOUT = 8;
  904. { MM_OLIVETTI product IDs }
  905. MM_OLIVETTI_WAVEIN = 1;
  906. MM_OLIVETTI_WAVEOUT = 2;
  907. MM_OLIVETTI_MIXER = 3;
  908. MM_OLIVETTI_AUX = 4;
  909. MM_OLIVETTI_MIDIIN = 5;
  910. MM_OLIVETTI_MIDIOUT = 6;
  911. MM_OLIVETTI_SYNTH = 7;
  912. MM_OLIVETTI_JOYSTICK = 8;
  913. MM_OLIVETTI_ACM_GSM = 9;
  914. MM_OLIVETTI_ACM_ADPCM = 10;
  915. MM_OLIVETTI_ACM_CELP = 11;
  916. MM_OLIVETTI_ACM_SBC = 12;
  917. MM_OLIVETTI_ACM_OPR = 13;
  918. { MM_IOMAGIC product IDs }
  919. { The I/O Magic Tempo is a PCMCIA Type 2 audio card featuring wave audio
  920. record and playback, FM synthesizer, and MIDI output. The I/O Magic
  921. Tempo WaveOut device supports mono and stereo PCM playback at rates
  922. of 7350, 11025, 22050, and 44100 samples }
  923. MM_IOMAGIC_TEMPO_WAVEOUT = 1;
  924. MM_IOMAGIC_TEMPO_WAVEIN = 2;
  925. MM_IOMAGIC_TEMPO_SYNTH = 3;
  926. MM_IOMAGIC_TEMPO_MIDIOUT = 4;
  927. MM_IOMAGIC_TEMPO_MXDOUT = 5;
  928. MM_IOMAGIC_TEMPO_AUXOUT = 6;
  929. { MM_MATSUSHITA product IDs }
  930. MM_MATSUSHITA_WAVEIN = 1;
  931. MM_MATSUSHITA_WAVEOUT = 2;
  932. MM_MATSUSHITA_FMSYNTH_STEREO = 3;
  933. MM_MATSUSHITA_MIXER = 4;
  934. MM_MATSUSHITA_AUX = 5;
  935. { MM_NEWMEDIA product IDs }
  936. { WSS Compatible sound card. }
  937. MM_NEWMEDIA_WAVJAMMER = 1;
  938. { MM_LYRRUS product IDs }
  939. { Bridge is a MIDI driver that allows the the Lyrrus G-VOX hardware to
  940. communicate with Windows base transcription and sequencer applications.
  941. The driver also provides a mechanism for the user to configure the system
  942. to their personal playing style. }
  943. MM_LYRRUS_BRIDGE_GUITAR = 1;
  944. { MM_OPTI product IDs }
  945. MM_OPTI_M16_FMSYNTH_STEREO = $0001;
  946. MM_OPTI_M16_MIDIIN = $0002;
  947. MM_OPTI_M16_MIDIOUT = $0003;
  948. MM_OPTI_M16_WAVEIN = $0004;
  949. MM_OPTI_M16_WAVEOUT = $0005;
  950. MM_OPTI_M16_MIXER = $0006;
  951. MM_OPTI_M16_AUX = $0007;
  952. MM_OPTI_P16_FMSYNTH_STEREO = $0010;
  953. MM_OPTI_P16_MIDIIN = $0011;
  954. MM_OPTI_P16_MIDIOUT = $0012;
  955. MM_OPTI_P16_WAVEIN = $0013;
  956. MM_OPTI_P16_WAVEOUT = $0014;
  957. MM_OPTI_P16_MIXER = $0015;
  958. MM_OPTI_P16_AUX = $0016;
  959. MM_OPTI_M32_WAVEIN = $0020;
  960. MM_OPTI_M32_WAVEOUT = $0021;
  961. MM_OPTI_M32_MIDIIN = $0022;
  962. MM_OPTI_M32_MIDIOUT = $0023;
  963. MM_OPTI_M32_SYNTH_STEREO = $0024;
  964. MM_OPTI_M32_MIXER = $0025;
  965. MM_OPTI_M32_AUX = $0026;
  966. { Product IDs for MM_ADDX - ADDX }
  967. { MM_ADDX_PCTV_DIGITALMIX }
  968. MM_ADDX_PCTV_DIGITALMIX = 1;
  969. { MM_ADDX_PCTV_WAVEIN }
  970. MM_ADDX_PCTV_WAVEIN = 2;
  971. { MM_ADDX_PCTV_WAVEOUT }
  972. MM_ADDX_PCTV_WAVEOUT = 3;
  973. { MM_ADDX_PCTV_MIXER }
  974. MM_ADDX_PCTV_MIXER = 4;
  975. { MM_ADDX_PCTV_AUX_CD }
  976. MM_ADDX_PCTV_AUX_CD = 5;
  977. { MM_ADDX_PCTV_AUX_LINE }
  978. MM_ADDX_PCTV_AUX_LINE = 6;
  979. { Product IDs for MM_AHEAD - Ahead, Inc. }
  980. MM_AHEAD_MULTISOUND = 1;
  981. MM_AHEAD_SOUNDBLASTER = 2;
  982. MM_AHEAD_PROAUDIO = 3;
  983. MM_AHEAD_GENERIC = 4;
  984. { Product IDs for MM_AMD - AMD }
  985. MM_AMD_INTERWAVE_WAVEIN = 1;
  986. MM_AMD_INTERWAVE_WAVEOUT = 2;
  987. MM_AMD_INTERWAVE_SYNTH = 3;
  988. MM_AMD_INTERWAVE_MIXER1 = 4;
  989. MM_AMD_INTERWAVE_MIXER2 = 5;
  990. MM_AMD_INTERWAVE_JOYSTICK = 6;
  991. MM_AMD_INTERWAVE_EX_CD = 7;
  992. MM_AMD_INTERWAVE_MIDIIN = 8;
  993. MM_AMD_INTERWAVE_MIDIOUT = 9;
  994. MM_AMD_INTERWAVE_AUX1 = 10;
  995. MM_AMD_INTERWAVE_AUX2 = 11;
  996. MM_AMD_INTERWAVE_AUX_MIC = 12;
  997. MM_AMD_INTERWAVE_AUX_CD = 13;
  998. MM_AMD_INTERWAVE_MONO_IN = 14;
  999. MM_AMD_INTERWAVE_MONO_OUT = 15;
  1000. MM_AMD_INTERWAVE_EX_TELEPHONY = 16;
  1001. MM_AMD_INTERWAVE_WAVEOUT_BASE = 17;
  1002. MM_AMD_INTERWAVE_WAVEOUT_TREBLE = 18;
  1003. MM_AMD_INTERWAVE_STEREO_ENHANCED = 19;
  1004. { Product IDs for MM_AST - AST Research Inc. }
  1005. MM_AST_MODEMWAVE_WAVEIN = 13;
  1006. MM_AST_MODEMWAVE_WAVEOUT = 14;
  1007. { Product IDs for MM_BROOKTREE - Brooktree Corporation }
  1008. { Brooktree PCM Wave Audio In }
  1009. MM_BTV_WAVEIN = 1;
  1010. { Brooktree PCM Wave Audio Out }
  1011. MM_BTV_WAVEOUT = 2;
  1012. { Brooktree MIDI In }
  1013. MM_BTV_MIDIIN = 3;
  1014. { Brooktree MIDI out }
  1015. MM_BTV_MIDIOUT = 4;
  1016. { Brooktree MIDI FM synth }
  1017. MM_BTV_MIDISYNTH = 5;
  1018. { Brooktree Line Input }
  1019. MM_BTV_AUX_LINE = 6;
  1020. { Brooktree Microphone Input }
  1021. MM_BTV_AUX_MIC = 7;
  1022. { Brooktree CD Input }
  1023. MM_BTV_AUX_CD = 8;
  1024. { Brooktree PCM Wave in with subcode information }
  1025. MM_BTV_DIGITALIN = 9;
  1026. { Brooktree PCM Wave out with subcode information }
  1027. MM_BTV_DIGITALOUT = 10;
  1028. { Brooktree WaveStream }
  1029. MM_BTV_MIDIWAVESTREAM = 11;
  1030. { Brooktree WSS Mixer driver }
  1031. MM_BTV_MIXER = 12;
  1032. { Product IDs for MM_CANAM - CANAM Computers }
  1033. MM_CANAM_CBXWAVEOUT = 1;
  1034. MM_CANAM_CBXWAVEIN = 2;
  1035. { Product IDs for MM_CASIO - Casio Computer Co., LTD }
  1036. { wp150 }
  1037. MM_CASIO_WP150_MIDIOUT = 1;
  1038. MM_CASIO_WP150_MIDIIN = 2;
  1039. { Product IDs for MM_COMPAQ - Compaq Computer Corp. }
  1040. MM_COMPAQ_BB_WAVEIN = 1;
  1041. MM_COMPAQ_BB_WAVEOUT = 2;
  1042. MM_COMPAQ_BB_WAVEAUX = 3;
  1043. { Product IDs for MM_COREDYNAMICS - Core Dynamics }
  1044. { DynaMax Hi-Rez }
  1045. MM_COREDYNAMICS_DYNAMIXHR = 1;
  1046. { DynaSonix }
  1047. MM_COREDYNAMICS_DYNASONIX_SYNTH = 2;
  1048. MM_COREDYNAMICS_DYNASONIX_MIDI_IN = 3;
  1049. MM_COREDYNAMICS_DYNASONIX_MIDI_OUT = 4;
  1050. MM_COREDYNAMICS_DYNASONIX_WAVE_IN = 5;
  1051. MM_COREDYNAMICS_DYNASONIX_WAVE_OUT = 6;
  1052. MM_COREDYNAMICS_DYNASONIX_AUDIO_IN = 7;
  1053. MM_COREDYNAMICS_DYNASONIX_AUDIO_OUT = 8;
  1054. { DynaGrfx }
  1055. MM_COREDYNAMICS_DYNAGRAFX_VGA = 9;
  1056. MM_COREDYNAMICS_DYNAGRAFX_WAVE_IN = 10;
  1057. MM_COREDYNAMICS_DYNAGRAFX_WAVE_OUT = 11;
  1058. { Product IDs for MM_CRYSTAL - Crystal Semiconductor Corporation }
  1059. MM_CRYSTAL_CS4232_WAVEIN = 1;
  1060. MM_CRYSTAL_CS4232_WAVEOUT = 2;
  1061. MM_CRYSTAL_CS4232_WAVEMIXER = 3;
  1062. MM_CRYSTAL_CS4232_WAVEAUX_AUX1 = 4;
  1063. MM_CRYSTAL_CS4232_WAVEAUX_AUX2 = 5;
  1064. MM_CRYSTAL_CS4232_WAVEAUX_LINE = 6;
  1065. MM_CRYSTAL_CS4232_WAVEAUX_MONO = 7;
  1066. MM_CRYSTAL_CS4232_WAVEAUX_MASTER = 8;
  1067. MM_CRYSTAL_CS4232_MIDIIN = 9;
  1068. MM_CRYSTAL_CS4232_MIDIOUT = 10;
  1069. MM_CRYSTAL_CS4232_INPUTGAIN_AUX1 = 13;
  1070. MM_CRYSTAL_CS4232_INPUTGAIN_LOOP = 14;
  1071. { Product IDs for MM_DDD - Danka Data Devices }
  1072. MM_DDD_MIDILINK_MIDIIN = 1;
  1073. MM_DDD_MIDILINK_MIDIOUT = 2;
  1074. { Product IDs for MM_DIACOUSTICS - DiAcoustics, Inc. }
  1075. { Drum Action }
  1076. MM_DIACOUSTICS_DRUM_ACTION = 1;
  1077. { Product IDs for MM_DIAMONDMM - Diamond Multimedia }
  1078. { Freedom Audio }
  1079. MM_DIMD_PLATFORM = 0;
  1080. MM_DIMD_DIRSOUND = 1;
  1081. MM_DIMD_VIRTMPU = 2;
  1082. MM_DIMD_VIRTSB = 3;
  1083. MM_DIMD_VIRTJOY = 4;
  1084. MM_DIMD_WAVEIN = 5;
  1085. MM_DIMD_WAVEOUT = 6;
  1086. MM_DIMD_MIDIIN = 7;
  1087. MM_DIMD_MIDIOUT = 8;
  1088. MM_DIMD_AUX_LINE = 9;
  1089. MM_DIMD_MIXER = 10;
  1090. { Product IDs for MM_DIGITAL_AUDIO_LABS - Digital Audio Labs, Inc. }
  1091. MM_DIGITAL_AUDIO_LABS_V8 = $10;
  1092. MM_DIGITAL_AUDIO_LABS_CPRO = $11;
  1093. { Product IDs for MM_DIGITAL - Digital Equipment Corporation }
  1094. { Digital Audio Video Compression Board }
  1095. MM_DIGITAL_AV320_WAVEIN = 1;
  1096. { Digital Audio Video Compression Board }
  1097. MM_DIGITAL_AV320_WAVEOUT = 2;
  1098. { Product IDs for MM_ECS - Electronic Courseware Systems, Inc. }
  1099. MM_ECS_AADF_MIDI_IN = 10;
  1100. MM_ECS_AADF_MIDI_OUT = 11;
  1101. MM_ECS_AADF_WAVE2MIDI_IN = 12;
  1102. { Product IDs for MM_ENSONIQ - ENSONIQ Corporation }
  1103. { ENSONIQ Soundscape }
  1104. MM_ENSONIQ_SOUNDSCAPE = $10;
  1105. MM_SOUNDSCAPE_WAVEOUT = MM_ENSONIQ_SOUNDSCAPE+1;
  1106. MM_SOUNDSCAPE_WAVEOUT_AUX = MM_ENSONIQ_SOUNDSCAPE+2;
  1107. MM_SOUNDSCAPE_WAVEIN = MM_ENSONIQ_SOUNDSCAPE+3;
  1108. MM_SOUNDSCAPE_MIDIOUT = MM_ENSONIQ_SOUNDSCAPE+4;
  1109. MM_SOUNDSCAPE_MIDIIN = MM_ENSONIQ_SOUNDSCAPE+5;
  1110. MM_SOUNDSCAPE_SYNTH = MM_ENSONIQ_SOUNDSCAPE+6;
  1111. MM_SOUNDSCAPE_MIXER = MM_ENSONIQ_SOUNDSCAPE+7;
  1112. MM_SOUNDSCAPE_AUX = MM_ENSONIQ_SOUNDSCAPE+8;
  1113. { Product IDs for MM_FRONTIER - Frontier Design Group LLC }
  1114. { WaveCenter }
  1115. MM_FRONTIER_WAVECENTER_MIDIIN = 1;
  1116. MM_FRONTIER_WAVECENTER_MIDIOUT = 2;
  1117. MM_FRONTIER_WAVECENTER_WAVEIN = 3;
  1118. MM_FRONTIER_WAVECENTER_WAVEOUT = 4;
  1119. { Product IDs for MM_GADGETLABS - Gadget Labs LLC }
  1120. MM_GADGETLABS_WAVE44_WAVEIN = 1;
  1121. MM_GADGETLABS_WAVE44_WAVEOUT = 2;
  1122. MM_GADGETLABS_WAVE42_WAVEIN = 3;
  1123. MM_GADGETLABS_WAVE42_WAVEOUT = 4;
  1124. MM_GADGETLABS_WAVE4_MIDIIN = 5;
  1125. MM_GADGETLABS_WAVE4_MIDIOUT = 6;
  1126. { Product IDs for MM_KAY_ELEMETRICS - Kay Elemetrics, Inc. }
  1127. MM_KAY_ELEMETRICS_CSL = $4300;
  1128. MM_KAY_ELEMETRICS_CSL_DAT = $4308;
  1129. MM_KAY_ELEMETRICS_CSL_4CHANNEL = $4309;
  1130. { Product IDs for MM_LERNOUT_AND_HAUSPIE - Lernout & Hauspie }
  1131. MM_LERNOUT_ANDHAUSPIE_LHCODECACM = 1;
  1132. { Product IDs for MM_MPTUS - M.P. Technologies, Inc. }
  1133. { Sound Pallette }
  1134. MM_MPTUS_SPWAVEOUT = 1;
  1135. { Product IDs for MM_MOTU - Mark of the Unicorn }
  1136. MM_MOTU_MTP_MIDIOUT_ALL = 100;
  1137. MM_MOTU_MTP_MIDIIN_1 = 101;
  1138. MM_MOTU_MTP_MIDIOUT_1 = 101;
  1139. MM_MOTU_MTP_MIDIIN_2 = 102;
  1140. MM_MOTU_MTP_MIDIOUT_2 = 102;
  1141. MM_MOTU_MTP_MIDIIN_3 = 103;
  1142. MM_MOTU_MTP_MIDIOUT_3 = 103;
  1143. MM_MOTU_MTP_MIDIIN_4 = 104;
  1144. MM_MOTU_MTP_MIDIOUT_4 = 104;
  1145. MM_MOTU_MTP_MIDIIN_5 = 105;
  1146. MM_MOTU_MTP_MIDIOUT_5 = 105;
  1147. MM_MOTU_MTP_MIDIIN_6 = 106;
  1148. MM_MOTU_MTP_MIDIOUT_6 = 106;
  1149. MM_MOTU_MTP_MIDIIN_7 = 107;
  1150. MM_MOTU_MTP_MIDIOUT_7 = 107;
  1151. MM_MOTU_MTP_MIDIIN_8 = 108;
  1152. MM_MOTU_MTP_MIDIOUT_8 = 108;
  1153. MM_MOTU_MTPII_MIDIOUT_ALL = 200;
  1154. MM_MOTU_MTPII_MIDIIN_SYNC = 200;
  1155. MM_MOTU_MTPII_MIDIIN_1 = 201;
  1156. MM_MOTU_MTPII_MIDIOUT_1 = 201;
  1157. MM_MOTU_MTPII_MIDIIN_2 = 202;
  1158. MM_MOTU_MTPII_MIDIOUT_2 = 202;
  1159. MM_MOTU_MTPII_MIDIIN_3 = 203;
  1160. MM_MOTU_MTPII_MIDIOUT_3 = 203;
  1161. MM_MOTU_MTPII_MIDIIN_4 = 204;
  1162. MM_MOTU_MTPII_MIDIOUT_4 = 204;
  1163. MM_MOTU_MTPII_MIDIIN_5 = 205;
  1164. MM_MOTU_MTPII_MIDIOUT_5 = 205;
  1165. MM_MOTU_MTPII_MIDIIN_6 = 206;
  1166. MM_MOTU_MTPII_MIDIOUT_6 = 206;
  1167. MM_MOTU_MTPII_MIDIIN_7 = 207;
  1168. MM_MOTU_MTPII_MIDIOUT_7 = 207;
  1169. MM_MOTU_MTPII_MIDIIN_8 = 208;
  1170. MM_MOTU_MTPII_MIDIOUT_8 = 208;
  1171. MM_MOTU_MTPII_NET_MIDIIN_1 = 209;
  1172. MM_MOTU_MTPII_NET_MIDIOUT_1 = 209;
  1173. MM_MOTU_MTPII_NET_MIDIIN_2 = 210;
  1174. MM_MOTU_MTPII_NET_MIDIOUT_2 = 210;
  1175. MM_MOTU_MTPII_NET_MIDIIN_3 = 211;
  1176. MM_MOTU_MTPII_NET_MIDIOUT_3 = 211;
  1177. MM_MOTU_MTPII_NET_MIDIIN_4 = 212;
  1178. MM_MOTU_MTPII_NET_MIDIOUT_4 = 212;
  1179. MM_MOTU_MTPII_NET_MIDIIN_5 = 213;
  1180. MM_MOTU_MTPII_NET_MIDIOUT_5 = 213;
  1181. MM_MOTU_MTPII_NET_MIDIIN_6 = 214;
  1182. MM_MOTU_MTPII_NET_MIDIOUT_6 = 214;
  1183. MM_MOTU_MTPII_NET_MIDIIN_7 = 215;
  1184. MM_MOTU_MTPII_NET_MIDIOUT_7 = 215;
  1185. MM_MOTU_MTPII_NET_MIDIIN_8 = 216;
  1186. MM_MOTU_MTPII_NET_MIDIOUT_8 = 216;
  1187. MM_MOTU_MXP_MIDIIN_MIDIOUT_ALL = 300;
  1188. MM_MOTU_MXP_MIDIIN_SYNC = 300;
  1189. MM_MOTU_MXP_MIDIIN_MIDIIN_1 = 301;
  1190. MM_MOTU_MXP_MIDIIN_MIDIOUT_1 = 301;
  1191. MM_MOTU_MXP_MIDIIN_MIDIIN_2 = 302;
  1192. MM_MOTU_MXP_MIDIIN_MIDIOUT_2 = 302;
  1193. MM_MOTU_MXP_MIDIIN_MIDIIN_3 = 303;
  1194. MM_MOTU_MXP_MIDIIN_MIDIOUT_3 = 303;
  1195. MM_MOTU_MXP_MIDIIN_MIDIIN_4 = 304;
  1196. MM_MOTU_MXP_MIDIIN_MIDIOUT_4 = 304;
  1197. MM_MOTU_MXP_MIDIIN_MIDIIN_5 = 305;
  1198. MM_MOTU_MXP_MIDIIN_MIDIOUT_5 = 305;
  1199. MM_MOTU_MXP_MIDIIN_MIDIIN_6 = 306;
  1200. MM_MOTU_MXP_MIDIIN_MIDIOUT_6 = 306;
  1201. MM_MOTU_MXPMPU_MIDIOUT_ALL = 400;
  1202. MM_MOTU_MXPMPU_MIDIIN_SYNC = 400;
  1203. MM_MOTU_MXPMPU_MIDIIN_1 = 401;
  1204. MM_MOTU_MXPMPU_MIDIOUT_1 = 401;
  1205. MM_MOTU_MXPMPU_MIDIIN_2 = 402;
  1206. MM_MOTU_MXPMPU_MIDIOUT_2 = 402;
  1207. MM_MOTU_MXPMPU_MIDIIN_3 = 403;
  1208. MM_MOTU_MXPMPU_MIDIOUT_3 = 403;
  1209. MM_MOTU_MXPMPU_MIDIIN_4 = 404;
  1210. MM_MOTU_MXPMPU_MIDIOUT_4 = 404;
  1211. MM_MOTU_MXPMPU_MIDIIN_5 = 405;
  1212. MM_MOTU_MXPMPU_MIDIOUT_5 = 405;
  1213. MM_MOTU_MXPMPU_MIDIIN_6 = 406;
  1214. MM_MOTU_MXPMPU_MIDIOUT_6 = 406;
  1215. MM_MOTU_MXN_MIDIOUT_ALL = 500;
  1216. MM_MOTU_MXN_MIDIIN_SYNC = 500;
  1217. MM_MOTU_MXN_MIDIIN_1 = 501;
  1218. MM_MOTU_MXN_MIDIOUT_1 = 501;
  1219. MM_MOTU_MXN_MIDIIN_2 = 502;
  1220. MM_MOTU_MXN_MIDIOUT_2 = 502;
  1221. MM_MOTU_MXN_MIDIIN_3 = 503;
  1222. MM_MOTU_MXN_MIDIOUT_3 = 503;
  1223. MM_MOTU_MXN_MIDIIN_4 = 504;
  1224. MM_MOTU_MXN_MIDIOUT_4 = 504;
  1225. MM_MOTU_FLYER_MIDI_IN_SYNC = 600;
  1226. MM_MOTU_FLYER_MIDI_IN_A = 601;
  1227. MM_MOTU_FLYER_MIDI_OUT_A = 601;
  1228. MM_MOTU_FLYER_MIDI_IN_B = 602;
  1229. MM_MOTU_FLYER_MIDI_OUT_B = 602;
  1230. MM_MOTU_PKX_MIDI_IN_SYNC = 700;
  1231. MM_MOTU_PKX_MIDI_IN_A = 701;
  1232. MM_MOTU_PKX_MIDI_OUT_A = 701;
  1233. MM_MOTU_PKX_MIDI_IN_B = 702;
  1234. MM_MOTU_PKX_MIDI_OUT_B = 702;
  1235. MM_MOTU_DTX_MIDI_IN_SYNC = 800;
  1236. MM_MOTU_DTX_MIDI_IN_A = 801;
  1237. MM_MOTU_DTX_MIDI_OUT_A = 801;
  1238. MM_MOTU_DTX_MIDI_IN_B = 802;
  1239. MM_MOTU_DTX_MIDI_OUT_B = 802;
  1240. MM_MOTU_MTPAV_MIDIOUT_ALL = 900;
  1241. MM_MOTU_MTPAV_MIDIIN_SYNC = 900;
  1242. MM_MOTU_MTPAV_MIDIIN_1 = 901;
  1243. MM_MOTU_MTPAV_MIDIOUT_1 = 901;
  1244. MM_MOTU_MTPAV_MIDIIN_2 = 902;
  1245. MM_MOTU_MTPAV_MIDIOUT_2 = 902;
  1246. MM_MOTU_MTPAV_MIDIIN_3 = 903;
  1247. MM_MOTU_MTPAV_MIDIOUT_3 = 903;
  1248. MM_MOTU_MTPAV_MIDIIN_4 = 904;
  1249. MM_MOTU_MTPAV_MIDIOUT_4 = 904;
  1250. MM_MOTU_MTPAV_MIDIIN_5 = 905;
  1251. MM_MOTU_MTPAV_MIDIOUT_5 = 905;
  1252. MM_MOTU_MTPAV_MIDIIN_6 = 906;
  1253. MM_MOTU_MTPAV_MIDIOUT_6 = 906;
  1254. MM_MOTU_MTPAV_MIDIIN_7 = 907;
  1255. MM_MOTU_MTPAV_MIDIOUT_7 = 907;
  1256. MM_MOTU_MTPAV_MIDIIN_8 = 908;
  1257. MM_MOTU_MTPAV_MIDIOUT_8 = 908;
  1258. MM_MOTU_MTPAV_NET_MIDIIN_1 = 909;
  1259. MM_MOTU_MTPAV_NET_MIDIOUT_1 = 909;
  1260. MM_MOTU_MTPAV_NET_MIDIIN_2 = 910;
  1261. MM_MOTU_MTPAV_NET_MIDIOUT_2 = 910;
  1262. MM_MOTU_MTPAV_NET_MIDIIN_3 = 911;
  1263. MM_MOTU_MTPAV_NET_MIDIOUT_3 = 911;
  1264. MM_MOTU_MTPAV_NET_MIDIIN_4 = 912;
  1265. MM_MOTU_MTPAV_NET_MIDIOUT_4 = 912;
  1266. MM_MOTU_MTPAV_NET_MIDIIN_5 = 913;
  1267. MM_MOTU_MTPAV_NET_MIDIOUT_5 = 913;
  1268. MM_MOTU_MTPAV_NET_MIDIIN_6 = 914;
  1269. MM_MOTU_MTPAV_NET_MIDIOUT_6 = 914;
  1270. MM_MOTU_MTPAV_NET_MIDIIN_7 = 915;
  1271. MM_MOTU_MTPAV_NET_MIDIOUT_7 = 915;
  1272. MM_MOTU_MTPAV_NET_MIDIIN_8 = 916;
  1273. MM_MOTU_MTPAV_NET_MIDIOUT_8 = 916;
  1274. MM_MOTU_MTPAV_MIDIIN_ADAT = 917;
  1275. MM_MOTU_MTPAV_MIDIOUT_ADAT = 917;
  1276. { Product IDs for MM_MIRO - miro Computer Products AG }
  1277. { miroMOVIE pro }
  1278. MM_MIRO_MOVIEPRO = 1;
  1279. { miroVIDEO D1 }
  1280. MM_MIRO_VIDEOD1 = 2;
  1281. { miroVIDEO DC1 tv }
  1282. MM_MIRO_VIDEODC1TV = 3;
  1283. { miroVIDEO 10/20 TD }
  1284. MM_MIRO_VIDEOTD = 4;
  1285. MM_MIRO_DC30_WAVEOUT = 5;
  1286. MM_MIRO_DC30_WAVEIN = 6;
  1287. MM_MIRO_DC30_MIX = 7;
  1288. { Product IDs for MM_NEC - NEC }
  1289. MM_NEC_73_86_SYNTH = 5;
  1290. MM_NEC_73_86_WAVEOUT = 6;
  1291. MM_NEC_73_86_WAVEIN = 7;
  1292. MM_NEC_26_SYNTH = 9;
  1293. MM_NEC_MPU401_MIDIOUT = 10;
  1294. MM_NEC_MPU401_MIDIIN = 11;
  1295. MM_NEC_JOYSTICK = 12;
  1296. { Product IDs for MM_NORRIS - Norris Communications, Inc. }
  1297. MM_NORRIS_VOICELINK = 1;
  1298. { Product IDs for MM_NORTHERN_TELECOM - Northern Telecom Limited }
  1299. { MPX Audio Card Wave Input Device }
  1300. MM_NORTEL_MPXAC_WAVEIN = 1;
  1301. { MPX Audio Card Wave Output Device }
  1302. MM_NORTEL_MPXAC_WAVEOUT = 2;
  1303. { Product IDs for MM_NVIDIA - NVidia Corporation }
  1304. MM_NVIDIA_WAVEOUT = 1;
  1305. MM_NVIDIA_WAVEIN = 2;
  1306. MM_NVIDIA_MIDIOUT = 3;
  1307. MM_NVIDIA_MIDIIN = 4;
  1308. MM_NVIDIA_GAMEPORT = 5;
  1309. MM_NVIDIA_MIXER = 6;
  1310. MM_NVIDIA_AUX = 7;
  1311. { Product IDs for MM_OKSORI - OKSORI Co., Ltd. }
  1312. { Oksori Base }
  1313. MM_OKSORI_BASE = 0;
  1314. MM_OKSORI_OSR8_WAVEOUT = MM_OKSORI_BASE+1; { Oksori 8bit Wave out }
  1315. MM_OKSORI_OSR8_WAVEIN = MM_OKSORI_BASE+2; { Oksori 8bit Wave in }
  1316. MM_OKSORI_OSR16_WAVEOUT = MM_OKSORI_BASE+3; { Oksori 16 bit Wave out }
  1317. MM_OKSORI_OSR16_WAVEIN = MM_OKSORI_BASE+4; { Oksori 16 bit Wave in }
  1318. MM_OKSORI_FM_OPL4 = MM_OKSORI_BASE+5; { Oksori FM Synth Yamaha OPL4 }
  1319. MM_OKSORI_MIX_MASTER = MM_OKSORI_BASE+6; { Oksori DSP Mixer - Master Volume }
  1320. MM_OKSORI_MIX_WAVE = MM_OKSORI_BASE+7; { Oksori DSP Mixer - Wave Volume }
  1321. MM_OKSORI_MIX_FM = MM_OKSORI_BASE+8; { Oksori DSP Mixer - FM Volume }
  1322. MM_OKSORI_MIX_LINE = MM_OKSORI_BASE+9; { Oksori DSP Mixer - Line Volume }
  1323. MM_OKSORI_MIX_CD = MM_OKSORI_BASE+10; { Oksori DSP Mixer - CD Volume }
  1324. MM_OKSORI_MIX_MIC = MM_OKSORI_BASE+11; { Oksori DSP Mixer - MIC Volume }
  1325. MM_OKSORI_MIX_ECHO = MM_OKSORI_BASE+12; { Oksori DSP Mixer - Echo Volume }
  1326. MM_OKSORI_MIX_AUX1 = MM_OKSORI_BASE+13; { Oksori AD1848 - AUX1 Volume }
  1327. MM_OKSORI_MIX_LINE1 = MM_OKSORI_BASE+14; { Oksori AD1848 - LINE1 Volume }
  1328. MM_OKSORI_EXT_MIC1 = MM_OKSORI_BASE+15; { Oksori External - One Mic Connect }
  1329. MM_OKSORI_EXT_MIC2 = MM_OKSORI_BASE+16; { Oksori External - Two Mic Connect }
  1330. MM_OKSORI_MIDIOUT = MM_OKSORI_BASE+17; { Oksori MIDI Out Device }
  1331. MM_OKSORI_MIDIIN = MM_OKSORI_BASE+18; { Oksori MIDI In Device }
  1332. MM_OKSORI_MPEG_CDVISION = MM_OKSORI_BASE+19; { Oksori CD-Vision MPEG Decoder }
  1333. { Product IDs for MM_OSITECH - Ositech Communications Inc. }
  1334. { Trumpcard }
  1335. MM_OSITECH_TRUMPCARD = 1;
  1336. { Product IDs for MM_OSPREY - Osprey Technologies, Inc. }
  1337. MM_OSPREY_1000WAVEIN = 1;
  1338. MM_OSPREY_1000WAVEOUT = 2;
  1339. { Product IDs for MM_QUARTERDECK - Quarterdeck Corporation }
  1340. { Quarterdeck L&H Codec Wave In }
  1341. MM_QUARTERDECK_LHWAVEIN = 0;
  1342. { Quarterdeck L&H Codec Wave Out }
  1343. MM_QUARTERDECK_LHWAVEOUT = 1;
  1344. { Product IDs for MM_RHETOREX - Rhetorex Inc }
  1345. MM_RHETOREX_WAVEIN = 1;
  1346. MM_RHETOREX_WAVEOUT = 2;
  1347. { Product IDs for MM_ROCKWELL - Rockwell International }
  1348. MM_VOICEMIXER = 1;
  1349. ROCKWELL_WA1_WAVEIN = 100;
  1350. ROCKWELL_WA1_WAVEOUT = 101;
  1351. ROCKWELL_WA1_SYNTH = 102;
  1352. ROCKWELL_WA1_MIXER = 103;
  1353. ROCKWELL_WA1_MPU401_IN = 104;
  1354. ROCKWELL_WA1_MPU401_OUT = 105;
  1355. ROCKWELL_WA2_WAVEIN = 200;
  1356. ROCKWELL_WA2_WAVEOUT = 201;
  1357. ROCKWELL_WA2_SYNTH = 202;
  1358. ROCKWELL_WA2_MIXER = 203;
  1359. ROCKWELL_WA2_MPU401_IN = 204;
  1360. ROCKWELL_WA2_MPU401_OUT = 205;
  1361. { Product IDs for MM_S3 - S3 }
  1362. MM_S3_WAVEOUT = $1;
  1363. MM_S3_WAVEIN = $2;
  1364. MM_S3_MIDIOUT = $3;
  1365. MM_S3_MIDIIN = $4;
  1366. MM_S3_FMSYNTH = $5;
  1367. MM_S3_MIXER = $6;
  1368. MM_S3_AUX = $7;
  1369. { Product IDs for MM_SEERSYS - Seer Systems, Inc. }
  1370. MM_SEERSYS_SEERSYNTH = 1;
  1371. MM_SEERSYS_SEERWAVE = 2;
  1372. MM_SEERSYS_SEERMIX = 3;
  1373. { Product IDs for MM_SOFTSOUND - Softsound, Ltd. }
  1374. MM_SOFTSOUND_CODEC = 1;
  1375. { Product IDs for MM_SOUNDESIGNS - SounDesignS M.C.S. Ltd. }
  1376. MM_SOUNDESIGNS_WAVEIN = 1;
  1377. MM_SOUNDESIGNS_WAVEOUT = 2;
  1378. { Product IDs for MM_SPECTRUM_SIGNAL_PROCESSING - Spectrum Signal Processing, Inc. }
  1379. { Sound Festa Wave In Device }
  1380. MM_SSP_SNDFESWAVEIN = 1;
  1381. { Sound Festa Wave Out Device }
  1382. MM_SSP_SNDFESWAVEOUT = 2;
  1383. { Sound Festa MIDI In Device }
  1384. MM_SSP_SNDFESMIDIIN = 3;
  1385. { Sound Festa MIDI Out Device }
  1386. MM_SSP_SNDFESMIDIOUT = 4;
  1387. { Sound Festa MIDI Synth Device }
  1388. MM_SSP_SNDFESSYNTH = 5;
  1389. { Sound Festa Mixer Device }
  1390. MM_SSP_SNDFESMIX = 6;
  1391. { Sound Festa Auxilliary Device }
  1392. MM_SSP_SNDFESAUX = 7;
  1393. { Product IDs for MM_TDK - TDK Corporation }
  1394. MM_TDK_MW_MIDI_SYNTH = 1;
  1395. MM_TDK_MW_MIDI_IN = 2;
  1396. MM_TDK_MW_MIDI_OUT = 3;
  1397. MM_TDK_MW_WAVE_IN = 4;
  1398. MM_TDK_MW_WAVE_OUT = 5;
  1399. MM_TDK_MW_AUX = 6;
  1400. MM_TDK_MW_MIXER = 10;
  1401. MM_TDK_MW_AUX_MASTER = 100;
  1402. MM_TDK_MW_AUX_BASS = 101;
  1403. MM_TDK_MW_AUX_TREBLE = 102;
  1404. MM_TDK_MW_AUX_MIDI_VOL = 103;
  1405. MM_TDK_MW_AUX_WAVE_VOL = 104;
  1406. MM_TDK_MW_AUX_WAVE_RVB = 105;
  1407. MM_TDK_MW_AUX_WAVE_CHR = 106;
  1408. MM_TDK_MW_AUX_VOL = 107;
  1409. MM_TDK_MW_AUX_RVB = 108;
  1410. MM_TDK_MW_AUX_CHR = 109;
  1411. { Product IDs for MM_TURTLE_BEACH - Turtle Beach, Inc. }
  1412. MM_TBS_TROPEZ_WAVEIN = 37;
  1413. MM_TBS_TROPEZ_WAVEOUT = 38;
  1414. MM_TBS_TROPEZ_AUX1 = 39;
  1415. MM_TBS_TROPEZ_AUX2 = 40;
  1416. MM_TBS_TROPEZ_LINE = 41;
  1417. { Product IDs for MM_VIENNASYS - Vienna Systems }
  1418. MM_VIENNASYS_TSP_WAVE_DRIVER = 1;
  1419. { Product IDs for MM_VIONA - Viona Development GmbH }
  1420. { Q-Motion PCI II/Bravado 2000 }
  1421. MM_VIONA_QVINPCI_MIXER = 1;
  1422. MM_VIONA_QVINPCI_WAVEIN = 2;
  1423. MM_VIONAQVINPCI_WAVEOUT = 3;
  1424. { Buster }
  1425. MM_VIONA_BUSTER_MIXER = 4;
  1426. { Cinemaster }
  1427. MM_VIONA_CINEMASTER_MIXER = 5;
  1428. { Concerto }
  1429. MM_VIONA_CONCERTO_MIXER = 6;
  1430. { Product IDs for MM_WILDCAT - Wildcat Canyon Software }
  1431. { Autoscore }
  1432. MM_WILDCAT_AUTOSCOREMIDIIN = 1;
  1433. { Product IDs for MM_WILLOWPOND - Willow Pond Corporation }
  1434. MM_WILLOWPOND_FMSYNTH_STEREO = 20;
  1435. MM_WILLOWPOND_SNDPORT_WAVEIN = 100;
  1436. MM_WILLOWPOND_SNDPORT_WAVEOUT = 101;
  1437. MM_WILLOWPOND_SNDPORT_MIXER = 102;
  1438. MM_WILLOWPOND_SNDPORT_AUX = 103;
  1439. MM_WILLOWPOND_PH_WAVEIN = 104;
  1440. MM_WILLOWPOND_PH_WAVEOUT = 105;
  1441. MM_WILLOWPOND_PH_MIXER = 106;
  1442. MM_WILLOWPOND_PH_AUX = 107;
  1443. { Product IDs for MM_WORKBIT - Workbit Corporation }
  1444. { Harmony Mixer }
  1445. MM_WORKBIT_MIXER = 1;
  1446. { Harmony Mixer }
  1447. MM_WORKBIT_WAVEOUT = 2;
  1448. { Harmony Mixer }
  1449. MM_WORKBIT_WAVEIN = 3;
  1450. { Harmony Mixer }
  1451. MM_WORKBIT_MIDIIN = 4;
  1452. { Harmony Mixer }
  1453. MM_WORKBIT_MIDIOUT = 5;
  1454. { Harmony Mixer }
  1455. MM_WORKBIT_FMSYNTH = 6;
  1456. { Harmony Mixer }
  1457. MM_WORKBIT_AUX = 7;
  1458. MM_WORKBIT_JOYSTICK = 8;
  1459. { Product IDs for MM_FRAUNHOFER_IIS - Fraunhofer }
  1460. MM_FHGIIS_MPEGLAYER3 = 10;
  1461. {$ENDIF NOMMIDS}
  1462. {*////////////////////////////////////////////////////////////////////////// */
  1463. /* INFO LIST CHUNKS (from the Multimedia Programmer's Reference
  1464. plus new ones)
  1465. *}
  1466. const
  1467. RIFFINFO_IARL = FOURCC(byte(AnsiChar('I')) or
  1468. (byte(AnsiChar('A')) shl 8) or
  1469. (byte(AnsiChar('R')) shl 16) or
  1470. (byte(AnsiChar('L')) shl 24)
  1471. ); //*Archival location */
  1472. RIFFINFO_IART = FOURCC(byte(AnsiChar('I')) or
  1473. (byte(AnsiChar('A')) shl 8) or
  1474. (byte(AnsiChar('R')) shl 16) or
  1475. (byte(AnsiChar('T')) shl 24)
  1476. ); //*Artist */
  1477. RIFFINFO_ICMS = FOURCC(byte(AnsiChar('I')) or
  1478. (byte(AnsiChar('C')) shl 8) or
  1479. (byte(AnsiChar('M')) shl 16) or
  1480. (byte(AnsiChar('S'))shl 24)
  1481. ); //*Commissioned */
  1482. RIFFINFO_ICMT = FOURCC(byte(AnsiChar('I')) or
  1483. (byte(AnsiChar('C')) shl 8) or
  1484. (byte(AnsiChar('M')) shl 16) or
  1485. (byte(AnsiChar('T')) shl 24)
  1486. ); //*Comments */
  1487. RIFFINFO_ICOP = FOURCC(byte(AnsiChar('I')) or
  1488. (byte(AnsiChar('C')) shl 8) or
  1489. (byte(AnsiChar('O')) shl 16) or
  1490. (byte(AnsiChar('P')) shl 24)
  1491. ); //*Copyright */
  1492. RIFFINFO_ICRD = FOURCC(byte(AnsiChar('I')) or
  1493. (byte(AnsiChar('C')) shl 8) or
  1494. (byte(AnsiChar('R')) shl 16) or
  1495. (byte(AnsiChar('D')) shl 24)
  1496. ); //*Creation date of subject */
  1497. RIFFINFO_ICRP = FOURCC(byte(AnsiChar('I')) or
  1498. (byte(AnsiChar('C')) shl 8) or
  1499. (byte(AnsiChar('R')) shl 16) or
  1500. (byte(AnsiChar('P')) shl 24)
  1501. ); //*Cropped */
  1502. RIFFINFO_IDIM = FOURCC(byte(AnsiChar('I')) or
  1503. (byte(AnsiChar('D')) shl 8) or
  1504. (byte(AnsiChar('I')) shl 16) or
  1505. (byte(AnsiChar('M')) shl 24)
  1506. ); //*Dimensions */
  1507. RIFFINFO_IDPI = FOURCC(byte(AnsiChar('I')) or
  1508. (byte(AnsiChar('D')) shl 8) or
  1509. (byte(AnsiChar('P')) shl 16) or
  1510. (byte(AnsiChar('I')) shl 24)
  1511. ); //*Dots per inch */
  1512. RIFFINFO_IENG = FOURCC(byte(AnsiChar('I')) or
  1513. (byte(AnsiChar('E')) shl 8) or
  1514. (byte(AnsiChar('N')) shl 16) or
  1515. (byte(AnsiChar('G')) shl 24)
  1516. ); //*Engineer */
  1517. RIFFINFO_IGNR = FOURCC(byte(AnsiChar('I')) or
  1518. (byte(AnsiChar('G')) shl 8) or
  1519. (byte(AnsiChar('N')) shl 16) or
  1520. (byte(AnsiChar('R')) shl 24)
  1521. ); //*Genre */
  1522. RIFFINFO_IKEY = FOURCC(byte(AnsiChar('I')) or
  1523. (byte(AnsiChar('K')) shl 8) or
  1524. (byte(AnsiChar('E')) shl 16) or
  1525. (byte(AnsiChar('Y')) shl 24)
  1526. ); //*Keywords */
  1527. RIFFINFO_ILGT = FOURCC(byte(AnsiChar('I')) or
  1528. (byte(AnsiChar('L')) shl 8) or
  1529. (byte(AnsiChar('G')) shl 16) or
  1530. (byte(AnsiChar('T')) shl 24)
  1531. ); //*Lightness settings */
  1532. RIFFINFO_IMED = FOURCC(byte(AnsiChar('I')) or
  1533. (byte(AnsiChar('M')) shl 8) or
  1534. (byte(AnsiChar('E')) shl 16) or
  1535. (byte(AnsiChar('D')) shl 24)
  1536. ); //*Medium */
  1537. RIFFINFO_INAM = FOURCC(byte(AnsiChar('I')) or
  1538. (byte(AnsiChar('N')) shl 8) or
  1539. (byte(AnsiChar('A')) shl 16) or
  1540. (byte(AnsiChar('M')) shl 24)
  1541. ); //*Name of subject */
  1542. RIFFINFO_IPLT = FOURCC(byte(AnsiChar('I')) or
  1543. (byte(AnsiChar('P')) shl 8) or
  1544. (byte(AnsiChar('L')) shl 16) or
  1545. (byte(AnsiChar('T')) shl 24)
  1546. ); //*Palette Settings. No. of colors requested. */
  1547. RIFFINFO_IPRD = FOURCC(byte(AnsiChar('I')) or
  1548. (byte(AnsiChar('P')) shl 8) or
  1549. (byte(AnsiChar('R')) shl 16) or
  1550. (byte(AnsiChar('D')) shl 24)
  1551. ); //*Product */
  1552. RIFFINFO_ISBJ = FOURCC(byte(AnsiChar('I')) or
  1553. (byte(AnsiChar('S')) shl 8) or
  1554. (byte(AnsiChar('B')) shl 16) or
  1555. (byte(AnsiChar('J')) shl 24)
  1556. ); //*Subject description */
  1557. RIFFINFO_ISFT = FOURCC(byte(AnsiChar('I')) or
  1558. (byte(AnsiChar('S')) shl 8) or
  1559. (byte(AnsiChar('F')) shl 16) or
  1560. (byte(AnsiChar('T')) shl 24)
  1561. ); //*Software. Name of package used to create file. */
  1562. RIFFINFO_ISHP = FOURCC(byte(AnsiChar('I')) or
  1563. (byte(AnsiChar('S')) shl 8) or
  1564. (byte(AnsiChar('H')) shl 16) or
  1565. (byte(AnsiChar('P')) shl 24)
  1566. ); //*Sharpness. */
  1567. RIFFINFO_ISRC = FOURCC(byte(AnsiChar('I')) or
  1568. (byte(AnsiChar('S')) shl 8) or
  1569. (byte(AnsiChar('R')) shl 16) or
  1570. (byte(AnsiChar('C')) shl 24)
  1571. ); //*Source. */
  1572. RIFFINFO_ISRF = FOURCC(byte(AnsiChar('I')) or
  1573. (byte(AnsiChar('S')) shl 8) or
  1574. (byte(AnsiChar('R')) shl 16) or
  1575. (byte(AnsiChar('F')) shl 24)
  1576. ); //*Source Form. ie slide, paper */
  1577. RIFFINFO_ITCH = FOURCC(byte(AnsiChar('I')) or
  1578. (byte(AnsiChar('T')) shl 8) or
  1579. (byte(AnsiChar('C')) shl 16) or
  1580. (byte(AnsiChar('H')) shl 24)
  1581. ); //*Technician who digitized the subject. */
  1582. //* New INFO Chunks as of August 30, 1993: */
  1583. RIFFINFO_ISMP = FOURCC(byte(AnsiChar('I')) or
  1584. (byte(AnsiChar('S')) shl 8) or
  1585. (byte(AnsiChar('M')) shl 16) or
  1586. (byte(AnsiChar('P')) shl 24)
  1587. ); //*SMPTE time code */
  1588. {* ISMP: SMPTE time code of digitization start point expressed as a NULL terminated
  1589. text string "HH:MM:SS:FF". If performing MCI capture in AVICAP, this
  1590. chunk will be automatically set based on the MCI start time.
  1591. *}
  1592. RIFFINFO_IDIT = FOURCC(byte(AnsiChar('I')) or
  1593. (byte(AnsiChar('D')) shl 8) or
  1594. (byte(AnsiChar('I')) shl 16) or
  1595. (byte(AnsiChar('T')) shl 24)
  1596. ); //*Digitization Time */
  1597. {* IDIT: "Digitization Time" Specifies the time and date that the digitization commenced.
  1598. The digitization time is contained in an ASCII string which
  1599. contains exactly 26 characters and is in the format
  1600. "Wed Jan 02 02:03:55 1990\n\0".
  1601. The ctime(), asctime(), functions can be used to create strings
  1602. in this format. This chunk is automatically added to the capture
  1603. file based on the current system time at the moment capture is initiated.
  1604. *}
  1605. {*Template line for new additions
  1606. RIFFINFO_I = FOURCC(byte(AnsiChar('I')) or
  1607. (byte(AnsiChar('')) shl 8) or
  1608. (byte(AnsiChar('')) shl 16) or
  1609. (byte(AnsiChar('')) shl 24)
  1610. ); // Comment
  1611. }
  1612. //*/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
  1613. {$IFNDEF NONEWWAVE}
  1614. { WAVE form wFormatTag IDs }
  1615. const
  1616. WAVE_FORMAT_UNKNOWN = $0000;{ Microsoft Corporation }
  1617. { Microsoft Corporation }
  1618. WAVE_FORMAT_ADPCM = $0002;
  1619. { Microsoft Corporation }
  1620. WAVE_FORMAT_IEEE_FLOAT = $0003;
  1621. { IEEE754: range (+1, -1] }
  1622. { 32-bit/64-bit format as defined by }
  1623. { MSVC++ float/double type }
  1624. { IBM Corporation }
  1625. WAVE_FORMAT_IBM_CVSD = $0005;
  1626. { Microsoft Corporation }
  1627. WAVE_FORMAT_ALAW = $0006;
  1628. { Microsoft Corporation }
  1629. WAVE_FORMAT_MULAW = $0007;
  1630. { Microsoft Corporation }
  1631. WAVE_FORMAT_WMAVOICE9 = $000a;
  1632. { OKI }
  1633. WAVE_FORMAT_OKI_ADPCM = $0010;
  1634. { Intel Corporation }
  1635. WAVE_FORMAT_DVI_ADPCM = $0011;
  1636. { Intel Corporation }
  1637. WAVE_FORMAT_IMA_ADPCM = WAVE_FORMAT_DVI_ADPCM;
  1638. { Videologic }
  1639. WAVE_FORMAT_MEDIASPACE_ADPCM = $0012;
  1640. { Sierra Semiconductor Corp }
  1641. WAVE_FORMAT_SIERRA_ADPCM = $0013;
  1642. { Antex Electronics Corporation }
  1643. WAVE_FORMAT_G723_ADPCM = $0014;
  1644. { DSP Solutions, Inc. }
  1645. WAVE_FORMAT_DIGISTD = $0015;
  1646. { DSP Solutions, Inc. }
  1647. WAVE_FORMAT_DIGIFIX = $0016;
  1648. { Dialogic Corporation }
  1649. WAVE_FORMAT_DIALOGIC_OKI_ADPCM = $0017;
  1650. { Media Vision, Inc. }
  1651. WAVE_FORMAT_MEDIAVISION_ADPCM = $0018;
  1652. { Yamaha Corporation of America }
  1653. WAVE_FORMAT_YAMAHA_ADPCM = $0020;
  1654. { Speech Compression }
  1655. WAVE_FORMAT_SONARC = $0021;
  1656. { DSP Group, Inc }
  1657. WAVE_FORMAT_DSPGROUP_TRUESPEECH = $0022;
  1658. { Echo Speech Corporation }
  1659. WAVE_FORMAT_ECHOSC1 = $0023;
  1660. { }
  1661. WAVE_FORMAT_AUDIOFILE_AF36 = $0024;
  1662. { Audio Processing Technology }
  1663. WAVE_FORMAT_APTX = $0025;
  1664. { }
  1665. WAVE_FORMAT_AUDIOFILE_AF10 = $0026;
  1666. { Dolby Laboratories }
  1667. WAVE_FORMAT_DOLBY_AC2 = $0030;
  1668. { Microsoft Corporation }
  1669. WAVE_FORMAT_GSM610 = $0031;
  1670. { Microsoft Corporation }
  1671. WAVE_FORMAT_MSNAUDIO = $0032;
  1672. { Antex Electronics Corporation }
  1673. WAVE_FORMAT_ANTEX_ADPCME = $0033;
  1674. { Control Resources Limited }
  1675. WAVE_FORMAT_CONTROL_RES_VQLPC = $0034;
  1676. { DSP Solutions, Inc. }
  1677. WAVE_FORMAT_DIGIREAL = $0035;
  1678. { DSP Solutions, Inc. }
  1679. WAVE_FORMAT_DIGIADPCM = $0036;
  1680. { Control Resources Limited }
  1681. WAVE_FORMAT_CONTROL_RES_CR10 = $0037;
  1682. { Natural MicroSystems }
  1683. WAVE_FORMAT_NMS_VBXADPCM = $0038;
  1684. { Crystal Semiconductor IMA ADPCM }
  1685. WAVE_FORMAT_CS_IMAADPCM = $0039;
  1686. { Echo Speech Corporation }
  1687. WAVE_FORMAT_ECHOSC3 = $003A;
  1688. { Rockwell International }
  1689. WAVE_FORMAT_ROCKWELL_ADPCM = $003B;
  1690. { Rockwell International }
  1691. WAVE_FORMAT_ROCKWELL_DIGITALK = $003C;
  1692. { Xebec Multimedia Solutions Limited }
  1693. WAVE_FORMAT_XEBEC = $003D;
  1694. { Antex Electronics Corporation }
  1695. WAVE_FORMAT_G721_ADPCM = $0040;
  1696. { Antex Electronics Corporation }
  1697. WAVE_FORMAT_G728_CELP = $0041;
  1698. { Microsoft Corporation }
  1699. WAVE_FORMAT_MPEG = $0050;
  1700. { ISO/MPEG Layer3 Format Tag }
  1701. WAVE_FORMAT_MPEGLAYER3 = $0055;
  1702. { Cirrus Logic }
  1703. WAVE_FORMAT_CIRRUS = $0060;
  1704. { ESS Technology }
  1705. WAVE_FORMAT_ESPCM = $0061;
  1706. { Voxware Inc }
  1707. WAVE_FORMAT_VOXWARE = $0062;
  1708. { Canopus, co., Ltd. }
  1709. WAVEFORMAT_CANOPUS_ATRAC = $0063;
  1710. { APICOM }
  1711. WAVE_FORMAT_G726_ADPCM = $0064;
  1712. { APICOM }
  1713. WAVE_FORMAT_G722_ADPCM = $0065;
  1714. { Microsoft Corporation }
  1715. WAVE_FORMAT_DSAT = $0066;
  1716. { Microsoft Corporation }
  1717. WAVE_FORMAT_DSAT_DISPLAY = $0067;
  1718. { Softsound, Ltd. }
  1719. WAVE_FORMAT_SOFTSOUND = $0080;
  1720. { Rhetorex Inc }
  1721. WAVE_FORMAT_RHETOREX_ADPCM = $0100;
  1722. { Microsoft Corporation }
  1723. WAVE_FORMAT_MSAUDIO1 = $0160;
  1724. { Microsoft Corporation }
  1725. WAVE_FORMAT_WMAUDIO2 = $0161;
  1726. { Microsoft Corporation }
  1727. WAVE_FORMAT_WMAUDIO3 = $0162;
  1728. { Microsoft Corporation }
  1729. WAVE_FORMAT_WMAUDIO_LOSSLESS = $0163;
  1730. { Creative Labs, Inc }
  1731. WAVE_FORMAT_CREATIVE_ADPCM = $0200;
  1732. { Creative Labs, Inc }
  1733. WAVE_FORMAT_CREATIVE_FASTSPEECH8 = $0202;
  1734. { Creative Labs, Inc }
  1735. WAVE_FORMAT_CREATIVE_FASTSPEECH10 = $0203;
  1736. { Quarterdeck Corporation }
  1737. WAVE_FORMAT_QUARTERDECK = $0220;
  1738. { Fujitsu Corp. }
  1739. WAVE_FORMAT_FM_TOWNS_SND = $0300;
  1740. { Brooktree Corporation }
  1741. WAVE_FORMAT_BTV_DIGITAL = $0400;
  1742. { Ing C. Olivetti & C., S.p.A. }
  1743. WAVE_FORMAT_OLIGSM = $1000;
  1744. { Ing C. Olivetti & C., S.p.A. }
  1745. WAVE_FORMAT_OLIADPCM = $1001;
  1746. { Ing C. Olivetti & C., S.p.A. }
  1747. WAVE_FORMAT_OLICELP = $1002;
  1748. { Ing C. Olivetti & C., S.p.A. }
  1749. WAVE_FORMAT_OLISBC = $1003;
  1750. { Ing C. Olivetti & C., S.p.A. }
  1751. WAVE_FORMAT_OLIOPR = $1004;
  1752. { Lernout & Hauspie }
  1753. WAVE_FORMAT_LH_CODEC = $1100;
  1754. { Norris Communications, Inc. }
  1755. WAVE_FORMAT_NORRIS = $1400;
  1756. const
  1757. WAVE_FORMAT_EXTENSIBLE = $FFFE; { Microsoft }
  1758. { }
  1759. { the WAVE_FORMAT_DEVELOPMENT format tag can be used during the }
  1760. { development phase of a new wave format. Before shipping, you MUST }
  1761. { acquire an official format tag from Microsoft. }
  1762. { }
  1763. const
  1764. WAVE_FORMAT_DEVELOPMENT = $FFFF;
  1765. {$ENDIF NONEWWAVE}
  1766. type
  1767. { general waveform format structure (information common to all formats) }
  1768. waveformat_tag = record
  1769. wFormatTag:word; { format type }
  1770. nChannels:word; { number of channels (i.e. mono, stereo...) }
  1771. nSamplesPerSec:DWORD; { sample rate }
  1772. nAvgBytesPerSec:DWORD; { for buffer estimation }
  1773. nBlockAlign:word; { block size of data }
  1774. end;
  1775. WAVEFORMAT = waveformat_tag;
  1776. PWAVEFORMAT = ^WAVEFORMAT;
  1777. NPWAVEFORMAT = ^WAVEFORMAT;
  1778. LPWAVEFORMAT = ^WAVEFORMAT;
  1779. LPCWAVEFORMAT = ^WAVEFORMAT;
  1780. { flags for wFormatTag field of WAVEFORMAT }
  1781. const
  1782. WAVE_FORMAT_PCM = 1;
  1783. { specific waveform format structure for PCM data }
  1784. type
  1785. pcmwaveformat_tag = record
  1786. wf:WAVEFORMAT;
  1787. wBitsPerSample:word; // corresponds to MCI_WAVE_SET_.... structure
  1788. end;
  1789. PCMWAVEFORMAT = pcmwaveformat_tag;
  1790. PPCMWAVEFORMAT = ^PCMWAVEFORMAT;
  1791. NPPCMWAVEFORMAT = ^PCMWAVEFORMAT;
  1792. LPPCMWAVEFORMAT = ^PCMWAVEFORMAT;
  1793. { general extended waveform format structure
  1794. Use this for all NON PCM formats (information common to all formats)
  1795. }
  1796. {*
  1797. * extended waveform format structure used for all non-PCM formats. this
  1798. * structure is common to all non-PCM formats.
  1799. *}
  1800. type
  1801. tWAVEFORMATEX = record
  1802. wFormatTag:word; //* format type */
  1803. nChannels:word; //* number of channels (i.e. mono, stereo...) */
  1804. nSamplesPerSec:DWORD; //* sample rate */
  1805. nAvgBytesPerSec:DWORD; //* for buffer estimation */
  1806. nBlockAlign:word; //* block size of data */
  1807. wBitsPerSample:word; //* Number of bits per sample of mono data */
  1808. cbSize:word; //* The count in bytes of the size of
  1809. // extra information (after cbSize) */
  1810. end;
  1811. WAVEFORMATEX = tWAVEFORMATEX;
  1812. PWAVEFORMATEX = ^WAVEFORMATEX;
  1813. NPWAVEFORMATEX = ^WAVEFORMATEX;
  1814. LPWAVEFORMATEX = ^tWAVEFORMATEX;
  1815. LPCWAVEFORMATEX = ^WAVEFORMATEX;
  1816. type
  1817. WAVEFORMATEXTENSIBLE = record
  1818. Format:WAVEFORMATEX;
  1819. Samples:record
  1820. case longint of
  1821. 0: (wValidBitsPerSample:word);
  1822. 1: (wSamplesPerBlock:word);
  1823. 2: (wReserved:word);
  1824. end;
  1825. dwChannelMask:DWORD;
  1826. SubFormat:TGUID;
  1827. end;
  1828. PWAVEFORMATEXTENSIBLE = ^WAVEFORMATEXTENSIBLE;
  1829. { Extended PCM waveform format structure based on WAVEFORMATEXTENSIBLE. }
  1830. { Use this for multiple channel and hi-resolution PCM data }
  1831. type
  1832. WAVEFORMATPCMEX = WAVEFORMATEXTENSIBLE; { Format.cbSize = 22 }
  1833. PWAVEFORMATPCMEX = ^WAVEFORMATPCMEX;
  1834. NPWAVEFORMATPCMEX = ^WAVEFORMATPCMEX;
  1835. LPWAVEFORMATPCMEX = ^WAVEFORMATPCMEX;
  1836. { Extended format structure using IEEE Float data and based }
  1837. { on WAVEFORMATEXTENSIBLE. Use this for multiple channel }
  1838. { and hi-resolution PCM data in IEEE floating point format. }
  1839. WAVEFORMATIEEEFLOATEX = WAVEFORMATEXTENSIBLE; { Format.cbSize = 22 }
  1840. PWAVEFORMATIEEEFLOATEX = ^WAVEFORMATIEEEFLOATEX;
  1841. NPWAVEFORMATIEEEFLOATEX = ^WAVEFORMATIEEEFLOATEX;
  1842. LPWAVEFORMATIEEEFLOATEX = ^WAVEFORMATIEEEFLOATEX;
  1843. { Speaker Positions for dwChannelMask in WAVEFORMATEXTENSIBLE: }
  1844. const
  1845. SPEAKER_FRONT_LEFT = $1;
  1846. SPEAKER_FRONT_RIGHT = $2;
  1847. SPEAKER_FRONT_CENTER = $4;
  1848. SPEAKER_LOW_FREQUENCY = $8;
  1849. SPEAKER_BACK_LEFT = $10;
  1850. SPEAKER_BACK_RIGHT = $20;
  1851. SPEAKER_FRONT_LEFT_OF_CENTER = $40;
  1852. SPEAKER_FRONT_RIGHT_OF_CENTER = $80;
  1853. SPEAKER_BACK_CENTER = $100;
  1854. SPEAKER_SIDE_LEFT = $200;
  1855. SPEAKER_SIDE_RIGHT = $400;
  1856. SPEAKER_TOP_CENTER = $800;
  1857. SPEAKER_TOP_FRONT_LEFT = $1000;
  1858. SPEAKER_TOP_FRONT_CENTER = $2000;
  1859. SPEAKER_TOP_FRONT_RIGHT = $4000;
  1860. SPEAKER_TOP_BACK_LEFT = $8000;
  1861. SPEAKER_TOP_BACK_CENTER = $10000;
  1862. SPEAKER_TOP_BACK_RIGHT = $20000;
  1863. { Bit mask locations reserved for future use }
  1864. SPEAKER_RESERVED = $7FFC0000;
  1865. { Used to specify that any possible permutation of speaker configurations }
  1866. SPEAKER_ALL = $80000000;
  1867. {$IFNDEF NONEWWAVE}
  1868. { Define data for MS ADPCM }
  1869. type
  1870. adpcmcoef_tag = record
  1871. iCoef1:SmallInt;
  1872. iCoef2:SmallInt;
  1873. end;
  1874. ADPCMCOEFSET = adpcmcoef_tag;
  1875. PADPCMCOEFSET = ^ADPCMCOEFSET;
  1876. NPADPCMCOEFSET = ^ADPCMCOEFSET;
  1877. LPADPCMCOEFSET = ^ADPCMCOEFSET;
  1878. type
  1879. adpcmwaveformat_tag = record
  1880. wfx:WAVEFORMATEX;
  1881. wSamplesPerBlock:word;
  1882. wNumCoef:word;
  1883. aCoef:array[0..0] of ADPCMCOEFSET;
  1884. end;
  1885. ADPCMWAVEFORMAT = adpcmwaveformat_tag;
  1886. PADPCMWAVEFORMAT = ^ADPCMWAVEFORMAT;
  1887. NPADPCMWAVEFORMAT = ^ADPCMWAVEFORMAT;
  1888. LPADPCMWAVEFORMAT = ^ADPCMWAVEFORMAT;
  1889. { Intel's DVI ADPCM structure definitions }
  1890. { }
  1891. { for WAVE_FORMAT_DVI_ADPCM (0x0011) }
  1892. type
  1893. dvi_adpcmwaveformat_tag = record
  1894. wfx:WAVEFORMATEX;
  1895. wSamplesPerBlock:word;
  1896. end;
  1897. DVIADPCMWAVEFORMAT = dvi_adpcmwaveformat_tag;
  1898. PDVIADPCMWAVEFORMAT = ^DVIADPCMWAVEFORMAT;
  1899. NPDVIADPCMWAVEFORMAT = ^DVIADPCMWAVEFORMAT;
  1900. LPDVIADPCMWAVEFORMAT = ^DVIADPCMWAVEFORMAT;
  1901. { }
  1902. { IMA endorsed ADPCM structure definitions--note that this is exactly }
  1903. { the same format as Intel's DVI ADPCM. }
  1904. { }
  1905. { for WAVE_FORMAT_IMA_ADPCM (0x0011) }
  1906. { }
  1907. { }
  1908. ima_adpcmwaveformat_tag = record
  1909. wfx:WAVEFORMATEX;
  1910. wSamplesPerBlock:word;
  1911. end;
  1912. IMAADPCMWAVEFORMAT = ima_adpcmwaveformat_tag;
  1913. PIMAADPCMWAVEFORMAT = ^IMAADPCMWAVEFORMAT;
  1914. NPIMAADPCMWAVEFORMAT = ^IMAADPCMWAVEFORMAT;
  1915. LPIMAADPCMWAVEFORMAT = ^IMAADPCMWAVEFORMAT;
  1916. {
  1917. //VideoLogic's Media Space ADPCM Structure definitions
  1918. // for WAVE_FORMAT_MEDIASPACE_ADPCM (0x0012)
  1919. //
  1920. //
  1921. }
  1922. mediaspace_adpcmwaveformat_tag = record
  1923. wfx:WAVEFORMATEX;
  1924. wRevision:word;
  1925. end;
  1926. MEDIASPACEADPCMWAVEFORMAT = mediaspace_adpcmwaveformat_tag;
  1927. PMEDIASPACEADPCMWAVEFORMAT = ^MEDIASPACEADPCMWAVEFORMAT;
  1928. NPMEDIASPACEADPCMWAVEFORMAT = ^MEDIASPACEADPCMWAVEFORMAT;
  1929. LPMEDIASPACEADPCMWAVEFORMAT = ^MEDIASPACEADPCMWAVEFORMAT;
  1930. { Sierra Semiconductor }
  1931. { }
  1932. { for WAVE_FORMAT_SIERRA_ADPCM (0x0013) }
  1933. sierra_adpcmwaveformat_tag = record
  1934. wfx:WAVEFORMATEX;
  1935. wRevision:word;
  1936. end;
  1937. SIERRAADPCMWAVEFORMAT = sierra_adpcmwaveformat_tag;
  1938. PSIERRAADPCMWAVEFORMAT = ^SIERRAADPCMWAVEFORMAT;
  1939. NPSIERRAADPCMWAVEFORMAT = ^SIERRAADPCMWAVEFORMAT;
  1940. LPSIERRAADPCMWAVEFORMAT = ^SIERRAADPCMWAVEFORMAT;
  1941. { Antex Electronics structure definitions }
  1942. { }
  1943. { for WAVE_FORMAT_G723_ADPCM (0x0014) }
  1944. g723_adpcmwaveformat_tag = record
  1945. wfx:WAVEFORMATEX;
  1946. cbExtraSize:word;
  1947. nAuxBlockSize:word;
  1948. end;
  1949. G723_ADPCMWAVEFORMAT = g723_adpcmwaveformat_tag;
  1950. PG723_ADPCMWAVEFORMAT = ^G723_ADPCMWAVEFORMAT;
  1951. NPG723_ADPCMWAVEFORMAT = ^G723_ADPCMWAVEFORMAT;
  1952. LPG723_ADPCMWAVEFORMAT = ^G723_ADPCMWAVEFORMAT;
  1953. { }
  1954. { DSP Solutions (formerly DIGISPEECH) structure definitions }
  1955. { }
  1956. { for WAVE_FORMAT_DIGISTD (0x0015) }
  1957. digistdwaveformat_tag = record
  1958. wfx : WAVEFORMATEX;
  1959. end;
  1960. DIGISTDWAVEFORMAT = digistdwaveformat_tag;
  1961. PDIGISTDWAVEFORMAT = ^DIGISTDWAVEFORMAT;
  1962. NPDIGISTDWAVEFORMAT = ^DIGISTDWAVEFORMAT;
  1963. LPDIGISTDWAVEFORMAT = ^DIGISTDWAVEFORMAT;
  1964. { }
  1965. { DSP Solutions (formerly DIGISPEECH) structure definitions }
  1966. { }
  1967. { for WAVE_FORMAT_DIGIFIX (0x0016) }
  1968. { }
  1969. { }
  1970. digifixwaveformat_tag = record
  1971. wfx : WAVEFORMATEX;
  1972. end;
  1973. DIGIFIXWAVEFORMAT = digifixwaveformat_tag;
  1974. PDIGIFIXWAVEFORMAT = ^DIGIFIXWAVEFORMAT;
  1975. NPDIGIFIXWAVEFORMAT = ^DIGIFIXWAVEFORMAT;
  1976. LPDIGIFIXWAVEFORMAT = ^DIGIFIXWAVEFORMAT;
  1977. { }
  1978. { Dialogic Corporation }
  1979. { WAVEFORMAT_DIALOGIC_OKI_ADPCM (0x0017) }
  1980. { }
  1981. creative_fastspeechformat_tag = record
  1982. ewf:WAVEFORMATEX;
  1983. end;
  1984. DIALOGICOKIADPCMWAVEFORMAT = creative_fastspeechformat_tag;
  1985. PDIALOGICOKIADPCMWAVEFORMAT = ^DIALOGICOKIADPCMWAVEFORMAT;
  1986. NPDIALOGICOKIADPCMWAVEFORMAT = ^DIALOGICOKIADPCMWAVEFORMAT;
  1987. LPDIALOGICOKIADPCMWAVEFORMAT = ^DIALOGICOKIADPCMWAVEFORMAT;
  1988. { }
  1989. { Yamaha Compression's ADPCM structure definitions }
  1990. { }
  1991. { for WAVE_FORMAT_YAMAHA_ADPCM (0x0020) }
  1992. { }
  1993. { }
  1994. yamaha_adpmcwaveformat_tag = record
  1995. wfx : WAVEFORMATEX;
  1996. end;
  1997. YAMAHA_ADPCMWAVEFORMAT = yamaha_adpmcwaveformat_tag;
  1998. PYAMAHA_ADPCMWAVEFORMAT = ^YAMAHA_ADPCMWAVEFORMAT;
  1999. (* near ignored *)
  2000. NPYAMAHA_ADPCMWAVEFORMAT = ^YAMAHA_ADPCMWAVEFORMAT;
  2001. (* far ignored *)
  2002. LPYAMAHA_ADPCMWAVEFORMAT = ^YAMAHA_ADPCMWAVEFORMAT;
  2003. { }
  2004. { Speech Compression's Sonarc structure definitions }
  2005. { }
  2006. { for WAVE_FORMAT_SONARC (0x0021) }
  2007. { }
  2008. { }
  2009. sonarcwaveformat_tag = record
  2010. wfx : WAVEFORMATEX;
  2011. wCompType : word;
  2012. end;
  2013. SONARCWAVEFORMAT = sonarcwaveformat_tag;
  2014. PSONARCWAVEFORMAT = ^SONARCWAVEFORMAT;
  2015. NPSONARCWAVEFORMAT = ^SONARCWAVEFORMAT;
  2016. LPSONARCWAVEFORMAT = SONARCWAVEFORMAT;
  2017. { }
  2018. { DSP Groups's TRUESPEECH structure definitions }
  2019. { }
  2020. { for WAVE_FORMAT_DSPGROUP_TRUESPEECH (0x0022) }
  2021. { }
  2022. { }
  2023. truespeechwaveformat_tag = record
  2024. wfx : WAVEFORMATEX;
  2025. wRevision :word;
  2026. nSamplesPerBlock:word;
  2027. abReserved :array[0..27] of byte;
  2028. end;
  2029. TRUESPEECHWAVEFORMAT = truespeechwaveformat_tag;
  2030. PTRUESPEECHWAVEFORMAT = ^TRUESPEECHWAVEFORMAT;
  2031. NPTRUESPEECHWAVEFORMAT = ^TRUESPEECHWAVEFORMAT;
  2032. LPTRUESPEECHWAVEFORMAT = ^TRUESPEECHWAVEFORMAT;
  2033. { }
  2034. { Echo Speech Corp structure definitions }
  2035. { }
  2036. { for WAVE_FORMAT_ECHOSC1 (0x0023) }
  2037. echosc1waveformat_tag = record
  2038. wfx:WAVEFORMATEX;
  2039. end;
  2040. ECHOSC1WAVEFORMAT = echosc1waveformat_tag;
  2041. PECHOSC1WAVEFORMAT = ^ECHOSC1WAVEFORMAT;
  2042. NPECHOSC1WAVEFORMAT = ^ECHOSC1WAVEFORMAT;
  2043. LPECHOSC1WAVEFORMAT = ^ECHOSC1WAVEFORMAT;
  2044. { }
  2045. { Audiofile Inc.structure definitions }
  2046. { }
  2047. { for WAVE_FORMAT_AUDIOFILE_AF36 (0x0024) }
  2048. { }
  2049. { }
  2050. audiofile_af36waveformat_tag = record
  2051. wfx : WAVEFORMATEX;
  2052. end;
  2053. AUDIOFILE_AF36WAVEFORMAT = audiofile_af36waveformat_tag;
  2054. PAUDIOFILE_AF36WAVEFORMAT = ^AUDIOFILE_AF36WAVEFORMAT;
  2055. NPAUDIOFILE_AF36WAVEFORMAT = ^AUDIOFILE_AF36WAVEFORMAT;
  2056. LPAUDIOFILE_AF36WAVEFORMAT = ^AUDIOFILE_AF36WAVEFORMAT;
  2057. { }
  2058. { Audio Processing Technology structure definitions }
  2059. { }
  2060. { for WAVE_FORMAT_APTX (0x0025) }
  2061. { }
  2062. { }
  2063. aptxwaveformat_tag = record
  2064. wfx : WAVEFORMATEX;
  2065. end;
  2066. APTXWAVEFORMAT = aptxwaveformat_tag;
  2067. PAPTXWAVEFORMAT = ^APTXWAVEFORMAT;
  2068. NPAPTXWAVEFORMAT = ^APTXWAVEFORMAT;
  2069. LPAPTXWAVEFORMAT = ^APTXWAVEFORMAT;
  2070. { }
  2071. { Audiofile Inc.structure definitions }
  2072. { }
  2073. { for WAVE_FORMAT_AUDIOFILE_AF10 (0x0026) }
  2074. { }
  2075. { }
  2076. audiofile_af10waveformat_tag = record
  2077. wfx : WAVEFORMATEX;
  2078. end;
  2079. AUDIOFILE_AF10WAVEFORMAT = audiofile_af10waveformat_tag;
  2080. PAUDIOFILE_AF10WAVEFORMAT = ^AUDIOFILE_AF10WAVEFORMAT;
  2081. NPAUDIOFILE_AF10WAVEFORMAT = ^AUDIOFILE_AF10WAVEFORMAT;
  2082. LPAUDIOFILE_AF10WAVEFORMAT = ^AUDIOFILE_AF10WAVEFORMAT;
  2083. { }
  2084. { Dolby's AC-2 wave format structure definition
  2085. WAVE_FORMAT_DOLBY_AC2 (0x0030) }
  2086. { }
  2087. dolbyac2waveformat_tag = record
  2088. wfx:WAVEFORMATEX;
  2089. nAuxBitsCode:word;
  2090. end;
  2091. DOLBYAC2WAVEFORMAT = dolbyac2waveformat_tag;
  2092. {Microsoft's }
  2093. { WAVE_FORMAT_GSM 610 0x0031 }
  2094. { }
  2095. gsm610waveformat_tag = record
  2096. wfx : WAVEFORMATEX;
  2097. wSamplesPerBlock : word;
  2098. end;
  2099. GSM610WAVEFORMAT = gsm610waveformat_tag;
  2100. PGSM610WAVEFORMAT = ^GSM610WAVEFORMAT;
  2101. NPGSM610WAVEFORMAT = ^GSM610WAVEFORMAT;
  2102. LPGSM610WAVEFORMAT = ^GSM610WAVEFORMAT;
  2103. { }
  2104. { Antex Electronics Corp }
  2105. { }
  2106. { for WAVE_FORMAT_ADPCME (0x0033) }
  2107. { }
  2108. { }
  2109. adpcmewaveformat_tag = record
  2110. wfx : WAVEFORMATEX;
  2111. wSamplesPerBlock:word;
  2112. end;
  2113. ADPCMEWAVEFORMAT = adpcmewaveformat_tag;
  2114. PADPCMEWAVEFORMAT = ^ADPCMEWAVEFORMAT;
  2115. NPADPCMEWAVEFORMAT = ^ADPCMEWAVEFORMAT;
  2116. LPADPCMEWAVEFORMAT = ^ADPCMEWAVEFORMAT;
  2117. { Control Resources Limited }
  2118. { WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034 }
  2119. { }
  2120. contres_vqlpcwaveformat_tag = record
  2121. wfx : WAVEFORMATEX;
  2122. wSamplesPerBlock :word;
  2123. end;
  2124. CONTRESVQLPCWAVEFORMAT = contres_vqlpcwaveformat_tag;
  2125. PCONTRESVQLPCWAVEFORMAT = ^CONTRESVQLPCWAVEFORMAT;
  2126. (* near ignored *)
  2127. NPCONTRESVQLPCWAVEFORMAT = ^CONTRESVQLPCWAVEFORMAT;
  2128. (* far ignored *)
  2129. LPCONTRESVQLPCWAVEFORMAT = ^CONTRESVQLPCWAVEFORMAT;
  2130. { for WAVE_FORMAT_DIGIREAL (0x0035) }
  2131. { }
  2132. { }
  2133. digirealwaveformat_tag = record
  2134. wfx : WAVEFORMATEX;
  2135. wSamplesPerBlock : word;
  2136. end;
  2137. DIGIREALWAVEFORMAT = digirealwaveformat_tag;
  2138. PDIGIREALWAVEFORMAT = ^DIGIREALWAVEFORMAT;
  2139. NPDIGIREALWAVEFORMAT = ^DIGIREALWAVEFORMAT;
  2140. LPDIGIREALWAVEFORMAT = ^DIGIREALWAVEFORMAT;
  2141. { DSP Solutions }
  2142. { }
  2143. { for WAVE_FORMAT_DIGIADPCM (0x0036) }
  2144. digiadpcmmwaveformat_tag = record
  2145. wfx : WAVEFORMATEX;
  2146. wSamplesPerBlock:word;
  2147. end;
  2148. DIGIADPCMWAVEFORMAT = digiadpcmmwaveformat_tag;
  2149. PDIGIADPCMWAVEFORMAT = ^DIGIADPCMWAVEFORMAT;
  2150. (* near ignored *)
  2151. NPDIGIADPCMWAVEFORMAT = ^DIGIADPCMWAVEFORMAT;
  2152. (* far ignored *)
  2153. LPDIGIADPCMWAVEFORMAT = ^DIGIADPCMWAVEFORMAT;
  2154. { Control Resources Limited }
  2155. { WAVE_FORMAT_CONTROL_RES_CR10 0x0037 }
  2156. contres_cr10waveformat_tag = record
  2157. wfx : WAVEFORMATEX;
  2158. wSamplesPerBlock :word;
  2159. end;
  2160. CONTRESCR10WAVEFORMAT = contres_cr10waveformat_tag;
  2161. PCONTRESCR10WAVEFORMAT = ^CONTRESCR10WAVEFORMAT;
  2162. NPCONTRESCR10WAVEFORMAT = ^CONTRESCR10WAVEFORMAT;
  2163. LPCONTRESCR10WAVEFORMAT = ^CONTRESCR10WAVEFORMAT;
  2164. { }
  2165. { Natural Microsystems }
  2166. { }
  2167. { for WAVE_FORMAT_NMS_VBXADPCM (0x0038) }
  2168. nms_vbxadpcmmwaveformat_tag = record
  2169. wfx : WAVEFORMATEX;
  2170. wSamplesPerBlock :word;
  2171. end;
  2172. NMS_VBXADPCMWAVEFORMAT = nms_vbxadpcmmwaveformat_tag;
  2173. PNMS_VBXADPCMWAVEFORMAT = ^NMS_VBXADPCMWAVEFORMAT;
  2174. (* near ignored *)
  2175. NPNMS_VBXADPCMWAVEFORMAT = ^NMS_VBXADPCMWAVEFORMAT;
  2176. (* far ignored *)
  2177. LPNMS_VBXADPCMWAVEFORMAT = ^NMS_VBXADPCMWAVEFORMAT;
  2178. { }
  2179. { Antex Electronics structure definitions }
  2180. { }
  2181. { for WAVE_FORMAT_G721_ADPCM (0x0040) }
  2182. { }
  2183. { }
  2184. g721_adpcmwaveformat_tag = record
  2185. wfx : WAVEFORMATEX;
  2186. nAuxBlockSize :word;
  2187. end;
  2188. G721_ADPCMWAVEFORMAT = g721_adpcmwaveformat_tag;
  2189. PG721_ADPCMWAVEFORMAT = ^G721_ADPCMWAVEFORMAT;
  2190. (* near ignored *)
  2191. NPG721_ADPCMWAVEFORMAT = ^G721_ADPCMWAVEFORMAT;
  2192. (* far ignored *)
  2193. LPG721_ADPCMWAVEFORMAT = ^G721_ADPCMWAVEFORMAT;
  2194. { Microsoft MPEG audio WAV definition }
  2195. { }
  2196. { MPEG-1 audio wave format (audio layer only). (0x0050) }
  2197. mpeg1waveformat_tag = record
  2198. wfx:WAVEFORMATEX;
  2199. fwHeadLayer:word;
  2200. dwHeadBitrate:DWORD;
  2201. fwHeadMode:word;
  2202. fwHeadModeExt:word;
  2203. wHeadEmphasis:word;
  2204. fwHeadFlags:word;
  2205. dwPTSLow:DWORD;
  2206. dwPTSHigh:DWORD;
  2207. end;
  2208. MPEG1WAVEFORMAT = mpeg1waveformat_tag;
  2209. PMPEG1WAVEFORMAT = ^MPEG1WAVEFORMAT;
  2210. NPMPEG1WAVEFORMAT = ^MPEG1WAVEFORMAT;
  2211. LPMPEG1WAVEFORMAT = ^MPEG1WAVEFORMAT;
  2212. const
  2213. ACM_MPEG_LAYER1 = $0001;
  2214. ACM_MPEG_LAYER2 = $0002;
  2215. ACM_MPEG_LAYER3 = $0004;
  2216. ACM_MPEG_STEREO = $0001;
  2217. ACM_MPEG_JOINTSTEREO = $0002;
  2218. ACM_MPEG_DUALCHANNEL = $0004;
  2219. ACM_MPEG_SINGLECHANNEL = $0008;
  2220. ACM_MPEG_PRIVATEBIT = $0001;
  2221. ACM_MPEG_COPYRIGHT = $0002;
  2222. ACM_MPEG_ORIGINALHOME = $0004;
  2223. ACM_MPEG_PROTECTIONBIT = $0008;
  2224. ACM_MPEG_ID_MPEG1 = $0010;
  2225. { MPEG Layer3 WAVEFORMATEX structure }
  2226. { for WAVE_FORMAT_MPEGLAYER3 (0x0055) }
  2227. MPEGLAYER3_WFX_EXTRA_BYTES = 12;
  2228. { WAVE_FORMAT_MPEGLAYER3 format sructure }
  2229. type
  2230. mpeglayer3waveformat_tag = record
  2231. wfx:WAVEFORMATEX;
  2232. wID:word;
  2233. fdwFlags:DWORD;
  2234. nBlockSize:WORD;
  2235. nFramesPerBlock:word;
  2236. nCodecDelay:word;
  2237. end;
  2238. MPEGLAYER3WAVEFORMAT = mpeglayer3waveformat_tag;
  2239. PMPEGLAYER3WAVEFORMAT = ^MPEGLAYER3WAVEFORMAT;
  2240. NPMPEGLAYER3WAVEFORMAT = ^MPEGLAYER3WAVEFORMAT;
  2241. LPMPEGLAYER3WAVEFORMAT = ^MPEGLAYER3WAVEFORMAT;
  2242. {==========================================================================; }
  2243. const
  2244. MPEGLAYER3_ID_UNKNOWN = 0;
  2245. MPEGLAYER3_ID_MPEG = 1;
  2246. MPEGLAYER3_ID_CONSTANTFRAMESIZE = 2;
  2247. MPEGLAYER3_FLAG_PADDING_ISO = $00000000;
  2248. MPEGLAYER3_FLAG_PADDING_ON = $00000001;
  2249. MPEGLAYER3_FLAG_PADDING_OFF = $00000002;
  2250. { Creative's ADPCM structure definitions }
  2251. { }
  2252. { for WAVE_FORMAT_CREATIVE_ADPCM (0x0200) }
  2253. type
  2254. creative_adpcmwaveformat_tag = record
  2255. wfx:WAVEFORMATEX;
  2256. wRevision:word;
  2257. end;
  2258. CREATIVEADPCMWAVEFORMAT = creative_adpcmwaveformat_tag;
  2259. PCREATIVEADPCMWAVEFORMAT = ^CREATIVEADPCMWAVEFORMAT;
  2260. NPCREATIVEADPCMWAVEFORMAT = ^CREATIVEADPCMWAVEFORMAT;
  2261. LPCREATIVEADPCMWAVEFORMAT = ^CREATIVEADPCMWAVEFORMAT;
  2262. { }
  2263. { Creative FASTSPEECH }
  2264. { WAVEFORMAT_CREATIVE_FASTSPEECH8 (0x0202) }
  2265. { }
  2266. creative_fastspeech8format_tag = record
  2267. wfx : WAVEFORMATEX;
  2268. wRevision : word;
  2269. end;
  2270. CREATIVEFASTSPEECH8WAVEFORMAT = creative_fastspeech8format_tag;
  2271. PCREATIVEFASTSPEECH8WAVEFORMAT = ^CREATIVEFASTSPEECH8WAVEFORMAT;
  2272. (* near ignored *)
  2273. NPCREATIVEFASTSPEECH8WAVEFORMAT = ^CREATIVEFASTSPEECH8WAVEFORMAT;
  2274. (* far ignored *)
  2275. LPCREATIVEFASTSPEECH8WAVEFORMAT = ^CREATIVEFASTSPEECH8WAVEFORMAT;
  2276. { }
  2277. { Creative FASTSPEECH }
  2278. { WAVEFORMAT_CREATIVE_FASTSPEECH10 (0x0203) }
  2279. { }
  2280. creative_fastspeech10format_tag = record
  2281. wfx : WAVEFORMATEX;
  2282. wRevision : word;
  2283. end;
  2284. CREATIVEFASTSPEECH10WAVEFORMAT = creative_fastspeech10format_tag;
  2285. PCREATIVEFASTSPEECH10WAVEFORMAT = ^CREATIVEFASTSPEECH10WAVEFORMAT;
  2286. (* near ignored *)
  2287. NPCREATIVEFASTSPEECH10WAVEFORMAT = ^CREATIVEFASTSPEECH10WAVEFORMAT;
  2288. (* far ignored *)
  2289. LPCREATIVEFASTSPEECH10WAVEFORMAT = ^CREATIVEFASTSPEECH10WAVEFORMAT;
  2290. { }
  2291. { Fujitsu FM Towns 'SND' structure }
  2292. { }
  2293. { for WAVE_FORMAT_FMMTOWNS_SND (0x0300) }
  2294. { }
  2295. { }
  2296. fmtowns_snd_waveformat_tag = record
  2297. wfx : WAVEFORMATEX;
  2298. wRevision : word;
  2299. end;
  2300. FMTOWNS_SND_WAVEFORMAT = fmtowns_snd_waveformat_tag;
  2301. PFMTOWNS_SND_WAVEFORMAT = ^FMTOWNS_SND_WAVEFORMAT;
  2302. (* near ignored *)
  2303. NPFMTOWNS_SND_WAVEFORMAT = ^FMTOWNS_SND_WAVEFORMAT;
  2304. (* far ignored *)
  2305. LPFMTOWNS_SND_WAVEFORMAT = ^FMTOWNS_SND_WAVEFORMAT;
  2306. { Olivetti structure }
  2307. { }
  2308. { for WAVE_FORMAT_OLIGSM (0x1000) }
  2309. oligsmwaveformat_tag = record
  2310. wfx : WAVEFORMATEX;
  2311. end;
  2312. OLIGSMWAVEFORMAT = oligsmwaveformat_tag;
  2313. POLIGSMWAVEFORMAT = ^OLIGSMWAVEFORMAT;
  2314. (* near ignored *)
  2315. NPOLIGSMWAVEFORMAT = ^OLIGSMWAVEFORMAT;
  2316. (* far ignored *)
  2317. LPOLIGSMWAVEFORMAT = ^OLIGSMWAVEFORMAT;
  2318. { }
  2319. { Olivetti structure }
  2320. { }
  2321. { for WAVE_FORMAT_OLIADPCM (0x1001) }
  2322. { }
  2323. { }
  2324. oliadpcmwaveformat_tag = record
  2325. wfx : WAVEFORMATEX;
  2326. end;
  2327. OLIADPCMWAVEFORMAT = oliadpcmwaveformat_tag;
  2328. POLIADPCMWAVEFORMAT = ^OLIADPCMWAVEFORMAT;
  2329. (* near ignored *)
  2330. NPOLIADPCMWAVEFORMAT = ^OLIADPCMWAVEFORMAT;
  2331. (* far ignored *)
  2332. LPOLIADPCMWAVEFORMAT = ^OLIADPCMWAVEFORMAT;
  2333. { }
  2334. { Olivetti structure }
  2335. { }
  2336. { for WAVE_FORMAT_OLICELP (0x1002) }
  2337. olicelpwaveformat_tag = record
  2338. wfx : WAVEFORMATEX;
  2339. end;
  2340. OLICELPWAVEFORMAT = olicelpwaveformat_tag;
  2341. POLICELPWAVEFORMAT = ^OLICELPWAVEFORMAT;
  2342. NPOLICELPWAVEFORMAT = ^OLICELPWAVEFORMAT;
  2343. LPOLICELPWAVEFORMAT = ^OLICELPWAVEFORMAT;
  2344. { }
  2345. { Olivetti structure }
  2346. { }
  2347. { for WAVE_FORMAT_OLISBC (0x1003) }
  2348. { }
  2349. { }
  2350. olisbcwaveformat_tag = record
  2351. wfx : WAVEFORMATEX;
  2352. end;
  2353. OLISBCWAVEFORMAT = olisbcwaveformat_tag;
  2354. POLISBCWAVEFORMAT = ^OLISBCWAVEFORMAT;
  2355. (* near ignored *)
  2356. NPOLISBCWAVEFORMAT = ^OLISBCWAVEFORMAT;
  2357. (* far ignored *)
  2358. LPOLISBCWAVEFORMAT = ^OLISBCWAVEFORMAT;
  2359. { }
  2360. { Olivetti structure }
  2361. { }
  2362. { for WAVE_FORMAT_OLIOPR (0x1004) }
  2363. { }
  2364. { }
  2365. olioprwaveformat_tag = record
  2366. wfx : WAVEFORMATEX;
  2367. end;
  2368. OLIOPRWAVEFORMAT = olioprwaveformat_tag;
  2369. POLIOPRWAVEFORMAT = ^OLIOPRWAVEFORMAT;
  2370. (* near ignored *)
  2371. NPOLIOPRWAVEFORMAT = ^OLIOPRWAVEFORMAT;
  2372. (* far ignored *)
  2373. LPOLIOPRWAVEFORMAT = ^OLIOPRWAVEFORMAT;
  2374. { }
  2375. { Crystal Semiconductor IMA ADPCM format }
  2376. { }
  2377. { for WAVE_FORMAT_CS_IMAADPCM (0x0039) }
  2378. { }
  2379. { }
  2380. csimaadpcmwaveformat_tag = record
  2381. wfx : WAVEFORMATEX;
  2382. end;
  2383. CSIMAADPCMWAVEFORMAT = csimaadpcmwaveformat_tag;
  2384. PCSIMAADPCMWAVEFORMAT = ^CSIMAADPCMWAVEFORMAT;
  2385. (* near ignored *)
  2386. NPCSIMAADPCMWAVEFORMAT = ^CSIMAADPCMWAVEFORMAT;
  2387. (* far ignored *)
  2388. LPCSIMAADPCMWAVEFORMAT = ^CSIMAADPCMWAVEFORMAT;
  2389. {==========================================================================; }
  2390. { }
  2391. { ACM Wave Filters }
  2392. { }
  2393. { }
  2394. {==========================================================================; }
  2395. const
  2396. WAVE_FILTER_UNKNOWN = $0000;
  2397. WAVE_FILTER_DEVELOPMENT = $FFFF;
  2398. type
  2399. wavefilter_tag = record
  2400. cbStruct:DWORD; //* Size of the filter in bytes */
  2401. dwFilterTag:DWORD; //* filter type */
  2402. fdwFilter:DWORD; //* Flags for the filter (Universal Dfns) */
  2403. dwReserved:array[0..4] of DWORD; //* Reserved for system use */
  2404. end;
  2405. WAVEFILTER = wavefilter_tag;
  2406. PWAVEFILTER = ^WAVEFILTER;
  2407. NPWAVEFILTER = ^WAVEFILTER;
  2408. LPWAVEFILTER = ^WAVEFILTER;
  2409. const
  2410. WAVE_FILTER_VOLUME = $0001;
  2411. type
  2412. wavefilter_volume_tag = record
  2413. wfltr:WAVEFILTER;
  2414. dwVolume:DWORD;
  2415. end;
  2416. VOLUMEWAVEFILTER = wavefilter_volume_tag;
  2417. PVOLUMEWAVEFILTER = ^VOLUMEWAVEFILTER;
  2418. NPVOLUMEWAVEFILTER = ^VOLUMEWAVEFILTER;
  2419. LPVOLUMEWAVEFILTER = ^VOLUMEWAVEFILTER;
  2420. const
  2421. WAVE_FILTER_ECHO = $0002;
  2422. type
  2423. wavefilter_echo_tag = record
  2424. wfltr:WAVEFILTER;
  2425. dwVolume:DWORD;
  2426. dwDelay:DWORD;
  2427. end;
  2428. ECHOWAVEFILTER = wavefilter_echo_tag;
  2429. PECHOWAVEFILTER = ^ECHOWAVEFILTER;
  2430. NPECHOWAVEFILTER = ^ECHOWAVEFILTER;
  2431. LPECHOWAVEFILTER = ^ECHOWAVEFILTER;
  2432. //////////////////////////////////////////////////////////////////////////
  2433. //
  2434. // New RIFF WAVE Chunks
  2435. //
  2436. const
  2437. RIFFWAVE_inst = FOURCC(byte(AnsiChar('i')) or
  2438. (byte(AnsiChar('n')) shl 8) or
  2439. (byte(AnsiChar('s')) shl 16) or
  2440. (byte(AnsiChar('t')) shl 24)
  2441. );
  2442. type
  2443. tag_s_RIFFWAVE_inst = record
  2444. bUnshiftedNote:byte;
  2445. chFineTune:ShortInt;
  2446. chGain:ShortInt;
  2447. bLowNote:byte;
  2448. bHighNote:byte;
  2449. bLowVelocity:byte;
  2450. bHighVelocity:byte;
  2451. end;
  2452. s_RIFFWAVE_inst = tag_s_RIFFWAVE_INST;
  2453. {$ENDIF} // NONEWWAVE
  2454. //////////////////////////////////////////////////////////////////////////
  2455. //
  2456. // New RIFF Forms
  2457. //
  2458. {$IFNDEF NONEWRIFF}
  2459. // RIFF AVI
  2460. //
  2461. // AVI file format is specified in a seperate file (AVIFMT.H),
  2462. // which is available in the VfW and Win 32 SDK
  2463. //
  2464. // RIFF CPPO
  2465. const
  2466. RIFFCPPO = FOURCC(byte(AnsiChar('C')) or
  2467. (byte(AnsiChar('P')) shl 8) or
  2468. (byte(AnsiChar('P')) shl 16) or
  2469. (byte(AnsiChar('O')) shl 24)
  2470. );
  2471. RIFFCPPO_objr = FOURCC(byte(AnsiChar('o')) or
  2472. (byte(AnsiChar('b')) shl 8) or
  2473. (byte(AnsiChar('j')) shl 16) or
  2474. (byte(AnsiChar('r')) shl 24)
  2475. );
  2476. RIFFCPPO_obji = FOURCC(byte(AnsiChar('o')) or
  2477. (byte(AnsiChar('b')) shl 8) or
  2478. (byte(AnsiChar('j')) shl 16) or
  2479. (byte(AnsiChar('i')) shl 24)
  2480. );
  2481. RIFFCPPO_clsr = FOURCC(byte(AnsiChar('c')) or
  2482. (byte(AnsiChar('l')) shl 8) or
  2483. (byte(AnsiChar('s')) shl 16) or
  2484. (byte(AnsiChar('r')) shl 24)
  2485. );
  2486. RIFFCPPO_clsi = FOURCC(byte(AnsiChar('c')) or
  2487. (byte(AnsiChar('l')) shl 8) or
  2488. (byte(AnsiChar('s')) shl 16) or
  2489. (byte(AnsiChar('i')) shl 24)
  2490. );
  2491. RIFFCPPO_mbr = FOURCC(byte(AnsiChar('m')) or
  2492. (byte(AnsiChar('b')) shl 8) or
  2493. (byte(AnsiChar('r')) shl 16) or
  2494. (byte(AnsiChar(' ')) shl 24)
  2495. );
  2496. RIFFCPPO_char = FOURCC(byte(AnsiChar('c')) or
  2497. (byte(AnsiChar('h')) shl 8) or
  2498. (byte(AnsiChar('a')) shl 16) or
  2499. (byte(AnsiChar('r')) shl 24)
  2500. );
  2501. RIFFCPPO_byte = FOURCC(byte(AnsiChar('b')) or
  2502. (byte(AnsiChar('y')) shl 8) or
  2503. (byte(AnsiChar('t')) shl 16) or
  2504. (byte(AnsiChar('e')) shl 24)
  2505. );
  2506. RIFFCPPO_int = FOURCC(byte(AnsiChar('i')) or
  2507. (byte(AnsiChar('n')) shl 8) or
  2508. (byte(AnsiChar('t')) shl 16) or
  2509. (byte(AnsiChar(' ')) shl 24)
  2510. );
  2511. RIFFCPPO_word = FOURCC(byte(AnsiChar('w')) or
  2512. (byte(AnsiChar('o')) shl 8) or
  2513. (byte(AnsiChar('r')) shl 16) or
  2514. (byte(AnsiChar('d')) shl 24)
  2515. );
  2516. RIFFCPPO_long = FOURCC(byte(AnsiChar('l')) or
  2517. (byte(AnsiChar('o')) shl 8) or
  2518. (byte(AnsiChar('n')) shl 16) or
  2519. (byte(AnsiChar('g')) shl 24)
  2520. );
  2521. RIFFCPPO_dwrd = FOURCC(byte(AnsiChar('d')) or
  2522. (byte(AnsiChar('w')) shl 8) or
  2523. (byte(AnsiChar('r')) shl 16) or
  2524. (byte(AnsiChar('d')) shl 24)
  2525. );
  2526. RIFFCPPO_flt = FOURCC(byte(AnsiChar('f')) or
  2527. (byte(AnsiChar('l')) shl 8) or
  2528. (byte(AnsiChar('t')) shl 16) or
  2529. (byte(AnsiChar(' ')) shl 24)
  2530. );
  2531. RIFFCPPO_dbl = FOURCC(byte(AnsiChar('d')) or
  2532. (byte(AnsiChar('b')) shl 8) or
  2533. (byte(AnsiChar('l')) shl 16) or
  2534. (byte(AnsiChar(' ')) shl 24)
  2535. );
  2536. RIFFCPPO_str = FOURCC(byte(AnsiChar('s')) or
  2537. (byte(AnsiChar('t')) shl 8) or
  2538. (byte(AnsiChar('r')) shl 16) or
  2539. (byte(AnsiChar(' ')) shl 24)
  2540. );
  2541. {$ENDIF} // NONEWRIFF
  2542. //////////////////////////////////////////////////////////////////////////
  2543. //
  2544. // DIB Compression Defines
  2545. //
  2546. const
  2547. BI_BITFIELDS = 3;
  2548. const
  2549. QUERYDIBSUPPORT = 3073;
  2550. QDI_SETDIBITS = $0001;
  2551. QDI_GETDIBITS = $0002;
  2552. QDI_DIBTOSCREEN = $0004;
  2553. QDI_STRETCHDIB = $0008;
  2554. { @CESYSGEN IF GWES_PGDI || GWES_MGBASE }
  2555. {$IFNDEF NOBITMAP}
  2556. type
  2557. tagEXBMINFOHEADER = record
  2558. bmi:BITMAPINFOHEADER;
  2559. // extended BITMAPINFOHEADER fields
  2560. biExtDataOffset:DWORD;
  2561. // Other elements will go here
  2562. // ...
  2563. // Format-specific information
  2564. // biExtDataOffset points here
  2565. end;
  2566. EXBMINFOHEADER = tagEXBMINFOHEADER;
  2567. {$ENDIF} // NOBITMAP
  2568. { @CESYSGEN ENDIF }
  2569. // New DIB Compression Defines
  2570. const
  2571. BICOMP_IBMULTIMOTION = FOURCC(byte(AnsiChar('U')) or
  2572. (byte(AnsiChar('L')) shl 8) or
  2573. (byte(AnsiChar('T')) shl 16) or
  2574. (byte(AnsiChar('I')) shl 24)
  2575. );
  2576. BICOMP_IBMPHOTOMOTION = FOURCC(byte(AnsiChar('P')) or
  2577. (byte(AnsiChar('H')) shl 8) or
  2578. (byte(AnsiChar('M')) shl 16) or
  2579. (byte(AnsiChar('O')) shl 24)
  2580. );
  2581. BICOMP_CREATIVEYUV = FOURCC(byte(AnsiChar('c')) or
  2582. (byte(AnsiChar('y')) shl 8) or
  2583. (byte(AnsiChar('u')) shl 16) or
  2584. (byte(AnsiChar('v')) shl 24)
  2585. );
  2586. {$IFNDEF NOJPEGDIB}
  2587. // New DIB Compression Defines
  2588. const
  2589. JPEG_DIB = FOURCC(byte(AnsiChar('J')) or
  2590. (byte(AnsiChar('P')) shl 8) or
  2591. (byte(AnsiChar('E')) shl 16) or
  2592. (byte(AnsiChar('G')) shl 24)
  2593. ); // Still image JPEG DIB biCompression
  2594. MJPG_DIB = FOURCC(byte(AnsiChar('M')) or
  2595. (byte(AnsiChar('J')) shl 8) or
  2596. (byte(AnsiChar('P')) shl 16) or
  2597. (byte(AnsiChar('G')) shl 24)
  2598. ); // Motion JPEG DIB biCompression
  2599. { JPEGProcess Definitions }
  2600. const
  2601. JPEG_PROCESS_BASELINE = 0; { Baseline DCT }
  2602. { AVI File format extensions }
  2603. AVIIF_CONTROLFRAME = $00000200; { This is a control frame }
  2604. { JIF Marker byte pairs in JPEG Interchange Format sequence }
  2605. { SOF Huff - Baseline DCT }
  2606. JIFMK_SOF0 = $FFC0;
  2607. { SOF Huff - Extended sequential DCT }
  2608. JIFMK_SOF1 = $FFC1;
  2609. { SOF Huff - Progressive DCT }
  2610. JIFMK_SOF2 = $FFC2;
  2611. { SOF Huff - Spatial (sequential) lossless }
  2612. JIFMK_SOF3 = $FFC3;
  2613. { SOF Huff - Differential sequential DCT }
  2614. JIFMK_SOF5 = $FFC5;
  2615. { SOF Huff - Differential progressive DCT }
  2616. JIFMK_SOF6 = $FFC6;
  2617. { SOF Huff - Differential spatial }
  2618. JIFMK_SOF7 = $FFC7;
  2619. { SOF Arith - Reserved for JPEG extensions }
  2620. JIFMK_JPG = $FFC8;
  2621. { SOF Arith - Extended sequential DCT }
  2622. JIFMK_SOF9 = $FFC9;
  2623. { SOF Arith - Progressive DCT }
  2624. JIFMK_SOF10 = $FFCA;
  2625. { SOF Arith - Spatial (sequential) lossless }
  2626. JIFMK_SOF11 = $FFCB;
  2627. { SOF Arith - Differential sequential DCT }
  2628. JIFMK_SOF13 = $FFCD;
  2629. { SOF Arith - Differential progressive DCT }
  2630. JIFMK_SOF14 = $FFCE;
  2631. { SOF Arith - Differential spatial }
  2632. JIFMK_SOF15 = $FFCF;
  2633. { Define Huffman Table(s) }
  2634. JIFMK_DHT = $FFC4;
  2635. { Define Arithmetic coding conditioning(s) }
  2636. JIFMK_DAC = $FFCC;
  2637. { Restart with modulo 8 count 0 }
  2638. JIFMK_RST0 = $FFD0;
  2639. { Restart with modulo 8 count 1 }
  2640. JIFMK_RST1 = $FFD1;
  2641. { Restart with modulo 8 count 2 }
  2642. JIFMK_RST2 = $FFD2;
  2643. { Restart with modulo 8 count 3 }
  2644. JIFMK_RST3 = $FFD3;
  2645. { Restart with modulo 8 count 4 }
  2646. JIFMK_RST4 = $FFD4;
  2647. { Restart with modulo 8 count 5 }
  2648. JIFMK_RST5 = $FFD5;
  2649. { Restart with modulo 8 count 6 }
  2650. JIFMK_RST6 = $FFD6;
  2651. { Restart with modulo 8 count 7 }
  2652. JIFMK_RST7 = $FFD7;
  2653. { Start of Image }
  2654. JIFMK_SOI = $FFD8;
  2655. { End of Image }
  2656. JIFMK_EOI = $FFD9;
  2657. { Start of Scan }
  2658. JIFMK_SOS = $FFDA;
  2659. { Define quantization Table(s) }
  2660. JIFMK_DQT = $FFDB;
  2661. { Define Number of Lines }
  2662. JIFMK_DNL = $FFDC;
  2663. { Define Restart Interval }
  2664. JIFMK_DRI = $FFDD;
  2665. { Define Hierarchical progression }
  2666. JIFMK_DHP = $FFDE;
  2667. { Expand Reference Component(s) }
  2668. JIFMK_EXP = $FFDF;
  2669. { Application Field 0 }
  2670. JIFMK_APP0 = $FFE0;
  2671. { Application Field 1 }
  2672. JIFMK_APP1 = $FFE1;
  2673. { Application Field 2 }
  2674. JIFMK_APP2 = $FFE2;
  2675. { Application Field 3 }
  2676. JIFMK_APP3 = $FFE3;
  2677. { Application Field 4 }
  2678. JIFMK_APP4 = $FFE4;
  2679. { Application Field 5 }
  2680. JIFMK_APP5 = $FFE5;
  2681. { Application Field 6 }
  2682. JIFMK_APP6 = $FFE6;
  2683. { Application Field 7 }
  2684. JIFMK_APP7 = $FFE7;
  2685. { Reserved for JPEG extensions }
  2686. JIFMK_JPG0 = $FFF0;
  2687. { Reserved for JPEG extensions }
  2688. JIFMK_JPG1 = $FFF1;
  2689. { Reserved for JPEG extensions }
  2690. JIFMK_JPG2 = $FFF2;
  2691. { Reserved for JPEG extensions }
  2692. JIFMK_JPG3 = $FFF3;
  2693. { Reserved for JPEG extensions }
  2694. JIFMK_JPG4 = $FFF4;
  2695. { Reserved for JPEG extensions }
  2696. JIFMK_JPG5 = $FFF5;
  2697. { Reserved for JPEG extensions }
  2698. JIFMK_JPG6 = $FFF6;
  2699. { Reserved for JPEG extensions }
  2700. JIFMK_JPG7 = $FFF7;
  2701. { Reserved for JPEG extensions }
  2702. JIFMK_JPG8 = $FFF8;
  2703. { Reserved for JPEG extensions }
  2704. JIFMK_JPG9 = $FFF9;
  2705. { Reserved for JPEG extensions }
  2706. JIFMK_JPG10 = $FFFA;
  2707. { Reserved for JPEG extensions }
  2708. JIFMK_JPG11 = $FFFB;
  2709. { Reserved for JPEG extensions }
  2710. JIFMK_JPG12 = $FFFC;
  2711. { Reserved for JPEG extensions }
  2712. JIFMK_JPG13 = $FFFD;
  2713. { Comment }
  2714. JIFMK_COM = $FFFE;
  2715. { for temp private use arith code }
  2716. JIFMK_TEM = $FF01;
  2717. { Reserved }
  2718. JIFMK_RES = $FF02;
  2719. { Zero stuffed byte - entropy data }
  2720. JIFMK_00 = $FF00;
  2721. { Fill byte }
  2722. JIFMK_FF = $FFFF;
  2723. { JPEGColorSpaceID Definitions }
  2724. { Y only component of YCbCr }
  2725. JPEG_Y = 1;
  2726. { YCbCr as define by CCIR 601 }
  2727. JPEG_YCbCr = 2;
  2728. { 3 component RGB }
  2729. JPEG_RGB = 3;
  2730. { Structure definitions }
  2731. { compression-specific fields }
  2732. { these fields are defined for 'JPEG' and 'MJPG' }
  2733. { Process specific fields }
  2734. type
  2735. tagJPEGINFOHEADER = record
  2736. // compression-specific fields
  2737. // these fields are defined for 'JPEG' and 'MJPG'
  2738. JPEGSize:DWORD;
  2739. JPEGProcess:DWORD;
  2740. // Process specific fields
  2741. JPEGColorSpaceID:DWORD;
  2742. JPEGBitsPerSample:DWORD;
  2743. JPEGHSubSampling:DWORD;
  2744. JPEGVSubSampling:DWORD;
  2745. end;
  2746. JPEGINFOHEADER = tagJPEGINFOHEADER;
  2747. {$IFDEF MJPGDHTSEG_STORAGE}
  2748. // Default DHT Segment
  2749. const
  2750. // JPEG DHT Segment for YCrCb omitted from MJPG data
  2751. MJPGDHTSeg:array[0..$01A4-1] of byte =
  2752. ($FF,$C4,$01,$A2,$00,$00,$01,$05,$01,$01,$01,$01,$01,$01,
  2753. $00,$00,$00,$00,$00,$00,$00,$00,$01,$02,$03,$04,$05,$06,
  2754. $07,$08,$09,$0A,$0B,$01,$00,$03,$01,$01,$01,$01,$01,$01,
  2755. $01,$01,$01,$00,$00,$00,$00,$00,$00,$01,$02,$03,$04,$05,
  2756. $06,$07,$08,$09,$0A,$0B,$10,$00,$02,$01,$03,$03,$02,$04,
  2757. $03,$05,$05,$04,$04,$00,$00,$01,$7D,$01,$02,$03,$00,$04,
  2758. $11,$05,$12,$21,$31,$41,$06,$13,$51,$61,$07,$22,$71,$14,
  2759. $32,$81,$91,$A1,$08,$23,$42,$B1,$C1,$15,$52,$D1,$F0,$24,
  2760. $33,$62,$72,$82,$09,$0A,$16,$17,$18,$19,$1A,$25,$26,$27,
  2761. $28,$29,$2A,$34,$35,$36,$37,$38,$39,$3A,$43,$44,$45,$46,
  2762. $47,$48,$49,$4A,$53,$54,$55,$56,$57,$58,$59,$5A,$63,$64,
  2763. $65,$66,$67,$68,$69,$6A,$73,$74,$75,$76,$77,$78,$79,$7A,
  2764. $83,$84,$85,$86,$87,$88,$89,$8A,$92,$93,$94,$95,$96,$97,
  2765. $98,$99,$9A,$A2,$A3,$A4,$A5,$A6,$A7,$A8,$A9,$AA,$B2,$B3,
  2766. $B4,$B5,$B6,$B7,$B8,$B9,$BA,$C2,$C3,$C4,$C5,$C6,$C7,$C8,
  2767. $C9,$CA,$D2,$D3,$D4,$D5,$D6,$D7,$D8,$D9,$DA,$E1,$E2,$E3,
  2768. $E4,$E5,$E6,$E7,$E8,$E9,$EA,$F1,$F2,$F3,$F4,$F5,$F6,$F7,
  2769. $F8,$F9,$FA,$11,$00,$02,$01,$02,$04,$04,$03,$04,$07,$05,
  2770. $04,$04,$00,$01,$02,$77,$00,$01,$02,$03,$11,$04,$05,$21,
  2771. $31,$06,$12,$41,$51,$07,$61,$71,$13,$22,$32,$81,$08,$14,
  2772. $42,$91,$A1,$B1,$C1,$09,$23,$33,$52,$F0,$15,$62,$72,$D1,
  2773. $0A,$16,$24,$34,$E1,$25,$F1,$17,$18,$19,$1A,$26,$27,$28,
  2774. $29,$2A,$35,$36,$37,$38,$39,$3A,$43,$44,$45,$46,$47,$48,
  2775. $49,$4A,$53,$54,$55,$56,$57,$58,$59,$5A,$63,$64,$65,$66,
  2776. $67,$68,$69,$6A,$73,$74,$75,$76,$77,$78,$79,$7A,$82,$83,
  2777. $84,$85,$86,$87,$88,$89,$8A,$92,$93,$94,$95,$96,$97,$98,
  2778. $99,$9A,$A2,$A3,$A4,$A5,$A6,$A7,$A8,$A9,$AA,$B2,$B3,$B4,
  2779. $B5,$B6,$B7,$B8,$B9,$BA,$C2,$C3,$C4,$C5,$C6,$C7,$C8,$C9,
  2780. $CA,$D2,$D3,$D4,$D5,$D6,$D7,$D8,$D9,$DA,$E2,$E3,$E4,$E5,
  2781. $E6,$E7,$E8,$E9,$EA,$F2,$F3,$F4,$F5,$F6,$F7,$F8,$F9,$FA
  2782. );
  2783. // End DHT default
  2784. {$ENDIF} // MJPGDHTSEG_STORAGE
  2785. {$ENDIF} // NOJPEGDIB
  2786. //////////////////////////////////////////////////////////////////////////
  2787. //
  2788. // Defined IC types
  2789. {$IFNDEF NONEWIC}
  2790. const
  2791. ICTYPE_VIDEO = FOURCC(byte(AnsiChar('v')) or
  2792. (byte(AnsiChar('i')) shl 8) or
  2793. (byte(AnsiChar('d')) shl 16) or
  2794. (byte(AnsiChar('c')) shl 24)
  2795. );
  2796. ICTYPE_AUDIO = FOURCC(byte(AnsiChar('a')) or
  2797. (byte(AnsiChar('u')) shl 8) or
  2798. (byte(AnsiChar('d')) shl 16) or
  2799. (byte(AnsiChar('c')) shl 24)
  2800. );
  2801. {$ENDIF} // NONEWIC
  2802. // Misc. FOURCC registration
  2803. {* Sierra Semiconductor: RDSP- Confidential RIFF file format
  2804. // for the storage and downloading of DSP
  2805. // code for Audio and communications devices.
  2806. *}
  2807. const
  2808. FOURCC_RDSP = FOURCC(byte(AnsiChar('R')) or
  2809. (byte(AnsiChar('D')) shl 8) or
  2810. (byte(AnsiChar('S')) shl 16) or
  2811. (byte(AnsiChar('P')) shl 24)
  2812. );
  2813. {$PACKRECORDS DEFAULT} // {#include "poppack.h" /* Revert to default packing */ }
  2814. implementation
  2815. end.