QuickTimeStreaming.pas 88 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506
  1. {
  2. File: QuickTime/QuickTimeStreaming.h
  3. Contains: QuickTime Interfaces.
  4. Version: QuickTime 7.7.1
  5. Copyright: © 1990-2012 by Apple Inc., all rights reserved
  6. Bugs?: For bug reports, consult the following page on
  7. the World Wide Web:
  8. http://bugs.freepascal.org
  9. }
  10. { Pascal Translation Updated: Jonas Maebe, <[email protected]>, October 2009 }
  11. { Pascal Translation Updated: Jonas Maebe, <[email protected]>, October 2012 }
  12. {
  13. Modified for use with Free Pascal
  14. Version 308
  15. Please report any bugs to <[email protected]>
  16. }
  17. {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
  18. {$mode macpas}
  19. {$modeswitch cblocks}
  20. {$packenum 1}
  21. {$macro on}
  22. {$inline on}
  23. {$calling mwpascal}
  24. unit QuickTimeStreaming;
  25. interface
  26. {$setc UNIVERSAL_INTERFACES_VERSION := $0400}
  27. {$setc GAP_INTERFACES_VERSION := $0308}
  28. {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
  29. {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
  30. {$endc}
  31. {$ifc defined CPUPOWERPC and defined CPUI386}
  32. {$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
  33. {$endc}
  34. {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
  35. {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
  36. {$endc}
  37. {$ifc not defined __ppc__ and defined CPUPOWERPC32}
  38. {$setc __ppc__ := 1}
  39. {$elsec}
  40. {$setc __ppc__ := 0}
  41. {$endc}
  42. {$ifc not defined __ppc64__ and defined CPUPOWERPC64}
  43. {$setc __ppc64__ := 1}
  44. {$elsec}
  45. {$setc __ppc64__ := 0}
  46. {$endc}
  47. {$ifc not defined __i386__ and defined CPUI386}
  48. {$setc __i386__ := 1}
  49. {$elsec}
  50. {$setc __i386__ := 0}
  51. {$endc}
  52. {$ifc not defined __x86_64__ and defined CPUX86_64}
  53. {$setc __x86_64__ := 1}
  54. {$elsec}
  55. {$setc __x86_64__ := 0}
  56. {$endc}
  57. {$ifc not defined __arm__ and defined CPUARM}
  58. {$setc __arm__ := 1}
  59. {$elsec}
  60. {$setc __arm__ := 0}
  61. {$endc}
  62. {$ifc not defined __arm64__ and defined CPUAARCH64}
  63. {$setc __arm64__ := 1}
  64. {$elsec}
  65. {$setc __arm64__ := 0}
  66. {$endc}
  67. {$ifc defined cpu64}
  68. {$setc __LP64__ := 1}
  69. {$elsec}
  70. {$setc __LP64__ := 0}
  71. {$endc}
  72. {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
  73. {$error Conflicting definitions for __ppc__ and __i386__}
  74. {$endc}
  75. {$ifc defined __ppc__ and __ppc__}
  76. {$setc TARGET_CPU_PPC := TRUE}
  77. {$setc TARGET_CPU_PPC64 := FALSE}
  78. {$setc TARGET_CPU_X86 := FALSE}
  79. {$setc TARGET_CPU_X86_64 := FALSE}
  80. {$setc TARGET_CPU_ARM := FALSE}
  81. {$setc TARGET_CPU_ARM64 := FALSE}
  82. {$setc TARGET_OS_MAC := TRUE}
  83. {$setc TARGET_OS_IPHONE := FALSE}
  84. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  85. {$setc TARGET_OS_EMBEDDED := FALSE}
  86. {$elifc defined __ppc64__ and __ppc64__}
  87. {$setc TARGET_CPU_PPC := FALSE}
  88. {$setc TARGET_CPU_PPC64 := TRUE}
  89. {$setc TARGET_CPU_X86 := FALSE}
  90. {$setc TARGET_CPU_X86_64 := FALSE}
  91. {$setc TARGET_CPU_ARM := FALSE}
  92. {$setc TARGET_CPU_ARM64 := FALSE}
  93. {$setc TARGET_OS_MAC := TRUE}
  94. {$setc TARGET_OS_IPHONE := FALSE}
  95. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  96. {$setc TARGET_OS_EMBEDDED := FALSE}
  97. {$elifc defined __i386__ and __i386__}
  98. {$setc TARGET_CPU_PPC := FALSE}
  99. {$setc TARGET_CPU_PPC64 := FALSE}
  100. {$setc TARGET_CPU_X86 := TRUE}
  101. {$setc TARGET_CPU_X86_64 := FALSE}
  102. {$setc TARGET_CPU_ARM := FALSE}
  103. {$setc TARGET_CPU_ARM64 := FALSE}
  104. {$ifc defined iphonesim}
  105. {$setc TARGET_OS_MAC := FALSE}
  106. {$setc TARGET_OS_IPHONE := TRUE}
  107. {$setc TARGET_IPHONE_SIMULATOR := TRUE}
  108. {$elsec}
  109. {$setc TARGET_OS_MAC := TRUE}
  110. {$setc TARGET_OS_IPHONE := FALSE}
  111. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  112. {$endc}
  113. {$setc TARGET_OS_EMBEDDED := FALSE}
  114. {$elifc defined __x86_64__ and __x86_64__}
  115. {$setc TARGET_CPU_PPC := FALSE}
  116. {$setc TARGET_CPU_PPC64 := FALSE}
  117. {$setc TARGET_CPU_X86 := FALSE}
  118. {$setc TARGET_CPU_X86_64 := TRUE}
  119. {$setc TARGET_CPU_ARM := FALSE}
  120. {$setc TARGET_CPU_ARM64 := FALSE}
  121. {$ifc defined iphonesim}
  122. {$setc TARGET_OS_MAC := FALSE}
  123. {$setc TARGET_OS_IPHONE := TRUE}
  124. {$setc TARGET_IPHONE_SIMULATOR := TRUE}
  125. {$elsec}
  126. {$setc TARGET_OS_MAC := TRUE}
  127. {$setc TARGET_OS_IPHONE := FALSE}
  128. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  129. {$endc}
  130. {$setc TARGET_OS_EMBEDDED := FALSE}
  131. {$elifc defined __arm__ and __arm__}
  132. {$setc TARGET_CPU_PPC := FALSE}
  133. {$setc TARGET_CPU_PPC64 := FALSE}
  134. {$setc TARGET_CPU_X86 := FALSE}
  135. {$setc TARGET_CPU_X86_64 := FALSE}
  136. {$setc TARGET_CPU_ARM := TRUE}
  137. {$setc TARGET_CPU_ARM64 := FALSE}
  138. {$setc TARGET_OS_MAC := FALSE}
  139. {$setc TARGET_OS_IPHONE := TRUE}
  140. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  141. {$setc TARGET_OS_EMBEDDED := TRUE}
  142. {$elifc defined __arm64__ and __arm64__}
  143. {$setc TARGET_CPU_PPC := FALSE}
  144. {$setc TARGET_CPU_PPC64 := FALSE}
  145. {$setc TARGET_CPU_X86 := FALSE}
  146. {$setc TARGET_CPU_X86_64 := FALSE}
  147. {$setc TARGET_CPU_ARM := FALSE}
  148. {$setc TARGET_CPU_ARM64 := TRUE}
  149. {$ifc defined ios}
  150. {$setc TARGET_OS_MAC := FALSE}
  151. {$setc TARGET_OS_IPHONE := TRUE}
  152. {$setc TARGET_OS_EMBEDDED := TRUE}
  153. {$elsec}
  154. {$setc TARGET_OS_MAC := TRUE}
  155. {$setc TARGET_OS_IPHONE := FALSE}
  156. {$setc TARGET_OS_EMBEDDED := FALSE}
  157. {$endc}
  158. {$setc TARGET_IPHONE_SIMULATOR := FALSE}
  159. {$elsec}
  160. {$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ nor __arm64__ is defined.}
  161. {$endc}
  162. {$ifc defined __LP64__ and __LP64__ }
  163. {$setc TARGET_CPU_64 := TRUE}
  164. {$elsec}
  165. {$setc TARGET_CPU_64 := FALSE}
  166. {$endc}
  167. {$ifc defined FPC_BIG_ENDIAN}
  168. {$setc TARGET_RT_BIG_ENDIAN := TRUE}
  169. {$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
  170. {$elifc defined FPC_LITTLE_ENDIAN}
  171. {$setc TARGET_RT_BIG_ENDIAN := FALSE}
  172. {$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
  173. {$elsec}
  174. {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
  175. {$endc}
  176. {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
  177. {$setc CALL_NOT_IN_CARBON := FALSE}
  178. {$setc OLDROUTINENAMES := FALSE}
  179. {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
  180. {$setc OPAQUE_UPP_TYPES := TRUE}
  181. {$setc OTCARBONAPPLICATION := TRUE}
  182. {$setc OTKERNEL := FALSE}
  183. {$setc PM_USE_SESSION_APIS := TRUE}
  184. {$setc TARGET_API_MAC_CARBON := TRUE}
  185. {$setc TARGET_API_MAC_OS8 := FALSE}
  186. {$setc TARGET_API_MAC_OSX := TRUE}
  187. {$setc TARGET_CARBON := TRUE}
  188. {$setc TARGET_CPU_68K := FALSE}
  189. {$setc TARGET_CPU_MIPS := FALSE}
  190. {$setc TARGET_CPU_SPARC := FALSE}
  191. {$setc TARGET_OS_UNIX := FALSE}
  192. {$setc TARGET_OS_WIN32 := FALSE}
  193. {$setc TARGET_RT_MAC_68881 := FALSE}
  194. {$setc TARGET_RT_MAC_CFM := FALSE}
  195. {$setc TARGET_RT_MAC_MACHO := TRUE}
  196. {$setc TYPED_FUNCTION_POINTERS := TRUE}
  197. {$setc TYPE_BOOL := FALSE}
  198. {$setc TYPE_EXTENDED := FALSE}
  199. {$setc TYPE_LONGLONG := TRUE}
  200. uses MacTypes,Components,Events,Files,QuickdrawTypes,Movies,ImageCompression,QuickTimeComponents;
  201. {$endc} {not MACOSALLINCLUDE}
  202. {$ifc TARGET_OS_MAC}
  203. {$ALIGN MAC68K}
  204. { QuickTime is not available to 64-bit clients }
  205. {$ifc not TARGET_CPU_64}
  206. const
  207. kQTSInfiniteDuration = $7FFFFFFF;
  208. kQTSUnknownDuration = $00000000;
  209. kQTSNormalForwardRate = $00010000;
  210. kQTSStoppedRate = $00000000;
  211. type
  212. QTSPresentationRecordPtr = ^QTSPresentationRecord;
  213. QTSPresentationRecord = record
  214. data: array [0..1-1] of SIGNEDLONG;
  215. end;
  216. type
  217. QTSPresentation = ^QTSPresentationRecord;
  218. QTSStreamRecordPtr = ^QTSStreamRecord;
  219. QTSStreamRecord = record
  220. data: array [0..1-1] of SIGNEDLONG;
  221. end;
  222. type
  223. QTSStream = ^QTSStreamRecord;
  224. QTSEditEntryPtr = ^QTSEditEntry;
  225. QTSEditEntry = record
  226. presentationDuration: TimeValue64;
  227. streamStartTime: TimeValue64;
  228. streamRate: Fixed;
  229. end;
  230. type
  231. QTSEditList = record
  232. numEdits: SInt32;
  233. edits: array [0..0] of QTSEditEntry;
  234. end;
  235. QTSEditListPtr = ^QTSEditList;
  236. type
  237. QTSEditListHandle = ^QTSEditListPtr;
  238. QTSNotificationProcPtr = function( inErr: ComponentResult; inNotificationType: OSType; inNotificationParams: UnivPtr; inRefCon: UnivPtr ): ComponentResult;
  239. QTSNotificationUPP = QTSNotificationProcPtr;
  240. {-----------------------------------------
  241. Get / Set Info
  242. -----------------------------------------}
  243. const
  244. kQTSGetURLLink = FourCharCode('gull'); { QTSGetURLLinkRecord* }
  245. { get and set }
  246. const
  247. kQTSTargetBufferDurationInfo = FourCharCode('bufr'); { Fixed* in seconds; expected, not actual }
  248. kQTSDurationInfo = FourCharCode('dura'); { QTSDurationAtom* }
  249. kQTSSoundLevelMeteringEnabledInfo = FourCharCode('mtrn'); { Boolean* }
  250. kQTSSoundLevelMeterInfo = FourCharCode('levm'); { LevelMeterInfoPtr }
  251. kQTSSourceTrackIDInfo = FourCharCode('otid'); { UInt32* }
  252. kQTSSourceLayerInfo = FourCharCode('olyr'); { UInt16* }
  253. kQTSSourceLanguageInfo = FourCharCode('olng'); { UInt16* }
  254. kQTSSourceTrackFlagsInfo = FourCharCode('otfl'); { SInt32* }
  255. kQTSSourceDimensionsInfo = FourCharCode('odim'); { QTSDimensionParams* }
  256. kQTSSourceVolumesInfo = FourCharCode('ovol'); { QTSVolumesParams* }
  257. kQTSSourceMatrixInfo = FourCharCode('omat'); { MatrixRecord* }
  258. kQTSSourceClipRectInfo = FourCharCode('oclp'); { Rect* }
  259. kQTSSourceGraphicsModeInfo = FourCharCode('ogrm'); { QTSGraphicsModeParams* }
  260. kQTSSourceScaleInfo = FourCharCode('oscl'); { Point* }
  261. kQTSSourceBoundingRectInfo = FourCharCode('orct'); { Rect* }
  262. kQTSSourceUserDataInfo = FourCharCode('oudt'); { UserData }
  263. kQTSSourceInputMapInfo = FourCharCode('oimp'); { QTAtomContainer }
  264. kQTSInfo_DataProc = FourCharCode('datp'); { QTSDataProcParams* }
  265. kQTSInfo_SendDataExtras = FourCharCode('dext'); { QTSSendDataExtrasParams* }
  266. kQTSInfo_HintTrackID = FourCharCode('htid'); { long* }
  267. kQTSInfo_URL = FourCharCode('url '); { Handle*, cstring in handle }
  268. kQTSInfo_Authentication = FourCharCode('auup'); { QTSAuthenticationParams }
  269. kQTSInfo_MediaPacketizer = FourCharCode('rmpk'); { ComponentInstance }
  270. { get only }
  271. const
  272. kQTSStatisticsInfo = FourCharCode('stat'); { QTSStatisticsParams* }
  273. kQTSMinStatusDimensionsInfo = FourCharCode('mstd'); { QTSDimensionParams* }
  274. kQTSNormalStatusDimensionsInfo = FourCharCode('nstd'); { QTSDimensionParams* }
  275. kQTSTotalDataRateInfo = FourCharCode('drtt'); { UInt32*, add to what's there }
  276. kQTSTotalDataRateInInfo = FourCharCode('drti'); { UInt32*, add to what's there }
  277. kQTSTotalDataRateOutInfo = FourCharCode('drto'); { UInt32*, add to what's there }
  278. kQTSLostPercentInfo = FourCharCode('lpct'); { QTSLostPercentParams*, add to what's there }
  279. kQTSNumViewersInfo = FourCharCode('nviw'); { UInt32* }
  280. kQTSMediaTypeInfo = FourCharCode('mtyp'); { OSType* }
  281. kQTSNameInfo = FourCharCode('name'); { QTSNameParams* }
  282. kQTSCanHandleSendDataType = FourCharCode('chsd'); { QTSCanHandleSendDataTypeParams* }
  283. kQTSAnnotationsInfo = FourCharCode('meta'); { QTAtomContainer }
  284. kQTSRemainingBufferTimeInfo = FourCharCode('btms'); { UInt32* remaining buffer time before playback, in microseconds }
  285. kQTSInfo_SettingsText = FourCharCode('sttx'); { QTSSettingsTextParams* }
  286. kQTSInfo_AverageFrameRate = FourCharCode('fps '); { UnsignedFixed* }
  287. type
  288. QTSAuthenticationParamsPtr = ^QTSAuthenticationParams;
  289. QTSAuthenticationParams = record
  290. flags: SInt32;
  291. userID: ConstCStringPtr; { caller disposes of pointer}
  292. password: ConstCStringPtr; { caller disposes of pointer}
  293. end;
  294. const
  295. kQTSTargetBufferDurationTimeScale = 1000;
  296. type
  297. QTSPanelFilterParamsPtr = ^QTSPanelFilterParams;
  298. QTSPanelFilterParams = record
  299. version: SInt32;
  300. inStream: QTSStream;
  301. inPanelType: OSType;
  302. inPanelSubType: OSType;
  303. details: QTAtomSpec;
  304. end;
  305. { return true to keep this panel}
  306. type
  307. QTSPanelFilterProcPtr = function( var inParams: QTSPanelFilterParams; inRefCon: UnivPtr ): Boolean;
  308. QTSPanelFilterUPP = QTSPanelFilterProcPtr;
  309. const
  310. kQTSSettingsTextSummary = FourCharCode('set1');
  311. kQTSSettingsTextDetails = FourCharCode('setd');
  312. type
  313. QTSSettingsTextParamsPtr = ^QTSSettingsTextParams;
  314. QTSSettingsTextParams = record
  315. flags: SInt32; { None yet defined}
  316. inSettingsSelector: OSType; { which kind of setting you want from enum above}
  317. outSettingsAsText: Handle; { QTS allocates; Caller disposes}
  318. inPanelFilterProc: QTSPanelFilterUPP; { To get a subset filter with this }
  319. inPanelFilterProcRefCon: UnivPtr;
  320. end;
  321. type
  322. QTSCanHandleSendDataTypeParamsPtr = ^QTSCanHandleSendDataTypeParams;
  323. QTSCanHandleSendDataTypeParams = record
  324. modifierTypeOrInputID: SInt32;
  325. isModifierType: Boolean;
  326. returnedCanHandleSendDataType: Boolean; { callee sets to true if it can handle it}
  327. end;
  328. type
  329. QTSNameParams = record
  330. maxNameLength: SInt32;
  331. requestedLanguage: SInt32;
  332. returnedActualLanguage: SInt32;
  333. returnedName: UInt8Ptr; { pascal string; caller supplies}
  334. end;
  335. type
  336. QTSLostPercentParamsPtr = ^QTSLostPercentParams;
  337. QTSLostPercentParams = record
  338. receivedPkts: UInt32;
  339. lostPkts: UInt32;
  340. percent: Fixed;
  341. end;
  342. type
  343. QTSDimensionParamsPtr = ^QTSDimensionParams;
  344. QTSDimensionParams = record
  345. width: Fixed;
  346. height: Fixed;
  347. end;
  348. type
  349. QTSVolumesParamsPtr = ^QTSVolumesParams;
  350. QTSVolumesParams = record
  351. leftVolume: SInt16;
  352. rightVolume: SInt16;
  353. end;
  354. type
  355. QTSGraphicsModeParamsPtr = ^QTSGraphicsModeParams;
  356. QTSGraphicsModeParams = record
  357. graphicsMode: SInt16;
  358. opColor: RGBColor;
  359. end;
  360. type
  361. QTSGetURLLinkRecordPtr = ^QTSGetURLLinkRecord;
  362. QTSGetURLLinkRecord = record
  363. displayWhere: Point;
  364. returnedURLLink: Handle;
  365. end;
  366. const
  367. kQTSDataProcParamsVersion1 = 1;
  368. const
  369. kQTSDataProcType_MediaSample = FourCharCode('mdia');
  370. kQTSDataProcType_HintSample = FourCharCode('hint');
  371. type
  372. QTSDataProcParamsPtr = ^QTSDataProcParams;
  373. QTSDataProcParams = record
  374. version: SInt32;
  375. flags: SInt32;
  376. stream: QTSStream;
  377. procType: OSType;
  378. proc: QTSNotificationUPP;
  379. procRefCon: UnivPtr;
  380. end;
  381. const
  382. kQTSDataProcSelector_SampleData = FourCharCode('samp');
  383. kQTSDataProcSelector_UserData = FourCharCode('user');
  384. const
  385. kQTSSampleDataCallbackParamsVersion1 = 1;
  386. type
  387. QTSSampleDataCallbackParamsPtr = ^QTSSampleDataCallbackParams;
  388. QTSSampleDataCallbackParams = record
  389. version: SInt32;
  390. flags: SInt32;
  391. stream: QTSStream;
  392. procType: OSType;
  393. mediaType: OSType;
  394. mediaTimeScale: TimeScale;
  395. sampleDesc: SampleDescriptionHandle;
  396. sampleDescSeed: UInt32;
  397. sampleTime: TimeValue64;
  398. duration: TimeValue64; { could be 0 }
  399. sampleFlags: SInt32;
  400. dataLength: UInt32;
  401. data: {const} UnivPtr;
  402. end;
  403. const
  404. kQTSUserDataCallbackParamsVersion1 = 1;
  405. type
  406. QTSUserDataCallbackParamsPtr = ^QTSUserDataCallbackParams;
  407. QTSUserDataCallbackParams = record
  408. version: SInt32;
  409. flags: SInt32;
  410. stream: QTSStream;
  411. procType: OSType;
  412. userDataType: OSType;
  413. userDataHandle: Handle; { caller must make copy if it wants to keep the data around}
  414. end;
  415. const
  416. kQTSSendDataExtrasParamsVersion1 = 1;
  417. type
  418. QTSSendDataExtrasParamsPtr = ^QTSSendDataExtrasParams;
  419. QTSSendDataExtrasParams = record
  420. version: SInt32;
  421. flags: SInt32;
  422. procType: OSType;
  423. end;
  424. type
  425. QTSModalFilterProcPtr = function( inDialog: DialogPtr; const (*var*) inEvent: EventRecord; var ioItemHit: SInt16; inRefCon: UnivPtr ): Boolean;
  426. QTSModalFilterUPP = QTSModalFilterProcPtr;
  427. {-----------------------------------------
  428. Characteristics
  429. -----------------------------------------}
  430. { characteristics in Movies.h work here too }
  431. const
  432. kQTSSupportsPerStreamControlCharacteristic = FourCharCode('psct');
  433. type
  434. QTSVideoParamsPtr = ^QTSVideoParams;
  435. QTSVideoParams = record
  436. width: Fixed;
  437. height: Fixed;
  438. matrix: MatrixRecord;
  439. gWorld: CGrafPtr;
  440. gdHandle: GDHandle_fix;
  441. clip: RgnHandle;
  442. graphicsMode: SInt16;
  443. opColor: RGBColor;
  444. end;
  445. type
  446. QTSAudioParamsPtr = ^QTSAudioParams;
  447. QTSAudioParams = record
  448. leftVolume: SInt16;
  449. rightVolume: SInt16;
  450. bassLevel: SInt16;
  451. trebleLevel: SInt16;
  452. frequencyBandsCount: SInt16;
  453. frequencyBands: UnivPtr;
  454. levelMeteringEnabled: Boolean;
  455. end;
  456. type
  457. QTSMediaParamsPtr = ^QTSMediaParams;
  458. QTSMediaParams = record
  459. v: QTSVideoParams;
  460. a: QTSAudioParams;
  461. end;
  462. const
  463. kQTSMustDraw = 1 shl 3;
  464. kQTSAtEnd = 1 shl 4;
  465. kQTSPreflightDraw = 1 shl 5;
  466. kQTSSyncDrawing = 1 shl 6;
  467. { media task result flags }
  468. const
  469. kQTSDidDraw = 1 shl 0;
  470. kQTSNeedsToDraw = 1 shl 2;
  471. kQTSDrawAgain = 1 shl 3;
  472. kQTSPartialDraw = 1 shl 4;
  473. {============================================================================
  474. Notifications
  475. ============================================================================}
  476. { ------ notification types ------ }
  477. const
  478. kQTSNullNotification = FourCharCode('null'); { NULL }
  479. kQTSErrorNotification = FourCharCode('err '); { QTSErrorParams*, optional }
  480. kQTSNewPresDetectedNotification = FourCharCode('newp'); { QTSNewPresDetectedParams* }
  481. kQTSPresBeginChangingNotification = FourCharCode('prcb'); { NULL }
  482. kQTSPresDoneChangingNotification = FourCharCode('prcd'); { NULL }
  483. kQTSPresentationChangedNotification = FourCharCode('prch'); { NULL }
  484. kQTSNewStreamNotification = FourCharCode('stnw'); { QTSNewStreamParams* }
  485. kQTSStreamBeginChangingNotification = FourCharCode('stcb'); { QTSStream }
  486. kQTSStreamDoneChangingNotification = FourCharCode('stcd'); { QTSStream }
  487. kQTSStreamChangedNotification = FourCharCode('stch'); { QTSStreamChangedParams* }
  488. kQTSStreamGoneNotification = FourCharCode('stgn'); { QTSStreamGoneParams* }
  489. kQTSPreviewAckNotification = FourCharCode('pvak'); { QTSStream }
  490. kQTSPrerollAckNotification = FourCharCode('pack'); { QTSStream }
  491. kQTSStartAckNotification = FourCharCode('sack'); { QTSStream }
  492. kQTSStopAckNotification = FourCharCode('xack'); { QTSStream }
  493. kQTSStatusNotification = FourCharCode('stat'); { QTSStatusParams* }
  494. kQTSURLNotification = FourCharCode('url '); { QTSURLParams* }
  495. kQTSDurationNotification = FourCharCode('dura'); { QTSDurationAtom* }
  496. kQTSNewPresentationNotification = FourCharCode('nprs'); { QTSPresentation }
  497. kQTSPresentationGoneNotification = FourCharCode('xprs'); { QTSPresentation }
  498. kQTSPresentationDoneNotification = FourCharCode('pdon'); { NULL }
  499. kQTSBandwidthAlertNotification = FourCharCode('bwal'); { QTSBandwidthAlertParams* }
  500. kQTSAnnotationsChangedNotification = FourCharCode('meta'); { NULL }
  501. { flags for QTSErrorParams }
  502. const
  503. kQTSFatalErrorFlag = $00000001;
  504. type
  505. QTSErrorParamsPtr = ^QTSErrorParams;
  506. QTSErrorParams = record
  507. errorString: ConstCStringPtr;
  508. flags: SInt32;
  509. end;
  510. type
  511. QTSNewPresDetectedParamsPtr = ^QTSNewPresDetectedParams;
  512. QTSNewPresDetectedParams = record
  513. data: UnivPtr;
  514. end;
  515. type
  516. QTSNewStreamParamsPtr = ^QTSNewStreamParams;
  517. QTSNewStreamParams = record
  518. stream: QTSStream;
  519. end;
  520. type
  521. QTSStreamChangedParamsPtr = ^QTSStreamChangedParams;
  522. QTSStreamChangedParams = record
  523. stream: QTSStream;
  524. mediaComponent: ComponentInstance; { could be NULL }
  525. end;
  526. type
  527. QTSStreamGoneParamsPtr = ^QTSStreamGoneParams;
  528. QTSStreamGoneParams = record
  529. stream: QTSStream;
  530. end;
  531. type
  532. QTSStatusParamsPtr = ^QTSStatusParams;
  533. QTSStatusParams = record
  534. status: UInt32;
  535. statusString: ConstCStringPtr;
  536. detailedStatus: UInt32;
  537. detailedStatusString: ConstCStringPtr;
  538. end;
  539. type
  540. QTSInfoParamsPtr = ^QTSInfoParams;
  541. QTSInfoParams = record
  542. infoType: OSType;
  543. infoParams: UnivPtr;
  544. end;
  545. type
  546. QTSURLParamsPtr = ^QTSURLParams;
  547. QTSURLParams = record
  548. urlLength: UInt32;
  549. url: ConstCStringPtr;
  550. end;
  551. const
  552. kQTSBandwidthAlertNeedToStop = 1 shl 0;
  553. kQTSBandwidthAlertRestartAt = 1 shl 1;
  554. type
  555. QTSBandwidthAlertParamsPtr = ^QTSBandwidthAlertParams;
  556. QTSBandwidthAlertParams = record
  557. flags: SInt32;
  558. restartAt: TimeValue; { new field in QT 4.1}
  559. reserved: UnivPtr;
  560. end;
  561. {============================================================================
  562. Presentation
  563. ============================================================================}
  564. {-----------------------------------------
  565. Flags
  566. -----------------------------------------}
  567. { flags for NewPresentationFromData }
  568. const
  569. kQTSAutoModeFlag = $00000001;
  570. kQTSDontShowStatusFlag = $00000008;
  571. kQTSSendMediaFlag = $00010000;
  572. kQTSReceiveMediaFlag = $00020000;
  573. type
  574. QTSNewPresentationParamsPtr = ^QTSNewPresentationParams;
  575. QTSNewPresentationParams = record
  576. dataType: OSType;
  577. data: {const} UnivPtr;
  578. dataLength: UInt32;
  579. editList: QTSEditListHandle;
  580. flags: SInt32;
  581. timeScale: TimeScale_fix; { set to 0 for default timescale }
  582. mediaParams: QTSMediaParamsPtr;
  583. notificationProc: QTSNotificationUPP;
  584. notificationRefCon: UnivPtr;
  585. end;
  586. type
  587. QTSPresParamsPtr = ^QTSPresParams;
  588. QTSPresParams = record
  589. version: UInt32;
  590. editList: QTSEditListHandle;
  591. flags: SInt32;
  592. timeScale: TimeScale_fix; { set to 0 for default timescale }
  593. mediaParams: QTSMediaParamsPtr;
  594. notificationProc: QTSNotificationUPP;
  595. notificationRefCon: UnivPtr;
  596. end;
  597. const
  598. kQTSPresParamsVersion1 = 1;
  599. type
  600. QTSPresIdleParamsPtr = ^QTSPresIdleParams;
  601. QTSPresIdleParams = record
  602. stream: QTSStream;
  603. movieTimeToDisplay: TimeValue64;
  604. flagsIn: SInt32;
  605. flagsOut: SInt32;
  606. end;
  607. const
  608. kQTSExportFlag_ShowDialog = $00000001;
  609. const
  610. kQTSExportParamsVersion1 = 1;
  611. type
  612. QTSExportParamsPtr = ^QTSExportParams;
  613. QTSExportParams = record
  614. version: SInt32;
  615. exportType: OSType;
  616. exportExtraData: UnivPtr;
  617. destinationContainerType: OSType;
  618. destinationContainerData: UnivPtr;
  619. destinationContainerExtras: UnivPtr;
  620. flagsIn: SInt32;
  621. flagsOut: SInt32;
  622. filterProc: QTSModalFilterUPP;
  623. filterProcRefCon: UnivPtr;
  624. exportComponent: Component; { NULL unless you want to override }
  625. end;
  626. {-----------------------------------------
  627. Toolbox Init/Close
  628. -----------------------------------------}
  629. { all "apps" must call this }
  630. {
  631. * InitializeQTS()
  632. *
  633. * Availability:
  634. * Mac OS X: in version 10.0 and later in QuickTime.framework
  635. * CarbonLib: in CarbonLib 1.1 and later
  636. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  637. * Windows: in QTSClient.lib 4.0 and later
  638. }
  639. function InitializeQTS: OSErr; external name '_InitializeQTS';
  640. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  641. {
  642. * TerminateQTS()
  643. *
  644. * Availability:
  645. * Mac OS X: in version 10.0 and later in QuickTime.framework
  646. * CarbonLib: in CarbonLib 1.1 and later
  647. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  648. * Windows: in QTSClient.lib 4.0 and later
  649. }
  650. function TerminateQTS: OSErr; external name '_TerminateQTS';
  651. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  652. {-----------------------------------------
  653. Presentation Functions
  654. -----------------------------------------}
  655. {
  656. * QTSNewPresentation()
  657. *
  658. * Availability:
  659. * Mac OS X: in version 10.0 and later in QuickTime.framework
  660. * CarbonLib: in CarbonLib 1.1 and later
  661. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  662. * Windows: in QTSClient.lib 4.0 and later
  663. }
  664. function QTSNewPresentation( const (*var*) inParams: QTSNewPresentationParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentation';
  665. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  666. {
  667. * QTSNewPresentationFromData()
  668. *
  669. * Availability:
  670. * Mac OS X: in version 10.0 and later in QuickTime.framework
  671. * CarbonLib: in CarbonLib 1.3 and later
  672. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  673. * Windows: in QTSClient.lib 5.0 and later
  674. }
  675. function QTSNewPresentationFromData( inDataType: OSType; inData: {const} UnivPtr; (*const*) var inDataLength: SInt64; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromData';
  676. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  677. {
  678. * QTSNewPresentationFromFile()
  679. *
  680. * Availability:
  681. * Mac OS X: in version 10.0 and later in QuickTime.framework
  682. * CarbonLib: in CarbonLib 1.3 and later
  683. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  684. * Windows: in QTSClient.lib 5.0 and later
  685. }
  686. function QTSNewPresentationFromFile( const (*var*) inFileSpec: FSSpec; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromFile';
  687. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  688. {
  689. * QTSNewPresentationFromDataRef()
  690. *
  691. * Availability:
  692. * Mac OS X: in version 10.0 and later in QuickTime.framework
  693. * CarbonLib: in CarbonLib 1.3 and later
  694. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  695. * Windows: in QTSClient.lib 5.0 and later
  696. }
  697. function QTSNewPresentationFromDataRef( inDataRef: Handle; inDataRefType: OSType; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromDataRef';
  698. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  699. {
  700. * QTSDisposePresentation()
  701. *
  702. * Availability:
  703. * Mac OS X: in version 10.0 and later in QuickTime.framework
  704. * CarbonLib: in CarbonLib 1.1 and later
  705. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  706. * Windows: in QTSClient.lib 4.0 and later
  707. }
  708. function QTSDisposePresentation( inPresentation: QTSPresentation; inFlags: SInt32 ): OSErr; external name '_QTSDisposePresentation';
  709. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  710. {
  711. * QTSPresExport()
  712. *
  713. * Availability:
  714. * Mac OS X: in version 10.0 and later in QuickTime.framework
  715. * CarbonLib: in CarbonLib 1.3 and later
  716. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  717. * Windows: in QTSClient.lib 5.0 and later
  718. }
  719. function QTSPresExport( inPresentation: QTSPresentation; inStream: QTSStream; var inExportParams: QTSExportParams ): OSErr; external name '_QTSPresExport';
  720. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  721. {
  722. * QTSPresIdle()
  723. *
  724. * Availability:
  725. * Mac OS X: in version 10.0 and later in QuickTime.framework
  726. * CarbonLib: in CarbonLib 1.1 and later
  727. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  728. * Windows: in QTSClient.lib 4.0 and later
  729. }
  730. procedure QTSPresIdle( inPresentation: QTSPresentation; var ioParams: QTSPresIdleParams ); external name '_QTSPresIdle';
  731. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  732. {
  733. * QTSPresInvalidateRegion()
  734. *
  735. * Availability:
  736. * Mac OS X: in version 10.0 and later in QuickTime.framework
  737. * CarbonLib: in CarbonLib 1.1 and later
  738. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  739. * Windows: in QTSClient.lib 4.0 and later
  740. }
  741. function QTSPresInvalidateRegion( inPresentation: QTSPresentation; inRegion: RgnHandle ): OSErr; external name '_QTSPresInvalidateRegion';
  742. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  743. {-----------------------------------------
  744. Presentation Configuration
  745. -----------------------------------------}
  746. {
  747. * QTSPresSetFlags()
  748. *
  749. * Availability:
  750. * Mac OS X: in version 10.0 and later in QuickTime.framework
  751. * CarbonLib: in CarbonLib 1.1 and later
  752. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  753. * Windows: in QTSClient.lib 4.0 and later
  754. }
  755. function QTSPresSetFlags( inPresentation: QTSPresentation; inFlags: SInt32; inFlagsMask: SInt32 ): OSErr; external name '_QTSPresSetFlags';
  756. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  757. {
  758. * QTSPresGetFlags()
  759. *
  760. * Availability:
  761. * Mac OS X: in version 10.0 and later in QuickTime.framework
  762. * CarbonLib: in CarbonLib 1.1 and later
  763. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  764. * Windows: in QTSClient.lib 4.0 and later
  765. }
  766. function QTSPresGetFlags( inPresentation: QTSPresentation; var outFlags: SInt32 ): OSErr; external name '_QTSPresGetFlags';
  767. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  768. {
  769. * QTSPresGetTimeBase()
  770. *
  771. * Availability:
  772. * Mac OS X: in version 10.0 and later in QuickTime.framework
  773. * CarbonLib: in CarbonLib 1.1 and later
  774. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  775. * Windows: in QTSClient.lib 4.0 and later
  776. }
  777. function QTSPresGetTimeBase( inPresentation: QTSPresentation; var outTimeBase: TimeBase ): OSErr; external name '_QTSPresGetTimeBase';
  778. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  779. {
  780. * QTSPresGetTimeScale()
  781. *
  782. * Availability:
  783. * Mac OS X: in version 10.0 and later in QuickTime.framework
  784. * CarbonLib: in CarbonLib 1.1 and later
  785. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  786. * Windows: in QTSClient.lib 4.0 and later
  787. }
  788. function QTSPresGetTimeScale( inPresentation: QTSPresentation; var outTimeScale: TimeScale ): OSErr; external name '_QTSPresGetTimeScale';
  789. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  790. {
  791. * QTSPresSetInfo()
  792. *
  793. * Availability:
  794. * Mac OS X: in version 10.0 and later in QuickTime.framework
  795. * CarbonLib: in CarbonLib 1.1 and later
  796. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  797. * Windows: in QTSClient.lib 4.0 and later
  798. }
  799. function QTSPresSetInfo( inPresentation: QTSPresentation; inStream: QTSStream; inSelector: OSType; ioParam: UnivPtr ): OSErr; external name '_QTSPresSetInfo';
  800. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  801. {
  802. * QTSPresGetInfo()
  803. *
  804. * Availability:
  805. * Mac OS X: in version 10.0 and later in QuickTime.framework
  806. * CarbonLib: in CarbonLib 1.1 and later
  807. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  808. * Windows: in QTSClient.lib 4.0 and later
  809. }
  810. function QTSPresGetInfo( inPresentation: QTSPresentation; inStream: QTSStream; inSelector: OSType; ioParam: UnivPtr ): OSErr; external name '_QTSPresGetInfo';
  811. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  812. {
  813. * QTSPresHasCharacteristic()
  814. *
  815. * Availability:
  816. * Mac OS X: in version 10.0 and later in QuickTime.framework
  817. * CarbonLib: in CarbonLib 1.1 and later
  818. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  819. * Windows: in QTSClient.lib 4.0 and later
  820. }
  821. function QTSPresHasCharacteristic( inPresentation: QTSPresentation; inStream: QTSStream; inCharacteristic: OSType; var outHasIt: Boolean ): OSErr; external name '_QTSPresHasCharacteristic';
  822. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  823. {
  824. * QTSPresSetNotificationProc()
  825. *
  826. * Availability:
  827. * Mac OS X: in version 10.0 and later in QuickTime.framework
  828. * CarbonLib: in CarbonLib 1.1 and later
  829. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  830. * Windows: in QTSClient.lib 4.0 and later
  831. }
  832. function QTSPresSetNotificationProc( inPresentation: QTSPresentation; inNotificationProc: QTSNotificationUPP; inRefCon: UnivPtr ): OSErr; external name '_QTSPresSetNotificationProc';
  833. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  834. {
  835. * QTSPresGetNotificationProc()
  836. *
  837. * Availability:
  838. * Mac OS X: in version 10.0 and later in QuickTime.framework
  839. * CarbonLib: in CarbonLib 1.1 and later
  840. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  841. * Windows: in QTSClient.lib 4.0 and later
  842. }
  843. function QTSPresGetNotificationProc( inPresentation: QTSPresentation; var outNotificationProc: QTSNotificationUPP; var outRefCon: UnivPtr ): OSErr; external name '_QTSPresGetNotificationProc';
  844. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  845. {-----------------------------------------
  846. Presentation Control
  847. -----------------------------------------}
  848. {
  849. * QTSPresPreview()
  850. *
  851. * Availability:
  852. * Mac OS X: in version 10.0 and later in QuickTime.framework
  853. * CarbonLib: in CarbonLib 1.3 and later
  854. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  855. }
  856. function QTSPresPreview( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inTimeValue: TimeValue64; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreview';
  857. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  858. {
  859. * QTSPresPreroll()
  860. *
  861. * Availability:
  862. * Mac OS X: in version 10.0 and later in QuickTime.framework
  863. * CarbonLib: in CarbonLib 1.1 and later
  864. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  865. * Windows: in QTSClient.lib 4.0 and later
  866. }
  867. function QTSPresPreroll( inPresentation: QTSPresentation; inStream: QTSStream; inTimeValue: UInt32; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreroll';
  868. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  869. {
  870. * QTSPresPreroll64()
  871. *
  872. * Availability:
  873. * Mac OS X: in version 10.0 and later in QuickTime.framework
  874. * CarbonLib: in CarbonLib 1.1 and later
  875. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  876. * Windows: in QTSClient.lib 4.1 and later
  877. }
  878. function QTSPresPreroll64( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inPrerollTime: TimeValue64; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreroll64';
  879. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  880. {
  881. * QTSPresStart()
  882. *
  883. * Availability:
  884. * Mac OS X: in version 10.0 and later in QuickTime.framework
  885. * CarbonLib: in CarbonLib 1.1 and later
  886. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  887. * Windows: in QTSClient.lib 4.0 and later
  888. }
  889. function QTSPresStart( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSPresStart';
  890. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  891. {
  892. * QTSPresSkipTo()
  893. *
  894. * Availability:
  895. * Mac OS X: in version 10.0 and later in QuickTime.framework
  896. * CarbonLib: in CarbonLib 1.1 and later
  897. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  898. * Windows: in QTSClient.lib 4.0 and later
  899. }
  900. function QTSPresSkipTo( inPresentation: QTSPresentation; inTimeValue: UInt32 ): OSErr; external name '_QTSPresSkipTo';
  901. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  902. {
  903. * QTSPresSkipTo64()
  904. *
  905. * Availability:
  906. * Mac OS X: in version 10.0 and later in QuickTime.framework
  907. * CarbonLib: in CarbonLib 1.1 and later
  908. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  909. * Windows: in QTSClient.lib 4.1 and later
  910. }
  911. function QTSPresSkipTo64( inPresentation: QTSPresentation; (*const*) var inTimeValue: TimeValue64 ): OSErr; external name '_QTSPresSkipTo64';
  912. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  913. {
  914. * QTSPresStop()
  915. *
  916. * Availability:
  917. * Mac OS X: in version 10.0 and later in QuickTime.framework
  918. * CarbonLib: in CarbonLib 1.1 and later
  919. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  920. * Windows: in QTSClient.lib 4.0 and later
  921. }
  922. function QTSPresStop( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSPresStop';
  923. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  924. {============================================================================
  925. Streams
  926. ============================================================================}
  927. {-----------------------------------------
  928. Stream Functions
  929. -----------------------------------------}
  930. {
  931. * QTSPresNewStream()
  932. *
  933. * Availability:
  934. * Mac OS X: in version 10.0 and later in QuickTime.framework
  935. * CarbonLib: in CarbonLib 1.1 and later
  936. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  937. * Windows: in QTSClient.lib 4.0 and later
  938. }
  939. function QTSPresNewStream( inPresentation: QTSPresentation; inDataType: OSType; inData: {const} UnivPtr; inDataLength: UInt32; inFlags: SInt32; var outStream: QTSStream ): OSErr; external name '_QTSPresNewStream';
  940. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  941. {
  942. * QTSDisposeStream()
  943. *
  944. * Availability:
  945. * Mac OS X: in version 10.0 and later in QuickTime.framework
  946. * CarbonLib: in CarbonLib 1.1 and later
  947. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  948. * Windows: in QTSClient.lib 4.0 and later
  949. }
  950. function QTSDisposeStream( inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSDisposeStream';
  951. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  952. {
  953. * QTSPresGetNumStreams()
  954. *
  955. * Availability:
  956. * Mac OS X: in version 10.0 and later in QuickTime.framework
  957. * CarbonLib: in CarbonLib 1.1 and later
  958. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  959. * Windows: in QTSClient.lib 4.0 and later
  960. }
  961. function QTSPresGetNumStreams( inPresentation: QTSPresentation ): UInt32; external name '_QTSPresGetNumStreams';
  962. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  963. {
  964. * QTSPresGetIndStream()
  965. *
  966. * Availability:
  967. * Mac OS X: in version 10.0 and later in QuickTime.framework
  968. * CarbonLib: in CarbonLib 1.1 and later
  969. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  970. * Windows: in QTSClient.lib 4.0 and later
  971. }
  972. function QTSPresGetIndStream( inPresentation: QTSPresentation; inIndex: UInt32 ): QTSStream; external name '_QTSPresGetIndStream';
  973. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  974. {
  975. * QTSGetStreamPresentation()
  976. *
  977. * Availability:
  978. * Mac OS X: in version 10.0 and later in QuickTime.framework
  979. * CarbonLib: in CarbonLib 1.1 and later
  980. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  981. * Windows: in QTSClient.lib 4.0 and later
  982. }
  983. function QTSGetStreamPresentation( inStream: QTSStream ): QTSPresentation; external name '_QTSGetStreamPresentation';
  984. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  985. {
  986. * QTSPresSetPreferredRate()
  987. *
  988. * Availability:
  989. * Mac OS X: in version 10.0 and later in QuickTime.framework
  990. * CarbonLib: in CarbonLib 1.1 and later
  991. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  992. * Windows: in QTSClient.lib 4.0 and later
  993. }
  994. function QTSPresSetPreferredRate( inPresentation: QTSPresentation; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresSetPreferredRate';
  995. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  996. {
  997. * QTSPresGetPreferredRate()
  998. *
  999. * Availability:
  1000. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1001. * CarbonLib: in CarbonLib 1.1 and later
  1002. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1003. * Windows: in QTSClient.lib 4.0 and later
  1004. }
  1005. function QTSPresGetPreferredRate( inPresentation: QTSPresentation; var outRate: Fixed ): OSErr; external name '_QTSPresGetPreferredRate';
  1006. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1007. {
  1008. * QTSPresSetEnable()
  1009. *
  1010. * Availability:
  1011. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1012. * CarbonLib: in CarbonLib 1.1 and later
  1013. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1014. * Windows: in QTSClient.lib 4.0 and later
  1015. }
  1016. function QTSPresSetEnable( inPresentation: QTSPresentation; inStream: QTSStream; inEnableMode: Boolean ): OSErr; external name '_QTSPresSetEnable';
  1017. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1018. {
  1019. * QTSPresGetEnable()
  1020. *
  1021. * Availability:
  1022. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1023. * CarbonLib: in CarbonLib 1.1 and later
  1024. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1025. * Windows: in QTSClient.lib 4.0 and later
  1026. }
  1027. function QTSPresGetEnable( inPresentation: QTSPresentation; inStream: QTSStream; var outEnableMode: Boolean ): OSErr; external name '_QTSPresGetEnable';
  1028. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1029. {
  1030. * QTSPresSetPresenting()
  1031. *
  1032. * Availability:
  1033. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1034. * CarbonLib: in CarbonLib 1.1 and later
  1035. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1036. * Windows: in QTSClient.lib 4.0 and later
  1037. }
  1038. function QTSPresSetPresenting( inPresentation: QTSPresentation; inStream: QTSStream; inPresentingMode: Boolean ): OSErr; external name '_QTSPresSetPresenting';
  1039. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1040. {
  1041. * QTSPresGetPresenting()
  1042. *
  1043. * Availability:
  1044. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1045. * CarbonLib: in CarbonLib 1.1 and later
  1046. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1047. * Windows: in QTSClient.lib 4.0 and later
  1048. }
  1049. function QTSPresGetPresenting( inPresentation: QTSPresentation; inStream: QTSStream; var outPresentingMode: Boolean ): OSErr; external name '_QTSPresGetPresenting';
  1050. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1051. {
  1052. * QTSPresSetActiveSegment()
  1053. *
  1054. * Availability:
  1055. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1056. * CarbonLib: in CarbonLib 1.1 and later
  1057. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1058. * Windows: in QTSClient.lib 4.1 and later
  1059. }
  1060. function QTSPresSetActiveSegment( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inStartTime: TimeValue64; (*const*) var inDuration: TimeValue64 ): OSErr; external name '_QTSPresSetActiveSegment';
  1061. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1062. {
  1063. * QTSPresGetActiveSegment()
  1064. *
  1065. * Availability:
  1066. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1067. * CarbonLib: in CarbonLib 1.1 and later
  1068. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1069. * Windows: in QTSClient.lib 4.1 and later
  1070. }
  1071. function QTSPresGetActiveSegment( inPresentation: QTSPresentation; inStream: QTSStream; var outStartTime: TimeValue64; var outDuration: TimeValue64 ): OSErr; external name '_QTSPresGetActiveSegment';
  1072. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1073. {
  1074. * QTSPresSetPlayHints()
  1075. *
  1076. * Availability:
  1077. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1078. * CarbonLib: in CarbonLib 1.1 and later
  1079. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1080. * Windows: in QTSClient.lib 4.0 and later
  1081. }
  1082. function QTSPresSetPlayHints( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inFlagsMask: SInt32 ): OSErr; external name '_QTSPresSetPlayHints';
  1083. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1084. {
  1085. * QTSPresGetPlayHints()
  1086. *
  1087. * Availability:
  1088. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1089. * CarbonLib: in CarbonLib 1.1 and later
  1090. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1091. * Windows: in QTSClient.lib 4.0 and later
  1092. }
  1093. function QTSPresGetPlayHints( inPresentation: QTSPresentation; inStream: QTSStream; var outFlags: SInt32 ): OSErr; external name '_QTSPresGetPlayHints';
  1094. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1095. {-----------------------------------------
  1096. Stream Spatial Functions
  1097. -----------------------------------------}
  1098. {
  1099. * QTSPresSetGWorld()
  1100. *
  1101. * Availability:
  1102. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1103. * CarbonLib: in CarbonLib 1.1 and later
  1104. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1105. * Windows: in QTSClient.lib 4.0 and later
  1106. }
  1107. function QTSPresSetGWorld( inPresentation: QTSPresentation; inStream: QTSStream; inGWorld: CGrafPtr; inGDHandle: GDHandle ): OSErr; external name '_QTSPresSetGWorld';
  1108. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1109. {
  1110. * QTSPresGetGWorld()
  1111. *
  1112. * Availability:
  1113. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1114. * CarbonLib: in CarbonLib 1.1 and later
  1115. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1116. * Windows: in QTSClient.lib 4.0 and later
  1117. }
  1118. function QTSPresGetGWorld( inPresentation: QTSPresentation; inStream: QTSStream; var outGWorld: CGrafPtr; var outGDHandle: GDHandle ): OSErr; external name '_QTSPresGetGWorld';
  1119. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1120. {
  1121. * QTSPresSetClip()
  1122. *
  1123. * Availability:
  1124. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1125. * CarbonLib: in CarbonLib 1.1 and later
  1126. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1127. * Windows: in QTSClient.lib 4.0 and later
  1128. }
  1129. function QTSPresSetClip( inPresentation: QTSPresentation; inStream: QTSStream; inClip: RgnHandle ): OSErr; external name '_QTSPresSetClip';
  1130. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1131. {
  1132. * QTSPresGetClip()
  1133. *
  1134. * Availability:
  1135. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1136. * CarbonLib: in CarbonLib 1.1 and later
  1137. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1138. * Windows: in QTSClient.lib 4.0 and later
  1139. }
  1140. function QTSPresGetClip( inPresentation: QTSPresentation; inStream: QTSStream; var outClip: RgnHandle ): OSErr; external name '_QTSPresGetClip';
  1141. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1142. {
  1143. * QTSPresSetMatrix()
  1144. *
  1145. * Availability:
  1146. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1147. * CarbonLib: in CarbonLib 1.1 and later
  1148. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1149. * Windows: in QTSClient.lib 4.0 and later
  1150. }
  1151. function QTSPresSetMatrix( inPresentation: QTSPresentation; inStream: QTSStream; const (*var*) inMatrix: MatrixRecord ): OSErr; external name '_QTSPresSetMatrix';
  1152. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1153. {
  1154. * QTSPresGetMatrix()
  1155. *
  1156. * Availability:
  1157. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1158. * CarbonLib: in CarbonLib 1.1 and later
  1159. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1160. * Windows: in QTSClient.lib 4.0 and later
  1161. }
  1162. function QTSPresGetMatrix( inPresentation: QTSPresentation; inStream: QTSStream; var outMatrix: MatrixRecord ): OSErr; external name '_QTSPresGetMatrix';
  1163. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1164. {
  1165. * QTSPresSetDimensions()
  1166. *
  1167. * Availability:
  1168. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1169. * CarbonLib: in CarbonLib 1.1 and later
  1170. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1171. * Windows: in QTSClient.lib 4.0 and later
  1172. }
  1173. function QTSPresSetDimensions( inPresentation: QTSPresentation; inStream: QTSStream; inWidth: Fixed; inHeight: Fixed ): OSErr; external name '_QTSPresSetDimensions';
  1174. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1175. {
  1176. * QTSPresGetDimensions()
  1177. *
  1178. * Availability:
  1179. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1180. * CarbonLib: in CarbonLib 1.1 and later
  1181. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1182. * Windows: in QTSClient.lib 4.0 and later
  1183. }
  1184. function QTSPresGetDimensions( inPresentation: QTSPresentation; inStream: QTSStream; var outWidth: Fixed; var outHeight: Fixed ): OSErr; external name '_QTSPresGetDimensions';
  1185. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1186. {
  1187. * QTSPresSetGraphicsMode()
  1188. *
  1189. * Availability:
  1190. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1191. * CarbonLib: in CarbonLib 1.1 and later
  1192. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1193. * Windows: in QTSClient.lib 4.0 and later
  1194. }
  1195. function QTSPresSetGraphicsMode( inPresentation: QTSPresentation; inStream: QTSStream; inMode: SInt16; const (*var*) inOpColor: RGBColor ): OSErr; external name '_QTSPresSetGraphicsMode';
  1196. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1197. {
  1198. * QTSPresGetGraphicsMode()
  1199. *
  1200. * Availability:
  1201. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1202. * CarbonLib: in CarbonLib 1.1 and later
  1203. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1204. * Windows: in QTSClient.lib 4.0 and later
  1205. }
  1206. function QTSPresGetGraphicsMode( inPresentation: QTSPresentation; inStream: QTSStream; var outMode: SInt16; var outOpColor: RGBColor ): OSErr; external name '_QTSPresGetGraphicsMode';
  1207. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1208. {
  1209. * QTSPresGetPicture()
  1210. *
  1211. * Availability:
  1212. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1213. * CarbonLib: in CarbonLib 1.1 and later
  1214. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1215. * Windows: in QTSClient.lib 4.0 and later
  1216. }
  1217. function QTSPresGetPicture( inPresentation: QTSPresentation; inStream: QTSStream; var outPicture: PicHandle ): OSErr; external name '_QTSPresGetPicture';
  1218. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1219. {
  1220. * QTSPresSetVisualContext()
  1221. *
  1222. * Availability:
  1223. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1224. * CarbonLib: in CarbonLib 1.1 and later
  1225. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1226. * Windows: in QTSClient.lib 4.0 and later
  1227. }
  1228. function QTSPresSetVisualContext( inPresentation: QTSPresentation; inStream: QTSStream; inVisualContext: QTVisualContextRef ): OSErr; external name '_QTSPresSetVisualContext';
  1229. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1230. {
  1231. * QTSPresGetVisualContext()
  1232. *
  1233. * Availability:
  1234. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1235. * CarbonLib: in CarbonLib 1.1 and later
  1236. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1237. * Windows: in QTSClient.lib 4.0 and later
  1238. }
  1239. function QTSPresGetVisualContext( inPresentation: QTSPresentation; inStream: QTSStream; var outVisualContext: QTVisualContextRef ): OSErr; external name '_QTSPresGetVisualContext';
  1240. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1241. {-----------------------------------------
  1242. Stream Sound Functions
  1243. -----------------------------------------}
  1244. {
  1245. * QTSPresSetVolumes()
  1246. *
  1247. * Availability:
  1248. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1249. * CarbonLib: in CarbonLib 1.1 and later
  1250. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1251. * Windows: in QTSClient.lib 4.0 and later
  1252. }
  1253. function QTSPresSetVolumes( inPresentation: QTSPresentation; inStream: QTSStream; inLeftVolume: SInt16; inRightVolume: SInt16 ): OSErr; external name '_QTSPresSetVolumes';
  1254. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1255. {
  1256. * QTSPresGetVolumes()
  1257. *
  1258. * Availability:
  1259. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1260. * CarbonLib: in CarbonLib 1.1 and later
  1261. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1262. * Windows: in QTSClient.lib 4.0 and later
  1263. }
  1264. function QTSPresGetVolumes( inPresentation: QTSPresentation; inStream: QTSStream; var outLeftVolume: SInt16; var outRightVolume: SInt16 ): OSErr; external name '_QTSPresGetVolumes';
  1265. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1266. {-----------------------------------------
  1267. Sourcing
  1268. -----------------------------------------}
  1269. {
  1270. * QTSPresGetSettingsAsText()
  1271. *
  1272. * Availability:
  1273. * Mac OS X: in version 10.1 and later in QuickTime.framework
  1274. * CarbonLib: in CarbonLib 1.6 and later
  1275. * Non-Carbon CFM: in QTStreamLib 5.0.1 and later
  1276. }
  1277. function QTSPresGetSettingsAsText( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inSettingsType: OSType; var outText: Handle; inPanelFilterProc: QTSPanelFilterUPP; inPanelFilterProcRefCon: UnivPtr ): OSErr; external name '_QTSPresGetSettingsAsText';
  1278. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  1279. {
  1280. * QTSPresSettingsDialog()
  1281. *
  1282. * Availability:
  1283. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1284. * CarbonLib: in CarbonLib 1.3 and later
  1285. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1286. }
  1287. function QTSPresSettingsDialog( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inFilterProc: QTSModalFilterUPP; inFilterProcRefCon: UnivPtr ): OSErr; external name '_QTSPresSettingsDialog';
  1288. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1289. {
  1290. * QTSPresSettingsDialogWithFilters()
  1291. *
  1292. * Availability:
  1293. * Mac OS X: in version 10.1 and later in QuickTime.framework
  1294. * CarbonLib: in CarbonLib 1.6 and later
  1295. * Non-Carbon CFM: in QTStreamLib 5.0.1 and later
  1296. }
  1297. function QTSPresSettingsDialogWithFilters( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inFilterProc: QTSModalFilterUPP; inFilterProcRefCon: UnivPtr; inPanelFilterProc: QTSPanelFilterUPP; inPanelFilterProcRefCon: UnivPtr ): OSErr; external name '_QTSPresSettingsDialogWithFilters';
  1298. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  1299. {
  1300. * QTSPresSetSettings()
  1301. *
  1302. * Availability:
  1303. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1304. * CarbonLib: in CarbonLib 1.3 and later
  1305. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1306. }
  1307. function QTSPresSetSettings( inPresentation: QTSPresentation; inStream: QTSStream; inSettings: QTAtomSpecPtr; inFlags: SInt32 ): OSErr; external name '_QTSPresSetSettings';
  1308. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1309. {
  1310. * QTSPresGetSettings()
  1311. *
  1312. * Availability:
  1313. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1314. * CarbonLib: in CarbonLib 1.3 and later
  1315. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1316. }
  1317. function QTSPresGetSettings( inPresentation: QTSPresentation; inStream: QTSStream; var outSettings: QTAtomContainer; inFlags: SInt32 ): OSErr; external name '_QTSPresGetSettings';
  1318. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1319. {
  1320. * QTSPresAddSourcer()
  1321. *
  1322. * Availability:
  1323. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1324. * CarbonLib: in CarbonLib 1.3 and later
  1325. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1326. }
  1327. function QTSPresAddSourcer( inPresentation: QTSPresentation; inStream: QTSStream; inSourcer: ComponentInstance; inFlags: SInt32 ): OSErr; external name '_QTSPresAddSourcer';
  1328. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1329. {
  1330. * QTSPresRemoveSourcer()
  1331. *
  1332. * Availability:
  1333. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1334. * CarbonLib: in CarbonLib 1.3 and later
  1335. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1336. }
  1337. function QTSPresRemoveSourcer( inPresentation: QTSPresentation; inStream: QTSStream; inSourcer: ComponentInstance; inFlags: SInt32 ): OSErr; external name '_QTSPresRemoveSourcer';
  1338. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1339. {
  1340. * QTSPresGetNumSourcers()
  1341. *
  1342. * Availability:
  1343. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1344. * CarbonLib: in CarbonLib 1.3 and later
  1345. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1346. }
  1347. function QTSPresGetNumSourcers( inPresentation: QTSPresentation; inStream: QTSStream ): UInt32; external name '_QTSPresGetNumSourcers';
  1348. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1349. {
  1350. * QTSPresGetIndSourcer()
  1351. *
  1352. * Availability:
  1353. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1354. * CarbonLib: in CarbonLib 1.3 and later
  1355. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1356. }
  1357. function QTSPresGetIndSourcer( inPresentation: QTSPresentation; inStream: QTSStream; inIndex: UInt32; var outSourcer: ComponentInstance ): OSErr; external name '_QTSPresGetIndSourcer';
  1358. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1359. {============================================================================
  1360. Misc
  1361. ============================================================================}
  1362. { flags for Get/SetNetworkAppName }
  1363. const
  1364. kQTSNetworkAppNameIsFullNameFlag = $00000001;
  1365. {
  1366. * QTSSetNetworkAppName()
  1367. *
  1368. * Availability:
  1369. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1370. * CarbonLib: in CarbonLib 1.1 and later
  1371. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1372. * Windows: in QTSClient.lib 4.1 and later
  1373. }
  1374. function QTSSetNetworkAppName( inAppName: ConstCStringPtr; inFlags: SInt32 ): OSErr; external name '_QTSSetNetworkAppName';
  1375. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1376. {
  1377. * QTSGetNetworkAppName()
  1378. *
  1379. * Availability:
  1380. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1381. * CarbonLib: in CarbonLib 1.1 and later
  1382. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1383. * Windows: in QTSClient.lib 4.1 and later
  1384. }
  1385. function QTSGetNetworkAppName( inFlags: SInt32; var outCStringPtr: CStringPtr ): OSErr; external name '_QTSGetNetworkAppName';
  1386. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1387. {-----------------------------------------
  1388. Statistics Utilities
  1389. -----------------------------------------}
  1390. type
  1391. QTSStatHelperRecordPtr = ^QTSStatHelperRecord;
  1392. QTSStatHelperRecord = record
  1393. data: array [0..0] of SInt32;
  1394. end;
  1395. type
  1396. QTSStatHelper = QTSStatHelperRecordPtr;
  1397. const
  1398. kQTSInvalidStatHelper = 0;
  1399. { flags for QTSStatHelperNextParams }
  1400. const
  1401. kQTSStatHelperReturnPascalStringsFlag = $00000001;
  1402. type
  1403. QTSStatHelperNextParamsPtr = ^QTSStatHelperNextParams;
  1404. QTSStatHelperNextParams = record
  1405. flags: SInt32;
  1406. returnedStatisticsType: OSType;
  1407. returnedStream: QTSStream;
  1408. maxStatNameLength: UInt32;
  1409. returnedStatName: CStringPtr; { NULL if you don't want it}
  1410. maxStatStringLength: UInt32;
  1411. returnedStatString: CStringPtr; { NULL if you don't want it}
  1412. maxStatUnitLength: UInt32;
  1413. returnedStatUnit: CStringPtr; { NULL if you don't want it}
  1414. end;
  1415. type
  1416. QTSStatisticsParamsPtr = ^QTSStatisticsParams;
  1417. QTSStatisticsParams = record
  1418. statisticsType: OSType;
  1419. container: QTAtomContainer;
  1420. parentAtom: QTAtom;
  1421. flags: SInt32;
  1422. end;
  1423. { general statistics types }
  1424. const
  1425. kQTSAllStatisticsType = FourCharCode('all ');
  1426. kQTSShortStatisticsType = FourCharCode('shrt');
  1427. kQTSSummaryStatisticsType = FourCharCode('summ');
  1428. { statistics flags }
  1429. const
  1430. kQTSGetNameStatisticsFlag = $00000001;
  1431. kQTSDontGetDataStatisticsFlag = $00000002;
  1432. kQTSUpdateAtomsStatisticsFlag = $00000004;
  1433. kQTSGetUnitsStatisticsFlag = $00000008;
  1434. kQTSUpdateAllIfNecessaryStatisticsFlag = $00010000;
  1435. { statistics atom types }
  1436. const
  1437. kQTSStatisticsStreamAtomType = FourCharCode('strm');
  1438. kQTSStatisticsNameAtomType = FourCharCode('name'); { chars only, no length or terminator }
  1439. kQTSStatisticsDataFormatAtomType = FourCharCode('frmt'); { OSType }
  1440. kQTSStatisticsDataAtomType = FourCharCode('data');
  1441. kQTSStatisticsUnitsAtomType = FourCharCode('unit'); { OSType }
  1442. kQTSStatisticsUnitsNameAtomType = FourCharCode('unin'); { chars only, no length or terminator }
  1443. { statistics data formats }
  1444. const
  1445. kQTSStatisticsSInt32DataFormat = FourCharCode('si32');
  1446. kQTSStatisticsUInt32DataFormat = FourCharCode('ui32');
  1447. kQTSStatisticsSInt16DataFormat = FourCharCode('si16');
  1448. kQTSStatisticsUInt16DataFormat = FourCharCode('ui16');
  1449. kQTSStatisticsFixedDataFormat = FourCharCode('fixd');
  1450. kQTSStatisticsUnsignedFixedDataFormat = FourCharCode('ufix');
  1451. kQTSStatisticsStringDataFormat = FourCharCode('strg');
  1452. kQTSStatisticsOSTypeDataFormat = FourCharCode('ostp');
  1453. kQTSStatisticsRectDataFormat = FourCharCode('rect');
  1454. kQTSStatisticsPointDataFormat = FourCharCode('pont');
  1455. { statistics units types }
  1456. const
  1457. kQTSStatisticsNoUnitsType = 0;
  1458. kQTSStatisticsPercentUnitsType = FourCharCode('pcnt');
  1459. kQTSStatisticsBitsPerSecUnitsType = FourCharCode('bps ');
  1460. kQTSStatisticsFramesPerSecUnitsType = FourCharCode('fps ');
  1461. { specific statistics types }
  1462. const
  1463. kQTSTotalDataRateStat = FourCharCode('drtt');
  1464. kQTSTotalDataRateInStat = FourCharCode('drti');
  1465. kQTSTotalDataRateOutStat = FourCharCode('drto');
  1466. kQTSNetworkIDStringStat = FourCharCode('nids');
  1467. {
  1468. * QTSNewStatHelper()
  1469. *
  1470. * Availability:
  1471. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1472. * CarbonLib: in CarbonLib 1.1 and later
  1473. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1474. * Windows: in QTSClient.lib 4.0 and later
  1475. }
  1476. function QTSNewStatHelper( inPresentation: QTSPresentation; inStream: QTSStream; inStatType: OSType; inFlags: SInt32; var outStatHelper: QTSStatHelper ): OSErr; external name '_QTSNewStatHelper';
  1477. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1478. {
  1479. * QTSDisposeStatHelper()
  1480. *
  1481. * Availability:
  1482. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1483. * CarbonLib: in CarbonLib 1.1 and later
  1484. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1485. * Windows: in QTSClient.lib 4.0 and later
  1486. }
  1487. function QTSDisposeStatHelper( inStatHelper: QTSStatHelper ): OSErr; external name '_QTSDisposeStatHelper';
  1488. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1489. {
  1490. * QTSStatHelperGetStats()
  1491. *
  1492. * Availability:
  1493. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1494. * CarbonLib: in CarbonLib 1.1 and later
  1495. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1496. * Windows: in QTSClient.lib 4.0 and later
  1497. }
  1498. function QTSStatHelperGetStats( inStatHelper: QTSStatHelper ): OSErr; external name '_QTSStatHelperGetStats';
  1499. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1500. {
  1501. * QTSStatHelperResetIter()
  1502. *
  1503. * Availability:
  1504. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1505. * CarbonLib: in CarbonLib 1.1 and later
  1506. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1507. * Windows: in QTSClient.lib 4.0 and later
  1508. }
  1509. function QTSStatHelperResetIter( inStatHelper: QTSStatHelper ): OSErr; external name '_QTSStatHelperResetIter';
  1510. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1511. {
  1512. * QTSStatHelperNext()
  1513. *
  1514. * Availability:
  1515. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1516. * CarbonLib: in CarbonLib 1.1 and later
  1517. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1518. * Windows: in QTSClient.lib 4.0 and later
  1519. }
  1520. function QTSStatHelperNext( inStatHelper: QTSStatHelper; var ioParams: QTSStatHelperNextParams ): Boolean; external name '_QTSStatHelperNext';
  1521. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1522. {
  1523. * QTSStatHelperGetNumStats()
  1524. *
  1525. * Availability:
  1526. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1527. * CarbonLib: in CarbonLib 1.1 and later
  1528. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1529. * Windows: in QTSClient.lib 4.0 and later
  1530. }
  1531. function QTSStatHelperGetNumStats( inStatHelper: QTSStatHelper ): UInt32; external name '_QTSStatHelperGetNumStats';
  1532. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1533. { used by components to put statistics into the atom container }
  1534. {
  1535. * QTSGetOrMakeStatAtomForStream()
  1536. *
  1537. * Availability:
  1538. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1539. * CarbonLib: in CarbonLib 1.1 and later
  1540. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1541. * Windows: in QTSClient.lib 4.0 and later
  1542. }
  1543. function QTSGetOrMakeStatAtomForStream( inContainer: QTAtomContainer; inStream: QTSStream; var outParentAtom: QTAtom ): OSErr; external name '_QTSGetOrMakeStatAtomForStream';
  1544. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1545. {
  1546. * QTSInsertStatistic()
  1547. *
  1548. * Availability:
  1549. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1550. * CarbonLib: in CarbonLib 1.1 and later
  1551. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1552. * Windows: in QTSClient.lib 4.0 and later
  1553. }
  1554. function QTSInsertStatistic( inContainer: QTAtomContainer; inParentAtom: QTAtom; inStatType: OSType; inStatData: UnivPtr; inStatDataLength: UInt32; inStatDataFormat: OSType; inFlags: SInt32 ): OSErr; external name '_QTSInsertStatistic';
  1555. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1556. {
  1557. * QTSInsertStatisticName()
  1558. *
  1559. * Availability:
  1560. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1561. * CarbonLib: in CarbonLib 1.1 and later
  1562. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1563. * Windows: in QTSClient.lib 4.0 and later
  1564. }
  1565. function QTSInsertStatisticName( inContainer: QTAtomContainer; inParentAtom: QTAtom; inStatType: OSType; inStatName: ConstCStringPtr; inStatNameLength: UInt32 ): OSErr; external name '_QTSInsertStatisticName';
  1566. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1567. {
  1568. * QTSInsertStatisticUnits()
  1569. *
  1570. * Availability:
  1571. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1572. * CarbonLib: in CarbonLib 1.1 and later
  1573. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1574. * Windows: in QTSClient.lib 4.0 and later
  1575. }
  1576. function QTSInsertStatisticUnits( inContainer: QTAtomContainer; inParentAtom: QTAtom; inStatType: OSType; inUnitsType: OSType; inUnitsName: ConstCStringPtr; inUnitsNameLength: UInt32 ): OSErr; external name '_QTSInsertStatisticUnits';
  1577. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1578. {============================================================================
  1579. Data Formats
  1580. ============================================================================}
  1581. {-----------------------------------------
  1582. Data Types
  1583. -----------------------------------------}
  1584. { universal data types }
  1585. const
  1586. kQTSNullDataType = FourCharCode('NULL');
  1587. kQTSUnknownDataType = FourCharCode('huh?');
  1588. kQTSAtomContainerDataType = FourCharCode('qtac'); { QTAtomContainer }
  1589. kQTSAtomDataType = FourCharCode('qtat'); { QTSAtomContainerDataStruct* }
  1590. kQTSAliasDataType = FourCharCode('alis');
  1591. kQTSFileDataType = FourCharCode('fspc'); { FSSpec* }
  1592. kQTSFileSpecDataType = FourCharCode('fspc'); { FSSpec* }
  1593. kQTSHandleDataType = FourCharCode('hndl'); { Handle* }
  1594. kQTSDataRefDataType = FourCharCode('dref'); { DataReferencePtr }
  1595. { these data types are specific to presentations }
  1596. const
  1597. kQTSRTSPDataType = FourCharCode('rtsp');
  1598. kQTSSDPDataType = FourCharCode('sdp ');
  1599. {-----------------------------------------
  1600. Atom IDs
  1601. -----------------------------------------}
  1602. const
  1603. kQTSAtomType_Presentation = FourCharCode('pres');
  1604. kQTSAtomType_PresentationHeader = FourCharCode('phdr'); { QTSPresentationHeaderAtom }
  1605. kQTSAtomType_MediaStream = FourCharCode('mstr');
  1606. kQTSAtomType_MediaStreamHeader = FourCharCode('mshd'); { QTSMediaStreamHeaderAtom }
  1607. kQTSAtomType_MediaDescriptionText = FourCharCode('mdes'); { chars, no length }
  1608. kQTSAtomType_ClipRect = FourCharCode('clip'); { QTSClipRectAtom }
  1609. kQTSAtomType_Duration = FourCharCode('dura'); { QTSDurationAtom }
  1610. kQTSAtomType_BufferTime = FourCharCode('bufr'); { QTSBufferTimeAtom }
  1611. type
  1612. QTSAtomContainerDataStructPtr = ^QTSAtomContainerDataStruct;
  1613. QTSAtomContainerDataStruct = record
  1614. container: QTAtomContainer;
  1615. parentAtom: QTAtom;
  1616. end;
  1617. { flags for QTSPresentationHeaderAtom }
  1618. const
  1619. kQTSPresHeaderTypeIsData = $00000100;
  1620. kQTSPresHeaderDataIsHandle = $00000200;
  1621. type
  1622. QTSPresentationHeaderAtomPtr = ^QTSPresentationHeaderAtom;
  1623. QTSPresentationHeaderAtom = record
  1624. versionAndFlags: SInt32;
  1625. conductorOrDataType: OSType;
  1626. dataAtomType: OSType; { where the data really is}
  1627. end;
  1628. type
  1629. QTSMediaStreamHeaderAtomPtr = ^QTSMediaStreamHeaderAtom;
  1630. QTSMediaStreamHeaderAtom = record
  1631. versionAndFlags: SInt32;
  1632. mediaTransportType: OSType;
  1633. mediaTransportDataAID: OSType; { where the data really is}
  1634. end;
  1635. type
  1636. QTSBufferTimeAtomPtr = ^QTSBufferTimeAtom;
  1637. QTSBufferTimeAtom = record
  1638. versionAndFlags: SInt32;
  1639. bufferTime: Fixed;
  1640. end;
  1641. type
  1642. QTSDurationAtomPtr = ^QTSDurationAtom;
  1643. QTSDurationAtom = record
  1644. versionAndFlags: SInt32;
  1645. timeScale: TimeScale_fix;
  1646. duration: TimeValue64;
  1647. end;
  1648. type
  1649. QTSClipRectAtomPtr = ^QTSClipRectAtom;
  1650. QTSClipRectAtom = record
  1651. versionAndFlags: SInt32;
  1652. clipRect: Rect;
  1653. end;
  1654. const
  1655. kQTSEmptyEditStreamStartTime = -1;
  1656. type
  1657. QTSStatus = UInt32;
  1658. const
  1659. kQTSNullStatus = 0;
  1660. kQTSUninitializedStatus = 1;
  1661. kQTSConnectingStatus = 2;
  1662. kQTSOpeningConnectionDetailedStatus = 3;
  1663. kQTSMadeConnectionDetailedStatus = 4;
  1664. kQTSNegotiatingStatus = 5;
  1665. kQTSGettingDescriptionDetailedStatus = 6;
  1666. kQTSGotDescriptionDetailedStatus = 7;
  1667. kQTSSentSetupCmdDetailedStatus = 8;
  1668. kQTSReceivedSetupResponseDetailedStatus = 9;
  1669. kQTSSentPlayCmdDetailedStatus = 10;
  1670. kQTSReceivedPlayResponseDetailedStatus = 11;
  1671. kQTSBufferingStatus = 12;
  1672. kQTSPlayingStatus = 13;
  1673. kQTSPausedStatus = 14;
  1674. kQTSAutoConfiguringStatus = 15;
  1675. kQTSDownloadingStatus = 16;
  1676. kQTSBufferingWithTimeStatus = 17;
  1677. kQTSWaitingDisconnectStatus = 100;
  1678. {-----------------------------------------
  1679. QuickTime Preferences Types
  1680. -----------------------------------------}
  1681. const
  1682. kQTSConnectionPrefsType = FourCharCode('stcm'); { root atom that all other atoms are contained in}
  1683. { kQTSNotUsedForProxyPrefsType = 'nopr', // comma-delimited list of URLs that are never used for proxies}
  1684. kQTSConnectionMethodPrefsType = FourCharCode('mthd'); { connection method (OSType that matches one of the following three)}
  1685. kQTSDirectConnectPrefsType = FourCharCode('drct'); { used if direct connect (QTSDirectConnectPrefsRecord)}
  1686. { kQTSRTSPProxyPrefsType = 'rtsp', // used if RTSP Proxy (QTSProxyPrefsRecord)}
  1687. kQTSSOCKSPrefsType = FourCharCode('sock'); { used if SOCKS Proxy (QTSProxyPrefsRecord)}
  1688. const
  1689. kQTSDirectConnectHTTPProtocol = FourCharCode('http');
  1690. kQTSDirectConnectRTSPProtocol = FourCharCode('rtsp');
  1691. type
  1692. QTSDirectConnectPrefsRecordPtr = ^QTSDirectConnectPrefsRecord;
  1693. QTSDirectConnectPrefsRecord = record
  1694. tcpPortID: UInt32;
  1695. protocol: OSType;
  1696. end;
  1697. type
  1698. QTSProxyPrefsRecordPtr = ^QTSProxyPrefsRecord;
  1699. QTSProxyPrefsRecord = record
  1700. serverNameStr: Str255;
  1701. portID: UInt32;
  1702. end;
  1703. const
  1704. kQTSTransAndProxyPrefsVersNum = 2; { prefs atom format version }
  1705. const
  1706. kConnectionActive = 1 shl 0;
  1707. kConnectionUseSystemPref = 1 shl 1;
  1708. type
  1709. QTSTransportPrefPtr = ^QTSTransportPref;
  1710. QTSTransportPref = record
  1711. protocol: OSType; { udp, http, tcp, etc}
  1712. portID: SInt32; { port to use for this connection type}
  1713. flags: UInt32; { connection flags}
  1714. seed: UInt32; { seed value last time this setting was read from system prefs}
  1715. end;
  1716. const
  1717. kProxyActive = 1 shl 0;
  1718. kProxyUseSystemPref = 1 shl 1;
  1719. type
  1720. QTSProxyPrefPtr = ^QTSProxyPref;
  1721. QTSProxyPref = record
  1722. flags: UInt32; { proxy flags}
  1723. portID: SInt32; { port to use for this connection type}
  1724. seed: UInt32; { seed value last time this setting was read from system prefs}
  1725. serverNameStr: Str255; { proxy server url}
  1726. end;
  1727. const
  1728. kNoProxyUseSystemPref = 1 shl 0;
  1729. type
  1730. QTSNoProxyPrefPtr = ^QTSNoProxyPref;
  1731. QTSNoProxyPref = record
  1732. flags: UInt32; { no-proxy flags}
  1733. seed: UInt32; { seed value last time this setting was read from system prefs}
  1734. urlList: array [0..0] of SInt8; { NULL terminated, comma delimited list of urls}
  1735. end;
  1736. const
  1737. kQTSInstantOnFlag_Enable = 1 shl 0; { instant on is enabled (read/write)}
  1738. kQTSInstantOnFlag_Permitted = 1 shl 1; { instant on is possible (read only)}
  1739. type
  1740. QTSInstantOnPrefPtr = ^QTSInstantOnPref;
  1741. QTSInstantOnPref = record
  1742. flags: SInt32; { flags}
  1743. factor: SInt32; { 0-100; default is 50}
  1744. end;
  1745. const
  1746. kQTSTransAndProxyAtomType = FourCharCode('strp'); { transport/proxy prefs root atom}
  1747. kQTSConnectionPrefsVersion = FourCharCode('vers'); { prefs format version}
  1748. kQTSTransportPrefsAtomType = FourCharCode('trns'); { tranport prefs root atom}
  1749. kQTSConnectionAtomType = FourCharCode('conn'); { connection prefs atom type, one for each transport type}
  1750. kQTSUDPTransportType = FourCharCode('udp '); { udp transport prefs}
  1751. kQTSHTTPTransportType = FourCharCode('http'); { http transport prefs}
  1752. kQTSTCPTransportType = FourCharCode('tcp '); { tcp transport prefs }
  1753. kQTSProxyPrefsAtomType = FourCharCode('prxy'); { proxy prefs root atom}
  1754. kQTSHTTPProxyPrefsType = FourCharCode('http'); { http proxy settings}
  1755. kQTSRTSPProxyPrefsType = FourCharCode('rtsp'); { rtsp proxy settings}
  1756. kQTSSOCKSProxyPrefsType = FourCharCode('sock'); { socks proxy settings}
  1757. kQTSProxyUserInfoPrefsType = FourCharCode('user'); { proxy username/password root atom}
  1758. kQTSDontProxyPrefsAtomType = FourCharCode('nopr'); { no-proxy prefs root atom}
  1759. kQTSDontProxyDataType = FourCharCode('data'); { no proxy settings}
  1760. kQTSInstantOnPrefsAtomType = FourCharCode('inon'); { instant on prefs}
  1761. {
  1762. * QTSPrefsAddProxySetting()
  1763. *
  1764. * Availability:
  1765. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1766. * CarbonLib: in CarbonLib 1.1 and later
  1767. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1768. * Windows: in QTSClient.lib 4.1 and later
  1769. }
  1770. function QTSPrefsAddProxySetting( proxyType: OSType; portID: SInt32; flags: UInt32; seed: UInt32; var srvrURL: Str255 ): OSErr; external name '_QTSPrefsAddProxySetting';
  1771. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1772. {
  1773. * QTSPrefsFindProxyByType()
  1774. *
  1775. * Availability:
  1776. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1777. * CarbonLib: in CarbonLib 1.1 and later
  1778. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1779. * Windows: in QTSClient.lib 4.1 and later
  1780. }
  1781. function QTSPrefsFindProxyByType( proxyType: OSType; flags: UInt32; flagsMask: UInt32; var proxyHndl: UnivPtr; var count: SInt16 ): OSErr; external name '_QTSPrefsFindProxyByType';
  1782. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1783. {
  1784. * QTSPrefsAddConnectionSetting()
  1785. *
  1786. * Availability:
  1787. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1788. * CarbonLib: in CarbonLib 1.1 and later
  1789. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1790. * Windows: in QTSClient.lib 4.1 and later
  1791. }
  1792. function QTSPrefsAddConnectionSetting( protocol: OSType; portID: SInt32; flags: UInt32; seed: UInt32 ): OSErr; external name '_QTSPrefsAddConnectionSetting';
  1793. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1794. {
  1795. * QTSPrefsFindConnectionByType()
  1796. *
  1797. * Availability:
  1798. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1799. * CarbonLib: in CarbonLib 1.1 and later
  1800. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1801. * Windows: in QTSClient.lib 4.1 and later
  1802. }
  1803. function QTSPrefsFindConnectionByType( protocol: OSType; flags: UInt32; flagsMask: UInt32; var connectionHndl: UnivPtr; var count: SInt16 ): OSErr; external name '_QTSPrefsFindConnectionByType';
  1804. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1805. {
  1806. * QTSPrefsGetActiveConnection()
  1807. *
  1808. * Availability:
  1809. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1810. * CarbonLib: in CarbonLib 1.1 and later
  1811. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1812. * Windows: in QTSClient.lib 4.1 and later
  1813. }
  1814. function QTSPrefsGetActiveConnection( protocol: OSType; var connectInfo: QTSTransportPref ): OSErr; external name '_QTSPrefsGetActiveConnection';
  1815. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1816. {
  1817. * QTSPrefsGetNoProxyURLs()
  1818. *
  1819. * Availability:
  1820. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1821. * CarbonLib: in CarbonLib 1.1 and later
  1822. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1823. * Windows: in QTSClient.lib 4.1 and later
  1824. }
  1825. function QTSPrefsGetNoProxyURLs( var noProxyHndl: UnivPtr ): OSErr; external name '_QTSPrefsGetNoProxyURLs';
  1826. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1827. {
  1828. * QTSPrefsSetNoProxyURLs()
  1829. *
  1830. * Availability:
  1831. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1832. * CarbonLib: in CarbonLib 1.1 and later
  1833. * Non-Carbon CFM: in QTStreamLib 4.1 and later
  1834. * Windows: in QTSClient.lib 4.1 and later
  1835. }
  1836. function QTSPrefsSetNoProxyURLs( urls: CStringPtr; flags: UInt32; seed: UInt32 ): OSErr; external name '_QTSPrefsSetNoProxyURLs';
  1837. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1838. {
  1839. * QTSPrefsAddProxyUserInfo()
  1840. *
  1841. * Availability:
  1842. * Mac OS X: in version 10.1 and later in QuickTime.framework
  1843. * CarbonLib: in CarbonLib 1.6 and later
  1844. * Non-Carbon CFM: in QTStreamLib 5.0.1 and later
  1845. * Windows: in QTSClient.lib 5.0.1 and later
  1846. }
  1847. function QTSPrefsAddProxyUserInfo( proxyType: OSType; flags: SInt32; flagsMask: SInt32; username: StringPtr; password: StringPtr ): OSErr; external name '_QTSPrefsAddProxyUserInfo';
  1848. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  1849. {
  1850. * QTSPrefsFindProxyUserInfoByType()
  1851. *
  1852. * Availability:
  1853. * Mac OS X: in version 10.1 and later in QuickTime.framework
  1854. * CarbonLib: in CarbonLib 1.6 and later
  1855. * Non-Carbon CFM: in QTStreamLib 5.0.1 and later
  1856. * Windows: in QTSClient.lib 5.0.1 and later
  1857. }
  1858. function QTSPrefsFindProxyUserInfoByType( proxyType: OSType; flags: SInt32; flagsMask: SInt32; username: StringPtr; password: StringPtr ): OSErr; external name '_QTSPrefsFindProxyUserInfoByType';
  1859. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  1860. {
  1861. * QTSPrefsGetInstantOnSettings()
  1862. *
  1863. * Availability:
  1864. * Mac OS X: in version 10.2 and later in QuickTime.framework
  1865. * CarbonLib: in CarbonLib 1.6 and later
  1866. * Non-Carbon CFM: in QTStreamLib 6.0 and later
  1867. * Windows: in QTSClient.lib 6.0 and later
  1868. }
  1869. function QTSPrefsGetInstantOnSettings( var outPref: QTSInstantOnPref; inFlags: SInt32 ): OSErr; external name '_QTSPrefsGetInstantOnSettings';
  1870. (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
  1871. {
  1872. * QTSPrefsSetInstantOnSettings()
  1873. *
  1874. * Availability:
  1875. * Mac OS X: in version 10.2 and later in QuickTime.framework
  1876. * CarbonLib: in CarbonLib 1.6 and later
  1877. * Non-Carbon CFM: in QTStreamLib 6.0 and later
  1878. * Windows: in QTSClient.lib 6.0 and later
  1879. }
  1880. function QTSPrefsSetInstantOnSettings( var inPref: QTSInstantOnPref; inFlags: SInt32 ): OSErr; external name '_QTSPrefsSetInstantOnSettings';
  1881. (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
  1882. {============================================================================
  1883. Memory Management Services
  1884. ============================================================================}
  1885. {
  1886. These routines allocate normal pointers and handles,
  1887. but do the correct checking, etc.
  1888. Dispose using the normal DisposePtr and DisposeHandle
  1889. Call these routines for one time memory allocations.
  1890. You do not need to set any hints to use these calls.
  1891. }
  1892. {
  1893. * QTSNewPtr()
  1894. *
  1895. * Availability:
  1896. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1897. * CarbonLib: in CarbonLib 1.1 and later
  1898. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1899. * Windows: in QTSClient.lib 4.0 and later
  1900. }
  1901. function QTSNewPtr( inByteCount: UInt32; inFlags: SInt32; var outFlags: SInt32 ): Ptr; external name '_QTSNewPtr';
  1902. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1903. {
  1904. * QTSNewHandle()
  1905. *
  1906. * Availability:
  1907. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1908. * CarbonLib: in CarbonLib 1.1 and later
  1909. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1910. * Windows: in QTSClient.lib 4.0 and later
  1911. }
  1912. function QTSNewHandle( inByteCount: UInt32; inFlags: SInt32; var outFlags: SInt32 ): Handle; external name '_QTSNewHandle';
  1913. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1914. { flags in}
  1915. const
  1916. kQTSMemAllocClearMem = $00000001;
  1917. kQTSMemAllocDontUseTempMem = $00000002;
  1918. kQTSMemAllocTryTempMemFirst = $00000004;
  1919. kQTSMemAllocDontUseSystemMem = $00000008;
  1920. kQTSMemAllocTrySystemMemFirst = $00000010;
  1921. kQTSMemAllocHoldMemory = $00001000;
  1922. kQTSMemAllocIsInterruptTime = $01010000; { currently not supported for alloc}
  1923. { flags out}
  1924. const
  1925. kQTSMemAllocAllocatedInTempMem = $00000001;
  1926. kQTSMemAllocAllocatedInSystemMem = $00000002;
  1927. type
  1928. QTSMemPtr = ^OpaqueQTSMemPtr; { an opaque type }
  1929. OpaqueQTSMemPtr = record end;
  1930. QTSMemPtrPtr = ^QTSMemPtr; { when a var xx:QTSMemPtr parameter can be nil, it is changed to xx: QTSMemPtrPtr }
  1931. {
  1932. These routines are for buffers that will be recirculated
  1933. you must use QTReleaseMemPtr instead of DisposePtr
  1934. QTSReleaseMemPtr can be used at interrupt time
  1935. but QTSAllocMemPtr currently cannot
  1936. }
  1937. {
  1938. * QTSAllocMemPtr()
  1939. *
  1940. * Availability:
  1941. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1942. * CarbonLib: in CarbonLib 1.1 and later
  1943. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1944. * Windows: in QTSClient.lib 4.0 and later
  1945. }
  1946. function QTSAllocMemPtr( inByteCount: UInt32; inFlags: SInt32 ): QTSMemPtr; external name '_QTSAllocMemPtr';
  1947. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1948. {
  1949. * QTSReleaseMemPtr()
  1950. *
  1951. * Availability:
  1952. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1953. * CarbonLib: in CarbonLib 1.1 and later
  1954. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  1955. * Windows: in QTSClient.lib 4.0 and later
  1956. }
  1957. procedure QTSReleaseMemPtr( inMemPtr: QTSMemPtr; inFlags: SInt32 ); external name '_QTSReleaseMemPtr';
  1958. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1959. {============================================================================
  1960. Buffer Management Services
  1961. ============================================================================}
  1962. const
  1963. kQTSStreamBufferVersion1 = 1;
  1964. type
  1965. QTSStreamBufferPtr = ^QTSStreamBuffer;
  1966. QTSStreamBuffer = record
  1967. reserved1: QTSStreamBufferPtr;
  1968. reserved2: QTSStreamBufferPtr;
  1969. next: QTSStreamBufferPtr; { next message block in a message }
  1970. rptr: UInt8Ptr; { first byte with real data in the DataBuffer }
  1971. wptr: UInt8Ptr; { last+1 byte with real data in the DataBuffer }
  1972. version: SInt32;
  1973. metadata: array [0..4-1] of UInt32; { usage defined by message sender }
  1974. flags: SInt32; { reserved }
  1975. reserved3: SIGNEDLONG;
  1976. reserved4: SIGNEDLONG;
  1977. reserved5: SIGNEDLONG;
  1978. moreMeta: array [0..7] of UInt32;
  1979. end;
  1980. { flags for QTSDuplicateMessage}
  1981. const
  1982. kQTSDuplicateBufferFlag_CopyData = $00000001;
  1983. kQTSDuplicateBufferFlag_FlattenMessage = $00000002;
  1984. {
  1985. * QTSNewStreamBuffer()
  1986. *
  1987. * Availability:
  1988. * Mac OS X: in version 10.0 and later in QuickTime.framework
  1989. * CarbonLib: in CarbonLib 1.3 and later
  1990. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  1991. * Windows: in QTSClient.lib 5.0 and later
  1992. }
  1993. function QTSNewStreamBuffer( inDataSize: UInt32; inFlags: SInt32; var outStreamBuffer: UnivPtr ): OSErr; external name '_QTSNewStreamBuffer';
  1994. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  1995. {
  1996. * QTSFreeMessage()
  1997. *
  1998. * Availability:
  1999. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2000. * CarbonLib: in CarbonLib 1.1 and later
  2001. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2002. * Windows: in QTSClient.lib 4.0 and later
  2003. }
  2004. procedure QTSFreeMessage( var inMessage: QTSStreamBuffer ); external name '_QTSFreeMessage';
  2005. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2006. {
  2007. kQTSDuplicateBufferFlag_CopyData - forces a copy of the data itself
  2008. kQTSCopyBufferFlag_FlattenMessage - copies the data if it needs to be flattened
  2009. QTSDuplicateMessage never frees the old message
  2010. }
  2011. {
  2012. * QTSDuplicateMessage()
  2013. *
  2014. * Availability:
  2015. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2016. * CarbonLib: in CarbonLib 1.3 and later
  2017. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  2018. * Windows: in QTSClient.lib 5.0 and later
  2019. }
  2020. function QTSDuplicateMessage( var inMessage: QTSStreamBuffer; inFlags: SInt32; var outDuplicatedMessage: UnivPtr ): OSErr; external name '_QTSDuplicateMessage';
  2021. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2022. {
  2023. * QTSMessageLength()
  2024. *
  2025. * Availability:
  2026. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2027. * CarbonLib: in CarbonLib 1.1 and later
  2028. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2029. * Windows: in QTSClient.lib 4.0 and later
  2030. }
  2031. function QTSMessageLength( var inMessage: QTSStreamBuffer ): UInt32; external name '_QTSMessageLength';
  2032. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2033. {
  2034. * QTSStreamBufferDataInfo()
  2035. *
  2036. * Availability:
  2037. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2038. * CarbonLib: in CarbonLib 1.3 and later
  2039. * Non-Carbon CFM: in QTStreamLib 5.0 and later
  2040. * Windows: in QTSClient.lib 5.0 and later
  2041. }
  2042. procedure QTSStreamBufferDataInfo( var inStreamBuffer: QTSStreamBuffer; var outDataStart: UnivPtr; var outDataMaxLength: UInt32 ); external name '_QTSStreamBufferDataInfo';
  2043. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2044. { ---- old calls (don't use these)}
  2045. {
  2046. * QTSAllocBuffer()
  2047. *
  2048. * Availability:
  2049. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2050. * CarbonLib: in CarbonLib 1.1 and later
  2051. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2052. * Windows: in QTSClient.lib 4.0 and later
  2053. }
  2054. function QTSAllocBuffer( inSize: SInt32 ): QTSStreamBufferPtr; external name '_QTSAllocBuffer';
  2055. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2056. {
  2057. * QTSDupMessage()
  2058. *
  2059. * Availability:
  2060. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2061. * CarbonLib: in CarbonLib 1.1 and later
  2062. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2063. * Windows: in QTSClient.lib 4.0 and later
  2064. }
  2065. function QTSDupMessage( var inMessage: QTSStreamBuffer ): QTSStreamBufferPtr; external name '_QTSDupMessage';
  2066. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2067. {
  2068. * QTSCopyMessage()
  2069. *
  2070. * Availability:
  2071. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2072. * CarbonLib: in CarbonLib 1.1 and later
  2073. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2074. * Windows: in QTSClient.lib 4.0 and later
  2075. }
  2076. function QTSCopyMessage( var inMessage: QTSStreamBuffer ): QTSStreamBufferPtr; external name '_QTSCopyMessage';
  2077. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2078. {
  2079. * QTSFlattenMessage()
  2080. *
  2081. * Availability:
  2082. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2083. * CarbonLib: in CarbonLib 1.1 and later
  2084. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2085. * Windows: in QTSClient.lib 4.0 and later
  2086. }
  2087. function QTSFlattenMessage( var inMessage: QTSStreamBuffer ): QTSStreamBufferPtr; external name '_QTSFlattenMessage';
  2088. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2089. {============================================================================
  2090. Misc
  2091. ============================================================================}
  2092. {
  2093. * QTSGetErrorString()
  2094. *
  2095. * Availability:
  2096. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2097. * CarbonLib: in CarbonLib 1.1 and later
  2098. * Non-Carbon CFM: in QTStreamLib 4.0 and later
  2099. * Windows: in QTSClient.lib 4.0 and later
  2100. }
  2101. function QTSGetErrorString( inErrorCode: SInt32; inMaxErrorStringLength: UInt32; outErrorString: CStringPtr; inFlags: SInt32 ): Boolean; external name '_QTSGetErrorString';
  2102. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2103. {
  2104. * QTSInitializeMediaParams()
  2105. *
  2106. * Availability:
  2107. * Mac OS X: in version 10.1 and later in QuickTime.framework
  2108. * CarbonLib: in CarbonLib 1.6 and later
  2109. * Non-Carbon CFM: in QTStreamLib 5.0.1 and later
  2110. * Windows: in QTSClient.lib 5.0.1 and later
  2111. }
  2112. function QTSInitializeMediaParams( var inMediaParams: QTSMediaParams ): OSErr; external name '_QTSInitializeMediaParams';
  2113. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  2114. { UPP call backs }
  2115. {
  2116. * NewQTSNotificationUPP()
  2117. *
  2118. * Availability:
  2119. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2120. * CarbonLib: in CarbonLib 1.3 and later
  2121. * Non-Carbon CFM: available as macro/inline
  2122. }
  2123. function NewQTSNotificationUPP( userRoutine: QTSNotificationProcPtr ): QTSNotificationUPP; external name '_NewQTSNotificationUPP';
  2124. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2125. {
  2126. * NewQTSPanelFilterUPP()
  2127. *
  2128. * Availability:
  2129. * Mac OS X: in version 10.1 and later in QuickTime.framework
  2130. * CarbonLib: in CarbonLib 1.6 and later
  2131. * Non-Carbon CFM: available as macro/inline
  2132. }
  2133. function NewQTSPanelFilterUPP( userRoutine: QTSPanelFilterProcPtr ): QTSPanelFilterUPP; external name '_NewQTSPanelFilterUPP';
  2134. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  2135. {
  2136. * NewQTSModalFilterUPP()
  2137. *
  2138. * Availability:
  2139. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2140. * CarbonLib: in CarbonLib 1.3 and later
  2141. * Non-Carbon CFM: available as macro/inline
  2142. }
  2143. function NewQTSModalFilterUPP( userRoutine: QTSModalFilterProcPtr ): QTSModalFilterUPP; external name '_NewQTSModalFilterUPP';
  2144. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2145. {
  2146. * DisposeQTSNotificationUPP()
  2147. *
  2148. * Availability:
  2149. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2150. * CarbonLib: in CarbonLib 1.3 and later
  2151. * Non-Carbon CFM: available as macro/inline
  2152. }
  2153. procedure DisposeQTSNotificationUPP( userUPP: QTSNotificationUPP ); external name '_DisposeQTSNotificationUPP';
  2154. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2155. {
  2156. * DisposeQTSPanelFilterUPP()
  2157. *
  2158. * Availability:
  2159. * Mac OS X: in version 10.1 and later in QuickTime.framework
  2160. * CarbonLib: in CarbonLib 1.6 and later
  2161. * Non-Carbon CFM: available as macro/inline
  2162. }
  2163. procedure DisposeQTSPanelFilterUPP( userUPP: QTSPanelFilterUPP ); external name '_DisposeQTSPanelFilterUPP';
  2164. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  2165. {
  2166. * DisposeQTSModalFilterUPP()
  2167. *
  2168. * Availability:
  2169. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2170. * CarbonLib: in CarbonLib 1.3 and later
  2171. * Non-Carbon CFM: available as macro/inline
  2172. }
  2173. procedure DisposeQTSModalFilterUPP( userUPP: QTSModalFilterUPP ); external name '_DisposeQTSModalFilterUPP';
  2174. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2175. {
  2176. * InvokeQTSNotificationUPP()
  2177. *
  2178. * Availability:
  2179. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2180. * CarbonLib: in CarbonLib 1.3 and later
  2181. * Non-Carbon CFM: available as macro/inline
  2182. }
  2183. function InvokeQTSNotificationUPP( inErr: ComponentResult; inNotificationType: OSType; inNotificationParams: UnivPtr; inRefCon: UnivPtr; userUPP: QTSNotificationUPP ): ComponentResult; external name '_InvokeQTSNotificationUPP';
  2184. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2185. {
  2186. * InvokeQTSPanelFilterUPP()
  2187. *
  2188. * Availability:
  2189. * Mac OS X: in version 10.1 and later in QuickTime.framework
  2190. * CarbonLib: in CarbonLib 1.6 and later
  2191. * Non-Carbon CFM: available as macro/inline
  2192. }
  2193. function InvokeQTSPanelFilterUPP( var inParams: QTSPanelFilterParams; inRefCon: UnivPtr; userUPP: QTSPanelFilterUPP ): Boolean; external name '_InvokeQTSPanelFilterUPP';
  2194. (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
  2195. {
  2196. * InvokeQTSModalFilterUPP()
  2197. *
  2198. * Availability:
  2199. * Mac OS X: in version 10.0 and later in QuickTime.framework
  2200. * CarbonLib: in CarbonLib 1.3 and later
  2201. * Non-Carbon CFM: available as macro/inline
  2202. }
  2203. function InvokeQTSModalFilterUPP( inDialog: DialogPtr; const (*var*) inEvent: EventRecord; var ioItemHit: SInt16; inRefCon: UnivPtr; userUPP: QTSModalFilterUPP ): Boolean; external name '_InvokeQTSModalFilterUPP';
  2204. (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
  2205. {$endc} {TARGET_CPU_64}
  2206. {$endc} {TARGET_OS_MAC}
  2207. {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
  2208. end.
  2209. {$endc} {not MACOSALLINCLUDE}