1 {
2      File:       QuickTime/Movies.h
3 
4      Contains:   QuickTime Interfaces.
5 
6      Version:    QuickTime 7.7.1
7 
8      Copyright:  � 1990-2012 by Apple Inc., all rights reserved
9 
10      Bugs?:      For bug reports, consult the following page on
11                  the World Wide Web:
12 
13                      http://bugs.freepascal.org
14 
15 }
16 {  Pascal Translation Updated:  Jonas Maebe, <jonas@freepascal.org>, October 2009 }
17 {  Pascal Translation Updated:  Jonas Maebe, <jonas@freepascal.org>, October 2012 }
18 {
19     Modified for use with Free Pascal
20     Version 308
21     Please report any bugs to <gpc@microbizz.nl>
22 }
23 
24 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
25 {$mode macpas}
26 {$modeswitch cblocks}
27 {$packenum 1}
28 {$macro on}
29 {$inline on}
30 {$calling mwpascal}
31 
32 unit Movies;
33 interface
34 {$setc UNIVERSAL_INTERFACES_VERSION := $0400}
35 {$setc GAP_INTERFACES_VERSION := $0308}
36 
37 {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
38     {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
39 {$endc}
40 
41 {$ifc defined CPUPOWERPC and defined CPUI386}
42 	{$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
43 {$endc}
44 {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
45 	{$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
46 {$endc}
47 
48 {$ifc not defined __ppc__ and defined CPUPOWERPC32}
49 	{$setc __ppc__ := 1}
50 {$elsec}
51 	{$setc __ppc__ := 0}
52 {$endc}
53 {$ifc not defined __ppc64__ and defined CPUPOWERPC64}
54 	{$setc __ppc64__ := 1}
55 {$elsec}
56 	{$setc __ppc64__ := 0}
57 {$endc}
58 {$ifc not defined __i386__ and defined CPUI386}
59 	{$setc __i386__ := 1}
60 {$elsec}
61 	{$setc __i386__ := 0}
62 {$endc}
63 {$ifc not defined __x86_64__ and defined CPUX86_64}
64 	{$setc __x86_64__ := 1}
65 {$elsec}
66 	{$setc __x86_64__ := 0}
67 {$endc}
68 {$ifc not defined __arm__ and defined CPUARM}
69 	{$setc __arm__ := 1}
70 {$elsec}
71 	{$setc __arm__ := 0}
72 {$endc}
73 {$ifc not defined __arm64__ and defined CPUAARCH64}
74   {$setc __arm64__ := 1}
75 {$elsec}
76   {$setc __arm64__ := 0}
77 {$endc}
78 
79 {$ifc defined cpu64}
80   {$setc __LP64__ := 1}
81 {$elsec}
82   {$setc __LP64__ := 0}
83 {$endc}
84 
85 
86 {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
87 	{$error Conflicting definitions for __ppc__ and __i386__}
88 {$endc}
89 
90 {$ifc defined __ppc__ and __ppc__}
91 	{$setc TARGET_CPU_PPC := TRUE}
92 	{$setc TARGET_CPU_PPC64 := FALSE}
93 	{$setc TARGET_CPU_X86 := FALSE}
94 	{$setc TARGET_CPU_X86_64 := FALSE}
95 	{$setc TARGET_CPU_ARM := FALSE}
96 	{$setc TARGET_CPU_ARM64 := FALSE}
97 	{$setc TARGET_OS_MAC := TRUE}
98 	{$setc TARGET_OS_IPHONE := FALSE}
99 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
100 	{$setc TARGET_OS_EMBEDDED := FALSE}
101 {$elifc defined __ppc64__ and __ppc64__}
102 	{$setc TARGET_CPU_PPC := FALSE}
103 	{$setc TARGET_CPU_PPC64 := TRUE}
104 	{$setc TARGET_CPU_X86 := FALSE}
105 	{$setc TARGET_CPU_X86_64 := FALSE}
106 	{$setc TARGET_CPU_ARM := FALSE}
107 	{$setc TARGET_CPU_ARM64 := FALSE}
108 	{$setc TARGET_OS_MAC := TRUE}
109 	{$setc TARGET_OS_IPHONE := FALSE}
110 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
111 	{$setc TARGET_OS_EMBEDDED := FALSE}
112 {$elifc defined __i386__ and __i386__}
113 	{$setc TARGET_CPU_PPC := FALSE}
114 	{$setc TARGET_CPU_PPC64 := FALSE}
115 	{$setc TARGET_CPU_X86 := TRUE}
116 	{$setc TARGET_CPU_X86_64 := FALSE}
117 	{$setc TARGET_CPU_ARM := FALSE}
118 	{$setc TARGET_CPU_ARM64 := FALSE}
119 {$ifc defined iphonesim}
120  	{$setc TARGET_OS_MAC := FALSE}
121 	{$setc TARGET_OS_IPHONE := TRUE}
122 	{$setc TARGET_IPHONE_SIMULATOR := TRUE}
123 {$elsec}
124 	{$setc TARGET_OS_MAC := TRUE}
125 	{$setc TARGET_OS_IPHONE := FALSE}
126 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
127 {$endc}
128 	{$setc TARGET_OS_EMBEDDED := FALSE}
129 {$elifc defined __x86_64__ and __x86_64__}
130 	{$setc TARGET_CPU_PPC := FALSE}
131 	{$setc TARGET_CPU_PPC64 := FALSE}
132 	{$setc TARGET_CPU_X86 := FALSE}
133 	{$setc TARGET_CPU_X86_64 := TRUE}
134 	{$setc TARGET_CPU_ARM := FALSE}
135 	{$setc TARGET_CPU_ARM64 := FALSE}
136 {$ifc defined iphonesim}
137  	{$setc TARGET_OS_MAC := FALSE}
138 	{$setc TARGET_OS_IPHONE := TRUE}
139 	{$setc TARGET_IPHONE_SIMULATOR := TRUE}
140 {$elsec}
141 	{$setc TARGET_OS_MAC := TRUE}
142 	{$setc TARGET_OS_IPHONE := FALSE}
143 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
144 {$endc}
145 	{$setc TARGET_OS_EMBEDDED := FALSE}
146 {$elifc defined __arm__ and __arm__}
147 	{$setc TARGET_CPU_PPC := FALSE}
148 	{$setc TARGET_CPU_PPC64 := FALSE}
149 	{$setc TARGET_CPU_X86 := FALSE}
150 	{$setc TARGET_CPU_X86_64 := FALSE}
151 	{$setc TARGET_CPU_ARM := TRUE}
152 	{$setc TARGET_CPU_ARM64 := FALSE}
153 	{$setc TARGET_OS_MAC := FALSE}
154 	{$setc TARGET_OS_IPHONE := TRUE}
155 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
156 	{$setc TARGET_OS_EMBEDDED := TRUE}
157 {$elifc defined __arm64__ and __arm64__}
158 	{$setc TARGET_CPU_PPC := FALSE}
159 	{$setc TARGET_CPU_PPC64 := FALSE}
160 	{$setc TARGET_CPU_X86 := FALSE}
161 	{$setc TARGET_CPU_X86_64 := FALSE}
162 	{$setc TARGET_CPU_ARM := FALSE}
163 	{$setc TARGET_CPU_ARM64 := TRUE}
164 {$ifc defined ios}
165 	{$setc TARGET_OS_MAC := FALSE}
166 	{$setc TARGET_OS_IPHONE := TRUE}
167 	{$setc TARGET_OS_EMBEDDED := TRUE}
168 {$elsec}
169 	{$setc TARGET_OS_MAC := TRUE}
170 	{$setc TARGET_OS_IPHONE := FALSE}
171 	{$setc TARGET_OS_EMBEDDED := FALSE}
172 {$endc}
173 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
174 {$elsec}
175 	{$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ nor __arm64__ is defined.}
176 {$endc}
177 
178 {$ifc defined __LP64__ and __LP64__ }
179   {$setc TARGET_CPU_64 := TRUE}
180 {$elsec}
181   {$setc TARGET_CPU_64 := FALSE}
182 {$endc}
183 
184 {$ifc defined FPC_BIG_ENDIAN}
185 	{$setc TARGET_RT_BIG_ENDIAN := TRUE}
186 	{$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
187 {$elifc defined FPC_LITTLE_ENDIAN}
188 	{$setc TARGET_RT_BIG_ENDIAN := FALSE}
189 	{$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
190 {$elsec}
191 	{$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
192 {$endc}
193 {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
194 {$setc CALL_NOT_IN_CARBON := FALSE}
195 {$setc OLDROUTINENAMES := FALSE}
196 {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
197 {$setc OPAQUE_UPP_TYPES := TRUE}
198 {$setc OTCARBONAPPLICATION := TRUE}
199 {$setc OTKERNEL := FALSE}
200 {$setc PM_USE_SESSION_APIS := TRUE}
201 {$setc TARGET_API_MAC_CARBON := TRUE}
202 {$setc TARGET_API_MAC_OS8 := FALSE}
203 {$setc TARGET_API_MAC_OSX := TRUE}
204 {$setc TARGET_CARBON := TRUE}
205 {$setc TARGET_CPU_68K := FALSE}
206 {$setc TARGET_CPU_MIPS := FALSE}
207 {$setc TARGET_CPU_SPARC := FALSE}
208 {$setc TARGET_OS_UNIX := FALSE}
209 {$setc TARGET_OS_WIN32 := FALSE}
210 {$setc TARGET_RT_MAC_68881 := FALSE}
211 {$setc TARGET_RT_MAC_CFM := FALSE}
212 {$setc TARGET_RT_MAC_MACHO := TRUE}
213 {$setc TYPED_FUNCTION_POINTERS := TRUE}
214 {$setc TYPE_BOOL := FALSE}
215 {$setc TYPE_EXTENDED := FALSE}
216 {$setc TYPE_LONGLONG := TRUE}
217 uses MacTypes,Aliases,Components,Dialogs,Events,Files,Menus,ImageCompression,QDOffscreen,QuickdrawTypes,TextEdit,HIObject,CFBase,CFDictionary,CFString,CoreAudioTypes,AUComponent;
218 {$endc} {not MACOSALLINCLUDE}
219 
220 
221 {$ifc TARGET_OS_MAC}
222 
223 {
224     Important note regarding availability macros
225     ============================================
226 
227     QuickTime APIs that were introduced in QuickTime 6.0 and later are tagged with
228     availability macros indicating the first Mac OS X version in which they were
229     *always* available.  Such APIs may also be present on systems running earlier
230     Mac OS X releases when QuickTime updates have been installed.
231 
232     For example, QTNewDataReferenceFromCFURL was introduced in QuickTime 6.4.
233     It is always available on Mac OS X 10.3, which shipped with QuickTime 6.4.
234     However, QuickTime 6.4 can also be installed as an update to Mac OS X 10.2.x,
235     so QTNewDataReferenceFromCFURL is also available on some systems running
236     Mac OS X 10.2.x.
237 
238     QuickTime 6.0 / Mac OS X 10.2  :  AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
239     QuickTime 6.4 / Mac OS X 10.3  :  AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
240     QuickTime 7.0 / Mac OS X 10.4  :  AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
241     QuickTime 7.2 / Mac OS X 10.5  :  AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
242 
243     As described in /usr/include/AvailabilityMacros.h, you can use the
244     MAC_OS_X_VERSION_MIN_REQUIRED macro to weak-link to the APIs that may not be
245     available on the Mac OS X versions your software targets.
246 }
247 
248 
249 {$ALIGN MAC68K}
250 
251 { This sets the user defined exportset name i.e. fw_QuickTime_XManchego, available on 10.5 or later, and comment [4486184] }
252 { NOTE:  Requires Interfacer-35 or later }
253 { <exportset=fw_QuickTime_XManchego> }
254 { <exportset=fw_QuickTime_XMaguro> }
255 
256 {  "kFix1" is defined in FixMath as "fixed1"  }
257 { error codes are in Errors.[haa] }
258 { gestalt codes are in Gestalt.[hpa] }
259 const
260 	MovieFileType = FourCharCode('MooV');
261 	MovieScrapType = FourCharCode('moov');
262 
263 const
264 	MovieResourceType = FourCharCode('moov');
265 	MovieForwardPointerResourceType = FourCharCode('fore');
266 	MovieBackwardPointerResourceType = FourCharCode('back');
267 
268 const
269 	MovieResourceAtomType = FourCharCode('moov');
270 	MovieDataAtomType = FourCharCode('mdat');
271 	FreeAtomType = FourCharCode('free');
272 	SkipAtomType = FourCharCode('skip');
273 	WideAtomPlaceholderType = FourCharCode('wide');
274 
275 const
276 	MediaHandlerType = FourCharCode('mhlr');
277 	DataHandlerType = FourCharCode('dhlr');
278 
279 const
280 	VideoMediaType = FourCharCode('vide');
281 	SoundMediaType = FourCharCode('soun');
282 	TextMediaType = FourCharCode('text');
283 	BaseMediaType = FourCharCode('gnrc');
284 	MPEGMediaType = FourCharCode('MPEG');
285 	MusicMediaType = FourCharCode('musi');
286 	TimeCodeMediaType = FourCharCode('tmcd');
287 	SpriteMediaType = FourCharCode('sprt');
288 	FlashMediaType = FourCharCode('flsh');
289 	MovieMediaType = FourCharCode('moov');
290 	TweenMediaType = FourCharCode('twen');
291 	ThreeDeeMediaType = FourCharCode('qd3d');
292 	SkinMediaType = FourCharCode('skin');
293 	HandleDataHandlerSubType = FourCharCode('hndl');
294 	PointerDataHandlerSubType = FourCharCode('ptr ');
295 	NullDataHandlerSubType = FourCharCode('null');
296 	ResourceDataHandlerSubType = FourCharCode('rsrc');
297 	URLDataHandlerSubType = FourCharCode('url ');
298 	AliasDataHandlerSubType = FourCharCode('alis');
299 	WiredActionHandlerType = FourCharCode('wire');
300 	kQTQuartzComposerMediaType = FourCharCode('qtz ');
301 	TimeCode64MediaType = FourCharCode('tc64');
302 
303 const
304 	VisualMediaCharacteristic = FourCharCode('eyes');
305 	AudioMediaCharacteristic = FourCharCode('ears');
306 	kCharacteristicCanSendVideo = FourCharCode('vsnd');
307 	kCharacteristicProvidesActions = FourCharCode('actn');
308 	kCharacteristicNonLinear = FourCharCode('nonl');
309 	kCharacteristicCanStep = FourCharCode('step');
310 	kCharacteristicHasNoDuration = FourCharCode('noti');
311 	kCharacteristicHasSkinData = FourCharCode('skin');
312 	kCharacteristicProvidesKeyFocus = FourCharCode('keyf');
313 	kCharacteristicSupportsDisplayOffsets = FourCharCode('dtdd');
314 
315 const
316 	kUserDataMovieControllerType = FourCharCode('ctyp');
317 	kUserDataName = FourCharCode('name');
318 	kUserDataTextAlbum = FourCharCode('�alb');
319 	kUserDataTextArtist = FourCharCode('�ART');
320 	kUserDataTextAuthor = FourCharCode('�aut');
321 	kUserDataTextChapter = FourCharCode('�chp');
322 	kUserDataTextComment = FourCharCode('�cmt');
323 	kUserDataTextComposer = FourCharCode('�com');
324 	kUserDataTextCopyright = FourCharCode('�cpy');
325 	kUserDataTextCreationDate	= FourCharCode('�day');
326 	kUserDataTextDescription = FourCharCode('�des');
327 	kUserDataTextDirector = FourCharCode('�dir');
328 	kUserDataTextDisclaimer = FourCharCode('�dis');
329 	kUserDataTextEncodedBy = FourCharCode('�enc');
330 	kUserDataTextFullName = FourCharCode('�nam');
331 	kUserDataTextGenre = FourCharCode('�gen');
332 	kUserDataTextHostComputer	= FourCharCode('�hst');
333 	kUserDataTextInformation = FourCharCode('�inf');
334 	kUserDataTextKeywords = FourCharCode('�key');
335 	kUserDataTextMake = FourCharCode('�mak');
336 	kUserDataTextModel = FourCharCode('�mod');
337 	kUserDataTextOriginalArtist	= FourCharCode('�ope');
338 	kUserDataTextOriginalFormat	= FourCharCode('�fmt');
339 	kUserDataTextOriginalSource	= FourCharCode('�src');
340 	kUserDataTextPerformers = FourCharCode('�prf');
341 	kUserDataTextProducer = FourCharCode('�prd');
342 	kUserDataTextPublisher = FourCharCode('�pub');
343 	kUserDataTextProduct = FourCharCode('�PRD');
344 	kUserDataTextSoftware = FourCharCode('�swr');
345 	kUserDataTextSpecialPlaybackRequirements = FourCharCode('�req');
346 	kUserDataTextTrack = FourCharCode('�trk');
347 	kUserDataTextWarning = FourCharCode('�wrn');
348 	kUserDataTextWriter = FourCharCode('�wrt');
349 	kUserDataTextURLLink = FourCharCode('�url');
350 	kUserDataTextEditDate1 = FourCharCode('�ed1');
351 	kUserDataAnimatedGIFLoopCount = FourCharCode('gifc'); { data is big-endian UInt16 }
352 	kQTAnimatedGIFLoopCountInfinite = 0;
353 	kUserDataAnimatedGIFBufferingSize = FourCharCode('gifb'); { data is big-endian UInt32 }
354 
355 const
356 	kUserDataUnicodeBit = 1 shl 7;
357 
358 const
359 	DoTheRightThing = 0;
360 
361 
362 {$ifc not TARGET_CPU_64}
363 
364 { property types}
365 type
366 	QTPropertyClass = OSType;
367 	QTPropertyID = OSType;
368 	QTPropertyValueType = OSType;
369 	QTPropertyValueTypePtr = ^QTPropertyValueType;
370 	QTPropertyValuePtr = UnivPtr;
371 	ConstQTPropertyValuePtr = {const} UnivPtr;
372 	MovieTypePtr = ^SInt32; { an opaque type }
373 	Movie = ^MovieTypePtr;
374 	Movie_fix = Movie; { used as field type when a record declaration contains a Movie field identifier }
375 	MoviePtr = ^Movie;
376 	PtrToMovie = MoviePtr;
377 	TrackTypePtr = ^SInt32; { an opaque type }
378 	Track = ^TrackTypePtr;
379 	Track_fix = Track; { used as field type when a record declaration contains a Track field identifier }
380 	MediaTypePtr = ^SInt32; { an opaque type }
381 	Media = ^MediaTypePtr;
382 	UserDataRecordPtr = ^SInt32; { an opaque type }
383 	UserData = ^UserDataRecordPtr;
384 	MovieEditStateRecordPtr = ^SInt32; { an opaque type }
385 	MovieEditState = ^MovieEditStateRecordPtr;
386 	TrackEditStateRecordPtr = ^SInt32; { an opaque type }
387 	TrackEditState = ^TrackEditStateRecordPtr;
388 	QTRestrictionSetRecordPtr = ^SInt32; { an opaque type }
389 	QTRestrictionSet = ^QTRestrictionSetRecordPtr;
390 	SpriteWorld = ^SInt32; { an opaque type }
391 	Sprite = ^SInt32; { an opaque type }
392 	QTTweener = ^SInt32; { an opaque type }
393 
394 {$endc} {not TARGET_CPU_64}
395 
396 
397 type
398 	SampleDescription = record
399 		descSize: SInt32;
400 		dataFormat: SInt32;
401 		resvd1: SInt32;
402 		resvd2: SInt16;
403 		dataRefIndex: SInt16;
404 	end;
405 	SampleDescriptionPtr = ^SampleDescription;
406 type
407 	SampleDescriptionHandle = ^SampleDescriptionPtr;
408 
409 {$ifc not TARGET_CPU_64}
410 
411 const
412 	kQTNetworkStatusNoNetwork = -2;
413 	kQTNetworkStatusUncertain = -1;
414 	kQTNetworkStatusNotConnected = 0;
415 	kQTNetworkStatusConnected = 1;
416 
417 type
418 	QTAtomContainer = Handle;
419 	QTAtom = SIGNEDLONG;
420 	QTAtomType = SIGNEDLONG;
421 	QTAtomID = SIGNEDLONG;
422 { QTFloatDouble is the 64-bit IEEE-754 standard}
423 type
424 	QTFloatDouble = Float64;
425 { QTFloatSingle is the 32-bit IEEE-754 standard}
426 type
427 	QTFloatSingle = Float32;
428 
429 {$endc} {not TARGET_CPU_64}
430 
431 {************************
432  * SoundDescription
433  ************************}
434 type
435 	SoundDescription = record
436 		descSize: SInt32;               { total size of SoundDescription including extra data }
437 		dataFormat: SInt32;             { sound format }
438 		resvd1: SInt32;                 { reserved for apple use. set to zero }
439 		resvd2: SInt16;                 { reserved for apple use. set to zero }
440 		dataRefIndex: SInt16;
441 		version: SInt16;                { which version is this data }
442 		revlevel: SInt16;               { what version of that codec did this }
443 		vendor: SInt32;                 { whose  codec compressed this data }
444 		numChannels: SInt16;            { number of channels of sound }
445 		sampleSize: SInt16;             { number of bits per sample }
446 		compressionID: SInt16;          { unused. set to zero. }
447 		packetSize: SInt16;             { unused. set to zero. }
448 		sampleRate: UnsignedFixed;             { sample rate sound is captured at }
449 	end;
450 	SoundDescriptionPtr = ^SoundDescription;
451 type
452 	SoundDescriptionHandle = ^SoundDescriptionPtr;
453 { version 1 of the SoundDescription record}
454 type
455 	SoundDescriptionV1 = record
456 { original fields}
457 		desc: SoundDescription;
458                                               { fixed compression ratio information}
459 		samplesPerPacket: UInt32;
460 		bytesPerPacket: UInt32;
461 		bytesPerFrame: UInt32;
462 		bytesPerSample: UInt32;
463                                               { additional atom based fields ([long size, long type, some data], repeat)}
464 	end;
465 	SoundDescriptionV1Ptr = ^SoundDescriptionV1;
466 type
467 	SoundDescriptionV1Handle = ^SoundDescriptionV1Ptr;
468 {
469    Definitions for SoundDescriptionV2:
470         LPCMFrame = one uncompressed sample in each of the channels (ie. 44100Hz audio has
471                 44100 LPCMFrames per second, whether it is mono, stereo, 5.1, or whatever).
472                 In other words, LPCMFrames/audioSampleRate is duration in seconds.
473         AudioPacket = For compressed audio, an AudioPacket is the natural compressed access
474                 unit of that format.  For uncompressed audio, an AudioPacket is simply one
475                 LPCMFrame.
476 }
477 { version 2 of the SoundDescription record}
478 type
479 	SoundDescriptionV2 = record
480 		descSize: SInt32;               { total size of SoundDescription including extra data }
481 		dataFormat: OSType;             { 'lpcm' for uncompressed, compression type otherwise (eg. 'ima4') }
482 		resvd1: SInt32;                 { reserved for apple use. Must be set to zero }
483 		resvd2: SInt16;                 { reserved for apple use. Must be set to zero }
484 		dataRefIndex: SInt16;
485 		version: SInt16;                { which version is this data (2 in this case) }
486 		revlevel: SInt16;               { what version of that codec did this }
487 		vendor: SInt32;                 { whose  codec compressed this data }
488 
489 		always3: SInt16;                { Reserved, must be set to 3 }
490 		always16: SInt16;               { Reserved, must be set to 16 (0x0010) }
491 		alwaysMinus2: SInt16;           { Reserved, must be set to -2 (0xFFFE) }
492 		always0: SInt16;                { Reserved, must be set to 0 }
493 		always65536: UInt32;            { Reserved, must be set to 65536 (0x00010000) }
494 
495 		sizeOfStructOnly: UInt32;       { must be set to sizeof(SoundDescriptionV2), ie. offset to extensions }
496 		audioSampleRate: Float64;        { audio frames per second, eg. 44100.0 }
497 		numAudioChannels: UInt32;       { any channel assignment info will be in an extension }
498 
499 		always7F000000: SInt32;         { Reserved, must be set to 0x7F000000 }
500 		constBitsPerChannel: UInt32;    { only set if constant (and only for uncompressed audio) }
501 
502 		formatSpecificFlags: UInt32;    { eg. see LPCM flag definitions in CoreAudioTypes.h }
503 		constBytesPerAudioPacket: UInt32; { only set if constant }
504 		constLPCMFramesPerAudioPacket: UInt32; { only set if constant }
505 
506                                               { additional atom based extensions ([long size, long type, some data], repeat)}
507 	end;
508 	SoundDescriptionV2Ptr = ^SoundDescriptionV2;
509 type
510 	SoundDescriptionV2Handle = ^SoundDescriptionV2Ptr;
511 
512 {$ifc not TARGET_CPU_64}
513 
514 const
515 	kQTSoundDescriptionKind_Movie_Version1 = FourCharCode('mvv1');
516 	kQTSoundDescriptionKind_Movie_Version2 = FourCharCode('mvv2');
517 	kQTSoundDescriptionKind_Movie_LowestPossibleVersion = FourCharCode('mvlo');
518 	kQTSoundDescriptionKind_Movie_AnyVersion = FourCharCode('mvny');
519 
520 type
521 	QTSoundDescriptionKind = FourCharCode;
522 {
523  *  QTSoundDescriptionCreate()
524  *
525  *  Summary:
526  *    QTSoundDescriptionCreate creates a SoundDescription of the
527  *    requested kind from an AudioStreamBasicDescription, optional
528  *    AudioChannelLayout, and optional magic cookie.
529  *    QTSoundDescriptionCreate allocates the returned
530  *    SoundDescriptionHandle, and the caller is responsible for
531  *    disposing it.
532  *
533  *  Parameters:
534  *
535  *    inASBD:
536  *      a description of the format
537  *
538  *    inLayout:
539  *      the audio channel layout (can be NULL if there isn't one)
540  *
541  *    inLayoutSize:
542  *      size of the audio channel layout (should be 0 if inLayout is
543  *      NULL)
544  *
545  *    inMagicCookie:
546  *      the magic cookie for the decompressor (can be NULL if there
547  *      isn't one)
548  *
549  *    inMagicCookieSize:
550  *      size of the magic cookie (should be 0 if inMagicCookie is NULL)
551  *
552  *    inRequestedKind:
553  *      the kind of SoundDescription to create
554  *
555  *    outSoundDesc:
556  *      the resulting SoundDescription.  Caller must dispose with
557  *      DisposeHandle.
558  *
559  *  Availability:
560  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
561  *    CarbonLib:        not available
562  *    Non-Carbon CFM:   not available
563  }
QTSoundDescriptionCreatenull564 function QTSoundDescriptionCreate( var inASBD: AudioStreamBasicDescription; inLayout: AudioChannelLayoutPtr { can be NULL }; inLayoutSize: ByteCount; inMagicCookie: UnivPtr; inMagicCookieSize: ByteCount; inRequestedKind: QTSoundDescriptionKind; var outSoundDesc: SoundDescriptionHandle ): OSStatus; external name '_QTSoundDescriptionCreate';
565 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
566 
567 
568 {
569  *  QTSoundDescriptionConvert()
570  *
571  *  Summary:
572  *    Converts from one kind of SoundDescription to another. Note that
573  *    fromKind is reserved for future expansion.  You must set it to
574  *    kSoundDescriptionKind_Movie_AnyVersion. You can specify (via
575  *    toKind) that you would like a specific SoundDescription version,
576  *    the lowest possible version (given the constraints of the format
577  *    described by fromDescription), or any version of SoundDescription
578  *    at all. QTSoundDescriptionConvert allocates the returned
579  *    SoundDescriptionHandle and the caller is responsible for
580  *    disposing it.
581  *
582  *  Parameters:
583  *
584  *    fromKind:
585  *      reserved, must be set to kSoundDescriptionKind_Movie_AnyVersion
586  *
587  *    fromDescription:
588  *      input description to be converted
589  *
590  *    toKind:
591  *      kind of description toDescription will be
592  *
593  *    toDescription:
594  *      the resulting SoundDescription.  Caller must dispose with
595  *      DisposeHandle.
596  *
597  *  Availability:
598  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
599  *    CarbonLib:        not available
600  *    Non-Carbon CFM:   not available
601  }
QTSoundDescriptionConvertnull602 function QTSoundDescriptionConvert( fromKind: QTSoundDescriptionKind; fromDescription: SoundDescriptionHandle; toKind: QTSoundDescriptionKind; var toDescription: SoundDescriptionHandle ): OSStatus; external name '_QTSoundDescriptionConvert';
603 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
604 
605 
606 { SoundDescription Properties}
607 
608 const
609 {
610    * Properties of a SoundDescription
611    }
612 	kQTPropertyClass_SoundDescription = FourCharCode('sdes'); { class for SoundDescription properties}
613 
614 
615 const
616 {
617    * kQTSoundDescriptionPropertyID_AudioChannelLayout: Value is
618    * AudioChannelLayout (Get/Set) Note that this is a variable sized
619    * property (since it may contain an array of ChannelDescriptions;
620    * see CoreAudioTypes.h).  You must get the size first (by calling
621    * QTSoundDescriptionGetPropertyInfo), allocate a struct of that
622    * size, and then get the property.
623    }
624 	kQTSoundDescriptionPropertyID_AudioChannelLayout = FourCharCode('clay');
625 
626   {
627    * kQTSoundDescriptionPropertyID_MagicCookie: Value is opaque bytes
628    * (Get/Set) Note that this is a variable sized property (since it is
629    * completely defined by the codec in question).  You must get the
630    * size first (by calling QTSoundDescriptionGetPropertyInfo),
631    * allocate a struct of that size, and then get the property.
632    }
633 	kQTSoundDescriptionPropertyID_MagicCookie = FourCharCode('kuki');
634 
635   {
636    * kQTSoundDescriptionPropertyID_AudioStreamBasicDescription: Value
637    * is AudioStreamBasicDescription (Get only)
638    }
639 	kQTSoundDescriptionPropertyID_AudioStreamBasicDescription = FourCharCode('asbd');
640 
641   {
642    * kQTSoundDescriptionPropertyID_BitRate: Value is UInt32 in bits per
643    * second (Get only) kQTSoundDescriptionPropertyID_BitRate Note that
644    * this property may not be available for formats that are inherently
645    * very variable in bitrate and highly source-data dependent (such as
646    * Apple Lossless).
647    }
648 	kQTSoundDescriptionPropertyID_BitRate = FourCharCode('brat');
649 
650   {
651    * kQTSoundDescriptionPropertyID_UserReadableText: Value is
652    * CFStringRef (Get only) QTSoundDescriptionGetProperty does a
653    * CFRetain of the returned CFString on behalf of the caller, so the
654    * caller is responsible for calling CFRelease on the returned
655    * CFString.
656    }
657 	kQTSoundDescriptionPropertyID_UserReadableText = FourCharCode('text');
658 
659 {
660  *  QTSoundDescriptionGetPropertyInfo()
661  *
662  *  Summary:
663  *    Gets info about a particular property of a SoundDescription.
664  *
665  *  Parameters:
666  *
667  *    inDesc:
668  *      SoundDescription being interrogated
669  *
670  *    inPropClass:
671  *      class of property being requested
672  *
673  *    inPropID:
674  *      ID of property being requested
675  *
676  *    outPropType:
677  *      type of property is returned here (can be NULL)
678  *
679  *    outPropValueSize:
680  *      size of property is returned here (can be NULL)
681  *
682  *    outPropertyFlags:
683  *      property flags are returned here (can be NULL)
684  *
685  *  Availability:
686  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
687  *    CarbonLib:        not available
688  *    Non-Carbon CFM:   not available
689  }
QTSoundDescriptionGetPropertyInfonull690 function QTSoundDescriptionGetPropertyInfo( inDesc: SoundDescriptionHandle; inPropClass: QTPropertyClass; inPropID: QTPropertyID; outPropType: QTPropertyValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_QTSoundDescriptionGetPropertyInfo';
691 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
692 
693 
694 {
695  *  QTSoundDescriptionGetProperty()
696  *
697  *  Summary:
698  *    Gets a particular property of a SoundDescription.
699  *
700  *  Parameters:
701  *
702  *    inDesc:
703  *      SoundDescription being interrogated
704  *
705  *    inPropClass:
706  *      class of property being requested
707  *
708  *    inPropID:
709  *      ID of property being requested
710  *
711  *    inPropValueSize:
712  *      size of property value buffer
713  *
714  *    outPropValueAddress:
715  *      pointer to property value buffer
716  *
717  *    outPropValueSizeUsed:
718  *      actual size of returned property value (can be NULL)
719  *
720  *  Availability:
721  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
722  *    CarbonLib:        not available
723  *    Non-Carbon CFM:   not available
724  }
QTSoundDescriptionGetPropertynull725 function QTSoundDescriptionGetProperty( inDesc: SoundDescriptionHandle; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_QTSoundDescriptionGetProperty';
726 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
727 
728 
729 {
730  *  QTSoundDescriptionSetProperty()
731  *
732  *  Summary:
733  *    Sets a particular property of a SoundDescription.
734  *
735  *  Parameters:
736  *
737  *    inDesc:
738  *      SoundDescription being modified
739  *
740  *    inPropClass:
741  *      class of property being set
742  *
743  *    inPropID:
744  *      ID of property being set
745  *
746  *    inPropValueSize:
747  *      size of property value buffer
748  *
749  *    inPropValueAddress:
750  *      pointer to property value buffer
751  *
752  *  Availability:
753  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
754  *    CarbonLib:        not available
755  *    Non-Carbon CFM:   not available
756  }
QTSoundDescriptionSetPropertynull757 function QTSoundDescriptionSetProperty( inDesc: SoundDescriptionHandle; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSStatus; external name '_QTSoundDescriptionSetProperty';
758 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
759 
760 
761 { Sound Description Extensions}
762 
763 {
764  *  AddSoundDescriptionExtension()
765  *
766  *  Availability:
767  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
768  *    CarbonLib:        in CarbonLib 1.0 and later
769  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
770  *    Windows:          in qtmlClient.lib 3.0 and later
771  }
AddSoundDescriptionExtensionnull772 function AddSoundDescriptionExtension( desc: SoundDescriptionHandle; extension: Handle; idType: OSType ): OSErr; external name '_AddSoundDescriptionExtension';
773 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
774 
775 
776 {
777  *  GetSoundDescriptionExtension()
778  *
779  *  Availability:
780  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
781  *    CarbonLib:        in CarbonLib 1.0 and later
782  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
783  *    Windows:          in qtmlClient.lib 3.0 and later
784  }
GetSoundDescriptionExtensionnull785 function GetSoundDescriptionExtension( desc: SoundDescriptionHandle; var extension: Handle; idType: OSType ): OSErr; external name '_GetSoundDescriptionExtension';
786 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
787 
788 
789 {
790  *  RemoveSoundDescriptionExtension()
791  *
792  *  Availability:
793  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
794  *    CarbonLib:        in CarbonLib 1.0 and later
795  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
796  *    Windows:          in qtmlClient.lib 3.0 and later
797  }
RemoveSoundDescriptionExtensionnull798 function RemoveSoundDescriptionExtension( desc: SoundDescriptionHandle; idType: OSType ): OSErr; external name '_RemoveSoundDescriptionExtension';
799 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
800 
801 
802 {$endc} {not TARGET_CPU_64}
803 
804 
805 const
806 	kTx3gSampleType = FourCharCode('tx3g');
807 	kTx3gFontTableAtomType = FourCharCode('ftab');
808 	kTx3gBlinkAtomType = FourCharCode('blnk');
809 
810 type
811 	Tx3gRGBAColor = record
812 		red: UInt8;
813 		green: UInt8;
814 		blue: UInt8;
815 		transparency: UInt8;
816 	end;
817 type
818 	Tx3gStyleRecordPtr = ^Tx3gStyleRecord;
819 	Tx3gStyleRecord = record
820 		startChar: UInt16;
821 		endChar: UInt16;
822 		fontID: UInt16;
823 		fontFace: UInt8;
824 		fontSize: UInt8;
825 		fontColor: Tx3gRGBAColor;
826 	end;
827 type
828 	Tx3gStylePtr = Tx3gStyleRecordPtr;
829 	Tx3gStyleHandle = ^Tx3gStylePtr;
830 	Tx3gStyleTableRecordPtr = ^Tx3gStyleTableRecord;
831 	Tx3gStyleTableRecord = record
832 		count: UInt16;
833     table: array [0..0] of Tx3gStyleRecord;
834 	end;
835 type
836 	Tx3gStyleTablePtr = Tx3gStyleTableRecordPtr;
837 	Tx3gStyleTableHandle = ^Tx3gStyleTablePtr;
838 	Tx3gFontRecord = record
839 		fontID: UInt16;
840 		nameLength: UInt8;
841     name: array[0..0] of SInt8;
842 	end;
843 	Tx3gFontRecordPtr = ^Tx3gFontRecord;
844 type
845 	Tx3gFontTableRecordPtr = ^Tx3gFontTableRecord;
846 	Tx3gFontTableRecord = record
847 		entryCount: UInt16;
848     fontEntries: array[0..0] of Tx3gFontRecord;
849 	end;
850 type
851 	Tx3gFontTablePtr = Tx3gFontTableRecordPtr;
852 	Tx3gFontTableHandle = ^Tx3gFontTablePtr;
853 	Tx3gDescription = record
854 		descSize: SInt32;
855 		dataFormat: SInt32;
856 		resvd1: SInt32;
857 		resvd2: SInt16;
858 		dataRefIndex: SInt16;
859 
860 		displayFlags: UInt32;
861 		horizontalJustification: char;
862 		verticalJustification: char;
863 		backgroundColor: Tx3gRGBAColor;
864 		defaultTextBox: Rect;
865 		defaultStyle: Tx3gStyleRecord;
866 	end;
867 	Tx3gDescriptionPtr = ^Tx3gDescription;
868 type
869 	Tx3gDescriptionHandle = ^Tx3gDescriptionPtr;
870 
871 {$ifc TARGET_CPU_64}
872 
873 { QuickDraw legacy }
874 type
875 	QTRGBColor = record
876 		red: UInt16;                    { magnitude of red component}
877 		green: UInt16;                  { magnitude of green component}
878 		blue: UInt16;                   { magnitude of blue component}
879 	end;
880 
881 {$endc} {TARGET_CPU_64}
882 
883 type
884 	TextDescription = record
885 		descSize: SInt32;               { Total size of TextDescription}
886 		dataFormat: SInt32;             { 'text'}
887 
888 		resvd1: SInt32;
889 		resvd2: SInt16;
890 		dataRefIndex: SInt16;
891 
892 		displayFlags: SInt32;           { see enum below for flag values}
893 
894 		textJustification: SInt32;      { Can be: teCenter,teFlush -Default,-Right,-Left}
895 
896 
897 {$ifc TARGET_CPU_64}
898 
899 
900 		bgColor: QTRGBColor;                { Background color}
901 
902 {$elsec} {TARGET_CPU_64}
903 
904 
905 		bgColor: RGBColor;                { Background color}
906 
907 {$endc} {TARGET_CPU_64}
908 
909 
910 		defaultTextBox: Rect;         { Location to place the text within the track bounds}
911 		defaultStyle: ScrpSTElement;           { Default style (struct defined in TextEdit.h)}
912     defaultFontName: array[0..0] of SInt8;     { Font Name (pascal string - struct extended to fit) }
913 	end;
914 	TextDescriptionPtr = ^TextDescription;
915 type
916 	TextDescriptionHandle = ^TextDescriptionPtr;
917 
918 {$ifc not TARGET_CPU_64}
919 
920 type
921 	SpriteDescription = record
922 		descSize: SIGNEDLONG;               { total size of SpriteDescription including extra data }
923 		dataFormat: SIGNEDLONG;             {  }
924 		resvd1: SIGNEDLONG;                 { reserved for apple use }
925 		resvd2: SInt16;
926 		dataRefIndex: SInt16;
927 		version: SIGNEDLONG;                { which version is this data }
928 		decompressorType: OSType;       { which decompressor to use, 0 for no decompression }
929 		sampleFlags: SIGNEDLONG;            { how to interpret samples }
930 	end;
931 	SpriteDescriptionPtr = ^SpriteDescription;
932 type
933 	SpriteDescriptionHandle = ^SpriteDescriptionPtr;
934 	FlashDescription = record
935 		descSize: SIGNEDLONG;
936 		dataFormat: SIGNEDLONG;
937 		resvd1: SIGNEDLONG;
938 		resvd2: SInt16;
939 		dataRefIndex: SInt16;
940 		version: SIGNEDLONG;                { which version is this data }
941 		decompressorType: OSType;       { which decompressor to use, 0 for no decompression }
942 		flags: SIGNEDLONG;
943 	end;
944 	FlashDescriptionPtr = ^FlashDescription;
945 type
946 	FlashDescriptionHandle = ^FlashDescriptionPtr;
947 	ThreeDeeDescription = record
948 		descSize: SIGNEDLONG;               { total size of ThreeDeeDescription including extra data }
949 		dataFormat: SIGNEDLONG;             {  }
950 		resvd1: SIGNEDLONG;                 { reserved for apple use }
951 		resvd2: SInt16;
952 		dataRefIndex: SInt16;
953 		version: SIGNEDLONG;                { which version is this data }
954 		rendererType: SIGNEDLONG;           { which renderer to use, 0 for default }
955 		decompressorType: SIGNEDLONG;       { which decompressor to use, 0 for default }
956 	end;
957 	ThreeDeeDescriptionPtr = ^ThreeDeeDescription;
958 type
959 	ThreeDeeDescriptionHandle = ^ThreeDeeDescriptionPtr;
960 	DataReferenceRecordPtr = ^DataReferenceRecord;
961 	DataReferenceRecord = record
962 		dataRefType: OSType;
963 		dataRef: Handle;
964 	end;
965 type
966 	DataReferencePtr = DataReferenceRecordPtr;
967 {--------------------------
968   Music Sample Description
969 --------------------------}
970 type
971 	MusicDescription = record
972 		descSize: SIGNEDLONG;
973 		dataFormat: SIGNEDLONG;             { 'musi' }
974 
975 		resvd1: SIGNEDLONG;
976 		resvd2: SInt16;
977 		dataRefIndex: SInt16;
978 
979 		musicFlags: SIGNEDLONG;
980     headerData: array [0..0] of UNSIGNEDLONG;          { variable size! }
981 	end;
982 	MusicDescriptionPtr = ^MusicDescription;
983 type
984 	MusicDescriptionHandle = ^MusicDescriptionPtr;
985 const
986 	kMusicFlagDontPlay2Soft = 1 shl 0;
987 	kMusicFlagDontSlaveToMovie = 1 shl 1;
988 
989 
990 const
991 	dfDontDisplay = 1 shl 0; { Don't display the text}
992 	dfDontAutoScale = 1 shl 1; { Don't scale text as track bounds grows or shrinks}
993 	dfClipToTextBox = 1 shl 2; { Clip update to the textbox}
994 	dfUseMovieBGColor = 1 shl 3; { Set text background to movie's background color}
995 	dfShrinkTextBoxToFit = 1 shl 4; { Compute minimum box to fit the sample}
996 	dfScrollIn = 1 shl 5; { Scroll text in until last of text is in view }
997 	dfScrollOut = 1 shl 6; { Scroll text out until last of text is gone (if both set, scroll in then out)}
998 	dfHorizScroll = 1 shl 7; { Scroll text horizontally (otherwise it's vertical)}
999 	dfReverseScroll = 1 shl 8; { vert: scroll down rather than up; horiz: scroll backwards (justfication dependent)}
1000 	dfContinuousScroll = 1 shl 9; { new samples cause previous samples to scroll out }
1001 	dfFlowHoriz = 1 shl 10; { horiz scroll text flows in textbox rather than extend to right }
1002 	dfContinuousKaraoke = 1 shl 11; { ignore begin offset, hilite everything up to the end offset(karaoke)}
1003 	dfDropShadow = 1 shl 12; { display text with a drop shadow }
1004 	dfAntiAlias = 1 shl 13; { attempt to display text anti aliased}
1005 	dfKeyedText = 1 shl 14; { key the text over background}
1006 	dfInverseHilite = 1 shl 15; { Use inverse hiliting rather than using hilite color}
1007 	dfTextColorHilite = 1 shl 16; { changes text color in place of hiliting. }
1008 
1009 const
1010 	searchTextDontGoToFoundTime = 1 shl 16;
1011 	searchTextDontHiliteFoundText = 1 shl 17;
1012 	searchTextOneTrackOnly = 1 shl 18;
1013 	searchTextEnabledTracksOnly = 1 shl 19;
1014 
1015 {use these with the text property routines}
1016 const
1017 { set property parameter / get property parameter}
1018 	kTextTextHandle = 1;    { Handle / preallocated Handle}
1019 	kTextTextPtr = 2;    { Pointer}
1020 	kTextTEStyle = 3;    { TextStyle * / TextStyle *}
1021 	kTextSelection = 4;    { long [2] / long [2]}
1022 	kTextBackColor = 5;    { RGBColor * / RGBColor *}
1023 	kTextForeColor = 6;    { RGBColor * / RGBColor *}
1024 	kTextFace = 7;    { long / long *}
1025 	kTextFont = 8;    { long / long *}
1026 	kTextSize = 9;    { long / long *}
1027 	kTextAlignment = 10;   { short * / short *}
1028 	kTextHilite = 11;   { hiliteRecord * / hiliteRecord *}
1029 	kTextDropShadow = 12;   { dropShadowRecord * / dropShadowRecord *}
1030 	kTextDisplayFlags = 13;   { long / long *}
1031 	kTextScroll = 14;   { TimeValue * / TimeValue *}
1032 	kTextRelativeScroll = 15;   { Point *}
1033 	kTextHyperTextFace = 16;   { hyperTextSetFace * / hyperTextSetFace *}
1034 	kTextHyperTextColor = 17;   { hyperTextSetColor * / hyperTextSetColor *}
1035 	kTextKeyEntry = 18;   { short}
1036 	kTextMouseDown = 19;   { Point *}
1037 	kTextTextBox = 20;   { Rect * / Rect *}
1038 	kTextEditState = 21;   { short / short *}
1039 	kTextLength = 22;    {       / long *}
1040 
1041 const
1042 	k3DMediaRendererEntry = FourCharCode('rend');
1043 	k3DMediaRendererName = FourCharCode('name');
1044 	k3DMediaRendererCode = FourCharCode('rcod');
1045 
1046 { progress messages }
1047 const
1048 	movieProgressOpen = 0;
1049 	movieProgressUpdatePercent = 1;
1050 	movieProgressClose = 2;
1051 
1052 { progress operations }
1053 const
1054 	progressOpFlatten = 1;
1055 	progressOpInsertTrackSegment = 2;
1056 	progressOpInsertMovieSegment = 3;
1057 	progressOpPaste = 4;
1058 	progressOpAddMovieSelection = 5;
1059 	progressOpCopy = 6;
1060 	progressOpCut = 7;
1061 	progressOpLoadMovieIntoRam = 8;
1062 	progressOpLoadTrackIntoRam = 9;
1063 	progressOpLoadMediaIntoRam = 10;
1064 	progressOpImportMovie = 11;
1065 	progressOpExportMovie = 12;
1066 
1067 const
1068 	mediaQualityDraft = $0000;
1069 	mediaQualityNormal = $0040;
1070 	mediaQualityBetter = $0080;
1071 	mediaQualityBest = $00C0;
1072 
1073 {****
1074     Interactive Sprites Support
1075 ****}
1076 { QTEventRecord flags}
1077 const
1078 	kQTEventPayloadIsQTList = 1 shl 0;
1079 
1080 type
1081 	QTEventRecord = record
1082 		version: SIGNEDLONG;
1083 		eventType: OSType;
1084 		where: Point;
1085 		flags: SIGNEDLONG;
1086 		payloadRefcon: SIGNEDLONG;          { from here down only present if version >= 2}
1087 		param1: SIGNEDLONG;
1088 		param2: SIGNEDLONG;
1089 		param3: SIGNEDLONG;
1090 	end;
1091 	QTEventRecordPtr = ^QTEventRecord;
1092 type
1093 	QTAtomSpec = record
1094 		container: QTAtomContainer;
1095 		atom: QTAtom;
1096 	end;
1097 	QTAtomSpecPtr = ^QTAtomSpec;
1098 type
1099 	ResolvedQTEventSpec = record
1100 		actionAtom: QTAtomSpec;
1101 		targetTrack: Track;
1102 		targetRefCon: SIGNEDLONG;
1103 	end;
1104 	ResolvedQTEventSpecPtr = ^ResolvedQTEventSpec;
1105 
1106 { action constants }
1107 const
1108 	kActionMovieSetVolume = 1024; { (short movieVolume) }
1109 	kActionMovieSetRate = 1025; { (Fixed rate) }
1110 	kActionMovieSetLoopingFlags = 1026; { (long loopingFlags) }
1111 	kActionMovieGoToTime = 1027; { (TimeValue time) }
1112 	kActionMovieGoToTimeByName = 1028; { (Str255 timeName) }
1113 	kActionMovieGoToBeginning = 1029; { no params }
1114 	kActionMovieGoToEnd = 1030; { no params }
1115 	kActionMovieStepForward = 1031; { no params }
1116 	kActionMovieStepBackward = 1032; { no params }
1117 	kActionMovieSetSelection = 1033; { (TimeValue startTime, TimeValue endTime) }
1118 	kActionMovieSetSelectionByName = 1034; { (Str255 startTimeName, Str255 endTimeName) }
1119 	kActionMoviePlaySelection = 1035; { (Boolean selectionOnly) }
1120 	kActionMovieSetLanguage = 1036; { (long language) }
1121 	kActionMovieChanged = 1037; { no params }
1122 	kActionMovieRestartAtTime = 1038; { (TimeValue startTime, Fixed rate) }
1123 	kActionMovieGotoNextChapter = 1039; { no params }
1124 	kActionMovieGotoPreviousChapter = 1040; { no params }
1125 	kActionMovieGotoFirstChapter = 1041; { no params }
1126 	kActionMovieGotoLastChapter = 1042; { no params }
1127 	kActionMovieGotoChapterByIndex = 1043; { ( short index ) }
1128 	kActionMovieSetScale = 1044; { (Fixed xScale, Fixed yScale) }
1129 	kActionTrackSetVolume = 2048; { (short volume) }
1130 	kActionTrackSetBalance = 2049; { (short balance) }
1131 	kActionTrackSetEnabled = 2050; { (Boolean enabled) }
1132 	kActionTrackSetMatrix = 2051; { (MatrixRecord matrix) }
1133 	kActionTrackSetLayer = 2052; { (short layer) }
1134 	kActionTrackSetClip = 2053; { (RgnHandle clip) }
1135 	kActionTrackSetCursor = 2054; { (QTATomID cursorID) }
1136 	kActionTrackSetGraphicsMode = 2055; { (ModifierTrackGraphicsModeRecord graphicsMode) }
1137 	kActionTrackSetIdleFrequency = 2056; { (long frequency) }
1138 	kActionTrackSetBassTreble = 2057; { (short base, short treble) }
1139 	kActionSpriteSetMatrix = 3072; { (MatrixRecord matrix) }
1140 	kActionSpriteSetImageIndex = 3073; { (short imageIndex) }
1141 	kActionSpriteSetVisible = 3074; { (short visible) }
1142 	kActionSpriteSetLayer = 3075; { (short layer) }
1143 	kActionSpriteSetGraphicsMode = 3076; { (ModifierTrackGraphicsModeRecord graphicsMode) }
1144 	kActionSpritePassMouseToCodec = 3078; { no params }
1145 	kActionSpriteClickOnCodec = 3079; { Point localLoc }
1146 	kActionSpriteTranslate = 3080; { (Fixed x, Fixed y, Boolean isAbsolute) }
1147 	kActionSpriteScale = 3081; { (Fixed xScale, Fixed yScale) }
1148 	kActionSpriteRotate = 3082; { (Fixed degrees) }
1149 	kActionSpriteStretch = 3083; { (Fixed p1x, Fixed p1y, Fixed p2x, Fixed p2y, Fixed p3x, Fixed p3y, Fixed p4x, Fixed p4y) }
1150 	kActionSpriteSetCanBeHitTested = 3094; { (short canBeHitTested) }
1151 	kActionQTVRSetPanAngle = 4096; { (float panAngle) }
1152 	kActionQTVRSetTiltAngle = 4097; { (float tiltAngle) }
1153 	kActionQTVRSetFieldOfView = 4098; { (float fieldOfView) }
1154 	kActionQTVRShowDefaultView = 4099; { no params }
1155 	kActionQTVRGoToNodeID = 4100; { (UInt32 nodeID) }
1156 	kActionQTVREnableHotSpot = 4101; { long ID, Boolean enable }
1157 	kActionQTVRShowHotSpots = 4102; { Boolean show }
1158 	kActionQTVRTranslateObject = 4103; { float xMove, float yMove }
1159 	kActionQTVRSetViewState = 4109; { long viewStateType, short state }
1160 	kActionMusicPlayNote = 5120; { (long sampleDescIndex, long partNumber, long delay, long pitch, long velocity, long duration) }
1161 	kActionMusicSetController = 5121; { (long sampleDescIndex, long partNumber, long delay, long controller, long value) }
1162 	kActionCase = 6144; { [(CaseStatementActionAtoms)] }
1163 	kActionWhile = 6145; { [(WhileStatementActionAtoms)] }
1164 	kActionGoToURL = 6146; { (C string urlLink) }
1165 	kActionSendQTEventToSprite = 6147; { ([(SpriteTargetAtoms)], QTEventRecord theEvent) }
1166 	kActionDebugStr = 6148; { (Str255 theString) }
1167 	kActionPushCurrentTime = 6149; { no params }
1168 	kActionPushCurrentTimeWithLabel = 6150; { (Str255 theLabel) }
1169 	kActionPopAndGotoTopTime = 6151; { no params }
1170 	kActionPopAndGotoLabeledTime = 6152; { (Str255 theLabel) }
1171 	kActionStatusString = 6153; { (C string theString, long stringTypeFlags) }
1172 	kActionSendQTEventToTrackObject = 6154; { ([(TrackObjectTargetAtoms)], QTEventRecord theEvent) }
1173 	kActionAddChannelSubscription = 6155; { (Str255 channelName, C string channelsURL, C string channelsPictureURL) }
1174 	kActionRemoveChannelSubscription = 6156; { (C string channelsURL) }
1175 	kActionOpenCustomActionHandler = 6157; { (long handlerID, ComponentDescription handlerDesc) }
1176 	kActionDoScript = 6158; { (long scriptTypeFlags, CString command, CString arguments) }
1177 	kActionDoCompressedActions = 6159; { (compressed QTAtomContainer prefixed with eight bytes: long compressorType, long decompressedSize) }
1178 	kActionSendAppMessage = 6160; { (long appMessageID) }
1179 	kActionLoadComponent = 6161; { (ComponentDescription handlerDesc) }
1180 	kActionSetFocus = 6162; { [(TargetAtoms theObject)] }
1181 	kActionDontPassKeyEvent = 6163; { no params }
1182 	kActionSetRandomSeed = 6164; { long randomSeed }
1183 	kActionSpriteTrackSetVariable = 7168; { (QTAtomID variableID, float value) }
1184 	kActionSpriteTrackNewSprite = 7169; { (QTAtomID spriteID, short imageIndex, MatrixRecord *matrix, short visible, short layer, ModifierTrackGraphicsModeRecord *graphicsMode, QTAtomID actionHandlingSpriteID) }
1185 	kActionSpriteTrackDisposeSprite = 7170; { (QTAtomID spriteID) }
1186 	kActionSpriteTrackSetVariableToString = 7171; { (QTAtomID variableID, C string value) }
1187 	kActionSpriteTrackConcatVariables = 7172; { (QTAtomID firstVariableID, QTAtomID secondVariableID, QTAtomID resultVariableID ) }
1188 	kActionSpriteTrackSetVariableToMovieURL = 7173; { (QTAtomID variableID, < optional: [(MovieTargetAtoms)] > ) }
1189 	kActionSpriteTrackSetVariableToMovieBaseURL = 7174; { (QTAtomID variableID, < optional: [(MovieTargetAtoms)] > ) }
1190 	kActionSpriteTrackSetAllSpritesHitTestingMode = 7181;
1191 	kActionSpriteTrackNewImage = 7182; { (C string imageURL, QTAtomID desiredID) }
1192 	kActionSpriteTrackDisposeImage = 7183; { (short imageIndex) }
1193 	kActionApplicationNumberAndString = 8192; { (long aNumber, Str255 aString ) }
1194 	kActionQD3DNamedObjectTranslateTo = 9216; { (Fixed x, Fixed y, Fixed z ) }
1195 	kActionQD3DNamedObjectScaleTo = 9217; { (Fixed xScale, Fixed yScale, Fixed zScale ) }
1196 	kActionQD3DNamedObjectRotateTo = 9218; { (Fixed xDegrees, Fixed yDegrees, Fixed zDegrees ) }
1197 	kActionFlashTrackSetPan = 10240; { (short xPercent, short yPercent ) }
1198 	kActionFlashTrackSetZoom = 10241; { (short zoomFactor ) }
1199 	kActionFlashTrackSetZoomRect = 10242; { (long left, long top, long right, long bottom ) }
1200 	kActionFlashTrackGotoFrameNumber = 10243; { (long frameNumber ) }
1201 	kActionFlashTrackGotoFrameLabel = 10244; { (C string frameLabel ) }
1202 	kActionFlashTrackSetFlashVariable = 10245; { (C string path, C string name, C string value, Boolean updateFocus) }
1203 	kActionFlashTrackDoButtonActions = 10246; { (C string path, long buttonID, long transition) }
1204 	kActionMovieTrackAddChildMovie = 11264; { (QTAtomID childMovieID, C string childMovieURL) }
1205 	kActionMovieTrackLoadChildMovie = 11265; { (QTAtomID childMovieID) }
1206 	kActionMovieTrackLoadChildMovieWithQTListParams = 11266; { (QTAtomID childMovieID, C string qtlistXML) }
1207 	kActionTextTrackPasteText = 12288; { (C string theText, long startSelection, long endSelection ) }
1208 	kActionTextTrackSetTextBox = 12291; { (short left, short top, short right, short bottom) }
1209 	kActionTextTrackSetTextStyle = 12292; { (Handle textStyle) }
1210 	kActionTextTrackSetSelection = 12293; { (long startSelection, long endSelection ) }
1211 	kActionTextTrackSetBackgroundColor = 12294; { (ModifierTrackGraphicsModeRecord backgroundColor ) }
1212 	kActionTextTrackSetForegroundColor = 12295; { (ModifierTrackGraphicsModeRecord foregroundColor ) }
1213 	kActionTextTrackSetFace = 12296; { (long fontFace ) }
1214 	kActionTextTrackSetFont = 12297; { (long fontID ) }
1215 	kActionTextTrackSetSize = 12298; { (long fontSize ) }
1216 	kActionTextTrackSetAlignment = 12299; { (short alignment ) }
1217 	kActionTextTrackSetHilite = 12300; { (long startHighlight, long endHighlight, ModifierTrackGraphicsModeRecord highlightColor ) }
1218 	kActionTextTrackSetDropShadow = 12301; { (Point dropShadow, short transparency ) }
1219 	kActionTextTrackSetDisplayFlags = 12302; { (long flags ) }
1220 	kActionTextTrackSetScroll = 12303; { (long delay ) }
1221 	kActionTextTrackRelativeScroll = 12304; { (short deltaX, short deltaY ) }
1222 	kActionTextTrackFindText = 12305; { (long flags, Str255 theText, ModifierTrackGraphicsModeRecord highlightColor ) }
1223 	kActionTextTrackSetHyperTextFace = 12306; { (short index, long fontFace ) }
1224 	kActionTextTrackSetHyperTextColor = 12307; { (short index, ModifierTrackGraphicsModeRecord highlightColor ) }
1225 	kActionTextTrackKeyEntry = 12308; { (short character ) }
1226 	kActionTextTrackMouseDown = 12309; { no params }
1227 	kActionTextTrackSetEditable = 12310; { (short editState) }
1228 	kActionListAddElement = 13312; { (C string parentPath, long atIndex, C string newElementName) }
1229 	kActionListRemoveElements = 13313; { (C string parentPath, long startIndex, long endIndex) }
1230 	kActionListSetElementValue = 13314; { (C string elementPath, C string valueString) }
1231 	kActionListPasteFromXML = 13315; { (C string xml, C string targetParentPath, long startIndex) }
1232 	kActionListSetMatchingFromXML = 13316; { (C string xml, C string targetParentPath) }
1233 	kActionListSetFromURL = 13317; { (C string url, C string targetParentPath ) }
1234 	kActionListExchangeLists = 13318; { (C string url, C string parentPath) }
1235 	kActionListServerQuery = 13319; { (C string url, C string keyValuePairs, long flags, C string parentPath) }
1236 	kActionListAddAttribute = 13320; { (C string elementPath, long atIndex, C string newAttributeName) }
1237 	kActionListRemoveAttributes = 13321; { (C string elementPath, long startIndex, long endIndex) }
1238 	kActionListSetAttributeValue = 13322; { (C string elementPath, C string attributeName, C string valueString) }
1239 
1240 
1241 const
1242 	kOperandExpression = 1;
1243 	kOperandConstant = 2;
1244 	kOperandSubscribedToChannel = 3;    { C string channelsURL }
1245 	kOperandUniqueCustomActionHandlerID = 4;
1246 	kOperandCustomActionHandlerIDIsOpen = 5; { long ID }
1247 	kOperandConnectionSpeed = 6;
1248 	kOperandGMTDay = 7;
1249 	kOperandGMTMonth = 8;
1250 	kOperandGMTYear = 9;
1251 	kOperandGMTHours = 10;
1252 	kOperandGMTMinutes = 11;
1253 	kOperandGMTSeconds = 12;
1254 	kOperandLocalDay = 13;
1255 	kOperandLocalMonth = 14;
1256 	kOperandLocalYear = 15;
1257 	kOperandLocalHours = 16;
1258 	kOperandLocalMinutes = 17;
1259 	kOperandLocalSeconds = 18;
1260 	kOperandRegisteredForQuickTimePro = 19;
1261 	kOperandPlatformRunningOn = 20;
1262 	kOperandQuickTimeVersion = 21;
1263 	kOperandComponentVersion = 22;   { C string type, C string subType, C string manufacturer }
1264 	kOperandOriginalHandlerRefcon = 23;
1265 	kOperandTicks = 24;
1266 	kOperandMaxLoadedTimeInMovie = 25;
1267 	kOperandEventParameter = 26;   { short index }
1268 	kOperandFreeMemory = 27;
1269 	kOperandNetworkStatus = 28;
1270 	kOperandQuickTimeVersionRegistered = 29; { long version }
1271 	kOperandSystemVersion = 30;
1272 	kOperandMovieVolume = 1024;
1273 	kOperandMovieRate = 1025;
1274 	kOperandMovieIsLooping = 1026;
1275 	kOperandMovieLoopIsPalindrome = 1027;
1276 	kOperandMovieTime = 1028;
1277 	kOperandMovieDuration = 1029;
1278 	kOperandMovieTimeScale = 1030;
1279 	kOperandMovieWidth = 1031;
1280 	kOperandMovieHeight = 1032;
1281 	kOperandMovieLoadState = 1033;
1282 	kOperandMovieTrackCount = 1034;
1283 	kOperandMovieIsActive = 1035;
1284 	kOperandMovieName = 1036;
1285 	kOperandMovieID = 1037;
1286 	kOperandMovieChapterCount = 1038;
1287 	kOperandMovieChapterIndex = 1039;
1288 	kOperandMovieChapterName = 1040;
1289 	kOperandMovieChapterNameByIndex = 1041; { ( short index ) }
1290 	kOperandMovieChapterIndexByName = 1042; { (c string name)  }
1291 	kOperandMovieAnnotation = 1043; { (c string requested, long flags) }
1292 	kOperandMovieConnectionFlags = 1044;
1293 	kOperandMovieConnectionString = 1045;
1294 	kOperandTrackVolume = 2048;
1295 	kOperandTrackBalance = 2049;
1296 	kOperandTrackEnabled = 2050;
1297 	kOperandTrackLayer = 2051;
1298 	kOperandTrackWidth = 2052;
1299 	kOperandTrackHeight = 2053;
1300 	kOperandTrackDuration = 2054;
1301 	kOperandTrackName = 2055;
1302 	kOperandTrackID = 2056;
1303 	kOperandTrackIdleFrequency = 2057;
1304 	kOperandTrackBass = 2058;
1305 	kOperandTrackTreble = 2059;
1306 	kOperandSpriteBoundsLeft = 3072;
1307 	kOperandSpriteBoundsTop = 3073;
1308 	kOperandSpriteBoundsRight = 3074;
1309 	kOperandSpriteBoundsBottom = 3075;
1310 	kOperandSpriteImageIndex = 3076;
1311 	kOperandSpriteVisible = 3077;
1312 	kOperandSpriteLayer = 3078;
1313 	kOperandSpriteTrackVariable = 3079; { [QTAtomID variableID] }
1314 	kOperandSpriteTrackNumSprites = 3080;
1315 	kOperandSpriteTrackNumImages = 3081;
1316 	kOperandSpriteID = 3082;
1317 	kOperandSpriteIndex = 3083;
1318 	kOperandSpriteFirstCornerX = 3084;
1319 	kOperandSpriteFirstCornerY = 3085;
1320 	kOperandSpriteSecondCornerX = 3086;
1321 	kOperandSpriteSecondCornerY = 3087;
1322 	kOperandSpriteThirdCornerX = 3088;
1323 	kOperandSpriteThirdCornerY = 3089;
1324 	kOperandSpriteFourthCornerX = 3090;
1325 	kOperandSpriteFourthCornerY = 3091;
1326 	kOperandSpriteImageRegistrationPointX = 3092;
1327 	kOperandSpriteImageRegistrationPointY = 3093;
1328 	kOperandSpriteTrackSpriteIDAtPoint = 3094; { short x, short y }
1329 	kOperandSpriteName = 3095;
1330 	kOperandSpriteCanBeHitTested = 3105; { short }
1331 	kOperandSpriteTrackAllSpritesHitTestingMode = 3106;
1332 	kOperandSpriteTrackImageIDByIndex = 3107; { short imageIndex }
1333 	kOperandSpriteTrackImageIndexByID = 3108; { QTAtomID }
1334 	kOperandQTVRPanAngle = 4096;
1335 	kOperandQTVRTiltAngle = 4097;
1336 	kOperandQTVRFieldOfView = 4098;
1337 	kOperandQTVRNodeID = 4099;
1338 	kOperandQTVRHotSpotsVisible = 4100;
1339 	kOperandQTVRViewCenterH = 4101;
1340 	kOperandQTVRViewCenterV = 4102;
1341 	kOperandQTVRViewStateCount = 4103;
1342 	kOperandQTVRViewState = 4104; { long viewStateType }
1343 	kOperandMouseLocalHLoc = 5120; { [TargetAtoms aTrack] }
1344 	kOperandMouseLocalVLoc = 5121; { [TargetAtoms aTrack] }
1345 	kOperandKeyIsDown = 5122; { [short modKeys, char asciiValue] }
1346 	kOperandRandom = 5123; { [short min, short max] }
1347 	kOperandCanHaveFocus = 5124; { [(TargetAtoms theObject)] }
1348 	kOperandHasFocus = 5125; { [(TargetAtoms theObject)] }
1349 	kOperandTextTrackEditable = 6144;
1350 	kOperandTextTrackCopyText = 6145; { long startSelection, long endSelection }
1351 	kOperandTextTrackStartSelection = 6146;
1352 	kOperandTextTrackEndSelection = 6147;
1353 	kOperandTextTrackTextBoxLeft = 6148;
1354 	kOperandTextTrackTextBoxTop = 6149;
1355 	kOperandTextTrackTextBoxRight = 6150;
1356 	kOperandTextTrackTextBoxBottom = 6151;
1357 	kOperandTextTrackTextLength = 6152;
1358 	kOperandListCountElements = 7168; { (C string parentPath) }
1359 	kOperandListGetElementPathByIndex = 7169; { (C string parentPath, long index) }
1360 	kOperandListGetElementValue = 7170; { (C string elementPath) }
1361 	kOperandListCopyToXML = 7171; { (C string parentPath, long startIndex, long endIndex) }
1362 	kOperandListCountAttributes = 7172; { (C string elementPath) }
1363 	kOperandListGetAttributeNameByIndex = 7173; { (C string elementPath, long index) }
1364 	kOperandListGetAttributeValue = 7174; { (C string elementPath, C string attributeName) }
1365 	kOperandSin = 8192; { float x    }
1366 	kOperandCos = 8193; { float x    }
1367 	kOperandTan = 8194; { float x    }
1368 	kOperandATan = 8195; { float x    }
1369 	kOperandATan2 = 8196; { float y, float x   }
1370 	kOperandDegreesToRadians = 8197; { float x }
1371 	kOperandRadiansToDegrees = 8198; { float x }
1372 	kOperandSquareRoot = 8199; { float x }
1373 	kOperandExponent = 8200; { float x }
1374 	kOperandLog = 8201; { float x }
1375 	kOperandFlashTrackVariable = 9216; { [CString path, CString name] }
1376 	kOperandStringLength = 10240; { (C string text) }
1377 	kOperandStringCompare = 10241; { (C string aText, C string bText, Boolean caseSensitive, Boolan diacSensitive) }
1378 	kOperandStringSubString = 10242; { (C string text, long offset, long length) }
1379 	kOperandStringConcat = 10243; { (C string aText, C string bText) }
1380 
1381 const
1382 	kFirstMovieAction = kActionMovieSetVolume;
1383 	kLastMovieAction = kActionMovieSetScale;
1384 	kFirstTrackAction = kActionTrackSetVolume;
1385 	kLastTrackAction = kActionTrackSetBassTreble;
1386 	kFirstSpriteAction = kActionSpriteSetMatrix;
1387 	kLastSpriteAction = kActionSpriteSetCanBeHitTested;
1388 	kFirstQTVRAction = kActionQTVRSetPanAngle;
1389 	kLastQTVRAction = kActionQTVRSetViewState;
1390 	kFirstMusicAction = kActionMusicPlayNote;
1391 	kLastMusicAction = kActionMusicSetController;
1392 	kFirstSystemAction = kActionCase;
1393 	kLastSystemAction = kActionSetRandomSeed;
1394 	kFirstSpriteTrackAction = kActionSpriteTrackSetVariable;
1395 	kLastSpriteTrackAction = kActionSpriteTrackDisposeImage;
1396 	kFirstApplicationAction = kActionApplicationNumberAndString;
1397 	kLastApplicationAction = kActionApplicationNumberAndString;
1398 	kFirstQD3DNamedObjectAction = kActionQD3DNamedObjectTranslateTo;
1399 	kLastQD3DNamedObjectAction = kActionQD3DNamedObjectRotateTo;
1400 	kFirstFlashTrackAction = kActionFlashTrackSetPan;
1401 	kLastFlashTrackAction = kActionFlashTrackDoButtonActions;
1402 	kFirstMovieTrackAction = kActionMovieTrackAddChildMovie;
1403 	kLastMovieTrackAction = kActionMovieTrackLoadChildMovieWithQTListParams;
1404 	kFirstTextTrackAction = kActionTextTrackPasteText;
1405 	kLastTextTrackAction = kActionTextTrackSetEditable;
1406 	kFirstMultiTargetAction = kActionListAddElement;
1407 	kLastMultiTargetAction = kActionListSetAttributeValue;
1408 	kFirstAction = kFirstMovieAction;
1409 	kLastAction = kLastMultiTargetAction;
1410 
1411 { target atom types}
1412 const
1413 	kTargetMovie = FourCharCode('moov'); { no data }
1414 	kTargetMovieName = FourCharCode('mona'); { (PString movieName) }
1415 	kTargetMovieID = FourCharCode('moid'); { (long movieID) }
1416 	kTargetRootMovie = FourCharCode('moro'); { no data }
1417 	kTargetParentMovie = FourCharCode('mopa'); { no data }
1418 	kTargetChildMovieTrackName = FourCharCode('motn'); { (PString childMovieTrackName) }
1419 	kTargetChildMovieTrackID = FourCharCode('moti'); { (long childMovieTrackID) }
1420 	kTargetChildMovieTrackIndex = FourCharCode('motx'); { (long childMovieTrackIndex) }
1421 	kTargetChildMovieMovieName = FourCharCode('momn'); { (PString childMovieName) }
1422 	kTargetChildMovieMovieID = FourCharCode('momi'); { (long childMovieID) }
1423 	kTargetTrackName = FourCharCode('trna'); { (PString trackName) }
1424 	kTargetTrackID = FourCharCode('trid'); { (long trackID) }
1425 	kTargetTrackType = FourCharCode('trty'); { (OSType trackType) }
1426 	kTargetTrackIndex = FourCharCode('trin'); { (long trackIndex) }
1427 	kTargetSpriteName = FourCharCode('spna'); { (PString spriteName) }
1428 	kTargetSpriteID = FourCharCode('spid'); { (QTAtomID spriteID) }
1429 	kTargetSpriteIndex = FourCharCode('spin'); { (short spriteIndex) }
1430 	kTargetQD3DNamedObjectName = FourCharCode('nana'); { (CString objectName) }
1431 	kTargetCurrentQTEventParams = FourCharCode('evpa'); { no data }
1432 
1433 { action container atom types}
1434 const
1435 	kQTEventType = FourCharCode('evnt');
1436 	kAction = FourCharCode('actn');
1437 	kWhichAction = FourCharCode('whic');
1438 	kActionParameter = FourCharCode('parm');
1439 	kActionTarget = FourCharCode('targ');
1440 	kActionFlags = FourCharCode('flag');
1441 	kActionParameterMinValue = FourCharCode('minv');
1442 	kActionParameterMaxValue = FourCharCode('maxv');
1443 	kActionListAtomType = FourCharCode('list');
1444 	kExpressionContainerAtomType = FourCharCode('expr');
1445 	kConditionalAtomType = FourCharCode('test');
1446 	kOperatorAtomType = FourCharCode('oper');
1447 	kOperandAtomType = FourCharCode('oprn');
1448 	kCommentAtomType = FourCharCode('why ');
1449 	kCustomActionHandler = FourCharCode('cust');
1450 	kCustomHandlerID = FourCharCode('id  ');
1451 	kCustomHandlerDesc = FourCharCode('desc');
1452 	kQTEventRecordAtomType = FourCharCode('erec');
1453 
1454 { QTEvent types }
1455 const
1456 	kQTEventMouseClick = FourCharCode('clik');
1457 	kQTEventMouseClickEnd = FourCharCode('cend');
1458 	kQTEventMouseClickEndTriggerButton = FourCharCode('trig');
1459 	kQTEventMouseEnter = FourCharCode('entr');
1460 	kQTEventMouseExit = FourCharCode('exit');
1461 	kQTEventMouseMoved = FourCharCode('move');
1462 	kQTEventFrameLoaded = FourCharCode('fram');
1463 	kQTEventIdle = FourCharCode('idle');
1464 	kQTEventKey = FourCharCode('key '); { qtevent.param1 = key, qtevent.param2 = modifiers, qtEvent.param3 = scanCode }
1465 	kQTEventMovieLoaded = FourCharCode('load');
1466 	kQTEventRequestToModifyMovie = FourCharCode('reqm');
1467 	kQTEventListReceived = FourCharCode('list');
1468 	kQTEventKeyUp = FourCharCode('keyU'); { qtevent.param1 = key, qtevent.param2 = modifiers, qtEvent.param3 = scanCode }
1469 
1470 { flags for the kActionFlags atom }
1471 const
1472 	kActionFlagActionIsDelta = 1 shl 1;
1473 	kActionFlagParameterWrapsAround = 1 shl 2;
1474 	kActionFlagActionIsToggle = 1 shl 3;
1475 
1476 { flags for stringTypeFlags field of the QTStatusStringRecord }
1477 const
1478 	kStatusStringIsURLLink = 1 shl 1;
1479 	kStatusStringIsStreamingStatus = 1 shl 2;
1480 	kStatusHasCodeNumber = 1 shl 3; { high 16 bits of stringTypeFlags is error code number}
1481 	kStatusIsError = 1 shl 4;
1482 
1483 { flags for scriptTypeFlags field of the QTDoScriptRecord}
1484 const
1485 	kScriptIsUnknownType = 1 shl 0;
1486 	kScriptIsJavaScript = 1 shl 1;
1487 	kScriptIsLingoEvent = 1 shl 2;
1488 	kScriptIsVBEvent = 1 shl 3;
1489 	kScriptIsProjectorCommand = 1 shl 4;
1490 	kScriptIsAppleScript = 1 shl 5;
1491 
1492 { flags for CheckQuickTimeRegistration routine}
1493 const
1494 	kQTRegistrationDialogTimeOutFlag = 1 shl 0;
1495 	kQTRegistrationDialogShowDialog = 1 shl 1;
1496 	kQTRegistrationDialogForceDialog = 1 shl 2;
1497 
1498 { constants for kOperatorAtomType IDs (operator types)}
1499 const
1500 	kOperatorAdd = FourCharCode('add ');
1501 	kOperatorSubtract = FourCharCode('sub ');
1502 	kOperatorMultiply = FourCharCode('mult');
1503 	kOperatorDivide = FourCharCode('div ');
1504 	kOperatorOr = FourCharCode('or  ');
1505 	kOperatorAnd = FourCharCode('and ');
1506 	kOperatorNot = FourCharCode('not ');
1507 	kOperatorLessThan = FourCharCode('<   ');
1508 	kOperatorLessThanEqualTo = FourCharCode('<=  ');
1509 	kOperatorEqualTo = FourCharCode('=   ');
1510 	kOperatorNotEqualTo = FourCharCode('!=  ');
1511 	kOperatorGreaterThan = FourCharCode('>   ');
1512 	kOperatorGreaterThanEqualTo = FourCharCode('>=  ');
1513 	kOperatorModulo = FourCharCode('mod ');
1514 	kOperatorIntegerDivide = FourCharCode('idiv');
1515 	kOperatorAbsoluteValue = FourCharCode('abs ');
1516 	kOperatorNegate = FourCharCode('neg ');
1517 
1518 { constants for kOperandPlatformRunningOn}
1519 const
1520 	kPlatformMacintosh = 1;
1521 	kPlatformWindows = 2;
1522 
1523 { flags for kOperandSystemVersion}
1524 const
1525 	kSystemIsWindows9x = $00010000;
1526 	kSystemIsWindowsNT = $00020000;
1527 	kSystemIsClassicBlueBox = $00040000;
1528 
1529 { constants for MediaPropertiesAtom}
1530 const
1531 	kMediaPropertyNonLinearAtomType = FourCharCode('nonl');
1532 	kMediaPropertyHasActions = 105;
1533 
1534 
1535 { TimeBase and TimeRecord moved to MacTypes.h }
1536 type
1537 	TimeBaseFlags = UInt32;
1538 const
1539 	loopTimeBase = 1;
1540 	palindromeLoopTimeBase = 2;
1541 	maintainTimeBaseZero = 4;
1542 
1543 { CallBack equates }
1544 type
1545 	QTCallBackFlags = UInt16;
1546 const
1547 	triggerTimeFwd = $0001; { when curTime exceeds triggerTime going forward }
1548 	triggerTimeBwd = $0002; { when curTime exceeds triggerTime going backwards }
1549 	triggerTimeEither = $0003; { when curTime exceeds triggerTime going either direction }
1550 	triggerRateLT = $0004; { when rate changes to less than trigger value }
1551 	triggerRateGT = $0008; { when rate changes to greater than trigger value }
1552 	triggerRateEqual = $0010; { when rate changes to equal trigger value }
1553 	triggerRateLTE = triggerRateLT or triggerRateEqual;
1554 	triggerRateGTE = triggerRateGT or triggerRateEqual;
1555 	triggerRateNotEqual = triggerRateGT or triggerRateEqual or triggerRateLT;
1556 	triggerRateChange = 0;
1557 	triggerAtStart = $0001;
1558 	triggerAtStop = $0002;
1559 
1560 type
1561 	TimeBaseStatus = UInt32;
1562 const
1563 	timeBaseBeforeStartTime = 1;
1564 	timeBaseAfterStopTime = 2;
1565 	timeBaseRateChanging = 4;
1566 
1567 
1568 type
1569 	QTCallBackType = UInt16;
1570 const
1571 	callBackAtTime = 1;
1572 	callBackAtRate = 2;
1573 	callBackAtTimeJump = 3;
1574 	callBackAtExtremes = 4;
1575 	callBackAtTimeBaseDisposed = 5;
1576 	callBackAtInterrupt = $8000;
1577 	callBackAtDeferredTask = $4000;
1578 
1579 type
1580 	QTCallBack = ^QTCallBackOpaqueHeader;
1581 	QTCallBackProcPtr = procedure( cb: QTCallBack; refCon: SIGNEDLONG );
1582 	QTCallBackUPP = QTCallBackProcPtr;
1583 	QTCallBackOpaqueHeaderPtr = ^QTCallBackOpaqueHeader;
1584 	QTCallBackOpaqueHeader = record
1585 		callBackFlags: SIGNEDLONG;
1586 		reserved1: SIGNEDLONG;
1587 		qtPrivate: array [0..51] of SInt8;
1588 	end;
1589 
1590 const
1591 	qtcbNeedsRateChanges = 1;    { wants to know about rate changes }
1592 	qtcbNeedsTimeChanges = 2;    { wants to know about time changes }
1593 	qtcbNeedsStartStopChanges = 4;     { wants to know when TimeBase start/stop is changed}
1594 
1595 type
1596 	QTSyncTaskProcPtr = procedure( task: UnivPtr );
1597 	QTSyncTaskUPP = QTSyncTaskProcPtr;
1598 	QTSyncTaskRecordPtr = ^QTSyncTaskRecord;
1599 	QTSyncTaskRecord = record
1600 		qLink: UnivPtr;
1601 		proc: QTSyncTaskUPP;
1602 	end;
1603 type
1604 	QTSyncTaskPtr = QTSyncTaskRecordPtr;
1605 
1606 type
theMovienull1607 	MovieRgnCoverProcPtr = function( theMovie: Movie; changedRgn: RgnHandle; refcon: SIGNEDLONG ): OSErr;
theMovienull1608 	MovieProgressProcPtr = function( theMovie: Movie; message: SInt16; whatOperation: SInt16; percentDone: Fixed; refcon: SIGNEDLONG ): OSErr;
theMovienull1609 	MovieDrawingCompleteProcPtr = function( theMovie: Movie; refCon: SIGNEDLONG ): OSErr;
tnull1610 	TrackTransferProcPtr = function( t: Track; refCon: SIGNEDLONG ): OSErr;
offsetnull1611 	GetMovieProcPtr = function( offset: SIGNEDLONG; size: SIGNEDLONG; dataPtr: UnivPtr; refCon: UnivPtr ): OSErr;
refconnull1612 	MoviePreviewCallOutProcPtr = function( refcon: SIGNEDLONG ): Boolean;
theTextnull1613 	TextMediaProcPtr = function( theText: Handle; theMovie: Movie; var displayFlag: SInt16; refcon: SIGNEDLONG ): OSErr;
refconnull1614 	ActionsProcPtr = function( refcon: UnivPtr; targetTrack: Track; targetRefCon: SIGNEDLONG; theEvent: QTEventRecordPtr ): OSErr;
refconnull1615 	DoMCActionProcPtr = function( refcon: UnivPtr; action: SInt16; params: UnivPtr; var handled: Boolean ): OSErr;
theMovienull1616 	MovieExecuteWiredActionsProcPtr = function( theMovie: Movie; refcon: UnivPtr; flags: SIGNEDLONG; wiredActions: QTAtomContainer ): OSErr;
1617 	MoviePrePrerollCompleteProcPtr = procedure( theMovie: Movie; prerollErr: OSErr; refcon: UnivPtr );
1618 	QTNextTaskNeededSoonerCallbackProcPtr = procedure( duration: TimeValue; flags: UNSIGNEDLONG; refcon: UnivPtr );
1619 	MoviesErrorProcPtr = procedure( theErr: OSErr; refcon: SIGNEDLONG );
1620 	MovieRgnCoverUPP = MovieRgnCoverProcPtr;
1621 	MovieProgressUPP = MovieProgressProcPtr;
1622 	MovieDrawingCompleteUPP = MovieDrawingCompleteProcPtr;
1623 	TrackTransferUPP = TrackTransferProcPtr;
1624 	GetMovieUPP = GetMovieProcPtr;
1625 	MoviePreviewCallOutUPP = MoviePreviewCallOutProcPtr;
1626 	TextMediaUPP = TextMediaProcPtr;
1627 	ActionsUPP = ActionsProcPtr;
1628 	DoMCActionUPP = DoMCActionProcPtr;
1629 	MovieExecuteWiredActionsUPP = MovieExecuteWiredActionsProcPtr;
1630 	MoviePrePrerollCompleteUPP = MoviePrePrerollCompleteProcPtr;
1631 	QTNextTaskNeededSoonerCallbackUPP = QTNextTaskNeededSoonerCallbackProcPtr;
1632 	MoviesErrorUPP = MoviesErrorProcPtr;
1633 	MediaHandler = ComponentInstance;
1634 	DataHandler = ComponentInstance;
1635 	MediaHandlerComponent = Component;
1636 	DataHandlerComponent = Component;
1637 	HandlerError = ComponentResult;
1638 const
1639 	keepInRam = 1 shl 0; { load and make non-purgable}
1640 	unkeepInRam = 1 shl 1; { mark as purgable}
1641 	flushFromRam = 1 shl 2; { empty those handles}
1642 	loadForwardTrackEdits = 1 shl 3; {    load track edits into ram for playing forward}
1643 	loadBackwardTrackEdits = 1 shl 4; {    load track edits into ram for playing in reverse}
1644 
1645 const
1646 	newMovieActive = 1 shl 0;
1647 	newMovieDontResolveDataRefs = 1 shl 1;
1648 	newMovieDontAskUnresolvedDataRefs = 1 shl 2;
1649 	newMovieDontAutoAlternates = 1 shl 3;
1650 	newMovieDontUpdateForeBackPointers = 1 shl 4;
1651 	newMovieDontAutoUpdateClock = 1 shl 5;
1652 	newMovieAsyncOK = 1 shl 8;
1653 	newMovieIdleImportOK = 1 shl 10;
1654 	newMovieDontInteractWithUser = 1 shl 11;
1655 
1656 { track usage bits }
1657 const
1658 	trackUsageInMovie = 1 shl 1;
1659 	trackUsageInPreview = 1 shl 2;
1660 	trackUsageInPoster = 1 shl 3;
1661 
1662 
1663 {$endc} {not TARGET_CPU_64}
1664 
1665 { Add/GetMediaSample flags }
1666 const
1667 	mediaSampleNotSync = 1 shl 0; { sample is not a sync sample (eg. is frame differenced }
1668 	mediaSampleShadowSync = 1 shl 1; { sample is a shadow sync }
1669 	mediaSampleDroppable = 1 shl 27; { sample is not required to be decoded for later samples to be decoded properly }
1670 	mediaSamplePartialSync = 1 shl 16; { sample is a partial sync (e.g., I frame after open GOP) }
1671 	mediaSampleHasRedundantCoding = 1 shl 24; { sample is known to contain redundant coding }
1672 	mediaSampleHasNoRedundantCoding = 1 shl 25; { sample is known not to contain redundant coding }
1673 	mediaSampleIsDependedOnByOthers = 1 shl 26; { one or more other samples depend upon the decode of this sample }
1674 	mediaSampleIsNotDependedOnByOthers = 1 shl 27; { synonym for mediaSampleDroppable }
1675 	mediaSampleDependsOnOthers = 1 shl 28; { sample's decode depends upon decode of other samples }
1676 	mediaSampleDoesNotDependOnOthers = 1 shl 29; { sample's decode does not depend upon decode of other samples }
1677 	mediaSampleEarlierDisplayTimesAllowed = 1 shl 30; { samples later in decode order may have earlier display times }
1678 
1679 
1680 {$ifc not TARGET_CPU_64}
1681 
1682 {
1683 MediaSampleFlags is defined in ImageCompression.h:
1684 typedef UInt32 MediaSampleFlags;
1685 }
1686 const
1687 	pasteInParallel = 1 shl 0;
1688 	showUserSettingsDialog = 1 shl 1;
1689 	movieToFileOnlyExport = 1 shl 2;
1690 	movieFileSpecValid = 1 shl 3;
1691 
1692 const
1693 	nextTimeMediaSample = 1 shl 0;
1694 	nextTimeMediaEdit = 1 shl 1;
1695 	nextTimeTrackEdit = 1 shl 2;
1696 	nextTimeSyncSample = 1 shl 3;
1697 	nextTimeStep = 1 shl 4;
1698 	nextTimePartialSyncSample = 1 shl 5;
1699 	nextTimeEdgeOK = 1 shl 14;
1700 	nextTimeIgnoreActiveSegment = 1 shl 15;
1701 
1702 type
1703 	nextTimeFlagsEnum = UInt16;
1704 const
1705 	createMovieFileDeleteCurFile = 1 shl 31;
1706 	createMovieFileDontCreateMovie = 1 shl 30;
1707 	createMovieFileDontOpenFile = 1 shl 29;
1708 	createMovieFileDontCreateResFile = 1 shl 28;
1709 
1710 type
1711 	createMovieFileFlagsEnum = UNSIGNEDLONG;
1712 const
1713 	flattenAddMovieToDataFork = 1 shl 0;
1714 	flattenActiveTracksOnly = 1 shl 2;
1715 	flattenDontInterleaveFlatten = 1 shl 3;
1716 	flattenFSSpecPtrIsDataRefRecordPtr = 1 shl 4;
1717 	flattenCompressMovieResource = 1 shl 5;
1718 	flattenForceMovieResourceBeforeMovieData = 1 shl 6;
1719 
1720 type
1721 	movieFlattenFlagsEnum = UNSIGNEDLONG;
1722 const
1723 	movieInDataForkResID = -1;    { magic res ID }
1724 
1725 const
1726 	mcTopLeftMovie = 1 shl 0; { usually centered }
1727 	mcScaleMovieToFit = 1 shl 1; { usually only scales down }
1728 	mcWithBadge = 1 shl 2; { give me a badge }
1729 	mcNotVisible = 1 shl 3; { don't show controller }
1730 	mcWithFrame = 1 shl 4; { gimme a frame }
1731 
1732 const
1733 	movieScrapDontZeroScrap = 1 shl 0;
1734 	movieScrapOnlyPutMovie = 1 shl 1;
1735 
1736 const
1737 	dataRefSelfReference = 1 shl 0;
1738 	dataRefWasNotResolved = 1 shl 1;
1739 
1740 type
1741 	dataRefAttributesFlags = UNSIGNEDLONG;
1742 const
1743 	kMovieAnchorDataRefIsDefault = 1 shl 0; { data ref returned is movie default data ref }
1744 
1745 const
1746 	hintsScrubMode = 1 shl 0; { mask == && (if flags == scrub on, flags != scrub off) }
1747 	hintsLoop = 1 shl 1;
1748 	hintsDontPurge = 1 shl 2;
1749 	hintsUseScreenBuffer = 1 shl 5;
1750 	hintsAllowInterlace = 1 shl 6;
1751 	hintsUseSoundInterp = 1 shl 7;
1752 	hintsHighQuality = 1 shl 8; { slooooow }
1753 	hintsPalindrome = 1 shl 9;
1754 	hintsInactive = 1 shl 11;
1755 	hintsOffscreen = 1 shl 12;
1756 	hintsDontDraw = 1 shl 13;
1757 	hintsAllowBlacklining = 1 shl 14;
1758 	hintsDontUseVideoOverlaySurface = 1 shl 16;
1759 	hintsIgnoreBandwidthRestrictions = 1 shl 17;
1760 	hintsPlayingEveryFrame = 1 shl 18;
1761 	hintsAllowDynamicResize = 1 shl 19;
1762 	hintsSingleField = 1 shl 20;
1763 	hintsNoRenderingTimeOut = 1 shl 21;
1764 	hintsFlushVideoInsteadOfDirtying = 1 shl 22;
1765 	hintsEnableSubPixelPositioning = 1 shl 23;
1766 	hintsRenderingMode = 1 shl 24;
1767 	hintsAllowIdleSleep = 1 shl 25; { asks media handlers not to call UpdateSystemActivity etc }
1768 	hintsDeinterlaceFields = 1 shl 26;
1769 
1770 type
1771 	playHintsEnum = UNSIGNEDLONG;
1772 const
1773 	mediaHandlerFlagBaseClient = 1;
1774 
1775 type
1776 	mediaHandlerFlagsEnum = UNSIGNEDLONG;
1777 const
1778 	movieTrackMediaType = 1 shl 0;
1779 	movieTrackCharacteristic = 1 shl 1;
1780 	movieTrackEnabledOnly = 1 shl 2;
1781 
1782 {
1783    Opaque replacement for SampleReferenceRecord/SampleReference64Record arrays able to carry information
1784    not described in those arrays of those records
1785 }
1786 type
1787 	QTSampleTableRef = ^SInt32; { an opaque type }
1788 	QTMutableSampleTableRef = ^SInt32; { an opaque type }
1789 	SampleReferenceRecordPtr = ^SampleReferenceRecord;
1790 	SampleReferenceRecord = record
1791 		dataOffset: SIGNEDLONG;
1792 		dataSize: SIGNEDLONG;
1793 		durationPerSample: TimeValue;
1794 		numberOfSamples: SIGNEDLONG;
1795 		sampleFlags: SInt16;
1796 	end;
1797 type
1798 	SampleReferencePtr = SampleReferenceRecordPtr;
1799 	SampleReference64RecordPtr = ^SampleReference64Record;
1800 	SampleReference64Record = record
1801 		dataOffset: wide;
1802 		dataSize: UNSIGNEDLONG;
1803 		durationPerSample: TimeValue;
1804 		numberOfSamples: UNSIGNEDLONG;
1805 		sampleFlags: SInt16;
1806 	end;
1807 type
1808 	SampleReference64Ptr = SampleReference64RecordPtr;
1809 
1810 {************************
1811 * Initialization Routines
1812 *************************}
1813 {
1814  *  CheckQuickTimeRegistration()
1815  *
1816  *  Availability:
1817  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1818  *    CarbonLib:        in CarbonLib 1.1 and later
1819  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
1820  *    Windows:          in qtmlClient.lib 3.0 and later
1821  }
1822 procedure CheckQuickTimeRegistration( registrationKey: UnivPtr; flags: SIGNEDLONG ); external name '_CheckQuickTimeRegistration';
1823 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1824 
1825 
1826 {
1827  *  EnterMovies()
1828  *
1829  *  Availability:
1830  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1831  *    CarbonLib:        in CarbonLib 1.0 and later
1832  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1833  *    Windows:          in qtmlClient.lib 3.0 and later
1834  }
EnterMoviesnull1835 function EnterMovies: OSErr; external name '_EnterMovies';
1836 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1837 
1838 
1839 {
1840  *  ExitMovies()
1841  *
1842  *  Availability:
1843  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1844  *    CarbonLib:        in CarbonLib 1.0 and later
1845  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1846  *    Windows:          in qtmlClient.lib 3.0 and later
1847  }
1848 procedure ExitMovies; external name '_ExitMovies';
1849 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1850 
1851 
1852 const
1853 	kQTEnterMoviesFlagDontSetComponentsThreadMode = 1 shl 0;
1854 
1855 {
1856  *  EnterMoviesOnThread()
1857  *
1858  *  Availability:
1859  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
1860  *    CarbonLib:        not available
1861  *    Non-Carbon CFM:   not available
1862  }
EnterMoviesOnThreadnull1863 function EnterMoviesOnThread( inFlags: UInt32 ): OSErr; external name '_EnterMoviesOnThread';
1864 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
1865 
1866 
1867 {
1868  *  ExitMoviesOnThread()
1869  *
1870  *  Availability:
1871  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
1872  *    CarbonLib:        not available
1873  *    Non-Carbon CFM:   not available
1874  }
ExitMoviesOnThreadnull1875 function ExitMoviesOnThread: OSErr; external name '_ExitMoviesOnThread';
1876 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
1877 
1878 
1879 {************************
1880 * Error Routines
1881 *************************}
1882 
1883 {
1884  *  GetMoviesError()
1885  *
1886  *  Availability:
1887  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1888  *    CarbonLib:        in CarbonLib 1.0 and later
1889  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1890  *    Windows:          in qtmlClient.lib 3.0 and later
1891  }
GetMoviesErrornull1892 function GetMoviesError: OSErr; external name '_GetMoviesError';
1893 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1894 
1895 
1896 {
1897  *  ClearMoviesStickyError()
1898  *
1899  *  Availability:
1900  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1901  *    CarbonLib:        in CarbonLib 1.0 and later
1902  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1903  *    Windows:          in qtmlClient.lib 3.0 and later
1904  }
1905 procedure ClearMoviesStickyError; external name '_ClearMoviesStickyError';
1906 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1907 
1908 
1909 {
1910  *  GetMoviesStickyError()
1911  *
1912  *  Availability:
1913  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1914  *    CarbonLib:        in CarbonLib 1.0 and later
1915  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1916  *    Windows:          in qtmlClient.lib 3.0 and later
1917  }
GetMoviesStickyErrornull1918 function GetMoviesStickyError: OSErr; external name '_GetMoviesStickyError';
1919 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1920 
1921 
1922 {
1923  *  SetMoviesErrorProc()
1924  *
1925  *  Availability:
1926  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1927  *    CarbonLib:        in CarbonLib 1.0 and later
1928  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1929  *    Windows:          in qtmlClient.lib 3.0 and later
1930  }
1931 procedure SetMoviesErrorProc( errProc: MoviesErrorUPP; refcon: SIGNEDLONG ); external name '_SetMoviesErrorProc';
1932 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1933 
1934 
1935 {************************
1936 * Idle Routines
1937 *************************}
1938 {
1939  *  MoviesTask()
1940  *
1941  *  Availability:
1942  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1943  *    CarbonLib:        in CarbonLib 1.0 and later
1944  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1945  *    Windows:          in qtmlClient.lib 3.0 and later
1946  }
1947 procedure MoviesTask( theMovie: Movie; maxMilliSecToUse: SIGNEDLONG ); external name '_MoviesTask';
1948 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1949 
1950 
1951 {
1952  *  PrerollMovie()
1953  *
1954  *  Availability:
1955  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1956  *    CarbonLib:        in CarbonLib 1.0 and later
1957  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1958  *    Windows:          in qtmlClient.lib 3.0 and later
1959  }
PrerollMovienull1960 function PrerollMovie( theMovie: Movie; time: TimeValue; Rate: Fixed ): OSErr; external name '_PrerollMovie';
1961 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1962 
1963 
1964 {
1965  *  PrePrerollMovie()
1966  *
1967  *  Availability:
1968  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1969  *    CarbonLib:        in CarbonLib 1.0.2 and later
1970  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
1971  *    Windows:          in qtmlClient.lib 4.0 and later
1972  }
PrePrerollMovienull1973 function PrePrerollMovie( m: Movie; time: TimeValue; rate: Fixed; proc: MoviePrePrerollCompleteUPP; refcon: UnivPtr ): OSErr; external name '_PrePrerollMovie';
1974 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1975 
1976 
1977 {
1978  *  AbortPrePrerollMovie()
1979  *
1980  *  Availability:
1981  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1982  *    CarbonLib:        in CarbonLib 1.0.2 and later
1983  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
1984  *    Windows:          in qtmlClient.lib 4.0 and later
1985  }
1986 procedure AbortPrePrerollMovie( m: Movie; err: OSErr ); external name '_AbortPrePrerollMovie';
1987 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1988 
1989 
1990 {
1991  *  LoadMovieIntoRam()
1992  *
1993  *  Availability:
1994  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1995  *    CarbonLib:        in CarbonLib 1.0 and later
1996  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
1997  *    Windows:          in qtmlClient.lib 3.0 and later
1998  }
LoadMovieIntoRamnull1999 function LoadMovieIntoRam( theMovie: Movie; time: TimeValue; duration: TimeValue; flags: SIGNEDLONG ): OSErr; external name '_LoadMovieIntoRam';
2000 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2001 
2002 
2003 {
2004  *  LoadTrackIntoRam()
2005  *
2006  *  Availability:
2007  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2008  *    CarbonLib:        in CarbonLib 1.0 and later
2009  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2010  *    Windows:          in qtmlClient.lib 3.0 and later
2011  }
LoadTrackIntoRamnull2012 function LoadTrackIntoRam( theTrack: Track; time: TimeValue; duration: TimeValue; flags: SIGNEDLONG ): OSErr; external name '_LoadTrackIntoRam';
2013 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2014 
2015 
2016 {
2017  *  LoadMediaIntoRam()
2018  *
2019  *  Availability:
2020  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2021  *    CarbonLib:        in CarbonLib 1.0 and later
2022  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2023  *    Windows:          in qtmlClient.lib 3.0 and later
2024  }
LoadMediaIntoRamnull2025 function LoadMediaIntoRam( theMedia: Media; time: TimeValue; duration: TimeValue; flags: SIGNEDLONG ): OSErr; external name '_LoadMediaIntoRam';
2026 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2027 
2028 
2029 {
2030  *  SetMovieActive()
2031  *
2032  *  Availability:
2033  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2034  *    CarbonLib:        in CarbonLib 1.0 and later
2035  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2036  *    Windows:          in qtmlClient.lib 3.0 and later
2037  }
2038 procedure SetMovieActive( theMovie: Movie; active: Boolean ); external name '_SetMovieActive';
2039 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2040 
2041 
2042 {
2043  *  GetMovieActive()
2044  *
2045  *  Availability:
2046  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2047  *    CarbonLib:        in CarbonLib 1.0 and later
2048  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2049  *    Windows:          in qtmlClient.lib 3.0 and later
2050  }
GetMovieActivenull2051 function GetMovieActive( theMovie: Movie ): Boolean; external name '_GetMovieActive';
2052 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2053 
2054 
2055 {
2056  *  QTGetWallClockTimeBase()
2057  *
2058  *  Availability:
2059  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2060  *    CarbonLib:        in CarbonLib 1.6 and later
2061  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2062  *    Windows:          in qtmlClient.lib 6.0 and later
2063  }
QTGetWallClockTimeBasenull2064 function QTGetWallClockTimeBase( var wallClockTimeBase: TimeBase ): OSErr; external name '_QTGetWallClockTimeBase';
2065 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2066 
2067 
2068 {************************
2069 * Idle Management
2070 *************************}
2071 type
2072 	IdleManager = ^OpaqueIdleManager; { an opaque type }
2073 	OpaqueIdleManager = record end;
2074 {
2075  *  QTIdleManagerOpen()
2076  *
2077  *  Availability:
2078  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2079  *    CarbonLib:        in CarbonLib 1.6 and later
2080  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2081  *    Windows:          in qtmlClient.lib 6.0 and later
2082  }
QTIdleManagerOpennull2083 function QTIdleManagerOpen: IdleManager; external name '_QTIdleManagerOpen';
2084 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2085 
2086 
2087 {
2088  *  QTIdleManagerClose()
2089  *
2090  *  Availability:
2091  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2092  *    CarbonLib:        in CarbonLib 1.6 and later
2093  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2094  *    Windows:          in qtmlClient.lib 6.0 and later
2095  }
QTIdleManagerClosenull2096 function QTIdleManagerClose( im: IdleManager ): OSErr; external name '_QTIdleManagerClose';
2097 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2098 
2099 
2100 {
2101  *  QTIdleManagerGetNextIdleTime()
2102  *
2103  *  Availability:
2104  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2105  *    CarbonLib:        in CarbonLib 1.6 and later
2106  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2107  *    Windows:          in qtmlClient.lib 6.0 and later
2108  }
QTIdleManagerGetNextIdleTimenull2109 function QTIdleManagerGetNextIdleTime( im: IdleManager; var nextIdle: TimeRecord ): OSErr; external name '_QTIdleManagerGetNextIdleTime';
2110 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2111 
2112 
2113 {
2114  *  QTIdleManagerSetNextIdleTime()
2115  *
2116  *  Availability:
2117  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2118  *    CarbonLib:        in CarbonLib 1.6 and later
2119  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2120  *    Windows:          in qtmlClient.lib 6.0 and later
2121  }
QTIdleManagerSetNextIdleTimenull2122 function QTIdleManagerSetNextIdleTime( im: IdleManager; var nextIdle: TimeRecord ): OSErr; external name '_QTIdleManagerSetNextIdleTime';
2123 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2124 
2125 
2126 {
2127  *  QTIdleManagerSetNextIdleTimeNever()
2128  *
2129  *  Availability:
2130  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2131  *    CarbonLib:        in CarbonLib 1.6 and later
2132  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2133  *    Windows:          in qtmlClient.lib 6.0 and later
2134  }
QTIdleManagerSetNextIdleTimeNevernull2135 function QTIdleManagerSetNextIdleTimeNever( im: IdleManager ): OSErr; external name '_QTIdleManagerSetNextIdleTimeNever';
2136 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2137 
2138 
2139 {
2140  *  QTIdleManagerSetNextIdleTimeNow()
2141  *
2142  *  Availability:
2143  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2144  *    CarbonLib:        in CarbonLib 1.6 and later
2145  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2146  *    Windows:          in qtmlClient.lib 6.0 and later
2147  }
QTIdleManagerSetNextIdleTimeNownull2148 function QTIdleManagerSetNextIdleTimeNow( im: IdleManager ): OSErr; external name '_QTIdleManagerSetNextIdleTimeNow';
2149 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2150 
2151 
2152 {
2153  *  QTIdleManagerSetNextIdleTimeDelta()
2154  *
2155  *  Availability:
2156  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2157  *    CarbonLib:        in CarbonLib 1.6 and later
2158  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2159  *    Windows:          in qtmlClient.lib 6.0 and later
2160  }
QTIdleManagerSetNextIdleTimeDeltanull2161 function QTIdleManagerSetNextIdleTimeDelta( im: IdleManager; duration: TimeValue; scale: TimeScale ): OSErr; external name '_QTIdleManagerSetNextIdleTimeDelta';
2162 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2163 
2164 
2165 {
2166  *  QTIdleManagerSetParent()
2167  *
2168  *  Availability:
2169  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2170  *    CarbonLib:        in CarbonLib 1.6 and later
2171  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2172  *    Windows:          in qtmlClient.lib 6.0 and later
2173  }
QTIdleManagerSetParentnull2174 function QTIdleManagerSetParent( im: IdleManager; parent: IdleManager ): OSErr; external name '_QTIdleManagerSetParent';
2175 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2176 
2177 
2178 {
2179  *  QTIdleManagerNeedsAnIdle()
2180  *
2181  *  Availability:
2182  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2183  *    CarbonLib:        in CarbonLib 1.6 and later
2184  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2185  *    Windows:          in qtmlClient.lib 6.0 and later
2186  }
QTIdleManagerNeedsAnIdlenull2187 function QTIdleManagerNeedsAnIdle( im: IdleManager; var needsOne: Boolean ): OSErr; external name '_QTIdleManagerNeedsAnIdle';
2188 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2189 
2190 
2191 {************************
2192 * Carbon Movie Control
2193 *************************}
2194 { Movie Control option bits}
2195 const
2196 	kMovieControlOptionHideController = 1 shl 0;
2197 	kMovieControlOptionLocateTopLeft = 1 shl 1;
2198 	kMovieControlOptionEnableEditing = 1 shl 2;
2199 	kMovieControlOptionHandleEditingHI = 1 shl 3;
2200 	kMovieControlOptionSetKeysEnabled = 1 shl 4;
2201 	kMovieControlOptionManuallyIdled = 1 shl 5;
2202 
2203 { Item tags for use in GetControlData() (some with SetControlData()) calls on Movie Controls}
2204 const
2205 	kMovieControlDataMovieController = FourCharCode('mc  ');
2206 	kMovieControlDataMovie = FourCharCode('moov');
2207 	kMovieControlDataManualIdling = FourCharCode('manu');
2208 
2209 {
2210 ** CreateMovieControl() -   This is the public API routine that creates a Movie Control. Given a window and location
2211 **                          plus a movie, it constructs a Movie Control with a Movie Controller in the window.
2212 }
2213 {
2214  *  CreateMovieControl()
2215  *
2216  *  Availability:
2217  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2218  *    CarbonLib:        in CarbonLib 1.6 and later
2219  *    Non-Carbon CFM:   not available
2220  }
CreateMovieControlnull2221 function CreateMovieControl( theWindow: WindowRef; var localRect: Rect; theMovie: Movie; options: UInt32; var returnedControl: ControlRef ): OSErr; external name '_CreateMovieControl';
2222 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2223 
2224 
2225 {************************
2226 * calls for playing movies, previews, posters
2227 *************************}
2228 {
2229  *  StartMovie()
2230  *
2231  *  Availability:
2232  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2233  *    CarbonLib:        in CarbonLib 1.0 and later
2234  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2235  *    Windows:          in qtmlClient.lib 3.0 and later
2236  }
2237 procedure StartMovie( theMovie: Movie ); external name '_StartMovie';
2238 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2239 
2240 
2241 {
2242  *  StopMovie()
2243  *
2244  *  Availability:
2245  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2246  *    CarbonLib:        in CarbonLib 1.0 and later
2247  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2248  *    Windows:          in qtmlClient.lib 3.0 and later
2249  }
2250 procedure StopMovie( theMovie: Movie ); external name '_StopMovie';
2251 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2252 
2253 
2254 {
2255  *  GoToBeginningOfMovie()
2256  *
2257  *  Availability:
2258  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2259  *    CarbonLib:        in CarbonLib 1.0 and later
2260  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2261  *    Windows:          in qtmlClient.lib 3.0 and later
2262  }
2263 procedure GoToBeginningOfMovie( theMovie: Movie ); external name '_GoToBeginningOfMovie';
2264 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2265 
2266 
2267 {
2268  *  GoToEndOfMovie()
2269  *
2270  *  Availability:
2271  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2272  *    CarbonLib:        in CarbonLib 1.0 and later
2273  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2274  *    Windows:          in qtmlClient.lib 3.0 and later
2275  }
2276 procedure GoToEndOfMovie( theMovie: Movie ); external name '_GoToEndOfMovie';
2277 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2278 
2279 
2280 {
2281  *  IsMovieDone()
2282  *
2283  *  Availability:
2284  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2285  *    CarbonLib:        in CarbonLib 1.0 and later
2286  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2287  *    Windows:          in qtmlClient.lib 3.0 and later
2288  }
IsMovieDonenull2289 function IsMovieDone( theMovie: Movie ): Boolean; external name '_IsMovieDone';
2290 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2291 
2292 
2293 {
2294  *  GetMoviePreviewMode()
2295  *
2296  *  Availability:
2297  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2298  *    CarbonLib:        in CarbonLib 1.0 and later
2299  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2300  *    Windows:          in qtmlClient.lib 3.0 and later
2301  }
GetMoviePreviewModenull2302 function GetMoviePreviewMode( theMovie: Movie ): Boolean; external name '_GetMoviePreviewMode';
2303 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2304 
2305 
2306 {
2307  *  SetMoviePreviewMode()
2308  *
2309  *  Availability:
2310  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2311  *    CarbonLib:        in CarbonLib 1.0 and later
2312  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2313  *    Windows:          in qtmlClient.lib 3.0 and later
2314  }
2315 procedure SetMoviePreviewMode( theMovie: Movie; usePreview: Boolean ); external name '_SetMoviePreviewMode';
2316 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2317 
2318 
2319 {
2320  *  ShowMoviePoster()
2321  *
2322  *  Availability:
2323  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2324  *    CarbonLib:        in CarbonLib 1.0 and later
2325  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2326  *    Windows:          in qtmlClient.lib 3.0 and later
2327  }
2328 procedure ShowMoviePoster( theMovie: Movie ); external name '_ShowMoviePoster';
2329 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2330 
2331 
2332 {
2333  *  PlayMoviePreview()
2334  *
2335  *  Availability:
2336  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2337  *    CarbonLib:        in CarbonLib 1.0 and later
2338  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2339  *    Windows:          in qtmlClient.lib 3.0 and later
2340  }
2341 procedure PlayMoviePreview( theMovie: Movie; callOutProc: MoviePreviewCallOutUPP; refcon: SIGNEDLONG ); external name '_PlayMoviePreview';
2342 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2343 
2344 
2345 {************************
2346 * calls for controlling movies & tracks which are playing
2347 *************************}
2348 {
2349  *  GetMovieTimeBase()
2350  *
2351  *  Availability:
2352  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2353  *    CarbonLib:        in CarbonLib 1.0 and later
2354  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2355  *    Windows:          in qtmlClient.lib 3.0 and later
2356  }
GetMovieTimeBasenull2357 function GetMovieTimeBase( theMovie: Movie ): TimeBase; external name '_GetMovieTimeBase';
2358 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2359 
2360 
2361 {
2362  *  SetMovieMasterTimeBase()
2363  *
2364  *  Availability:
2365  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2366  *    CarbonLib:        in CarbonLib 1.0 and later
2367  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2368  *    Windows:          in qtmlClient.lib 3.0 and later
2369  }
2370 procedure SetMovieMasterTimeBase( theMovie: Movie; tb: TimeBase; const (*var*) slaveZero: TimeRecord ); external name '_SetMovieMasterTimeBase';
2371 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2372 
2373 
2374 {
2375  *  SetMovieMasterClock()
2376  *
2377  *  Availability:
2378  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2379  *    CarbonLib:        in CarbonLib 1.0 and later
2380  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2381  *    Windows:          in qtmlClient.lib 3.0 and later
2382  }
2383 procedure SetMovieMasterClock( theMovie: Movie; clockMeister: Component; const (*var*) slaveZero: TimeRecord ); external name '_SetMovieMasterClock';
2384 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2385 
2386 
2387 {
2388  *  ChooseMovieClock()
2389  *
2390  *  Availability:
2391  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
2392  *    CarbonLib:        in CarbonLib 1.6 and later
2393  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
2394  *    Windows:          in qtmlClient.lib 6.0 and later
2395  }
2396 procedure ChooseMovieClock( m: Movie; flags: SIGNEDLONG ); external name '_ChooseMovieClock';
2397 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
2398 
2399 
2400 {
2401  *  GetMovieGWorld()
2402  *
2403  *  Availability:
2404  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2405  *    CarbonLib:        in CarbonLib 1.0 and later
2406  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2407  *    Windows:          in qtmlClient.lib 3.0 and later
2408  }
2409 procedure GetMovieGWorld( theMovie: Movie; var port: CGrafPtr; var gdh: GDHandle ); external name '_GetMovieGWorld';
2410 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2411 
2412 
2413 {
2414  *  SetMovieGWorld()
2415  *
2416  *  Availability:
2417  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2418  *    CarbonLib:        in CarbonLib 1.0 and later
2419  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2420  *    Windows:          in qtmlClient.lib 3.0 and later
2421  }
2422 procedure SetMovieGWorld( theMovie: Movie; port: CGrafPtr; gdh: GDHandle ); external name '_SetMovieGWorld';
2423 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2424 
2425 
2426 const
2427 	movieDrawingCallWhenChanged = 0;
2428 	movieDrawingCallAlways = 1;
2429 
2430 {
2431  *  SetMovieDrawingCompleteProc()
2432  *
2433  *  Availability:
2434  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2435  *    CarbonLib:        in CarbonLib 1.0 and later
2436  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2437  *    Windows:          in qtmlClient.lib 3.0 and later
2438  }
2439 procedure SetMovieDrawingCompleteProc( theMovie: Movie; flags: SIGNEDLONG; proc: MovieDrawingCompleteUPP; refCon: SIGNEDLONG ); external name '_SetMovieDrawingCompleteProc';
2440 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2441 
2442 
2443 {
2444  *  GetMovieNaturalBoundsRect()
2445  *
2446  *  Availability:
2447  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2448  *    CarbonLib:        in CarbonLib 1.0 and later
2449  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2450  *    Windows:          in qtmlClient.lib 3.0 and later
2451  }
2452 procedure GetMovieNaturalBoundsRect( theMovie: Movie; var naturalBounds: Rect ); external name '_GetMovieNaturalBoundsRect';
2453 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2454 
2455 
2456 {
2457  *  GetNextTrackForCompositing()
2458  *
2459  *  Availability:
2460  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2461  *    CarbonLib:        in CarbonLib 1.0 and later
2462  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2463  *    Windows:          in qtmlClient.lib 3.0 and later
2464  }
GetNextTrackForCompositingnull2465 function GetNextTrackForCompositing( theMovie: Movie; theTrack: Track ): Track; external name '_GetNextTrackForCompositing';
2466 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2467 
2468 
2469 {
2470  *  GetPrevTrackForCompositing()
2471  *
2472  *  Availability:
2473  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2474  *    CarbonLib:        in CarbonLib 1.0 and later
2475  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2476  *    Windows:          in qtmlClient.lib 3.0 and later
2477  }
GetPrevTrackForCompositingnull2478 function GetPrevTrackForCompositing( theMovie: Movie; theTrack: Track ): Track; external name '_GetPrevTrackForCompositing';
2479 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2480 
2481 
2482 {
2483  *  SetTrackGWorld()
2484  *
2485  *  Availability:
2486  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2487  *    CarbonLib:        in CarbonLib 1.0 and later
2488  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2489  *    Windows:          in qtmlClient.lib 3.0 and later
2490  }
2491 procedure SetTrackGWorld( theTrack: Track; port: CGrafPtr; gdh: GDHandle; proc: TrackTransferUPP; refCon: SIGNEDLONG ); external name '_SetTrackGWorld';
2492 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2493 
2494 
2495 {
2496  *  GetMoviePict()
2497  *
2498  *  Availability:
2499  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2500  *    CarbonLib:        in CarbonLib 1.0 and later
2501  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2502  *    Windows:          in qtmlClient.lib 3.0 and later
2503  }
GetMoviePictnull2504 function GetMoviePict( theMovie: Movie; time: TimeValue ): PicHandle; external name '_GetMoviePict';
2505 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2506 
2507 
2508 {
2509  *  GetTrackPict()
2510  *
2511  *  Availability:
2512  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2513  *    CarbonLib:        in CarbonLib 1.0 and later
2514  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2515  *    Windows:          in qtmlClient.lib 3.0 and later
2516  }
GetTrackPictnull2517 function GetTrackPict( theTrack: Track; time: TimeValue ): PicHandle; external name '_GetTrackPict';
2518 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2519 
2520 
2521 {
2522  *  GetMoviePosterPict()
2523  *
2524  *  Availability:
2525  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2526  *    CarbonLib:        in CarbonLib 1.0 and later
2527  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2528  *    Windows:          in qtmlClient.lib 3.0 and later
2529  }
GetMoviePosterPictnull2530 function GetMoviePosterPict( theMovie: Movie ): PicHandle; external name '_GetMoviePosterPict';
2531 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2532 
2533 
2534 { called between Begin & EndUpdate }
2535 {
2536  *  UpdateMovie()
2537  *
2538  *  Availability:
2539  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2540  *    CarbonLib:        in CarbonLib 1.0 and later
2541  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2542  *    Windows:          in qtmlClient.lib 3.0 and later
2543  }
UpdateMovienull2544 function UpdateMovie( theMovie: Movie ): OSErr; external name '_UpdateMovie';
2545 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2546 
2547 
2548 {
2549  *  InvalidateMovieRegion()
2550  *
2551  *  Availability:
2552  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2553  *    CarbonLib:        in CarbonLib 1.0 and later
2554  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2555  *    Windows:          in qtmlClient.lib 3.0 and later
2556  }
InvalidateMovieRegionnull2557 function InvalidateMovieRegion( theMovie: Movie; invalidRgn: RgnHandle ): OSErr; external name '_InvalidateMovieRegion';
2558 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2559 
2560 
2561 {*** spatial movie routines ***}
2562 {
2563  *  GetMovieBox()
2564  *
2565  *  Availability:
2566  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2567  *    CarbonLib:        in CarbonLib 1.0 and later
2568  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2569  *    Windows:          in qtmlClient.lib 3.0 and later
2570  }
2571 procedure GetMovieBox( theMovie: Movie; var boxRect: Rect ); external name '_GetMovieBox';
2572 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2573 
2574 
2575 {
2576  *  SetMovieBox()
2577  *
2578  *  Availability:
2579  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2580  *    CarbonLib:        in CarbonLib 1.0 and later
2581  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2582  *    Windows:          in qtmlClient.lib 3.0 and later
2583  }
2584 procedure SetMovieBox( theMovie: Movie; const (*var*) boxRect: Rect ); external name '_SetMovieBox';
2585 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2586 
2587 
2588 {* movie display clip }
2589 {
2590  *  GetMovieDisplayClipRgn()
2591  *
2592  *  Availability:
2593  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2594  *    CarbonLib:        in CarbonLib 1.0 and later
2595  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2596  *    Windows:          in qtmlClient.lib 3.0 and later
2597  }
GetMovieDisplayClipRgnnull2598 function GetMovieDisplayClipRgn( theMovie: Movie ): RgnHandle; external name '_GetMovieDisplayClipRgn';
2599 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2600 
2601 
2602 {
2603  *  SetMovieDisplayClipRgn()
2604  *
2605  *  Availability:
2606  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2607  *    CarbonLib:        in CarbonLib 1.0 and later
2608  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2609  *    Windows:          in qtmlClient.lib 3.0 and later
2610  }
2611 procedure SetMovieDisplayClipRgn( theMovie: Movie; theClip: RgnHandle ); external name '_SetMovieDisplayClipRgn';
2612 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2613 
2614 
2615 {* movie src clip }
2616 {
2617  *  GetMovieClipRgn()
2618  *
2619  *  Availability:
2620  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2621  *    CarbonLib:        in CarbonLib 1.0 and later
2622  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2623  *    Windows:          in qtmlClient.lib 3.0 and later
2624  }
GetMovieClipRgnnull2625 function GetMovieClipRgn( theMovie: Movie ): RgnHandle; external name '_GetMovieClipRgn';
2626 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2627 
2628 
2629 {
2630  *  SetMovieClipRgn()
2631  *
2632  *  Availability:
2633  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2634  *    CarbonLib:        in CarbonLib 1.0 and later
2635  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2636  *    Windows:          in qtmlClient.lib 3.0 and later
2637  }
2638 procedure SetMovieClipRgn( theMovie: Movie; theClip: RgnHandle ); external name '_SetMovieClipRgn';
2639 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2640 
2641 
2642 {* track src clip }
2643 {
2644  *  GetTrackClipRgn()
2645  *
2646  *  Availability:
2647  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2648  *    CarbonLib:        in CarbonLib 1.0 and later
2649  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2650  *    Windows:          in qtmlClient.lib 3.0 and later
2651  }
GetTrackClipRgnnull2652 function GetTrackClipRgn( theTrack: Track ): RgnHandle; external name '_GetTrackClipRgn';
2653 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2654 
2655 
2656 {
2657  *  SetTrackClipRgn()
2658  *
2659  *  Availability:
2660  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2661  *    CarbonLib:        in CarbonLib 1.0 and later
2662  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2663  *    Windows:          in qtmlClient.lib 3.0 and later
2664  }
2665 procedure SetTrackClipRgn( theTrack: Track; theClip: RgnHandle ); external name '_SetTrackClipRgn';
2666 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2667 
2668 
2669 {* bounds in display space (not clipped by display clip) }
2670 {
2671  *  GetMovieDisplayBoundsRgn()
2672  *
2673  *  Availability:
2674  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2675  *    CarbonLib:        in CarbonLib 1.0 and later
2676  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2677  *    Windows:          in qtmlClient.lib 3.0 and later
2678  }
GetMovieDisplayBoundsRgnnull2679 function GetMovieDisplayBoundsRgn( theMovie: Movie ): RgnHandle; external name '_GetMovieDisplayBoundsRgn';
2680 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2681 
2682 
2683 {
2684  *  GetTrackDisplayBoundsRgn()
2685  *
2686  *  Availability:
2687  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2688  *    CarbonLib:        in CarbonLib 1.0 and later
2689  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2690  *    Windows:          in qtmlClient.lib 3.0 and later
2691  }
GetTrackDisplayBoundsRgnnull2692 function GetTrackDisplayBoundsRgn( theTrack: Track ): RgnHandle; external name '_GetTrackDisplayBoundsRgn';
2693 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2694 
2695 
2696 {* bounds in movie space }
2697 {
2698  *  GetMovieBoundsRgn()
2699  *
2700  *  Availability:
2701  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2702  *    CarbonLib:        in CarbonLib 1.0 and later
2703  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2704  *    Windows:          in qtmlClient.lib 3.0 and later
2705  }
GetMovieBoundsRgnnull2706 function GetMovieBoundsRgn( theMovie: Movie ): RgnHandle; external name '_GetMovieBoundsRgn';
2707 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2708 
2709 
2710 {
2711  *  GetTrackMovieBoundsRgn()
2712  *
2713  *  Availability:
2714  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2715  *    CarbonLib:        in CarbonLib 1.0 and later
2716  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2717  *    Windows:          in qtmlClient.lib 3.0 and later
2718  }
GetTrackMovieBoundsRgnnull2719 function GetTrackMovieBoundsRgn( theTrack: Track ): RgnHandle; external name '_GetTrackMovieBoundsRgn';
2720 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2721 
2722 
2723 {* bounds in track space }
2724 {
2725  *  GetTrackBoundsRgn()
2726  *
2727  *  Availability:
2728  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2729  *    CarbonLib:        in CarbonLib 1.0 and later
2730  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2731  *    Windows:          in qtmlClient.lib 3.0 and later
2732  }
GetTrackBoundsRgnnull2733 function GetTrackBoundsRgn( theTrack: Track ): RgnHandle; external name '_GetTrackBoundsRgn';
2734 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2735 
2736 
2737 {* mattes - always in track space }
2738 {
2739  *  GetTrackMatte()
2740  *
2741  *  Availability:
2742  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2743  *    CarbonLib:        in CarbonLib 1.0 and later
2744  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2745  *    Windows:          in qtmlClient.lib 3.0 and later
2746  }
GetTrackMattenull2747 function GetTrackMatte( theTrack: Track ): PixMapHandle; external name '_GetTrackMatte';
2748 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2749 
2750 
2751 {
2752  *  SetTrackMatte()
2753  *
2754  *  Availability:
2755  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2756  *    CarbonLib:        in CarbonLib 1.0 and later
2757  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2758  *    Windows:          in qtmlClient.lib 3.0 and later
2759  }
2760 procedure SetTrackMatte( theTrack: Track; theMatte: PixMapHandle ); external name '_SetTrackMatte';
2761 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2762 
2763 
2764 {
2765  *  DisposeMatte()
2766  *
2767  *  Availability:
2768  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2769  *    CarbonLib:        in CarbonLib 1.0 and later
2770  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
2771  *    Windows:          in qtmlClient.lib 3.0 and later
2772  }
2773 procedure DisposeMatte( theMatte: PixMapHandle ); external name '_DisposeMatte';
2774 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2775 
2776 
2777 {* video out }
2778 {
2779  *  SetMovieVideoOutput()
2780  *
2781  *  Availability:
2782  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
2783  *    CarbonLib:        in CarbonLib 1.3 and later
2784  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
2785  *    Windows:          in qtmlClient.lib 5.0 and later
2786  }
2787 procedure SetMovieVideoOutput( theMovie: Movie; vout: ComponentInstance ); external name '_SetMovieVideoOutput';
2788 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
2789 
2790 
2791 {************************
2792  * Audio Context
2793  ************************}
2794 {
2795    The QTAudioContextRef type encapsulates a connection to an audio output device.
2796    It represents a destination audio rendering environment that can be used for
2797    playback of a movie.
2798 }
2799 type
2800 	QTAudioContextRef = ^OpaqueQTAudioContextRef; { an opaque type }
2801 	OpaqueQTAudioContextRef = record end;
2802 {
2803  *  QTAudioContextRetain()
2804  *
2805  *  Summary:
2806  *    Retains a QTAudioContext object by incrementing its reference
2807  *    count. You should retain the object when you receive it from
2808  *    elsewhere (that is, you did not create it) and you want it to
2809  *    persist. If you retain a QTAudioContext object you are
2810  *    responsible for releasing it. The same audio context is returned
2811  *    for convenience. If audioContext is NULL, nothing happens.
2812  *
2813  *  Parameters:
2814  *
2815  *    audioContext:
2816  *      [in] The audio context to retain.
2817  *
2818  *  Availability:
2819  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
2820  *    CarbonLib:        not available
2821  *    Non-Carbon CFM:   not available
2822  }
QTAudioContextRetainnull2823 function QTAudioContextRetain( audioContext: QTAudioContextRef ): QTAudioContextRef; external name '_QTAudioContextRetain';
2824 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
2825 
2826 
2827 {
2828  *  QTAudioContextRelease()
2829  *
2830  *  Summary:
2831  *    Release a QTAudioContext object by decrementing its reference
2832  *    count. If that count consequently becomes zero the memory
2833  *    allocated to the object is deallocated and the object is
2834  *    destroyed. If you create or explicitly retain a QTAudioContext
2835  *    object, you are responsible for releasing it when you no longer
2836  *    need it. If audioContext is NULL, nothing happens.
2837  *
2838  *  Parameters:
2839  *
2840  *    audioContext:
2841  *      [in] The audio context to release.
2842  *
2843  *  Availability:
2844  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
2845  *    CarbonLib:        not available
2846  *    Non-Carbon CFM:   not available
2847  }
2848 procedure QTAudioContextRelease( audioContext: QTAudioContextRef ); external name '_QTAudioContextRelease';
2849 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
2850 
2851 
2852 {
2853  *  QTAudioContextCreateForAudioDevice()
2854  *
2855  *  Summary:
2856  *    Creates a QTAudioContext object that encapsulates a connection to
2857  *    an audio output device. This object is suitable for passing to
2858  *    SetMovieAudioContext or NewMovieFromProperties, which targets the
2859  *    audio output of the movie to that device. A QTAudioContext object
2860  *    cannot be associated with more than one movie. Each movie needs
2861  *    its own connection to the device. In order to play more than one
2862  *    movie to a particular device, create a QTAudioContext object for
2863  *    each movie. You are responsible for releasing the QTAudioContext
2864  *    object created by this routine. After calling
2865  *    SetMovieAudioContext or NewMovieFromProperties, you can release
2866  *    the object since these APIs will retain it for their own use. On
2867  *    Windows, the audioDeviceUID is the GUID of a DirectSound device,
2868  *    stringified using such Win32 functions as StringFromCLSID() or
2869  *    StringFromGUID2(), then wrapped in a CFStringRef using
2870  *    CFStringCreateWithCharacters().  After passing the audioDeviceUID
2871  *    CFStringRef to QTAudioContextCreateForAudioDevice(), remember to
2872  *    CFRelease() the CFStringRef you created.
2873  *
2874  *  Parameters:
2875  *
2876  *    allocator:
2877  *      [in]  Allocator used to create the audio context.
2878  *
2879  *    audioDeviceUID:
2880  *      [in]  Audio device UID.  NULL means the default CoreAudio
2881  *      device.
2882  *
2883  *    options:
2884  *      [in]  Reserved.  Pass NULL.
2885  *
2886  *    newAudioContextOut:
2887  *      [out] Points to a variable to receive the new audio context.
2888  *
2889  *  Availability:
2890  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
2891  *    CarbonLib:        not available
2892  *    Non-Carbon CFM:   not available
2893  }
QTAudioContextCreateForAudioDevicenull2894 function QTAudioContextCreateForAudioDevice( allocator: CFAllocatorRef; audioDeviceUID: CFStringRef; options: CFDictionaryRef; var newAudioContextOut: QTAudioContextRef ): OSStatus; external name '_QTAudioContextCreateForAudioDevice';
2895 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
2896 
2897 
2898 {************************
2899  * Audio Context Inserts
2900  ************************}
2901 {
2902    Theory of operations:
2903     To register for a Movie Audio Context Insert during playback:
2904         1) Get the movie's current audio context: GetMovieAudioContext()
2905         2) Register the application insert: QTAudioContextRegisterInsert()
2906     To unregister a Movie Audio Context Insert:
2907         Call QTAudioContextRegisterInsert() with a NULL QTAudioContextInsertRegistryInfoRef
2908            If the registry ptr is non-NULL but the processDataCallback is NULL, this has the same effect.
2909     To register for a Track Audio Context Insert during playback:
2910         Set the kQTAudioPropertyID_RegisterAudioContextInsert property on the track,
2911             providing the same registry info structure that is used for the QTAudioContextRegisterInsert() call.
2912     To unregister a Track Audio Context Insert:
2913         Set the kQTAudioPropertyID_RegisterAudioContextInsert property on the track,
2914             with a NULL processDataCallback
2915 }
2916 
2917 
2918 {
2919  *  AudioContextInsertProcessDataCallback
2920  *
2921  *  Summary:
2922  *    A client-supplied function to be called during playback to get
2923  *    data from the audio insert.
2924  *
2925  *  Discussion:
2926  *    This routine is called by the Audio Context for each buffer of
2927  *    audio data it renders. The client receives a source buffer list
2928  *    and a destination buffer list, and it is responsible for
2929  *    supplying output buffers to the destination buffer list. This
2930  *    routine is generally called on the IOProc at high thread
2931  *    priority, and so should not do memory allocation or release,
2932  *    acquire mutex resources, nor take very long to process.
2933  *
2934  *  Parameters:
2935  *
2936  *    inUserData:
2937  *      An opaque pointer to the client's data.
2938  *
2939  *    ioRenderFlags:
2940  *      A field that contains render action flags (see AUComponent.h).
2941  *
2942  *    inTimeStamp:
2943  *      An AudioTimeStamp that indicates the start time of the buffer
2944  *      to be processed. During normal playback or audio extraction,
2945  *      the timestamp mSampleTime is normalized to the movie time that
2946  *      this particular input sample buffer represents, expressed in
2947  *      the sample rate being processed. During reverse playback, the
2948  *      first Process Data call after Reset will contain a timestamp
2949  *      designating the movie time, but subsequent timestamps will
2950  *      advance forward instead of in reverse.
2951  *
2952  *    inNumberFrames:
2953  *      A UInt32 that specifies the number of frames to be rendered.
2954  *
2955  *    inInputData:
2956  *      An AudioBufferList used to pass input data to the insert.
2957  *
2958  *    outOutputData:
2959  *      An AudioBufferList to receive the processed data that is
2960  *      produced by the insert. QuickTime sets buffer pointers in the
2961  *      list to NULL. The client must set the buffer pointers to refer
2962  *      to either its own allocated buffers or to be copies of the
2963  *      buffer pointers received in inInputData.
2964  }
2965 type
inUserDatanull2966 	AudioContextInsertProcessDataCallback = function( inUserData: UnivPtr; var ioRenderFlags: AudioUnitRenderActionFlags; const (*var*) inTimeStamp: AudioTimeStamp; inNumberFrames: UInt32; var inInputData: AudioBufferList; var outOutputData: AudioBufferList ): OSStatus;
2967 
2968 {
2969  *  AudioContextInsertResetCallback
2970  *
2971  *  Summary:
2972  *    A client-supplied function to be called to initialize and reset
2973  *    for processing data.
2974  *
2975  *  Discussion:
2976  *    This routine is called by the Audio Context to initialize for
2977  *    rendering. The client is told the sample rate and the maximum
2978  *    number of frames it will be asked to process on any single
2979  *    ProcessData callback (ie, inNumberFrames will always be <=
2980  *    inMaxFrames). On return, the client reports its processing
2981  *    latency and tail times. This callback is invoked whenever the
2982  *    rendering chain is interrupted (eg, when playback jumps to a new
2983  *    point or changes direction). The client should call
2984  *    AudioUnitReset on any audio units in use, and should be prepared
2985  *    to respond to changes of sample rate or maxframes.
2986  *
2987  *  Parameters:
2988  *
2989  *    inUserData:
2990  *      An opaque pointer to the client's data.
2991  *
2992  *    inSampleRate:
2993  *      A Float64 that will specifies the sample rate of the data to be
2994  *      processed.
2995  *
2996  *    inMaxFrames:
2997  *      A UInt32 that specifies the maximum number of maximum frame
2998  *      count that will be processed in a single call.
2999  *
3000  *    outLatency:
3001  *      A pointer to a Float64 that specifies the insert's render
3002  *      latency, in seconds. Latency data will be pulled and discarded
3003  *      by QuickTime after each reset.
3004  *
3005  *    outTailTime:
3006  *      A pointer to a Float64 that specifies the insert's tail render
3007  *      time, in seconds.
3008  }
3009 type
inUserDatanull3010 	AudioContextInsertResetCallback = function( inUserData: UnivPtr; inSampleRate: Float64; inMaxFrames: UInt32; var outLatency: Float64; var outTailTime: Float64 ): OSStatus;
3011 
3012 {
3013  *  AudioContextInsertFinalizeCallback
3014  *
3015  *  Summary:
3016  *    A client-supplied function to be called to release any resources
3017  *    in use by the insert.
3018  *
3019  *  Discussion:
3020  *    This routine is called when the Audio Context is being disposed
3021  *    (ie, the MovieAudioContext has been reset or the movie was
3022  *    disposed). Once this callback returns, no more calls for this
3023  *    registered insert will be made.
3024  *
3025  *  Parameters:
3026  *
3027  *    inUserData:
3028  *      An opaque pointer to the client's data.
3029  }
3030 type
inUserDatanull3031 	AudioContextInsertFinalizeCallback = function( inUserData: UnivPtr ): OSStatus;
3032 
3033 {
3034  *  QTAudioContextInsertRegistryInfo
3035  *
3036  *  Summary:
3037  *    Parameters for registering an Audio Context insert
3038  *
3039  *  Discussion:
3040  *    This is used with QTAudioContextRegisterInsert() and the Movie
3041  *    Audio Extraction
3042  *    kQTMovieAudioExtractionAudioPropertyID_RegisterMovieInsert
3043  *    property.
3044  }
3045 type
3046 	QTAudioContextInsertRegistryInfoPtr = ^QTAudioContextInsertRegistryInfo;
3047 	QTAudioContextInsertRegistryInfo = record
3048 {
3049    * client user data to be passed to all client-specified callbacks.
3050    }
3051 		userData: UnivPtr;
3052 
3053   {
3054    * The size of the input channel layout structure.
3055    }
3056 		inputChannelLayoutSize: UInt32;
3057 
3058   {
3059    * An AudioChannelLayout that describes the channel layout (and,
3060    * implicitly, channel valence) of the data that the insert expects
3061    * as input.
3062    }
3063 		inputChannelLayout: AudioChannelLayoutPtr;
3064 
3065   {
3066    * The size of the output channel layout structure.
3067    }
3068 		outputChannelLayoutSize: UInt32;
3069 
3070   {
3071    * An AudioChannelLayout that describes the channel layout (and,
3072    * implicitly, channel valence) of the processed data that the insert
3073    * will output.
3074    }
3075 		outputChannelLayout: AudioChannelLayoutPtr;
3076 
3077   {
3078    * Client-specified process data callback.
3079    }
3080 		processDataCallback: AudioContextInsertProcessDataCallback;
3081 
3082   {
3083    * Client-specified reset callback.
3084    }
3085 		resetCallback: AudioContextInsertResetCallback;
3086 
3087   {
3088    * Client-specified finalize callback (may be NULL). NOTE: Calls to
3089    * the client callbacks are interlocked with respect to each other:
3090    * there will never be simultaneous calls, with an identical
3091    * inUserData, on different threads.
3092    }
3093 		finalizeCallback: AudioContextInsertFinalizeCallback;
3094 	end;
3095 type
3096 	QTAudioContextInsertRegistryInfoRef = QTAudioContextInsertRegistryInfoPtr;
3097 {
3098  *  QTAudioContextRegisterInsert()
3099  *
3100  *  Summary:
3101  *    Register an audio insert with QuickTime
3102  *
3103  *  Discussion:
3104  *    This routine is called to register an application to tap into the
3105  *    audio playback stream, via callbacks during audio rendering. The
3106  *    inAudioContext parameter refers to a Movie Audio Context that has
3107  *    not yet been associated with a movie. Once the application has
3108  *    successfully registered its insert, it may associate a movie with
3109  *    this Audio Context by calling SetMovieAudioContext(). The
3110  *    application must then be prepared to handle callbacks, which may
3111  *    be executed on different threads, until the Finalize callback
3112  *    with a matching userData parameter, is received. The application
3113  *    may supply a NULL Finalize callback if it has its own logic for
3114  *    detecting when it may release its insert resources.
3115  *
3116  *  Parameters:
3117  *
3118  *    inAudioContext:
3119  *      A QTAudioContextRef that specifies the Audio Context to tap
3120  *      into.
3121  *
3122  *    inRegistryInfoSize:
3123  *      Size, in bytes, of the supplied
3124  *      QTAudioContextInsertRegistryInfo structure.
3125  *
3126  *    inRegistryInfo:
3127  *      Pointer to a QTAudioContextInsertRegistryInfo structure
3128  *      containing setup parameters for the Audio Context insert and
3129  *      callbacks.
3130  *
3131  *  Result:
3132  *    readErr Cannot register an insert on a movie containing protected
3133  *    data.
3134  *
3135  *  Availability:
3136  *    Mac OS X:         in version 10.5 (or QuickTime 7.2) and later in QuickTime.framework
3137  *    CarbonLib:        not available
3138  *    Non-Carbon CFM:   not available
3139  }
QTAudioContextRegisterInsertnull3140 function QTAudioContextRegisterInsert( inAudioContext: QTAudioContextRef; inRegistryInfoSize: UInt32; inRegistryInfo: QTAudioContextInsertRegistryInfoRef ): OSStatus; external name '_QTAudioContextRegisterInsert';
3141 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
3142 
3143 
3144 { Track-level Audio Context Insert property (kQTPropertyClass_Audio)}
3145 
3146 const
3147 {
3148    * kQTAudioPropertyID_RegisterAudioContextInsert: Value is
3149    * QTAudioContextInsertRegistryInfoRef  (Get/Set) Set on a Track to
3150    * register/unregister an Audio Context Insert for that specific
3151    * track.    When this property is read back (QTGetTrackProperty) the
3152    * channel layout pointers will will be NULL.  To unregister, supply
3153    * a NULL processDataCallback (in which case the rest of the registry
3154    * info will be ignored).
3155    }
3156 	kQTAudioPropertyID_RegisterAudioContextInsert = FourCharCode('regt'); { value is QTAudioContextInsertRegistryInfoRef. Get/Set.}
3157 
3158 
3159 {*****************************************
3160  * Using Audio/Visual contexts with movies
3161  ****************************************}
3162 {
3163  *  SetMovieVisualContext()
3164  *
3165  *  Availability:
3166  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
3167  *    CarbonLib:        not available
3168  *    Non-Carbon CFM:   not available
3169  }
SetMovieVisualContextnull3170 function SetMovieVisualContext( movie_: Movie; visualContext: QTVisualContextRef ): OSStatus; external name '_SetMovieVisualContext';
3171 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
3172 
3173 
3174 {
3175  *  GetMovieVisualContext()
3176  *
3177  *  Availability:
3178  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
3179  *    CarbonLib:        not available
3180  *    Non-Carbon CFM:   not available
3181  }
GetMovieVisualContextnull3182 function GetMovieVisualContext( movie_: Movie; var visualContext: QTVisualContextRef ): OSStatus; external name '_GetMovieVisualContext';
3183 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
3184 
3185 
3186 {
3187  *  SetMovieAudioContext()
3188  *
3189  *  Availability:
3190  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
3191  *    CarbonLib:        not available
3192  *    Non-Carbon CFM:   not available
3193  }
SetMovieAudioContextnull3194 function SetMovieAudioContext( movie_: Movie; audioContext: QTAudioContextRef ): OSStatus; external name '_SetMovieAudioContext';
3195 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
3196 
3197 
3198 {
3199  *  GetMovieAudioContext()
3200  *
3201  *  Availability:
3202  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
3203  *    CarbonLib:        not available
3204  *    Non-Carbon CFM:   not available
3205  }
GetMovieAudioContextnull3206 function GetMovieAudioContext( movie_: Movie; var audioContext: QTAudioContextRef ): OSStatus; external name '_GetMovieAudioContext';
3207 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
3208 
3209 
3210 {************************
3211 * calls for getting/saving movies
3212 *************************}
3213 {* Properties for NewMovieFromProperties }
3214 const
3215 	kQTPropertyClass_DataLocation = FourCharCode('dloc');
3216 	kQTDataLocationPropertyID_DataReference = FourCharCode('dref'); { DataReferenceRecord (for semantics of NewMovieFromDataRef)}
3217 	kQTDataLocationPropertyID_CFStringNativePath = FourCharCode('cfnp');
3218 	kQTDataLocationPropertyID_CFStringPosixPath = FourCharCode('cfpp');
3219 	kQTDataLocationPropertyID_CFStringHFSPath = FourCharCode('cfhp');
3220 	kQTDataLocationPropertyID_CFStringWindowsPath = FourCharCode('cfwp');
3221 	kQTDataLocationPropertyID_CFURL = FourCharCode('cfur');
3222 	kQTDataLocationPropertyID_QTDataHandler = FourCharCode('qtdh'); { for semantics of NewMovieFromStorageOffset}
3223 	kQTDataLocationPropertyID_Scrap = FourCharCode('scrp');
3224 	kQTDataLocationPropertyID_LegacyMovieResourceHandle = FourCharCode('rezh'); { QTNewMovieUserProcInfo * (for semantics of NewMovieFromHandle)}
3225 	kQTDataLocationPropertyID_MovieUserProc = FourCharCode('uspr'); { for semantics of NewMovieFromUserProc}
3226 	kQTDataLocationPropertyID_ResourceFork = FourCharCode('rfrk'); { for semantics of NewMovieFromFile}
3227 	kQTDataLocationPropertyID_DataFork = FourCharCode('dfrk'); { for semantics of NewMovieFromDataFork64}
3228 	kQTPropertyClass_Context = FourCharCode('ctxt'); { Media Contexts}
3229 	kQTContextPropertyID_AudioContext = FourCharCode('audi');
3230 	kQTContextPropertyID_VisualContext = FourCharCode('visu');
3231 	kQTPropertyClass_MovieResourceLocator = FourCharCode('rloc');
3232 	kQTMovieResourceLocatorPropertyID_LegacyResID = FourCharCode('rezi'); { (input/result property)}
3233 	kQTMovieResourceLocatorPropertyID_LegacyResName = FourCharCode('rezn'); { (result property)}
3234 	kQTMovieResourceLocatorPropertyID_FileOffset = FourCharCode('foff'); { NewMovieFromDataFork[64]}
3235 	kQTMovieResourceLocatorPropertyID_Callback = FourCharCode('calb'); { NewMovieFromUserProc(getProc,refcon)}
3236                                         { Uses kQTMovieDefaultDataRefPropertyID for default dataref}
3237 	kQTPropertyClass_MovieInstantiation = FourCharCode('mins');
3238 	kQTMovieInstantiationPropertyID_DontResolveDataRefs = FourCharCode('rdrn');
3239 	kQTMovieInstantiationPropertyID_DontAskUnresolvedDataRefs = FourCharCode('aurn');
3240 	kQTMovieInstantiationPropertyID_DontAutoAlternates = FourCharCode('aaln');
3241 	kQTMovieInstantiationPropertyID_DontUpdateForeBackPointers = FourCharCode('fbpn');
3242 	kQTMovieInstantiationPropertyID_AsyncOK = FourCharCode('asok');
3243 	kQTMovieInstantiationPropertyID_IdleImportOK = FourCharCode('imok');
3244 	kQTMovieInstantiationPropertyID_DontAutoUpdateClock = FourCharCode('aucl');
3245 	kQTMovieInstantiationPropertyID_ResultDataLocationChanged = FourCharCode('dlch'); { (result property)}
3246 	kQTMovieInstantiationPropertyID_AllowMediaOptimization = FourCharCode('amop');
3247 	kQTPropertyClass_NewMovieProperty = FourCharCode('mprp');
3248 	kQTNewMoviePropertyID_DefaultDataRef = FourCharCode('ddrf'); { DataReferenceRecord}
3249 	kQTNewMoviePropertyID_Active = FourCharCode('actv');
3250 	kQTNewMoviePropertyID_DontInteractWithUser = FourCharCode('intn');
3251 
3252 
3253 {* Property value for kQTDataLocationPropertyID_MovieUserProc }
3254 type
3255 	QTNewMovieUserProcRecord = record
3256 		getMovieUserProc: GetMovieUPP;
3257 		getMovieUserProcRefcon: UnivPtr;
3258 		defaultDataRef: DataReferenceRecord;
3259 	end;
3260 {* Property structure for NewMovieFromProperties }
3261 type
3262 	QTNewMoviePropertyElement = record
3263 		propClass: QTPropertyClass;
3264 		propID: QTPropertyID;
3265 		propValueSize: ByteCount;
3266 		propValueAddress: QTPropertyValuePtr;
3267 		propStatus: OSStatus;
3268 	end;
3269 {
3270  *  NewMovieFromProperties()
3271  *
3272  *  Availability:
3273  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
3274  *    CarbonLib:        not available
3275  *    Non-Carbon CFM:   not available
3276  }
NewMovieFromPropertiesnull3277 function NewMovieFromProperties( inputPropertyCount: ItemCount; var inputProperties: QTNewMoviePropertyElement; outputPropertyCount: ItemCount; var outputProperties: QTNewMoviePropertyElement; var theMovie: Movie ): OSStatus; external name '_NewMovieFromProperties';
3278 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
3279 
3280 
3281 {
3282  *  NewMovie()
3283  *
3284  *  Availability:
3285  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3286  *    CarbonLib:        in CarbonLib 1.0 and later
3287  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3288  *    Windows:          in qtmlClient.lib 3.0 and later
3289  }
NewMovienull3290 function NewMovie( flags: SIGNEDLONG ): Movie; external name '_NewMovie';
3291 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3292 
3293 
3294 {
3295  *  PutMovieIntoHandle()
3296  *
3297  *  Availability:
3298  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3299  *    CarbonLib:        in CarbonLib 1.0 and later
3300  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3301  *    Windows:          in qtmlClient.lib 3.0 and later
3302  }
PutMovieIntoHandlenull3303 function PutMovieIntoHandle( theMovie: Movie; publicMovie: Handle ): OSErr; external name '_PutMovieIntoHandle';
3304 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3305 
3306 
3307 {
3308  *  PutMovieIntoDataFork()
3309  *
3310  *  Availability:
3311  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3312  *    CarbonLib:        in CarbonLib 1.0 and later
3313  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3314  *    Windows:          in qtmlClient.lib 3.0 and later
3315  }
PutMovieIntoDataForknull3316 function PutMovieIntoDataFork( theMovie: Movie; fRefNum: SInt16; offset: SIGNEDLONG; maxSize: SIGNEDLONG ): OSErr; external name '_PutMovieIntoDataFork';
3317 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3318 
3319 
3320 {
3321  *  PutMovieIntoDataFork64()
3322  *
3323  *  Availability:
3324  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3325  *    CarbonLib:        in CarbonLib 1.0.2 and later
3326  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
3327  *    Windows:          in qtmlClient.lib 4.0 and later
3328  }
PutMovieIntoDataFork64null3329 function PutMovieIntoDataFork64( theMovie: Movie; fRefNum: SIGNEDLONG; const (*var*) offset: wide; maxSize: UNSIGNEDLONG ): OSErr; external name '_PutMovieIntoDataFork64';
3330 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3331 
3332 
3333 {
3334  *  PutMovieIntoStorage()
3335  *
3336  *  Availability:
3337  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
3338  *    CarbonLib:        in CarbonLib 1.6 and later
3339  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
3340  *    Windows:          in qtmlClient.lib 6.0 and later
3341  }
PutMovieIntoStoragenull3342 function PutMovieIntoStorage( theMovie: Movie; dh: DataHandler; const (*var*) offset: wide; maxSize: UNSIGNEDLONG ): OSErr; external name '_PutMovieIntoStorage';
3343 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
3344 
3345 
3346 {
3347  *  PutMovieForDataRefIntoHandle()
3348  *
3349  *  Availability:
3350  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
3351  *    CarbonLib:        in CarbonLib 1.6 and later
3352  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
3353  *    Windows:          in qtmlClient.lib 6.0 and later
3354  }
PutMovieForDataRefIntoHandlenull3355 function PutMovieForDataRefIntoHandle( theMovie: Movie; dataRef: Handle; dataRefType: OSType; publicMovie: Handle ): OSErr; external name '_PutMovieForDataRefIntoHandle';
3356 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
3357 
3358 
3359 {
3360  *  DisposeMovie()
3361  *
3362  *  Availability:
3363  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3364  *    CarbonLib:        in CarbonLib 1.0 and later
3365  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3366  *    Windows:          in qtmlClient.lib 3.0 and later
3367  }
3368 procedure DisposeMovie( theMovie: Movie ); external name '_DisposeMovie';
3369 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3370 
3371 
3372 {************************
3373 * Movie State Routines
3374 *************************}
3375 {
3376  *  GetMovieCreationTime()
3377  *
3378  *  Availability:
3379  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3380  *    CarbonLib:        in CarbonLib 1.0 and later
3381  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3382  *    Windows:          in qtmlClient.lib 3.0 and later
3383  }
GetMovieCreationTimenull3384 function GetMovieCreationTime( theMovie: Movie ): UNSIGNEDLONG; external name '_GetMovieCreationTime';
3385 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3386 
3387 
3388 {
3389  *  GetMovieModificationTime()
3390  *
3391  *  Availability:
3392  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3393  *    CarbonLib:        in CarbonLib 1.0 and later
3394  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3395  *    Windows:          in qtmlClient.lib 3.0 and later
3396  }
GetMovieModificationTimenull3397 function GetMovieModificationTime( theMovie: Movie ): UNSIGNEDLONG; external name '_GetMovieModificationTime';
3398 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3399 
3400 
3401 {
3402  *  GetMovieTimeScale()
3403  *
3404  *  Availability:
3405  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3406  *    CarbonLib:        in CarbonLib 1.0 and later
3407  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3408  *    Windows:          in qtmlClient.lib 3.0 and later
3409  }
GetMovieTimeScalenull3410 function GetMovieTimeScale( theMovie: Movie ): TimeScale; external name '_GetMovieTimeScale';
3411 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3412 
3413 
3414 {
3415  *  SetMovieTimeScale()
3416  *
3417  *  Availability:
3418  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3419  *    CarbonLib:        in CarbonLib 1.0 and later
3420  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3421  *    Windows:          in qtmlClient.lib 3.0 and later
3422  }
3423 procedure SetMovieTimeScale( theMovie: Movie; timeScale_: TimeScale ); external name '_SetMovieTimeScale';
3424 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3425 
3426 
3427 {
3428  *  GetMovieDuration()
3429  *
3430  *  Availability:
3431  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3432  *    CarbonLib:        in CarbonLib 1.0 and later
3433  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3434  *    Windows:          in qtmlClient.lib 3.0 and later
3435  }
GetMovieDurationnull3436 function GetMovieDuration( theMovie: Movie ): TimeValue; external name '_GetMovieDuration';
3437 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3438 
3439 
3440 {
3441  *  GetMovieRate()
3442  *
3443  *  Availability:
3444  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3445  *    CarbonLib:        in CarbonLib 1.0 and later
3446  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3447  *    Windows:          in qtmlClient.lib 3.0 and later
3448  }
GetMovieRatenull3449 function GetMovieRate( theMovie: Movie ): Fixed; external name '_GetMovieRate';
3450 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3451 
3452 
3453 {
3454  *  SetMovieRate()
3455  *
3456  *  Availability:
3457  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3458  *    CarbonLib:        in CarbonLib 1.0 and later
3459  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3460  *    Windows:          in qtmlClient.lib 3.0 and later
3461  }
3462 procedure SetMovieRate( theMovie: Movie; rate: Fixed ); external name '_SetMovieRate';
3463 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3464 
3465 
3466 {
3467  *  GetMoviePreferredRate()
3468  *
3469  *  Availability:
3470  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3471  *    CarbonLib:        in CarbonLib 1.0 and later
3472  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3473  *    Windows:          in qtmlClient.lib 3.0 and later
3474  }
GetMoviePreferredRatenull3475 function GetMoviePreferredRate( theMovie: Movie ): Fixed; external name '_GetMoviePreferredRate';
3476 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3477 
3478 
3479 {
3480  *  SetMoviePreferredRate()
3481  *
3482  *  Availability:
3483  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3484  *    CarbonLib:        in CarbonLib 1.0 and later
3485  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3486  *    Windows:          in qtmlClient.lib 3.0 and later
3487  }
3488 procedure SetMoviePreferredRate( theMovie: Movie; rate: Fixed ); external name '_SetMoviePreferredRate';
3489 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3490 
3491 
3492 {
3493  *  GetMovieMatrix()
3494  *
3495  *  Availability:
3496  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3497  *    CarbonLib:        in CarbonLib 1.0 and later
3498  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3499  *    Windows:          in qtmlClient.lib 3.0 and later
3500  }
3501 procedure GetMovieMatrix( theMovie: Movie; var matrix: MatrixRecord ); external name '_GetMovieMatrix';
3502 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3503 
3504 
3505 {
3506  *  SetMovieMatrix()
3507  *
3508  *  Availability:
3509  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3510  *    CarbonLib:        in CarbonLib 1.0 and later
3511  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3512  *    Windows:          in qtmlClient.lib 3.0 and later
3513  }
3514 procedure SetMovieMatrix( theMovie: Movie; const (*var*) matrix: MatrixRecord ); external name '_SetMovieMatrix';
3515 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3516 
3517 
3518 {
3519  *  GetMoviePreviewTime()
3520  *
3521  *  Availability:
3522  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3523  *    CarbonLib:        in CarbonLib 1.0 and later
3524  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3525  *    Windows:          in qtmlClient.lib 3.0 and later
3526  }
3527 procedure GetMoviePreviewTime( theMovie: Movie; var previewTime: TimeValue; var previewDuration: TimeValue ); external name '_GetMoviePreviewTime';
3528 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3529 
3530 
3531 {
3532  *  SetMoviePreviewTime()
3533  *
3534  *  Availability:
3535  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3536  *    CarbonLib:        in CarbonLib 1.0 and later
3537  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3538  *    Windows:          in qtmlClient.lib 3.0 and later
3539  }
3540 procedure SetMoviePreviewTime( theMovie: Movie; previewTime: TimeValue; previewDuration: TimeValue ); external name '_SetMoviePreviewTime';
3541 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3542 
3543 
3544 {
3545  *  GetMoviePosterTime()
3546  *
3547  *  Availability:
3548  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3549  *    CarbonLib:        in CarbonLib 1.0 and later
3550  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3551  *    Windows:          in qtmlClient.lib 3.0 and later
3552  }
GetMoviePosterTimenull3553 function GetMoviePosterTime( theMovie: Movie ): TimeValue; external name '_GetMoviePosterTime';
3554 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3555 
3556 
3557 {
3558  *  SetMoviePosterTime()
3559  *
3560  *  Availability:
3561  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3562  *    CarbonLib:        in CarbonLib 1.0 and later
3563  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3564  *    Windows:          in qtmlClient.lib 3.0 and later
3565  }
3566 procedure SetMoviePosterTime( theMovie: Movie; posterTime: TimeValue ); external name '_SetMoviePosterTime';
3567 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3568 
3569 
3570 {
3571  *  GetMovieSelection()
3572  *
3573  *  Availability:
3574  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3575  *    CarbonLib:        in CarbonLib 1.0 and later
3576  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3577  *    Windows:          in qtmlClient.lib 3.0 and later
3578  }
3579 procedure GetMovieSelection( theMovie: Movie; var selectionTime: TimeValue; var selectionDuration: TimeValue ); external name '_GetMovieSelection';
3580 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3581 
3582 
3583 {
3584  *  SetMovieSelection()
3585  *
3586  *  Availability:
3587  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3588  *    CarbonLib:        in CarbonLib 1.0 and later
3589  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3590  *    Windows:          in qtmlClient.lib 3.0 and later
3591  }
3592 procedure SetMovieSelection( theMovie: Movie; selectionTime: TimeValue; selectionDuration: TimeValue ); external name '_SetMovieSelection';
3593 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3594 
3595 
3596 {
3597  *  SetMovieActiveSegment()
3598  *
3599  *  Availability:
3600  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3601  *    CarbonLib:        in CarbonLib 1.0 and later
3602  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3603  *    Windows:          in qtmlClient.lib 3.0 and later
3604  }
3605 procedure SetMovieActiveSegment( theMovie: Movie; startTime: TimeValue; duration: TimeValue ); external name '_SetMovieActiveSegment';
3606 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3607 
3608 
3609 {
3610  *  GetMovieActiveSegment()
3611  *
3612  *  Availability:
3613  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3614  *    CarbonLib:        in CarbonLib 1.0 and later
3615  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3616  *    Windows:          in qtmlClient.lib 3.0 and later
3617  }
3618 procedure GetMovieActiveSegment( theMovie: Movie; var startTime: TimeValue; var duration: TimeValue ); external name '_GetMovieActiveSegment';
3619 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3620 
3621 
3622 {
3623  *  GetMovieTime()
3624  *
3625  *  Availability:
3626  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3627  *    CarbonLib:        in CarbonLib 1.0 and later
3628  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3629  *    Windows:          in qtmlClient.lib 3.0 and later
3630  }
GetMovieTimenull3631 function GetMovieTime( theMovie: Movie; var currentTime: TimeRecord ): TimeValue; external name '_GetMovieTime';
3632 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3633 
3634 
3635 {
3636  *  SetMovieTime()
3637  *
3638  *  Availability:
3639  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3640  *    CarbonLib:        in CarbonLib 1.0 and later
3641  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3642  *    Windows:          in qtmlClient.lib 3.0 and later
3643  }
3644 procedure SetMovieTime( theMovie: Movie; const (*var*) newtime: TimeRecord ); external name '_SetMovieTime';
3645 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3646 
3647 
3648 {
3649  *  SetMovieTimeValue()
3650  *
3651  *  Availability:
3652  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3653  *    CarbonLib:        in CarbonLib 1.0 and later
3654  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3655  *    Windows:          in qtmlClient.lib 3.0 and later
3656  }
3657 procedure SetMovieTimeValue( theMovie: Movie; newtime: TimeValue ); external name '_SetMovieTimeValue';
3658 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3659 
3660 
3661 {
3662  *  GetMovieUserData()
3663  *
3664  *  Availability:
3665  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3666  *    CarbonLib:        in CarbonLib 1.0 and later
3667  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3668  *    Windows:          in qtmlClient.lib 3.0 and later
3669  }
GetMovieUserDatanull3670 function GetMovieUserData( theMovie: Movie ): UserData; external name '_GetMovieUserData';
3671 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3672 
3673 
3674 {
3675  *  QTGetTimeUntilNextTask()
3676  *
3677  *  Availability:
3678  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
3679  *    CarbonLib:        in CarbonLib 1.6 and later
3680  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
3681  *    Windows:          in qtmlClient.lib 6.0 and later
3682  }
QTGetTimeUntilNextTasknull3683 function QTGetTimeUntilNextTask( var duration: SIGNEDLONG; scale: SIGNEDLONG ): OSErr; external name '_QTGetTimeUntilNextTask';
3684 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
3685 
3686 
3687 {
3688  *  QTInstallNextTaskNeededSoonerCallback()
3689  *
3690  *  Availability:
3691  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
3692  *    CarbonLib:        in CarbonLib 1.6 and later
3693  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
3694  *    Windows:          in qtmlClient.lib 6.0 and later
3695  }
QTInstallNextTaskNeededSoonerCallbacknull3696 function QTInstallNextTaskNeededSoonerCallback( callbackProc: QTNextTaskNeededSoonerCallbackUPP; scale: TimeScale; flags: UNSIGNEDLONG; refcon: UnivPtr ): OSErr; external name '_QTInstallNextTaskNeededSoonerCallback';
3697 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
3698 
3699 
3700 {
3701  *  QTUninstallNextTaskNeededSoonerCallback()
3702  *
3703  *  Availability:
3704  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
3705  *    CarbonLib:        in CarbonLib 1.6 and later
3706  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
3707  *    Windows:          in qtmlClient.lib 6.0 and later
3708  }
QTUninstallNextTaskNeededSoonerCallbacknull3709 function QTUninstallNextTaskNeededSoonerCallback( callbackProc: QTNextTaskNeededSoonerCallbackUPP; refcon: UnivPtr ): OSErr; external name '_QTUninstallNextTaskNeededSoonerCallback';
3710 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
3711 
3712 
3713 {
3714  *  GetMovieRateChangeConstraints()
3715  *
3716  *  Availability:
3717  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
3718  *    CarbonLib:        not available
3719  *    Non-Carbon CFM:   not available
3720  *    Windows:          in qtmlClient.lib 6.5 and later
3721  }
GetMovieRateChangeConstraintsnull3722 function GetMovieRateChangeConstraints( theMovie: Movie; var minimumDelay: TimeRecord; var maximumDelay: TimeRecord ): OSErr; external name '_GetMovieRateChangeConstraints';
3723 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
3724 
3725 
3726 {************************
3727 * Track/Media finding routines
3728 *************************}
3729 {
3730  *  GetMovieTrackCount()
3731  *
3732  *  Availability:
3733  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3734  *    CarbonLib:        in CarbonLib 1.0 and later
3735  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3736  *    Windows:          in qtmlClient.lib 3.0 and later
3737  }
GetMovieTrackCountnull3738 function GetMovieTrackCount( theMovie: Movie ): SIGNEDLONG; external name '_GetMovieTrackCount';
3739 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3740 
3741 
3742 {
3743  *  GetMovieTrack()
3744  *
3745  *  Availability:
3746  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3747  *    CarbonLib:        in CarbonLib 1.0 and later
3748  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3749  *    Windows:          in qtmlClient.lib 3.0 and later
3750  }
GetMovieTracknull3751 function GetMovieTrack( theMovie: Movie; trackID: SIGNEDLONG ): Track; external name '_GetMovieTrack';
3752 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3753 
3754 
3755 {
3756  *  GetMovieIndTrack()
3757  *
3758  *  Availability:
3759  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3760  *    CarbonLib:        in CarbonLib 1.0 and later
3761  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3762  *    Windows:          in qtmlClient.lib 3.0 and later
3763  }
GetMovieIndTracknull3764 function GetMovieIndTrack( theMovie: Movie; index: SIGNEDLONG ): Track; external name '_GetMovieIndTrack';
3765 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3766 
3767 
3768 {
3769  *  GetMovieIndTrackType()
3770  *
3771  *  Availability:
3772  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3773  *    CarbonLib:        in CarbonLib 1.0 and later
3774  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3775  *    Windows:          in qtmlClient.lib 3.0 and later
3776  }
GetMovieIndTrackTypenull3777 function GetMovieIndTrackType( theMovie: Movie; index: SIGNEDLONG; trackType: OSType; flags: SIGNEDLONG ): Track; external name '_GetMovieIndTrackType';
3778 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3779 
3780 
3781 {
3782  *  GetTrackID()
3783  *
3784  *  Availability:
3785  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3786  *    CarbonLib:        in CarbonLib 1.0 and later
3787  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3788  *    Windows:          in qtmlClient.lib 3.0 and later
3789  }
GetTrackIDnull3790 function GetTrackID( theTrack: Track ): SIGNEDLONG; external name '_GetTrackID';
3791 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3792 
3793 
3794 {
3795  *  GetTrackMovie()
3796  *
3797  *  Availability:
3798  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3799  *    CarbonLib:        in CarbonLib 1.0 and later
3800  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3801  *    Windows:          in qtmlClient.lib 3.0 and later
3802  }
GetTrackMovienull3803 function GetTrackMovie( theTrack: Track ): Movie; external name '_GetTrackMovie';
3804 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3805 
3806 
3807 {************************
3808 * Track creation routines
3809 *************************}
3810 {
3811  *  NewMovieTrack()
3812  *
3813  *  Availability:
3814  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3815  *    CarbonLib:        in CarbonLib 1.0 and later
3816  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3817  *    Windows:          in qtmlClient.lib 3.0 and later
3818  }
NewMovieTracknull3819 function NewMovieTrack( theMovie: Movie; width: Fixed; height: Fixed; trackVolume: SInt16 ): Track; external name '_NewMovieTrack';
3820 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3821 
3822 
3823 {
3824  *  DisposeMovieTrack()
3825  *
3826  *  Availability:
3827  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3828  *    CarbonLib:        in CarbonLib 1.0 and later
3829  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3830  *    Windows:          in qtmlClient.lib 3.0 and later
3831  }
3832 procedure DisposeMovieTrack( theTrack: Track ); external name '_DisposeMovieTrack';
3833 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3834 
3835 
3836 {************************
3837 * Track State routines
3838 *************************}
3839 {
3840  *  GetTrackCreationTime()
3841  *
3842  *  Availability:
3843  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3844  *    CarbonLib:        in CarbonLib 1.0 and later
3845  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3846  *    Windows:          in qtmlClient.lib 3.0 and later
3847  }
GetTrackCreationTimenull3848 function GetTrackCreationTime( theTrack: Track ): UNSIGNEDLONG; external name '_GetTrackCreationTime';
3849 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3850 
3851 
3852 {
3853  *  GetTrackModificationTime()
3854  *
3855  *  Availability:
3856  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3857  *    CarbonLib:        in CarbonLib 1.0 and later
3858  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3859  *    Windows:          in qtmlClient.lib 3.0 and later
3860  }
GetTrackModificationTimenull3861 function GetTrackModificationTime( theTrack: Track ): UNSIGNEDLONG; external name '_GetTrackModificationTime';
3862 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3863 
3864 
3865 {
3866  *  GetTrackEnabled()
3867  *
3868  *  Availability:
3869  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3870  *    CarbonLib:        in CarbonLib 1.0 and later
3871  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3872  *    Windows:          in qtmlClient.lib 3.0 and later
3873  }
GetTrackEnablednull3874 function GetTrackEnabled( theTrack: Track ): Boolean; external name '_GetTrackEnabled';
3875 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3876 
3877 
3878 {
3879  *  SetTrackEnabled()
3880  *
3881  *  Availability:
3882  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3883  *    CarbonLib:        in CarbonLib 1.0 and later
3884  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3885  *    Windows:          in qtmlClient.lib 3.0 and later
3886  }
3887 procedure SetTrackEnabled( theTrack: Track; isEnabled: Boolean ); external name '_SetTrackEnabled';
3888 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3889 
3890 
3891 {
3892  *  GetTrackUsage()
3893  *
3894  *  Availability:
3895  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3896  *    CarbonLib:        in CarbonLib 1.0 and later
3897  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3898  *    Windows:          in qtmlClient.lib 3.0 and later
3899  }
GetTrackUsagenull3900 function GetTrackUsage( theTrack: Track ): SIGNEDLONG; external name '_GetTrackUsage';
3901 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3902 
3903 
3904 {
3905  *  SetTrackUsage()
3906  *
3907  *  Availability:
3908  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3909  *    CarbonLib:        in CarbonLib 1.0 and later
3910  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3911  *    Windows:          in qtmlClient.lib 3.0 and later
3912  }
3913 procedure SetTrackUsage( theTrack: Track; usage: SIGNEDLONG ); external name '_SetTrackUsage';
3914 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3915 
3916 
3917 {
3918  *  GetTrackDuration()
3919  *
3920  *  Availability:
3921  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3922  *    CarbonLib:        in CarbonLib 1.0 and later
3923  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3924  *    Windows:          in qtmlClient.lib 3.0 and later
3925  }
GetTrackDurationnull3926 function GetTrackDuration( theTrack: Track ): TimeValue; external name '_GetTrackDuration';
3927 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3928 
3929 
3930 {
3931  *  GetTrackOffset()
3932  *
3933  *  Availability:
3934  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3935  *    CarbonLib:        in CarbonLib 1.0 and later
3936  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3937  *    Windows:          in qtmlClient.lib 3.0 and later
3938  }
GetTrackOffsetnull3939 function GetTrackOffset( theTrack: Track ): TimeValue; external name '_GetTrackOffset';
3940 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3941 
3942 
3943 {
3944  *  SetTrackOffset()
3945  *
3946  *  Availability:
3947  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3948  *    CarbonLib:        in CarbonLib 1.0 and later
3949  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3950  *    Windows:          in qtmlClient.lib 3.0 and later
3951  }
3952 procedure SetTrackOffset( theTrack: Track; movieOffsetTime: TimeValue ); external name '_SetTrackOffset';
3953 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3954 
3955 
3956 {
3957  *  GetTrackLayer()
3958  *
3959  *  Availability:
3960  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3961  *    CarbonLib:        in CarbonLib 1.0 and later
3962  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3963  *    Windows:          in qtmlClient.lib 3.0 and later
3964  }
GetTrackLayernull3965 function GetTrackLayer( theTrack: Track ): SInt16; external name '_GetTrackLayer';
3966 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3967 
3968 
3969 {
3970  *  SetTrackLayer()
3971  *
3972  *  Availability:
3973  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3974  *    CarbonLib:        in CarbonLib 1.0 and later
3975  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3976  *    Windows:          in qtmlClient.lib 3.0 and later
3977  }
3978 procedure SetTrackLayer( theTrack: Track; layer: SInt16 ); external name '_SetTrackLayer';
3979 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3980 
3981 
3982 {
3983  *  GetTrackAlternate()
3984  *
3985  *  Availability:
3986  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
3987  *    CarbonLib:        in CarbonLib 1.0 and later
3988  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
3989  *    Windows:          in qtmlClient.lib 3.0 and later
3990  }
GetTrackAlternatenull3991 function GetTrackAlternate( theTrack: Track ): Track; external name '_GetTrackAlternate';
3992 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
3993 
3994 
3995 {
3996  *  SetTrackAlternate()
3997  *
3998  *  Availability:
3999  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4000  *    CarbonLib:        in CarbonLib 1.0 and later
4001  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4002  *    Windows:          in qtmlClient.lib 3.0 and later
4003  }
4004 procedure SetTrackAlternate( theTrack: Track; alternateT: Track ); external name '_SetTrackAlternate';
4005 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4006 
4007 
4008 {
4009  *  SetAutoTrackAlternatesEnabled()
4010  *
4011  *  Availability:
4012  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4013  *    CarbonLib:        in CarbonLib 1.0 and later
4014  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4015  *    Windows:          in qtmlClient.lib 3.0 and later
4016  }
4017 procedure SetAutoTrackAlternatesEnabled( theMovie: Movie; enable: Boolean ); external name '_SetAutoTrackAlternatesEnabled';
4018 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4019 
4020 
4021 {
4022  *  SelectMovieAlternates()
4023  *
4024  *  Availability:
4025  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4026  *    CarbonLib:        in CarbonLib 1.0 and later
4027  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4028  *    Windows:          in qtmlClient.lib 3.0 and later
4029  }
4030 procedure SelectMovieAlternates( theMovie: Movie ); external name '_SelectMovieAlternates';
4031 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4032 
4033 
4034 {
4035  *  GetTrackMatrix()
4036  *
4037  *  Availability:
4038  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4039  *    CarbonLib:        in CarbonLib 1.0 and later
4040  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4041  *    Windows:          in qtmlClient.lib 3.0 and later
4042  }
4043 procedure GetTrackMatrix( theTrack: Track; var matrix: MatrixRecord ); external name '_GetTrackMatrix';
4044 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4045 
4046 
4047 {
4048  *  SetTrackMatrix()
4049  *
4050  *  Availability:
4051  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4052  *    CarbonLib:        in CarbonLib 1.0 and later
4053  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4054  *    Windows:          in qtmlClient.lib 3.0 and later
4055  }
4056 procedure SetTrackMatrix( theTrack: Track; const (*var*) matrix: MatrixRecord ); external name '_SetTrackMatrix';
4057 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4058 
4059 
4060 {
4061  *  GetTrackDimensions()
4062  *
4063  *  Availability:
4064  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4065  *    CarbonLib:        in CarbonLib 1.0 and later
4066  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4067  *    Windows:          in qtmlClient.lib 3.0 and later
4068  }
4069 procedure GetTrackDimensions( theTrack: Track; var width: Fixed; var height: Fixed ); external name '_GetTrackDimensions';
4070 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4071 
4072 
4073 {
4074  *  SetTrackDimensions()
4075  *
4076  *  Availability:
4077  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4078  *    CarbonLib:        in CarbonLib 1.0 and later
4079  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4080  *    Windows:          in qtmlClient.lib 3.0 and later
4081  }
4082 procedure SetTrackDimensions( theTrack: Track; width: Fixed; height: Fixed ); external name '_SetTrackDimensions';
4083 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4084 
4085 
4086 {
4087  *  GetTrackUserData()
4088  *
4089  *  Availability:
4090  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4091  *    CarbonLib:        in CarbonLib 1.0 and later
4092  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4093  *    Windows:          in qtmlClient.lib 3.0 and later
4094  }
GetTrackUserDatanull4095 function GetTrackUserData( theTrack: Track ): UserData; external name '_GetTrackUserData';
4096 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4097 
4098 
4099 {
4100  *  GetTrackDisplayMatrix()
4101  *
4102  *  Availability:
4103  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4104  *    CarbonLib:        in CarbonLib 1.0 and later
4105  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4106  *    Windows:          in qtmlClient.lib 3.0 and later
4107  }
GetTrackDisplayMatrixnull4108 function GetTrackDisplayMatrix( theTrack: Track; var matrix: MatrixRecord ): OSErr; external name '_GetTrackDisplayMatrix';
4109 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4110 
4111 
4112 {************************
4113 * get Media routines
4114 *************************}
4115 {
4116  *  NewTrackMedia()
4117  *
4118  *  Availability:
4119  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4120  *    CarbonLib:        in CarbonLib 1.0 and later
4121  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4122  *    Windows:          in qtmlClient.lib 3.0 and later
4123  }
NewTrackMedianull4124 function NewTrackMedia( theTrack: Track; mediaType: OSType; timeScale_: TimeScale; dataRef: Handle; dataRefType: OSType ): Media; external name '_NewTrackMedia';
4125 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4126 
4127 
4128 {
4129  *  DisposeTrackMedia()
4130  *
4131  *  Availability:
4132  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4133  *    CarbonLib:        in CarbonLib 1.0 and later
4134  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4135  *    Windows:          in qtmlClient.lib 3.0 and later
4136  }
4137 procedure DisposeTrackMedia( theMedia: Media ); external name '_DisposeTrackMedia';
4138 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4139 
4140 
4141 {
4142  *  GetTrackMedia()
4143  *
4144  *  Availability:
4145  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4146  *    CarbonLib:        in CarbonLib 1.0 and later
4147  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4148  *    Windows:          in qtmlClient.lib 3.0 and later
4149  }
GetTrackMedianull4150 function GetTrackMedia( theTrack: Track ): Media; external name '_GetTrackMedia';
4151 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4152 
4153 
4154 {
4155  *  GetMediaTrack()
4156  *
4157  *  Availability:
4158  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4159  *    CarbonLib:        in CarbonLib 1.0 and later
4160  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4161  *    Windows:          in qtmlClient.lib 3.0 and later
4162  }
GetMediaTracknull4163 function GetMediaTrack( theMedia: Media ): Track; external name '_GetMediaTrack';
4164 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4165 
4166 
4167 {************************
4168 * Media State routines
4169 *************************}
4170 {
4171  *  GetMediaCreationTime()
4172  *
4173  *  Availability:
4174  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4175  *    CarbonLib:        in CarbonLib 1.0 and later
4176  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4177  *    Windows:          in qtmlClient.lib 3.0 and later
4178  }
GetMediaCreationTimenull4179 function GetMediaCreationTime( theMedia: Media ): UNSIGNEDLONG; external name '_GetMediaCreationTime';
4180 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4181 
4182 
4183 {
4184  *  GetMediaModificationTime()
4185  *
4186  *  Availability:
4187  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4188  *    CarbonLib:        in CarbonLib 1.0 and later
4189  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4190  *    Windows:          in qtmlClient.lib 3.0 and later
4191  }
GetMediaModificationTimenull4192 function GetMediaModificationTime( theMedia: Media ): UNSIGNEDLONG; external name '_GetMediaModificationTime';
4193 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4194 
4195 
4196 {
4197  *  GetMediaTimeScale()
4198  *
4199  *  Availability:
4200  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4201  *    CarbonLib:        in CarbonLib 1.0 and later
4202  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4203  *    Windows:          in qtmlClient.lib 3.0 and later
4204  }
GetMediaTimeScalenull4205 function GetMediaTimeScale( theMedia: Media ): TimeScale; external name '_GetMediaTimeScale';
4206 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4207 
4208 
4209 {
4210  *  SetMediaTimeScale()
4211  *
4212  *  Availability:
4213  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4214  *    CarbonLib:        in CarbonLib 1.0 and later
4215  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4216  *    Windows:          in qtmlClient.lib 3.0 and later
4217  }
4218 procedure SetMediaTimeScale( theMedia: Media; timeScale_: TimeScale ); external name '_SetMediaTimeScale';
4219 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4220 
4221 
4222 {
4223  *  GetMediaDecodeDuration()
4224  *
4225  *  Summary:
4226  *    Returns the decode duration of a media.
4227  *
4228  *  Discussion:
4229  *    A media's decode duration is the sum of the decode durations of
4230  *    its samples.
4231  *
4232  *  Parameters:
4233  *
4234  *    theMedia:
4235  *      The media for this operation. Your application obtains this
4236  *      media identifier from such functions as NewTrackMedia and
4237  *      GetTrackMedia.
4238  *
4239  *  Availability:
4240  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4241  *    CarbonLib:        not available
4242  *    Non-Carbon CFM:   not available
4243  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4244  }
GetMediaDecodeDurationnull4245 function GetMediaDecodeDuration( theMedia: Media ): TimeValue64; external name '_GetMediaDecodeDuration';
4246 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4247 
4248 
4249 {
4250  *  GetMediaAdvanceDecodeTime()
4251  *
4252  *  Summary:
4253  *    Returns the advance decode time of a media.
4254  *
4255  *  Discussion:
4256  *    A media's advance decode time is the absolute value of the
4257  *    greatest-magnitude negative display offset of its samples, or
4258  *    zero if there are no samples with negative display offsets.
4259  *     This is the amount that the decode time axis must be adjusted
4260  *    ahead of the display time axis to ensure that no sample's
4261  *    adjusted decode time is later than its display time.
4262  *    For media without nonzero display offsets, the advance decode
4263  *    time is zero.
4264  *
4265  *  Parameters:
4266  *
4267  *    theMedia:
4268  *      The media for this operation. Your application obtains this
4269  *      media identifier from such functions as NewTrackMedia and
4270  *      GetTrackMedia.
4271  *
4272  *  Availability:
4273  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4274  *    CarbonLib:        not available
4275  *    Non-Carbon CFM:   not available
4276  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4277  }
GetMediaAdvanceDecodeTimenull4278 function GetMediaAdvanceDecodeTime( theMedia: Media ): TimeValue64; external name '_GetMediaAdvanceDecodeTime';
4279 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4280 
4281 
4282 {
4283  *  GetMediaDisplayDuration()
4284  *
4285  *  Summary:
4286  *    Returns the display duration of a media.
4287  *
4288  *  Discussion:
4289  *    A media's display duration is its display end time minus its
4290  *    display start time. For media without nonzero display offsets,
4291  *    the decode duration and display duration are the same, so
4292  *    GetMediaDisplayDuration and GetMediaDisplayDuration are
4293  *    equivalent to GetMediaDuration.
4294  *
4295  *  Parameters:
4296  *
4297  *    theMedia:
4298  *      The media for this operation. Your application obtains this
4299  *      media identifier from such functions as NewTrackMedia and
4300  *      GetTrackMedia.
4301  *
4302  *  Availability:
4303  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4304  *    CarbonLib:        not available
4305  *    Non-Carbon CFM:   not available
4306  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4307  }
GetMediaDisplayDurationnull4308 function GetMediaDisplayDuration( theMedia: Media ): TimeValue64; external name '_GetMediaDisplayDuration';
4309 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4310 
4311 
4312 {
4313  *  GetMediaDisplayStartTime()
4314  *
4315  *  Summary:
4316  *    Returns the display start time of a media.
4317  *
4318  *  Discussion:
4319  *    A media's display start time is the earliest display time of any
4320  *    of its samples. For media without nonzero display offsets, the
4321  *    display start time is always zero.
4322  *
4323  *  Parameters:
4324  *
4325  *    theMedia:
4326  *      The media for this operation. Your application obtains this
4327  *      media identifier from such functions as NewTrackMedia and
4328  *      GetTrackMedia.
4329  *
4330  *  Availability:
4331  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4332  *    CarbonLib:        not available
4333  *    Non-Carbon CFM:   not available
4334  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4335  }
GetMediaDisplayStartTimenull4336 function GetMediaDisplayStartTime( theMedia: Media ): TimeValue64; external name '_GetMediaDisplayStartTime';
4337 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4338 
4339 
4340 {
4341  *  GetMediaDisplayEndTime()
4342  *
4343  *  Summary:
4344  *    Returns the display end time of a media.
4345  *
4346  *  Discussion:
4347  *    A media's display end time is the sum of the display time and
4348  *    decode duration of the sample with the greatest display time. For
4349  *    media without nonzero display offsets, the display end time is
4350  *    the same as the media decode duration, which is the same as the
4351  *    media duration.
4352  *
4353  *  Parameters:
4354  *
4355  *    theMedia:
4356  *      The media for this operation. Your application obtains this
4357  *      media identifier from such functions as NewTrackMedia and
4358  *      GetTrackMedia.
4359  *
4360  *  Availability:
4361  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4362  *    CarbonLib:        not available
4363  *    Non-Carbon CFM:   not available
4364  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4365  }
GetMediaDisplayEndTimenull4366 function GetMediaDisplayEndTime( theMedia: Media ): TimeValue64; external name '_GetMediaDisplayEndTime';
4367 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4368 
4369 
4370 {
4371  *  GetMediaDuration()
4372  *
4373  *  Availability:
4374  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4375  *    CarbonLib:        in CarbonLib 1.0 and later
4376  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4377  *    Windows:          in qtmlClient.lib 3.0 and later
4378  }
GetMediaDurationnull4379 function GetMediaDuration( theMedia: Media ): TimeValue; external name '_GetMediaDuration';
4380 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4381 
4382 
4383 {
4384  *  GetMediaLanguage()
4385  *
4386  *  Availability:
4387  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4388  *    CarbonLib:        in CarbonLib 1.0 and later
4389  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4390  *    Windows:          in qtmlClient.lib 3.0 and later
4391  }
GetMediaLanguagenull4392 function GetMediaLanguage( theMedia: Media ): SInt16; external name '_GetMediaLanguage';
4393 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4394 
4395 
4396 {
4397  *  SetMediaLanguage()
4398  *
4399  *  Availability:
4400  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4401  *    CarbonLib:        in CarbonLib 1.0 and later
4402  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4403  *    Windows:          in qtmlClient.lib 3.0 and later
4404  }
4405 procedure SetMediaLanguage( theMedia: Media; language: SInt16 ); external name '_SetMediaLanguage';
4406 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4407 
4408 
4409 {
4410  *  GetMediaQuality()
4411  *
4412  *  Availability:
4413  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4414  *    CarbonLib:        in CarbonLib 1.0 and later
4415  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4416  *    Windows:          in qtmlClient.lib 3.0 and later
4417  }
GetMediaQualitynull4418 function GetMediaQuality( theMedia: Media ): SInt16; external name '_GetMediaQuality';
4419 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4420 
4421 
4422 {
4423  *  SetMediaQuality()
4424  *
4425  *  Availability:
4426  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4427  *    CarbonLib:        in CarbonLib 1.0 and later
4428  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4429  *    Windows:          in qtmlClient.lib 3.0 and later
4430  }
4431 procedure SetMediaQuality( theMedia: Media; quality: SInt16 ); external name '_SetMediaQuality';
4432 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4433 
4434 
4435 {
4436  *  GetMediaHandlerDescription()
4437  *
4438  *  Availability:
4439  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4440  *    CarbonLib:        in CarbonLib 1.0 and later
4441  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4442  *    Windows:          in qtmlClient.lib 3.0 and later
4443  }
4444 procedure GetMediaHandlerDescription( theMedia: Media; var mediaType: OSType; var creatorName: Str255; var creatorManufacturer: OSType ); external name '_GetMediaHandlerDescription';
4445 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4446 
4447 
4448 {
4449  *  GetMediaUserData()
4450  *
4451  *  Availability:
4452  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4453  *    CarbonLib:        in CarbonLib 1.0 and later
4454  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4455  *    Windows:          in qtmlClient.lib 3.0 and later
4456  }
GetMediaUserDatanull4457 function GetMediaUserData( theMedia: Media ): UserData; external name '_GetMediaUserData';
4458 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4459 
4460 
4461 {
4462  *  GetMediaInputMap()
4463  *
4464  *  Availability:
4465  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4466  *    CarbonLib:        in CarbonLib 1.0 and later
4467  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4468  *    Windows:          in qtmlClient.lib 3.0 and later
4469  }
GetMediaInputMapnull4470 function GetMediaInputMap( theMedia: Media; var inputMap: QTAtomContainer ): OSErr; external name '_GetMediaInputMap';
4471 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4472 
4473 
4474 {
4475  *  SetMediaInputMap()
4476  *
4477  *  Availability:
4478  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4479  *    CarbonLib:        in CarbonLib 1.0 and later
4480  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4481  *    Windows:          in qtmlClient.lib 3.0 and later
4482  }
SetMediaInputMapnull4483 function SetMediaInputMap( theMedia: Media; inputMap: QTAtomContainer ): OSErr; external name '_SetMediaInputMap';
4484 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4485 
4486 
4487 {************************
4488 * Media Handler routines
4489 *************************}
4490 {
4491  *  GetMediaHandler()
4492  *
4493  *  Availability:
4494  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4495  *    CarbonLib:        in CarbonLib 1.0 and later
4496  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4497  *    Windows:          in qtmlClient.lib 3.0 and later
4498  }
GetMediaHandlernull4499 function GetMediaHandler( theMedia: Media ): MediaHandler; external name '_GetMediaHandler';
4500 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4501 
4502 
4503 {
4504  *  SetMediaHandler()
4505  *
4506  *  Availability:
4507  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4508  *    CarbonLib:        in CarbonLib 1.0 and later
4509  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4510  *    Windows:          in qtmlClient.lib 3.0 and later
4511  }
SetMediaHandlernull4512 function SetMediaHandler( theMedia: Media; mH: MediaHandlerComponent ): OSErr; external name '_SetMediaHandler';
4513 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4514 
4515 
4516 {************************
4517 * Media's Data routines
4518 *************************}
4519 {
4520  *  BeginMediaEdits()
4521  *
4522  *  Availability:
4523  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4524  *    CarbonLib:        in CarbonLib 1.0 and later
4525  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4526  *    Windows:          in qtmlClient.lib 3.0 and later
4527  }
BeginMediaEditsnull4528 function BeginMediaEdits( theMedia: Media ): OSErr; external name '_BeginMediaEdits';
4529 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4530 
4531 
4532 {
4533  *  EndMediaEdits()
4534  *
4535  *  Availability:
4536  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4537  *    CarbonLib:        in CarbonLib 1.0 and later
4538  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4539  *    Windows:          in qtmlClient.lib 3.0 and later
4540  }
EndMediaEditsnull4541 function EndMediaEdits( theMedia: Media ): OSErr; external name '_EndMediaEdits';
4542 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4543 
4544 
4545 {
4546  *  SetMediaDefaultDataRefIndex()
4547  *
4548  *  Availability:
4549  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4550  *    CarbonLib:        in CarbonLib 1.0 and later
4551  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4552  *    Windows:          in qtmlClient.lib 3.0 and later
4553  }
SetMediaDefaultDataRefIndexnull4554 function SetMediaDefaultDataRefIndex( theMedia: Media; index: SInt16 ): OSErr; external name '_SetMediaDefaultDataRefIndex';
4555 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4556 
4557 
4558 {
4559  *  GetMediaDataHandlerDescription()
4560  *
4561  *  Availability:
4562  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4563  *    CarbonLib:        in CarbonLib 1.0 and later
4564  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4565  *    Windows:          in qtmlClient.lib 3.0 and later
4566  }
4567 procedure GetMediaDataHandlerDescription( theMedia: Media; index: SInt16; var dhType: OSType; var creatorName: Str255; var creatorManufacturer: OSType ); external name '_GetMediaDataHandlerDescription';
4568 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4569 
4570 
4571 {
4572  *  GetMediaDataHandler()
4573  *
4574  *  Availability:
4575  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4576  *    CarbonLib:        in CarbonLib 1.0 and later
4577  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4578  *    Windows:          in qtmlClient.lib 3.0 and later
4579  }
GetMediaDataHandlernull4580 function GetMediaDataHandler( theMedia: Media; index: SInt16 ): DataHandler; external name '_GetMediaDataHandler';
4581 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4582 
4583 
4584 {
4585  *  SetMediaDataHandler()
4586  *
4587  *  Availability:
4588  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4589  *    CarbonLib:        in CarbonLib 1.0 and later
4590  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4591  *    Windows:          in qtmlClient.lib 3.0 and later
4592  }
SetMediaDataHandlernull4593 function SetMediaDataHandler( theMedia: Media; index: SInt16; dataHandler: DataHandlerComponent ): OSErr; external name '_SetMediaDataHandler';
4594 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4595 
4596 
4597 {
4598  *  GetDataHandler()
4599  *
4600  *  Availability:
4601  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4602  *    CarbonLib:        in CarbonLib 1.0 and later
4603  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4604  *    Windows:          in qtmlClient.lib 3.0 and later
4605  }
GetDataHandlernull4606 function GetDataHandler( dataRef: Handle; dataHandlerSubType: OSType; flags: SIGNEDLONG ): Component; external name '_GetDataHandler';
4607 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4608 
4609 
4610 {
4611  *  OpenADataHandler()
4612  *
4613  *  Availability:
4614  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4615  *    CarbonLib:        in CarbonLib 1.1 and later
4616  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
4617  *    Windows:          in qtmlClient.lib 4.1 and later
4618  }
OpenADataHandlernull4619 function OpenADataHandler( dataRef: Handle; dataHandlerSubType: OSType; anchorDataRef: Handle; anchorDataRefType: OSType; tb: TimeBase; flags: SIGNEDLONG; var dh: ComponentInstance ): OSErr; external name '_OpenADataHandler';
4620 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4621 
4622 
4623 {************************
4624 * Media Sample Table Routines
4625 *************************}
4626 {
4627  *  GetMediaSampleDescriptionCount()
4628  *
4629  *  Availability:
4630  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4631  *    CarbonLib:        in CarbonLib 1.0 and later
4632  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4633  *    Windows:          in qtmlClient.lib 3.0 and later
4634  }
GetMediaSampleDescriptionCountnull4635 function GetMediaSampleDescriptionCount( theMedia: Media ): SIGNEDLONG; external name '_GetMediaSampleDescriptionCount';
4636 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4637 
4638 
4639 {
4640  *  GetMediaSampleDescription()
4641  *
4642  *  Availability:
4643  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4644  *    CarbonLib:        in CarbonLib 1.0 and later
4645  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4646  *    Windows:          in qtmlClient.lib 3.0 and later
4647  }
4648 procedure GetMediaSampleDescription( theMedia: Media; index: SIGNEDLONG; descH: SampleDescriptionHandle ); external name '_GetMediaSampleDescription';
4649 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4650 
4651 
4652 {
4653  *  SetMediaSampleDescription()
4654  *
4655  *  Availability:
4656  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4657  *    CarbonLib:        in CarbonLib 1.0 and later
4658  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4659  *    Windows:          in qtmlClient.lib 3.0 and later
4660  }
SetMediaSampleDescriptionnull4661 function SetMediaSampleDescription( theMedia: Media; index: SIGNEDLONG; descH: SampleDescriptionHandle ): OSErr; external name '_SetMediaSampleDescription';
4662 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4663 
4664 
4665 {
4666  *  GetMediaSampleCount()
4667  *
4668  *  Availability:
4669  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4670  *    CarbonLib:        in CarbonLib 1.0 and later
4671  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4672  *    Windows:          in qtmlClient.lib 3.0 and later
4673  }
GetMediaSampleCountnull4674 function GetMediaSampleCount( theMedia: Media ): SIGNEDLONG; external name '_GetMediaSampleCount';
4675 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4676 
4677 
4678 {
4679  *  GetMediaSyncSampleCount()
4680  *
4681  *  Availability:
4682  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4683  *    CarbonLib:        in CarbonLib 1.0 and later
4684  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
4685  *    Windows:          in qtmlClient.lib 3.0 and later
4686  }
GetMediaSyncSampleCountnull4687 function GetMediaSyncSampleCount( theMedia: Media ): SIGNEDLONG; external name '_GetMediaSyncSampleCount';
4688 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4689 
4690 
4691 {
4692  *  MediaContainsDisplayOffsets()
4693  *
4694  *  Summary:
4695  *    Tests whether a media contains display offsets.
4696  *
4697  *  Parameters:
4698  *
4699  *    theMedia:
4700  *      The media for this operation. Your application obtains this
4701  *      media identifier from such functions as NewTrackMedia and
4702  *      GetTrackMedia.
4703  *
4704  *  Result:
4705  *    True, if the media is valid and contains at least one sample with
4706  *    a nonzero display offset.  False otherwise.
4707  *
4708  *  Availability:
4709  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4710  *    CarbonLib:        not available
4711  *    Non-Carbon CFM:   not available
4712  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4713  }
MediaContainsDisplayOffsetsnull4714 function MediaContainsDisplayOffsets( theMedia: Media ): Boolean; external name '_MediaContainsDisplayOffsets';
4715 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4716 
4717 
4718 {
4719  *  SampleNumToMediaDecodeTime()
4720  *
4721  *  Summary:
4722  *    Finds the decode time for a specified sample.
4723  *
4724  *  Parameters:
4725  *
4726  *    theMedia:
4727  *      The media for this operation. Your application obtains this
4728  *      media identifier from such functions as NewTrackMedia and
4729  *      GetTrackMedia.
4730  *
4731  *    logicalSampleNum:
4732  *      The sample number.
4733  *
4734  *    sampleDecodeTime:
4735  *      A pointer to a time value. The function updates this time value
4736  *      to indicate the decode time of the sample specified by the
4737  *      logicalSampleNum parameter. This time value is expressed in the
4738  *      media's time scale. Set this parameter to NULL if you do not
4739  *      want this information.
4740  *
4741  *    sampleDecodeDuration:
4742  *      A pointer to a time value. The function updates this time value
4743  *      to indicate the decode duration of the sample specified by the
4744  *      logicalSampleNum parameter. This time value is expressed in the
4745  *      media's time scale. Set this parameter to NULL if you do not
4746  *      want this information.
4747  *
4748  *  Availability:
4749  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4750  *    CarbonLib:        not available
4751  *    Non-Carbon CFM:   not available
4752  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4753  }
4754 procedure SampleNumToMediaDecodeTime( theMedia: Media; logicalSampleNum: SInt64; sampleDecodeTime: TimeValue64Ptr { can be NULL }; sampleDecodeDuration: TimeValue64Ptr { can be NULL} ); external name '_SampleNumToMediaDecodeTime';
4755 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4756 
4757 
4758 {
4759  *  MediaDecodeTimeToSampleNum()
4760  *
4761  *  Summary:
4762  *    Finds the sample for a specified decode time.
4763  *
4764  *  Parameters:
4765  *
4766  *    theMedia:
4767  *      The media for this operation. Your application obtains this
4768  *      media identifier from such functions as NewTrackMedia and
4769  *      GetTrackMedia.
4770  *
4771  *    decodeTime:
4772  *      The decode time for which you are retrieving sample
4773  *      information. You must specify this value in the media's time
4774  *      scale.
4775  *
4776  *    sampleNum:
4777  *      Points to a variable that is to receive the sample number. The
4778  *      function returns the sample number that identifies the sample
4779  *      that contains data for the specified decode time, or zero if it
4780  *      is not found.
4781  *
4782  *    sampleDecodeTime:
4783  *      A pointer to a time value. The function updates this time value
4784  *      to indicate the decode time of the sample specified by the
4785  *      logicalSampleNum parameter. This time value is expressed in the
4786  *      media's time scale. Set this parameter to NULL if you do not
4787  *      want this information.
4788  *
4789  *    sampleDecodeDuration:
4790  *      A pointer to a time value. The function updates this time value
4791  *      to indicate the decode duration of the sample specified by the
4792  *      logicalSampleNum parameter. This time value is expressed in the
4793  *      media's time scale. Set this parameter to NULL if you do not
4794  *      want this information.
4795  *
4796  *  Availability:
4797  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4798  *    CarbonLib:        not available
4799  *    Non-Carbon CFM:   not available
4800  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4801  }
4802 procedure MediaDecodeTimeToSampleNum( theMedia: Media; decodeTime: TimeValue64; var sampleNum: SInt64; sampleDecodeTime: TimeValue64Ptr { can be NULL }; sampleDecodeDuration: TimeValue64Ptr { can be NULL } ); external name '_MediaDecodeTimeToSampleNum';
4803 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4804 
4805 
4806 {
4807  *  SampleNumToMediaDisplayTime()
4808  *
4809  *  Summary:
4810  *    Finds the display time for a specified sample.
4811  *
4812  *  Parameters:
4813  *
4814  *    theMedia:
4815  *      The media for this operation. Your application obtains this
4816  *      media identifier from such functions as NewTrackMedia and
4817  *      GetTrackMedia.
4818  *
4819  *    logicalSampleNum:
4820  *      The sample number.
4821  *
4822  *    sampleDisplayTime:
4823  *      A pointer to a time value. The function updates this time value
4824  *      to indicate the display time of the sample specified by the
4825  *      logicalSampleNum parameter. This time value is expressed in the
4826  *      media's time scale. Set this parameter to NULL if you do not
4827  *      want this information.
4828  *
4829  *    sampleDisplayDuration:
4830  *      A pointer to a time value. The function updates this time value
4831  *      to indicate the display duration of the sample specified by the
4832  *      logicalSampleNum parameter. This time value is expressed in the
4833  *      media's time scale. Set this parameter to NULL if you do not
4834  *      want this information.
4835  *
4836  *  Availability:
4837  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4838  *    CarbonLib:        not available
4839  *    Non-Carbon CFM:   not available
4840  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4841  }
4842 procedure SampleNumToMediaDisplayTime( theMedia: Media; logicalSampleNum: SInt64; sampleDisplayTime: TimeValue64Ptr { can be NULL }; sampleDisplayDuration: TimeValue64Ptr { can be NULL } ); external name '_SampleNumToMediaDisplayTime';
4843 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4844 
4845 
4846 {
4847  *  MediaDisplayTimeToSampleNum()
4848  *
4849  *  Summary:
4850  *    Finds the sample number for a specified display time.
4851  *
4852  *  Parameters:
4853  *
4854  *    theMedia:
4855  *      The media for this operation. Your application obtains this
4856  *      media identifier from such functions as NewTrackMedia and
4857  *      GetTrackMedia.
4858  *
4859  *    displayTime:
4860  *      The display time for which you are retrieving sample
4861  *      information. You must specify this value in the media's time
4862  *      scale.
4863  *
4864  *    sampleNum:
4865  *      Points to a long integer that is to receive the sample number.
4866  *      The function returns the sample number that identifies the
4867  *      sample for the specified display time, or zero if it is not
4868  *      found.
4869  *
4870  *    sampleDisplayTime:
4871  *      A pointer to a time value. The function updates this time value
4872  *      to indicate the display time of the sample specified by the
4873  *      logicalSampleNum parameter. This time value is expressed in the
4874  *      media's time scale. Set this parameter to NULL if you do not
4875  *      want this information.
4876  *
4877  *    sampleDisplayDuration:
4878  *      A pointer to a time value. The function updates this time value
4879  *      to indicate the display duration of the sample specified by the
4880  *      logicalSampleNum parameter. This time value is expressed in the
4881  *      media's time scale. Set this parameter to NULL if you do not
4882  *      want this information.
4883  *
4884  *  Availability:
4885  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
4886  *    CarbonLib:        not available
4887  *    Non-Carbon CFM:   not available
4888  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
4889  }
4890 procedure MediaDisplayTimeToSampleNum( theMedia: Media; displayTime: TimeValue64; var sampleNum: SInt64; var sampleDisplayTime: TimeValue64; var sampleDisplayDuration: TimeValue64 ); external name '_MediaDisplayTimeToSampleNum';
4891 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
4892 
4893 
4894 {
4895  *  SampleNumToMediaTime()
4896  *
4897  *  Summary:
4898  *    Finds the media time for a specified sample.
4899  *
4900  *  Discussion:
4901  *    For media with display offsets, SampleNumToMediaTime is ambiguous
4902  *    and will return kQTMediaHasDisplayOffsetsErr. Call
4903  *    SampleNumToMediaDecodeTime or SampleNumToMediaDisplayTime instead.
4904  *
4905  *  Availability:
4906  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4907  *    CarbonLib:        in CarbonLib 1.0 and later
4908  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4909  *    Windows:          in qtmlClient.lib 3.0 and later
4910  }
4911 procedure SampleNumToMediaTime( theMedia: Media; logicalSampleNum: SIGNEDLONG; var sampleTime: TimeValue; var sampleDuration: TimeValue ); external name '_SampleNumToMediaTime';
4912 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4913 
4914 
4915 {
4916  *  MediaTimeToSampleNum()
4917  *
4918  *  Summary:
4919  *    Finds the sample number for a specified media time.
4920  *
4921  *  Discussion:
4922  *    For media with display offsets, MediaTimeToSampleNum is ambiguous
4923  *    and will return kQTMediaHasDisplayOffsetsErr. Call
4924  *    MediaDecodeTimeToSampleNum or MediaDisplayTimeToSampleNum instead.
4925  *
4926  *  Availability:
4927  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
4928  *    CarbonLib:        in CarbonLib 1.0 and later
4929  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
4930  *    Windows:          in qtmlClient.lib 3.0 and later
4931  }
4932 procedure MediaTimeToSampleNum( theMedia: Media; time: TimeValue; var sampleNum: SIGNEDLONG; var sampleTime: TimeValue; var sampleDuration: TimeValue ); external name '_MediaTimeToSampleNum';
4933 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
4934 
4935 
4936 {
4937  *  AddMediaSample2()
4938  *
4939  *  Summary:
4940  *    Adds sample data and a description to a media. AddMediaSample2
4941  *    extends and supercedes AddMediaSample.
4942  *
4943  *  Parameters:
4944  *
4945  *    theMedia:
4946  *      The media for this operation.  Your application obtains this
4947  *      media identifier from such functions as NewTrackMedia and
4948  *      GetTrackMedia.
4949  *
4950  *    dataIn:
4951  *      Points to sample data.
4952  *
4953  *    size:
4954  *      The number of bytes of sample data to be added to the media.
4955  *      This parameter indicates the total number of bytes in the
4956  *      sample data to be added to the media, not the number of bytes
4957  *      per sample. Use the numberOfSamples parameter to indicate the
4958  *      number of samples that are contained in the sample data.
4959  *
4960  *    decodeDurationPerSample:
4961  *      The duration of each sample to be added. You must specify this
4962  *      parameter in the media time scale. For example, if you are
4963  *      adding sound that was sampled at 22 kHz to a media that
4964  *      contains a sound track with the same time scale, you would set
4965  *      durationPerSample to 1. Similarly, if you are adding video that
4966  *      was recorded at 10 frames per second to a video media that has
4967  *      a time scale of 600, you would set this parameter to 60 to add
4968  *      a single sample.
4969  *
4970  *    displayOffset:
4971  *      The offset from decode time to display time of each sample to
4972  *      be added. You must specify this parameter in the media time
4973  *      scale. If the decode times and display times for the samples
4974  *      are identical, pass zero.
4975  *
4976  *    sampleDescriptionH:
4977  *      A handle to a SampleDescription structure. Some media
4978  *      structures may require sample descriptions. There are different
4979  *      descriptions for different types of samples. For example, a
4980  *      media that contains compressed video requires that you supply
4981  *      an ImageDescription structure. A media that contains sound
4982  *      requires that you supply a SoundDescription structure.
4983  *
4984  *    numberOfSamples:
4985  *      The number of samples contained in the sample data to be added
4986  *      to the media.
4987  *
4988  *    sampleFlags:
4989  *      Specifies the media sample flags for the samples to be added.
4990  *
4991  *    sampleDecodeTimeOut:
4992  *      A pointer to a time value. After adding the sample data to the
4993  *      media, the AddMediaSample function returns the decode time
4994  *      where the first sample was inserted in the time value referred
4995  *      to by this parameter. If you don't want to receive this
4996  *      information, set this parameter to NULL.
4997  *
4998  *  Availability:
4999  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5000  *    CarbonLib:        not available
5001  *    Non-Carbon CFM:   not available
5002  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5003  }
AddMediaSample2null5004 function AddMediaSample2( theMedia: Media; const (*var*) dataIn: UInt8; size: ByteCount; decodeDurationPerSample: TimeValue64; displayOffset: TimeValue64; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: ItemCount; sampleFlags: MediaSampleFlags; sampleDecodeTimeOut: TimeValue64Ptr { can be NULL } ): OSErr; external name '_AddMediaSample2';
5005 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5006 
5007 
5008 {
5009  *  AddMediaSampleFromEncodedFrame()
5010  *
5011  *  Summary:
5012  *    Adds sample data and description from an encoded frame to a media.
5013  *
5014  *  Discussion:
5015  *    This is a convenience API to make it easy to add frames emitted
5016  *    by ICM compression session APIs to media.
5017  *
5018  *  Parameters:
5019  *
5020  *    theMedia:
5021  *      The media for this operation.  Your application obtains this
5022  *      media identifier from such functions as NewTrackMedia and
5023  *      GetTrackMedia.
5024  *
5025  *    encodedFrame:
5026  *      An encoded frame token returned by an ICMCompressionSequence.
5027  *
5028  *    sampleDecodeTimeOut:
5029  *      A pointer to a time value. After adding the sample data to the
5030  *      media, the function returns the decode time where the first
5031  *      sample was inserted in the time value referred to by this
5032  *      parameter. If you don't want to receive this information, set
5033  *      this parameter to NULL.
5034  *
5035  *  Result:
5036  *    An operating system result code.
5037  *    kQTMediaDoesNotSupportDisplayOffsetsErr if the media does not
5038  *    support nonzero display offsets. kQTDisplayTimeAlreadyInUseErr if
5039  *    there is already a sample with this display time.
5040  *    kQTDisplayTimeTooEarlyErr if a sample's display time would be
5041  *    earlier than the display time of an existing sample that does not
5042  *    have the mediaSampleEarlierDisplayTimesAllowed flag set.
5043  *
5044  *  Availability:
5045  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5046  *    CarbonLib:        not available
5047  *    Non-Carbon CFM:   not available
5048  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5049  }
AddMediaSampleFromEncodedFramenull5050 function AddMediaSampleFromEncodedFrame( theMedia: Media; encodedFrame: ICMEncodedFrameRef; sampleDecodeTimeOut: TimeValue64Ptr { can be NULL } ): OSErr; external name '_AddMediaSampleFromEncodedFrame';
5051 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5052 
5053 
5054 {
5055  *  AddSampleTableToMedia()
5056  *
5057  *  Summary:
5058  *    Adds sample references from a sample table to a media.
5059  *    AddSampleTableToMedia supercedes AddMediaSampleReferences and
5060  *    AddMediaSampleReferences64.
5061  *
5062  *  Parameters:
5063  *
5064  *    theMedia:
5065  *      The media for this operation.  Your application obtains this
5066  *      media identifier from such functions as NewTrackMedia and
5067  *      GetTrackMedia.
5068  *
5069  *    sampleTable:
5070  *      The sample table containing sample references to be added to
5071  *      the media.
5072  *
5073  *    startSampleNum:
5074  *      The sample number of the first sample reference in the sample
5075  *      table to be added to the media.  The first sample's number is 1.
5076  *
5077  *    numberOfSamples:
5078  *      The number of sample references from the sample table to be
5079  *      added to the media.
5080  *
5081  *    sampleDecodeTimeOut:
5082  *      A pointer to a time value. After adding the sample references
5083  *      to the media, the function returns the decode time where the
5084  *      first sample was inserted in the time value referred to by this
5085  *      parameter. If you don't want to receive this information, set
5086  *      this parameter to NULL.
5087  *
5088  *  Result:
5089  *    An operating system result code.
5090  *    kQTMediaDoesNotSupportDisplayOffsetsErr if the media does not
5091  *    support nonzero display offsets. kQTDisplayTimeAlreadyInUseErr if
5092  *    there is already a sample with this display time.
5093  *    kQTDisplayTimeTooEarlyErr if a sample's display time would be
5094  *    earlier than the display time of an existing sample that does not
5095  *    have the mediaSampleEarlierDisplayTimesAllowed flag set.
5096  *
5097  *  Availability:
5098  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5099  *    CarbonLib:        not available
5100  *    Non-Carbon CFM:   not available
5101  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5102  }
AddSampleTableToMedianull5103 function AddSampleTableToMedia( theMedia: Media; sampleTable: QTSampleTableRef; startSampleNum: SInt64; numberOfSamples: SInt64; sampleDecodeTimeOut: TimeValue64Ptr { can be NULL } ): OSErr; external name '_AddSampleTableToMedia';
5104 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5105 
5106 
5107 {
5108  *  AddMediaSample()
5109  *
5110  *  Availability:
5111  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5112  *    CarbonLib:        in CarbonLib 1.0 and later
5113  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5114  *    Windows:          in qtmlClient.lib 3.0 and later
5115  }
AddMediaSamplenull5116 function AddMediaSample( theMedia: Media; dataIn: Handle; inOffset: SIGNEDLONG; size: UNSIGNEDLONG; durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SIGNEDLONG; sampleFlags: SInt16; var sampleTime: TimeValue ): OSErr; external name '_AddMediaSample';
5117 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5118 
5119 
5120 {
5121  *  AddMediaSampleReference()
5122  *
5123  *  Availability:
5124  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5125  *    CarbonLib:        in CarbonLib 1.0 and later
5126  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5127  *    Windows:          in qtmlClient.lib 3.0 and later
5128  }
AddMediaSampleReferencenull5129 function AddMediaSampleReference( theMedia: Media; dataOffset: SIGNEDLONG; size: UNSIGNEDLONG; durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SIGNEDLONG; sampleFlags: SInt16; var sampleTime: TimeValue ): OSErr; external name '_AddMediaSampleReference';
5130 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5131 
5132 
5133 {
5134  *  AddMediaSampleReferences()
5135  *
5136  *  Availability:
5137  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5138  *    CarbonLib:        in CarbonLib 1.0 and later
5139  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5140  *    Windows:          in qtmlClient.lib 3.0 and later
5141  }
AddMediaSampleReferencesnull5142 function AddMediaSampleReferences( theMedia: Media; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SIGNEDLONG; sampleRefs: SampleReferencePtr; var sampleTime: TimeValue ): OSErr; external name '_AddMediaSampleReferences';
5143 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5144 
5145 
5146 {
5147  *  AddMediaSampleReferences64()
5148  *
5149  *  Availability:
5150  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5151  *    CarbonLib:        in CarbonLib 1.0.2 and later
5152  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
5153  *    Windows:          in qtmlClient.lib 4.0 and later
5154  }
AddMediaSampleReferences64null5155 function AddMediaSampleReferences64( theMedia: Media; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SIGNEDLONG; sampleRefs: SampleReference64Ptr; var sampleTime: TimeValue ): OSErr; external name '_AddMediaSampleReferences64';
5156 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5157 
5158 
5159 {
5160  *  ExtendMediaDecodeDurationToDisplayEndTime()
5161  *
5162  *  Summary:
5163  *    Prepares a media for the addition of a completely new sequence of
5164  *    samples by ensuring that the media display end time is not later
5165  *    than the media decode end time.
5166  *
5167  *  Discussion:
5168  *    After adding a complete, well-formed set of samples to a media,
5169  *    the media's display end time should be the same as the media's
5170  *    decode end time (also called the media decode duration).
5171  *    However, this is not necessarily the case after individual
5172  *    sample-adding operations, and hence it is possible for a media to
5173  *    be left with a display end time later than its decode end time --
5174  *    if adding a sequence of frames is aborted halfway, for example.
5175  *
5176  *    This may make it difficult to add a new group of samples, because
5177  *    a well-formed group of samples' earliest display time should be
5178  *    the same as the first frame's decode time.  If such a well-formed
5179  *    group is added to an incompletely finished media, frames from the
5180  *    old and new groups frames might collide in display time.
5181  *     ExtendMediaDecodeDurationToDisplayEndTime prevents any such
5182  *    collision or overlap by extending the last sample's decode
5183  *    duration as necessary.  It ensures that the next added sample
5184  *    will have a decode time no earlier than the media's display end
5185  *    time.  If this was already the case, it makes no change to the
5186  *    media.
5187  *    You can call ExtendMediaDecodeDurationToDisplayEndTime before you
5188  *    begin adding samples to a media if you're not certain that the
5189  *    media was left in a well-finished state.  You do not need to call
5190  *    it before adding samples to a newly created media, nor should you
5191  *    call it in between samples from the same compression session.
5192  *
5193  *  Parameters:
5194  *
5195  *    theMedia:
5196  *      The media for this operation.  Your application obtains this
5197  *      media identifier from such functions as NewTrackMedia and
5198  *      GetTrackMedia.
5199  *
5200  *    mediaChanged:
5201  *      Points to a variable which will be set to true if any samples
5202  *      in the media were adjusted, false otherwise. If you don't want
5203  *      to receive this information, set this parameter to NULL.
5204  *
5205  *  Availability:
5206  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5207  *    CarbonLib:        not available
5208  *    Non-Carbon CFM:   not available
5209  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5210  }
ExtendMediaDecodeDurationToDisplayEndTimenull5211 function ExtendMediaDecodeDurationToDisplayEndTime( theMedia: Media; var mediaChanged: Boolean ): OSErr; external name '_ExtendMediaDecodeDurationToDisplayEndTime';
5212 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5213 
5214 
5215 {
5216  *  GetMediaSample2()
5217  *
5218  *  Summary:
5219  *    Retrieves sample data from a media file. GetMediaSample2 extends
5220  *    and supercedes GetMediaSample.
5221  *
5222  *  Discussion:
5223  *    GetMediaSample2 will only return multiple samples that all have
5224  *    the same decode duration per sample, the same display offset, the
5225  *    same sample description, and the same size per sample.
5226  *
5227  *  Parameters:
5228  *
5229  *    theMedia:
5230  *      The media for this operation.  Your application obtains this
5231  *      media identifier from such functions as NewTrackMedia and
5232  *      GetTrackMedia.
5233  *
5234  *    dataOut:
5235  *      Points to a buffer to receive sample data. The buffer must be
5236  *      large enough to contain at least maxDataSize bytes. If you do
5237  *      not want to receive sample data, pass NULL.
5238  *
5239  *    maxDataSize:
5240  *      The maximum number of bytes of data to receive.
5241  *
5242  *    size:
5243  *      Points to a long integer to receive the number of bytes of
5244  *      sample data returned. Pass NULL if you are not interested this
5245  *      information.
5246  *
5247  *    decodeTime:
5248  *      The decode time for which you are retrieving sample
5249  *      information. You must specify this value in the media's time
5250  *      scale.
5251  *
5252  *    sampleDecodeTime:
5253  *      A pointer to a time value. The function updates this time value
5254  *      to indicate the actual decode time of the returned sample data.
5255  *      (The returned time may differ from the time you specified with
5256  *      the decodeTime parameter. This will occur if the time you
5257  *      specified falls in the middle of a sample.) If you are not
5258  *      interested in this information, set this parameter to NULL.
5259  *
5260  *    decodeDurationPerSample:
5261  *      A pointer to a time value. The function updates this time value
5262  *      to indicate the decode duration of each of the returned
5263  *      samples. This time value is expressed in the media's time
5264  *      scale. Set this parameter to NULL if you don't want this
5265  *      information.
5266  *
5267  *    displayOffset:
5268  *      A pointer to a time value. The function updates this time value
5269  *      to indicate the display offset of the returned sample.  This
5270  *      time value is expressed in the media's time scale. Set this
5271  *      parameter to NULL if you don't want this information.
5272  *
5273  *    sampleDescriptionH:
5274  *      A handle to a SampleDescription structure. The function returns
5275  *      the sample description corresponding to the returned sample
5276  *      data.  The function resizes this handle as appropriate. If you
5277  *      don't want a SampleDescription structure, set this parameter to
5278  *      NULL.
5279  *
5280  *    sampleDescriptionIndex:
5281  *      A pointer to a long integer. The function returns an index
5282  *      value to the SampleDescription structure that corresponds to
5283  *      the returned sample data. You can retrieve the structure by
5284  *      calling GetMediaSampleDescription and passing this index in the
5285  *      index parameter. If you don't want this information, set this
5286  *      parameter to NULL.
5287  *
5288  *    maxNumberOfSamples:
5289  *      The maximum number of samples to be returned. The Movie Toolbox
5290  *      does not return more samples than you specify with this
5291  *      parameter. If you set this parameter to 0, the Movie Toolbox
5292  *      uses a value that is appropriate for the media, and returns
5293  *      that value in the field referenced by the numberOfSamples
5294  *      parameter.
5295  *
5296  *    numberOfSamples:
5297  *      A pointer to a long integer. The function updates the field
5298  *      referred to by this parameter with the number of samples it
5299  *      actually returns. If you don't want this information, set this
5300  *      parameter to NULL.
5301  *
5302  *    sampleFlags:
5303  *      A pointer to a short integer in which the function returns
5304  *      media sample flags for the returned samples. If you don't want
5305  *      this information, set this parameter to NULL.
5306  *
5307  *  Result:
5308  *    An operating system result code. maxSizeToGrowTooSmall if the
5309  *    sample data is larger than maxDataSize.
5310  *
5311  *  Availability:
5312  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5313  *    CarbonLib:        not available
5314  *    Non-Carbon CFM:   not available
5315  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5316  }
GetMediaSample2null5317 function GetMediaSample2( theMedia: Media; var dataOut: UInt8; maxDataSize: ByteCount; var size: ByteCount; decodeTime: TimeValue64; var sampleDecodeTime: TimeValue64; var decodeDurationPerSample: TimeValue64; var displayOffset: TimeValue64; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: ItemCount; maxNumberOfSamples: ItemCount; var numberOfSamples: ItemCount; var sampleFlags: MediaSampleFlags ): OSErr; external name '_GetMediaSample2';
5318 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5319 
5320 
5321 {
5322  *  GetMediaSample()
5323  *
5324  *  Availability:
5325  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5326  *    CarbonLib:        in CarbonLib 1.0 and later
5327  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5328  *    Windows:          in qtmlClient.lib 3.0 and later
5329  }
GetMediaSamplenull5330 function GetMediaSample( theMedia: Media; dataOut: Handle; maxSizeToGrow: SIGNEDLONG; var size: SIGNEDLONG; time: TimeValue; var sampleTime: TimeValue; var durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SIGNEDLONG; maxNumberOfSamples: SIGNEDLONG; var numberOfSamples: SIGNEDLONG; var sampleFlags: SInt16 ): OSErr; external name '_GetMediaSample';
5331 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5332 
5333 
5334 {
5335  *  CopyMediaMutableSampleTable()
5336  *
5337  *  Summary:
5338  *    Obtains information about sample references in a media in the
5339  *    form of a sample table. CopyMediaMutableSampleTable supercedes
5340  *    GetMediaSampleReferences and GetMediaSampleReferences64.
5341  *
5342  *  Discussion:
5343  *    When you are done with the returned sample table, release it with
5344  *    QTSampleTableRelease.
5345  *    To find out how many samples were returned in the sample table,
5346  *    call QTSampleTableGetNumberOfSamples.
5347  *
5348  *  Parameters:
5349  *
5350  *    theMedia:
5351  *      The media for this operation.  Your application obtains this
5352  *      media identifier from such functions as NewTrackMedia and
5353  *      GetTrackMedia.
5354  *
5355  *    startDecodeTime:
5356  *      The starting decode time of the sample references to be
5357  *      retrieved. You must specify this value in the media's time
5358  *      scale.
5359  *
5360  *    sampleStartDecodeTime:
5361  *      A pointer to a time value. The function updates this time value
5362  *      to indicate the actual decode time of the first returned sample
5363  *      reference. (The returned time may differ from the time you
5364  *      specified with the startDecodeTime parameter.  This will occur
5365  *      if the time you specified falls in the middle of a sample.) If
5366  *      you are not interested in this information, set this parameter
5367  *      to NULL.
5368  *
5369  *    maxNumberOfSamples:
5370  *      The maximum number of sample references to be returned. If you
5371  *      set this parameter to 0, the Movie Toolbox uses a value that is
5372  *      appropriate to the media.
5373  *
5374  *    maxDecodeDuration:
5375  *      The maximum decode duration to be returned. The function does
5376  *      not return samples with greater decode duration than you
5377  *      specify with this parameter. If you set this parameter to 0,
5378  *      the Movie Toolbox uses a value that is appropriate for the
5379  *      media.
5380  *
5381  *    sampleTableOut:
5382  *      A pointer to a sample table reference to receive the newly
5383  *      created mutable sample table.
5384  *
5385  *  Availability:
5386  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
5387  *    CarbonLib:        not available
5388  *    Non-Carbon CFM:   not available
5389  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
5390  }
CopyMediaMutableSampleTablenull5391 function CopyMediaMutableSampleTable( theMedia: Media; startDecodeTime: TimeValue64; var sampleStartDecodeTime: TimeValue64; maxNumberOfSamples: SInt64; maxDecodeDuration: TimeValue64; var sampleTableOut: QTMutableSampleTableRef ): OSErr; external name '_CopyMediaMutableSampleTable';
5392 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
5393 
5394 
5395 {
5396  *  GetMediaSampleReference()
5397  *
5398  *  Availability:
5399  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5400  *    CarbonLib:        in CarbonLib 1.0 and later
5401  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5402  *    Windows:          in qtmlClient.lib 3.0 and later
5403  }
GetMediaSampleReferencenull5404 function GetMediaSampleReference( theMedia: Media; var dataOffset: SIGNEDLONG; var size: SIGNEDLONG; time: TimeValue; var sampleTime: TimeValue; var durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SIGNEDLONG; maxNumberOfSamples: SIGNEDLONG; var numberOfSamples: SIGNEDLONG; var sampleFlags: SInt16 ): OSErr; external name '_GetMediaSampleReference';
5405 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5406 
5407 
5408 {
5409  *  GetMediaSampleReferences()
5410  *
5411  *  Availability:
5412  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5413  *    CarbonLib:        in CarbonLib 1.0 and later
5414  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5415  *    Windows:          in qtmlClient.lib 3.0 and later
5416  }
GetMediaSampleReferencesnull5417 function GetMediaSampleReferences( theMedia: Media; time: TimeValue; var sampleTime: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SIGNEDLONG; maxNumberOfEntries: SIGNEDLONG; var actualNumberofEntries: SIGNEDLONG; sampleRefs: SampleReferencePtr ): OSErr; external name '_GetMediaSampleReferences';
5418 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5419 
5420 
5421 {
5422  *  GetMediaSampleReferences64()
5423  *
5424  *  Availability:
5425  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5426  *    CarbonLib:        in CarbonLib 1.0.2 and later
5427  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
5428  *    Windows:          in qtmlClient.lib 4.0 and later
5429  }
GetMediaSampleReferences64null5430 function GetMediaSampleReferences64( theMedia: Media; time: TimeValue; var sampleTime: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SIGNEDLONG; maxNumberOfEntries: SIGNEDLONG; var actualNumberofEntries: SIGNEDLONG; sampleRefs: SampleReference64Ptr ): OSErr; external name '_GetMediaSampleReferences64';
5431 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5432 
5433 
5434 {
5435  *  SetMediaPreferredChunkSize()
5436  *
5437  *  Availability:
5438  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5439  *    CarbonLib:        in CarbonLib 1.0 and later
5440  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5441  *    Windows:          in qtmlClient.lib 3.0 and later
5442  }
SetMediaPreferredChunkSizenull5443 function SetMediaPreferredChunkSize( theMedia: Media; maxChunkSize: SIGNEDLONG ): OSErr; external name '_SetMediaPreferredChunkSize';
5444 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5445 
5446 
5447 {
5448  *  GetMediaPreferredChunkSize()
5449  *
5450  *  Availability:
5451  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5452  *    CarbonLib:        in CarbonLib 1.0 and later
5453  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5454  *    Windows:          in qtmlClient.lib 3.0 and later
5455  }
GetMediaPreferredChunkSizenull5456 function GetMediaPreferredChunkSize( theMedia: Media; var maxChunkSize: SIGNEDLONG ): OSErr; external name '_GetMediaPreferredChunkSize';
5457 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5458 
5459 
5460 {
5461  *  SetMediaShadowSync()
5462  *
5463  *  Availability:
5464  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5465  *    CarbonLib:        in CarbonLib 1.0 and later
5466  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5467  *    Windows:          in qtmlClient.lib 3.0 and later
5468  }
SetMediaShadowSyncnull5469 function SetMediaShadowSync( theMedia: Media; frameDiffSampleNum: SIGNEDLONG; syncSampleNum: SIGNEDLONG ): OSErr; external name '_SetMediaShadowSync';
5470 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5471 
5472 
5473 {
5474  *  GetMediaShadowSync()
5475  *
5476  *  Availability:
5477  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5478  *    CarbonLib:        in CarbonLib 1.0 and later
5479  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5480  *    Windows:          in qtmlClient.lib 3.0 and later
5481  }
GetMediaShadowSyncnull5482 function GetMediaShadowSync( theMedia: Media; frameDiffSampleNum: SIGNEDLONG; var syncSampleNum: SIGNEDLONG ): OSErr; external name '_GetMediaShadowSync';
5483 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5484 
5485 
5486 {************************
5487 * Editing Routines
5488 *************************}
5489 {
5490     When inserting media that might have nonzero display offsets into a track, use display time:
5491       InsertMediaIntoTrack( track,
5492                             0,                                 // track start time
5493                             GetMediaDisplayStartTime( media ), // media start time
5494                             GetMediaDisplayDuration( media ),
5495                             fixed1 );                          // normal speed
5496     It is safe to use these display time calls for media without display offsets.
5497 }
5498 {
5499  *  InsertMediaIntoTrack()
5500  *
5501  *  Availability:
5502  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5503  *    CarbonLib:        in CarbonLib 1.0 and later
5504  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5505  *    Windows:          in qtmlClient.lib 3.0 and later
5506  }
InsertMediaIntoTracknull5507 function InsertMediaIntoTrack( theTrack: Track; trackStart: TimeValue; mediaTime: TimeValue; mediaDuration: TimeValue; mediaRate: Fixed ): OSErr; external name '_InsertMediaIntoTrack';
5508 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5509 
5510 
5511 {
5512  *  InsertTrackSegment()
5513  *
5514  *  Availability:
5515  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5516  *    CarbonLib:        in CarbonLib 1.0 and later
5517  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5518  *    Windows:          in qtmlClient.lib 3.0 and later
5519  }
InsertTrackSegmentnull5520 function InsertTrackSegment( srcTrack: Track; dstTrack: Track; srcIn: TimeValue; srcDuration: TimeValue; dstIn: TimeValue ): OSErr; external name '_InsertTrackSegment';
5521 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5522 
5523 
5524 {
5525  *  InsertMovieSegment()
5526  *
5527  *  Availability:
5528  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5529  *    CarbonLib:        in CarbonLib 1.0 and later
5530  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5531  *    Windows:          in qtmlClient.lib 3.0 and later
5532  }
InsertMovieSegmentnull5533 function InsertMovieSegment( srcMovie: Movie; dstMovie: Movie; srcIn: TimeValue; srcDuration: TimeValue; dstIn: TimeValue ): OSErr; external name '_InsertMovieSegment';
5534 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5535 
5536 
5537 {
5538  *  InsertEmptyTrackSegment()
5539  *
5540  *  Availability:
5541  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5542  *    CarbonLib:        in CarbonLib 1.0 and later
5543  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5544  *    Windows:          in qtmlClient.lib 3.0 and later
5545  }
InsertEmptyTrackSegmentnull5546 function InsertEmptyTrackSegment( dstTrack: Track; dstIn: TimeValue; dstDuration: TimeValue ): OSErr; external name '_InsertEmptyTrackSegment';
5547 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5548 
5549 
5550 {
5551  *  InsertEmptyMovieSegment()
5552  *
5553  *  Availability:
5554  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5555  *    CarbonLib:        in CarbonLib 1.0 and later
5556  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5557  *    Windows:          in qtmlClient.lib 3.0 and later
5558  }
InsertEmptyMovieSegmentnull5559 function InsertEmptyMovieSegment( dstMovie: Movie; dstIn: TimeValue; dstDuration: TimeValue ): OSErr; external name '_InsertEmptyMovieSegment';
5560 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5561 
5562 
5563 {
5564  *  DeleteTrackSegment()
5565  *
5566  *  Availability:
5567  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5568  *    CarbonLib:        in CarbonLib 1.0 and later
5569  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5570  *    Windows:          in qtmlClient.lib 3.0 and later
5571  }
DeleteTrackSegmentnull5572 function DeleteTrackSegment( theTrack: Track; startTime: TimeValue; duration: TimeValue ): OSErr; external name '_DeleteTrackSegment';
5573 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5574 
5575 
5576 {
5577  *  DeleteMovieSegment()
5578  *
5579  *  Availability:
5580  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5581  *    CarbonLib:        in CarbonLib 1.0 and later
5582  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5583  *    Windows:          in qtmlClient.lib 3.0 and later
5584  }
DeleteMovieSegmentnull5585 function DeleteMovieSegment( theMovie: Movie; startTime: TimeValue; duration: TimeValue ): OSErr; external name '_DeleteMovieSegment';
5586 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5587 
5588 
5589 {
5590  *  ScaleTrackSegment()
5591  *
5592  *  Availability:
5593  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5594  *    CarbonLib:        in CarbonLib 1.0 and later
5595  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5596  *    Windows:          in qtmlClient.lib 3.0 and later
5597  }
ScaleTrackSegmentnull5598 function ScaleTrackSegment( theTrack: Track; startTime: TimeValue; oldDuration: TimeValue; newDuration: TimeValue ): OSErr; external name '_ScaleTrackSegment';
5599 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5600 
5601 
5602 {
5603  *  ScaleMovieSegment()
5604  *
5605  *  Availability:
5606  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5607  *    CarbonLib:        in CarbonLib 1.0 and later
5608  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5609  *    Windows:          in qtmlClient.lib 3.0 and later
5610  }
ScaleMovieSegmentnull5611 function ScaleMovieSegment( theMovie: Movie; startTime: TimeValue; oldDuration: TimeValue; newDuration: TimeValue ): OSErr; external name '_ScaleMovieSegment';
5612 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5613 
5614 
5615 {************************
5616 * Hi-level Editing Routines
5617 *************************}
5618 {
5619  *  CutMovieSelection()
5620  *
5621  *  Availability:
5622  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5623  *    CarbonLib:        in CarbonLib 1.0 and later
5624  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5625  *    Windows:          in qtmlClient.lib 3.0 and later
5626  }
CutMovieSelectionnull5627 function CutMovieSelection( theMovie: Movie ): Movie; external name '_CutMovieSelection';
5628 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5629 
5630 
5631 {
5632  *  CopyMovieSelection()
5633  *
5634  *  Availability:
5635  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5636  *    CarbonLib:        in CarbonLib 1.0 and later
5637  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5638  *    Windows:          in qtmlClient.lib 3.0 and later
5639  }
CopyMovieSelectionnull5640 function CopyMovieSelection( theMovie: Movie ): Movie; external name '_CopyMovieSelection';
5641 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5642 
5643 
5644 {
5645  *  PasteMovieSelection()
5646  *
5647  *  Availability:
5648  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5649  *    CarbonLib:        in CarbonLib 1.0 and later
5650  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5651  *    Windows:          in qtmlClient.lib 3.0 and later
5652  }
5653 procedure PasteMovieSelection( theMovie: Movie; src: Movie ); external name '_PasteMovieSelection';
5654 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5655 
5656 
5657 {
5658  *  AddMovieSelection()
5659  *
5660  *  Availability:
5661  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5662  *    CarbonLib:        in CarbonLib 1.0 and later
5663  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5664  *    Windows:          in qtmlClient.lib 3.0 and later
5665  }
5666 procedure AddMovieSelection( theMovie: Movie; src: Movie ); external name '_AddMovieSelection';
5667 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5668 
5669 
5670 {
5671  *  ClearMovieSelection()
5672  *
5673  *  Availability:
5674  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5675  *    CarbonLib:        in CarbonLib 1.0 and later
5676  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5677  *    Windows:          in qtmlClient.lib 3.0 and later
5678  }
5679 procedure ClearMovieSelection( theMovie: Movie ); external name '_ClearMovieSelection';
5680 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5681 
5682 
5683 {
5684  *  PasteHandleIntoMovie()
5685  *
5686  *  Availability:
5687  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5688  *    CarbonLib:        in CarbonLib 1.0 and later
5689  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5690  *    Windows:          in qtmlClient.lib 3.0 and later
5691  }
PasteHandleIntoMovienull5692 function PasteHandleIntoMovie( h: Handle; handleType: OSType; theMovie: Movie; flags: SIGNEDLONG; userComp: ComponentInstance ): OSErr; external name '_PasteHandleIntoMovie';
5693 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5694 
5695 
5696 {
5697  *  PutMovieIntoTypedHandle()
5698  *
5699  *  Availability:
5700  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5701  *    CarbonLib:        in CarbonLib 1.0 and later
5702  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5703  *    Windows:          in qtmlClient.lib 3.0 and later
5704  }
PutMovieIntoTypedHandlenull5705 function PutMovieIntoTypedHandle( theMovie: Movie; targetTrack: Track; handleType: OSType; publicMovie: Handle; start: TimeValue; dur: TimeValue; flags: SIGNEDLONG; userComp: ComponentInstance ): OSErr; external name '_PutMovieIntoTypedHandle';
5706 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5707 
5708 
5709 {
5710  *  IsScrapMovie()
5711  *
5712  *  Availability:
5713  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5714  *    CarbonLib:        in CarbonLib 1.0 and later
5715  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5716  *    Windows:          in qtmlClient.lib 3.0 and later
5717  }
IsScrapMovienull5718 function IsScrapMovie( targetTrack: Track ): Component; external name '_IsScrapMovie';
5719 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5720 
5721 
5722 {************************
5723 * Middle-level Editing Routines
5724 *************************}
5725 {
5726  *  CopyTrackSettings()
5727  *
5728  *  Availability:
5729  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5730  *    CarbonLib:        in CarbonLib 1.0 and later
5731  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5732  *    Windows:          in qtmlClient.lib 3.0 and later
5733  }
CopyTrackSettingsnull5734 function CopyTrackSettings( srcTrack: Track; dstTrack: Track ): OSErr; external name '_CopyTrackSettings';
5735 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5736 
5737 
5738 {
5739  *  CopyMovieSettings()
5740  *
5741  *  Availability:
5742  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5743  *    CarbonLib:        in CarbonLib 1.0 and later
5744  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5745  *    Windows:          in qtmlClient.lib 3.0 and later
5746  }
CopyMovieSettingsnull5747 function CopyMovieSettings( srcMovie: Movie; dstMovie: Movie ): OSErr; external name '_CopyMovieSettings';
5748 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5749 
5750 
5751 {
5752  *  AddEmptyTrackToMovie()
5753  *
5754  *  Availability:
5755  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5756  *    CarbonLib:        in CarbonLib 1.0 and later
5757  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5758  *    Windows:          in qtmlClient.lib 3.0 and later
5759  }
AddEmptyTrackToMovienull5760 function AddEmptyTrackToMovie( srcTrack: Track; dstMovie: Movie; dataRef: Handle; dataRefType: OSType; var dstTrack: Track ): OSErr; external name '_AddEmptyTrackToMovie';
5761 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5762 
5763 
5764 const
5765 	kQTCloneShareSamples = 1 shl 0;
5766 	kQTCloneDontCopyEdits = 1 shl 1;
5767 
5768 {
5769  *  AddClonedTrackToMovie()
5770  *
5771  *  Availability:
5772  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5773  *    CarbonLib:        in CarbonLib 1.3 and later
5774  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
5775  *    Windows:          in qtmlClient.lib 5.0 and later
5776  }
AddClonedTrackToMovienull5777 function AddClonedTrackToMovie( srcTrack: Track; dstMovie: Movie; flags: SIGNEDLONG; var dstTrack: Track ): OSErr; external name '_AddClonedTrackToMovie';
5778 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5779 
5780 
5781 {************************
5782 * movie & track edit state routines
5783 *************************}
5784 {
5785  *  NewMovieEditState()
5786  *
5787  *  Availability:
5788  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5789  *    CarbonLib:        in CarbonLib 1.0 and later
5790  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5791  *    Windows:          in qtmlClient.lib 3.0 and later
5792  }
NewMovieEditStatenull5793 function NewMovieEditState( theMovie: Movie ): MovieEditState; external name '_NewMovieEditState';
5794 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5795 
5796 
5797 {
5798  *  UseMovieEditState()
5799  *
5800  *  Availability:
5801  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5802  *    CarbonLib:        in CarbonLib 1.0 and later
5803  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5804  *    Windows:          in qtmlClient.lib 3.0 and later
5805  }
UseMovieEditStatenull5806 function UseMovieEditState( theMovie: Movie; toState: MovieEditState ): OSErr; external name '_UseMovieEditState';
5807 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5808 
5809 
5810 {
5811  *  DisposeMovieEditState()
5812  *
5813  *  Availability:
5814  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5815  *    CarbonLib:        in CarbonLib 1.0 and later
5816  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5817  *    Windows:          in qtmlClient.lib 3.0 and later
5818  }
DisposeMovieEditStatenull5819 function DisposeMovieEditState( state: MovieEditState ): OSErr; external name '_DisposeMovieEditState';
5820 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5821 
5822 
5823 {
5824  *  NewTrackEditState()
5825  *
5826  *  Availability:
5827  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5828  *    CarbonLib:        in CarbonLib 1.0 and later
5829  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5830  *    Windows:          in qtmlClient.lib 3.0 and later
5831  }
NewTrackEditStatenull5832 function NewTrackEditState( theTrack: Track ): TrackEditState; external name '_NewTrackEditState';
5833 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5834 
5835 
5836 {
5837  *  UseTrackEditState()
5838  *
5839  *  Availability:
5840  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5841  *    CarbonLib:        in CarbonLib 1.0 and later
5842  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5843  *    Windows:          in qtmlClient.lib 3.0 and later
5844  }
UseTrackEditStatenull5845 function UseTrackEditState( theTrack: Track; state: TrackEditState ): OSErr; external name '_UseTrackEditState';
5846 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5847 
5848 
5849 {
5850  *  DisposeTrackEditState()
5851  *
5852  *  Availability:
5853  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5854  *    CarbonLib:        in CarbonLib 1.0 and later
5855  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5856  *    Windows:          in qtmlClient.lib 3.0 and later
5857  }
DisposeTrackEditStatenull5858 function DisposeTrackEditState( state: TrackEditState ): OSErr; external name '_DisposeTrackEditState';
5859 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5860 
5861 
5862 {************************
5863 * track reference routines
5864 *************************}
5865 {
5866  *  AddTrackReference()
5867  *
5868  *  Availability:
5869  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5870  *    CarbonLib:        in CarbonLib 1.0 and later
5871  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5872  *    Windows:          in qtmlClient.lib 3.0 and later
5873  }
AddTrackReferencenull5874 function AddTrackReference( theTrack: Track; refTrack: Track; refType: OSType; var addedIndex: SIGNEDLONG ): OSErr; external name '_AddTrackReference';
5875 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5876 
5877 
5878 {
5879  *  DeleteTrackReference()
5880  *
5881  *  Availability:
5882  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5883  *    CarbonLib:        in CarbonLib 1.0 and later
5884  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5885  *    Windows:          in qtmlClient.lib 3.0 and later
5886  }
DeleteTrackReferencenull5887 function DeleteTrackReference( theTrack: Track; refType: OSType; index: SIGNEDLONG ): OSErr; external name '_DeleteTrackReference';
5888 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5889 
5890 
5891 {
5892  *  SetTrackReference()
5893  *
5894  *  Availability:
5895  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5896  *    CarbonLib:        in CarbonLib 1.0 and later
5897  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5898  *    Windows:          in qtmlClient.lib 3.0 and later
5899  }
SetTrackReferencenull5900 function SetTrackReference( theTrack: Track; refTrack: Track; refType: OSType; index: SIGNEDLONG ): OSErr; external name '_SetTrackReference';
5901 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5902 
5903 
5904 {
5905  *  GetTrackReference()
5906  *
5907  *  Availability:
5908  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5909  *    CarbonLib:        in CarbonLib 1.0 and later
5910  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5911  *    Windows:          in qtmlClient.lib 3.0 and later
5912  }
GetTrackReferencenull5913 function GetTrackReference( theTrack: Track; refType: OSType; index: SIGNEDLONG ): Track; external name '_GetTrackReference';
5914 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5915 
5916 
5917 {
5918  *  GetNextTrackReferenceType()
5919  *
5920  *  Availability:
5921  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5922  *    CarbonLib:        in CarbonLib 1.0 and later
5923  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5924  *    Windows:          in qtmlClient.lib 3.0 and later
5925  }
GetNextTrackReferenceTypenull5926 function GetNextTrackReferenceType( theTrack: Track; refType: OSType ): OSType; external name '_GetNextTrackReferenceType';
5927 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5928 
5929 
5930 {
5931  *  GetTrackReferenceCount()
5932  *
5933  *  Availability:
5934  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5935  *    CarbonLib:        in CarbonLib 1.0 and later
5936  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5937  *    Windows:          in qtmlClient.lib 3.0 and later
5938  }
GetTrackReferenceCountnull5939 function GetTrackReferenceCount( theTrack: Track; refType: OSType ): SIGNEDLONG; external name '_GetTrackReferenceCount';
5940 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5941 
5942 
5943 {************************
5944 * high level file conversion routines
5945 *************************}
5946 {
5947  *  ConvertFileToMovieFile()
5948  *
5949  *  Availability:
5950  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5951  *    CarbonLib:        in CarbonLib 1.0 and later
5952  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5953  *    Windows:          in qtmlClient.lib 3.0 and later
5954  }
ConvertFileToMovieFilenull5955 function ConvertFileToMovieFile( const (*var*) inputFile: FSSpec; const (*var*) outputFile: FSSpec; creator: OSType; scriptTag: ScriptCode; var resID: SInt16; flags: SIGNEDLONG; userComp: ComponentInstance; proc: MovieProgressUPP; refCon: SIGNEDLONG ): OSErr; external name '_ConvertFileToMovieFile';
5956 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5957 
5958 
5959 {
5960  *  ConvertMovieToFile()
5961  *
5962  *  Availability:
5963  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
5964  *    CarbonLib:        in CarbonLib 1.0 and later
5965  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
5966  *    Windows:          in qtmlClient.lib 3.0 and later
5967  }
ConvertMovieToFilenull5968 function ConvertMovieToFile( theMovie: Movie; onlyTrack: Track; var outputFile: FSSpec; fileType: OSType; creator: OSType; scriptTag: ScriptCode; var resID: SInt16; flags: SIGNEDLONG; userComp: ComponentInstance ): OSErr; external name '_ConvertMovieToFile';
5969 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
5970 
5971 
5972 {
5973  *  ConvertMovieToDataRef()
5974  *
5975  *  Availability:
5976  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
5977  *    CarbonLib:        not available
5978  *    Non-Carbon CFM:   not available
5979  *    Windows:          in qtmlClient.lib 6.5 and later
5980  }
ConvertMovieToDataRefnull5981 function ConvertMovieToDataRef( m: Movie; onlyTrack: Track; dataRef: Handle; dataRefType: OSType; fileType: OSType; creator: OSType; flags: SIGNEDLONG; userComp: ComponentInstance ): OSErr; external name '_ConvertMovieToDataRef';
5982 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
5983 
5984 
5985 {
5986  *  ConvertDataRefToMovieDataRef()
5987  *
5988  *  Availability:
5989  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
5990  *    CarbonLib:        not available
5991  *    Non-Carbon CFM:   not available
5992  *    Windows:          in qtmlClient.lib 6.5 and later
5993  }
ConvertDataRefToMovieDataRefnull5994 function ConvertDataRefToMovieDataRef( inputDataRef: Handle; inputDataRefType: OSType; outputDataRef: Handle; outputDataRefType: OSType; creator: OSType; flags: SIGNEDLONG; userComp: ComponentInstance; proc: MovieProgressUPP; refCon: SIGNEDLONG ): OSErr; external name '_ConvertDataRefToMovieDataRef';
5995 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
5996 
5997 
5998 const
5999 	kGetMovieImporterValidateToFind = 1 shl 0;
6000 	kGetMovieImporterAllowNewFile = 1 shl 1;
6001 	kGetMovieImporterDontConsiderGraphicsImporters = 1 shl 2;
6002 	kGetMovieImporterDontConsiderFileOnlyImporters = 1 shl 6;
6003 	kGetMovieImporterAutoImportOnly = 1 shl 10; { reject aggressive movie importers which have dontAutoFileMovieImport set}
6004 
6005 {
6006  *  GetMovieImporterForDataRef()
6007  *
6008  *  Availability:
6009  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6010  *    CarbonLib:        in CarbonLib 1.0 and later
6011  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
6012  *    Windows:          in qtmlClient.lib 3.0 and later
6013  }
GetMovieImporterForDataRefnull6014 function GetMovieImporterForDataRef( dataRefType: OSType; dataRef: Handle; flags: SIGNEDLONG; var importer: Component ): OSErr; external name '_GetMovieImporterForDataRef';
6015 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6016 
6017 
6018 const
6019 	kQTGetMIMETypeInfoIsQuickTimeMovieType = FourCharCode('moov'); { info is a pointer to a Boolean}
6020 	kQTGetMIMETypeInfoIsUnhelpfulType = FourCharCode('dumb'); { info is a pointer to a Boolean}
6021 
6022 {
6023  *  QTGetMIMETypeInfo()
6024  *
6025  *  Availability:
6026  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6027  *    CarbonLib:        in CarbonLib 1.3 and later
6028  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
6029  *    Windows:          in qtmlClient.lib 5.0 and later
6030  }
QTGetMIMETypeInfonull6031 function QTGetMIMETypeInfo( mimeStringStart: ConstCStringPtr; mimeStringLength: SInt16; infoSelector: OSType; infoDataPtr: UnivPtr; var infoDataSize: SIGNEDLONG ): OSErr; external name '_QTGetMIMETypeInfo';
6032 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6033 
6034 
6035 {***************************
6036 * Movie importer properties
6037 ****************************}
6038 
6039 const
6040 	kQTPropertyClass_MovieImporter = FourCharCode('eat ');
6041 
6042   {
6043    * kQTMovieImporterPropertyID_AllowMediaOptimization: Value is
6044    * Boolean (get/set) Allow QuickTime importers to optimize the media
6045    * representation during import. This may create media that is not
6046    * fully compatible with applications that use older low-level APIs
6047    * to access and manipulate media samples.  For instance, this
6048    * property allows the MP3 importer to create VBR sample tables,
6049    * which may be incompatible with applications that use
6050    * GetMediaSample and SoundConverter to manually decode audio samples.
6051    }
6052 	kQTMovieImporterPropertyID_AllowMediaOptimization = FourCharCode('amop'); { Boolean}
6053 
6054 
6055 {************************
6056 * Movie Timebase Conversion Routines
6057 *************************}
6058 {
6059  *  TrackTimeToMediaDisplayTime()
6060  *
6061  *  Summary:
6062  *    Converts a track's time value to a display time value that is
6063  *    appropriate to the track's media, using the track's edit list.
6064  *    This is a 64-bit replacement for TrackTimeToMediaTime.
6065  *
6066  *  Discussion:
6067  *    This function maps the track time through the track's edit list
6068  *    to come up with the media time. This time value contains the
6069  *    track's time value according to the media's time coordinate
6070  *    system. If the time you specified lies outside of the movie's
6071  *    active segment or corresponds to empty space in the track, this
6072  *    function returns a value of -1. Hence you can use it to determine
6073  *    whether a specified track edit is empty.
6074  *
6075  *  Parameters:
6076  *
6077  *    value:
6078  *      The track's time value; must be expressed in the time scale of
6079  *      the movie that contains the track.
6080  *
6081  *    theTrack:
6082  *      The track for this operation.  Your application obtains this
6083  *      track identifier from such functions as NewMovieTrack and
6084  *      GetMovieTrack.
6085  *
6086  *  Result:
6087  *    The corresponding time in media display time, in the media's time
6088  *    coordinate system. If the track time corresponds to empty space,
6089  *    this function returns a value of -1.
6090  *
6091  *  Availability:
6092  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
6093  *    CarbonLib:        not available
6094  *    Non-Carbon CFM:   not available
6095  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
6096  }
TrackTimeToMediaDisplayTimenull6097 function TrackTimeToMediaDisplayTime( value: TimeValue64; theTrack: Track ): TimeValue64; external name '_TrackTimeToMediaDisplayTime';
6098 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
6099 
6100 
6101 {
6102  *  TrackTimeToMediaTime()
6103  *
6104  *  Availability:
6105  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6106  *    CarbonLib:        in CarbonLib 1.0 and later
6107  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6108  *    Windows:          in qtmlClient.lib 3.0 and later
6109  }
TrackTimeToMediaTimenull6110 function TrackTimeToMediaTime( value: TimeValue; theTrack: Track ): TimeValue; external name '_TrackTimeToMediaTime';
6111 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6112 
6113 
6114 {
6115  *  GetTrackEditRate64()
6116  *
6117  *  Summary:
6118  *    Returns the rate of the track edit of a specified track at an
6119  *    indicated time. This is a 64-bit replacement for GetTrackEditRate.
6120  *
6121  *  Discussion:
6122  *    This function is useful if you are stepping through track edits
6123  *    directly in your application or if you are a client of
6124  *    QuickTime's base media handler.
6125  *
6126  *  Parameters:
6127  *
6128  *    theTrack:
6129  *      The track identifier for which the rate of a track edit (at the
6130  *      time given in the atTime parameter) is to be determined.
6131  *
6132  *    atTime:
6133  *      Indicates a time value at which the rate of a track edit (of a
6134  *      track identified in the parameter theTrack) is to be determined.
6135  *
6136  *  Result:
6137  *    The rate of the track edit of the specified track at the
6138  *    specified time.
6139  *
6140  *  Availability:
6141  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
6142  *    CarbonLib:        not available
6143  *    Non-Carbon CFM:   not available
6144  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
6145  }
GetTrackEditRate64null6146 function GetTrackEditRate64( theTrack: Track; atTime: TimeValue64 ): Fixed; external name '_GetTrackEditRate64';
6147 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
6148 
6149 
6150 {
6151  *  GetTrackEditRate()
6152  *
6153  *  Availability:
6154  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6155  *    CarbonLib:        in CarbonLib 1.0 and later
6156  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6157  *    Windows:          in qtmlClient.lib 3.0 and later
6158  }
GetTrackEditRatenull6159 function GetTrackEditRate( theTrack: Track; atTime: TimeValue ): Fixed; external name '_GetTrackEditRate';
6160 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6161 
6162 
6163 {************************
6164 * Miscellaneous Routines
6165 *************************}
6166 
6167 {
6168  *  GetMovieDataSize()
6169  *
6170  *  Availability:
6171  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6172  *    CarbonLib:        in CarbonLib 1.0 and later
6173  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6174  *    Windows:          in qtmlClient.lib 3.0 and later
6175  }
GetMovieDataSizenull6176 function GetMovieDataSize( theMovie: Movie; startTime: TimeValue; duration: TimeValue ): SIGNEDLONG; external name '_GetMovieDataSize';
6177 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6178 
6179 
6180 {
6181  *  GetMovieDataSize64()
6182  *
6183  *  Availability:
6184  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6185  *    CarbonLib:        in CarbonLib 1.0.2 and later
6186  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
6187  *    Windows:          in qtmlClient.lib 4.0 and later
6188  }
GetMovieDataSize64null6189 function GetMovieDataSize64( theMovie: Movie; startTime: TimeValue; duration: TimeValue; var dataSize: wide ): OSErr; external name '_GetMovieDataSize64';
6190 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6191 
6192 
6193 {
6194  *  GetTrackDataSize()
6195  *
6196  *  Availability:
6197  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6198  *    CarbonLib:        in CarbonLib 1.0 and later
6199  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6200  *    Windows:          in qtmlClient.lib 3.0 and later
6201  }
GetTrackDataSizenull6202 function GetTrackDataSize( theTrack: Track; startTime: TimeValue; duration: TimeValue ): SIGNEDLONG; external name '_GetTrackDataSize';
6203 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6204 
6205 
6206 {
6207  *  GetTrackDataSize64()
6208  *
6209  *  Availability:
6210  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6211  *    CarbonLib:        in CarbonLib 1.0.2 and later
6212  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
6213  *    Windows:          in qtmlClient.lib 4.0 and later
6214  }
GetTrackDataSize64null6215 function GetTrackDataSize64( theTrack: Track; startTime: TimeValue; duration: TimeValue; var dataSize: wide ): OSErr; external name '_GetTrackDataSize64';
6216 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6217 
6218 
6219 {
6220  *  GetMediaDataSizeTime64()
6221  *
6222  *  Summary:
6223  *    Determines the size, in bytes, of the sample data in a media
6224  *    segment. This function uses 64-bit time values and returns a
6225  *    64-bit size.
6226  *
6227  *  Discussion:
6228  *    The only difference between this function and GetMediaDataSize64
6229  *    is that it uses 64-bit time values.
6230  *
6231  *  Parameters:
6232  *
6233  *    theMedia:
6234  *      The media for this operation.  Your application obtains this
6235  *      media identifier from such functions as NewTrackMedia and
6236  *      GetTrackMedia.
6237  *
6238  *    startDisplayTime:
6239  *      A time value specifying the starting point of the segment in
6240  *      media display time.
6241  *
6242  *    displayDuration:
6243  *      A time value that specifies the duration of the segment in
6244  *      media display time.
6245  *
6246  *    dataSize:
6247  *      Points to a variable to receive the size, in bytes, of the
6248  *      sample data in the defined media segment.
6249  *
6250  *  Availability:
6251  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
6252  *    CarbonLib:        not available
6253  *    Non-Carbon CFM:   not available
6254  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
6255  }
GetMediaDataSizeTime64null6256 function GetMediaDataSizeTime64( theMedia: Media; startDisplayTime: TimeValue64; displayDuration: TimeValue64; var dataSize: SInt64 ): OSErr; external name '_GetMediaDataSizeTime64';
6257 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
6258 
6259 
6260 {
6261  *  GetMediaDataSize()
6262  *
6263  *  Availability:
6264  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6265  *    CarbonLib:        in CarbonLib 1.0 and later
6266  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6267  *    Windows:          in qtmlClient.lib 3.0 and later
6268  }
GetMediaDataSizenull6269 function GetMediaDataSize( theMedia: Media; startTime: TimeValue; duration: TimeValue ): SIGNEDLONG; external name '_GetMediaDataSize';
6270 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6271 
6272 
6273 {
6274  *  GetMediaDataSize64()
6275  *
6276  *  Availability:
6277  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6278  *    CarbonLib:        in CarbonLib 1.0.2 and later
6279  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
6280  *    Windows:          in qtmlClient.lib 4.0 and later
6281  }
GetMediaDataSize64null6282 function GetMediaDataSize64( theMedia: Media; startTime: TimeValue; duration: TimeValue; var dataSize: wide ): OSErr; external name '_GetMediaDataSize64';
6283 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6284 
6285 
6286 {
6287  *  PtInMovie()
6288  *
6289  *  Availability:
6290  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6291  *    CarbonLib:        in CarbonLib 1.0 and later
6292  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6293  *    Windows:          in qtmlClient.lib 3.0 and later
6294  }
PtInMovienull6295 function PtInMovie( theMovie: Movie; pt: Point ): Boolean; external name '_PtInMovie';
6296 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6297 
6298 
6299 {
6300  *  PtInTrack()
6301  *
6302  *  Availability:
6303  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6304  *    CarbonLib:        in CarbonLib 1.0 and later
6305  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6306  *    Windows:          in qtmlClient.lib 3.0 and later
6307  }
PtInTracknull6308 function PtInTrack( theTrack: Track; pt: Point ): Boolean; external name '_PtInTrack';
6309 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6310 
6311 
6312 {************************
6313 * Group Selection Routines
6314 *************************}
6315 
6316 {
6317  *  SetMovieLanguage()
6318  *
6319  *  Availability:
6320  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6321  *    CarbonLib:        in CarbonLib 1.0 and later
6322  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6323  *    Windows:          in qtmlClient.lib 3.0 and later
6324  }
6325 procedure SetMovieLanguage( theMovie: Movie; language: SIGNEDLONG ); external name '_SetMovieLanguage';
6326 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6327 
6328 
6329 {************************
6330 * User Data
6331 *************************}
6332 
6333 {
6334  *  GetUserData()
6335  *
6336  *  Availability:
6337  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6338  *    CarbonLib:        in CarbonLib 1.0 and later
6339  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6340  *    Windows:          in qtmlClient.lib 3.0 and later
6341  }
GetUserDatanull6342 function GetUserData( theUserData: UserData; data: Handle; udType: OSType; index: SIGNEDLONG ): OSErr; external name '_GetUserData';
6343 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6344 
6345 
6346 {
6347  *  AddUserData()
6348  *
6349  *  Availability:
6350  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6351  *    CarbonLib:        in CarbonLib 1.0 and later
6352  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6353  *    Windows:          in qtmlClient.lib 3.0 and later
6354  }
AddUserDatanull6355 function AddUserData( theUserData: UserData; data: Handle; udType: OSType ): OSErr; external name '_AddUserData';
6356 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6357 
6358 
6359 {
6360  *  RemoveUserData()
6361  *
6362  *  Availability:
6363  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6364  *    CarbonLib:        in CarbonLib 1.0 and later
6365  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6366  *    Windows:          in qtmlClient.lib 3.0 and later
6367  }
RemoveUserDatanull6368 function RemoveUserData( theUserData: UserData; udType: OSType; index: SIGNEDLONG ): OSErr; external name '_RemoveUserData';
6369 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6370 
6371 
6372 {
6373  *  CountUserDataType()
6374  *
6375  *  Availability:
6376  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6377  *    CarbonLib:        in CarbonLib 1.0 and later
6378  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6379  *    Windows:          in qtmlClient.lib 3.0 and later
6380  }
CountUserDataTypenull6381 function CountUserDataType( theUserData: UserData; udType: OSType ): SInt16; external name '_CountUserDataType';
6382 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6383 
6384 
6385 {
6386  *  GetNextUserDataType()
6387  *
6388  *  Availability:
6389  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6390  *    CarbonLib:        in CarbonLib 1.0 and later
6391  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6392  *    Windows:          in qtmlClient.lib 3.0 and later
6393  }
GetNextUserDataTypenull6394 function GetNextUserDataType( theUserData: UserData; udType: OSType ): SIGNEDLONG; external name '_GetNextUserDataType';
6395 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6396 
6397 
6398 {
6399  *  GetUserDataItem()
6400  *
6401  *  Availability:
6402  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6403  *    CarbonLib:        in CarbonLib 1.0 and later
6404  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6405  *    Windows:          in qtmlClient.lib 3.0 and later
6406  }
GetUserDataItemnull6407 function GetUserDataItem( theUserData: UserData; data: UnivPtr; size: SIGNEDLONG; udType: OSType; index: SIGNEDLONG ): OSErr; external name '_GetUserDataItem';
6408 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6409 
6410 
6411 {
6412  *  SetUserDataItem()
6413  *
6414  *  Availability:
6415  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6416  *    CarbonLib:        in CarbonLib 1.0 and later
6417  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6418  *    Windows:          in qtmlClient.lib 3.0 and later
6419  }
SetUserDataItemnull6420 function SetUserDataItem( theUserData: UserData; data: UnivPtr; size: SIGNEDLONG; udType: OSType; index: SIGNEDLONG ): OSErr; external name '_SetUserDataItem';
6421 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6422 
6423 
6424 {
6425  *  AddUserDataText()
6426  *
6427  *  Availability:
6428  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6429  *    CarbonLib:        in CarbonLib 1.0 and later
6430  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6431  *    Windows:          in qtmlClient.lib 3.0 and later
6432  }
AddUserDataTextnull6433 function AddUserDataText( theUserData: UserData; data: Handle; udType: OSType; index: SIGNEDLONG; itlRegionTag: SInt16 ): OSErr; external name '_AddUserDataText';
6434 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6435 
6436 
6437 {
6438  *  GetUserDataText()
6439  *
6440  *  Availability:
6441  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6442  *    CarbonLib:        in CarbonLib 1.0 and later
6443  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6444  *    Windows:          in qtmlClient.lib 3.0 and later
6445  }
GetUserDataTextnull6446 function GetUserDataText( theUserData: UserData; data: Handle; udType: OSType; index: SIGNEDLONG; itlRegionTag: SInt16 ): OSErr; external name '_GetUserDataText';
6447 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6448 
6449 
6450 {
6451  *  RemoveUserDataText()
6452  *
6453  *  Availability:
6454  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6455  *    CarbonLib:        in CarbonLib 1.0 and later
6456  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6457  *    Windows:          in qtmlClient.lib 3.0 and later
6458  }
RemoveUserDataTextnull6459 function RemoveUserDataText( theUserData: UserData; udType: OSType; index: SIGNEDLONG; itlRegionTag: SInt16 ): OSErr; external name '_RemoveUserDataText';
6460 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6461 
6462 
6463 {
6464  *  NewUserData()
6465  *
6466  *  Availability:
6467  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6468  *    CarbonLib:        in CarbonLib 1.0 and later
6469  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6470  *    Windows:          in qtmlClient.lib 3.0 and later
6471  }
NewUserDatanull6472 function NewUserData( var theUserData: UserData ): OSErr; external name '_NewUserData';
6473 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6474 
6475 
6476 {
6477  *  DisposeUserData()
6478  *
6479  *  Availability:
6480  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6481  *    CarbonLib:        in CarbonLib 1.0 and later
6482  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6483  *    Windows:          in qtmlClient.lib 3.0 and later
6484  }
DisposeUserDatanull6485 function DisposeUserData( theUserData: UserData ): OSErr; external name '_DisposeUserData';
6486 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6487 
6488 
6489 {
6490  *  NewUserDataFromHandle()
6491  *
6492  *  Availability:
6493  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6494  *    CarbonLib:        in CarbonLib 1.0 and later
6495  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6496  *    Windows:          in qtmlClient.lib 3.0 and later
6497  }
NewUserDataFromHandlenull6498 function NewUserDataFromHandle( h: Handle; var theUserData: UserData ): OSErr; external name '_NewUserDataFromHandle';
6499 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6500 
6501 
6502 {
6503  *  PutUserDataIntoHandle()
6504  *
6505  *  Availability:
6506  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6507  *    CarbonLib:        in CarbonLib 1.0 and later
6508  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6509  *    Windows:          in qtmlClient.lib 3.0 and later
6510  }
PutUserDataIntoHandlenull6511 function PutUserDataIntoHandle( theUserData: UserData; h: Handle ): OSErr; external name '_PutUserDataIntoHandle';
6512 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6513 
6514 
6515 const
6516 	kQTCopyUserDataReplace = FourCharCode('rplc'); { Delete all destination user data items and then add source user data items }
6517 	kQTCopyUserDataMerge = FourCharCode('merg'); { Add source user data items to destination user data }
6518 
6519 {
6520  *  CopyMovieUserData()
6521  *
6522  *  Availability:
6523  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6524  *    CarbonLib:        in CarbonLib 1.6 and later
6525  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6526  *    Windows:          in qtmlClient.lib 6.0 and later
6527  }
CopyMovieUserDatanull6528 function CopyMovieUserData( srcMovie: Movie; dstMovie: Movie; copyRule: OSType ): OSErr; external name '_CopyMovieUserData';
6529 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6530 
6531 
6532 {
6533  *  CopyTrackUserData()
6534  *
6535  *  Availability:
6536  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6537  *    CarbonLib:        in CarbonLib 1.6 and later
6538  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6539  *    Windows:          in qtmlClient.lib 6.0 and later
6540  }
CopyTrackUserDatanull6541 function CopyTrackUserData( srcTrack: Track; dstTrack: Track; copyRule: OSType ): OSErr; external name '_CopyTrackUserData';
6542 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6543 
6544 
6545 {
6546  *  CopyMediaUserData()
6547  *
6548  *  Availability:
6549  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6550  *    CarbonLib:        in CarbonLib 1.6 and later
6551  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6552  *    Windows:          in qtmlClient.lib 6.0 and later
6553  }
CopyMediaUserDatanull6554 function CopyMediaUserData( srcMedia: Media; dstMedia: Media; copyRule: OSType ): OSErr; external name '_CopyMediaUserData';
6555 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6556 
6557 
6558 {
6559  *  CopyUserData()
6560  *
6561  *  Availability:
6562  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6563  *    CarbonLib:        in CarbonLib 1.6 and later
6564  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6565  *    Windows:          in qtmlClient.lib 6.0 and later
6566  }
CopyUserDatanull6567 function CopyUserData( srcUserData: UserData; dstUserData: UserData; copyRule: OSType ): OSErr; external name '_CopyUserData';
6568 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6569 
6570 
6571 {
6572  *  SetMoviePropertyAtom()
6573  *
6574  *  Availability:
6575  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6576  *    CarbonLib:        in CarbonLib 1.1 and later
6577  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
6578  *    Windows:          in qtmlClient.lib 4.1 and later
6579  }
SetMoviePropertyAtomnull6580 function SetMoviePropertyAtom( theMovie: Movie; propertyAtom: QTAtomContainer ): OSErr; external name '_SetMoviePropertyAtom';
6581 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6582 
6583 
6584 {
6585  *  GetMoviePropertyAtom()
6586  *
6587  *  Availability:
6588  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6589  *    CarbonLib:        in CarbonLib 1.1 and later
6590  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
6591  *    Windows:          in qtmlClient.lib 4.1 and later
6592  }
GetMoviePropertyAtomnull6593 function GetMoviePropertyAtom( theMovie: Movie; var propertyAtom: QTAtomContainer ): OSErr; external name '_GetMoviePropertyAtom';
6594 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6595 
6596 
6597 {
6598  *  GetMediaNextInterestingDecodeTime()
6599  *
6600  *  Summary:
6601  *    Searches for decode times of interest in a media.
6602  *
6603  *  Discussion:
6604  *    This function takes the same flags as GetMediaNextInterestingTime.
6605  *
6606  *  Parameters:
6607  *
6608  *    theMedia:
6609  *      The media for this operation.  Your application obtains this
6610  *      media identifier from such functions as NewTrackMedia and
6611  *      GetTrackMedia.
6612  *
6613  *    interestingTimeFlags:
6614  *      Contains flags that determine the search criteria. Note that
6615  *      you may set only one of the nextTimeMediaSample,
6616  *      nextTimeMediaEdit or nextTimeSyncSample flags to 1.  Set unused
6617  *      flags to 0.
6618  *
6619  *    decodeTime:
6620  *      Specifies a time value that establishes the starting point for
6621  *      the search. This time value must be expressed in the media's
6622  *      time scale.
6623  *
6624  *    rate:
6625  *      The search direction. Negative values cause the Movie Toolbox
6626  *      to search backward from the starting point specified in the
6627  *      decodeTime parameter. Other values cause a forward search.
6628  *
6629  *    interestingDecodeTime:
6630  *      A pointer to a time value. The Movie Toolbox returns the first
6631  *      decode time value it finds that meets the search criteria
6632  *      specified in the flags parameter. This time value is in the
6633  *      media's time scale. If there are no times that meet the search
6634  *      criteria you specify, the Movie Toolbox sets this value to -1.
6635  *      Set this parameter to NULL if you are not interested in this
6636  *      information.
6637  *
6638  *    interestingDecodeDuration:
6639  *      A pointer to a time value. The Movie Toolbox returns the decode
6640  *      duration of the interesting time. This time value is in the
6641  *      media's time coordinate system. Set this parameter to NULL if
6642  *      you don't want this information; this lets the function work
6643  *      faster.
6644  *
6645  *  Availability:
6646  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
6647  *    CarbonLib:        not available
6648  *    Non-Carbon CFM:   not available
6649  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
6650  }
6651 procedure GetMediaNextInterestingDecodeTime( theMedia: Media; interestingTimeFlags: SInt16; decodeTime: TimeValue64; rate: Fixed; var interestingDecodeTime: TimeValue64; var interestingDecodeDuration: TimeValue64 ); external name '_GetMediaNextInterestingDecodeTime';
6652 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
6653 
6654 
6655 {
6656  *  GetMediaNextInterestingDisplayTime()
6657  *
6658  *  Summary:
6659  *    Searches for display times of interest in a media.
6660  *
6661  *  Discussion:
6662  *    This function takes the same flags as GetMediaNextInterestingTime.
6663  *
6664  *  Parameters:
6665  *
6666  *    theMedia:
6667  *      The media for this operation.  Your application obtains this
6668  *      media identifier from such functions as NewTrackMedia and
6669  *      GetTrackMedia.
6670  *
6671  *    interestingTimeFlags:
6672  *      Contains flags that determine the search criteria. Note that
6673  *      you may set only one of the nextTimeMediaSample,
6674  *      nextTimeMediaEdit or nextTimeSyncSample flags to 1. Set unused
6675  *      flags to 0.
6676  *
6677  *    displayTime:
6678  *      Specifies a time value that establishes the starting point for
6679  *      the search. This time value must be expressed in the media's
6680  *      time scale.
6681  *
6682  *    rate:
6683  *      The search direction. Negative values cause the Movie Toolbox
6684  *      to search backward from the starting point specified in the
6685  *      time parameter. Other values cause a forward search.
6686  *
6687  *    interestingDisplayTime:
6688  *      A pointer to a time value. The Movie Toolbox returns the first
6689  *      display time value it finds that meets the search criteria
6690  *      specified in the flags parameter. This time value is in the
6691  *      media's time scale. If there are no times that meet the search
6692  *      criteria you specify, the Movie Toolbox sets this value to -1.
6693  *      Set this parameter to NULL if you are not interested in this
6694  *      information.
6695  *
6696  *    interestingDisplayDuration:
6697  *      A pointer to a time value. The Movie Toolbox returns the
6698  *      display duration of the interesting time. This time value is in
6699  *      the media's time coordinate system. Set this parameter to NULL
6700  *      if you don't want this information; this lets the function work
6701  *      faster.
6702  *
6703  *  Availability:
6704  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
6705  *    CarbonLib:        not available
6706  *    Non-Carbon CFM:   not available
6707  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
6708  }
6709 procedure GetMediaNextInterestingDisplayTime( theMedia: Media; interestingTimeFlags: SInt16; displayTime: TimeValue64; rate: Fixed; var interestingDisplayTime: TimeValue64; var interestingDisplayDuration: TimeValue64 ); external name '_GetMediaNextInterestingDisplayTime';
6710 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
6711 
6712 
6713 {
6714  *  GetMediaNextInterestingTime()
6715  *
6716  *  Availability:
6717  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6718  *    CarbonLib:        in CarbonLib 1.0 and later
6719  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6720  *    Windows:          in qtmlClient.lib 3.0 and later
6721  }
6722 procedure GetMediaNextInterestingTime( theMedia: Media; interestingTimeFlags: SInt16; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue ); external name '_GetMediaNextInterestingTime';
6723 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6724 
6725 
6726 {
6727  *  GetTrackNextInterestingTime()
6728  *
6729  *  Availability:
6730  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6731  *    CarbonLib:        in CarbonLib 1.0 and later
6732  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6733  *    Windows:          in qtmlClient.lib 3.0 and later
6734  }
6735 procedure GetTrackNextInterestingTime( theTrack: Track; interestingTimeFlags: SInt16; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue ); external name '_GetTrackNextInterestingTime';
6736 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6737 
6738 
6739 {
6740  *  GetMovieNextInterestingTime()
6741  *
6742  *  Availability:
6743  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6744  *    CarbonLib:        in CarbonLib 1.0 and later
6745  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6746  *    Windows:          in qtmlClient.lib 3.0 and later
6747  }
6748 procedure GetMovieNextInterestingTime( theMovie: Movie; interestingTimeFlags: SInt16; numMediaTypes: SInt16; whichMediaTypes: OSTypePtr; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue ); external name '_GetMovieNextInterestingTime';
6749 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6750 
6751 
6752 {
6753  *  CreateMovieFile()
6754  *
6755  *  Availability:
6756  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6757  *    CarbonLib:        in CarbonLib 1.0 and later
6758  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6759  *    Windows:          in qtmlClient.lib 3.0 and later
6760  }
CreateMovieFilenull6761 function CreateMovieFile( const (*var*) fileSpec: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG; var resRefNum: SInt16; var newmovie: Movie ): OSErr; external name '_CreateMovieFile';
6762 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6763 
6764 
6765 {
6766  *  OpenMovieFile()
6767  *
6768  *  Availability:
6769  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6770  *    CarbonLib:        in CarbonLib 1.0 and later
6771  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6772  *    Windows:          in qtmlClient.lib 3.0 and later
6773  }
OpenMovieFilenull6774 function OpenMovieFile( const (*var*) fileSpec: FSSpec; var resRefNum: SInt16; permission: SInt8 ): OSErr; external name '_OpenMovieFile';
6775 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6776 
6777 
6778 {
6779  *  CloseMovieFile()
6780  *
6781  *  Availability:
6782  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6783  *    CarbonLib:        in CarbonLib 1.0 and later
6784  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6785  *    Windows:          in qtmlClient.lib 3.0 and later
6786  }
CloseMovieFilenull6787 function CloseMovieFile( resRefNum: SInt16 ): OSErr; external name '_CloseMovieFile';
6788 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6789 
6790 
6791 {
6792  *  DeleteMovieFile()
6793  *
6794  *  Availability:
6795  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6796  *    CarbonLib:        in CarbonLib 1.0 and later
6797  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6798  *    Windows:          in qtmlClient.lib 3.0 and later
6799  }
DeleteMovieFilenull6800 function DeleteMovieFile( const (*var*) fileSpec: FSSpec ): OSErr; external name '_DeleteMovieFile';
6801 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6802 
6803 
6804 {
6805  *  NewMovieFromFile()
6806  *
6807  *  Availability:
6808  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6809  *    CarbonLib:        in CarbonLib 1.0 and later
6810  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6811  *    Windows:          in qtmlClient.lib 3.0 and later
6812  }
NewMovieFromFilenull6813 function NewMovieFromFile( var theMovie: Movie; resRefNum: SInt16; resId: SInt16Ptr { can be NULL }; resName: StringPtr; newMovieFlags: SInt16; dataRefWasChanged: BooleanPtr { can be NULL } ): OSErr; external name '_NewMovieFromFile';
6814 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6815 
6816 
6817 {
6818  *  NewMovieFromHandle()
6819  *
6820  *  Availability:
6821  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6822  *    CarbonLib:        in CarbonLib 1.0 and later
6823  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6824  *    Windows:          in qtmlClient.lib 3.0 and later
6825  }
NewMovieFromHandlenull6826 function NewMovieFromHandle( var theMovie: Movie; h: Handle; newMovieFlags: SInt16; var dataRefWasChanged: Boolean ): OSErr; external name '_NewMovieFromHandle';
6827 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6828 
6829 
6830 {
6831  *  NewMovieFromDataFork()
6832  *
6833  *  Availability:
6834  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6835  *    CarbonLib:        in CarbonLib 1.0 and later
6836  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6837  *    Windows:          in qtmlClient.lib 3.0 and later
6838  }
NewMovieFromDataForknull6839 function NewMovieFromDataFork( var theMovie: Movie; fRefNum: SInt16; fileOffset: SIGNEDLONG; newMovieFlags: SInt16; var dataRefWasChanged: Boolean ): OSErr; external name '_NewMovieFromDataFork';
6840 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6841 
6842 
6843 {
6844  *  NewMovieFromDataFork64()
6845  *
6846  *  Availability:
6847  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6848  *    CarbonLib:        in CarbonLib 1.0.2 and later
6849  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
6850  *    Windows:          in qtmlClient.lib 4.0 and later
6851  }
NewMovieFromDataFork64null6852 function NewMovieFromDataFork64( var theMovie: Movie; fRefNum: SIGNEDLONG; const (*var*) fileOffset: wide; newMovieFlags: SInt16; var dataRefWasChanged: Boolean ): OSErr; external name '_NewMovieFromDataFork64';
6853 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6854 
6855 
6856 {
6857  *  NewMovieFromUserProc()
6858  *
6859  *  Availability:
6860  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6861  *    CarbonLib:        in CarbonLib 1.0 and later
6862  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6863  *    Windows:          in qtmlClient.lib 3.0 and later
6864  }
NewMovieFromUserProcnull6865 function NewMovieFromUserProc( var m: Movie; flags: SInt16; var dataRefWasChanged: Boolean; getProc: GetMovieUPP; refCon: UnivPtr; defaultDataRef: Handle; dataRefType: OSType ): OSErr; external name '_NewMovieFromUserProc';
6866 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6867 
6868 
6869 {
6870  *  NewMovieFromDataRef()
6871  *
6872  *  Availability:
6873  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6874  *    CarbonLib:        in CarbonLib 1.0 and later
6875  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6876  *    Windows:          in qtmlClient.lib 3.0 and later
6877  }
NewMovieFromDataRefnull6878 function NewMovieFromDataRef( var m: Movie; flags: SInt16; var id: SInt16; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_NewMovieFromDataRef';
6879 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6880 
6881 
6882 {
6883  *  NewMovieFromStorageOffset()
6884  *
6885  *  Availability:
6886  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6887  *    CarbonLib:        in CarbonLib 1.6 and later
6888  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6889  *    Windows:          in qtmlClient.lib 6.0 and later
6890  }
NewMovieFromStorageOffsetnull6891 function NewMovieFromStorageOffset( var theMovie: Movie; dh: DataHandler; const (*var*) fileOffset: wide; newMovieFlags: SInt16; var dataRefWasChanged: Boolean ): OSErr; external name '_NewMovieFromStorageOffset';
6892 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6893 
6894 
6895 {
6896  *  NewMovieForDataRefFromHandle()
6897  *
6898  *  Availability:
6899  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6900  *    CarbonLib:        in CarbonLib 1.6 and later
6901  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6902  *    Windows:          in qtmlClient.lib 6.0 and later
6903  }
NewMovieForDataRefFromHandlenull6904 function NewMovieForDataRefFromHandle( var theMovie: Movie; h: Handle; newMovieFlags: SInt16; var dataRefWasChanged: Boolean; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_NewMovieForDataRefFromHandle';
6905 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6906 
6907 
6908 {
6909  *  AddMovieResource()
6910  *
6911  *  Availability:
6912  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6913  *    CarbonLib:        in CarbonLib 1.0 and later
6914  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6915  *    Windows:          in qtmlClient.lib 3.0 and later
6916  }
AddMovieResourcenull6917 function AddMovieResource( theMovie: Movie; resRefNum: SInt16; var resId: SInt16; const (*var*) resName: Str255 ): OSErr; external name '_AddMovieResource';
6918 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6919 
6920 
6921 {
6922  *  UpdateMovieResource()
6923  *
6924  *  Availability:
6925  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6926  *    CarbonLib:        in CarbonLib 1.0 and later
6927  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6928  *    Windows:          in qtmlClient.lib 3.0 and later
6929  }
UpdateMovieResourcenull6930 function UpdateMovieResource( theMovie: Movie; resRefNum: SInt16; resId: SInt16; const (*var*) resName: Str255 ): OSErr; external name '_UpdateMovieResource';
6931 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6932 
6933 
6934 {
6935  *  RemoveMovieResource()
6936  *
6937  *  Availability:
6938  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
6939  *    CarbonLib:        in CarbonLib 1.0 and later
6940  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
6941  *    Windows:          in qtmlClient.lib 3.0 and later
6942  }
RemoveMovieResourcenull6943 function RemoveMovieResource( resRefNum: SInt16; resId: SInt16 ): OSErr; external name '_RemoveMovieResource';
6944 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
6945 
6946 
6947 {
6948  *  CreateMovieStorage()
6949  *
6950  *  Availability:
6951  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6952  *    CarbonLib:        in CarbonLib 1.6 and later
6953  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6954  *    Windows:          in qtmlClient.lib 6.0 and later
6955  }
CreateMovieStoragenull6956 function CreateMovieStorage( dataRef: Handle; dataRefType: OSType; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG; var outDataHandler: DataHandler; var newmovie: Movie ): OSErr; external name '_CreateMovieStorage';
6957 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6958 
6959 
6960 {
6961  *  OpenMovieStorage()
6962  *
6963  *  Availability:
6964  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6965  *    CarbonLib:        in CarbonLib 1.6 and later
6966  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6967  *    Windows:          in qtmlClient.lib 6.0 and later
6968  }
OpenMovieStoragenull6969 function OpenMovieStorage( dataRef: Handle; dataRefType: OSType; flags: SIGNEDLONG; var outDataHandler: DataHandler ): OSErr; external name '_OpenMovieStorage';
6970 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6971 
6972 
6973 {
6974  *  CloseMovieStorage()
6975  *
6976  *  Availability:
6977  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6978  *    CarbonLib:        in CarbonLib 1.6 and later
6979  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6980  *    Windows:          in qtmlClient.lib 6.0 and later
6981  }
CloseMovieStoragenull6982 function CloseMovieStorage( dh: DataHandler ): OSErr; external name '_CloseMovieStorage';
6983 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6984 
6985 
6986 {
6987  *  DeleteMovieStorage()
6988  *
6989  *  Availability:
6990  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
6991  *    CarbonLib:        in CarbonLib 1.6 and later
6992  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
6993  *    Windows:          in qtmlClient.lib 6.0 and later
6994  }
DeleteMovieStoragenull6995 function DeleteMovieStorage( dataRef: Handle; dataRefType: OSType ): OSErr; external name '_DeleteMovieStorage';
6996 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
6997 
6998 
6999 {
7000  *  AddMovieToStorage()
7001  *
7002  *  Availability:
7003  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
7004  *    CarbonLib:        in CarbonLib 1.6 and later
7005  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
7006  *    Windows:          in qtmlClient.lib 6.0 and later
7007  }
AddMovieToStoragenull7008 function AddMovieToStorage( theMovie: Movie; dh: DataHandler ): OSErr; external name '_AddMovieToStorage';
7009 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
7010 
7011 
7012 {
7013  *  UpdateMovieInStorage()
7014  *
7015  *  Availability:
7016  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
7017  *    CarbonLib:        in CarbonLib 1.6 and later
7018  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
7019  *    Windows:          in qtmlClient.lib 6.0 and later
7020  }
UpdateMovieInStoragenull7021 function UpdateMovieInStorage( theMovie: Movie; dh: DataHandler ): OSErr; external name '_UpdateMovieInStorage';
7022 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
7023 
7024 
7025 {
7026  *  HasMovieChanged()
7027  *
7028  *  Availability:
7029  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7030  *    CarbonLib:        in CarbonLib 1.0 and later
7031  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7032  *    Windows:          in qtmlClient.lib 3.0 and later
7033  }
HasMovieChangednull7034 function HasMovieChanged( theMovie: Movie ): Boolean; external name '_HasMovieChanged';
7035 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7036 
7037 
7038 {
7039  *  ClearMovieChanged()
7040  *
7041  *  Availability:
7042  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7043  *    CarbonLib:        in CarbonLib 1.0 and later
7044  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7045  *    Windows:          in qtmlClient.lib 3.0 and later
7046  }
7047 procedure ClearMovieChanged( theMovie: Movie ); external name '_ClearMovieChanged';
7048 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7049 
7050 
7051 {
7052  *  SetMovieDefaultDataRef()
7053  *
7054  *  Availability:
7055  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7056  *    CarbonLib:        in CarbonLib 1.0 and later
7057  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7058  *    Windows:          in qtmlClient.lib 3.0 and later
7059  }
SetMovieDefaultDataRefnull7060 function SetMovieDefaultDataRef( theMovie: Movie; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_SetMovieDefaultDataRef';
7061 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7062 
7063 
7064 {
7065  *  GetMovieDefaultDataRef()
7066  *
7067  *  Availability:
7068  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7069  *    CarbonLib:        in CarbonLib 1.0 and later
7070  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7071  *    Windows:          in qtmlClient.lib 3.0 and later
7072  }
GetMovieDefaultDataRefnull7073 function GetMovieDefaultDataRef( theMovie: Movie; var dataRef: Handle; var dataRefType: OSType ): OSErr; external name '_GetMovieDefaultDataRef';
7074 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7075 
7076 
7077 {
7078  *  SetMovieAnchorDataRef()
7079  *
7080  *  Availability:
7081  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7082  *    CarbonLib:        in CarbonLib 1.1 and later
7083  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
7084  *    Windows:          in qtmlClient.lib 4.1 and later
7085  }
SetMovieAnchorDataRefnull7086 function SetMovieAnchorDataRef( theMovie: Movie; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_SetMovieAnchorDataRef';
7087 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7088 
7089 
7090 {
7091  *  GetMovieAnchorDataRef()
7092  *
7093  *  Availability:
7094  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7095  *    CarbonLib:        in CarbonLib 1.1 and later
7096  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
7097  *    Windows:          in qtmlClient.lib 4.1 and later
7098  }
GetMovieAnchorDataRefnull7099 function GetMovieAnchorDataRef( theMovie: Movie; var dataRef: Handle; var dataRefType: OSType; var outFlags: SIGNEDLONG ): OSErr; external name '_GetMovieAnchorDataRef';
7100 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7101 
7102 
7103 {
7104  *  SetMovieColorTable()
7105  *
7106  *  Availability:
7107  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7108  *    CarbonLib:        in CarbonLib 1.0 and later
7109  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7110  *    Windows:          in qtmlClient.lib 3.0 and later
7111  }
SetMovieColorTablenull7112 function SetMovieColorTable( theMovie: Movie; ctab: CTabHandle ): OSErr; external name '_SetMovieColorTable';
7113 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7114 
7115 
7116 {
7117  *  GetMovieColorTable()
7118  *
7119  *  Availability:
7120  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7121  *    CarbonLib:        in CarbonLib 1.0 and later
7122  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7123  *    Windows:          in qtmlClient.lib 3.0 and later
7124  }
GetMovieColorTablenull7125 function GetMovieColorTable( theMovie: Movie; var ctab: CTabHandle ): OSErr; external name '_GetMovieColorTable';
7126 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7127 
7128 
7129 {
7130  *  FlattenMovie()
7131  *
7132  *  Availability:
7133  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7134  *    CarbonLib:        in CarbonLib 1.0 and later
7135  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7136  *    Windows:          in qtmlClient.lib 3.0 and later
7137  }
7138 procedure FlattenMovie( theMovie: Movie; movieFlattenFlags: SIGNEDLONG; const (*var*) theFile: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG; var resId: SInt16; const (*var*) resName: Str255 ); external name '_FlattenMovie';
7139 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7140 
7141 
7142 {
7143  *  FlattenMovieData()
7144  *
7145  *  Availability:
7146  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7147  *    CarbonLib:        in CarbonLib 1.0 and later
7148  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7149  *    Windows:          in qtmlClient.lib 3.0 and later
7150  }
FlattenMovieDatanull7151 function FlattenMovieData( theMovie: Movie; movieFlattenFlags: SIGNEDLONG; const (*var*) theFile: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG ): Movie; external name '_FlattenMovieData';
7152 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7153 
7154 
7155 {
7156  *  FlattenMovieDataToDataRef()
7157  *
7158  *  Availability:
7159  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
7160  *    CarbonLib:        in CarbonLib 1.6 and later
7161  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
7162  *    Windows:          in qtmlClient.lib 6.0 and later
7163  }
FlattenMovieDataToDataRefnull7164 function FlattenMovieDataToDataRef( theMovie: Movie; movieFlattenFlags: SIGNEDLONG; dataRef: Handle; dataRefType: OSType; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG ): Movie; external name '_FlattenMovieDataToDataRef';
7165 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
7166 
7167 
7168 {
7169  *  SetMovieProgressProc()
7170  *
7171  *  Availability:
7172  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7173  *    CarbonLib:        in CarbonLib 1.0 and later
7174  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7175  *    Windows:          in qtmlClient.lib 3.0 and later
7176  }
7177 procedure SetMovieProgressProc( theMovie: Movie; p: MovieProgressUPP; refcon: SIGNEDLONG ); external name '_SetMovieProgressProc';
7178 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7179 
7180 
7181 {
7182  *  GetMovieProgressProc()
7183  *
7184  *  Availability:
7185  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7186  *    CarbonLib:        in CarbonLib 1.0.2 and later
7187  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
7188  *    Windows:          in qtmlClient.lib 4.0 and later
7189  }
7190 procedure GetMovieProgressProc( theMovie: Movie; var p: MovieProgressUPP; var refcon: SIGNEDLONG ); external name '_GetMovieProgressProc';
7191 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7192 
7193 
7194 {
7195  *  CreateShortcutMovieFile()
7196  *
7197  *  Availability:
7198  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7199  *    CarbonLib:        in CarbonLib 1.0.2 and later
7200  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
7201  *    Windows:          in qtmlClient.lib 4.0 and later
7202  }
CreateShortcutMovieFilenull7203 function CreateShortcutMovieFile( const (*var*) fileSpec: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SIGNEDLONG; targetDataRef: Handle; targetDataRefType: OSType ): OSErr; external name '_CreateShortcutMovieFile';
7204 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7205 
7206 
7207 {
7208  *  MovieSearchText()
7209  *
7210  *  Availability:
7211  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7212  *    CarbonLib:        in CarbonLib 1.0 and later
7213  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7214  *    Windows:          in qtmlClient.lib 3.0 and later
7215  }
MovieSearchTextnull7216 function MovieSearchText( theMovie: Movie; text: Ptr; size: SIGNEDLONG; searchFlags: SIGNEDLONG; var searchTrack: Track; var searchTime: TimeValue; var searchOffset: SIGNEDLONG ): OSErr; external name '_MovieSearchText';
7217 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7218 
7219 
7220 {
7221  *  GetPosterBox()
7222  *
7223  *  Availability:
7224  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7225  *    CarbonLib:        in CarbonLib 1.0 and later
7226  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7227  *    Windows:          in qtmlClient.lib 3.0 and later
7228  }
7229 procedure GetPosterBox( theMovie: Movie; var boxRect: Rect ); external name '_GetPosterBox';
7230 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7231 
7232 
7233 {
7234  *  SetPosterBox()
7235  *
7236  *  Availability:
7237  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7238  *    CarbonLib:        in CarbonLib 1.0 and later
7239  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7240  *    Windows:          in qtmlClient.lib 3.0 and later
7241  }
7242 procedure SetPosterBox( theMovie: Movie; const (*var*) boxRect: Rect ); external name '_SetPosterBox';
7243 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7244 
7245 
7246 {
7247  *  GetMovieSegmentDisplayBoundsRgn()
7248  *
7249  *  Availability:
7250  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7251  *    CarbonLib:        in CarbonLib 1.0 and later
7252  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7253  *    Windows:          in qtmlClient.lib 3.0 and later
7254  }
GetMovieSegmentDisplayBoundsRgnnull7255 function GetMovieSegmentDisplayBoundsRgn( theMovie: Movie; time: TimeValue; duration: TimeValue ): RgnHandle; external name '_GetMovieSegmentDisplayBoundsRgn';
7256 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7257 
7258 
7259 {
7260  *  GetTrackSegmentDisplayBoundsRgn()
7261  *
7262  *  Availability:
7263  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7264  *    CarbonLib:        in CarbonLib 1.0 and later
7265  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7266  *    Windows:          in qtmlClient.lib 3.0 and later
7267  }
GetTrackSegmentDisplayBoundsRgnnull7268 function GetTrackSegmentDisplayBoundsRgn( theTrack: Track; time: TimeValue; duration: TimeValue ): RgnHandle; external name '_GetTrackSegmentDisplayBoundsRgn';
7269 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7270 
7271 
7272 {
7273  *  SetMovieCoverProcs()
7274  *
7275  *  Availability:
7276  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7277  *    CarbonLib:        in CarbonLib 1.0 and later
7278  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7279  *    Windows:          in qtmlClient.lib 3.0 and later
7280  }
7281 procedure SetMovieCoverProcs( theMovie: Movie; uncoverProc: MovieRgnCoverUPP; coverProc: MovieRgnCoverUPP; refcon: SIGNEDLONG ); external name '_SetMovieCoverProcs';
7282 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7283 
7284 
7285 {
7286  *  GetMovieCoverProcs()
7287  *
7288  *  Availability:
7289  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7290  *    CarbonLib:        in CarbonLib 1.0 and later
7291  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7292  *    Windows:          in qtmlClient.lib 3.0 and later
7293  }
GetMovieCoverProcsnull7294 function GetMovieCoverProcs( theMovie: Movie; var uncoverProc: MovieRgnCoverUPP; var coverProc: MovieRgnCoverUPP; var refcon: SIGNEDLONG ): OSErr; external name '_GetMovieCoverProcs';
7295 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7296 
7297 
7298 {
7299  *  GetTrackStatus()
7300  *
7301  *  Availability:
7302  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7303  *    CarbonLib:        in CarbonLib 1.0 and later
7304  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7305  *    Windows:          in qtmlClient.lib 3.0 and later
7306  }
GetTrackStatusnull7307 function GetTrackStatus( theTrack: Track ): ComponentResult; external name '_GetTrackStatus';
7308 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7309 
7310 
7311 {
7312  *  GetMovieStatus()
7313  *
7314  *  Availability:
7315  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7316  *    CarbonLib:        in CarbonLib 1.0 and later
7317  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7318  *    Windows:          in qtmlClient.lib 3.0 and later
7319  }
GetMovieStatusnull7320 function GetMovieStatus( theMovie: Movie; var firstProblemTrack: Track ): ComponentResult; external name '_GetMovieStatus';
7321 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7322 
7323 
7324 const
7325 	kMovieLoadStateError = -1;
7326 	kMovieLoadStateLoading = 1000;
7327 	kMovieLoadStateLoaded = 2000;
7328 	kMovieLoadStatePlayable = 10000;
7329 	kMovieLoadStatePlaythroughOK = 20000;
7330 	kMovieLoadStateComplete = 100000;
7331 
7332 {
7333  *  GetMovieLoadState()
7334  *
7335  *  Availability:
7336  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7337  *    CarbonLib:        in CarbonLib 1.1 and later
7338  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
7339  *    Windows:          in qtmlClient.lib 4.1 and later
7340  }
GetMovieLoadStatenull7341 function GetMovieLoadState( theMovie: Movie ): SIGNEDLONG; external name '_GetMovieLoadState';
7342 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7343 
7344 
7345 {***
7346     Thread related Movie routines
7347 ***}
7348 {
7349  *  AttachMovieToCurrentThread()
7350  *
7351  *  Availability:
7352  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7353  *    CarbonLib:        not available
7354  *    Non-Carbon CFM:   not available
7355  }
AttachMovieToCurrentThreadnull7356 function AttachMovieToCurrentThread( m: Movie ): OSErr; external name '_AttachMovieToCurrentThread';
7357 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7358 
7359 
7360 {
7361  *  DetachMovieFromCurrentThread()
7362  *
7363  *  Availability:
7364  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7365  *    CarbonLib:        not available
7366  *    Non-Carbon CFM:   not available
7367  }
DetachMovieFromCurrentThreadnull7368 function DetachMovieFromCurrentThread( m: Movie ): OSErr; external name '_DetachMovieFromCurrentThread';
7369 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7370 
7371 
7372 {
7373  *  GetMovieThreadAttachState()
7374  *
7375  *  Availability:
7376  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7377  *    CarbonLib:        not available
7378  *    Non-Carbon CFM:   not available
7379  }
GetMovieThreadAttachStatenull7380 function GetMovieThreadAttachState( m: Movie; var outAttachedToCurrentThread: Boolean; var outAttachedToAnyThread: Boolean ): OSErr; external name '_GetMovieThreadAttachState';
7381 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7382 
7383 
7384 {***
7385     CanQuickTimeOpenFile, etc.
7386 ***}
7387 { Input flags for CanQuickTimeOpenFile/DataRef }
7388 const
7389 	kQTDontUseDataToFindImporter = 1 shl 0;
7390 	kQTDontLookForMovieImporterIfGraphicsImporterFound = 1 shl 1;
7391 	kQTAllowOpeningStillImagesAsMovies = 1 shl 2;
7392 	kQTAllowImportersThatWouldCreateNewFile = 1 shl 3;
7393 	kQTAllowAggressiveImporters = 1 shl 4; { eg, TEXT and PICT movie importers}
7394 
7395 { Determines whether the file could be opened using a graphics importer or opened in place as a movie. }
7396 {
7397  *  CanQuickTimeOpenFile()
7398  *
7399  *  Availability:
7400  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7401  *    CarbonLib:        in CarbonLib 1.3 and later
7402  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
7403  *    Windows:          in qtmlClient.lib 5.0 and later
7404  }
CanQuickTimeOpenFilenull7405 function CanQuickTimeOpenFile( fileSpec: FSSpecPtr; fileType: OSType; fileNameExtension: OSType; var outCanOpenWithGraphicsImporter: Boolean; var outCanOpenAsMovie: Boolean; var outPreferGraphicsImporter: Boolean; inFlags: UInt32 ): OSErr; external name '_CanQuickTimeOpenFile';
7406 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7407 
7408 
7409 { Determines whether the file could be opened using a graphics importer or opened in place as a movie. }
7410 {
7411  *  CanQuickTimeOpenDataRef()
7412  *
7413  *  Availability:
7414  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7415  *    CarbonLib:        in CarbonLib 1.3 and later
7416  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
7417  *    Windows:          in qtmlClient.lib 5.0 and later
7418  }
CanQuickTimeOpenDataRefnull7419 function CanQuickTimeOpenDataRef( dataRef: Handle; dataRefType: OSType; var outCanOpenWithGraphicsImporter: Boolean; var outCanOpenAsMovie: Boolean; var outPreferGraphicsImporter: Boolean; inFlags: UInt32 ): OSErr; external name '_CanQuickTimeOpenDataRef';
7420 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7421 
7422 
7423 {***
7424     Data Reference Utilities
7425 ***}
7426 const
7427 	kQTNativeDefaultPathStyle = -1;
7428 	kQTPOSIXPathStyle = 0;
7429 	kQTHFSPathStyle = 1;
7430 	kQTWindowsPathStyle = 2;
7431 
7432 
7433 type
7434 	QTPathStyle = UNSIGNEDLONG;
7435 {
7436  *  QTNewDataReferenceFromFSRef()
7437  *
7438  *  Availability:
7439  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7440  *    CarbonLib:        not available
7441  *    Non-Carbon CFM:   not available
7442  *    Windows:          in qtmlClient.lib 6.5 and later
7443  }
QTNewDataReferenceFromFSRefnull7444 function QTNewDataReferenceFromFSRef( const (*var*) fileRef: FSRef; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromFSRef';
7445 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7446 
7447 
7448 {
7449  *  QTNewDataReferenceFromFSRefCFString()
7450  *
7451  *  Availability:
7452  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7453  *    CarbonLib:        not available
7454  *    Non-Carbon CFM:   not available
7455  *    Windows:          in qtmlClient.lib 6.5 and later
7456  }
QTNewDataReferenceFromFSRefCFStringnull7457 function QTNewDataReferenceFromFSRefCFString( const (*var*) directoryRef: FSRef; fileName: CFStringRef; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromFSRefCFString';
7458 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7459 
7460 
7461 {
7462  *  QTNewDataReferenceFromFSSpec()
7463  *
7464  *  Availability:
7465  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7466  *    CarbonLib:        not available
7467  *    Non-Carbon CFM:   not available
7468  *    Windows:          in qtmlClient.lib 6.5 and later
7469  }
QTNewDataReferenceFromFSSpecnull7470 function QTNewDataReferenceFromFSSpec( const (*var*) fsspec_: FSSpec; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromFSSpec';
7471 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7472 
7473 
7474 {
7475  *  QTNewDataReferenceWithDirectoryCFString()
7476  *
7477  *  Availability:
7478  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7479  *    CarbonLib:        not available
7480  *    Non-Carbon CFM:   not available
7481  *    Windows:          in qtmlClient.lib 6.5 and later
7482  }
QTNewDataReferenceWithDirectoryCFStringnull7483 function QTNewDataReferenceWithDirectoryCFString( inDataRef: Handle; inDataRefType: OSType; targetName: CFStringRef; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceWithDirectoryCFString';
7484 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7485 
7486 
7487 {
7488  *  QTNewDataReferenceFromFullPathCFString()
7489  *
7490  *  Availability:
7491  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7492  *    CarbonLib:        not available
7493  *    Non-Carbon CFM:   not available
7494  *    Windows:          in qtmlClient.lib 6.5 and later
7495  }
QTNewDataReferenceFromFullPathCFStringnull7496 function QTNewDataReferenceFromFullPathCFString( filePath: CFStringRef; pathStyle: QTPathStyle; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromFullPathCFString';
7497 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7498 
7499 
7500 {
7501  *  QTNewDataReferenceFromCFURL()
7502  *
7503  *  Availability:
7504  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7505  *    CarbonLib:        not available
7506  *    Non-Carbon CFM:   not available
7507  *    Windows:          in qtmlClient.lib 6.5 and later
7508  }
QTNewDataReferenceFromCFURLnull7509 function QTNewDataReferenceFromCFURL( url: CFURLRef; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromCFURL';
7510 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7511 
7512 
7513 {
7514  *  QTNewDataReferenceFromURLCFString()
7515  *
7516  *  Availability:
7517  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7518  *    CarbonLib:        not available
7519  *    Non-Carbon CFM:   not available
7520  *    Windows:          in qtmlClient.lib 6.5 and later
7521  }
QTNewDataReferenceFromURLCFStringnull7522 function QTNewDataReferenceFromURLCFString( urlString: CFStringRef; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTNewDataReferenceFromURLCFString';
7523 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7524 
7525 
7526 {
7527  *  QTGetDataReferenceDirectoryDataReference()
7528  *
7529  *  Availability:
7530  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7531  *    CarbonLib:        not available
7532  *    Non-Carbon CFM:   not available
7533  *    Windows:          in qtmlClient.lib 6.5 and later
7534  }
QTGetDataReferenceDirectoryDataReferencenull7535 function QTGetDataReferenceDirectoryDataReference( dataRef: Handle; dataRefType: OSType; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTGetDataReferenceDirectoryDataReference';
7536 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7537 
7538 
7539 {
7540  *  QTGetDataReferenceTargetNameCFString()
7541  *
7542  *  Availability:
7543  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7544  *    CarbonLib:        not available
7545  *    Non-Carbon CFM:   not available
7546  *    Windows:          in qtmlClient.lib 6.5 and later
7547  }
QTGetDataReferenceTargetNameCFStringnull7548 function QTGetDataReferenceTargetNameCFString( dataRef: Handle; dataRefType: OSType; var name: CFStringRef ): OSErr; external name '_QTGetDataReferenceTargetNameCFString';
7549 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7550 
7551 
7552 {
7553  *  QTGetDataReferenceFullPathCFString()
7554  *
7555  *  Availability:
7556  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7557  *    CarbonLib:        not available
7558  *    Non-Carbon CFM:   not available
7559  *    Windows:          in qtmlClient.lib 6.5 and later
7560  }
QTGetDataReferenceFullPathCFStringnull7561 function QTGetDataReferenceFullPathCFString( dataRef: Handle; dataRefType: OSType; style: QTPathStyle; var outPath: CFStringRef ): OSErr; external name '_QTGetDataReferenceFullPathCFString';
7562 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7563 
7564 
7565 {
7566  *  QTGetDataHandlerDirectoryDataReference()
7567  *
7568  *  Availability:
7569  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7570  *    CarbonLib:        not available
7571  *    Non-Carbon CFM:   not available
7572  *    Windows:          in qtmlClient.lib 6.5 and later
7573  }
QTGetDataHandlerDirectoryDataReferencenull7574 function QTGetDataHandlerDirectoryDataReference( dh: DataHandler; flags: UInt32; var outDataRef: Handle; var outDataRefType: OSType ): OSErr; external name '_QTGetDataHandlerDirectoryDataReference';
7575 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7576 
7577 
7578 {
7579  *  QTGetDataHandlerTargetNameCFString()
7580  *
7581  *  Availability:
7582  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7583  *    CarbonLib:        not available
7584  *    Non-Carbon CFM:   not available
7585  *    Windows:          in qtmlClient.lib 6.5 and later
7586  }
QTGetDataHandlerTargetNameCFStringnull7587 function QTGetDataHandlerTargetNameCFString( dh: DataHandler; var fileName: CFStringRef ): OSErr; external name '_QTGetDataHandlerTargetNameCFString';
7588 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7589 
7590 
7591 {
7592  *  QTGetDataHandlerFullPathCFString()
7593  *
7594  *  Availability:
7595  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
7596  *    CarbonLib:        not available
7597  *    Non-Carbon CFM:   not available
7598  *    Windows:          in qtmlClient.lib 6.5 and later
7599  }
QTGetDataHandlerFullPathCFStringnull7600 function QTGetDataHandlerFullPathCFString( dh: DataHandler; style: QTPathStyle; var outPath: CFStringRef ): OSErr; external name '_QTGetDataHandlerFullPathCFString';
7601 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
7602 
7603 
7604 {***
7605     Movie Controller support routines
7606 ***}
7607 {
7608  *  NewMovieController()
7609  *
7610  *  Availability:
7611  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7612  *    CarbonLib:        in CarbonLib 1.0 and later
7613  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7614  *    Windows:          in qtmlClient.lib 3.0 and later
7615  }
NewMovieControllernull7616 function NewMovieController( theMovie: Movie; const (*var*) movieRect: Rect; someFlags: SIGNEDLONG ): ComponentInstance; external name '_NewMovieController';
7617 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7618 
7619 
7620 {
7621  *  DisposeMovieController()
7622  *
7623  *  Availability:
7624  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7625  *    CarbonLib:        in CarbonLib 1.0 and later
7626  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7627  *    Windows:          in qtmlClient.lib 3.0 and later
7628  }
7629 procedure DisposeMovieController( mc: ComponentInstance ); external name '_DisposeMovieController';
7630 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7631 
7632 
7633 {
7634  *  ShowMovieInformation()
7635  *
7636  *  Availability:
7637  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7638  *    CarbonLib:        in CarbonLib 1.0 and later
7639  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7640  *    Windows:          in qtmlClient.lib 3.0 and later
7641  }
7642 procedure ShowMovieInformation( theMovie: Movie; filterProc: ModalFilterUPP; refCon: SIGNEDLONG ); external name '_ShowMovieInformation';
7643 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7644 
7645 
7646 {****
7647     Scrap routines
7648 ****}
7649 {
7650  *  PutMovieOnScrap()
7651  *
7652  *  Availability:
7653  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7654  *    CarbonLib:        in CarbonLib 1.0 and later
7655  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7656  *    Windows:          in qtmlClient.lib 3.0 and later
7657  }
PutMovieOnScrapnull7658 function PutMovieOnScrap( theMovie: Movie; movieScrapFlags: SIGNEDLONG ): OSErr; external name '_PutMovieOnScrap';
7659 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7660 
7661 
7662 {
7663  *  NewMovieFromScrap()
7664  *
7665  *  Availability:
7666  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7667  *    CarbonLib:        in CarbonLib 1.0 and later
7668  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7669  *    Windows:          in qtmlClient.lib 3.0 and later
7670  }
NewMovieFromScrapnull7671 function NewMovieFromScrap( newMovieFlags: SIGNEDLONG ): Movie; external name '_NewMovieFromScrap';
7672 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7673 
7674 
7675 {****
7676     DataRef routines
7677 ****}
7678 
7679 {
7680  *  GetMediaDataRef()
7681  *
7682  *  Availability:
7683  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7684  *    CarbonLib:        in CarbonLib 1.0 and later
7685  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7686  *    Windows:          in qtmlClient.lib 3.0 and later
7687  }
GetMediaDataRefnull7688 function GetMediaDataRef( theMedia: Media; index: SInt16; var dataRef: Handle; var dataRefType: OSType; var dataRefAttributes: SIGNEDLONG ): OSErr; external name '_GetMediaDataRef';
7689 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7690 
7691 
7692 {
7693  *  SetMediaDataRef()
7694  *
7695  *  Availability:
7696  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7697  *    CarbonLib:        in CarbonLib 1.0 and later
7698  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7699  *    Windows:          in qtmlClient.lib 3.0 and later
7700  }
SetMediaDataRefnull7701 function SetMediaDataRef( theMedia: Media; index: SInt16; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_SetMediaDataRef';
7702 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7703 
7704 
7705 {
7706  *  SetMediaDataRefAttributes()
7707  *
7708  *  Availability:
7709  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7710  *    CarbonLib:        in CarbonLib 1.0 and later
7711  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7712  *    Windows:          in qtmlClient.lib 3.0 and later
7713  }
SetMediaDataRefAttributesnull7714 function SetMediaDataRefAttributes( theMedia: Media; index: SInt16; dataRefAttributes: SIGNEDLONG ): OSErr; external name '_SetMediaDataRefAttributes';
7715 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7716 
7717 
7718 {
7719  *  AddMediaDataRef()
7720  *
7721  *  Availability:
7722  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7723  *    CarbonLib:        in CarbonLib 1.0 and later
7724  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7725  *    Windows:          in qtmlClient.lib 3.0 and later
7726  }
AddMediaDataRefnull7727 function AddMediaDataRef( theMedia: Media; var index: SInt16; dataRef: Handle; dataRefType: OSType ): OSErr; external name '_AddMediaDataRef';
7728 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7729 
7730 
7731 {
7732  *  GetMediaDataRefCount()
7733  *
7734  *  Availability:
7735  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7736  *    CarbonLib:        in CarbonLib 1.0 and later
7737  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7738  *    Windows:          in qtmlClient.lib 3.0 and later
7739  }
GetMediaDataRefCountnull7740 function GetMediaDataRefCount( theMedia: Media; var count: SInt16 ): OSErr; external name '_GetMediaDataRefCount';
7741 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7742 
7743 
7744 {
7745  *  QTNewAlias()
7746  *
7747  *  Availability:
7748  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7749  *    CarbonLib:        in CarbonLib 1.0 and later
7750  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
7751  *    Windows:          in qtmlClient.lib 3.0 and later
7752  }
QTNewAliasnull7753 function QTNewAlias( const (*var*) fss: FSSpec; var alias: AliasHandle; minimal: Boolean ): OSErr; external name '_QTNewAlias';
7754 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7755 
7756 
7757 {****
7758     Playback hint routines
7759 ****}
7760 {
7761  *  SetMoviePlayHints()
7762  *
7763  *  Availability:
7764  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7765  *    CarbonLib:        in CarbonLib 1.0 and later
7766  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7767  *    Windows:          in qtmlClient.lib 3.0 and later
7768  }
7769 procedure SetMoviePlayHints( theMovie: Movie; flags: SIGNEDLONG; flagsMask: SIGNEDLONG ); external name '_SetMoviePlayHints';
7770 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7771 
7772 
7773 {
7774  *  SetMediaPlayHints()
7775  *
7776  *  Availability:
7777  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7778  *    CarbonLib:        in CarbonLib 1.0 and later
7779  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7780  *    Windows:          in qtmlClient.lib 3.0 and later
7781  }
7782 procedure SetMediaPlayHints( theMedia: Media; flags: SIGNEDLONG; flagsMask: SIGNEDLONG ); external name '_SetMediaPlayHints';
7783 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7784 
7785 
7786 {
7787  *  GetMediaPlayHints()
7788  *
7789  *  Availability:
7790  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7791  *    CarbonLib:        in CarbonLib 1.0 and later
7792  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
7793  *    Windows:          in qtmlClient.lib 3.0 and later
7794  }
7795 procedure GetMediaPlayHints( theMedia: Media; var flags: SIGNEDLONG ); external name '_GetMediaPlayHints';
7796 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7797 
7798 
7799 {****
7800     Load time track hints
7801 ****}
7802 const
7803 	preloadAlways = 1 shl 0;
7804 	preloadOnlyIfEnabled = 1 shl 1;
7805 
7806 {
7807  *  SetTrackLoadSettings()
7808  *
7809  *  Availability:
7810  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7811  *    CarbonLib:        in CarbonLib 1.0 and later
7812  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7813  *    Windows:          in qtmlClient.lib 3.0 and later
7814  }
7815 procedure SetTrackLoadSettings( theTrack: Track; preloadTime: TimeValue; preloadDuration: TimeValue; preloadFlags: SIGNEDLONG; defaultHints: SIGNEDLONG ); external name '_SetTrackLoadSettings';
7816 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7817 
7818 
7819 {
7820  *  GetTrackLoadSettings()
7821  *
7822  *  Availability:
7823  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7824  *    CarbonLib:        in CarbonLib 1.0 and later
7825  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7826  *    Windows:          in qtmlClient.lib 3.0 and later
7827  }
7828 procedure GetTrackLoadSettings( theTrack: Track; var preloadTime: TimeValue; var preloadDuration: TimeValue; var preloadFlags: SIGNEDLONG; var defaultHints: SIGNEDLONG ); external name '_GetTrackLoadSettings';
7829 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7830 
7831 
7832 {****
7833     Big screen TV
7834 ****}
7835 const
7836 	fullScreenHideCursor = 1 shl 0;
7837 	fullScreenAllowEvents = 1 shl 1;
7838 	fullScreenDontChangeMenuBar = 1 shl 2;
7839 	fullScreenPreflightSize = 1 shl 3;
7840 	fullScreenDontSwitchMonitorResolution = 1 shl 4;
7841 	fullScreenCaptureDisplay = 1 shl 5; { capturedisplay is a mac os x specific parameter }
7842 	fullScreenCaptureAllDisplays = 1 shl 6; { capturealldisplays is a mac os x specific parameter }
7843 
7844 {
7845  *  BeginFullScreen()
7846  *
7847  *  Availability:
7848  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7849  *    CarbonLib:        in CarbonLib 1.0 and later
7850  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7851  *    Windows:          in qtmlClient.lib 3.0 and later
7852  }
BeginFullScreennull7853 function BeginFullScreen( var restoreState: Ptr; whichGD: GDHandle; var desiredWidth: SInt16; var desiredHeight: SInt16; var newWindow: WindowRef; var eraseColor: RGBColor; flags: SIGNEDLONG ): OSErr; external name '_BeginFullScreen';
7854 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7855 
7856 
7857 {
7858  *  EndFullScreen()
7859  *
7860  *  Availability:
7861  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7862  *    CarbonLib:        in CarbonLib 1.0 and later
7863  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
7864  *    Windows:          in qtmlClient.lib 3.0 and later
7865  }
EndFullScreennull7866 function EndFullScreen( fullState: Ptr; flags: SIGNEDLONG ): OSErr; external name '_EndFullScreen';
7867 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7868 
7869 
7870 {****
7871     Wired Actions
7872 ****}
7873 { flags for MovieExecuteWiredActions}
7874 const
7875 	movieExecuteWiredActionDontExecute = 1 shl 0;
7876 
7877 {
7878  *  AddMovieExecuteWiredActionsProc()
7879  *
7880  *  Availability:
7881  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7882  *    CarbonLib:        in CarbonLib 1.0.2 and later
7883  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
7884  *    Windows:          in qtmlClient.lib 4.0 and later
7885  }
AddMovieExecuteWiredActionsProcnull7886 function AddMovieExecuteWiredActionsProc( theMovie: Movie; proc: MovieExecuteWiredActionsUPP; refCon: UnivPtr ): OSErr; external name '_AddMovieExecuteWiredActionsProc';
7887 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7888 
7889 
7890 {
7891  *  RemoveMovieExecuteWiredActionsProc()
7892  *
7893  *  Availability:
7894  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7895  *    CarbonLib:        in CarbonLib 1.0.2 and later
7896  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
7897  *    Windows:          in qtmlClient.lib 4.0 and later
7898  }
RemoveMovieExecuteWiredActionsProcnull7899 function RemoveMovieExecuteWiredActionsProc( theMovie: Movie; proc: MovieExecuteWiredActionsUPP; refCon: UnivPtr ): OSErr; external name '_RemoveMovieExecuteWiredActionsProc';
7900 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7901 
7902 
7903 {
7904  *  MovieExecuteWiredActions()
7905  *
7906  *  Availability:
7907  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
7908  *    CarbonLib:        in CarbonLib 1.0.2 and later
7909  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
7910  *    Windows:          in qtmlClient.lib 4.0 and later
7911  }
MovieExecuteWiredActionsnull7912 function MovieExecuteWiredActions( theMovie: Movie; flags: SIGNEDLONG; actions: QTAtomContainer ): OSErr; external name '_MovieExecuteWiredActions';
7913 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
7914 
7915 
7916 {****
7917     Keyboard Navigation/Editable Text Field Support
7918 ****}
7919 {
7920    Navigation Direction Constants
7921         for MediaNavigateTargetRefCon
7922 }
7923 const
7924 	kRefConNavigationNext = 0;
7925 	kRefConNavigationPrevious = 1;
7926 
7927 {
7928    Refcon Properties
7929         for MediaRefConGetProerty/MediaRefConSetProperty
7930 }
7931 const
7932 	kRefConPropertyCanHaveFocus = 1;    { Boolean }
7933 	kRefConPropertyHasFocus = 2;     { Boolean }
7934 
7935 { media properties}
7936 const
7937 	kTrackFocusCanEditFlag = FourCharCode('kedt');
7938 	kTrackDefaultFocusFlags = FourCharCode('kfoc');
7939 	kTrackFocusDefaultRefcon = FourCharCode('kref');
7940 
7941 { focus flags}
7942 const
7943 	kTrackFocusOn = 1;
7944 	kTrackHandlesTabs = 2;     { this is reserved for a future release}
7945 
7946 {****
7947     Flash track properties
7948 ****}
7949 const
7950 	kFlashTrackPropertyAcceptAllClicks = FourCharCode('clik'); { type of media property atom; data is a Boolean }
7951 
7952 {****
7953     Sprite Toolbox
7954 ****}
7955 const
7956 	kBackgroundSpriteLayerNum = 32767;
7957 
7958 
7959 {  Sprite Properties}
7960 const
7961 	kSpritePropertyMatrix = 1;
7962 	kSpritePropertyImageDescription = 2;
7963 	kSpritePropertyImageDataPtr = 3;
7964 	kSpritePropertyVisible = 4;
7965 	kSpritePropertyLayer = 5;
7966 	kSpritePropertyGraphicsMode = 6;
7967 	kSpritePropertyImageDataSize = 7;
7968 	kSpritePropertyActionHandlingSpriteID = 8;
7969 	kSpritePropertyCanBeHitTested = 9;
7970 	kSpritePropertyImageIndex = 100;
7971 	kSpriteTrackPropertyBackgroundColor = 101;
7972 	kSpriteTrackPropertyOffscreenBitDepth = 102;
7973 	kSpriteTrackPropertySampleFormat = 103;
7974 	kSpriteTrackPropertyScaleSpritesToScaleWorld = 104;
7975 	kSpriteTrackPropertyHasActions = 105;
7976 	kSpriteTrackPropertyVisible = 106;
7977 	kSpriteTrackPropertyQTIdleEventsFrequency = 107;
7978 	kSpriteTrackPropertyAllSpritesHitTestingMode = 108;
7979 	kSpriteTrackPropertyPreferredDepthInterpretationMode = 109;
7980 	kSpriteImagePropertyRegistrationPoint = 1000;
7981 	kSpriteImagePropertyGroupID = 1001;
7982 
7983 { values for kSpriteTrackPropertyPreferredDepthInterpretationMode}
7984 const
7985 	kSpriteTrackPreferredDepthCompatibilityMode = 0;
7986 	kSpriteTrackPreferredDepthModernMode = 1;
7987 
7988 { values for kSpriteTrackPropertyAllSpritesHitTestingMode}
7989 const
7990 	kSpriteHitTestUseSpritesOwnPropertiesMode = 0;
7991 	kSpriteHitTestTreatAllSpritesAsHitTestableMode = 1;
7992 	kSpriteHitTestTreatAllSpritesAsNotHitTestableMode = 2;
7993 
7994 { special value for kSpriteTrackPropertyQTIdleEventsFrequency (the default)}
7995 const
7996 	kNoQTIdleEvents = -1;
7997 
7998 { GetSpriteProperties for accessing invalid SpriteWorldRegion}
7999 const
8000 	kGetSpriteWorldInvalidRegionAndLeaveIntact = -1;
8001 	kGetSpriteWorldInvalidRegionAndThenSetEmpty = -2;
8002 
8003 { flagsIn for SpriteWorldIdle}
8004 const
8005 	kOnlyDrawToSpriteWorld = 1 shl 0;
8006 	kSpriteWorldPreflight = 1 shl 1;
8007 
8008 { flagsOut for SpriteWorldIdle}
8009 const
8010 	kSpriteWorldDidDraw = 1 shl 0;
8011 	kSpriteWorldNeedsToDraw = 1 shl 1;
8012 
8013 { flags for sprite track sample format}
8014 const
8015 	kKeyFrameAndSingleOverride = 1 shl 1;
8016 	kKeyFrameAndAllOverrides = 1 shl 2;
8017 
8018 { sprite world flags}
8019 const
8020 	kScaleSpritesToScaleWorld = 1 shl 1;
8021 	kSpriteWorldHighQuality = 1 shl 2;
8022 	kSpriteWorldDontAutoInvalidate = 1 shl 3;
8023 	kSpriteWorldInvisible = 1 shl 4;
8024 	kSpriteWorldDirtyInsteadOfFlush = 1 shl 5;
8025 
8026 {
8027  *  NewSpriteWorld()
8028  *
8029  *  Availability:
8030  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8031  *    CarbonLib:        in CarbonLib 1.0 and later
8032  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8033  *    Windows:          in qtmlClient.lib 3.0 and later
8034  }
NewSpriteWorldnull8035 function NewSpriteWorld( var newSpriteWorld: SpriteWorld; destination: GWorldPtr; spriteLayer: GWorldPtr; var backgroundColor: RGBColor; background: GWorldPtr ): OSErr; external name '_NewSpriteWorld';
8036 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8037 
8038 
8039 {
8040  *  DisposeSpriteWorld()
8041  *
8042  *  Availability:
8043  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8044  *    CarbonLib:        in CarbonLib 1.0 and later
8045  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8046  *    Windows:          in qtmlClient.lib 3.0 and later
8047  }
8048 procedure DisposeSpriteWorld( theSpriteWorld: SpriteWorld ); external name '_DisposeSpriteWorld';
8049 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8050 
8051 
8052 {
8053  *  SetSpriteWorldClip()
8054  *
8055  *  Availability:
8056  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8057  *    CarbonLib:        in CarbonLib 1.0 and later
8058  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8059  *    Windows:          in qtmlClient.lib 3.0 and later
8060  }
SetSpriteWorldClipnull8061 function SetSpriteWorldClip( theSpriteWorld: SpriteWorld; clipRgn: RgnHandle ): OSErr; external name '_SetSpriteWorldClip';
8062 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8063 
8064 
8065 {
8066  *  SetSpriteWorldMatrix()
8067  *
8068  *  Availability:
8069  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8070  *    CarbonLib:        in CarbonLib 1.0 and later
8071  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8072  *    Windows:          in qtmlClient.lib 3.0 and later
8073  }
SetSpriteWorldMatrixnull8074 function SetSpriteWorldMatrix( theSpriteWorld: SpriteWorld; const (*var*) matrix: MatrixRecord ): OSErr; external name '_SetSpriteWorldMatrix';
8075 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8076 
8077 
8078 {
8079  *  SetSpriteWorldGraphicsMode()
8080  *
8081  *  Availability:
8082  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8083  *    CarbonLib:        in CarbonLib 1.0 and later
8084  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8085  *    Windows:          in qtmlClient.lib 3.0 and later
8086  }
SetSpriteWorldGraphicsModenull8087 function SetSpriteWorldGraphicsMode( theSpriteWorld: SpriteWorld; mode: SIGNEDLONG; const (*var*) opColor: RGBColor ): OSErr; external name '_SetSpriteWorldGraphicsMode';
8088 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8089 
8090 
8091 {
8092  *  SpriteWorldIdle()
8093  *
8094  *  Availability:
8095  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8096  *    CarbonLib:        in CarbonLib 1.0 and later
8097  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8098  *    Windows:          in qtmlClient.lib 3.0 and later
8099  }
SpriteWorldIdlenull8100 function SpriteWorldIdle( theSpriteWorld: SpriteWorld; flagsIn: SIGNEDLONG; var flagsOut: SIGNEDLONG ): OSErr; external name '_SpriteWorldIdle';
8101 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8102 
8103 
8104 {
8105  *  InvalidateSpriteWorld()
8106  *
8107  *  Availability:
8108  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8109  *    CarbonLib:        in CarbonLib 1.0 and later
8110  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8111  *    Windows:          in qtmlClient.lib 3.0 and later
8112  }
InvalidateSpriteWorldnull8113 function InvalidateSpriteWorld( theSpriteWorld: SpriteWorld; var invalidArea: Rect ): OSErr; external name '_InvalidateSpriteWorld';
8114 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8115 
8116 
8117 {
8118  *  SpriteWorldHitTest()
8119  *
8120  *  Availability:
8121  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8122  *    CarbonLib:        in CarbonLib 1.0 and later
8123  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8124  *    Windows:          in qtmlClient.lib 3.0 and later
8125  }
SpriteWorldHitTestnull8126 function SpriteWorldHitTest( theSpriteWorld: SpriteWorld; flags: SIGNEDLONG; loc: Point; var spriteHit: Sprite ): OSErr; external name '_SpriteWorldHitTest';
8127 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8128 
8129 
8130 {
8131  *  SpriteHitTest()
8132  *
8133  *  Availability:
8134  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8135  *    CarbonLib:        in CarbonLib 1.0 and later
8136  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8137  *    Windows:          in qtmlClient.lib 3.0 and later
8138  }
SpriteHitTestnull8139 function SpriteHitTest( theSprite: Sprite; flags: SIGNEDLONG; loc: Point; var wasHit: Boolean ): OSErr; external name '_SpriteHitTest';
8140 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8141 
8142 
8143 {
8144  *  DisposeAllSprites()
8145  *
8146  *  Availability:
8147  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8148  *    CarbonLib:        in CarbonLib 1.0 and later
8149  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8150  *    Windows:          in qtmlClient.lib 3.0 and later
8151  }
8152 procedure DisposeAllSprites( theSpriteWorld: SpriteWorld ); external name '_DisposeAllSprites';
8153 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8154 
8155 
8156 {
8157  *  SetSpriteWorldFlags()
8158  *
8159  *  Availability:
8160  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8161  *    CarbonLib:        in CarbonLib 1.0 and later
8162  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8163  *    Windows:          in qtmlClient.lib 3.0 and later
8164  }
SetSpriteWorldFlagsnull8165 function SetSpriteWorldFlags( spriteWorld_: SpriteWorld; flags: SIGNEDLONG; flagsMask: SIGNEDLONG ): OSErr; external name '_SetSpriteWorldFlags';
8166 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8167 
8168 
8169 {
8170  *  NewSprite()
8171  *
8172  *  Availability:
8173  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8174  *    CarbonLib:        in CarbonLib 1.0 and later
8175  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8176  *    Windows:          in qtmlClient.lib 3.0 and later
8177  }
NewSpritenull8178 function NewSprite( var newSprite: Sprite; itsSpriteWorld: SpriteWorld; idh: ImageDescriptionHandle; imageDataPtr: Ptr; var matrix: MatrixRecord; visible: Boolean; layer: SInt16 ): OSErr; external name '_NewSprite';
8179 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8180 
8181 
8182 {
8183  *  DisposeSprite()
8184  *
8185  *  Availability:
8186  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8187  *    CarbonLib:        in CarbonLib 1.0 and later
8188  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8189  *    Windows:          in qtmlClient.lib 3.0 and later
8190  }
8191 procedure DisposeSprite( theSprite: Sprite ); external name '_DisposeSprite';
8192 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8193 
8194 
8195 {
8196  *  InvalidateSprite()
8197  *
8198  *  Availability:
8199  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8200  *    CarbonLib:        in CarbonLib 1.0 and later
8201  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8202  *    Windows:          in qtmlClient.lib 3.0 and later
8203  }
8204 procedure InvalidateSprite( theSprite: Sprite ); external name '_InvalidateSprite';
8205 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8206 
8207 
8208 {
8209  *  SetSpriteProperty()
8210  *
8211  *  Availability:
8212  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8213  *    CarbonLib:        in CarbonLib 1.0 and later
8214  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8215  *    Windows:          in qtmlClient.lib 3.0 and later
8216  }
SetSpritePropertynull8217 function SetSpriteProperty( theSprite: Sprite; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): OSErr; external name '_SetSpriteProperty';
8218 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8219 
8220 
8221 {
8222  *  GetSpriteProperty()
8223  *
8224  *  Availability:
8225  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8226  *    CarbonLib:        in CarbonLib 1.0 and later
8227  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8228  *    Windows:          in qtmlClient.lib 3.0 and later
8229  }
GetSpritePropertynull8230 function GetSpriteProperty( theSprite: Sprite; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): OSErr; external name '_GetSpriteProperty';
8231 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8232 
8233 
8234 {****
8235     QT Atom Data Support
8236 ****}
8237 const
8238 	kParentAtomIsContainer = 0;
8239 
8240 { create and dispose QTAtomContainer objects}
8241 
8242 {
8243  *  QTNewAtomContainer()
8244  *
8245  *  Availability:
8246  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8247  *    CarbonLib:        in CarbonLib 1.0 and later
8248  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8249  *    Windows:          in qtmlClient.lib 3.0 and later
8250  }
QTNewAtomContainernull8251 function QTNewAtomContainer( var atomData: QTAtomContainer ): OSErr; external name '_QTNewAtomContainer';
8252 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8253 
8254 
8255 {
8256  *  QTDisposeAtomContainer()
8257  *
8258  *  Availability:
8259  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8260  *    CarbonLib:        in CarbonLib 1.0 and later
8261  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8262  *    Windows:          in qtmlClient.lib 3.0 and later
8263  }
QTDisposeAtomContainernull8264 function QTDisposeAtomContainer( atomData: QTAtomContainer ): OSErr; external name '_QTDisposeAtomContainer';
8265 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8266 
8267 
8268 { locating nested atoms within QTAtomContainer container}
8269 
8270 {
8271  *  QTGetNextChildType()
8272  *
8273  *  Availability:
8274  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8275  *    CarbonLib:        in CarbonLib 1.0 and later
8276  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8277  *    Windows:          in qtmlClient.lib 3.0 and later
8278  }
QTGetNextChildTypenull8279 function QTGetNextChildType( container: QTAtomContainer; parentAtom: QTAtom; currentChildType: QTAtomType ): QTAtomType; external name '_QTGetNextChildType';
8280 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8281 
8282 
8283 {
8284  *  QTCountChildrenOfType()
8285  *
8286  *  Availability:
8287  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8288  *    CarbonLib:        in CarbonLib 1.0 and later
8289  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8290  *    Windows:          in qtmlClient.lib 3.0 and later
8291  }
QTCountChildrenOfTypenull8292 function QTCountChildrenOfType( container: QTAtomContainer; parentAtom: QTAtom; childType: QTAtomType ): SInt16; external name '_QTCountChildrenOfType';
8293 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8294 
8295 
8296 {
8297  *  QTFindChildByIndex()
8298  *
8299  *  Availability:
8300  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8301  *    CarbonLib:        in CarbonLib 1.0 and later
8302  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8303  *    Windows:          in qtmlClient.lib 3.0 and later
8304  }
QTFindChildByIndexnull8305 function QTFindChildByIndex( container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; index: SInt16; var id: QTAtomID ): QTAtom; external name '_QTFindChildByIndex';
8306 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8307 
8308 
8309 {
8310  *  QTFindChildByID()
8311  *
8312  *  Availability:
8313  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8314  *    CarbonLib:        in CarbonLib 1.0 and later
8315  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8316  *    Windows:          in qtmlClient.lib 3.0 and later
8317  }
QTFindChildByIDnull8318 function QTFindChildByID( container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; id: QTAtomID; var index: SInt16 ): QTAtom; external name '_QTFindChildByID';
8319 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8320 
8321 
8322 {
8323  *  QTNextChildAnyType()
8324  *
8325  *  Availability:
8326  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8327  *    CarbonLib:        in CarbonLib 1.0 and later
8328  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8329  *    Windows:          in qtmlClient.lib 3.0 and later
8330  }
QTNextChildAnyTypenull8331 function QTNextChildAnyType( container: QTAtomContainer; parentAtom: QTAtom; currentChild: QTAtom; var nextChild: QTAtom ): OSErr; external name '_QTNextChildAnyType';
8332 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8333 
8334 
8335 { set a leaf atom's data}
8336 {
8337  *  QTSetAtomData()
8338  *
8339  *  Availability:
8340  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8341  *    CarbonLib:        in CarbonLib 1.0 and later
8342  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8343  *    Windows:          in qtmlClient.lib 3.0 and later
8344  }
QTSetAtomDatanull8345 function QTSetAtomData( container: QTAtomContainer; atom: QTAtom; dataSize: SIGNEDLONG; atomData: UnivPtr ): OSErr; external name '_QTSetAtomData';
8346 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8347 
8348 
8349 { extracting data}
8350 {
8351  *  QTCopyAtomDataToHandle()
8352  *
8353  *  Availability:
8354  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8355  *    CarbonLib:        in CarbonLib 1.0 and later
8356  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8357  *    Windows:          in qtmlClient.lib 3.0 and later
8358  }
QTCopyAtomDataToHandlenull8359 function QTCopyAtomDataToHandle( container: QTAtomContainer; atom: QTAtom; targetHandle: Handle ): OSErr; external name '_QTCopyAtomDataToHandle';
8360 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8361 
8362 
8363 {
8364  *  QTCopyAtomDataToPtr()
8365  *
8366  *  Availability:
8367  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8368  *    CarbonLib:        in CarbonLib 1.0 and later
8369  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8370  *    Windows:          in qtmlClient.lib 3.0 and later
8371  }
QTCopyAtomDataToPtrnull8372 function QTCopyAtomDataToPtr( container: QTAtomContainer; atom: QTAtom; sizeOrLessOK: Boolean; size: SIGNEDLONG; targetPtr: UnivPtr; var actualSize: SIGNEDLONG ): OSErr; external name '_QTCopyAtomDataToPtr';
8373 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8374 
8375 
8376 {
8377  *  QTGetAtomTypeAndID()
8378  *
8379  *  Availability:
8380  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8381  *    CarbonLib:        in CarbonLib 1.0 and later
8382  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8383  *    Windows:          in qtmlClient.lib 3.0 and later
8384  }
QTGetAtomTypeAndIDnull8385 function QTGetAtomTypeAndID( container: QTAtomContainer; atom: QTAtom; var atomType: QTAtomType; var id: QTAtomID ): OSErr; external name '_QTGetAtomTypeAndID';
8386 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8387 
8388 
8389 { extract a copy of an atom and all of it's children, caller disposes}
8390 {
8391  *  QTCopyAtom()
8392  *
8393  *  Availability:
8394  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8395  *    CarbonLib:        in CarbonLib 1.0 and later
8396  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8397  *    Windows:          in qtmlClient.lib 3.0 and later
8398  }
QTCopyAtomnull8399 function QTCopyAtom( container: QTAtomContainer; atom: QTAtom; var targetContainer: QTAtomContainer ): OSErr; external name '_QTCopyAtom';
8400 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8401 
8402 
8403 { obtaining direct reference to atom data}
8404 {
8405  *  QTLockContainer()
8406  *
8407  *  Availability:
8408  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8409  *    CarbonLib:        in CarbonLib 1.0 and later
8410  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8411  *    Windows:          in qtmlClient.lib 3.0 and later
8412  }
QTLockContainernull8413 function QTLockContainer( container: QTAtomContainer ): OSErr; external name '_QTLockContainer';
8414 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8415 
8416 
8417 {
8418  *  QTGetAtomDataPtr()
8419  *
8420  *  Availability:
8421  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8422  *    CarbonLib:        in CarbonLib 1.0 and later
8423  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8424  *    Windows:          in qtmlClient.lib 3.0 and later
8425  }
QTGetAtomDataPtrnull8426 function QTGetAtomDataPtr( container: QTAtomContainer; atom: QTAtom; var dataSize: SIGNEDLONG; var atomData: Ptr ): OSErr; external name '_QTGetAtomDataPtr';
8427 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8428 
8429 
8430 {
8431  *  QTUnlockContainer()
8432  *
8433  *  Availability:
8434  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8435  *    CarbonLib:        in CarbonLib 1.0 and later
8436  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8437  *    Windows:          in qtmlClient.lib 3.0 and later
8438  }
QTUnlockContainernull8439 function QTUnlockContainer( container: QTAtomContainer ): OSErr; external name '_QTUnlockContainer';
8440 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8441 
8442 
8443 {
8444    building QTAtomContainer trees
8445    creates and inserts new atom at specified index, existing atoms at or after index are moved toward end of list
8446    used for Top-Down tree creation
8447 }
8448 {
8449  *  QTInsertChild()
8450  *
8451  *  Availability:
8452  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8453  *    CarbonLib:        in CarbonLib 1.0 and later
8454  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8455  *    Windows:          in qtmlClient.lib 3.0 and later
8456  }
QTInsertChildnull8457 function QTInsertChild( container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; id: QTAtomID; index: SInt16; dataSize: SIGNEDLONG; data: UnivPtr; var newAtom: QTAtom ): OSErr; external name '_QTInsertChild';
8458 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8459 
8460 
8461 { inserts children from childrenContainer as children of parentAtom}
8462 {
8463  *  QTInsertChildren()
8464  *
8465  *  Availability:
8466  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8467  *    CarbonLib:        in CarbonLib 1.0 and later
8468  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8469  *    Windows:          in qtmlClient.lib 3.0 and later
8470  }
QTInsertChildrennull8471 function QTInsertChildren( container: QTAtomContainer; parentAtom: QTAtom; childrenContainer: QTAtomContainer ): OSErr; external name '_QTInsertChildren';
8472 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8473 
8474 
8475 { destruction}
8476 {
8477  *  QTRemoveAtom()
8478  *
8479  *  Availability:
8480  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8481  *    CarbonLib:        in CarbonLib 1.0 and later
8482  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8483  *    Windows:          in qtmlClient.lib 3.0 and later
8484  }
QTRemoveAtomnull8485 function QTRemoveAtom( container: QTAtomContainer; atom: QTAtom ): OSErr; external name '_QTRemoveAtom';
8486 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8487 
8488 
8489 {
8490  *  QTRemoveChildren()
8491  *
8492  *  Availability:
8493  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8494  *    CarbonLib:        in CarbonLib 1.0 and later
8495  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8496  *    Windows:          in qtmlClient.lib 3.0 and later
8497  }
QTRemoveChildrennull8498 function QTRemoveChildren( container: QTAtomContainer; atom: QTAtom ): OSErr; external name '_QTRemoveChildren';
8499 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8500 
8501 
8502 { replacement must be same type as target}
8503 {
8504  *  QTReplaceAtom()
8505  *
8506  *  Availability:
8507  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8508  *    CarbonLib:        in CarbonLib 1.0 and later
8509  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8510  *    Windows:          in qtmlClient.lib 3.0 and later
8511  }
QTReplaceAtomnull8512 function QTReplaceAtom( targetContainer: QTAtomContainer; targetAtom: QTAtom; replacementContainer: QTAtomContainer; replacementAtom: QTAtom ): OSErr; external name '_QTReplaceAtom';
8513 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8514 
8515 
8516 {
8517  *  QTSwapAtoms()
8518  *
8519  *  Availability:
8520  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8521  *    CarbonLib:        in CarbonLib 1.0 and later
8522  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8523  *    Windows:          in qtmlClient.lib 3.0 and later
8524  }
QTSwapAtomsnull8525 function QTSwapAtoms( container: QTAtomContainer; atom1: QTAtom; atom2: QTAtom ): OSErr; external name '_QTSwapAtoms';
8526 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8527 
8528 
8529 {
8530  *  QTSetAtomID()
8531  *
8532  *  Availability:
8533  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8534  *    CarbonLib:        in CarbonLib 1.0 and later
8535  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8536  *    Windows:          in qtmlClient.lib 3.0 and later
8537  }
QTSetAtomIDnull8538 function QTSetAtomID( container: QTAtomContainer; atom: QTAtom; newID: QTAtomID ): OSErr; external name '_QTSetAtomID';
8539 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8540 
8541 
8542 {
8543  *  QTGetAtomParent()
8544  *
8545  *  Availability:
8546  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8547  *    CarbonLib:        in CarbonLib 1.0.2 and later
8548  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
8549  *    Windows:          in qtmlClient.lib 4.0 and later
8550  }
QTGetAtomParentnull8551 function QTGetAtomParent( container: QTAtomContainer; childAtom: QTAtom ): QTAtom; external name '_QTGetAtomParent';
8552 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8553 
8554 
8555 {
8556  *  SetMediaPropertyAtom()
8557  *
8558  *  Availability:
8559  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8560  *    CarbonLib:        in CarbonLib 1.0 and later
8561  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8562  *    Windows:          in qtmlClient.lib 3.0 and later
8563  }
SetMediaPropertyAtomnull8564 function SetMediaPropertyAtom( theMedia: Media; propertyAtom: QTAtomContainer ): OSErr; external name '_SetMediaPropertyAtom';
8565 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8566 
8567 
8568 {
8569  *  GetMediaPropertyAtom()
8570  *
8571  *  Availability:
8572  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8573  *    CarbonLib:        in CarbonLib 1.0 and later
8574  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
8575  *    Windows:          in qtmlClient.lib 3.0 and later
8576  }
GetMediaPropertyAtomnull8577 function GetMediaPropertyAtom( theMedia: Media; var propertyAtom: QTAtomContainer ): OSErr; external name '_GetMediaPropertyAtom';
8578 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8579 
8580 
8581 {****
8582     Tween Support
8583 ****}
8584 
8585 type
8586 	TweenRecordPtr = ^TweenRecord;
trnull8587 	TweenerDataProcPtr = function( tr: TweenRecordPtr; tweenData: UnivPtr; tweenDataSize: SIGNEDLONG; dataDescriptionSeed: SIGNEDLONG; dataDescription: Handle; asyncCompletionProc: ICMCompletionProcRecordPtr; transferProc: UniversalProcPtr; refCon: UnivPtr ): ComponentResult;
8588 	TweenerDataUPP = TweenerDataProcPtr;
8589 	TweenRecord = record
8590 		version: SIGNEDLONG;
8591 
8592 		container: QTAtomContainer;
8593 		tweenAtom: QTAtom;
8594 		dataAtom: QTAtom;
8595 		percent: Fixed;
8596 
8597 		dataProc: TweenerDataUPP;
8598 
8599 		private1: UnivPtr;
8600 		private2: UnivPtr;
8601 	end;
8602 
8603 type
8604 	TweenV1RecordPtr = ^TweenV1Record;
8605 	TweenV1Record = record
8606 		version: SIGNEDLONG;
8607 
8608 		container: QTAtomContainer;
8609 		tweenAtom: QTAtom;
8610 		dataAtom: QTAtom;
8611 		percent: Fixed;
8612 
8613 		dataProc: TweenerDataUPP;
8614 
8615 		private1: UnivPtr;
8616 		private2: UnivPtr;
8617 
8618 		fractPercent: Fract;
8619 	end;
8620 const
8621 	kTweenRecordNoFlags = 0;
8622 	kTweenRecordIsAtInterruptTime = $00000001;
8623 
8624 type
8625 	TweenV2RecordPtr = ^TweenV2Record;
8626 	TweenV2Record = record
8627 		version: SIGNEDLONG;
8628 
8629 		container: QTAtomContainer;
8630 		tweenAtom: QTAtom;
8631 		dataAtom: QTAtom;
8632 		percent: Fixed;
8633 
8634 		dataProc: TweenerDataUPP;
8635 
8636 		private1: UnivPtr;
8637 		private2: UnivPtr;
8638 
8639 		fractPercent: Fract;
8640 
8641 		flags: SIGNEDLONG;
8642 	end;
8643 {
8644  *  QTNewTween()
8645  *
8646  *  Availability:
8647  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8648  *    CarbonLib:        in CarbonLib 1.0 and later
8649  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8650  *    Windows:          in qtmlClient.lib 3.0 and later
8651  }
QTNewTweennull8652 function QTNewTween( var tween: QTTweener; container: QTAtomContainer; tweenAtom: QTAtom; maxTime: TimeValue ): OSErr; external name '_QTNewTween';
8653 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8654 
8655 
8656 {
8657  *  QTDisposeTween()
8658  *
8659  *  Availability:
8660  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8661  *    CarbonLib:        in CarbonLib 1.0 and later
8662  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8663  *    Windows:          in qtmlClient.lib 3.0 and later
8664  }
QTDisposeTweennull8665 function QTDisposeTween( tween: QTTweener ): OSErr; external name '_QTDisposeTween';
8666 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8667 
8668 
8669 {
8670  *  QTDoTween()
8671  *
8672  *  Availability:
8673  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8674  *    CarbonLib:        in CarbonLib 1.0 and later
8675  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8676  *    Windows:          in qtmlClient.lib 3.0 and later
8677  }
QTDoTweennull8678 function QTDoTween( tween: QTTweener; atTime: TimeValue; result: Handle; var resultSize: SIGNEDLONG; tweenDataProc: TweenerDataUPP; tweenDataRefCon: UnivPtr ): OSErr; external name '_QTDoTween';
8679 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8680 
8681 
8682 {
8683     QTDoTweenPtr is an interrupt-safe version of QTDoTween.  It has the following limitations:
8684      - not all tween types support this call (those which must allocated memory), in which case they return codecUnimpErr.
8685      - the QTAtomContainer used for the tween must be locked
8686      - the dataSize must be large enough to contain the result
8687      - this call is not supported for sequence tweens, use interpolation tweens instead
8688 }
8689 {
8690  *  QTDoTweenPtr()
8691  *
8692  *  Availability:
8693  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
8694  *    CarbonLib:        in CarbonLib 1.6 and later
8695  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
8696  *    Windows:          in qtmlClient.lib 6.0 and later
8697  }
QTDoTweenPtrnull8698 function QTDoTweenPtr( tween: QTTweener; atTime: TimeValue; result: Ptr; resultSize: SIGNEDLONG ): OSErr; external name '_QTDoTweenPtr';
8699 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
8700 
8701 
8702 {****
8703     Preferences
8704 ****}
8705 {
8706  *  GetQuickTimePreference()
8707  *
8708  *  Availability:
8709  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8710  *    CarbonLib:        in CarbonLib 1.0 and later
8711  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8712  *    Windows:          in qtmlClient.lib 3.0 and later
8713  }
GetQuickTimePreferencenull8714 function GetQuickTimePreference( preferenceType: OSType; var preferenceAtom: QTAtomContainer ): OSErr; external name '_GetQuickTimePreference';
8715 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8716 
8717 
8718 {
8719  *  SetQuickTimePreference()
8720  *
8721  *  Availability:
8722  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
8723  *    CarbonLib:        in CarbonLib 1.0 and later
8724  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
8725  *    Windows:          in qtmlClient.lib 3.0 and later
8726  }
SetQuickTimePreferencenull8727 function SetQuickTimePreference( preferenceType: OSType; preferenceAtom: QTAtomContainer ): OSErr; external name '_SetQuickTimePreference';
8728 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
8729 
8730 
8731 {****
8732     Effects and dialog Support
8733 ****}
8734 { atom types for entries in the effects list}
8735 const
8736 	kEffectNameAtom = FourCharCode('name'); { name of effect }
8737 	kEffectTypeAtom = FourCharCode('type'); { codec sub-type for effect }
8738 	kEffectManufacturerAtom = FourCharCode('manu'); { codec manufacturer for effect }
8739 
8740 type
8741 	QTParamPreviewRecordPtr = ^QTParamPreviewRecord;
8742 	QTParamPreviewRecord = record
8743 		sourceID: SIGNEDLONG;               { 1 based source identifier}
8744 		sourcePicture: PicHandle;          { picture for preview, must not dispose until dialog is disposed}
8745 	end;
8746 type
8747 	QTParamPreviewPtr = QTParamPreviewRecordPtr;
8748 	QTParamDialogEventRecordPtr = ^QTParamDialogEventRecord;
8749 	QTParamDialogEventRecord = record
8750 		theEvent: EventRecordPtr;               { Event received by the dialog }
8751 		whichDialog: DialogRef;            { dialog that event was directed towards }
8752 		itemHit: SInt16;                { dialog item which was hit }
8753 	end;
8754 type
8755 	QTParamDialogEventPtr = QTParamDialogEventRecordPtr;
8756 	QTParamFetchPreviewRecordPtr = ^QTParamFetchPreviewRecord;
8757 	QTParamFetchPreviewRecord = record
8758 		theWorld: GWorldPtr;               { the world into which to draw the preview }
8759 		percentage: Fixed;             { frame percentage (from 0.0 - 1.0) to be drawn }
8760 	end;
8761 type
8762 	QTParamFetchPreviewPtr = QTParamFetchPreviewRecordPtr;
8763 
8764 { Only available on OS X }
8765 const
8766 	kEffectParentWindowCarbon = FourCharCode('carb');
8767 type
8768 	QTEventLoopDescriptionRecordPtr = ^QTEventLoopDescriptionRecord;
8769 	QTEventLoopDescriptionRecord = record
8770 		recordSize: SIGNEDLONG;     { must be == sizeof(QTEventLoopDescriptionRecord) }
8771 		windowRefKind: SIGNEDLONG;  { kind of window reference }
8772 		parentWindow: UnivPtr;   { parent window (for sheets) or NIL to use Carbon FrontWindow() }
8773 		eventTarget: UnivPtr;    { EventTargetRef to receive kHICommandOK and kHICommandCancel }
8774 	end;
8775 type
8776   QTEventLoopDescriptionPtr = QTEventLoopDescriptionRecordPtr;
8777 
8778 const
8779 	pdActionConfirmDialog = 1;    { no param}
8780 	pdActionSetAppleMenu = 2;    { param is MenuRef}
8781 	pdActionSetEditMenu = 3;    { param is MenuRef}
8782 	pdActionGetDialogValues = 4;    { param is QTAtomContainer}
8783 	pdActionSetPreviewUserItem = 5;    { param is long}
8784 	pdActionSetPreviewPicture = 6;    { param is QTParamPreviewPtr;}
8785 	pdActionSetColorPickerEventProc = 7;  { param is UserEventUPP}
8786 	pdActionSetDialogTitle = 8;    { param is StringPtr }
8787 	pdActionGetSubPanelMenu = 9;    { param is MenuRef* }
8788 	pdActionActivateSubPanel = 10;   { param is long }
8789 	pdActionConductStopAlert = 11;   { param is StringPtr }
8790 	pdActionModelessCallback = 12;   { param is QTParamDialogEventPtr }
8791 	pdActionFetchPreview = 13;   { param is QTParamFetchPreviewPtr }
8792 	pdActionSetDialogSettings = 14;   { param is QTAtomContainer }
8793 	pdActionGetDialogSettings = 15;   { param is QTAtomContainer }
8794 	pdActionGetNextSample = 16;   { param is QTAtomContainer with effect sample to change - createdDialog may be NIL }
8795 	pdActionGetPreviousSample = 17;   { param is QTAtomContainer with effect sample to change - createdDialog may be NIL }
8796 	pdActionCompactSample = 18;   { param is QTAtomContainer with effect sample to compact, - createdDialog may be NIL }
8797 	pdActionSetEditCallout = 19;   { param is QTParamPreviewCalloutPtr, can be NIL }
8798 	pdActionSetSampleTime = 20;   { param is QTParamSampleTimePtr, can be NIL }
8799 	pdActionDoEditCommand = 21;   { param is long with menu command (ie, mcMenuCut etc) }
8800 	pdActionGetSubPanelMenuValue = 22;   { param is long and returns current sub-panel value selected by the effect }
8801                                         { Action codes and typedefs used for custom controls within effects }
8802 	pdActionCustomNewControl = 23;   { param is QTCustomControlNewPtr }
8803 	pdActionCustomDisposeControl = 24;   { param is QTCustomControlNewPtr }
8804 	pdActionCustomPositionControl = 25;   { param is QTCustomControlPositionControlPtr }
8805 	pdActionCustomShowHideControl = 26;   { param is QTCustomControlShowHideControlPtr }
8806 	pdActionCustomHandleEvent = 27;   { param is QTCustomControlHandleEventPtr }
8807 	pdActionCustomSetFocus = 28;   { param is QTCustomControlSetFocusPtr }
8808 	pdActionCustomSetEditMenu = 29;   { param is QTCustomControlSetEditMenuPtr }
8809 	pdActionCustomSetPreviewPicture = 30; { param is QTCustomControlSetPreviewPicturePtr }
8810 	pdActionCustomSetEditCallout = 31;   { param is QTCustomControlSetEditCalloutPtr }
8811 	pdActionCustomGetEnableValue = 32;   { param is QTCustomControlGetEnableValuePtr }
8812 	pdActionCustomSetSampleTime = 33;   { param is QTCustomControlSetSampleTimePtr }
8813 	pdActionCustomGetValue = 34;   { param is QTCustomControlGetValue }
8814 	pdActionCustomDoEditCommand = 35;   { param is QTCustomControlDoEditCommand }
8815                                         { more actions for the dialog }
8816 	pdActionRunInEventLoop = 36;   { param is QTEventLoopDescriptionPtr - OS X only}
8817 	pdActionConvertSettingsToXML = 37;   { param is QTAtomContainer* inbound, Handle* outbound contains the XML - createdDialog may be NIL }
8818 	pdActionConvertSettingsToXMLWithComments = 38; { param is QTAtomContainer* inbound, Handle* outbound contains the XML with comments - createdDialog may be NIL }
8819 	pdActionConvertSettingsToText = 39;   { param is QTAtomContainer* inbound, Handle* outbound contains human readable text - createdDialog may be NIL }
8820 	pdActionConvertXMLToSettings = 40;   { param is Handle* inbound, QTAtomContainer* outbound contains parameters - createdDialog may be NIL }
8821 	pdActionSetPropertyComponent = 41;    { param is QTParamComponentPropertyPtr }
8822 
8823 { Sample Time information }
8824 const
8825 	pdSampleTimeDisplayOptionsNone = $00000000;
8826 
8827 type
8828 	QTParamComponentPropertyRecord = record
8829 		component: ComponentInstance;              { component to call for get/set properties}
8830 		defaultClass: OSType;           { default property class if not overriden by a given parameter}
8831 	end;
8832 type
8833 	QTParamSampleTimeRecordPtr = ^QTParamSampleTimeRecord;
8834 	QTParamSampleTimeRecord = record
8835 		displayOptions: SIGNEDLONG;
8836 		sampleStartTime: TimeRecord;
8837 		sampleDuration: TimeValue;
8838 		framesPerSecond: SIGNEDLONG;        { if 0, will cause revert to seconds display}
8839 	end;
8840 type
8841 	QTParamSampleTimePtr = QTParamSampleTimeRecordPtr;
8842 { Preview change callout information }
8843 type
8844 	QTParamPreviewCalloutRecordPtr = ^QTParamPreviewCalloutRecord;
8845 	QTParamPreviewCalloutRecord = record
8846 		calloutProc: MoviePreviewCallOutUPP;        { called when user makes editing changes to dialog.  May be NIL.  You should return true from your function. }
8847 		refCon: SIGNEDLONG;                 { passed to the callout procedure }
8848 	end;
8849 type
8850 	QTParamPreviewCalloutPtr = QTParamPreviewCalloutRecordPtr;
8851 const
8852 	pdOptionsCollectOneValue = $00000001; { should collect a single value only}
8853 	pdOptionsAllowOptionalInterpolations = $00000002; { non-novice interpolation options are shown }
8854 	pdOptionsModalDialogBox = $00000004; { dialog box should be modal }
8855 	pdOptionsEditCurrentEffectOnly = $00000008; { List of effects will not be shown }
8856 	pdOptionsHidePreview = $00000010; { Preview item will not be shown }
8857 	pdOptionsDisplayAsSheet = $00000020; { Dialog will be used as a sheet (on platforms that support it) }
8858 
8859 type
8860 	QTParameterDialogOptions = SIGNEDLONG;
8861 { ------- CUSTOM EFFECT CONTROLS}
8862 {
8863     Effects may choose to implement custom controls to allow the user to more easily edit complex parameters
8864     that are ill-served by simple sliders or type in boxes.   Effects may allow a custom control for either
8865     a single parameter, or for a group of parameters.
8866 
8867     Parameter(s) for a custom control must still be data types defined by the standard set, or for
8868     complex records of data, must be defined within a group as individual parameters made up from base
8869     data types (for example, a point is a group containing two Fixed point numbers).
8870     This is to allow applications that do not wish to use the custom control for the effect to set values themselves.
8871 
8872     Effects should be aware that these custom controls may be deployed by the application in either a dialog or
8873     a window, with application defined background colors or patterns, along with application defined font
8874     characteristics for the window.
8875 
8876     It is recommended that effects implement custom controls only when needed, and that custom controls be used
8877     for specific types of parameters (ie, point, rectangle, polygon, path) rather than the entire user interface
8878     for the effect.  Effects may choose to implement multiple custom controls which combine with standard controls
8879     to present the total user interface.  For effects which have very complex user interfaces not well suited for
8880     inclusion within a single window, it is recommended to use kParameterImageIsPreset -- which allows the effect to
8881     have an external editing application for parameters which may then be set within the standard UI via the open file
8882     dialog or drag and drop.  The Lens Flare effect's "Flare Type" is an example of such a preset.
8883 
8884     For parameters that use a custom control to control a single parameter value, a new behavior
8885     flag has been added (kCustomControl), and the behavior for the parameter should be kParameterItemControl.
8886 
8887     For parameters that are groups, the same flag (kCustomControl) should be used, and the behavior
8888     should be kParameterItemGroupDivider.  Groups with the kCustomControl bit set will be implemented
8889     by calling the custom control for that group -- the parameters within that group will not be processed
8890     in the normal manner.
8891 
8892     In both cases, the new customType and customID fields of the behavior must be filled in.  These are
8893     used in order to allow your custom control to determine which parameter is being edited in the case
8894     where the custom control is used for the editing of multiple parameters.  These values are passed into
8895     the pdActionCustomNewControl call.  Since the custom control mechanism is also used by QuickTime's
8896     default effect dialogs, you should be prepared to pass onto the base effect any pdActionCustomNewControl
8897     calls for type/id pairs that you do not handle yourself.  When  pdActionCustomNewControl is called
8898     for controls of types handled by QuickTime, customType is kParameterAtomTypeAndID and customID is
8899     the ID of the parameter atom.
8900 }
8901 
8902 
8903 {
8904     pdActionCustomNewControlControl is called by application to create a new custom control or set of controls
8905     for an effect parameter.  When pdActionCustomNewControl is called, the effect should perform any
8906     basic allocation it needs for storage and return the result in storage. The options parameter tells
8907     the control if the application wishes to support interpolated, optionally interpolated, or a single
8908     value parameter.
8909 
8910     Since pdActionCustomNewControlControl may be called upon your effect for other items within the
8911     dialog, it is recommended that your effect have an easy way to determine which controls it implements:
8912      a) by having storage be a pointer with an OSType at the begining to mark controls
8913         implemented by your code.
8914      - or -
8915      b) keeping track in your component globals those custom controls which you have created.
8916 
8917     When pdActionCustomDisposeControl is called any allocation done by the control should be disposed. In addition,
8918     pdActionCustomDisposeControl is the last chance the control has to commit any user changes into the sample.
8919     Controls which implement type in fields typically need to commit any final user edits at this time.
8920 }
8921 type
8922 	QTCustomControlNewRecordPtr = ^QTCustomControlNewRecord;
8923 	QTCustomControlNewRecord = record
8924 		storage: UnivPtr;                { storage allocated/disposed by the control}
8925 		options: QTParameterDialogOptions;          { options used to control interpolation/not}
8926 		sample: QTAtomContainer;                 { sample that holds the data to be edited}
8927 		customType: SIGNEDLONG;             { custom type and ID specified by effect for creation of this control}
8928 		customID: SIGNEDLONG;
8929 	end;
8930 type
8931 	QTCustomControlNewPtr = QTCustomControlNewRecordPtr;
8932 {
8933     pdActionCustomPositionControl is called by the application to position the control within a window or dialog.
8934 
8935     The control should determine if it will fit in the alloted area and position itself there.  It should also
8936     return the space taken up by the control.   Note you are free to implement controls which are variable in size depending upon
8937     which parameter you are editing.  You need not scale your control to the requested size.  If the area presented to your
8938     control is too small, set didFit to false.  You should still return in used the size you would have liked to use for
8939     the control.   The application will then try again with a new size.  Note that all
8940     controls must be able to fit within a minimum of 300 by 250 pixels.
8941 
8942     Custom controls that draw text should make note of the text font, size, and style at this time in order
8943     to properly display within application windows.
8944 
8945     Note that the default state for the control is hidden.  You will receive a pdActionCustomShowHideControl
8946     in order to enable your control.  You should not draw your control in response to pdActionCustomPositionControl.
8947 }
8948 type
8949 	QTCustomControlPositionControlRecordPtr = ^QTCustomControlPositionControlRecord;
8950 	QTCustomControlPositionControlRecord = record
8951 		storage: UnivPtr;                { storage for the control}
8952 		window: WindowPtr;                 { window to be used by the control}
8953 		location: Rect;               { location within the window the control may use}
8954 		used: Rect;                   { returned by the control to indicate size it actually used}
8955 		didFit: Boolean;                 { did the control fit in the specified area?}
8956     pad: array [0..2] of Boolean;
8957 	end;
8958 type
8959 	QTCustomControlPositionControlPtr = QTCustomControlPositionControlRecordPtr;
8960 {
8961     pdActionCustomShowHideControl is called when the application wishes to enable/disable your control, or
8962     completely disable drawing of the control
8963 
8964     Your control should make note of the new state (if different from the last) and perform an InvalRect()
8965     on your drawing area, or you may draw your control's initial state in the case of show.  You should not
8966     attempt to erase your control as the result of a hide -- instead call InvalRect() and allow the application
8967     to process the resulting event as appropriate.
8968 }
8969 type
8970 	QTCustomControlShowHideControlRecordPtr = ^QTCustomControlShowHideControlRecord;
8971 	QTCustomControlShowHideControlRecord = record
8972 		storage: UnivPtr;                { storage for the control}
8973 		show: Boolean;                   { display the control?}
8974 		enable: Boolean;                 { enable the control (ie, black vs gray display)}
8975 		pad: array [0..1] of Boolean;
8976 	end;
8977 type
8978 	QTCustomControlShowHideControlPtr = QTCustomControlShowHideControlRecordPtr;
8979 {
8980     pdActionCustomHandleEvent is called to allow your custom control to process events.
8981 
8982     Typical controls handle the following events:
8983         - activate - to draw your control in normal/gray mode
8984         - update - to draw your control
8985         - mouseDown - to handle clicks
8986         - keyDown - to handle typing when you have focus
8987         - idle - to perform idle drawing (if applicable)
8988     If your control handles the entire event, set didProcess to true.  If
8989     you handled the event, but other controls still need the event, set didProcess to false.
8990 
8991     If your control supports the concept of focus for the purposes of typing (such as by having
8992     a type-in box for the parameter) then you set the tookFocus Boolean as part of your processing
8993     of the event.  It is assumed that your control will draw the appropriate focus UI as a result, and
8994     the calling application will disable any focus drawing within the remainder of the UI.
8995 
8996     By default, custom controls are not given idle time.  If you need idle time, set needIdle to true
8997     in response to the even that causes you to need idle (typically the taking of focus, or the first draw).
8998     Your control will continue to be given idle events until you set needIdle to false in response to
8999     a nullEvent.
9000 }
9001 type
9002 	QTCustomControlHandleEventRecordPtr = ^QTCustomControlHandleEventRecord;
9003 	QTCustomControlHandleEventRecord = record
9004 		storage: UnivPtr;                { storage for the control}
9005 		pEvent: EventRecordPtr;                 { event to process}
9006 		didProcess: Boolean;             { did we process entire event?}
9007 		tookFocus: Boolean;              { did we take focus as a result of this event (typically mouseDowns)}
9008 		needIdle: Boolean;               { does this control need idle events?}
9009 		didEdit: Boolean;                { did we edit the samples?}
9010 	end;
9011 type
9012 	QTCustomControlHandleEventPtr = QTCustomControlHandleEventRecordPtr;
9013 {
9014     pdActionCustomSetFocus is called in order to set or advance the current focus of the user interface, typically
9015     because the user has pressed the tab or shift-tab keys, or because the user clicked within the area defined by
9016     your control.
9017 
9018     Your control will be called with pdActionFocusFirst,  pdActionFocusLast, or pdActionFocusOff to set or clear focus on your
9019     control.  Your control will be called with pdActionFocusForward or pdActionFocusBackward to cycle
9020     focus within your control (if your control has multiple focus).  If your control does not support focus,
9021     or the focus request results in focus moving beyond your supported range, return pdActionFocusOff in
9022     the focus parameter.  Otherwise, return the focus that you set.
9023 
9024     Controls which have no focus would always set focus to be pdActionFocusOff.
9025 
9026     Controls with a single focus would set pdActionFocusFirst when requsted to set either
9027     pdActionFocusFirst or pdActionFocusLast, and would set pdActionFocusOff for either
9028     pdActionFocusForward or pdActionFocusBackward.
9029 }
9030 const
9031 	pdActionFocusOff = 0;    { no focus }
9032 	pdActionFocusFirst = 1;    { focus on first element }
9033 	pdActionFocusLast = 2;    { focus on last element }
9034 	pdActionFocusForward = 3;    { focus on next element }
9035 	pdActionFocusBackward = 4;     { focus on previous element }
9036 
9037 type
9038 	QTCustomControlSetFocusRecordPtr = ^QTCustomControlSetFocusRecord;
9039 	QTCustomControlSetFocusRecord = record
9040 		storage: UnivPtr;                { storage for the control}
9041 		focus: SIGNEDLONG;                  { focus to set, return resulting focus}
9042 	end;
9043 type
9044 	QTCustomControlSetFocusPtr = QTCustomControlSetFocusRecordPtr;
9045 {
9046     pdActionCustomSetEditMenu will be called to inform your custom control of the location of the edit menu.
9047 
9048     If your control has editing boxes, this is useful in order to allow the user to perform cut/copy/paste operations
9049     when focus is on one of these boxes.
9050 }
9051 type
9052 	QTCustomControlSetEditMenuRecordPtr = ^QTCustomControlSetEditMenuRecord;
9053 	QTCustomControlSetEditMenuRecord = record
9054 		storage: UnivPtr;                { storage for the control}
9055 		editMenu: MenuHandle;               { edit menu, or NIL}
9056 	end;
9057 type
9058 	QTCustomControlSetEditMenuPtr = QTCustomControlSetEditMenuRecordPtr;
9059 {
9060     pdActionCustomSetPreviewPicture will be called to inform your custom control of preview information that you
9061     may wish to use in the drawing of your user interface.
9062 }
9063 type
9064 	QTCustomControlSetPreviewPictureRecordPtr = ^QTCustomControlSetPreviewPictureRecord;
9065 	QTCustomControlSetPreviewPictureRecord = record
9066 		storage: UnivPtr;                { storage for the control}
9067 		preview: QTParamPreviewPtr;                { preview to set}
9068 	end;
9069 type
9070 	QTCustomControlSetPreviewPicturePtr = QTCustomControlSetPreviewPictureRecordPtr;
9071 {
9072     pdActionCustomSetEditCallout tells your control of the need by the application to be informed of
9073     changes to the parameter values (typically for the purposes of updating previews).
9074 
9075     If a callout is available, your custom control should call it whenever a change has been
9076     made to the parameter(s) that your control is editing (as a result of user actions, most typically).
9077     If you choose not to implement this, live dragging or updating of values will not work.
9078 }
9079 type
9080 	QTCustomControlSetEditCalloutRecordPtr = ^QTCustomControlSetEditCalloutRecord;
9081 	QTCustomControlSetEditCalloutRecord = record
9082 		storage: UnivPtr;                { storage for the control}
9083 		callout: QTParamPreviewCalloutPtr;          { requested callout, or NIL to disable}
9084 	end;
9085 type
9086 	QTCustomControlSetEditCalloutPtr = QTCustomControlSetEditCalloutRecordPtr;
9087 {
9088     pdActionCustomGetEnableValue allows you to return a value for the purposes of enabling/disabling
9089     other controls.
9090     Most custom controls do not need to implement this call.
9091 
9092     If your control is able to control the enabling and disabling of other parameter controls (such as is done
9093     by standard pop up or enumerated type controls), you need to supply a value that can be use for greater than/less than
9094     types of comparisons.
9095 }
9096 type
9097 	QTCustomControlGetEnableValueRecordPtr = ^QTCustomControlGetEnableValueRecord;
9098 	QTCustomControlGetEnableValueRecord = record
9099 		storage: UnivPtr;                { storage for the control}
9100 		currentValue: SIGNEDLONG;           { value to compare against for enable/disable purposes}
9101 	end;
9102 type
9103 	QTCustomControlGetEnableValuePtr = QTCustomControlGetEnableValueRecordPtr;
9104 {
9105     pdActionCustomSetSampleTime tells your control information from the application about the duration
9106     and start time for the sample being edited.
9107 
9108     Most controls do not need this information, but some may choose to use it in the interface
9109     they present the user.  However, this call need not be made by applications, so the custom
9110     control should be prepared to run when the sample time information is not available.
9111 }
9112 type
9113 	QTCustomControlSetSampleTimeRecordPtr = ^QTCustomControlSetSampleTimeRecord;
9114 	QTCustomControlSetSampleTimeRecord = record
9115 		storage: UnivPtr;                { storage for the control}
9116 		sampleTime: QTParamSampleTimePtr;           { sample time information or NIL}
9117 	end;
9118 type
9119 	QTCustomControlSetSampleTimePtr = QTCustomControlSetSampleTimeRecordPtr;
9120 {
9121     pdActionCustomGetValue tells your control to store any value(s) into the specified atom container.
9122 
9123     All custom controls must implement this call
9124 }
9125 type
9126 	QTCustomControlGetValueRecordPtr = ^QTCustomControlGetValueRecord;
9127 	QTCustomControlGetValueRecord = record
9128 		storage: UnivPtr;                { storage for the control}
9129 		sample: QTAtomContainer;                 { sample to store into}
9130 	end;
9131 type
9132 	QTCustomControlGetValuePtr = QTCustomControlGetValueRecordPtr;
9133 {
9134     pdActionCustomDoEditCommand tells your control to handle edit commands if it allow focus and type in boxes.
9135 
9136     All custom controls must implement this call if they support edit boxes
9137 }
9138 type
9139 	QTCustomControlDoEditCommandRecordPtr = ^QTCustomControlDoEditCommandRecord;
9140 	QTCustomControlDoEditCommandRecord = record
9141 		storage: UnivPtr;                { storage for the control}
9142 		command: SIGNEDLONG;                { command to execute, return 0 here if processed}
9143 	end;
9144 type
9145 	QTCustomControlDoEditCommandPtr = QTCustomControlDoEditCommandRecordPtr;
9146 	QTParameterDialog = SIGNEDLONG;
9147 const
9148 	elOptionsIncludeNoneInList = $00000001; { "None" effect is included in list }
9149 
9150 type
9151 	QTEffectListOptions = SIGNEDLONG;
9152 const
9153 	effectIsRealtime = 0;     { effect can be rendered in real time }
9154 
9155 {
9156     QTGetEffectsListExtended is a call that provides for
9157     more advanced filtering of effects to be placed into the
9158     effect list.  Applications can filter on:
9159      1) number of input sources
9160      2) effect major or minor class
9161      3) custom filtering through a callback
9162     The callback will be called for each effect which passes
9163     the other criteria for inclusion.  If the callback
9164     returns a true result the effect will be included in the list.
9165 
9166     Note that your filter proc may receive multiple effects from various
9167     manufacturers.  If you return true for multiple effects of a given type
9168     only the one with the higher parameter version number will be included.
9169     If you wish other filtering (such as effects from a given manufacturer, you
9170     can do this by return false for the other effects and true for those
9171     that you prefer.
9172 }
9173 type
effectnull9174 	QTEffectListFilterProcPtr = function( effect: Component; effectMinSource: SIGNEDLONG; effectMaxSource: SIGNEDLONG; majorClass: OSType; minorClass: OSType; refcon: UnivPtr ): Boolean;
9175 	QTEffectListFilterUPP = QTEffectListFilterProcPtr;
9176 {
9177  *  QTGetEffectsList()
9178  *
9179  *  Availability:
9180  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9181  *    CarbonLib:        in CarbonLib 1.0 and later
9182  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9183  *    Windows:          in qtmlClient.lib 3.0 and later
9184  }
QTGetEffectsListnull9185 function QTGetEffectsList( var returnedList: QTAtomContainer; minSources: SIGNEDLONG; maxSources: SIGNEDLONG; getOptions: QTEffectListOptions ): OSErr; external name '_QTGetEffectsList';
9186 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9187 
9188 
9189 {
9190  *  QTGetEffectsListExtended()
9191  *
9192  *  Availability:
9193  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
9194  *    CarbonLib:        in CarbonLib 1.6 and later
9195  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
9196  *    Windows:          in qtmlClient.lib 6.0 and later
9197  }
QTGetEffectsListExtendednull9198 function QTGetEffectsListExtended( var returnedList: QTAtomContainer; minSources: SIGNEDLONG; maxSources: SIGNEDLONG; getOptions: QTEffectListOptions; majorClass: OSType; minorClass: OSType; filterProc: QTEffectListFilterUPP; filterRefCon: UnivPtr ): OSErr; external name '_QTGetEffectsListExtended';
9199 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
9200 
9201 
9202 {
9203  *  QTCreateStandardParameterDialog()
9204  *
9205  *  Availability:
9206  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9207  *    CarbonLib:        in CarbonLib 1.0 and later
9208  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9209  *    Windows:          in qtmlClient.lib 3.0 and later
9210  }
QTCreateStandardParameterDialognull9211 function QTCreateStandardParameterDialog( effectList: QTAtomContainer; parameters: QTAtomContainer; dialogOptions: QTParameterDialogOptions; var createdDialog: QTParameterDialog ): OSErr; external name '_QTCreateStandardParameterDialog';
9212 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9213 
9214 
9215 {
9216  *  QTIsStandardParameterDialogEvent()
9217  *
9218  *  Availability:
9219  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9220  *    CarbonLib:        in CarbonLib 1.0 and later
9221  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9222  *    Windows:          in qtmlClient.lib 3.0 and later
9223  }
QTIsStandardParameterDialogEventnull9224 function QTIsStandardParameterDialogEvent( var pEvent: EventRecord; createdDialog: QTParameterDialog ): OSErr; external name '_QTIsStandardParameterDialogEvent';
9225 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9226 
9227 
9228 {
9229  *  QTDismissStandardParameterDialog()
9230  *
9231  *  Availability:
9232  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9233  *    CarbonLib:        in CarbonLib 1.0 and later
9234  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9235  *    Windows:          in qtmlClient.lib 3.0 and later
9236  }
QTDismissStandardParameterDialognull9237 function QTDismissStandardParameterDialog( createdDialog: QTParameterDialog ): OSErr; external name '_QTDismissStandardParameterDialog';
9238 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9239 
9240 
9241 {
9242  *  QTStandardParameterDialogDoAction()
9243  *
9244  *  Availability:
9245  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9246  *    CarbonLib:        in CarbonLib 1.0 and later
9247  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9248  *    Windows:          in qtmlClient.lib 3.0 and later
9249  }
QTStandardParameterDialogDoActionnull9250 function QTStandardParameterDialogDoAction( createdDialog: QTParameterDialog; action: SIGNEDLONG; params: UnivPtr ): OSErr; external name '_QTStandardParameterDialogDoAction';
9251 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9252 
9253 
9254 {
9255  *  QTGetEffectSpeed()
9256  *
9257  *  Availability:
9258  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
9259  *    CarbonLib:        in CarbonLib 1.0 and later
9260  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
9261  *    Windows:          in qtmlClient.lib 3.0 and later
9262  }
QTGetEffectSpeednull9263 function QTGetEffectSpeed( parameters: QTAtomContainer; var pFPS: Fixed ): OSErr; external name '_QTGetEffectSpeed';
9264 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
9265 
9266 
9267 { Movie Audio/Sound APIs}
9268 
9269 {
9270     SetMovieAudioGain:
9271     This API sets the audio gain level for the mixed audio output of a movie.  This alters the
9272     perceived volume of the movie's playback.  The gain level is multiplicative; eg. 0.0
9273     is silent, 0.5 is -6dB, 1.0 is 0dB (ie. the audio from the movie is not
9274     modified), 2.0 is +6dB, etc.  The gain level can be set higher than 1.0 in order
9275     to allow quiet movies to be boosted in volume.  Settings higher than 1.0 may result in
9276     audio clipping, of course.  The setting is not stored in the movie.  It is only used until
9277     the movie is closed, at which time it is not saved.
9278  }
9279 {
9280  *  SetMovieAudioGain()
9281  *
9282  *  Availability:
9283  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9284  *    CarbonLib:        not available
9285  *    Non-Carbon CFM:   not available
9286  }
SetMovieAudioGainnull9287 function SetMovieAudioGain( m: Movie; gain: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieAudioGain';
9288 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9289 
9290 
9291 {
9292  *  GetMovieAudioGain()
9293  *
9294  *  Availability:
9295  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9296  *    CarbonLib:        not available
9297  *    Non-Carbon CFM:   not available
9298  }
GetMovieAudioGainnull9299 function GetMovieAudioGain( m: Movie; var gain: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieAudioGain';
9300 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9301 
9302 
9303 {
9304     SetTrackAudioGain:
9305     This API sets the audio gain level for the audio output of a track.  This alters the
9306     perceived volume of the track's playback.  The gain level is multiplicative; eg. 0.0
9307     is silent, 0.5 is -6dB, 1.0 is 0dB (ie. the audio from the track is not
9308     modified), 2.0 is +6dB, etc.  The gain level can be set higher than 1.0 in order
9309     to allow quiet tracks to be boosted in volume.  Settings higher than 1.0 may result in
9310     audio clipping, of course.  The setting is not stored in the movie.  It is only used until
9311     the movie is closed, at which time it is not saved.
9312  }
9313 {
9314  *  SetTrackAudioGain()
9315  *
9316  *  Availability:
9317  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9318  *    CarbonLib:        not available
9319  *    Non-Carbon CFM:   not available
9320  }
SetTrackAudioGainnull9321 function SetTrackAudioGain( t: Track; gain: Float32; flags: UInt32 ): OSStatus; external name '_SetTrackAudioGain';
9322 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9323 
9324 
9325 {
9326  *  GetTrackAudioGain()
9327  *
9328  *  Availability:
9329  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9330  *    CarbonLib:        not available
9331  *    Non-Carbon CFM:   not available
9332  }
GetTrackAudioGainnull9333 function GetTrackAudioGain( t: Track; var gain: Float32; flags: UInt32 ): OSStatus; external name '_GetTrackAudioGain';
9334 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9335 
9336 
9337 {
9338     SetMovieAudioBalance:
9339     This API sets the audio balance level for the mixed audio output of a movie.  -1.0
9340     means full left, 0.0 means centered, and 1.0 means full right.  The setting is not
9341     stored in the movie.  It is only used until the movie is closed, at which time it
9342     is not saved.
9343  }
9344 {
9345  *  SetMovieAudioBalance()
9346  *
9347  *  Availability:
9348  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9349  *    CarbonLib:        not available
9350  *    Non-Carbon CFM:   not available
9351  }
SetMovieAudioBalancenull9352 function SetMovieAudioBalance( m: Movie; leftRight: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieAudioBalance';
9353 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9354 
9355 
9356 {
9357  *  GetMovieAudioBalance()
9358  *
9359  *  Availability:
9360  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9361  *    CarbonLib:        not available
9362  *    Non-Carbon CFM:   not available
9363  }
GetMovieAudioBalancenull9364 function GetMovieAudioBalance( m: Movie; var leftRight: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieAudioBalance';
9365 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9366 
9367 
9368 {
9369     SetMovieAudioMute:
9370     This API mutes or unmutes the mixed audio output from a movie.
9371  }
9372 {
9373  *  SetMovieAudioMute()
9374  *
9375  *  Availability:
9376  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9377  *    CarbonLib:        not available
9378  *    Non-Carbon CFM:   not available
9379  }
SetMovieAudioMutenull9380 function SetMovieAudioMute( m: Movie; muted: Boolean; flags: UInt32 ): OSStatus; external name '_SetMovieAudioMute';
9381 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9382 
9383 
9384 {
9385  *  GetMovieAudioMute()
9386  *
9387  *  Availability:
9388  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9389  *    CarbonLib:        not available
9390  *    Non-Carbon CFM:   not available
9391  }
GetMovieAudioMutenull9392 function GetMovieAudioMute( m: Movie; var muted: Boolean; flags: UInt32 ): OSStatus; external name '_GetMovieAudioMute';
9393 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9394 
9395 
9396 {
9397     SetTrackAudioMute:
9398     This API mutes or unmutes the audio output from a track.
9399  }
9400 {
9401  *  SetTrackAudioMute()
9402  *
9403  *  Availability:
9404  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9405  *    CarbonLib:        not available
9406  *    Non-Carbon CFM:   not available
9407  }
SetTrackAudioMutenull9408 function SetTrackAudioMute( t: Track; muted: Boolean; flags: UInt32 ): OSStatus; external name '_SetTrackAudioMute';
9409 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9410 
9411 
9412 {
9413  *  GetTrackAudioMute()
9414  *
9415  *  Availability:
9416  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9417  *    CarbonLib:        not available
9418  *    Non-Carbon CFM:   not available
9419  }
GetTrackAudioMutenull9420 function GetTrackAudioMute( t: Track; var muted: Boolean; flags: UInt32 ): OSStatus; external name '_GetTrackAudioMute';
9421 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9422 
9423 
9424 const
9425 {
9426    * Properties of an audio presentation (eg. a movie's audio)
9427    }
9428 	kQTPropertyClass_Audio = FourCharCode('audi');
9429 
9430 
9431 const
9432 {
9433    * kQTAudioPropertyID_Gain:  Value is Float32.  Get/Set/Listenable
9434    * The audio gain of a movie or track.  The gain level is
9435    * multiplicative; eg. 0.0 is silent, 0.5 is -6dB, 1.0 is 0dB (ie.
9436    * the audio from the movie is not modified), 2.0 is +6dB, etc.  The
9437    * gain level can be set higher than 1.0 in order to allow quiet
9438    * movies/tracks to be boosted in volume. Settings higher than 1.0
9439    * may result in audio clipping, of course. The setting is not stored
9440    * in the movie/track.  It is only used until the movie/track is
9441    * disposed.
9442    }
9443 	kQTAudioPropertyID_Gain = FourCharCode('gain'); { value is Float32. Gettable/Settable.}
9444 
9445   {
9446    * kQTAudioPropertyID_Mute:  Value is Boolean.  Get/Set/Listenable
9447    * The audio mute state of a movie or track.  If true, the
9448    * movie/track is muted.  The setting is not stored in the
9449    * movie/track.  It is only used until the movie/track is disposed.
9450    }
9451 	kQTAudioPropertyID_Mute = FourCharCode('mute'); { value is Boolean. Gettable/Settable.}
9452 
9453   {
9454    * kQTAudioPropertyID_Balance:  Value is Float32.  Get/Set/Listenable
9455    * The audio balance of a movie.  -1.0 means full left, 0.0 means
9456    * centered, and 1.0 means full right.  The setting is not stored in
9457    * the movie.  It is only used until the movie is disposed.  This is
9458    * only supported for movies, not tracks.
9459    }
9460 	kQTAudioPropertyID_Balance = FourCharCode('bala'); { value is Float32. Gettable/Settable.}
9461 
9462   {
9463    * kQTAudioPropertyID_RateChangesPreservePitch:   Value is Boolean.
9464    * Get/Set When the playback rate is not unity, audio must be
9465    * resampled in order to play at the new rate.  The default
9466    * resampling affects the pitch of the audio (eg, playing at 2x speed
9467    * raises the pitch by an octave, 1/2x lowers an octave). If this
9468    * property is set on the Movie, an alternative algorithm may be
9469    * used, which alters the speed without changing the pitch.  As this
9470    * is more computationally expensive, this property may be silently
9471    * ignored on some slow CPUs. Media handlers may query this movie
9472    * property and honor it when performing Scaled Edits. This property
9473    * can be specified as a property to the NewMovieFromProperties()
9474    * API. Currently, it has no effect when set on an open movie.
9475    }
9476 	kQTAudioPropertyID_RateChangesPreservePitch = FourCharCode('aucp'); { value is Boolean.  Gettable/Settable.}
9477 
9478   {
9479    * kQTAudioPropertyID_Pitch:   Value is Float32.  Get/Set/Listenable
9480    * Movie pitch adjustment.  Adjusts the pitch of all audio tracks
9481    * that contribute to the AudioContext mix.  Pitch control takes
9482    * effect only if kQTAudioPropertyID_RateChangesPreservePitch is in
9483    * effect, otherwise returns kQTMessageNotHandledErr. The Float32
9484    * value is specified in cents: 0.0 == no change, 1.0 == one cent up,
9485    * 100.0 == one semi-tone up, -1.0 == one cent down. The most useful
9486    * ranges for pitch are +/- 1200. (ie, one octave)
9487    }
9488 	kQTAudioPropertyID_Pitch = FourCharCode('pitc'); { value is Float32. Get/Set/Listenable.}
9489 
9490   {
9491    * kQTAudioPropertyID_RenderQuality:   Value is UInt32.  Get/Set
9492    * Movie audio render quality takes effect for movie playback. UInt32
9493    * values vary from 0x00 (kQTAudioRenderQuality_Min) to 0x7F
9494    * (kQTAudioRenderQuality_Max). We also define a special value
9495    * (kQTAudioRenderQuality_PlaybackDefault) which resets the quality
9496    * settings of the playback processing chain to values that are
9497    * chosen to be an optimal balance of performance and quality.
9498    }
9499 	kQTAudioPropertyID_RenderQuality = FourCharCode('qual'); { value is UInt32.  Gettable/Settable.}
9500 
9501   {
9502    * kQTAudioPropertyID_ChannelLayout:  Value is AudioChannelLayout.
9503    * Get/Set The AudioChannelLayout of a track, or other audio stream.
9504    * Currently only settable/gettable for tracks.  (See
9505    * kQTAudioPropertyID_SummaryChannelLayout if you want to get the
9506    * summary AudioChannelLayout of a movie.) Note that this is a
9507    * variable sized property (since it may contain an array of
9508    * ChannelDescriptions; see CoreAudioTypes.h).  You must get the size
9509    * first (by calling QTGetTrackPropertyInfo), allocate a struct of
9510    * that size, and then get the property.
9511    }
9512 	kQTAudioPropertyID_ChannelLayout = FourCharCode('tlay'); { value is AudioChannelLayout. Gettable/Settable.}
9513 
9514   {
9515    * kQTAudioPropertyID_SummaryChannelLayout:  Value is
9516    * AudioChannelLayout.  Get-only The summary AudioChannelLayout of a
9517    * movie, or other grouping of audio streams. All like-labelled
9518    * channels are combined, so there are no duplicates.  For example,
9519    * if there is a stereo (L/R) track, 5 single-channel tracks marked
9520    * Left, Right, Left Surround, Right Surround and Center, and a 4
9521    * channel track marked L/R/Ls/Rs, then the summary
9522    * AudioChannelLayout will be L/R/Ls/Rs/C. It will _not_ be
9523    * L/R/L/R/Ls/Rs/C/L/R/Ls/Rs. Note that this is a variable sized
9524    * property (since it may contain an array of ChannelDescriptions;
9525    * see CoreAudioTypes.h).  You must get the size first (by calling,
9526    * for example, QTGetMoviePropertyInfo) allocate a struct of that
9527    * size, and then get the property.
9528    }
9529 	kQTAudioPropertyID_SummaryChannelLayout = FourCharCode('clay'); { value is AudioChannelLayout. Gettable.}
9530 
9531   {
9532    * kQTAudioPropertyID_DeviceChannelLayout:  Value is
9533    * AudioChannelLayout.  Get-only The AudioChannelLayout of the device
9534    * this movie is playing to.  Note that this is a variable sized
9535    * property (since it may contain an array of ChannelDescriptions;
9536    * see CoreAudioTypes.h).  You must get the size first (by calling,
9537    * for example, QTGetMoviePropertyInfo) allocate a struct of that
9538    * size, and then get the property.
9539    }
9540 	kQTAudioPropertyID_DeviceChannelLayout = FourCharCode('dcly'); { value is AudioChannelLayout. Gettable.}
9541 
9542   {
9543    * kQTAudioPropertyID_DeviceASBD:  Value is
9544    * AudioStreamBasicDescription.  Get-only Returns the
9545    * AudioStreamBasicDescription of the device this movie is playing
9546    * to. The interesting fields are the sample rate, which reflects
9547    * device's current state, and the number of channels, which matches
9548    * what is reported by kQTAudioPropertyID_DeviceChannelLayout.
9549    }
9550 	kQTAudioPropertyID_DeviceASBD = FourCharCode('dasd'); { value is AudioStreamBasicDescription. Gettable.}
9551 
9552   {
9553    * kQTAudioPropertyID_SummaryASBD:  Value is
9554    * AudioStreamBasicDescription.  Get-only Returns the
9555    * AudioStreamBasicDescription corresponding to the Summary Mix of a
9556    * movie.  This will describe non-interleaved, Float32 linear PCM
9557    * data, with a sample rate equal to the highest audio sample rate
9558    * found among the sound tracks contributing to the AudioContext mix,
9559    * and a number of channels that matches what is reported by
9560    * kQTAudioPropertyID_SummaryChannelLayout.
9561    }
9562 	kQTAudioPropertyID_SummaryASBD = FourCharCode('sasd'); { value is AudioStreamBasicDescription. Gettable.}
9563 
9564   {
9565    * kQTAudioPropertyID_FormatString:  Value is CFStringRef.  Get-only
9566    * kQTAudioPropertyID_FormatString returns a localized, human
9567    * readable string describing the audio format as a CFStringRef, i.e.
9568    * "MPEG Layer 3". You may get this property from a SoundDescription
9569    * Handle by calling QTSoundDescriptionGetProperty(), or from a
9570    * StandardAudioCompression (scdi/audi) component instance by calling
9571    * QTGetComponentProperty().
9572    }
9573 	kQTAudioPropertyID_FormatString = FourCharCode('fstr'); { value is CFStringRef.  Gettable.}
9574 
9575   {
9576    * kQTAudioPropertyID_ChannelLayoutString:  Value is CFStringRef.
9577    * Get-only kQTAudioPropertyID_ChannelLayoutString returns a
9578    * localized, human readable string describing the audio channel
9579    * layout as a CFStringRef, i.e. "5.0 (L R C Ls Rs)". You may get
9580    * this property from a SoundDescription Handle by calling
9581    * QTSoundDescriptionGetProperty(), or from a
9582    * StandardAudioCompression (scdi/audi) component instance by calling
9583    * QTGetComponentProperty().
9584    }
9585 	kQTAudioPropertyID_ChannelLayoutString = FourCharCode('lstr'); { value is CFStringRef.  Gettable.}
9586 
9587   {
9588    * kQTAudioPropertyID_SampleRateString:  Value is CFStringRef.
9589    * Get-only kQTAudioPropertyID_SampleRateString returns a localized,
9590    * human readable string describing the audio sample rate as a
9591    * CFStringRef, i.e. "44.100 kHz". You may get this property from a
9592    * SoundDescription Handle by calling
9593    * QTSoundDescriptionGetProperty(), or from a
9594    * StandardAudioCompression (scdi/audi) component instance by calling
9595    * QTGetComponentProperty().
9596    }
9597 	kQTAudioPropertyID_SampleRateString = FourCharCode('rstr'); { value is CFStringRef.  Gettable.}
9598 
9599   {
9600    * kQTAudioPropertyID_SampleSizeString:  Value is CFStringRef.
9601    * Get-only kQTAudioPropertyID_SampleSizeString returns a localized,
9602    * human readable string describing the audio sample size as a
9603    * CFStringRef, i.e. "24-bit". Note, this property will only return a
9604    * valid string if the format is uncompressed (LPCM) audio. You may
9605    * get this property from a SoundDescription Handle by calling
9606    * QTSoundDescriptionGetProperty(), or from a
9607    * StandardAudioCompression (scdi/audi) component instance by calling
9608    * QTGetComponentProperty().
9609    }
9610 	kQTAudioPropertyID_SampleSizeString = FourCharCode('sstr'); { value is CFStringRef.  Gettable.}
9611 
9612   {
9613    * kQTAudioPropertyID_BitRateString:  Value is CFStringRef.  Get-only
9614    * kQTAudioPropertyID_BitRateString returns a localized, human
9615    * readable string describing the audio bit rate as a CFStringRef,
9616    * i.e. "12 kbps". You may get this property from a SoundDescription
9617    * Handle by calling QTSoundDescriptionGetProperty(), or from a
9618    * StandardAudioCompression (scdi/audi) component instance by calling
9619    * QTGetComponentProperty().
9620    }
9621 	kQTAudioPropertyID_BitRateString = FourCharCode('bstr'); { value is CFStringRef.  Gettable.}
9622 
9623   {
9624    * kQTAudioPropertyID_SummaryString:  Value is CFStringRef.  Get-only
9625    * kQTAudioPropertyID_SummaryString returns a localized, human
9626    * readable string summarizing the audio as a CFStringRef, i.e.
9627    * "16-bit Integer (Big Endian), Stereo (L R), 48.000 kHz". You may
9628    * get this property from a SoundDescription Handle calling
9629    * QTSoundDescriptionGetProperty(), or from a
9630    * StandardAudioCompression (scdi/audi) component instance by calling
9631    * QTGetComponentProperty().
9632    }
9633 	kQTAudioPropertyID_SummaryString = FourCharCode('asum'); { value is CFStringRef.  Gettable.}
9634 
9635 
9636 {
9637  *  Audio Render Quality constants
9638  *
9639  *  Summary:
9640  *    Render quality is an integer that ranges from
9641  *    kQTAudioRenderQuality_Min to kQTAudioRenderQuality_Max.
9642  *    kQTAudioRenderQuality_Low, kQTAudioRenderQuality_Medium, and
9643  *    kQTAudioRenderQuality_High are the preferred values.
9644  }
9645 const
9646 {
9647    * The maximum value.
9648    }
9649 	kQTAudioRenderQuality_Max = $7F;
9650 
9651   {
9652    * A value that increases quality but requires more computational
9653    * resources.
9654    }
9655 	kQTAudioRenderQuality_High = $60;
9656 
9657   {
9658    * A value that represents a good quality/performance tradeoff.
9659    }
9660 	kQTAudioRenderQuality_Medium = $40;
9661 
9662   {
9663    * A value that reduces quality for better performance.
9664    }
9665 	kQTAudioRenderQuality_Low = $20;
9666 
9667   {
9668    * The minimum value.
9669    }
9670 	kQTAudioRenderQuality_Min = $00;
9671 
9672   {
9673    * A QuickTime-specific value that selects optimal settings for
9674    * playback.
9675    }
9676 	kQTAudioRenderQuality_PlaybackDefault = $8000;
9677 
9678 
9679 { whatMixToMeter constants}
9680 
9681 const
9682 {
9683    * kQTAudioMeter_DeviceMix: Meter the movie's mix to the device
9684    * channel layout. To determine the channel layout of this mix, call
9685    * QTGetMovieProperty(..., kQTAudioPropertyID_DeviceChannelLayout,
9686    * ...).
9687    }
9688 	kQTAudioMeter_DeviceMix = kQTAudioPropertyID_DeviceChannelLayout;
9689 
9690   {
9691    * kQTAudioMeter_StereoMix: Meter a stereo (two-channel) mix of the
9692    * enabled sound tracks in the movie. This option is offered only for
9693    * MovieAudioFrequencyMetering.
9694    }
9695 	kQTAudioMeter_StereoMix = FourCharCode('stmx');
9696 
9697   {
9698    * kQTAudioMeter_MonoMix: Meter a monarual (one-channel) mix of the
9699    * enabled sound tracks in the movie. This option is offered only for
9700    * MovieAudioFrequencyMetering.
9701    }
9702 	kQTAudioMeter_MonoMix = FourCharCode('momx');
9703 
9704 {
9705     SetMovieAudioVolumeMeteringEnabled:
9706     This API enables or disables volume metering of a particular mix of this movie.  The only possible
9707     mix to meter is currently kQTAudioMeter_DeviceMix.  See kQTAudioMeter_DeviceMix above to see
9708     how to determine the channel layout of the movie's device mix.
9709  }
9710 {
9711  *  SetMovieAudioVolumeMeteringEnabled()
9712  *
9713  *  Availability:
9714  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9715  *    CarbonLib:        not available
9716  *    Non-Carbon CFM:   not available
9717  }
SetMovieAudioVolumeMeteringEnablednull9718 function SetMovieAudioVolumeMeteringEnabled( m: Movie; whatMixToMeter: FourCharCode; enabled: Boolean ): OSStatus; external name '_SetMovieAudioVolumeMeteringEnabled';
9719 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9720 
9721 
9722 {
9723  *  GetMovieAudioVolumeMeteringEnabled()
9724  *
9725  *  Availability:
9726  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9727  *    CarbonLib:        not available
9728  *    Non-Carbon CFM:   not available
9729  }
GetMovieAudioVolumeMeteringEnablednull9730 function GetMovieAudioVolumeMeteringEnabled( m: Movie; whatMixToMeter: FourCharCode; var enabled: Boolean ): OSStatus; external name '_GetMovieAudioVolumeMeteringEnabled';
9731 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9732 
9733 
9734 {
9735     GetMovieAudioVolumeLevels:
9736     This API returns the current volume meter levels of the movie.  It can return both average power
9737     levels and peak hold levels.  whatMixToMeter must be set to kQTAudioMeter_DeviceMix.  Either
9738     QTAudioVolumeLevels parameter may be nil.  If non-nil, each must have its numChannels field set to
9739     the number of channels in the movie's device mix, and must be allocated large enough to hold levels
9740     for all those channels.  See kQTAudioMeter_DeviceMix above to see how to determine the channel
9741     layout of the device mix. The levels returned are measured in decibels, where 0.0 means full volume,
9742     -6.0 means half volume, -12.0 means quarter volume, and -inf means silence.
9743  }
9744 type
9745 	QTAudioVolumeLevelsPtr = ^QTAudioVolumeLevels;
9746 	QTAudioVolumeLevels = record
9747 		numChannels: UInt32;
9748 		level: array [0..0] of Float32;               { numChannels entries}
9749 	end;
9750 {
9751  *  GetMovieAudioVolumeLevels()
9752  *
9753  *  Availability:
9754  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9755  *    CarbonLib:        not available
9756  *    Non-Carbon CFM:   not available
9757  }
GetMovieAudioVolumeLevelsnull9758 function GetMovieAudioVolumeLevels( m: Movie; whatMixToMeter: FourCharCode; var pAveragePowerLevels: QTAudioVolumeLevels; var pPeakHoldLevels: QTAudioVolumeLevels ): OSStatus; external name '_GetMovieAudioVolumeLevels';
9759 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9760 
9761 
9762 {
9763     SetTrackAudioVolumeMeteringEnabled:
9764     This API enables or disables volume metering of a particular track of this movie.
9765     This API should be used in preference to the legacy SoundMedia interface, but
9766     may interfere with its operation if both are in use at the same time.
9767 }
9768 {
9769  *  SetTrackAudioVolumeMeteringEnabled()
9770  *
9771  *  Availability:
9772  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9773  *    CarbonLib:        not available
9774  *    Non-Carbon CFM:   not available
9775  }
SetTrackAudioVolumeMeteringEnablednull9776 function SetTrackAudioVolumeMeteringEnabled( t: Track; enabled: Boolean ): OSStatus; external name '_SetTrackAudioVolumeMeteringEnabled';
9777 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9778 
9779 
9780 {
9781  *  GetTrackAudioVolumeMeteringEnabled()
9782  *
9783  *  Availability:
9784  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9785  *    CarbonLib:        not available
9786  *    Non-Carbon CFM:   not available
9787  }
GetTrackAudioVolumeMeteringEnablednull9788 function GetTrackAudioVolumeMeteringEnabled( t: Track; var enabled: Boolean ): OSStatus; external name '_GetTrackAudioVolumeMeteringEnabled';
9789 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9790 
9791 
9792 {
9793     GetTrackAudioVolumeLevels:
9794     This API returns the current volume meter levels of the track.  It can return both average power
9795     levels and peak hold levels.  Either QTAudioVolumeLevels parameter may be nil.  If non-nil,
9796     each must have its numChannels field set to the number of channels of interest, and must be
9797     allocated large enough to hold levels for all those channels.
9798     The levels returned are measured in decibels, where 0.0 means full volume,
9799     -6.0 means half volume, -12.0 means quarter volume, and -inf means silence.
9800 }
9801 {
9802  *  GetTrackAudioVolumeLevels()
9803  *
9804  *  Availability:
9805  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9806  *    CarbonLib:        not available
9807  *    Non-Carbon CFM:   not available
9808  }
GetTrackAudioVolumeLevelsnull9809 function GetTrackAudioVolumeLevels( t: Track; var pAveragePowerLevels: QTAudioVolumeLevels; var pPeakHoldLevels: QTAudioVolumeLevels ): OSStatus; external name '_GetTrackAudioVolumeLevels';
9810 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9811 
9812 
9813 {
9814     SetMovieAudioFrequencyMeteringNumBands:
9815     This API configures and enables (or disables) frequency metering for a movie.
9816     Note that ioNumBands is an in/out parameter.  You specify the number of frequency bands you
9817     want to meter, and if that number is higher than is possible (determined by, among other things,
9818     the sample rate of the audio being metered), this API will return the number of bands it is
9819     actually going to meter.  ioNumBands can be nil or a pointer to 0 to disable metering.
9820     whatMixToMeter must be set to kQTAudioMeter_StereoMix, kQTAudioMeter_MonoMix, or
9821     kQTAudioMeter_DeviceMix.  When metering movies playing to audio devices that offer a
9822     large number of channels, it may be prohibitively expensive to perform spectral analysis
9823     on every channel; in these cases, stereo or mono mix metering may be preferable.
9824  }
9825 {
9826  *  SetMovieAudioFrequencyMeteringNumBands()
9827  *
9828  *  Availability:
9829  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9830  *    CarbonLib:        not available
9831  *    Non-Carbon CFM:   not available
9832  }
SetMovieAudioFrequencyMeteringNumBandsnull9833 function SetMovieAudioFrequencyMeteringNumBands( m: Movie; whatMixToMeter: FourCharCode; var ioNumBands: UInt32 ): OSStatus; external name '_SetMovieAudioFrequencyMeteringNumBands';
9834 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9835 
9836 
9837 {
9838  *  GetMovieAudioFrequencyMeteringNumBands()
9839  *
9840  *  Availability:
9841  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9842  *    CarbonLib:        not available
9843  *    Non-Carbon CFM:   not available
9844  }
GetMovieAudioFrequencyMeteringNumBandsnull9845 function GetMovieAudioFrequencyMeteringNumBands( m: Movie; whatMixToMeter: FourCharCode; var outNumBands: UInt32 ): OSStatus; external name '_GetMovieAudioFrequencyMeteringNumBands';
9846 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9847 
9848 
9849 {
9850     GetMovieAudioFrequencyMeteringBandFrequencies:
9851     This API returns the actual chosen middle frequency for each band in the configured
9852     frequency metering of a movie.  This is useful for labeling visual meters
9853     in a user interface.  Frequencies are returned in Hz.  whatMixToMeter must be set
9854     to the same value that was passed most recently to SetMovieAudioFrequencyMeteringNumBands().
9855  }
9856 {
9857  *  GetMovieAudioFrequencyMeteringBandFrequencies()
9858  *
9859  *  Availability:
9860  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9861  *    CarbonLib:        not available
9862  *    Non-Carbon CFM:   not available
9863  }
GetMovieAudioFrequencyMeteringBandFrequenciesnull9864 function GetMovieAudioFrequencyMeteringBandFrequencies( m: Movie; whatMixToMeter: FourCharCode; numBands: UInt32; var outBandFrequencies: Float32 ): OSStatus; external name '_GetMovieAudioFrequencyMeteringBandFrequencies';
9865 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9866 
9867 
9868 {
9869     GetMovieAudioFrequencyLevels:
9870     This API returns the current frequency meter levels of the movie. pAveragePowerLevels should
9871     have its numChannels field set to the number of channels being metered, and its numBands field
9872     set to the number of bands being metered (as previously configured).  pAveragePowerLevels must be
9873     allocated large enough to hold levels for all bands in all channels.  The levels are returned with
9874     all the band levels for the first channel first, then all the band levels for the second channel, etc.
9875     whatMixToMeter must be set  to the same value that was passed most recently to
9876     SetMovieAudioFrequencyMeteringNumBands().
9877  }
9878 type
9879 	QTAudioFrequencyLevels = record
9880 		numChannels: UInt32;
9881 		numFrequencyBands: UInt32;
9882                                               { numChannels * numFrequencyBands entries, with the frequency bands for a single channel stored contiguously.}
9883 		level: array [0..0] of Float32;
9884 	end;
9885 {
9886  *  GetMovieAudioFrequencyLevels()
9887  *
9888  *  Availability:
9889  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9890  *    CarbonLib:        not available
9891  *    Non-Carbon CFM:   not available
9892  }
GetMovieAudioFrequencyLevelsnull9893 function GetMovieAudioFrequencyLevels( m: Movie; whatMixToMeter: FourCharCode; var pAveragePowerLevels: QTAudioFrequencyLevels ): OSStatus; external name '_GetMovieAudioFrequencyLevels';
9894 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9895 
9896 
9897 { Movie Audio Extraction}
9898 
9899 {
9900     MovieAudioExtractionBegin:
9901     This API must be called before doing any movie audio extraction.  The returned session
9902     object is to be passed to the other movie audio extraction APIs.  Note that the extracted
9903     format defaults to the aggregate channel layout of the movie (eg. all Rights mixed together,
9904     all Left Surrounds mixed together, etc), 32-bit float, de-interleaved, with the sample rate
9905     set to the highest sample rate found in the movie.  You can get this info, and you can also
9906     set the format to be something else (as long as it is uncompressed, and you do it before
9907     the first call to MovieAudioExtractionFillBuffer).
9908  }
9909 type
9910 	MovieAudioExtractionRef = ^OpaqueMovieAudioExtractionRef; { an opaque type }
9911 	OpaqueMovieAudioExtractionRef = record end;
9912 {
9913  *  MovieAudioExtractionBegin()
9914  *
9915  *  Availability:
9916  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9917  *    CarbonLib:        not available
9918  *    Non-Carbon CFM:   not available
9919  }
MovieAudioExtractionBeginnull9920 function MovieAudioExtractionBegin( m: Movie; flags: UInt32; var outSession: MovieAudioExtractionRef ): OSStatus; external name '_MovieAudioExtractionBegin';
9921 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9922 
9923 
9924 {
9925     MovieAudioExtractionEnd:
9926     This API must be called when movie audio extraction is complete.
9927  }
9928 {
9929  *  MovieAudioExtractionEnd()
9930  *
9931  *  Availability:
9932  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
9933  *    CarbonLib:        not available
9934  *    Non-Carbon CFM:   not available
9935  }
MovieAudioExtractionEndnull9936 function MovieAudioExtractionEnd( session: MovieAudioExtractionRef ): OSStatus; external name '_MovieAudioExtractionEnd';
9937 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
9938 
9939 
9940 { Movie audio extraction property classes}
9941 
9942 const
9943 {
9944    * Properties of the movie being extracted from
9945    }
9946 	kQTPropertyClass_MovieAudioExtraction_Movie = FourCharCode('xmov');
9947 
9948   {
9949    * Properties of the output audio
9950    }
9951 	kQTPropertyClass_MovieAudioExtraction_Audio = FourCharCode('xaud');
9952 
9953 { "Movie class" property IDs}
9954 
9955 const
9956 {
9957    * kQTMovieAudioExtractionMoviePropertyID_CurrentTime: Value is
9958    * TimeRecord (set & get) When setting, set the timescale to anything
9959    * you want (output audio sample rate, movie timescale) When getting,
9960    * the timescale will be output audio sample rate for best accuracy.
9961    }
9962 	kQTMovieAudioExtractionMoviePropertyID_CurrentTime = FourCharCode('time'); { value is TimeRecord. Get/Set.}
9963 
9964   {
9965    * kQTMovieAudioExtractionMoviePropertyID_AllChannelsDiscrete: Value
9966    * is Boolean (set & get) Set to implement export of all audio
9967    * channels without mixing. When this is set and the extraction asbd
9968    * or channel layout are read back, you will get information relating
9969    * to the re-mapped movie.
9970    }
9971 	kQTMovieAudioExtractionMoviePropertyID_AllChannelsDiscrete = FourCharCode('disc'); { value is Boolean. Get/Set.}
9972 
9973   {
9974    * kQTMovieAudioExtractionAudioPropertyID_RenderQuality: Value is
9975    * UInt32 (set & get) Set the render quality to be used for this
9976    * audio extraction session. UInt32 values vary from 0x00
9977    * (kQTAudioRenderQuality_Min) to 0x7F (kQTAudioRenderQuality_Max).
9978    * We also define a special value
9979    * (kQTAudioRenderQuality_PlaybackDefault) which resets the quality
9980    * settings to the same values that were chosen by default for
9981    * playback.
9982    }
9983 	kQTMovieAudioExtractionAudioPropertyID_RenderQuality = FourCharCode('qual'); { value is UInt32. Get/Set.}
9984 
9985 
9986 { "Output Audio class" property IDs}
9987 
9988 const
9989 { kQTPropertyClass_MovieAudioExtraction_Audio}
9990 
9991   {
9992    *
9993    * QTMovieAudioExtractionAudioPropertyID_AudioStreamBasicDescription:
9994    * Value is AudioStreamBasicDescription.  Get/Set. (get any time, set
9995    * before first MovieAudioExtractionFillBuffer call) If you get this
9996    * property immediately after beginning an audio extraction session,
9997    * it will tell you the default extraction format for the movie.
9998    * This will include the number of channels in the default movie mix.
9999    * If you set the output AudioStreamBasicDescription, it is
10000    * recommended that you also set the output channel layout.  If your
10001    * output ASBD has a different number of channels that the default
10002    * extraction mix, you _must_ set the output channel layout. You can
10003    * only set PCM output formats.  Setting a compressed output format
10004    * will fail.
10005    }
10006 	kQTMovieAudioExtractionAudioPropertyID_AudioStreamBasicDescription = FourCharCode('asbd'); { value is AudioStreamBasicDescription. Get/Set.}
10007 
10008   {
10009    * kQTMovieAudioExtractionAudioPropertyID_AudioChannelLayout: Value
10010    * is AudioChannelLayout.  Get/Set. (get any time, set before first
10011    * MovieAudioExtractionFillBuffer call) If you get this property
10012    * immediately after beginning an audio extraction session, it will
10013    * tell you what the channel layout is for the default extraction mix.
10014    }
10015 	kQTMovieAudioExtractionAudioPropertyID_AudioChannelLayout = FourCharCode('clay'); { value is AudioChannelLayout. Get/Set.}
10016 
10017   {
10018    * kQTMovieAudioExtractionAudioPropertyID_RemainingAudioDuration:
10019    * Value is TimeRecord. Get only. Returns the total duration of audio
10020    * data that can be expected from the audio extraction session as
10021    * currently configured.  This is computed by examining all tracks
10022    * that contribute to the audio mix, finding the highest end time
10023    * among them, adding in all relevant tail times from any Audio
10024    * Context Inserts that have been registered, and subtracting any
10025    * extraction start time that has been set.  If this property is
10026    * queried once extraction has started, it will return the remaining
10027    * duration, or zero once extraction has advanced to the end of all
10028    * contributing audio tracks.
10029    }
10030 	kQTMovieAudioExtractionAudioPropertyID_RemainingAudioDuration = FourCharCode('dura'); { value is TimeRecord. Get only.}
10031 
10032 
10033 {
10034  *  MovieAudioExtractionGetPropertyInfo()
10035  *
10036  *  Availability:
10037  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10038  *    CarbonLib:        not available
10039  *    Non-Carbon CFM:   not available
10040  }
MovieAudioExtractionGetPropertyInfonull10041 function MovieAudioExtractionGetPropertyInfo( session: MovieAudioExtractionRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; var outPropType: QTPropertyValueType; var outPropValueSize: ByteCount; var outPropertyFlags: UInt32 ): OSStatus; external name '_MovieAudioExtractionGetPropertyInfo';
10042 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10043 
10044 
10045 {
10046  *  MovieAudioExtractionGetProperty()
10047  *
10048  *  Availability:
10049  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10050  *    CarbonLib:        not available
10051  *    Non-Carbon CFM:   not available
10052  }
MovieAudioExtractionGetPropertynull10053 function MovieAudioExtractionGetProperty( session: MovieAudioExtractionRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; var outPropValueSizeUsed: ByteCount ): OSStatus; external name '_MovieAudioExtractionGetProperty';
10054 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10055 
10056 
10057 {
10058  *  MovieAudioExtractionSetProperty()
10059  *
10060  *  Availability:
10061  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10062  *    CarbonLib:        not available
10063  *    Non-Carbon CFM:   not available
10064  }
MovieAudioExtractionSetPropertynull10065 function MovieAudioExtractionSetProperty( session: MovieAudioExtractionRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSStatus; external name '_MovieAudioExtractionSetProperty';
10066 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10067 
10068 
10069 {
10070     MovieAudioExtractionFillBuffer:
10071     Each call to MovieAudioExtractionFillBuffer will continue where the last call left off.
10072     It will extract as many of the requested PCM frames as it can, given the limits of the
10073     buffer(s) supplied, and the limits of the input movie.  ioNumFrames will be updated
10074     with the exact number of valid frames being returned.
10075     When there is no more audio to extract from the movie, MovieAudioExtractionFillBuffer
10076     will continue to return noErr, but no audio data will be returned.  outFlags will have
10077     the kQTMovieAudioExtractionComplete bit set in this case.  It is possible that the
10078     kQTMovieAudioExtractionComplete bit will accompany the last buffer of valid data.
10079  }
10080 const
10081 	kQTMovieAudioExtractionComplete = 1 shl 0;
10082 
10083 {
10084  *  MovieAudioExtractionFillBuffer()
10085  *
10086  *  Availability:
10087  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10088  *    CarbonLib:        not available
10089  *    Non-Carbon CFM:   not available
10090  }
MovieAudioExtractionFillBuffernull10091 function MovieAudioExtractionFillBuffer( session: MovieAudioExtractionRef; var ioNumFrames: UInt32; var ioData: AudioBufferList; var outFlags: UInt32 ): OSStatus; external name '_MovieAudioExtractionFillBuffer';
10092 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10093 
10094 
10095 { Audio Context Insert properties for MovieAudioExtraction}
10096 
10097 {
10098    Theory of operations:
10099     To register for a Movie Audio Context Insert during Movie Audio Extraction:
10100         Set the kQTMovieAudioExtractionAudioPropertyID_RegisterMovieInsert
10101             property on the extraction session, providing the same registry info structure
10102             that is used for the QTAudioContextRegisterInsert call.
10103     To register for a Track Audio Context Insert during Movie Audio Extraction:
10104         Set the kQTMovieAudioExtractionAudioPropertyID_RegisterTrackInsert
10105             property on the extraction session, providing a QTAudioTrackInsertRegistryInfoRef,
10106             described below.
10107     Note: Once extraction has begun (ie, MovieAudioExtractionFillBuffer() has been
10108             called), attempts to set these properties will return qtReadOnlyErr.
10109             This is consistent with the behavior of most extraction properties.
10110 }
10111 
10112 
10113 {
10114  *  QTAudioTrackInsertRegistryInfo
10115  *
10116  *  Summary:
10117  *    Parameters for registering an Audio Context Track Insert during
10118  *    Movie Audio Extraction
10119  *
10120  *  Discussion:
10121  *    This is used with the
10122  *    kQTMovieAudioExtractionMoviePropertyID_RegisterTrackInsert
10123  *    property.
10124  }
10125 type
10126 	QTAudioTrackInsertRegistryInfoPtr = ^QTAudioTrackInsertRegistryInfo;
10127 	QTAudioTrackInsertRegistryInfo = record
10128 {
10129    * The track of the source movie on which to apply the insert.
10130    }
10131 		track: Track_fix;
10132 
10133   {
10134    * The Audio Context Insert registration info (channel layouts,
10135    * callbacks).
10136    }
10137 		regInfo: QTAudioContextInsertRegistryInfo;
10138 	end;
10139 type
10140 	QTAudioTrackInsertRegistryInfoRef = QTAudioTrackInsertRegistryInfoPtr;
10141 { Movie and Track level audio context inserts for extraction (kQTPropertyClass_MovieAudioExtraction_Audio)}
10142 
10143 const
10144 {
10145    * kQTMovieAudioExtractionAudioPropertyID_RegisterMovieInsert: Value
10146    * is QTAudioContextInsertRegistryInfoRef  (Get/Set) Set on an
10147    * extraction session to register/unregister an Audio Context Insert
10148    * for the movie summary mix.  When this property is read back
10149    * (MovieAudioExtractionGetProperty) the channel layout pointers will
10150    * will be NULL. To unregister, supply a NULL processDataCallback (in
10151    * which case the rest of the registry info will be ignored).
10152    }
10153 	kQTMovieAudioExtractionAudioPropertyID_RegisterMovieInsert = FourCharCode('regm'); { value is QTAudioContextInsertRegistryInfoRef. Get/Set.}
10154 
10155   {
10156    * kQTMovieAudioExtractionAudioPropertyID_RegisterTrackInsert: Value
10157    * is QTAudioTrackInsertRegistryInfoRef  (Get/Set) Set on an
10158    * extraction session to register/unregister an Audio Context Insert
10159    * for a particular track of the movie.  When this property is read
10160    * back (MovieAudioExtractionGetProperty) the channel layout pointers
10161    * will will be NULL. To unregister, supply a NULL
10162    * processDataCallback (in which case the rest of the registry info
10163    * will be ignored).
10164    }
10165 	kQTMovieAudioExtractionAudioPropertyID_RegisterTrackInsert = FourCharCode('regt'); { value is QTAudioTrackInsertRegistryInfoRef. Get/Set.}
10166 
10167 
10168 //#define kQTMovieAudioExtractionMoviePropertyID_RegisterInsert  Use kQTPropertyClass_MovieAudioExtraction_Audio / kQTMovieAudioExtractionAudioPropertyID_RegisterMovieInsert instead!
10169 
10170 { Legacy Audio/Sound APIs}
10171 
10172 {
10173  *  GetMoviePreferredVolume()
10174  *
10175  *  Availability:
10176  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10177  *    CarbonLib:        in CarbonLib 1.0 and later
10178  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10179  *    Windows:          in qtmlClient.lib 3.0 and later
10180  }
GetMoviePreferredVolumenull10181 function GetMoviePreferredVolume( theMovie: Movie ): SInt16; external name '_GetMoviePreferredVolume';
10182 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10183 
10184 
10185 {
10186  *  SetMoviePreferredVolume()
10187  *
10188  *  Availability:
10189  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10190  *    CarbonLib:        in CarbonLib 1.0 and later
10191  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10192  *    Windows:          in qtmlClient.lib 3.0 and later
10193  }
10194 procedure SetMoviePreferredVolume( theMovie: Movie; volume: SInt16 ); external name '_SetMoviePreferredVolume';
10195 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10196 
10197 
10198 {
10199  *  GetMovieVolume()
10200  *
10201  *  Availability:
10202  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10203  *    CarbonLib:        in CarbonLib 1.0 and later
10204  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10205  *    Windows:          in qtmlClient.lib 3.0 and later
10206  }
GetMovieVolumenull10207 function GetMovieVolume( theMovie: Movie ): SInt16; external name '_GetMovieVolume';
10208 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10209 
10210 
10211 {
10212  *  SetMovieVolume()
10213  *
10214  *  Availability:
10215  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10216  *    CarbonLib:        in CarbonLib 1.0 and later
10217  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10218  *    Windows:          in qtmlClient.lib 3.0 and later
10219  }
10220 procedure SetMovieVolume( theMovie: Movie; volume: SInt16 ); external name '_SetMovieVolume';
10221 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10222 
10223 
10224 {
10225  *  GetTrackVolume()
10226  *
10227  *  Availability:
10228  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10229  *    CarbonLib:        in CarbonLib 1.0 and later
10230  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10231  *    Windows:          in qtmlClient.lib 3.0 and later
10232  }
GetTrackVolumenull10233 function GetTrackVolume( theTrack: Track ): SInt16; external name '_GetTrackVolume';
10234 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10235 
10236 
10237 {
10238  *  SetTrackVolume()
10239  *
10240  *  Availability:
10241  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10242  *    CarbonLib:        in CarbonLib 1.0 and later
10243  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10244  *    Windows:          in qtmlClient.lib 3.0 and later
10245  }
10246 procedure SetTrackVolume( theTrack: Track; volume: SInt16 ); external name '_SetTrackVolume';
10247 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10248 
10249 
10250 {
10251  *  GetTrackSoundLocalizationSettings()
10252  *
10253  *  Availability:
10254  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10255  *    CarbonLib:        in CarbonLib 1.0 and later
10256  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10257  *    Windows:          in qtmlClient.lib 3.0 and later
10258  }
GetTrackSoundLocalizationSettingsnull10259 function GetTrackSoundLocalizationSettings( theTrack: Track; var settings: Handle ): OSErr; external name '_GetTrackSoundLocalizationSettings';
10260 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10261 
10262 
10263 {
10264  *  SetTrackSoundLocalizationSettings()
10265  *
10266  *  Availability:
10267  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10268  *    CarbonLib:        in CarbonLib 1.0 and later
10269  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
10270  *    Windows:          in qtmlClient.lib 3.0 and later
10271  }
SetTrackSoundLocalizationSettingsnull10272 function SetTrackSoundLocalizationSettings( theTrack: Track; settings: Handle ): OSErr; external name '_SetTrackSoundLocalizationSettings';
10273 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10274 
10275 
10276 { Performance properties}
10277 
10278 
10279 const
10280 	kQTPropertyClass_Performance = FourCharCode('perf');
10281 
10282   {
10283    * kQTPerformancePropertyID_MediaStallCount:  Value is UInt32.
10284    * Get/Set/Listenable Media stalls occur when a media handler is
10285    * unable to provide its media data at the time required for seamless
10286    * playback.  The exact interpretation of a track's MediaStallCount
10287    * property is media-handler dependent, but may indicate conditions
10288    * such as a video frame not decoded in time, the sound queue runs
10289    * dry, etc.  When requested on a specific track, this property
10290    * returns the current stall count of that track.  When requested on
10291    * a movie, it returns the accumulated MediaStallCounts for all the
10292    * tracks in the movie. The track property may be set to zero to
10293    * reset it.  Setting the movie property to zero resets all the track
10294    * counts. Setting the value to anything other than zero yields
10295    * paramErr. The movie toolbox defers property-changed notifications
10296    * to any property listeners until the next time the movie is idled.
10297    }
10298 	kQTPerformancePropertyID_MediaStallCount = FourCharCode('stal'); { UInt32, Get/Set/Listenable }
10299 
10300   {
10301    * kQTPerformancePropertyID_AudioIOOverloadCount:  Value is UInt32.
10302    * Get/Set/Listenable Audio I/O overloads occur when the
10303    * high-priority audio processing thread does not provide the
10304    * requested buffer of data in time to ensure seamless playback.
10305    * This movie property accumulates the number of Audio Device I/O
10306    * overloads that are detected during playback of a movie.  I/O
10307    * overloads that are detected when the movie is not playing (but
10308    * other movies may be playing), are not counted. This property may
10309    * be set to zero to reset the counter.  Setting the value to
10310    * anything other than zero yields paramErr. The movie toolbox defers
10311    * property-changed notifications to any property listeners until the
10312    * next time the movie is idled.
10313    }
10314 	kQTPerformancePropertyID_AudioIOOverloadCount = FourCharCode('ovct'); { UInt32, Get/Set/Listenable}
10315 
10316 
10317 { Movie Visual Adjustment APIs}
10318 
10319 
10320 {
10321  *  Summary:
10322  *    Visual movie properties.
10323  }
10324 const
10325 {
10326    * Class for visual properties.
10327    }
10328 	kQTPropertyClass_Visual = FourCharCode('visu');
10329 
10330   {
10331    * The hue adjustment for the movie.   The value is a Float32 between
10332    * -1.0 and 1.0, with 0.0 meaning no adjustment. This adjustment
10333    * wraps around, such that -1.0 and 1.0 yield the same result.
10334    }
10335 	kQTVisualPropertyID_Hue = FourCharCode('vhue'); { Float32, Read/Write }
10336 
10337   {
10338    * The color saturation adjustment for the movie.  The value is a
10339    * Float32 percentage (1.0f = 100%), such that 0.0 gives grayscale.
10340    }
10341 	kQTVisualPropertyID_Saturation = FourCharCode('vsat'); { Float32, Read/Write }
10342 
10343   {
10344    * The brightness adjustment for the movie.  The value is a Float32
10345    * for which -1.0 means full black, 0.0 means no adjustment, and 1.0
10346    * means full white.
10347    }
10348 	kQTVisualPropertyID_Brightness = FourCharCode('vbrt'); { Float32, Read/Write }
10349 
10350   {
10351    * The contrast adjustment for the movie.  The value is a Float32
10352    * percentage (1.0f = 100%), such that 0.0 gives solid grey.
10353    }
10354 	kQTVisualPropertyID_Contrast = FourCharCode('vcon'); { Float32, Read/Write }
10355 
10356 
10357 {
10358  *  SetMovieVisualHue()
10359  *
10360  *  Summary:
10361  *    This API sets the hue adjustment for the movie.
10362  *
10363  *  Discussion:
10364  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Hue for details.
10365  *    The setting is not stored in the movie.  It is only used until
10366  *    the movie is closed, at which time it is not saved.
10367  *
10368  *  Parameters:
10369  *
10370  *    movie:
10371  *      [in]  The movie.
10372  *
10373  *    hue:
10374  *      [in]  New hue adjustment.
10375  *
10376  *    flags:
10377  *      [in]  Reserved. Pass 0.
10378  *
10379  *  Availability:
10380  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10381  *    CarbonLib:        not available
10382  *    Non-Carbon CFM:   not available
10383  }
SetMovieVisualHuenull10384 function SetMovieVisualHue( movie_: Movie; hue: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieVisualHue';
10385 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10386 
10387 
10388 {
10389  *  GetMovieVisualHue()
10390  *
10391  *  Summary:
10392  *    This API gets the hue adjustment for the movie.
10393  *
10394  *  Discussion:
10395  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Hue for details.
10396  *
10397  *  Parameters:
10398  *
10399  *    movie:
10400  *      [in]  The movie.
10401  *
10402  *    hueOut:
10403  *      [out] Current hue adjustment.
10404  *
10405  *    flags:
10406  *      [in]  Reserved. Pass 0.
10407  *
10408  *  Availability:
10409  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10410  *    CarbonLib:        not available
10411  *    Non-Carbon CFM:   not available
10412  }
GetMovieVisualHuenull10413 function GetMovieVisualHue( movie_: Movie; var hueOut: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieVisualHue';
10414 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10415 
10416 
10417 {
10418  *  SetMovieVisualSaturation()
10419  *
10420  *  Summary:
10421  *    This API sets the color saturation adjustment for the movie.
10422  *
10423  *  Discussion:
10424  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Saturation for
10425  *    details. The setting is not stored in the movie.  It is only used
10426  *    until the movie is closed, at which time it is not saved.
10427  *
10428  *  Parameters:
10429  *
10430  *    movie:
10431  *      [in]  The movie.
10432  *
10433  *    saturation:
10434  *      [in]  New saturation adjustment.
10435  *
10436  *    flags:
10437  *      [in]  Reserved. Pass 0.
10438  *
10439  *  Availability:
10440  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10441  *    CarbonLib:        not available
10442  *    Non-Carbon CFM:   not available
10443  }
SetMovieVisualSaturationnull10444 function SetMovieVisualSaturation( movie_: Movie; saturation: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieVisualSaturation';
10445 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10446 
10447 
10448 {
10449  *  GetMovieVisualSaturation()
10450  *
10451  *  Summary:
10452  *    This API gets the color saturation adjustment for the movie.
10453  *
10454  *  Discussion:
10455  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Saturation for
10456  *    details.
10457  *
10458  *  Parameters:
10459  *
10460  *    movie:
10461  *      [in]  The movie.
10462  *
10463  *    saturationOut:
10464  *      [out] Current saturation adjustment.
10465  *
10466  *    flags:
10467  *      [in]  Reserved. Pass 0.
10468  *
10469  *  Availability:
10470  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10471  *    CarbonLib:        not available
10472  *    Non-Carbon CFM:   not available
10473  }
GetMovieVisualSaturationnull10474 function GetMovieVisualSaturation( movie_: Movie; var saturationOut: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieVisualSaturation';
10475 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10476 
10477 
10478 {
10479  *  SetMovieVisualBrightness()
10480  *
10481  *  Summary:
10482  *    This API sets the brightness adjustment for the movie.
10483  *
10484  *  Discussion:
10485  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Brightness for
10486  *    details. The setting is not stored in the movie.  It is only used
10487  *    until the movie is closed, at which time it is not saved.
10488  *
10489  *  Parameters:
10490  *
10491  *    movie:
10492  *      [in]  The movie.
10493  *
10494  *    brightness:
10495  *      [in]  New brightness adjustment.
10496  *
10497  *    flags:
10498  *      [in]  Reserved. Pass 0.
10499  *
10500  *  Availability:
10501  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10502  *    CarbonLib:        not available
10503  *    Non-Carbon CFM:   not available
10504  }
SetMovieVisualBrightnessnull10505 function SetMovieVisualBrightness( movie_: Movie; brightness: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieVisualBrightness';
10506 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10507 
10508 
10509 {
10510  *  GetMovieVisualBrightness()
10511  *
10512  *  Summary:
10513  *    This API gets the brightness adjustment for the movie.
10514  *
10515  *  Discussion:
10516  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Brightness for
10517  *    details.
10518  *
10519  *  Parameters:
10520  *
10521  *    movie:
10522  *      [in]  The movie.
10523  *
10524  *    brightnessOut:
10525  *      [out] Current brightness adjustment.
10526  *
10527  *    flags:
10528  *      [in]  Reserved. Pass 0.
10529  *
10530  *  Availability:
10531  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10532  *    CarbonLib:        not available
10533  *    Non-Carbon CFM:   not available
10534  }
GetMovieVisualBrightnessnull10535 function GetMovieVisualBrightness( movie_: Movie; var brightnessOut: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieVisualBrightness';
10536 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10537 
10538 
10539 {
10540  *  SetMovieVisualContrast()
10541  *
10542  *  Summary:
10543  *    This API sets the contrast adjustment for the movie.
10544  *
10545  *  Discussion:
10546  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Contrast for
10547  *    details. The setting is not stored in the movie.  It is only used
10548  *    until the movie is closed, at which time it is not saved.
10549  *
10550  *  Parameters:
10551  *
10552  *    movie:
10553  *      [in]  The movie.
10554  *
10555  *    contrast:
10556  *      [in]  New contrast adjustment.
10557  *
10558  *    flags:
10559  *      [in]  Reserved. Pass 0.
10560  *
10561  *  Availability:
10562  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10563  *    CarbonLib:        not available
10564  *    Non-Carbon CFM:   not available
10565  }
SetMovieVisualContrastnull10566 function SetMovieVisualContrast( movie_: Movie; contrast: Float32; flags: UInt32 ): OSStatus; external name '_SetMovieVisualContrast';
10567 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10568 
10569 
10570 {
10571  *  GetMovieVisualContrast()
10572  *
10573  *  Summary:
10574  *    This API gets the contrast adjustment for the movie.
10575  *
10576  *  Discussion:
10577  *    See kQTPropertyClass_Visual/kQTVisualPropertyID_Contrast for
10578  *    details.
10579  *
10580  *  Parameters:
10581  *
10582  *    movie:
10583  *      [in]  The movie.
10584  *
10585  *    contrastOut:
10586  *      [out] Current contrast adjustment.
10587  *
10588  *    flags:
10589  *      [in]  Reserved. Pass 0.
10590  *
10591  *  Availability:
10592  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
10593  *    CarbonLib:        not available
10594  *    Non-Carbon CFM:   not available
10595  }
GetMovieVisualContrastnull10596 function GetMovieVisualContrast( movie_: Movie; var contrastOut: Float32; flags: UInt32 ): OSStatus; external name '_GetMovieVisualContrast';
10597 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
10598 
10599 
10600 { Movie Aperture APIs}
10601 
10602 
10603 {
10604  *  Summary:
10605  *    Visual properties of movies for aperture modes.
10606  }
10607 const
10608 {
10609    * You can set the aperture mode property on a movie to indicate
10610    * whether aspect ratio and clean aperture correction should be
10611    * performed. The values for this property have the prefix
10612    * kQTApertureMode_ and are in ImageCompression.h.
10613    * When a movie is in clean, production or encoded pixels aperture
10614    * mode, each track's dimensions are overriden by special dimensions
10615    * for that mode. The original track dimensions are preserved and can
10616    * be restored by setting the movie into classic aperture mode.
10617    }
10618 	kQTVisualPropertyID_ApertureMode = FourCharCode('apmd'); { OSType, Read/Write/Listen }
10619 
10620 
10621 {
10622  *  Summary:
10623  *    Visual properties of tracks for aperture modes
10624  *
10625  *  Discussion:
10626  *    A track's dimensions may vary depending on the movie's aperture
10627  *    mode. The dimensions for a given aperture mode may be accessed
10628  *    using these properties.
10629  }
10630 const
10631 {
10632    * The track dimensions used in QuickTime 7.0.x and earlier. Setting
10633    * this property is equivalent to calling SetTrackDimensions, except
10634    * that SetTrackDimensions also changes the aperture mode to
10635    * kQTApertureMode_Classic, and setting this property does not.
10636    }
10637 	kQTVisualPropertyID_ClassicDimensions = FourCharCode('cldi'); { FixedPoint, Read/Write }
10638 
10639   {
10640    * The track dimensions to use in clean aperture mode.
10641    }
10642 	kQTVisualPropertyID_CleanApertureDimensions = FourCharCode('cadi'); { FixedPoint, Read/Write }
10643 
10644   {
10645    * The track dimensions to use in production aperture mode.
10646    }
10647 	kQTVisualPropertyID_ProductionApertureDimensions = FourCharCode('prdi'); { FixedPoint, Read/Write }
10648 
10649   {
10650    * The track dimensions to use in encoded pixels aperture mode.
10651    }
10652 	kQTVisualPropertyID_EncodedPixelsDimensions = FourCharCode('endi'); { FixedPoint, Read/Write }
10653 
10654   {
10655    * True if aperture mode dimensions have been set on this movie, even
10656    * if they are all identical to the classic dimensions (as is the
10657    * case for content with square pixels and no edge processing
10658    * region).
10659    * This property can also be tested on a movie, where it is true if
10660    * any track has aperture mode dimensions.
10661    }
10662 	kQTVisualPropertyID_HasApertureModeDimensions = FourCharCode('hamd'); { Boolean, Read }
10663 
10664 
10665 {
10666  *  Summary:
10667  *    Media Characteristics
10668  }
10669 const
10670 {
10671    * Indicates that a media handler supports aperture modes, which
10672    * enable video to be automatically scaled and cropped to compensate
10673    * for non-square pixel aspect ratios and to trim possibly-dirty edge
10674    * processing regions. The dimensions of such a track may change when
10675    * the movie's aperture mode is changed.
10676    }
10677 	kCharacteristicSupportsApertureModes = FourCharCode('apmd');
10678 
10679 {
10680  *  SetTrackApertureModeDimensionsUsingSampleDescription()
10681  *
10682  *  Summary:
10683  *    Sets a track's aperture mode dimensions using values calculated
10684  *    using a sample description.
10685  *
10686  *  Discussion:
10687  *    This function should be used to add information needed to support
10688  *    aperture modes to newly created tracks. This information is
10689  *    calculated using the given sample description. If sampleDesc is
10690  *    NULL, the track's first sample description is used.
10691  *
10692  *  Parameters:
10693  *
10694  *    track:
10695  *      [in] The track.
10696  *
10697  *    sampleDesc:
10698  *      [in] The sample description handle.
10699  *
10700  *  Availability:
10701  *    Mac OS X:         in version 10.5 (or QuickTime 7.1) and later in QuickTime.framework
10702  *    CarbonLib:        not available
10703  *    Non-Carbon CFM:   not available
10704  }
SetTrackApertureModeDimensionsUsingSampleDescriptionnull10705 function SetTrackApertureModeDimensionsUsingSampleDescription( track_: Track; sampleDesc: SampleDescriptionHandle { can be NULL } ): OSErr; external name '_SetTrackApertureModeDimensionsUsingSampleDescription';
10706 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
10707 
10708 
10709 {
10710  *  GenerateMovieApertureModeDimensions()
10711  *
10712  *  Summary:
10713  *    Examines a movie and sets up track aperture mode dimensions.
10714  *
10715  *  Discussion:
10716  *    This function can be used to add information needed to support
10717  *    aperture modes to movies created with applications and/or
10718  *    versions of QuickTime that did not support aperture mode
10719  *    dimensions. If the image descriptions in video tracks lack tags
10720  *    describing clean aperture and pixel aspect ratio information, the
10721  *    media data may be scanned to see if the correct values can be
10722  *    divined and attached. Then the aperture mode dimensions are
10723  *    calculated and set for each track. Afterwards, the
10724  *    kQTVisualPropertyID_HasApertureModeDimensions property will be
10725  *    set to true for these tracks. Tracks which do not support
10726  *    aperture modes are not changed.
10727  *
10728  *  Parameters:
10729  *
10730  *    movie:
10731  *      [in] The movie.
10732  *
10733  *  Availability:
10734  *    Mac OS X:         in version 10.5 (or QuickTime 7.1) and later in QuickTime.framework
10735  *    CarbonLib:        not available
10736  *    Non-Carbon CFM:   not available
10737  }
GenerateMovieApertureModeDimensionsnull10738 function GenerateMovieApertureModeDimensions( movie_: Movie ): OSErr; external name '_GenerateMovieApertureModeDimensions';
10739 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
10740 
10741 
10742 {
10743  *  GenerateTrackApertureModeDimensions()
10744  *
10745  *  Summary:
10746  *    Examines a track and sets up aperture mode dimensions.
10747  *
10748  *  Discussion:
10749  *    This function can be used to add information needed to support
10750  *    aperture modes to tracks created with applications and/or
10751  *    versions of QuickTime that did not support aperture mode
10752  *    dimensions. If the image descriptions in video tracks lack tags
10753  *    describing clean aperture and pixel aspect ratio information, the
10754  *    media data may be scanned to see if the correct values can be
10755  *    divined and attached. Then the aperture mode dimensions are
10756  *    calculated and set. Afterwards, the
10757  *    kQTVisualPropertyID_HasApertureModeDimensions property will be
10758  *    set to true for these tracks. Tracks which do not support
10759  *    aperture modes are not changed.
10760  *
10761  *  Parameters:
10762  *
10763  *    track:
10764  *      [in] The track.
10765  *
10766  *  Availability:
10767  *    Mac OS X:         in version 10.5 (or QuickTime 7.1) and later in QuickTime.framework
10768  *    CarbonLib:        not available
10769  *    Non-Carbon CFM:   not available
10770  }
GenerateTrackApertureModeDimensionsnull10771 function GenerateTrackApertureModeDimensions( track_: Track ): OSErr; external name '_GenerateTrackApertureModeDimensions';
10772 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
10773 
10774 
10775 {
10776  *  RemoveMovieApertureModeDimensions()
10777  *
10778  *  Summary:
10779  *    Removes aperture mode dimension information from a movie.
10780  *
10781  *  Discussion:
10782  *    This function removes aperture mode dimension information from a
10783  *    movie's tracks. It does not attempt to modify sample
10784  *    descriptions, so it may not completely reverse the effect of
10785  *    GenerateMovieApertureModeDimensions. It sets the
10786  *    kQTVisualPropertyID_HasApertureModeDimensions property to false.
10787  *
10788  *  Parameters:
10789  *
10790  *    movie:
10791  *      [in] The movie.
10792  *
10793  *  Availability:
10794  *    Mac OS X:         in version 10.5 (or QuickTime 7.1) and later in QuickTime.framework
10795  *    CarbonLib:        not available
10796  *    Non-Carbon CFM:   not available
10797  }
RemoveMovieApertureModeDimensionsnull10798 function RemoveMovieApertureModeDimensions( movie_: Movie ): OSErr; external name '_RemoveMovieApertureModeDimensions';
10799 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
10800 
10801 
10802 {
10803  *  RemoveTrackApertureModeDimensions()
10804  *
10805  *  Summary:
10806  *    Removes aperture mode dimension information from a track.
10807  *
10808  *  Discussion:
10809  *    This function removes aperture mode dimension information from a
10810  *    track. It does not attempt to modify sample descriptions, so it
10811  *    may not completely reverse the effect of
10812  *    GenerateTrackApertureModeDimensions. It sets the
10813  *    kQTVisualPropertyID_HasApertureModeDimensions property to false.
10814  *
10815  *  Parameters:
10816  *
10817  *    track:
10818  *      [in] The track.
10819  *
10820  *  Availability:
10821  *    Mac OS X:         in version 10.5 (or QuickTime 7.1) and later in QuickTime.framework
10822  *    CarbonLib:        not available
10823  *    Non-Carbon CFM:   not available
10824  }
RemoveTrackApertureModeDimensionsnull10825 function RemoveTrackApertureModeDimensions( track_: Track ): OSErr; external name '_RemoveTrackApertureModeDimensions';
10826 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
10827 
10828 
10829 {****
10830     Error reporting
10831 ****}
10832 type
10833 	QTErrorReplacementRecordPtr = ^QTErrorReplacementRecord;
10834 	QTErrorReplacementRecord = record
10835 		numEntries: SIGNEDLONG;
10836 		replacementString: array [0..1] of StringPtr;   { array of numEntries StringPtrs (each String is allocated separately).}
10837 	end;
10838 type
10839 	QTErrorReplacementPtr = QTErrorReplacementRecordPtr;
10840 {
10841     QTAddMovieError is used to add orthogonal errors to a list of errors that will
10842     later be reported (at the end of an import or playback, for example).  Errors are stored
10843     in 'qter' resources within the component.
10844 
10845     QTAddMovieError(Movie       addTo,                          // in: movie to add error to
10846                     Component   adder,                          // in: component which is adding the error
10847                     long        errorCode,                      // in: error code being added
10848                     QTErrorReplacementPtr   stringReplacements);// in: list of strings to subsitute (in order) for "^1", "^2", etc
10849 }
10850 {
10851  *  QTAddMovieError()
10852  *
10853  *  Availability:
10854  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10855  *    CarbonLib:        in CarbonLib 1.6 and later
10856  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10857  *    Windows:          in qtmlClient.lib 6.0 and later
10858  }
QTAddMovieErrornull10859 function QTAddMovieError( movieH: Movie; c: Component; errorCode: SIGNEDLONG; stringReplacements: QTErrorReplacementPtr ): OSErr; external name '_QTAddMovieError';
10860 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10861 
10862 
10863 {****
10864     Access Keys
10865 ****}
10866 const
10867 	kAccessKeyAtomType = FourCharCode('acky');
10868 
10869 const
10870 	kAccessKeySystemFlag = 1 shl 0;
10871 
10872 {
10873  *  QTGetAccessKeys()
10874  *
10875  *  Availability:
10876  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10877  *    CarbonLib:        in CarbonLib 1.0 and later
10878  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
10879  *    Windows:          in qtmlClient.lib 3.0 and later
10880  }
QTGetAccessKeysnull10881 function QTGetAccessKeys( var accessKeyType: Str255; flags: SIGNEDLONG; var keys: QTAtomContainer ): OSErr; external name '_QTGetAccessKeys';
10882 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10883 
10884 
10885 {
10886  *  QTRegisterAccessKey()
10887  *
10888  *  Availability:
10889  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10890  *    CarbonLib:        in CarbonLib 1.0 and later
10891  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
10892  *    Windows:          in qtmlClient.lib 3.0 and later
10893  }
QTRegisterAccessKeynull10894 function QTRegisterAccessKey( var accessKeyType: Str255; flags: SIGNEDLONG; accessKey: Handle ): OSErr; external name '_QTRegisterAccessKey';
10895 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10896 
10897 
10898 {
10899  *  QTUnregisterAccessKey()
10900  *
10901  *  Availability:
10902  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
10903  *    CarbonLib:        in CarbonLib 1.0 and later
10904  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
10905  *    Windows:          in qtmlClient.lib 3.0 and later
10906  }
QTUnregisterAccessKeynull10907 function QTUnregisterAccessKey( var accessKeyType: Str255; flags: SIGNEDLONG; accessKey: Handle ): OSErr; external name '_QTUnregisterAccessKey';
10908 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
10909 
10910 
10911 {****
10912     Content Restrictions
10913 ****}
10914 
10915 {
10916  *  QTGetMovieRestrictions()
10917  *
10918  *  Availability:
10919  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10920  *    CarbonLib:        in CarbonLib 1.6 and later
10921  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10922  *    Windows:          in qtmlClient.lib 6.0 and later
10923  }
QTGetMovieRestrictionsnull10924 function QTGetMovieRestrictions( theMovie: Movie; var outRestrictionSet: QTRestrictionSet; var outSeed: UInt32 ): OSErr; external name '_QTGetMovieRestrictions';
10925 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10926 
10927 
10928 {
10929  *  QTRestrictionsGetInfo()
10930  *
10931  *  Availability:
10932  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10933  *    CarbonLib:        in CarbonLib 1.6 and later
10934  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10935  *    Windows:          in qtmlClient.lib 6.0 and later
10936  }
QTRestrictionsGetInfonull10937 function QTRestrictionsGetInfo( inRestrictionSet: QTRestrictionSet; var outRestrictionClassCount: SIGNEDLONG; var outSeed: SIGNEDLONG ): OSErr; external name '_QTRestrictionsGetInfo';
10938 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10939 
10940 
10941 {
10942  *  QTRestrictionsGetIndClass()
10943  *
10944  *  Availability:
10945  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10946  *    CarbonLib:        in CarbonLib 1.6 and later
10947  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10948  *    Windows:          in qtmlClient.lib 6.0 and later
10949  }
QTRestrictionsGetIndClassnull10950 function QTRestrictionsGetIndClass( inRestrictionSet: QTRestrictionSet; inIndex: SIGNEDLONG; var outClass: OSType ): OSErr; external name '_QTRestrictionsGetIndClass';
10951 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10952 
10953 
10954 {
10955  *  QTRestrictionsGetItem()
10956  *
10957  *  Availability:
10958  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10959  *    CarbonLib:        in CarbonLib 1.6 and later
10960  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10961  *    Windows:          in qtmlClient.lib 6.0 and later
10962  }
QTRestrictionsGetItemnull10963 function QTRestrictionsGetItem( inRestrictionSet: QTRestrictionSet; inRestrictionClass: OSType; var outRestrictions: UInt32 ): OSErr; external name '_QTRestrictionsGetItem';
10964 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10965 
10966 
10967 {
10968  *  QTGetSupportedRestrictions()
10969  *
10970  *  Availability:
10971  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10972  *    CarbonLib:        in CarbonLib 1.6 and later
10973  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10974  *    Windows:          in qtmlClient.lib 6.0 and later
10975  }
QTGetSupportedRestrictionsnull10976 function QTGetSupportedRestrictions( inRestrictionClass: OSType; var outRestrictionIDs: UInt32 ): OSErr; external name '_QTGetSupportedRestrictions';
10977 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10978 
10979 
10980 {
10981  *  QTCreateUUID()
10982  *
10983  *  Availability:
10984  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10985  *    CarbonLib:        in CarbonLib 1.6 and later
10986  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
10987  *    Windows:          in qtmlClient.lib 6.0 and later
10988  }
QTCreateUUIDnull10989 function QTCreateUUID( var outUUID: QTUUID; creationFlags: SIGNEDLONG ): OSErr; external name '_QTCreateUUID';
10990 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
10991 
10992 
10993 {
10994  *  QTEqualUUIDs()
10995  *
10996  *  Availability:
10997  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
10998  *    CarbonLib:        in CarbonLib 1.6 and later
10999  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
11000  *    Windows:          in qtmlClient.lib 6.0 and later
11001  }
QTEqualUUIDsnull11002 function QTEqualUUIDs( const (*var*) uuid1: QTUUID; const (*var*) uuid2: QTUUID ): Boolean; external name '_QTEqualUUIDs';
11003 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11004 
11005 
11006 {****
11007     Time table
11008 ****}
11009 {
11010  *  MakeTrackTimeTable()
11011  *
11012  *  Availability:
11013  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11014  *    CarbonLib:        in CarbonLib 1.0 and later
11015  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11016  *    Windows:          in qtmlClient.lib 3.0 and later
11017  }
MakeTrackTimeTablenull11018 function MakeTrackTimeTable( trackH: Track; var offsets: SIGNEDLONGPtr; startTime: TimeValue; endTime: TimeValue; timeIncrement: TimeValue; firstDataRefIndex: SInt16; lastDataRefIndex: SInt16; var retdataRefSkew: SIGNEDLONG ): OSErr; external name '_MakeTrackTimeTable';
11019 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11020 
11021 
11022 {
11023  *  MakeMediaTimeTable()
11024  *
11025  *  Availability:
11026  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11027  *    CarbonLib:        in CarbonLib 1.0 and later
11028  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11029  *    Windows:          in qtmlClient.lib 3.0 and later
11030  }
MakeMediaTimeTablenull11031 function MakeMediaTimeTable( theMedia: Media; var offsets: SIGNEDLONGPtr; startTime: TimeValue; endTime: TimeValue; timeIncrement: TimeValue; firstDataRefIndex: SInt16; lastDataRefIndex: SInt16; var retdataRefSkew: SIGNEDLONG ): OSErr; external name '_MakeMediaTimeTable';
11032 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11033 
11034 
11035 {
11036  *  GetMaxLoadedTimeInMovie()
11037  *
11038  *  Availability:
11039  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11040  *    CarbonLib:        in CarbonLib 1.0 and later
11041  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11042  *    Windows:          in qtmlClient.lib 3.0 and later
11043  }
GetMaxLoadedTimeInMovienull11044 function GetMaxLoadedTimeInMovie( theMovie: Movie; var time: TimeValue ): OSErr; external name '_GetMaxLoadedTimeInMovie';
11045 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11046 
11047 
11048 {
11049  *  QTMovieNeedsTimeTable()
11050  *
11051  *  Availability:
11052  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11053  *    CarbonLib:        in CarbonLib 1.0 and later
11054  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11055  *    Windows:          in qtmlClient.lib 3.0 and later
11056  }
QTMovieNeedsTimeTablenull11057 function QTMovieNeedsTimeTable( theMovie: Movie; var needsTimeTable: Boolean ): OSErr; external name '_QTMovieNeedsTimeTable';
11058 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11059 
11060 
11061 {
11062  *  QTGetDataRefMaxFileOffset()
11063  *
11064  *  Availability:
11065  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11066  *    CarbonLib:        in CarbonLib 1.0 and later
11067  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11068  *    Windows:          in qtmlClient.lib 3.0 and later
11069  }
QTGetDataRefMaxFileOffsetnull11070 function QTGetDataRefMaxFileOffset( movieH: Movie; dataRefType: OSType; dataRef: Handle; var offset: SIGNEDLONG ): OSErr; external name '_QTGetDataRefMaxFileOffset';
11071 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11072 
11073 
11074 const
11075 	kQTIdlePriority = 10;
11076 	kQTNonRealTimePriority = 20;
11077 	kQTRealTimeSharedPriority = 25;
11078 	kQTRealTimePriority = 30;
11079 
11080 
11081 {
11082  *  NewQTCallBackUPP()
11083  *
11084  *  Availability:
11085  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11086  *    CarbonLib:        in CarbonLib 1.0 and later
11087  *    Non-Carbon CFM:   available as macro/inline
11088  }
NewQTCallBackUPPnull11089 function NewQTCallBackUPP( userRoutine: QTCallBackProcPtr ): QTCallBackUPP; external name '_NewQTCallBackUPP';
11090 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11091 
11092 {
11093  *  NewQTSyncTaskUPP()
11094  *
11095  *  Availability:
11096  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11097  *    CarbonLib:        in CarbonLib 1.0 and later
11098  *    Non-Carbon CFM:   available as macro/inline
11099  }
NewQTSyncTaskUPPnull11100 function NewQTSyncTaskUPP( userRoutine: QTSyncTaskProcPtr ): QTSyncTaskUPP; external name '_NewQTSyncTaskUPP';
11101 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11102 
11103 {
11104  *  NewMovieRgnCoverUPP()
11105  *
11106  *  Availability:
11107  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11108  *    CarbonLib:        in CarbonLib 1.0 and later
11109  *    Non-Carbon CFM:   available as macro/inline
11110  }
NewMovieRgnCoverUPPnull11111 function NewMovieRgnCoverUPP( userRoutine: MovieRgnCoverProcPtr ): MovieRgnCoverUPP; external name '_NewMovieRgnCoverUPP';
11112 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11113 
11114 {
11115  *  NewMovieProgressUPP()
11116  *
11117  *  Availability:
11118  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11119  *    CarbonLib:        in CarbonLib 1.0 and later
11120  *    Non-Carbon CFM:   available as macro/inline
11121  }
NewMovieProgressUPPnull11122 function NewMovieProgressUPP( userRoutine: MovieProgressProcPtr ): MovieProgressUPP; external name '_NewMovieProgressUPP';
11123 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11124 
11125 {
11126  *  NewMovieDrawingCompleteUPP()
11127  *
11128  *  Availability:
11129  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11130  *    CarbonLib:        in CarbonLib 1.0 and later
11131  *    Non-Carbon CFM:   available as macro/inline
11132  }
NewMovieDrawingCompleteUPPnull11133 function NewMovieDrawingCompleteUPP( userRoutine: MovieDrawingCompleteProcPtr ): MovieDrawingCompleteUPP; external name '_NewMovieDrawingCompleteUPP';
11134 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11135 
11136 {
11137  *  NewTrackTransferUPP()
11138  *
11139  *  Availability:
11140  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11141  *    CarbonLib:        in CarbonLib 1.0 and later
11142  *    Non-Carbon CFM:   available as macro/inline
11143  }
NewTrackTransferUPPnull11144 function NewTrackTransferUPP( userRoutine: TrackTransferProcPtr ): TrackTransferUPP; external name '_NewTrackTransferUPP';
11145 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11146 
11147 {
11148  *  NewGetMovieUPP()
11149  *
11150  *  Availability:
11151  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11152  *    CarbonLib:        in CarbonLib 1.0 and later
11153  *    Non-Carbon CFM:   available as macro/inline
11154  }
NewGetMovieUPPnull11155 function NewGetMovieUPP( userRoutine: GetMovieProcPtr ): GetMovieUPP; external name '_NewGetMovieUPP';
11156 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11157 
11158 {
11159  *  NewMoviePreviewCallOutUPP()
11160  *
11161  *  Availability:
11162  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11163  *    CarbonLib:        in CarbonLib 1.0 and later
11164  *    Non-Carbon CFM:   available as macro/inline
11165  }
NewMoviePreviewCallOutUPPnull11166 function NewMoviePreviewCallOutUPP( userRoutine: MoviePreviewCallOutProcPtr ): MoviePreviewCallOutUPP; external name '_NewMoviePreviewCallOutUPP';
11167 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11168 
11169 {
11170  *  NewTextMediaUPP()
11171  *
11172  *  Availability:
11173  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11174  *    CarbonLib:        in CarbonLib 1.0 and later
11175  *    Non-Carbon CFM:   available as macro/inline
11176  }
NewTextMediaUPPnull11177 function NewTextMediaUPP( userRoutine: TextMediaProcPtr ): TextMediaUPP; external name '_NewTextMediaUPP';
11178 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11179 
11180 {
11181  *  NewActionsUPP()
11182  *
11183  *  Availability:
11184  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11185  *    CarbonLib:        in CarbonLib 1.0 and later
11186  *    Non-Carbon CFM:   available as macro/inline
11187  }
NewActionsUPPnull11188 function NewActionsUPP( userRoutine: ActionsProcPtr ): ActionsUPP; external name '_NewActionsUPP';
11189 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11190 
11191 {
11192  *  NewDoMCActionUPP()
11193  *
11194  *  Availability:
11195  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11196  *    CarbonLib:        in CarbonLib 1.0.2 and later
11197  *    Non-Carbon CFM:   available as macro/inline
11198  }
NewDoMCActionUPPnull11199 function NewDoMCActionUPP( userRoutine: DoMCActionProcPtr ): DoMCActionUPP; external name '_NewDoMCActionUPP';
11200 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11201 
11202 {
11203  *  NewMovieExecuteWiredActionsUPP()
11204  *
11205  *  Availability:
11206  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11207  *    CarbonLib:        in CarbonLib 1.0.2 and later
11208  *    Non-Carbon CFM:   available as macro/inline
11209  }
NewMovieExecuteWiredActionsUPPnull11210 function NewMovieExecuteWiredActionsUPP( userRoutine: MovieExecuteWiredActionsProcPtr ): MovieExecuteWiredActionsUPP; external name '_NewMovieExecuteWiredActionsUPP';
11211 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11212 
11213 {
11214  *  NewMoviePrePrerollCompleteUPP()
11215  *
11216  *  Availability:
11217  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11218  *    CarbonLib:        in CarbonLib 1.0.2 and later
11219  *    Non-Carbon CFM:   available as macro/inline
11220  }
NewMoviePrePrerollCompleteUPPnull11221 function NewMoviePrePrerollCompleteUPP( userRoutine: MoviePrePrerollCompleteProcPtr ): MoviePrePrerollCompleteUPP; external name '_NewMoviePrePrerollCompleteUPP';
11222 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11223 
11224 {
11225  *  NewQTNextTaskNeededSoonerCallbackUPP()
11226  *
11227  *  Availability:
11228  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11229  *    CarbonLib:        in CarbonLib 1.6 and later
11230  *    Non-Carbon CFM:   available as macro/inline
11231  }
NewQTNextTaskNeededSoonerCallbackUPPnull11232 function NewQTNextTaskNeededSoonerCallbackUPP( userRoutine: QTNextTaskNeededSoonerCallbackProcPtr ): QTNextTaskNeededSoonerCallbackUPP; external name '_NewQTNextTaskNeededSoonerCallbackUPP';
11233 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11234 
11235 {
11236  *  NewMoviesErrorUPP()
11237  *
11238  *  Availability:
11239  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11240  *    CarbonLib:        in CarbonLib 1.0 and later
11241  *    Non-Carbon CFM:   available as macro/inline
11242  }
NewMoviesErrorUPPnull11243 function NewMoviesErrorUPP( userRoutine: MoviesErrorProcPtr ): MoviesErrorUPP; external name '_NewMoviesErrorUPP';
11244 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11245 
11246 {
11247  *  NewTweenerDataUPP()
11248  *
11249  *  Availability:
11250  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11251  *    CarbonLib:        in CarbonLib 1.0 and later
11252  *    Non-Carbon CFM:   available as macro/inline
11253  }
NewTweenerDataUPPnull11254 function NewTweenerDataUPP( userRoutine: TweenerDataProcPtr ): TweenerDataUPP; external name '_NewTweenerDataUPP';
11255 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11256 
11257 {
11258  *  NewQTEffectListFilterUPP()
11259  *
11260  *  Availability:
11261  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11262  *    CarbonLib:        in CarbonLib 1.6 and later
11263  *    Non-Carbon CFM:   available as macro/inline
11264  }
NewQTEffectListFilterUPPnull11265 function NewQTEffectListFilterUPP( userRoutine: QTEffectListFilterProcPtr ): QTEffectListFilterUPP; external name '_NewQTEffectListFilterUPP';
11266 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11267 
11268 {
11269  *  DisposeQTCallBackUPP()
11270  *
11271  *  Availability:
11272  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11273  *    CarbonLib:        in CarbonLib 1.0 and later
11274  *    Non-Carbon CFM:   available as macro/inline
11275  }
11276 procedure DisposeQTCallBackUPP( userUPP: QTCallBackUPP ); external name '_DisposeQTCallBackUPP';
11277 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11278 
11279 {
11280  *  DisposeQTSyncTaskUPP()
11281  *
11282  *  Availability:
11283  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11284  *    CarbonLib:        in CarbonLib 1.0 and later
11285  *    Non-Carbon CFM:   available as macro/inline
11286  }
11287 procedure DisposeQTSyncTaskUPP( userUPP: QTSyncTaskUPP ); external name '_DisposeQTSyncTaskUPP';
11288 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11289 
11290 {
11291  *  DisposeMovieRgnCoverUPP()
11292  *
11293  *  Availability:
11294  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11295  *    CarbonLib:        in CarbonLib 1.0 and later
11296  *    Non-Carbon CFM:   available as macro/inline
11297  }
11298 procedure DisposeMovieRgnCoverUPP( userUPP: MovieRgnCoverUPP ); external name '_DisposeMovieRgnCoverUPP';
11299 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11300 
11301 {
11302  *  DisposeMovieProgressUPP()
11303  *
11304  *  Availability:
11305  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11306  *    CarbonLib:        in CarbonLib 1.0 and later
11307  *    Non-Carbon CFM:   available as macro/inline
11308  }
11309 procedure DisposeMovieProgressUPP( userUPP: MovieProgressUPP ); external name '_DisposeMovieProgressUPP';
11310 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11311 
11312 {
11313  *  DisposeMovieDrawingCompleteUPP()
11314  *
11315  *  Availability:
11316  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11317  *    CarbonLib:        in CarbonLib 1.0 and later
11318  *    Non-Carbon CFM:   available as macro/inline
11319  }
11320 procedure DisposeMovieDrawingCompleteUPP( userUPP: MovieDrawingCompleteUPP ); external name '_DisposeMovieDrawingCompleteUPP';
11321 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11322 
11323 {
11324  *  DisposeTrackTransferUPP()
11325  *
11326  *  Availability:
11327  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11328  *    CarbonLib:        in CarbonLib 1.0 and later
11329  *    Non-Carbon CFM:   available as macro/inline
11330  }
11331 procedure DisposeTrackTransferUPP( userUPP: TrackTransferUPP ); external name '_DisposeTrackTransferUPP';
11332 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11333 
11334 {
11335  *  DisposeGetMovieUPP()
11336  *
11337  *  Availability:
11338  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11339  *    CarbonLib:        in CarbonLib 1.0 and later
11340  *    Non-Carbon CFM:   available as macro/inline
11341  }
11342 procedure DisposeGetMovieUPP( userUPP: GetMovieUPP ); external name '_DisposeGetMovieUPP';
11343 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11344 
11345 {
11346  *  DisposeMoviePreviewCallOutUPP()
11347  *
11348  *  Availability:
11349  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11350  *    CarbonLib:        in CarbonLib 1.0 and later
11351  *    Non-Carbon CFM:   available as macro/inline
11352  }
11353 procedure DisposeMoviePreviewCallOutUPP( userUPP: MoviePreviewCallOutUPP ); external name '_DisposeMoviePreviewCallOutUPP';
11354 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11355 
11356 {
11357  *  DisposeTextMediaUPP()
11358  *
11359  *  Availability:
11360  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11361  *    CarbonLib:        in CarbonLib 1.0 and later
11362  *    Non-Carbon CFM:   available as macro/inline
11363  }
11364 procedure DisposeTextMediaUPP( userUPP: TextMediaUPP ); external name '_DisposeTextMediaUPP';
11365 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11366 
11367 {
11368  *  DisposeActionsUPP()
11369  *
11370  *  Availability:
11371  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11372  *    CarbonLib:        in CarbonLib 1.0 and later
11373  *    Non-Carbon CFM:   available as macro/inline
11374  }
11375 procedure DisposeActionsUPP( userUPP: ActionsUPP ); external name '_DisposeActionsUPP';
11376 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11377 
11378 {
11379  *  DisposeDoMCActionUPP()
11380  *
11381  *  Availability:
11382  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11383  *    CarbonLib:        in CarbonLib 1.0.2 and later
11384  *    Non-Carbon CFM:   available as macro/inline
11385  }
11386 procedure DisposeDoMCActionUPP( userUPP: DoMCActionUPP ); external name '_DisposeDoMCActionUPP';
11387 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11388 
11389 {
11390  *  DisposeMovieExecuteWiredActionsUPP()
11391  *
11392  *  Availability:
11393  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11394  *    CarbonLib:        in CarbonLib 1.0.2 and later
11395  *    Non-Carbon CFM:   available as macro/inline
11396  }
11397 procedure DisposeMovieExecuteWiredActionsUPP( userUPP: MovieExecuteWiredActionsUPP ); external name '_DisposeMovieExecuteWiredActionsUPP';
11398 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11399 
11400 {
11401  *  DisposeMoviePrePrerollCompleteUPP()
11402  *
11403  *  Availability:
11404  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11405  *    CarbonLib:        in CarbonLib 1.0.2 and later
11406  *    Non-Carbon CFM:   available as macro/inline
11407  }
11408 procedure DisposeMoviePrePrerollCompleteUPP( userUPP: MoviePrePrerollCompleteUPP ); external name '_DisposeMoviePrePrerollCompleteUPP';
11409 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11410 
11411 {
11412  *  DisposeQTNextTaskNeededSoonerCallbackUPP()
11413  *
11414  *  Availability:
11415  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11416  *    CarbonLib:        in CarbonLib 1.6 and later
11417  *    Non-Carbon CFM:   available as macro/inline
11418  }
11419 procedure DisposeQTNextTaskNeededSoonerCallbackUPP( userUPP: QTNextTaskNeededSoonerCallbackUPP ); external name '_DisposeQTNextTaskNeededSoonerCallbackUPP';
11420 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11421 
11422 {
11423  *  DisposeMoviesErrorUPP()
11424  *
11425  *  Availability:
11426  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11427  *    CarbonLib:        in CarbonLib 1.0 and later
11428  *    Non-Carbon CFM:   available as macro/inline
11429  }
11430 procedure DisposeMoviesErrorUPP( userUPP: MoviesErrorUPP ); external name '_DisposeMoviesErrorUPP';
11431 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11432 
11433 {
11434  *  DisposeTweenerDataUPP()
11435  *
11436  *  Availability:
11437  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11438  *    CarbonLib:        in CarbonLib 1.0 and later
11439  *    Non-Carbon CFM:   available as macro/inline
11440  }
11441 procedure DisposeTweenerDataUPP( userUPP: TweenerDataUPP ); external name '_DisposeTweenerDataUPP';
11442 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11443 
11444 {
11445  *  DisposeQTEffectListFilterUPP()
11446  *
11447  *  Availability:
11448  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11449  *    CarbonLib:        in CarbonLib 1.6 and later
11450  *    Non-Carbon CFM:   available as macro/inline
11451  }
11452 procedure DisposeQTEffectListFilterUPP( userUPP: QTEffectListFilterUPP ); external name '_DisposeQTEffectListFilterUPP';
11453 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11454 
11455 {
11456  *  InvokeQTCallBackUPP()
11457  *
11458  *  Availability:
11459  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11460  *    CarbonLib:        in CarbonLib 1.0 and later
11461  *    Non-Carbon CFM:   available as macro/inline
11462  }
11463 procedure InvokeQTCallBackUPP( cb: QTCallBack; refCon: SIGNEDLONG; userUPP: QTCallBackUPP ); external name '_InvokeQTCallBackUPP';
11464 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11465 
11466 {
11467  *  InvokeQTSyncTaskUPP()
11468  *
11469  *  Availability:
11470  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11471  *    CarbonLib:        in CarbonLib 1.0 and later
11472  *    Non-Carbon CFM:   available as macro/inline
11473  }
11474 procedure InvokeQTSyncTaskUPP( task: UnivPtr; userUPP: QTSyncTaskUPP ); external name '_InvokeQTSyncTaskUPP';
11475 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11476 
11477 {
11478  *  InvokeMovieRgnCoverUPP()
11479  *
11480  *  Availability:
11481  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11482  *    CarbonLib:        in CarbonLib 1.0 and later
11483  *    Non-Carbon CFM:   available as macro/inline
11484  }
InvokeMovieRgnCoverUPPnull11485 function InvokeMovieRgnCoverUPP( theMovie: Movie; changedRgn: RgnHandle; refcon: SIGNEDLONG; userUPP: MovieRgnCoverUPP ): OSErr; external name '_InvokeMovieRgnCoverUPP';
11486 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11487 
11488 {
11489  *  InvokeMovieProgressUPP()
11490  *
11491  *  Availability:
11492  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11493  *    CarbonLib:        in CarbonLib 1.0 and later
11494  *    Non-Carbon CFM:   available as macro/inline
11495  }
InvokeMovieProgressUPPnull11496 function InvokeMovieProgressUPP( theMovie: Movie; message: SInt16; whatOperation: SInt16; percentDone: Fixed; refcon: SIGNEDLONG; userUPP: MovieProgressUPP ): OSErr; external name '_InvokeMovieProgressUPP';
11497 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11498 
11499 {
11500  *  InvokeMovieDrawingCompleteUPP()
11501  *
11502  *  Availability:
11503  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11504  *    CarbonLib:        in CarbonLib 1.0 and later
11505  *    Non-Carbon CFM:   available as macro/inline
11506  }
InvokeMovieDrawingCompleteUPPnull11507 function InvokeMovieDrawingCompleteUPP( theMovie: Movie; refCon: SIGNEDLONG; userUPP: MovieDrawingCompleteUPP ): OSErr; external name '_InvokeMovieDrawingCompleteUPP';
11508 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11509 
11510 {
11511  *  InvokeTrackTransferUPP()
11512  *
11513  *  Availability:
11514  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11515  *    CarbonLib:        in CarbonLib 1.0 and later
11516  *    Non-Carbon CFM:   available as macro/inline
11517  }
InvokeTrackTransferUPPnull11518 function InvokeTrackTransferUPP( t: Track; refCon: SIGNEDLONG; userUPP: TrackTransferUPP ): OSErr; external name '_InvokeTrackTransferUPP';
11519 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11520 
11521 {
11522  *  InvokeGetMovieUPP()
11523  *
11524  *  Availability:
11525  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11526  *    CarbonLib:        in CarbonLib 1.0 and later
11527  *    Non-Carbon CFM:   available as macro/inline
11528  }
InvokeGetMovieUPPnull11529 function InvokeGetMovieUPP( offset: SIGNEDLONG; size: SIGNEDLONG; dataPtr: UnivPtr; refCon: UnivPtr; userUPP: GetMovieUPP ): OSErr; external name '_InvokeGetMovieUPP';
11530 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11531 
11532 {
11533  *  InvokeMoviePreviewCallOutUPP()
11534  *
11535  *  Availability:
11536  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11537  *    CarbonLib:        in CarbonLib 1.0 and later
11538  *    Non-Carbon CFM:   available as macro/inline
11539  }
InvokeMoviePreviewCallOutUPPnull11540 function InvokeMoviePreviewCallOutUPP( refcon: SIGNEDLONG; userUPP: MoviePreviewCallOutUPP ): Boolean; external name '_InvokeMoviePreviewCallOutUPP';
11541 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11542 
11543 {
11544  *  InvokeTextMediaUPP()
11545  *
11546  *  Availability:
11547  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11548  *    CarbonLib:        in CarbonLib 1.0 and later
11549  *    Non-Carbon CFM:   available as macro/inline
11550  }
InvokeTextMediaUPPnull11551 function InvokeTextMediaUPP( theText: Handle; theMovie: Movie; var displayFlag: SInt16; refcon: SIGNEDLONG; userUPP: TextMediaUPP ): OSErr; external name '_InvokeTextMediaUPP';
11552 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11553 
11554 {
11555  *  InvokeActionsUPP()
11556  *
11557  *  Availability:
11558  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11559  *    CarbonLib:        in CarbonLib 1.0 and later
11560  *    Non-Carbon CFM:   available as macro/inline
11561  }
InvokeActionsUPPnull11562 function InvokeActionsUPP( refcon: UnivPtr; targetTrack: Track; targetRefCon: SIGNEDLONG; theEvent: QTEventRecordPtr; userUPP: ActionsUPP ): OSErr; external name '_InvokeActionsUPP';
11563 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11564 
11565 {
11566  *  InvokeDoMCActionUPP()
11567  *
11568  *  Availability:
11569  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11570  *    CarbonLib:        in CarbonLib 1.0.2 and later
11571  *    Non-Carbon CFM:   available as macro/inline
11572  }
InvokeDoMCActionUPPnull11573 function InvokeDoMCActionUPP( refcon: UnivPtr; action: SInt16; params: UnivPtr; var handled: Boolean; userUPP: DoMCActionUPP ): OSErr; external name '_InvokeDoMCActionUPP';
11574 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11575 
11576 {
11577  *  InvokeMovieExecuteWiredActionsUPP()
11578  *
11579  *  Availability:
11580  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11581  *    CarbonLib:        in CarbonLib 1.0.2 and later
11582  *    Non-Carbon CFM:   available as macro/inline
11583  }
InvokeMovieExecuteWiredActionsUPPnull11584 function InvokeMovieExecuteWiredActionsUPP( theMovie: Movie; refcon: UnivPtr; flags: SIGNEDLONG; wiredActions: QTAtomContainer; userUPP: MovieExecuteWiredActionsUPP ): OSErr; external name '_InvokeMovieExecuteWiredActionsUPP';
11585 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11586 
11587 {
11588  *  InvokeMoviePrePrerollCompleteUPP()
11589  *
11590  *  Availability:
11591  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11592  *    CarbonLib:        in CarbonLib 1.0.2 and later
11593  *    Non-Carbon CFM:   available as macro/inline
11594  }
11595 procedure InvokeMoviePrePrerollCompleteUPP( theMovie: Movie; prerollErr: OSErr; refcon: UnivPtr; userUPP: MoviePrePrerollCompleteUPP ); external name '_InvokeMoviePrePrerollCompleteUPP';
11596 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11597 
11598 {
11599  *  InvokeQTNextTaskNeededSoonerCallbackUPP()
11600  *
11601  *  Availability:
11602  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11603  *    CarbonLib:        in CarbonLib 1.6 and later
11604  *    Non-Carbon CFM:   available as macro/inline
11605  }
11606 procedure InvokeQTNextTaskNeededSoonerCallbackUPP( duration: TimeValue; flags: UNSIGNEDLONG; refcon: UnivPtr; userUPP: QTNextTaskNeededSoonerCallbackUPP ); external name '_InvokeQTNextTaskNeededSoonerCallbackUPP';
11607 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11608 
11609 {
11610  *  InvokeMoviesErrorUPP()
11611  *
11612  *  Availability:
11613  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11614  *    CarbonLib:        in CarbonLib 1.0 and later
11615  *    Non-Carbon CFM:   available as macro/inline
11616  }
11617 procedure InvokeMoviesErrorUPP( theErr: OSErr; refcon: SIGNEDLONG; userUPP: MoviesErrorUPP ); external name '_InvokeMoviesErrorUPP';
11618 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11619 
11620 {
11621  *  InvokeTweenerDataUPP()
11622  *
11623  *  Availability:
11624  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11625  *    CarbonLib:        in CarbonLib 1.0 and later
11626  *    Non-Carbon CFM:   available as macro/inline
11627  }
InvokeTweenerDataUPPnull11628 function InvokeTweenerDataUPP( tr: TweenRecordPtr; tweenData: UnivPtr; tweenDataSize: SIGNEDLONG; dataDescriptionSeed: SIGNEDLONG; dataDescription: Handle; asyncCompletionProc: ICMCompletionProcRecordPtr; transferProc: UniversalProcPtr; refCon: UnivPtr; userUPP: TweenerDataUPP ): ComponentResult; external name '_InvokeTweenerDataUPP';
11629 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11630 
11631 {
11632  *  InvokeQTEffectListFilterUPP()
11633  *
11634  *  Availability:
11635  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
11636  *    CarbonLib:        in CarbonLib 1.6 and later
11637  *    Non-Carbon CFM:   available as macro/inline
11638  }
InvokeQTEffectListFilterUPPnull11639 function InvokeQTEffectListFilterUPP( effect: Component; effectMinSource: SIGNEDLONG; effectMaxSource: SIGNEDLONG; majorClass: OSType; minorClass: OSType; refcon: UnivPtr; userUPP: QTEffectListFilterUPP ): Boolean; external name '_InvokeQTEffectListFilterUPP';
11640 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
11641 
11642 
11643 {****
11644     Connection Speed
11645 ****}
11646 const
11647 	ConnectionSpeedPrefsType = FourCharCode('cspd');
11648 	ConnectionSpeedIsValidPrefsType = FourCharCode('vspd');
11649 
11650 type
11651 	ConnectionSpeedPrefsRecordPtr = ^ConnectionSpeedPrefsRecord;
11652 	ConnectionSpeedPrefsRecord = record
11653 		connectionSpeed: SIGNEDLONG;
11654 	end;
11655 type
11656 	ConnectionSpeedPrefsPtr = ^ConnectionSpeedPrefsRecord;
11657 	ConnectionSpeedPrefsHandle = ^ConnectionSpeedPrefsPtr;
11658 {
11659  *  QTGetConnectionSpeedFromPrefs()
11660  *
11661  *  Availability:
11662  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
11663  *    CarbonLib:        not available
11664  *    Non-Carbon CFM:   not available
11665  *    Windows:          in qtmlClient.lib 6.5 and later
11666  }
QTGetConnectionSpeedFromPrefsnull11667 function QTGetConnectionSpeedFromPrefs( var pConnectionSpeed: SIGNEDLONG ): OSErr; external name '_QTGetConnectionSpeedFromPrefs';
11668 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
11669 
11670 
11671 {****
11672     QT International Text Atom Support
11673 ****}
11674 const
11675 	kITextRemoveEverythingBut = 0 shl 1;
11676 	kITextRemoveLeaveSuggestedAlternate = 1 shl 1;
11677 
11678 const
11679 	kITextAtomType = FourCharCode('itxt');
11680 	kITextStringAtomType = FourCharCode('text');
11681 
11682 {
11683  *  ITextAddString()
11684  *
11685  *  Availability:
11686  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11687  *    CarbonLib:        in CarbonLib 1.0 and later
11688  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
11689  *    Windows:          in qtmlClient.lib 3.0 and later
11690  }
ITextAddStringnull11691 function ITextAddString( container: QTAtomContainer; parentAtom: QTAtom; theRegionCode: RegionCode; const (*var*) theString: Str255 ): OSErr; external name '_ITextAddString';
11692 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11693 
11694 
11695 {
11696  *  ITextRemoveString()
11697  *
11698  *  Availability:
11699  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11700  *    CarbonLib:        in CarbonLib 1.0 and later
11701  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
11702  *    Windows:          in qtmlClient.lib 3.0 and later
11703  }
ITextRemoveStringnull11704 function ITextRemoveString( container: QTAtomContainer; parentAtom: QTAtom; theRegionCode: RegionCode; flags: SIGNEDLONG ): OSErr; external name '_ITextRemoveString';
11705 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11706 
11707 
11708 {
11709  *  ITextGetString()
11710  *
11711  *  Availability:
11712  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11713  *    CarbonLib:        in CarbonLib 1.0 and later
11714  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
11715  *    Windows:          in qtmlClient.lib 3.0 and later
11716  }
ITextGetStringnull11717 function ITextGetString( container: QTAtomContainer; parentAtom: QTAtom; requestedRegion: RegionCode; var foundRegion: RegionCode; theString: StringPtr ): OSErr; external name '_ITextGetString';
11718 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11719 
11720 
11721 {
11722  *  QTTextToNativeText()
11723  *
11724  *  Availability:
11725  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11726  *    CarbonLib:        in CarbonLib 1.0 and later
11727  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
11728  *    Windows:          in qtmlClient.lib 3.0 and later
11729  }
QTTextToNativeTextnull11730 function QTTextToNativeText( theText: Handle; encoding: SIGNEDLONG; flags: SIGNEDLONG ): OSErr; external name '_QTTextToNativeText';
11731 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11732 
11733 
11734 { QTParseTextHREF inContainer atoms}
11735 const
11736 	kQTParseTextHREFText = FourCharCode('text'); { string}
11737 	kQTParseTextHREFBaseURL = FourCharCode('burl'); { string}
11738 	kQTParseTextHREFClickPoint = FourCharCode('clik'); { Point; if present, QTParseTextHREF will expand URLs to support server-side image maps}
11739 	kQTParseTextHREFUseAltDelim = FourCharCode('altd'); { boolean; if no kQTParseTextHREFDelimiter, delim is ':'}
11740 	kQTParseTextHREFDelimiter = FourCharCode('delm'); { character}
11741 	kQTParseTextHREFRecomposeHREF = FourCharCode('rhrf'); { Boolean; if true, QTParseTextHREF returns recomposed HREF with URL expanded as appropriate}
11742 
11743 { QTParseTextHREF outContainer atoms}
11744 const
11745 	kQTParseTextHREFURL = FourCharCode('url '); { string}
11746 	kQTParseTextHREFTarget = FourCharCode('targ'); { string}
11747 	kQTParseTextHREFChapter = FourCharCode('chap'); { string}
11748 	kQTParseTextHREFIsAutoHREF = FourCharCode('auto'); { Boolean}
11749 	kQTParseTextHREFIsServerMap = FourCharCode('smap'); { Boolean}
11750 	kQTParseTextHREFHREF = FourCharCode('href'); { string; recomposed HREF with URL expanded as appropriate, suitable for mcActionLinkToURL}
11751 	kQTParseTextHREFEMBEDArgs = FourCharCode('mbed'); { string; text between 'E<' and '>' to be used as new movie's embed tags}
11752 
11753 {
11754  *  QTParseTextHREF()
11755  *
11756  *  Availability:
11757  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
11758  *    CarbonLib:        in CarbonLib 1.1 and later
11759  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
11760  *    Windows:          in qtmlClient.lib 4.1 and later
11761  }
QTParseTextHREFnull11762 function QTParseTextHREF( href: CStringPtr; hrefLen: SInt32; inContainer: QTAtomContainer; var outContainer: QTAtomContainer ): OSErr; external name '_QTParseTextHREF';
11763 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
11764 
11765 
11766 {************************
11767 * track reference types
11768 *************************}
11769 const
11770 	kTrackReferenceChapterList = FourCharCode('chap');
11771 	kTrackReferenceTimeCode = FourCharCode('tmcd');
11772 	kTrackReferenceModifier = FourCharCode('ssrc');
11773 
11774 {************************
11775 * modifier track types
11776 *************************}
11777 const
11778 	kTrackModifierInput = $696E; { is really 'in'}
11779 	kTrackModifierType = $7479; { is really 'ty'}
11780 	kTrackModifierReference = FourCharCode('ssrc');
11781 	kTrackModifierObjectID = FourCharCode('obid');
11782 	kTrackModifierInputName = FourCharCode('name');
11783 
11784 const
11785 	kInputMapSubInputID = FourCharCode('subi');
11786 
11787 const
11788 	kTrackModifierTypeMatrix = 1;
11789 	kTrackModifierTypeClip = 2;
11790 	kTrackModifierTypeGraphicsMode = 5;
11791 	kTrackModifierTypeVolume = 3;
11792 	kTrackModifierTypeBalance = 4;
11793 	kTrackModifierTypeImage = FourCharCode('vide'); { was kTrackModifierTypeSpriteImage}
11794 	kTrackModifierObjectMatrix = 6;
11795 	kTrackModifierObjectGraphicsMode = 7;
11796 	kTrackModifierType3d4x4Matrix = 8;
11797 	kTrackModifierCameraData = 9;
11798 	kTrackModifierSoundLocalizationData = 10;
11799 	kTrackModifierObjectImageIndex = 11;
11800 	kTrackModifierObjectLayer = 12;
11801 	kTrackModifierObjectVisible = 13;
11802 	kTrackModifierAngleAspectCamera = 14;
11803 	kTrackModifierPanAngle = FourCharCode('pan ');
11804 	kTrackModifierTiltAngle = FourCharCode('tilt');
11805 	kTrackModifierVerticalFieldOfViewAngle = FourCharCode('fov ');
11806 	kTrackModifierObjectQTEventSend = FourCharCode('evnt');
11807 	kTrackModifierObjectCanBeHitTested = 15;
11808 
11809 
11810 type
11811 	ModifierTrackGraphicsModeRecordPtr = ^ModifierTrackGraphicsModeRecord;
11812 	ModifierTrackGraphicsModeRecord = record
11813 		graphicsMode: SIGNEDLONG;
11814 		opColor: RGBColor;
11815 	end;
11816 
11817 {************************
11818 * tween track types
11819 *************************}
11820 const
11821 	kTweenTypeShort = 1;
11822 	kTweenTypeLong = 2;
11823 	kTweenTypeFixed = 3;
11824 	kTweenTypePoint = 4;
11825 	kTweenTypeQDRect = 5;
11826 	kTweenTypeQDRegion = 6;
11827 	kTweenTypeMatrix = 7;
11828 	kTweenTypeRGBColor = 8;
11829 	kTweenTypeGraphicsModeWithRGBColor = 9;
11830 	kTweenTypeQTFloatSingle = 10;
11831 	kTweenTypeQTFloatDouble = 11;
11832 	kTweenTypeFixedPoint = 12;
11833 	kTweenType3dScale = FourCharCode('3sca');
11834 	kTweenType3dTranslate = FourCharCode('3tra');
11835 	kTweenType3dRotate = FourCharCode('3rot');
11836 	kTweenType3dRotateAboutPoint = FourCharCode('3rap');
11837 	kTweenType3dRotateAboutAxis = FourCharCode('3rax');
11838 	kTweenType3dRotateAboutVector = FourCharCode('3rvc');
11839 	kTweenType3dQuaternion = FourCharCode('3qua');
11840 	kTweenType3dMatrix = FourCharCode('3mat');
11841 	kTweenType3dCameraData = FourCharCode('3cam');
11842 	kTweenType3dAngleAspectCameraData = FourCharCode('3caa');
11843 	kTweenType3dSoundLocalizationData = FourCharCode('3slc');
11844 	kTweenTypePathToMatrixTranslation = FourCharCode('gxmt');
11845 	kTweenTypePathToMatrixRotation = FourCharCode('gxpr');
11846 	kTweenTypePathToMatrixTranslationAndRotation = FourCharCode('gxmr');
11847 	kTweenTypePathToFixedPoint = FourCharCode('gxfp');
11848 	kTweenTypePathXtoY = FourCharCode('gxxy');
11849 	kTweenTypePathYtoX = FourCharCode('gxyx');
11850 	kTweenTypeAtomList = FourCharCode('atom');
11851 	kTweenTypePolygon = FourCharCode('poly');
11852 	kTweenTypeMultiMatrix = FourCharCode('mulm');
11853 	kTweenTypeSpin = FourCharCode('spin');
11854 	kTweenType3dMatrixNonLinear = FourCharCode('3nlr');
11855 	kTweenType3dVRObject = FourCharCode('3vro');
11856 
11857 const
11858 	kTweenEntry = FourCharCode('twen');
11859 	kTweenData = FourCharCode('data');
11860 	kTweenType = FourCharCode('twnt');
11861 	kTweenStartOffset = FourCharCode('twst');
11862 	kTweenDuration = FourCharCode('twdu');
11863 	kTweenFlags = FourCharCode('flag');
11864 	kTweenOutputMin = FourCharCode('omin');
11865 	kTweenOutputMax = FourCharCode('omax');
11866 	kTweenSequenceElement = FourCharCode('seqe');
11867 	kTween3dInitialCondition = FourCharCode('icnd');
11868 	kTweenInterpolationID = FourCharCode('intr');
11869 	kTweenRegionData = FourCharCode('qdrg');
11870 	kTweenPictureData = FourCharCode('PICT');
11871 	kListElementType = FourCharCode('type');
11872 	kListElementDataType = FourCharCode('daty');
11873 	kNameAtom = FourCharCode('name');
11874 	kInitialRotationAtom = FourCharCode('inro');
11875 	kNonLinearTweenHeader = FourCharCode('nlth');
11876 
11877 { kTweenFlags}
11878 const
11879 	kTweenReturnDelta = 1 shl 0;
11880 
11881 type
11882 	TweenSequenceEntryRecord = record
11883 		endPercent: Fixed;
11884 		tweenAtomID: QTAtomID;
11885 		dataAtomID: QTAtomID;
11886 	end;
11887 
11888 (* #ifdef __QD3D__
11889 
11890 type
11891 	ThreeDeeVRObjectSample = record
11892 		rows: SIGNEDLONG;
11893 		columns: SIGNEDLONG;
11894 		calib1: TQ3Matrix4x4;
11895 		calib2: TQ3Matrix4x4;
11896 		reserved1: SIGNEDLONG;
11897 		reserved2: SIGNEDLONG;
11898 	end;
11899 
11900 type
11901 	ThreeDeeNonLinearSample = record
11902 		DurFromLastSample: Float32;  { 0 to 1 }
11903 		matrix: TQ3Matrix4x4;
11904 	end;
11905 
11906 type
11907 	ThreeDeeNonLinearTweenHeaderAtom = record
11908 		number: SIGNEDLONG;
11909 		dataSize: SIGNEDLONG;
11910 		tensionFactor: Float32;  { default is 0 }
11911 		reserved1: SIGNEDLONG;
11912 		reserved2: SIGNEDLONG;
11913 	end;
11914 
11915 
11916 #endif
11917 *)
11918 
11919 
11920 (* #if OLDROUTINENAMES
11921 
11922 {************************
11923 * Video Media routines
11924 *************************}
11925 
11926 #define GetVideoMediaGraphicsMode      MediaGetGraphicsMode
11927 #define SetVideoMediaGraphicsMode      MediaSetGraphicsMode
11928 
11929 { use these two routines at your own peril }
11930 #define ResetVideoMediaStatistics      VideoMediaResetStatistics
11931 #define GetVideoMediaStatistics           VideoMediaGetStatistics
11932 
11933 {************************
11934 * Sound Media routines
11935 *************************}
11936 
11937 #define GetSoundMediaBalance            MediaGetSoundBalance
11938 #define SetSoundMediaBalance           MediaSetSoundBalance
11939 
11940 {************************
11941 * Text Media routines
11942 *************************}
11943 
11944 #define SetTextProc         TextMediaSetTextProc
11945 #define AddTextSample      TextMediaAddTextSample
11946 #define AddTESample          TextMediaAddTESample
11947 #define AddHiliteSample        TextMediaAddHiliteSample
11948 #define FindNextText       TextMediaFindNextText
11949 #define HiliteTextSample  TextMediaHiliteTextSample
11950 #define SetTextSampleData TextMediaSetTextSampleData
11951 #define DrawRaw              TextMediaDrawRaw
11952 #define RawSetup           TextMediaRawSetup
11953 #define RawIdle               TextMediaRawIdle
11954 #define SetTextProperty        TextMediaSetTextProperty
11955 
11956 {************************
11957 * Sprite Media routines
11958 *************************}
11959 
11960 #define SetSpriteMediaSpriteProperty  SpriteMediaSetProperty
11961 #define GetSpriteMediaSpriteProperty SpriteMediaGetProperty
11962 #define HitTestSpriteMedia               SpriteMediaHitTestSprites
11963 #define CountSpriteMediaSprites           SpriteMediaCountSprites
11964 #define CountSpriteMediaImages          SpriteMediaCountImages
11965 #define GetSpriteMediaIndImageDescription    SpriteMediaGetIndImageDescription
11966 #define GetDisplayedSampleNumber      SpriteMediaGetDisplayedSampleNumber
11967 #endif { OLDROUTINENAMES }
11968 *)
11969 
11970 {****
11971     Content Restrictions
11972 ****}
11973 const
11974 	kQTRestrictionClassSave = FourCharCode('save');
11975 	kQTRestrictionSaveDontAddMovieResource = 1 shl 0;
11976 	kQTRestrictionSaveDontFlatten = 1 shl 1;
11977 	kQTRestrictionSaveDontExport = 1 shl 2;
11978 	kQTRestrictionSaveDontExtract = 1 shl 3; { don't allow any form of extraction of content}
11979 	kQTRestrictionClassEdit = FourCharCode('edit');
11980 	kQTRestrictionEditDontCopy = 1 shl 0; { disable copy }
11981 	kQTRestrictionEditDontCut = 1 shl 1; { disable cut }
11982 	kQTRestrictionEditDontPaste = 1 shl 2; { disable paste }
11983 	kQTRestrictionEditDontClear = 1 shl 3; { disable clear}
11984 	kQTRestrictionEditDontModify = 1 shl 4; { don't allow modification of content}
11985 	kQTRestrictionEditDontExtract = 1 shl 5; { don't allow any form of extraction of content}
11986 	kQTRestrictionClassPlay = FourCharCode('play');
11987 	kQTRestrictionPlayDontPlay = 1 shl 0; { disable playback   }
11988 
11989 
11990 {************************
11991 * Video Media routines
11992 *************************}
11993 
11994 
11995 const
11996 	videoFlagDontLeanAhead = 1 shl 0;
11997 
11998 
11999 { use these five routines at your own peril}
12000 {
12001  *  VideoMediaResetStatistics()
12002  *
12003  *  Availability:
12004  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12005  *    CarbonLib:        in CarbonLib 1.0 and later
12006  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12007  *    Windows:          in qtmlClient.lib 3.0 and later
12008  }
VideoMediaResetStatisticsnull12009 function VideoMediaResetStatistics( mh: MediaHandler ): ComponentResult; external name '_VideoMediaResetStatistics';
12010 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12011 
12012 
12013 {
12014  *  VideoMediaGetStatistics()
12015  *
12016  *  Availability:
12017  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12018  *    CarbonLib:        in CarbonLib 1.0 and later
12019  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12020  *    Windows:          in qtmlClient.lib 3.0 and later
12021  }
VideoMediaGetStatisticsnull12022 function VideoMediaGetStatistics( mh: MediaHandler ): ComponentResult; external name '_VideoMediaGetStatistics';
12023 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12024 
12025 
12026 {
12027  *  VideoMediaGetStallCount()
12028  *
12029  *  Availability:
12030  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12031  *    CarbonLib:        in CarbonLib 1.0.2 and later
12032  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12033  *    Windows:          in qtmlClient.lib 3.0 and later
12034  }
VideoMediaGetStallCountnull12035 function VideoMediaGetStallCount( mh: MediaHandler; var stalls: UNSIGNEDLONG ): ComponentResult; external name '_VideoMediaGetStallCount';
12036 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12037 
12038 
12039 {
12040  *  VideoMediaSetCodecParameter()
12041  *
12042  *  Availability:
12043  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12044  *    CarbonLib:        in CarbonLib 1.0.2 and later
12045  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12046  *    Windows:          in qtmlClient.lib 4.0 and later
12047  }
VideoMediaSetCodecParameternull12048 function VideoMediaSetCodecParameter( mh: MediaHandler; cType: CodecType; parameterID: OSType; parameterChangeSeed: SIGNEDLONG; dataPtr: UnivPtr; dataSize: SIGNEDLONG ): ComponentResult; external name '_VideoMediaSetCodecParameter';
12049 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12050 
12051 
12052 {
12053  *  VideoMediaGetCodecParameter()
12054  *
12055  *  Availability:
12056  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12057  *    CarbonLib:        in CarbonLib 1.0.2 and later
12058  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12059  *    Windows:          in qtmlClient.lib 4.0 and later
12060  }
VideoMediaGetCodecParameternull12061 function VideoMediaGetCodecParameter( mh: MediaHandler; cType: CodecType; parameterID: OSType; outParameterData: Handle ): ComponentResult; external name '_VideoMediaGetCodecParameter';
12062 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12063 
12064 
12065 {************************
12066 * Text Media routines
12067 *************************}
12068 
12069 
12070 { Return displayFlags for TextProc }
12071 const
12072 	txtProcDefaultDisplay = 0;    {    Use the media's default}
12073 	txtProcDontDisplay = 1;    {    Don't display the text}
12074 	txtProcDoDisplay = 2;     {    Do display the text}
12075 
12076 {
12077  *  TextMediaSetTextProc()
12078  *
12079  *  Availability:
12080  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12081  *    CarbonLib:        in CarbonLib 1.0 and later
12082  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12083  *    Windows:          in qtmlClient.lib 3.0 and later
12084  }
TextMediaSetTextProcnull12085 function TextMediaSetTextProc( mh: MediaHandler; TextProc: TextMediaUPP; refcon: SIGNEDLONG ): ComponentResult; external name '_TextMediaSetTextProc';
12086 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12087 
12088 
12089 {
12090  *  TextMediaAddTextSample()
12091  *
12092  *  Availability:
12093  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12094  *    CarbonLib:        in CarbonLib 1.0 and later
12095  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12096  *    Windows:          in qtmlClient.lib 3.0 and later
12097  }
TextMediaAddTextSamplenull12098 function TextMediaAddTextSample( mh: MediaHandler; text: Ptr; size: UNSIGNEDLONG; fontNumber: SInt16; fontSize: SInt16; txtFace: ByteParameter; var textColor: RGBColor; var backColor: RGBColor; textJustification: SInt16; var textBox: Rect; displayFlags: SIGNEDLONG; scrollDelay: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue ): ComponentResult; external name '_TextMediaAddTextSample';
12099 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12100 
12101 
12102 {
12103  *  TextMediaAddTESample()
12104  *
12105  *  Availability:
12106  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12107  *    CarbonLib:        in CarbonLib 1.0 and later
12108  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12109  *    Windows:          in qtmlClient.lib 3.0 and later
12110  }
TextMediaAddTESamplenull12111 function TextMediaAddTESample( mh: MediaHandler; hTE: TEHandle; var backColor: RGBColor; textJustification: SInt16; var textBox: Rect; displayFlags: SIGNEDLONG; scrollDelay: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue ): ComponentResult; external name '_TextMediaAddTESample';
12112 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12113 
12114 
12115 {
12116  *  TextMediaAddHiliteSample()
12117  *
12118  *  Availability:
12119  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12120  *    CarbonLib:        in CarbonLib 1.0 and later
12121  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12122  *    Windows:          in qtmlClient.lib 3.0 and later
12123  }
TextMediaAddHiliteSamplenull12124 function TextMediaAddHiliteSample( mh: MediaHandler; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue ): ComponentResult; external name '_TextMediaAddHiliteSample';
12125 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12126 
12127 
12128 {
12129  *  TextMediaDrawRaw()
12130  *
12131  *  Availability:
12132  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12133  *    CarbonLib:        in CarbonLib 1.0.2 and later
12134  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12135  *    Windows:          in qtmlClient.lib 4.0 and later
12136  }
TextMediaDrawRawnull12137 function TextMediaDrawRaw( mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; data: UnivPtr; dataSize: SIGNEDLONG; tdh: TextDescriptionHandle ): ComponentResult; external name '_TextMediaDrawRaw';
12138 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12139 
12140 
12141 {
12142  *  TextMediaSetTextProperty()
12143  *
12144  *  Availability:
12145  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12146  *    CarbonLib:        in CarbonLib 1.0.2 and later
12147  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12148  *    Windows:          in qtmlClient.lib 4.0 and later
12149  }
TextMediaSetTextPropertynull12150 function TextMediaSetTextProperty( mh: MediaHandler; atMediaTime: TimeValue; propertyType: SIGNEDLONG; data: UnivPtr; dataSize: SIGNEDLONG ): ComponentResult; external name '_TextMediaSetTextProperty';
12151 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12152 
12153 
12154 {
12155  *  TextMediaRawSetup()
12156  *
12157  *  Availability:
12158  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12159  *    CarbonLib:        in CarbonLib 1.0.2 and later
12160  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12161  *    Windows:          in qtmlClient.lib 4.0 and later
12162  }
TextMediaRawSetupnull12163 function TextMediaRawSetup( mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; data: UnivPtr; dataSize: SIGNEDLONG; tdh: TextDescriptionHandle; sampleDuration: TimeValue ): ComponentResult; external name '_TextMediaRawSetup';
12164 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12165 
12166 
12167 {
12168  *  TextMediaRawIdle()
12169  *
12170  *  Availability:
12171  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12172  *    CarbonLib:        in CarbonLib 1.0.2 and later
12173  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12174  *    Windows:          in qtmlClient.lib 4.0 and later
12175  }
TextMediaRawIdlenull12176 function TextMediaRawIdle( mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; sampleTime: TimeValue; flagsIn: SIGNEDLONG; var flagsOut: SIGNEDLONG ): ComponentResult; external name '_TextMediaRawIdle';
12177 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12178 
12179 
12180 {
12181  *  TextMediaGetTextProperty()
12182  *
12183  *  Availability:
12184  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12185  *    CarbonLib:        in CarbonLib 1.3 and later
12186  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
12187  *    Windows:          in qtmlClient.lib 5.0 and later
12188  }
TextMediaGetTextPropertynull12189 function TextMediaGetTextProperty( mh: MediaHandler; atMediaTime: TimeValue; propertyType: SIGNEDLONG; data: UnivPtr; dataSize: SIGNEDLONG ): ComponentResult; external name '_TextMediaGetTextProperty';
12190 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12191 
12192 
12193 const
12194 	findTextEdgeOK = 1 shl 0; { Okay to find text at specified sample time}
12195 	findTextCaseSensitive = 1 shl 1; { Case sensitive search}
12196 	findTextReverseSearch = 1 shl 2; { Search from sampleTime backwards}
12197 	findTextWrapAround = 1 shl 3; { Wrap search when beginning or end of movie is hit}
12198 	findTextUseOffset = 1 shl 4; { Begin search at the given character offset into sample rather than edge}
12199 
12200 {
12201  *  TextMediaFindNextText()
12202  *
12203  *  Availability:
12204  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12205  *    CarbonLib:        in CarbonLib 1.0 and later
12206  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12207  *    Windows:          in qtmlClient.lib 3.0 and later
12208  }
TextMediaFindNextTextnull12209 function TextMediaFindNextText( mh: MediaHandler; text: Ptr; size: SIGNEDLONG; findFlags: SInt16; startTime: TimeValue; var foundTime: TimeValue; var foundDuration: TimeValue; var offset: SIGNEDLONG ): ComponentResult; external name '_TextMediaFindNextText';
12210 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12211 
12212 
12213 {
12214  *  TextMediaHiliteTextSample()
12215  *
12216  *  Availability:
12217  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12218  *    CarbonLib:        in CarbonLib 1.0 and later
12219  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12220  *    Windows:          in qtmlClient.lib 3.0 and later
12221  }
TextMediaHiliteTextSamplenull12222 function TextMediaHiliteTextSample( mh: MediaHandler; sampleTime: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor ): ComponentResult; external name '_TextMediaHiliteTextSample';
12223 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12224 
12225 
12226 const
12227 	dropShadowOffsetType = FourCharCode('drpo');
12228 	dropShadowTranslucencyType = FourCharCode('drpt');
12229 
12230 {
12231  *  TextMediaSetTextSampleData()
12232  *
12233  *  Availability:
12234  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12235  *    CarbonLib:        in CarbonLib 1.0 and later
12236  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12237  *    Windows:          in qtmlClient.lib 3.0 and later
12238  }
TextMediaSetTextSampleDatanull12239 function TextMediaSetTextSampleData( mh: MediaHandler; data: UnivPtr; dataType: OSType ): ComponentResult; external name '_TextMediaSetTextSampleData';
12240 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12241 
12242 
12243 {************************
12244 * Sprite Media routines
12245 *************************}
12246 { flags for sprite hit test routines }
12247 const
12248 	spriteHitTestBounds = 1 shl 0; {    point must only be within sprite's bounding box}
12249 	spriteHitTestImage = 1 shl 1; {  point must be within the shape of the sprite's image}
12250 	spriteHitTestInvisibleSprites = 1 shl 2; {  invisible sprites may be hit tested}
12251 	spriteHitTestIsClick = 1 shl 3; {  for codecs that want mouse events}
12252 	spriteHitTestLocInDisplayCoordinates = 1 shl 4; {    set if you want to pass a display coordiate point to SpriteHitTest}
12253 	spriteHitTestTreatAllSpritesAsHitTestable = 1 shl 5; { set if you want to override each sprites hittestable property as true}
12254 
12255 { atom types for sprite media }
12256 const
12257 	kSpriteAtomType = FourCharCode('sprt');
12258 	kSpriteImagesContainerAtomType = FourCharCode('imct');
12259 	kSpriteImageAtomType = FourCharCode('imag');
12260 	kSpriteImageDataAtomType = FourCharCode('imda');
12261 	kSpriteImageDataRefAtomType = FourCharCode('imre');
12262 	kSpriteImageDataRefTypeAtomType = FourCharCode('imrt');
12263 	kSpriteImageGroupIDAtomType = FourCharCode('imgr');
12264 	kSpriteImageRegistrationAtomType = FourCharCode('imrg');
12265 	kSpriteImageDefaultImageIndexAtomType = FourCharCode('defi');
12266 	kSpriteSharedDataAtomType = FourCharCode('dflt');
12267 	kSpriteNameAtomType = FourCharCode('name');
12268 	kSpriteImageNameAtomType = FourCharCode('name');
12269 	kSpriteUsesImageIDsAtomType = FourCharCode('uses'); { leaf data is an array of QTAtomID's, one per image used}
12270 	kSpriteBehaviorsAtomType = FourCharCode('beha');
12271 	kSpriteImageBehaviorAtomType = FourCharCode('imag');
12272 	kSpriteCursorBehaviorAtomType = FourCharCode('crsr');
12273 	kSpriteStatusStringsBehaviorAtomType = FourCharCode('sstr');
12274 	kSpriteVariablesContainerAtomType = FourCharCode('vars');
12275 	kSpriteStringVariableAtomType = FourCharCode('strv');
12276 	kSpriteFloatingPointVariableAtomType = FourCharCode('flov');
12277 
12278 type
12279 	QTRuntimeSpriteDescStructPtr = ^QTRuntimeSpriteDescStruct;
12280 	QTRuntimeSpriteDescStruct = record
12281 		version: SIGNEDLONG;                { set to zero}
12282 		spriteID: QTAtomID;
12283 		imageIndex: SInt16;
12284 		matrix: MatrixRecord;
12285 		visible: SInt16;
12286 		layer: SInt16;
12287 		graphicsMode: ModifierTrackGraphicsModeRecord;
12288 		actionHandlingSpriteID: QTAtomID;
12289 	end;
12290 type
12291 	QTRuntimeSpriteDescPtr = QTRuntimeSpriteDescStructPtr;
12292 {
12293    when filling in QTSpriteButtonBehaviorStruct values -1 may be used to indicate that
12294    the state transition does not change the property
12295 }
12296 type
12297 	QTSpriteButtonBehaviorStructPtr = ^QTSpriteButtonBehaviorStruct;
12298 	QTSpriteButtonBehaviorStruct = record
12299 		notOverNotPressedStateID: QTAtomID;
12300 		overNotPressedStateID: QTAtomID;
12301 		overPressedStateID: QTAtomID;
12302 		notOverPressedStateID: QTAtomID;
12303 	end;
12304 type
12305 	QTSpriteButtonBehaviorPtr = QTSpriteButtonBehaviorStructPtr;
12306 {
12307  *  SpriteMediaSetProperty()
12308  *
12309  *  Availability:
12310  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12311  *    CarbonLib:        in CarbonLib 1.0 and later
12312  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12313  *    Windows:          in qtmlClient.lib 3.0 and later
12314  }
SpriteMediaSetPropertynull12315 function SpriteMediaSetProperty( mh: MediaHandler; spriteIndex: SInt16; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): ComponentResult; external name '_SpriteMediaSetProperty';
12316 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12317 
12318 
12319 {
12320  *  SpriteMediaGetProperty()
12321  *
12322  *  Availability:
12323  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12324  *    CarbonLib:        in CarbonLib 1.0 and later
12325  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12326  *    Windows:          in qtmlClient.lib 3.0 and later
12327  }
SpriteMediaGetPropertynull12328 function SpriteMediaGetProperty( mh: MediaHandler; spriteIndex: SInt16; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): ComponentResult; external name '_SpriteMediaGetProperty';
12329 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12330 
12331 
12332 {
12333  *  SpriteMediaHitTestSprites()
12334  *
12335  *  Availability:
12336  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12337  *    CarbonLib:        in CarbonLib 1.0 and later
12338  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12339  *    Windows:          in qtmlClient.lib 3.0 and later
12340  }
SpriteMediaHitTestSpritesnull12341 function SpriteMediaHitTestSprites( mh: MediaHandler; flags: SIGNEDLONG; loc: Point; var spriteHitIndex: SInt16 ): ComponentResult; external name '_SpriteMediaHitTestSprites';
12342 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12343 
12344 
12345 {
12346  *  SpriteMediaCountSprites()
12347  *
12348  *  Availability:
12349  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12350  *    CarbonLib:        in CarbonLib 1.0 and later
12351  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12352  *    Windows:          in qtmlClient.lib 3.0 and later
12353  }
SpriteMediaCountSpritesnull12354 function SpriteMediaCountSprites( mh: MediaHandler; var numSprites: SInt16 ): ComponentResult; external name '_SpriteMediaCountSprites';
12355 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12356 
12357 
12358 {
12359  *  SpriteMediaCountImages()
12360  *
12361  *  Availability:
12362  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12363  *    CarbonLib:        in CarbonLib 1.0 and later
12364  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12365  *    Windows:          in qtmlClient.lib 3.0 and later
12366  }
SpriteMediaCountImagesnull12367 function SpriteMediaCountImages( mh: MediaHandler; var numImages: SInt16 ): ComponentResult; external name '_SpriteMediaCountImages';
12368 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12369 
12370 
12371 {
12372  *  SpriteMediaGetIndImageDescription()
12373  *
12374  *  Availability:
12375  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12376  *    CarbonLib:        in CarbonLib 1.0 and later
12377  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12378  *    Windows:          in qtmlClient.lib 3.0 and later
12379  }
SpriteMediaGetIndImageDescriptionnull12380 function SpriteMediaGetIndImageDescription( mh: MediaHandler; imageIndex: SInt16; imageDescription: ImageDescriptionHandle ): ComponentResult; external name '_SpriteMediaGetIndImageDescription';
12381 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12382 
12383 
12384 {
12385  *  SpriteMediaGetDisplayedSampleNumber()
12386  *
12387  *  Availability:
12388  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12389  *    CarbonLib:        in CarbonLib 1.0 and later
12390  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
12391  *    Windows:          in qtmlClient.lib 3.0 and later
12392  }
SpriteMediaGetDisplayedSampleNumbernull12393 function SpriteMediaGetDisplayedSampleNumber( mh: MediaHandler; var sampleNum: SIGNEDLONG ): ComponentResult; external name '_SpriteMediaGetDisplayedSampleNumber';
12394 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12395 
12396 
12397 {
12398  *  SpriteMediaGetSpriteName()
12399  *
12400  *  Availability:
12401  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12402  *    CarbonLib:        in CarbonLib 1.0 and later
12403  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12404  *    Windows:          in qtmlClient.lib 3.0 and later
12405  }
SpriteMediaGetSpriteNamenull12406 function SpriteMediaGetSpriteName( mh: MediaHandler; spriteID: QTAtomID; var spriteName: Str255 ): ComponentResult; external name '_SpriteMediaGetSpriteName';
12407 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12408 
12409 
12410 {
12411  *  SpriteMediaGetImageName()
12412  *
12413  *  Availability:
12414  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12415  *    CarbonLib:        in CarbonLib 1.0 and later
12416  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12417  *    Windows:          in qtmlClient.lib 3.0 and later
12418  }
SpriteMediaGetImageNamenull12419 function SpriteMediaGetImageName( mh: MediaHandler; imageIndex: SInt16; var imageName: Str255 ): ComponentResult; external name '_SpriteMediaGetImageName';
12420 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12421 
12422 
12423 {
12424  *  SpriteMediaSetSpriteProperty()
12425  *
12426  *  Availability:
12427  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12428  *    CarbonLib:        in CarbonLib 1.0 and later
12429  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12430  *    Windows:          in qtmlClient.lib 3.0 and later
12431  }
SpriteMediaSetSpritePropertynull12432 function SpriteMediaSetSpriteProperty( mh: MediaHandler; spriteID: QTAtomID; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): ComponentResult; external name '_SpriteMediaSetSpriteProperty';
12433 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12434 
12435 
12436 {
12437  *  SpriteMediaGetSpriteProperty()
12438  *
12439  *  Availability:
12440  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12441  *    CarbonLib:        in CarbonLib 1.0 and later
12442  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12443  *    Windows:          in qtmlClient.lib 3.0 and later
12444  }
SpriteMediaGetSpritePropertynull12445 function SpriteMediaGetSpriteProperty( mh: MediaHandler; spriteID: QTAtomID; propertyType: SIGNEDLONG; propertyValue: UnivPtr ): ComponentResult; external name '_SpriteMediaGetSpriteProperty';
12446 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12447 
12448 
12449 {
12450  *  SpriteMediaHitTestAllSprites()
12451  *
12452  *  Availability:
12453  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12454  *    CarbonLib:        in CarbonLib 1.0 and later
12455  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12456  *    Windows:          in qtmlClient.lib 3.0 and later
12457  }
SpriteMediaHitTestAllSpritesnull12458 function SpriteMediaHitTestAllSprites( mh: MediaHandler; flags: SIGNEDLONG; loc: Point; var spriteHitID: QTAtomID ): ComponentResult; external name '_SpriteMediaHitTestAllSprites';
12459 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12460 
12461 
12462 {
12463  *  SpriteMediaHitTestOneSprite()
12464  *
12465  *  Availability:
12466  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12467  *    CarbonLib:        in CarbonLib 1.0 and later
12468  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12469  *    Windows:          in qtmlClient.lib 3.0 and later
12470  }
SpriteMediaHitTestOneSpritenull12471 function SpriteMediaHitTestOneSprite( mh: MediaHandler; spriteID: QTAtomID; flags: SIGNEDLONG; loc: Point; var wasHit: Boolean ): ComponentResult; external name '_SpriteMediaHitTestOneSprite';
12472 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12473 
12474 
12475 {
12476  *  SpriteMediaSpriteIndexToID()
12477  *
12478  *  Availability:
12479  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12480  *    CarbonLib:        in CarbonLib 1.0 and later
12481  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12482  *    Windows:          in qtmlClient.lib 3.0 and later
12483  }
SpriteMediaSpriteIndexToIDnull12484 function SpriteMediaSpriteIndexToID( mh: MediaHandler; spriteIndex: SInt16; var spriteID: QTAtomID ): ComponentResult; external name '_SpriteMediaSpriteIndexToID';
12485 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12486 
12487 
12488 {
12489  *  SpriteMediaSpriteIDToIndex()
12490  *
12491  *  Availability:
12492  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12493  *    CarbonLib:        in CarbonLib 1.0 and later
12494  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12495  *    Windows:          in qtmlClient.lib 3.0 and later
12496  }
SpriteMediaSpriteIDToIndexnull12497 function SpriteMediaSpriteIDToIndex( mh: MediaHandler; spriteID: QTAtomID; var spriteIndex: SInt16 ): ComponentResult; external name '_SpriteMediaSpriteIDToIndex';
12498 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12499 
12500 
12501 {
12502  *  SpriteMediaGetSpriteActionsForQTEvent()
12503  *
12504  *  Availability:
12505  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12506  *    CarbonLib:        in CarbonLib 1.0 and later
12507  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12508  *    Windows:          in qtmlClient.lib 3.0 and later
12509  }
SpriteMediaGetSpriteActionsForQTEventnull12510 function SpriteMediaGetSpriteActionsForQTEvent( mh: MediaHandler; event: QTEventRecordPtr; spriteID: QTAtomID; var container: QTAtomContainer; var atom: QTAtom ): ComponentResult; external name '_SpriteMediaGetSpriteActionsForQTEvent';
12511 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12512 
12513 
12514 {
12515  *  SpriteMediaSetActionVariable()
12516  *
12517  *  Availability:
12518  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12519  *    CarbonLib:        in CarbonLib 1.0 and later
12520  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12521  *    Windows:          in qtmlClient.lib 3.0 and later
12522  }
SpriteMediaSetActionVariablenull12523 function SpriteMediaSetActionVariable( mh: MediaHandler; variableID: QTAtomID; value: Float32Ptr ): ComponentResult; external name '_SpriteMediaSetActionVariable';
12524 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12525 
12526 
12527 {
12528  *  SpriteMediaGetActionVariable()
12529  *
12530  *  Availability:
12531  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12532  *    CarbonLib:        in CarbonLib 1.0 and later
12533  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12534  *    Windows:          in qtmlClient.lib 3.0 and later
12535  }
SpriteMediaGetActionVariablenull12536 function SpriteMediaGetActionVariable( mh: MediaHandler; variableID: QTAtomID; var value: Float32 ): ComponentResult; external name '_SpriteMediaGetActionVariable';
12537 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12538 
12539 
12540 {
12541  *  SpriteMediaGetIndImageProperty()
12542  *
12543  *  Availability:
12544  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12545  *    CarbonLib:        in CarbonLib 1.1 and later
12546  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
12547  *    Windows:          in qtmlClient.lib 3.0 and later
12548  }
SpriteMediaGetIndImagePropertynull12549 function SpriteMediaGetIndImageProperty( mh: MediaHandler; imageIndex: SInt16; imagePropertyType: SIGNEDLONG; imagePropertyValue: UnivPtr ): ComponentResult; external name '_SpriteMediaGetIndImageProperty';
12550 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12551 
12552 
12553 {
12554  *  SpriteMediaNewSprite()
12555  *
12556  *  Availability:
12557  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12558  *    CarbonLib:        in CarbonLib 1.0.2 and later
12559  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12560  *    Windows:          in qtmlClient.lib 4.0 and later
12561  }
SpriteMediaNewSpritenull12562 function SpriteMediaNewSprite( mh: MediaHandler; newSpriteDesc: QTRuntimeSpriteDescPtr ): ComponentResult; external name '_SpriteMediaNewSprite';
12563 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12564 
12565 
12566 {
12567  *  SpriteMediaDisposeSprite()
12568  *
12569  *  Availability:
12570  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12571  *    CarbonLib:        in CarbonLib 1.0.2 and later
12572  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12573  *    Windows:          in qtmlClient.lib 4.0 and later
12574  }
SpriteMediaDisposeSpritenull12575 function SpriteMediaDisposeSprite( mh: MediaHandler; spriteID: QTAtomID ): ComponentResult; external name '_SpriteMediaDisposeSprite';
12576 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12577 
12578 
12579 {
12580  *  SpriteMediaSetActionVariableToString()
12581  *
12582  *  Availability:
12583  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12584  *    CarbonLib:        in CarbonLib 1.0.2 and later
12585  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12586  *    Windows:          in qtmlClient.lib 4.0 and later
12587  }
SpriteMediaSetActionVariableToStringnull12588 function SpriteMediaSetActionVariableToString( mh: MediaHandler; variableID: QTAtomID; theCString: Ptr ): ComponentResult; external name '_SpriteMediaSetActionVariableToString';
12589 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12590 
12591 
12592 {
12593  *  SpriteMediaGetActionVariableAsString()
12594  *
12595  *  Availability:
12596  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12597  *    CarbonLib:        in CarbonLib 1.0.2 and later
12598  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12599  *    Windows:          in qtmlClient.lib 4.0 and later
12600  }
SpriteMediaGetActionVariableAsStringnull12601 function SpriteMediaGetActionVariableAsString( mh: MediaHandler; variableID: QTAtomID; var theCString: Handle ): ComponentResult; external name '_SpriteMediaGetActionVariableAsString';
12602 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12603 
12604 
12605 {
12606  *  SpriteMediaNewImage()
12607  *
12608  *  Availability:
12609  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
12610  *    CarbonLib:        in CarbonLib 1.6 and later
12611  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
12612  *    Windows:          in qtmlClient.lib 6.0 and later
12613  }
SpriteMediaNewImagenull12614 function SpriteMediaNewImage( mh: MediaHandler; dataRef: Handle; dataRefType: OSType; desiredID: QTAtomID ): ComponentResult; external name '_SpriteMediaNewImage';
12615 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
12616 
12617 
12618 {
12619  *  SpriteMediaDisposeImage()
12620  *
12621  *  Availability:
12622  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
12623  *    CarbonLib:        in CarbonLib 1.6 and later
12624  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
12625  *    Windows:          in qtmlClient.lib 6.0 and later
12626  }
SpriteMediaDisposeImagenull12627 function SpriteMediaDisposeImage( mh: MediaHandler; imageIndex: SInt16 ): ComponentResult; external name '_SpriteMediaDisposeImage';
12628 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
12629 
12630 
12631 {
12632  *  SpriteMediaImageIndexToID()
12633  *
12634  *  Availability:
12635  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
12636  *    CarbonLib:        in CarbonLib 1.6 and later
12637  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
12638  *    Windows:          in qtmlClient.lib 6.0 and later
12639  }
SpriteMediaImageIndexToIDnull12640 function SpriteMediaImageIndexToID( mh: MediaHandler; imageIndex: SInt16; var imageID: QTAtomID ): ComponentResult; external name '_SpriteMediaImageIndexToID';
12641 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
12642 
12643 
12644 {
12645  *  SpriteMediaImageIDToIndex()
12646  *
12647  *  Availability:
12648  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
12649  *    CarbonLib:        in CarbonLib 1.6 and later
12650  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
12651  *    Windows:          in qtmlClient.lib 6.0 and later
12652  }
SpriteMediaImageIDToIndexnull12653 function SpriteMediaImageIDToIndex( mh: MediaHandler; imageID: QTAtomID; var imageIndex: SInt16 ): ComponentResult; external name '_SpriteMediaImageIDToIndex';
12654 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
12655 
12656 
12657 {************************
12658 * Flash Media routines
12659 *************************}
12660 
12661 {
12662  *  FlashMediaSetPan()
12663  *
12664  *  Availability:
12665  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12666  *    CarbonLib:        in CarbonLib 1.0.2 and later
12667  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12668  *    Windows:          in qtmlClient.lib 4.0 and later
12669  }
FlashMediaSetPannull12670 function FlashMediaSetPan( mh: MediaHandler; xPercent: SInt16; yPercent: SInt16 ): ComponentResult; external name '_FlashMediaSetPan';
12671 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12672 
12673 
12674 {
12675  *  FlashMediaSetZoom()
12676  *
12677  *  Availability:
12678  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12679  *    CarbonLib:        in CarbonLib 1.0.2 and later
12680  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12681  *    Windows:          in qtmlClient.lib 4.0 and later
12682  }
FlashMediaSetZoomnull12683 function FlashMediaSetZoom( mh: MediaHandler; factor: SInt16 ): ComponentResult; external name '_FlashMediaSetZoom';
12684 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12685 
12686 
12687 {
12688  *  FlashMediaSetZoomRect()
12689  *
12690  *  Availability:
12691  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12692  *    CarbonLib:        in CarbonLib 1.0.2 and later
12693  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12694  *    Windows:          in qtmlClient.lib 4.0 and later
12695  }
FlashMediaSetZoomRectnull12696 function FlashMediaSetZoomRect( mh: MediaHandler; left: SIGNEDLONG; top: SIGNEDLONG; right: SIGNEDLONG; bottom: SIGNEDLONG ): ComponentResult; external name '_FlashMediaSetZoomRect';
12697 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12698 
12699 
12700 {
12701  *  FlashMediaGetRefConBounds()
12702  *
12703  *  Availability:
12704  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12705  *    CarbonLib:        in CarbonLib 1.0.2 and later
12706  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12707  *    Windows:          in qtmlClient.lib 4.0 and later
12708  }
FlashMediaGetRefConBoundsnull12709 function FlashMediaGetRefConBounds( mh: MediaHandler; refCon: SIGNEDLONG; var left: SIGNEDLONG; var top: SIGNEDLONG; var right: SIGNEDLONG; var bottom: SIGNEDLONG ): ComponentResult; external name '_FlashMediaGetRefConBounds';
12710 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12711 
12712 
12713 {
12714  *  FlashMediaGetRefConID()
12715  *
12716  *  Availability:
12717  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12718  *    CarbonLib:        in CarbonLib 1.0.2 and later
12719  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12720  *    Windows:          in qtmlClient.lib 4.0 and later
12721  }
FlashMediaGetRefConIDnull12722 function FlashMediaGetRefConID( mh: MediaHandler; refCon: SIGNEDLONG; var refConID: SIGNEDLONG ): ComponentResult; external name '_FlashMediaGetRefConID';
12723 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12724 
12725 
12726 {
12727  *  FlashMediaIDToRefCon()
12728  *
12729  *  Availability:
12730  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12731  *    CarbonLib:        in CarbonLib 1.0.2 and later
12732  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12733  *    Windows:          in qtmlClient.lib 4.0 and later
12734  }
FlashMediaIDToRefConnull12735 function FlashMediaIDToRefCon( mh: MediaHandler; refConID: SIGNEDLONG; var refCon: SIGNEDLONG ): ComponentResult; external name '_FlashMediaIDToRefCon';
12736 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12737 
12738 
12739 {
12740  *  FlashMediaGetDisplayedFrameNumber()
12741  *
12742  *  Availability:
12743  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12744  *    CarbonLib:        in CarbonLib 1.0.2 and later
12745  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12746  *    Windows:          in qtmlClient.lib 4.0 and later
12747  }
FlashMediaGetDisplayedFrameNumbernull12748 function FlashMediaGetDisplayedFrameNumber( mh: MediaHandler; var flashFrameNumber: SIGNEDLONG ): ComponentResult; external name '_FlashMediaGetDisplayedFrameNumber';
12749 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12750 
12751 
12752 {
12753  *  FlashMediaFrameNumberToMovieTime()
12754  *
12755  *  Availability:
12756  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12757  *    CarbonLib:        in CarbonLib 1.0.2 and later
12758  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12759  *    Windows:          in qtmlClient.lib 4.0 and later
12760  }
FlashMediaFrameNumberToMovieTimenull12761 function FlashMediaFrameNumberToMovieTime( mh: MediaHandler; flashFrameNumber: SIGNEDLONG; var movieTime: TimeValue ): ComponentResult; external name '_FlashMediaFrameNumberToMovieTime';
12762 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12763 
12764 
12765 {
12766  *  FlashMediaFrameLabelToMovieTime()
12767  *
12768  *  Availability:
12769  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12770  *    CarbonLib:        in CarbonLib 1.0.2 and later
12771  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
12772  *    Windows:          in qtmlClient.lib 4.0 and later
12773  }
FlashMediaFrameLabelToMovieTimenull12774 function FlashMediaFrameLabelToMovieTime( mh: MediaHandler; theLabel: Ptr; var movieTime: TimeValue ): ComponentResult; external name '_FlashMediaFrameLabelToMovieTime';
12775 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12776 
12777 
12778 {
12779  *  FlashMediaGetFlashVariable()
12780  *
12781  *  Availability:
12782  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12783  *    CarbonLib:        in CarbonLib 1.3 and later
12784  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
12785  *    Windows:          in qtmlClient.lib 5.0 and later
12786  }
FlashMediaGetFlashVariablenull12787 function FlashMediaGetFlashVariable( mh: MediaHandler; path: CStringPtr; name: CStringPtr; var theVariableCStringOut: Handle ): ComponentResult; external name '_FlashMediaGetFlashVariable';
12788 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12789 
12790 
12791 {
12792  *  FlashMediaSetFlashVariable()
12793  *
12794  *  Availability:
12795  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12796  *    CarbonLib:        in CarbonLib 1.3 and later
12797  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
12798  *    Windows:          in qtmlClient.lib 5.0 and later
12799  }
FlashMediaSetFlashVariablenull12800 function FlashMediaSetFlashVariable( mh: MediaHandler; path: CStringPtr; name: CStringPtr; value: CStringPtr; updateFocus: Boolean ): ComponentResult; external name '_FlashMediaSetFlashVariable';
12801 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12802 
12803 
12804 {
12805  *  FlashMediaDoButtonActions()
12806  *
12807  *  Availability:
12808  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12809  *    CarbonLib:        in CarbonLib 1.3 and later
12810  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
12811  *    Windows:          in qtmlClient.lib 5.0 and later
12812  }
FlashMediaDoButtonActionsnull12813 function FlashMediaDoButtonActions( mh: MediaHandler; path: CStringPtr; buttonID: SIGNEDLONG; transition: SIGNEDLONG ): ComponentResult; external name '_FlashMediaDoButtonActions';
12814 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12815 
12816 
12817 {
12818  *  FlashMediaGetSupportedSwfVersion()
12819  *
12820  *  Availability:
12821  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12822  *    CarbonLib:        in CarbonLib 1.3 and later
12823  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
12824  *    Windows:          in qtmlClient.lib 5.0 and later
12825  }
FlashMediaGetSupportedSwfVersionnull12826 function FlashMediaGetSupportedSwfVersion( mh: MediaHandler; var swfVersion: UInt8 ): ComponentResult; external name '_FlashMediaGetSupportedSwfVersion';
12827 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12828 
12829 
12830 { sample format atoms}
12831 const
12832 	kMovieMediaDataReference = FourCharCode('mmdr'); { data reference}
12833 	kMovieMediaDefaultDataReferenceID = FourCharCode('ddri'); { atom id}
12834 	kMovieMediaSlaveTime = FourCharCode('slti'); { boolean}
12835 	kMovieMediaSlaveAudio = FourCharCode('slau'); { boolean}
12836 	kMovieMediaSlaveGraphicsMode = FourCharCode('slgr'); { boolean}
12837 	kMovieMediaAutoPlay = FourCharCode('play'); { boolean}
12838 	kMovieMediaLoop = FourCharCode('loop'); { UInt8 (0=no loop, 1=loop, 2=palindrome loop)}
12839 	kMovieMediaUseMIMEType = FourCharCode('mime'); { string indicating the MIME type to use for the dataref (usually not required)}
12840 	kMovieMediaTitle = FourCharCode('titl'); { string of the media's title (tooltips)}
12841 	kMovieMediaAltText = FourCharCode('altt'); { string of alternate text if media isn't loaded}
12842 	kMovieMediaClipBegin = FourCharCode('clpb'); { MovieMediaTimeRecord of start time of embedded media}
12843 	kMovieMediaClipDuration = FourCharCode('clpd'); { MovieMediaTimeRecord of duration of embedded media}
12844 	kMovieMediaRegionAtom = FourCharCode('regi'); { contains subatoms that describe layout}
12845 	kMovieMediaSlaveTrackDuration = FourCharCode('sltr'); { Boolean indicating that media handler should adjust track and media based on actual embedded movie duration}
12846 	kMovieMediaEnableFrameStepping = FourCharCode('enfs'); { boolean. if true stepping on external movie steps frames within embedded movie.}
12847 	kMovieMediaBackgroundColor = FourCharCode('bkcl'); { RGBColor.}
12848 	kMovieMediaPrerollTime = FourCharCode('prer'); { SInt32 indicating preroll time}
12849 
12850 { fit types}
12851 const
12852 	kMovieMediaFitNone = 0;
12853 	kMovieMediaFitScroll = FourCharCode('scro');
12854 	kMovieMediaFitClipIfNecessary = FourCharCode('hidd');
12855 	kMovieMediaFitFill = FourCharCode('fill');
12856 	kMovieMediaFitMeet = FourCharCode('meet');
12857 	kMovieMediaFitSlice = FourCharCode('slic');
12858 
12859 { sub atoms for region atom}
12860 const
12861 	kMovieMediaSpatialAdjustment = FourCharCode('fit '); { OSType from kMovieMediaFit*}
12862 	kMovieMediaRectangleAtom = FourCharCode('rect');
12863 	kMovieMediaTop = FourCharCode('top ');
12864 	kMovieMediaLeft = FourCharCode('left');
12865 	kMovieMediaWidth = FourCharCode('wd  ');
12866 	kMovieMediaHeight = FourCharCode('ht  ');
12867 
12868 { contained movie properties}
12869 const
12870 	kMoviePropertyDuration = FourCharCode('dura'); { TimeValue *}
12871 	kMoviePropertyTimeScale = FourCharCode('tims'); { TimeValue *}
12872 	kMoviePropertyTime = FourCharCode('timv'); { TimeValue *}
12873 	kMoviePropertyNaturalBounds = FourCharCode('natb'); { Rect *}
12874 	kMoviePropertyMatrix = FourCharCode('mtrx'); { Matrix *}
12875 	kMoviePropertyTrackList = FourCharCode('tlst'); { long ***}
12876 
12877 
12878 const
12879 	kTrackPropertyMediaType = FourCharCode('mtyp'); { OSType}
12880 	kTrackPropertyInstantiation = FourCharCode('inst'); { MovieMediaInstantiationInfoRecord}
12881 
12882 type
12883 	MovieMediaTimeRecordPtr = ^MovieMediaTimeRecord;
12884 	MovieMediaTimeRecord = record
12885 		time: wide;
12886 		scale: TimeScale;
12887 	end;
12888 type
12889 	MovieMediaInstantiationInfoRecordPtr = ^MovieMediaInstantiationInfoRecord;
12890 	MovieMediaInstantiationInfoRecord = record
12891 		immediately: Boolean;
12892 		pad: Boolean;
12893 		bitRate: SInt32;
12894 	end;
12895 {************************
12896 * Movie Media routines
12897 *************************}
12898 
12899 
12900 {
12901  *  MovieMediaGetChildDoMCActionCallback()
12902  *
12903  *  Availability:
12904  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12905  *    CarbonLib:        in CarbonLib 1.1 and later
12906  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12907  *    Windows:          in qtmlClient.lib 4.1 and later
12908  }
MovieMediaGetChildDoMCActionCallbacknull12909 function MovieMediaGetChildDoMCActionCallback( mh: MediaHandler; var doMCActionCallbackProc: DoMCActionUPP; var refcon: SIGNEDLONG ): ComponentResult; external name '_MovieMediaGetChildDoMCActionCallback';
12910 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12911 
12912 
12913 {
12914  *  MovieMediaGetDoMCActionCallback()
12915  *
12916  *  Availability:
12917  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12918  *    CarbonLib:        in CarbonLib 1.1 and later
12919  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12920  *    Windows:          in qtmlClient.lib 4.1 and later
12921  }
MovieMediaGetDoMCActionCallbacknull12922 function MovieMediaGetDoMCActionCallback( mh: MediaHandler; var doMCActionCallbackProc: DoMCActionUPP; var refcon: SIGNEDLONG ): ComponentResult; external name '_MovieMediaGetDoMCActionCallback';
12923 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12924 
12925 
12926 {
12927  *  MovieMediaGetCurrentMovieProperty()
12928  *
12929  *  Availability:
12930  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12931  *    CarbonLib:        in CarbonLib 1.1 and later
12932  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12933  *    Windows:          in qtmlClient.lib 4.1 and later
12934  }
MovieMediaGetCurrentMoviePropertynull12935 function MovieMediaGetCurrentMovieProperty( mh: MediaHandler; whichProperty: OSType; value: UnivPtr ): ComponentResult; external name '_MovieMediaGetCurrentMovieProperty';
12936 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12937 
12938 
12939 {
12940  *  MovieMediaGetCurrentTrackProperty()
12941  *
12942  *  Availability:
12943  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12944  *    CarbonLib:        in CarbonLib 1.1 and later
12945  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12946  *    Windows:          in qtmlClient.lib 4.1 and later
12947  }
MovieMediaGetCurrentTrackPropertynull12948 function MovieMediaGetCurrentTrackProperty( mh: MediaHandler; trackID: SIGNEDLONG; whichProperty: OSType; value: UnivPtr ): ComponentResult; external name '_MovieMediaGetCurrentTrackProperty';
12949 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12950 
12951 
12952 {
12953  *  MovieMediaGetChildMovieDataReference()
12954  *
12955  *  Availability:
12956  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12957  *    CarbonLib:        in CarbonLib 1.1 and later
12958  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12959  *    Windows:          in qtmlClient.lib 4.1 and later
12960  }
MovieMediaGetChildMovieDataReferencenull12961 function MovieMediaGetChildMovieDataReference( mh: MediaHandler; dataRefID: QTAtomID; dataRefIndex: SInt16; var dataRefType: OSType; var dataRef: Handle; var dataRefIDOut: QTAtomID; var dataRefIndexOut: SInt16 ): ComponentResult; external name '_MovieMediaGetChildMovieDataReference';
12962 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12963 
12964 
12965 {
12966  *  MovieMediaSetChildMovieDataReference()
12967  *
12968  *  Availability:
12969  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12970  *    CarbonLib:        in CarbonLib 1.1 and later
12971  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12972  *    Windows:          in qtmlClient.lib 4.1 and later
12973  }
MovieMediaSetChildMovieDataReferencenull12974 function MovieMediaSetChildMovieDataReference( mh: MediaHandler; dataRefID: QTAtomID; dataRefType: OSType; dataRef: Handle ): ComponentResult; external name '_MovieMediaSetChildMovieDataReference';
12975 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12976 
12977 
12978 {
12979  *  MovieMediaLoadChildMovieFromDataReference()
12980  *
12981  *  Availability:
12982  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12983  *    CarbonLib:        in CarbonLib 1.1 and later
12984  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
12985  *    Windows:          in qtmlClient.lib 4.1 and later
12986  }
MovieMediaLoadChildMovieFromDataReferencenull12987 function MovieMediaLoadChildMovieFromDataReference( mh: MediaHandler; dataRefID: QTAtomID ): ComponentResult; external name '_MovieMediaLoadChildMovieFromDataReference';
12988 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
12989 
12990 
12991 {************************
12992 * 3D Media routines
12993 *************************}
12994 {
12995  *  Media3DGetNamedObjectList()
12996  *
12997  *  Availability:
12998  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
12999  *    CarbonLib:        in CarbonLib 1.0 and later
13000  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13001  *    Windows:          in qtmlClient.lib 3.0 and later
13002  }
Media3DGetNamedObjectListnull13003 function Media3DGetNamedObjectList( mh: MediaHandler; var objectList: QTAtomContainer ): ComponentResult; external name '_Media3DGetNamedObjectList';
13004 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13005 
13006 
13007 {
13008  *  Media3DGetRendererList()
13009  *
13010  *  Availability:
13011  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13012  *    CarbonLib:        in CarbonLib 1.0 and later
13013  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13014  *    Windows:          in qtmlClient.lib 3.0 and later
13015  }
Media3DGetRendererListnull13016 function Media3DGetRendererList( mh: MediaHandler; var rendererList: QTAtomContainer ): ComponentResult; external name '_Media3DGetRendererList';
13017 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13018 
13019 
13020 {
13021  *  Media3DGetCurrentGroup()
13022  *
13023  *  Availability:
13024  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13025  *    CarbonLib:        in CarbonLib 1.0.2 and later
13026  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13027  *    Windows:          in qtmlClient.lib 4.0 and later
13028  }
Media3DGetCurrentGroupnull13029 function Media3DGetCurrentGroup( mh: MediaHandler; group: UnivPtr ): ComponentResult; external name '_Media3DGetCurrentGroup';
13030 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13031 
13032 
13033 {
13034  *  Media3DTranslateNamedObjectTo()
13035  *
13036  *  Availability:
13037  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13038  *    CarbonLib:        in CarbonLib 1.0.2 and later
13039  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13040  *    Windows:          in qtmlClient.lib 4.0 and later
13041  }
Media3DTranslateNamedObjectTonull13042 function Media3DTranslateNamedObjectTo( mh: MediaHandler; objectName: CStringPtr; x: Fixed; y: Fixed; z: Fixed ): ComponentResult; external name '_Media3DTranslateNamedObjectTo';
13043 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13044 
13045 
13046 {
13047  *  Media3DScaleNamedObjectTo()
13048  *
13049  *  Availability:
13050  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13051  *    CarbonLib:        in CarbonLib 1.0.2 and later
13052  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13053  *    Windows:          in qtmlClient.lib 4.0 and later
13054  }
Media3DScaleNamedObjectTonull13055 function Media3DScaleNamedObjectTo( mh: MediaHandler; objectName: CStringPtr; xScale: Fixed; yScale: Fixed; zScale: Fixed ): ComponentResult; external name '_Media3DScaleNamedObjectTo';
13056 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13057 
13058 
13059 {
13060  *  Media3DRotateNamedObjectTo()
13061  *
13062  *  Availability:
13063  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13064  *    CarbonLib:        in CarbonLib 1.0.2 and later
13065  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13066  *    Windows:          in qtmlClient.lib 4.0 and later
13067  }
Media3DRotateNamedObjectTonull13068 function Media3DRotateNamedObjectTo( mh: MediaHandler; objectName: CStringPtr; xDegrees: Fixed; yDegrees: Fixed; zDegrees: Fixed ): ComponentResult; external name '_Media3DRotateNamedObjectTo';
13069 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13070 
13071 
13072 {
13073  *  Media3DSetCameraData()
13074  *
13075  *  Availability:
13076  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13077  *    CarbonLib:        in CarbonLib 1.0.2 and later
13078  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13079  *    Windows:          in qtmlClient.lib 4.0 and later
13080  }
Media3DSetCameraDatanull13081 function Media3DSetCameraData( mh: MediaHandler; cameraData: UnivPtr ): ComponentResult; external name '_Media3DSetCameraData';
13082 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13083 
13084 
13085 {
13086  *  Media3DGetCameraData()
13087  *
13088  *  Availability:
13089  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13090  *    CarbonLib:        in CarbonLib 1.0.2 and later
13091  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13092  *    Windows:          in qtmlClient.lib 4.0 and later
13093  }
Media3DGetCameraDatanull13094 function Media3DGetCameraData( mh: MediaHandler; cameraData: UnivPtr ): ComponentResult; external name '_Media3DGetCameraData';
13095 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13096 
13097 
13098 {
13099  *  Media3DSetCameraAngleAspect()
13100  *
13101  *  Availability:
13102  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13103  *    CarbonLib:        in CarbonLib 1.0.2 and later
13104  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13105  *    Windows:          in qtmlClient.lib 4.0 and later
13106  }
Media3DSetCameraAngleAspectnull13107 function Media3DSetCameraAngleAspect( mh: MediaHandler; fov: QTFloatSingle; aspectRatioXToY: QTFloatSingle ): ComponentResult; external name '_Media3DSetCameraAngleAspect';
13108 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13109 
13110 
13111 {
13112  *  Media3DGetCameraAngleAspect()
13113  *
13114  *  Availability:
13115  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13116  *    CarbonLib:        in CarbonLib 1.0.2 and later
13117  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13118  *    Windows:          in qtmlClient.lib 4.0 and later
13119  }
Media3DGetCameraAngleAspectnull13120 function Media3DGetCameraAngleAspect( mh: MediaHandler; var fov: QTFloatSingle; var aspectRatioXToY: QTFloatSingle ): ComponentResult; external name '_Media3DGetCameraAngleAspect';
13121 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13122 
13123 
13124 {
13125  *  Media3DSetCameraRange()
13126  *
13127  *  Availability:
13128  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13129  *    CarbonLib:        in CarbonLib 1.0.2 and later
13130  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13131  *    Windows:          in qtmlClient.lib 4.0 and later
13132  }
Media3DSetCameraRangenull13133 function Media3DSetCameraRange( mh: MediaHandler; tQ3CameraRange: UnivPtr ): ComponentResult; external name '_Media3DSetCameraRange';
13134 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13135 
13136 
13137 {
13138  *  Media3DGetCameraRange()
13139  *
13140  *  Availability:
13141  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13142  *    CarbonLib:        in CarbonLib 1.0.2 and later
13143  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
13144  *    Windows:          in qtmlClient.lib 4.0 and later
13145  }
Media3DGetCameraRangenull13146 function Media3DGetCameraRange( mh: MediaHandler; tQ3CameraRange: UnivPtr ): ComponentResult; external name '_Media3DGetCameraRange';
13147 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13148 
13149 
13150 {
13151  *  Media3DGetViewObject()
13152  *
13153  *  Availability:
13154  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13155  *    CarbonLib:        in CarbonLib 1.1 and later
13156  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
13157  *    Windows:          in qtmlClient.lib 4.1 and later
13158  }
Media3DGetViewObjectnull13159 function Media3DGetViewObject( mh: MediaHandler; tq3viewObject: UnivPtr ): ComponentResult; external name '_Media3DGetViewObject';
13160 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13161 
13162 
13163 {***************************************
13164 *                                       *
13165 *   M O V I E   C O N T R O L L E R     *
13166 *                                       *
13167 ***************************************}
13168 const
13169 	MovieControllerComponentType = FourCharCode('play');
13170 
13171 
13172 const
13173 	kMovieControllerQTVRFlag = 1 shl 0;
13174 	kMovieControllerDontDisplayToUser = 1 shl 1;
13175 
13176 
13177 type
13178 	MovieController = ComponentInstance;
13179 	MovieControllerPtr = ^MovieController;
13180 const
13181 	mcActionIdle = 1;    { no param}
13182 	mcActionDraw = 2;    { param is WindowRef}
13183 	mcActionActivate = 3;    { no param}
13184 	mcActionDeactivate = 4;    { no param}
13185 	mcActionMouseDown = 5;    { param is pointer to EventRecord}
13186 	mcActionKey = 6;    { param is pointer to EventRecord}
13187 	mcActionPlay = 8;    { param is Fixed, play rate}
13188 	mcActionGoToTime = 12;   { param is TimeRecord}
13189 	mcActionSetVolume = 14;   { param is a short}
13190 	mcActionGetVolume = 15;   { param is pointer to a short}
13191 	mcActionStep = 18;   { param is number of steps (short)}
13192 	mcActionSetLooping = 21;   { param is Boolean}
13193 	mcActionGetLooping = 22;   { param is pointer to a Boolean}
13194 	mcActionSetLoopIsPalindrome = 23;   { param is Boolean}
13195 	mcActionGetLoopIsPalindrome = 24;   { param is pointer to a Boolean}
13196 	mcActionSetGrowBoxBounds = 25;   { param is a Rect}
13197 	mcActionControllerSizeChanged = 26;   { no param}
13198 	mcActionSetSelectionBegin = 29;   { param is TimeRecord}
13199 	mcActionSetSelectionDuration = 30;   { param is TimeRecord, action only taken on set-duration}
13200 	mcActionSetKeysEnabled = 32;   { param is Boolean}
13201 	mcActionGetKeysEnabled = 33;   { param is pointer to Boolean}
13202 	mcActionSetPlaySelection = 34;   { param is Boolean}
13203 	mcActionGetPlaySelection = 35;   { param is pointer to Boolean}
13204 	mcActionSetUseBadge = 36;   { param is Boolean}
13205 	mcActionGetUseBadge = 37;   { param is pointer to Boolean}
13206 	mcActionSetFlags = 38;   { param is long of flags}
13207 	mcActionGetFlags = 39;   { param is pointer to a long of flags}
13208 	mcActionSetPlayEveryFrame = 40;   { param is Boolean}
13209 	mcActionGetPlayEveryFrame = 41;   { param is pointer to Boolean}
13210 	mcActionGetPlayRate = 42;   { param is pointer to Fixed}
13211 	mcActionShowBalloon = 43;   { param is a pointer to a boolean. set to false to stop balloon}
13212 	mcActionBadgeClick = 44;   { param is pointer to Boolean. set to false to ignore click}
13213 	mcActionMovieClick = 45;   { param is pointer to event record. change "what" to nullEvt to kill click}
13214 	mcActionSuspend = 46;   { no param}
13215 	mcActionResume = 47;   { no param}
13216 	mcActionSetControllerKeysEnabled = 48; { param is Boolean}
13217 	mcActionGetTimeSliderRect = 49;   { param is pointer to rect}
13218 	mcActionMovieEdited = 50;   { no param}
13219 	mcActionGetDragEnabled = 51;   { param is pointer to Boolean}
13220 	mcActionSetDragEnabled = 52;   { param is Boolean}
13221 	mcActionGetSelectionBegin = 53;   { param is TimeRecord}
13222 	mcActionGetSelectionDuration = 54;   { param is TimeRecord}
13223 	mcActionPrerollAndPlay = 55;   { param is Fixed, play rate}
13224 	mcActionGetCursorSettingEnabled = 56; { param is pointer to Boolean}
13225 	mcActionSetCursorSettingEnabled = 57; { param is Boolean}
13226 	mcActionSetColorTable = 58;   { param is CTabHandle}
13227 	mcActionLinkToURL = 59;   { param is Handle to URL}
13228 	mcActionCustomButtonClick = 60;   { param is pointer to EventRecord}
13229 	mcActionForceTimeTableUpdate = 61;   { no param}
13230 	mcActionSetControllerTimeLimits = 62; { param is pointer to 2 time values min/max. do no send this message to controller. used internally only.}
13231 	mcActionExecuteAllActionsForQTEvent = 63; { param is ResolvedQTEventSpecPtr}
13232 	mcActionExecuteOneActionForQTEvent = 64; { param is ResolvedQTEventSpecPtr}
13233 	mcActionAdjustCursor = 65;   { param is pointer to EventRecord (WindowRef is in message parameter)}
13234 	mcActionUseTrackForTimeTable = 66;   { param is pointer to (long trackID; Boolean useIt). do not send this message to controller. }
13235 	mcActionClickAndHoldPoint = 67;   { param is point (local coordinates). return true if point has click & hold action (e.g., VR object movie autorotate spot)}
13236 	mcActionShowMessageString = 68;   { param is a StringPtr}
13237 	mcActionShowStatusString = 69;   { param is a QTStatusStringPtr}
13238 	mcActionGetExternalMovie = 70;   { param is a QTGetExternalMoviePtr}
13239 	mcActionGetChapterTime = 71;   { param is a QTGetChapterTimePtr}
13240 	mcActionPerformActionList = 72;   { param is a QTAtomSpecPtr}
13241 	mcActionEvaluateExpression = 73;   { param is a QTEvaluateExpressionPtr}
13242 	mcActionFetchParameterAs = 74;   { param is a QTFetchParameterAsPtr}
13243 	mcActionGetCursorByID = 75;   { param is a QTGetCursorByIDPtr}
13244 	mcActionGetNextURL = 76;   { param is a Handle to URL}
13245 	mcActionMovieChanged = 77;
13246 	mcActionDoScript = 78;   { param is QTDoScriptPtr}
13247 	mcActionRestartAtTime = 79;   { param is QTResartAtTimePtr}
13248 	mcActionGetIndChapter = 80;   { param is QTChapterInfoPtr}
13249 	mcActionLinkToURLExtended = 81;   { param is QTAtomContainer as used by QTParseHREF}
13250 	mcActionSetVolumeStep = 82;   { param is short containing amount to step volume via arrow keys - default = 64}
13251 	mcActionAutoPlay = 83;   { param is Fixed, play rate}
13252 	mcActionPauseToBuffer = 84;   { param is Fixed, play rate on restart}
13253 	mcActionAppMessageReceived = 85;   { param is a long, application message}
13254 	mcActionMovieFinished = 86;   { no param}
13255 	mcActionEvaluateExpressionWithType = 89; { param is a QTEvaluateExpressionWithTypePtr}
13256 	mcActionGetMovieName = 90;   { param is a p String Handle}
13257 	mcActionGetMovieID = 91;   { param is pointer to long}
13258 	mcActionGetMovieActive = 92;   { param is pointer to Boolean}
13259 	mcActionGetKeyboardFocus = 93;   { param is QTKeyboardFocusPtr}
13260 	mcActionSetKeyboardFocus = 94;   { param is QTKeyboardFocusPtr}
13261 	mcActionAddActionNotification = 95;   { param is QTMCActionNotificationPtr}
13262 	mcActionRemoveActionNotification = 96; { param is QTMCActionNotificationPtr}
13263 	mcActionKeyUp = 97;   { param is pointer to EventRecord }
13264 	mcActionGetConnectionStatus = 98;   { param is QTConnectionStatusPtr}
13265 	mcActionChapterListChanged = 99;   { no param }
13266 	mcActionMovieLoadStateChanged = 100;  { param is SInt32, new load state}
13267 	mcActionEditStateChanged = 101;  { param is a Boolean, editing enabled?}
13268 	mcActionCurrentChapterChanged = 102;   { param is a UInt32, new chapter index }
13269 
13270 type
13271 	mcAction = SInt16;
13272 const
13273 	mcFlagSuppressMovieFrame = 1 shl 0;
13274 	mcFlagSuppressStepButtons = 1 shl 1;
13275 	mcFlagSuppressSpeakerButton = 1 shl 2;
13276 	mcFlagsUseWindowPalette = 1 shl 3;
13277 	mcFlagsDontInvalidate = 1 shl 4;
13278 	mcFlagsUseCustomButton = 1 shl 5;
13279 
13280 
13281 const
13282 	mcPositionDontInvalidate = 1 shl 5;
13283 
13284 type
13285 	mcFlags = UNSIGNEDLONG;
13286 const
13287 	kMCIEEnabledButtonPicture = 1;
13288 	kMCIEDisabledButtonPicture = 2;
13289 	kMCIEDepressedButtonPicture = 3;
13290 	kMCIEEnabledSizeBoxPicture = 4;
13291 	kMCIEDisabledSizeBoxPicture = 5;
13292 	kMCIEEnabledUnavailableButtonPicture = 6;
13293 	kMCIEDisabledUnavailableButtonPicture = 7;
13294 	kMCIESoundSlider = 128;
13295 	kMCIESoundThumb = 129;
13296 	kMCIEColorTable = 256;
13297 	kMCIEIsFlatAppearance = 257;
13298 	kMCIEDoButtonIconsDropOnDepress = 258;
13299 
13300 type
13301 	MCInterfaceElement = UNSIGNEDLONG;
mcnull13302 	MCActionFilterProcPtr = function( mc: MovieController; var action: SInt16; params: UnivPtr ): Boolean;
mcnull13303 	MCActionFilterWithRefConProcPtr = function( mc: MovieController; action: SInt16; params: UnivPtr; refCon: SIGNEDLONG ): Boolean;
mcnull13304 	MCActionNotificationProcPtr = function( mc: MovieController; action: SInt16; params: UnivPtr; inFlags: UInt32; var outFlags: UInt32; refCon: UnivPtr ): Boolean;
13305 	MCActionFilterUPP = MCActionFilterProcPtr;
13306 	MCActionFilterWithRefConUPP = MCActionFilterWithRefConProcPtr;
13307 	MCActionNotificationUPP = MCActionNotificationProcPtr;
13308 {
13309     menu related stuff
13310 }
13311 const
13312 	mcInfoUndoAvailable = 1 shl 0;
13313 	mcInfoCutAvailable = 1 shl 1;
13314 	mcInfoCopyAvailable = 1 shl 2;
13315 	mcInfoPasteAvailable = 1 shl 3;
13316 	mcInfoClearAvailable = 1 shl 4;
13317 	mcInfoHasSound = 1 shl 5;
13318 	mcInfoIsPlaying = 1 shl 6;
13319 	mcInfoIsLooping = 1 shl 7;
13320 	mcInfoIsInPalindrome = 1 shl 8;
13321 	mcInfoEditingEnabled = 1 shl 9;
13322 	mcInfoMovieIsInteractive = 1 shl 10;
13323 
13324 { menu item codes}
13325 const
13326 	mcMenuUndo = 1;
13327 	mcMenuCut = 3;
13328 	mcMenuCopy = 4;
13329 	mcMenuPaste = 5;
13330 	mcMenuClear = 6;
13331 
13332 { messages to the application via mcActionAppMessageReceived}
13333 const
13334 	kQTAppMessageSoftwareChanged = 1;    { notification to app that installed QuickTime software has been updated}
13335 	kQTAppMessageWindowCloseRequested = 3; { request for app to close window containing movie controller}
13336 	kQTAppMessageExitFullScreenRequested = 4; { request for app to turn off full screen mode if active}
13337 	kQTAppMessageDisplayChannels = 5;    { request for app to display the channel UI}
13338 	kQTAppMessageEnterFullScreenRequested = 6; { request for app to turn on full screen mode}
13339 
13340 { structures used as mcActionFilterProc params}
13341 type
13342 	QTStatusStringRecordPtr = ^QTStatusStringRecord;
13343 	QTStatusStringRecord = record
13344 		stringTypeFlags: SIGNEDLONG;
13345 		statusString: CStringPtr;
13346 	end;
13347 type
13348 	QTStatusStringPtr = QTStatusStringRecordPtr;
13349 	QTGetExternalMovieRecordPtr = ^QTGetExternalMovieRecord;
13350 	QTGetExternalMovieRecord = record
13351 		targetType: SIGNEDLONG;             { set to kTargetMovieName or kTargetMovieID}
13352 		movieName: StringPtr;
13353 		movieID: SIGNEDLONG;
13354 		theMovie: PtrToMovie;
13355 		theController: MovieControllerPtr;
13356 	end;
13357 type
13358 	QTGetChapterTimeRecordPtr = ^QTGetChapterTimeRecord;
13359 	QTGetExternalMoviePtr = QTGetExternalMovieRecordPtr;
13360 	QTGetChapterTimeRecord = record
13361 		chapterName: StringPtr;
13362 		chapterTime: TimeRecord;
13363 	end;
13364 type
13365 	QTGetChapterTimePtr = QTGetChapterTimeRecordPtr;
13366 	QTChapterInfoRecordPtr = ^QTChapterInfoRecord;
13367 	QTChapterInfoRecord = record
13368 		index: SIGNEDLONG;                  { first chapter has index of 1}
13369 		time: TimeValue;                   { -1 if no more chapters available}
13370 		name: Str255;
13371 	end;
13372 type
13373 	QTChapterInfoPtr = QTChapterInfoRecordPtr;
13374 	QTEvaluateExpressionRecordPtr = ^QTEvaluateExpressionRecord;
13375 	QTEvaluateExpressionRecord = record
13376 		expressionSpec: QTAtomSpec;
13377 		expressionResult: Float32Ptr;
13378 	end;
13379 type
13380 	QTEvaluateExpressionPtr = QTEvaluateExpressionRecordPtr;
13381 	QTEvaluateExpressionWithTypeRecordPtr = ^QTEvaluateExpressionWithTypeRecord;
13382 	QTEvaluateExpressionWithTypeRecord = record
13383 		recordSize: SIGNEDLONG;             { Size of structure (fill in at allocation) }
13384 		expressionSpec: QTAtomSpec;
13385 		expressionResult: Float32Ptr;
13386 		fetchAsType: SIGNEDLONG;
13387 		nonNumericResult: Handle;
13388                                               { Current size is 24 }
13389 	end;
13390 type
13391 	QTEvaluateExpressionWithTypePtr = QTEvaluateExpressionWithTypeRecordPtr;
13392 	QTFetchParameterAsRecordPtr = ^QTFetchParameterAsRecord;
13393 	QTFetchParameterAsRecord = record
13394 		paramListSpec: QTAtomSpec;
13395 		paramIndex: SIGNEDLONG;
13396 		paramType: SIGNEDLONG;
13397 		allowedFlags: SIGNEDLONG;
13398 		min: UnivPtr;
13399 		max: UnivPtr;
13400 		currentValue: UnivPtr;
13401 		newValue: UnivPtr;
13402 		isUnsignedValue: Boolean;
13403 	end;
13404 type
13405 	QTFetchParameterAsPtr = QTFetchParameterAsRecordPtr;
13406 	QTGetCursorByIDRecordPtr = ^QTGetCursorByIDRecord;
13407 	QTGetCursorByIDRecord = record
13408 		cursorID: SInt16;
13409 		colorCursorData: Handle;
13410 		reserved1: SIGNEDLONG;
13411 	end;
13412 type
13413 	QTGetCursorByIDPtr = QTGetCursorByIDRecordPtr;
13414 	QTDoScriptRecordPtr = ^QTDoScriptRecord;
13415 	QTDoScriptRecord = record
13416 		scriptTypeFlags: SIGNEDLONG;
13417 		command: CStringPtr;
13418 		arguments: CStringPtr;
13419 	end;
13420 type
13421 	QTDoScriptPtr = QTDoScriptRecordPtr;
13422 	QTRestartAtTimeRecordPtr = ^QTRestartAtTimeRecord;
13423 	QTRestartAtTimeRecord = record
13424 		startTime: TimeValue;              { time scale is the movie timescale}
13425 		rate: Fixed;                   { if rate is zero, the movie's current rate is maintained}
13426 	end;
13427 type
13428 	QTRestartAtTimePtr = QTRestartAtTimeRecordPtr;
13429 { values for paramType field of QTFetchParameterAsRecord}
13430 const
13431 	kFetchAsBooleanPtr = 1;
13432 	kFetchAsShortPtr = 2;
13433 	kFetchAsLongPtr = 3;
13434 	kFetchAsMatrixRecordPtr = 4;
13435 	kFetchAsModifierTrackGraphicsModeRecord = 5;
13436 	kFetchAsHandle = 6;
13437 	kFetchAsStr255 = 7;
13438 	kFetchAsFloatPtr = 8;
13439 	kFetchAsPointPtr = 9;
13440 	kFetchAsNewAtomContainer = 10;
13441 	kFetchAsQTEventRecordPtr = 11;
13442 	kFetchAsFixedPtr = 12;
13443 	kFetchAsSetControllerValuePtr = 13;
13444 	kFetchAsRgnHandle = 14;   { flipped to native}
13445 	kFetchAsComponentDescriptionPtr = 15;
13446 	kFetchAsCString = 16;
13447 
13448 const
13449 	kQTCursorOpenHand = -19183;
13450 	kQTCursorClosedHand = -19182;
13451 	kQTCursorPointingHand = -19181;
13452 	kQTCursorRightArrow = -19180;
13453 	kQTCursorLeftArrow = -19179;
13454 	kQTCursorDownArrow = -19178;
13455 	kQTCursorUpArrow = -19177;
13456 	kQTCursorIBeam = -19176;
13457 
13458 
13459 { keyboard focus items}
13460 
13461 const
13462 	kKeyboardAllowFocus = 1;
13463 	kKeyboardHaveFocus = 2;
13464 	kKeyboardValidate = 4;
13465 
13466 
13467 const
13468 	kRefConNavigateClick = FourCharCode('clik');
13469 
13470 
13471 type
13472 	QTKeyboardFocusRecordPtr = ^QTKeyboardFocusRecord;
13473 	QTKeyboardFocusRecord = record
13474 		recordSize: SIGNEDLONG;             { -> size of structure}
13475 		navigation: SIGNEDLONG;             { -> same as in MediaNavigateTargetRefCon}
13476 		focusRefCon: SIGNEDLONG;            { <-> refcon}
13477 		focusFlags: SInt16;             { <-> flags from kKeyboard... enum }
13478 	end;
13479 type
13480 	QTKeyboardFocusPtr = QTKeyboardFocusRecordPtr;
13481 const
13482 	kQTMCActionNotifyBefore = 1 shl 0;
13483 	kQTMCActionNotifyAfter = 1 shl 1;
13484 	kQTMCActionNotifyParamChanged = 1 shl 8;
13485 	kQTMCActionNotifyCancelled = 1 shl 9;
13486 	kQTMCActionNotifyUserFilterCancelled = 1 shl 10;
13487 	kQTMCActionNotifySignature = FourCharCode('noti');
13488 
13489 type
13490 	QTMCActionNotificationRecordPtr = ^QTMCActionNotificationRecord;
13491 	QTMCActionNotificationRecord = record
13492 		returnSignature: OSType;        { Set to zero when passed to movieController, set to 'noti' if mcActionAddActionNotification is implemented}
13493 		notifyAction: MCActionNotificationUPP;      { Function to be called at action time}
13494 		refcon: UnivPtr;                 { Something to pass to the action function}
13495 		flags: UInt32;                  { Option flags}
13496 	end;
13497 type
13498 	QTMCActionNotificationPtr = QTMCActionNotificationRecordPtr;
13499 	QTConnectionStatusRecordPtr = ^QTConnectionStatusRecord;
13500 	QTConnectionStatusRecord = record
13501 		flags: SInt16;
13502 		error: SInt16;
13503 
13504 		message: Handle;
13505 	end;
13506 type
13507 	QTConnectionStatusPtr = QTConnectionStatusRecordPtr;
13508 
13509 { target management }
13510 {
13511  *  MCSetMovie()
13512  *
13513  *  Availability:
13514  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13515  *    CarbonLib:        in CarbonLib 1.0 and later
13516  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13517  *    Windows:          in qtmlClient.lib 3.0 and later
13518  }
MCSetMovienull13519 function MCSetMovie( mc: MovieController; theMovie: Movie; movieWindow: WindowRef; where: Point ): ComponentResult; external name '_MCSetMovie';
13520 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13521 
13522 
13523 {
13524  *  MCGetIndMovie()
13525  *
13526  *  Availability:
13527  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13528  *    CarbonLib:        in CarbonLib 1.0 and later
13529  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13530  *    Windows:          in qtmlClient.lib 3.0 and later
13531  }
MCGetIndMovienull13532 function MCGetIndMovie( mc: MovieController; index: SInt16 ): Movie; external name '_MCGetIndMovie';
13533 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13534 
13535 
13536 {
13537  *  MCRemoveAllMovies()
13538  *
13539  *  Availability:
13540  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13541  *    CarbonLib:        in CarbonLib 1.0 and later
13542  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13543  *    Windows:          in qtmlClient.lib 3.0 and later
13544  }
MCRemoveAllMoviesnull13545 function MCRemoveAllMovies( mc: MovieController ): ComponentResult; external name '_MCRemoveAllMovies';
13546 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13547 
13548 
13549 {
13550  *  MCRemoveAMovie()
13551  *
13552  *  Availability:
13553  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13554  *    CarbonLib:        in CarbonLib 1.0 and later
13555  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13556  *    Windows:          in qtmlClient.lib 3.0 and later
13557  }
MCRemoveAMovienull13558 function MCRemoveAMovie( mc: MovieController; m: Movie ): ComponentResult; external name '_MCRemoveAMovie';
13559 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13560 
13561 
13562 {
13563  *  MCRemoveMovie()
13564  *
13565  *  Availability:
13566  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13567  *    CarbonLib:        in CarbonLib 1.0 and later
13568  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13569  *    Windows:          in qtmlClient.lib 3.0 and later
13570  }
MCRemoveMovienull13571 function MCRemoveMovie( mc: MovieController ): ComponentResult; external name '_MCRemoveMovie';
13572 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13573 
13574 
13575 { event handling etc. }
13576 {
13577  *  MCIsPlayerEvent()
13578  *
13579  *  Availability:
13580  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13581  *    CarbonLib:        in CarbonLib 1.0 and later
13582  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13583  *    Windows:          in qtmlClient.lib 3.0 and later
13584  }
MCIsPlayerEventnull13585 function MCIsPlayerEvent( mc: MovieController; const (*var*) e: EventRecord ): ComponentResult; external name '_MCIsPlayerEvent';
13586 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13587 
13588 
13589 { obsolete. use MCSetActionFilterWithRefCon instead. }
13590 {
13591  *  MCSetActionFilter()
13592  *
13593  *  Availability:
13594  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13595  *    CarbonLib:        in CarbonLib 1.0 and later
13596  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13597  *    Windows:          in qtmlClient.lib 3.0 and later
13598  }
MCSetActionFilternull13599 function MCSetActionFilter( mc: MovieController; blob: MCActionFilterUPP ): ComponentResult; external name '_MCSetActionFilter';
13600 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13601 
13602 
13603 {
13604     proc is of the form:
13605         Boolean userPlayerFilter(MovieController mc, short *action, void *params) =
13606     proc returns TRUE if it handles the action, FALSE if not
13607     action is passed as a VAR so that it could be changed by filter
13608     this is consistent with the current dialog manager stuff
13609     params is any potential parameters that go with the action
13610         such as set playback rate to xxx.
13611 }
13612 {
13613  *  MCDoAction()
13614  *
13615  *  Availability:
13616  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13617  *    CarbonLib:        in CarbonLib 1.0 and later
13618  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13619  *    Windows:          in qtmlClient.lib 3.0 and later
13620  }
MCDoActionnull13621 function MCDoAction( mc: MovieController; action: SInt16; params: UnivPtr ): ComponentResult; external name '_MCDoAction';
13622 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13623 
13624 
13625 { state type things }
13626 {
13627  *  MCSetControllerAttached()
13628  *
13629  *  Availability:
13630  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13631  *    CarbonLib:        in CarbonLib 1.0 and later
13632  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13633  *    Windows:          in qtmlClient.lib 3.0 and later
13634  }
MCSetControllerAttachednull13635 function MCSetControllerAttached( mc: MovieController; attach: Boolean ): ComponentResult; external name '_MCSetControllerAttached';
13636 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13637 
13638 
13639 {
13640  *  MCIsControllerAttached()
13641  *
13642  *  Availability:
13643  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13644  *    CarbonLib:        in CarbonLib 1.0 and later
13645  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13646  *    Windows:          in qtmlClient.lib 3.0 and later
13647  }
MCIsControllerAttachednull13648 function MCIsControllerAttached( mc: MovieController ): ComponentResult; external name '_MCIsControllerAttached';
13649 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13650 
13651 
13652 {
13653  *  MCSetControllerPort()
13654  *
13655  *  Availability:
13656  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13657  *    CarbonLib:        in CarbonLib 1.0 and later
13658  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13659  *    Windows:          in qtmlClient.lib 3.0 and later
13660  }
MCSetControllerPortnull13661 function MCSetControllerPort( mc: MovieController; gp: CGrafPtr ): ComponentResult; external name '_MCSetControllerPort';
13662 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13663 
13664 
13665 {
13666  *  MCGetControllerPort()
13667  *
13668  *  Availability:
13669  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13670  *    CarbonLib:        in CarbonLib 1.0 and later
13671  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13672  *    Windows:          in qtmlClient.lib 3.0 and later
13673  }
MCGetControllerPortnull13674 function MCGetControllerPort( mc: MovieController ): CGrafPtr; external name '_MCGetControllerPort';
13675 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13676 
13677 
13678 {
13679  *  MCSetVisible()
13680  *
13681  *  Availability:
13682  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13683  *    CarbonLib:        in CarbonLib 1.0 and later
13684  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13685  *    Windows:          in qtmlClient.lib 3.0 and later
13686  }
MCSetVisiblenull13687 function MCSetVisible( mc: MovieController; visible: Boolean ): ComponentResult; external name '_MCSetVisible';
13688 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13689 
13690 
13691 {
13692  *  MCGetVisible()
13693  *
13694  *  Availability:
13695  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13696  *    CarbonLib:        in CarbonLib 1.0 and later
13697  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13698  *    Windows:          in qtmlClient.lib 3.0 and later
13699  }
MCGetVisiblenull13700 function MCGetVisible( mc: MovieController ): ComponentResult; external name '_MCGetVisible';
13701 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13702 
13703 
13704 {
13705  *  MCGetControllerBoundsRect()
13706  *
13707  *  Availability:
13708  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13709  *    CarbonLib:        in CarbonLib 1.0 and later
13710  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13711  *    Windows:          in qtmlClient.lib 3.0 and later
13712  }
MCGetControllerBoundsRectnull13713 function MCGetControllerBoundsRect( mc: MovieController; var bounds: Rect ): ComponentResult; external name '_MCGetControllerBoundsRect';
13714 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13715 
13716 
13717 {
13718  *  MCSetControllerBoundsRect()
13719  *
13720  *  Availability:
13721  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13722  *    CarbonLib:        in CarbonLib 1.0 and later
13723  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13724  *    Windows:          in qtmlClient.lib 3.0 and later
13725  }
MCSetControllerBoundsRectnull13726 function MCSetControllerBoundsRect( mc: MovieController; const (*var*) bounds: Rect ): ComponentResult; external name '_MCSetControllerBoundsRect';
13727 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13728 
13729 
13730 {
13731  *  MCGetControllerBoundsRgn()
13732  *
13733  *  Availability:
13734  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13735  *    CarbonLib:        in CarbonLib 1.0 and later
13736  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13737  *    Windows:          in qtmlClient.lib 3.0 and later
13738  }
MCGetControllerBoundsRgnnull13739 function MCGetControllerBoundsRgn( mc: MovieController ): RgnHandle; external name '_MCGetControllerBoundsRgn';
13740 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13741 
13742 
13743 {
13744  *  MCGetWindowRgn()
13745  *
13746  *  Availability:
13747  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13748  *    CarbonLib:        in CarbonLib 1.0 and later
13749  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13750  *    Windows:          in qtmlClient.lib 3.0 and later
13751  }
MCGetWindowRgnnull13752 function MCGetWindowRgn( mc: MovieController; w: WindowRef ): RgnHandle; external name '_MCGetWindowRgn';
13753 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13754 
13755 
13756 { other stuff }
13757 {
13758  *  MCMovieChanged()
13759  *
13760  *  Availability:
13761  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13762  *    CarbonLib:        in CarbonLib 1.0 and later
13763  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13764  *    Windows:          in qtmlClient.lib 3.0 and later
13765  }
MCMovieChangednull13766 function MCMovieChanged( mc: MovieController; m: Movie ): ComponentResult; external name '_MCMovieChanged';
13767 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13768 
13769 
13770 {
13771     called when the app has changed thing about the movie (like bounding rect) or rate. So that we
13772         can update our graphical (and internal) state accordingly.
13773 }
13774 {
13775  *  MCSetDuration()
13776  *
13777  *  Availability:
13778  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13779  *    CarbonLib:        in CarbonLib 1.0 and later
13780  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13781  *    Windows:          in qtmlClient.lib 3.0 and later
13782  }
MCSetDurationnull13783 function MCSetDuration( mc: MovieController; duration: TimeValue ): ComponentResult; external name '_MCSetDuration';
13784 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13785 
13786 
13787 {
13788     duration to use for time slider -- will be reset next time MCMovieChanged is called
13789         or MCSetMovie is called
13790 }
13791 {
13792  *  MCGetCurrentTime()
13793  *
13794  *  Availability:
13795  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13796  *    CarbonLib:        in CarbonLib 1.0 and later
13797  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13798  *    Windows:          in qtmlClient.lib 3.0 and later
13799  }
MCGetCurrentTimenull13800 function MCGetCurrentTime( mc: MovieController; var scale: TimeScale ): TimeValue; external name '_MCGetCurrentTime';
13801 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13802 
13803 
13804 {
13805     returns the time value and the time scale it is on. if there are no movies, the
13806         time scale is passed back as 0. scale is an optional parameter
13807 
13808 }
13809 {
13810  *  MCNewAttachedController()
13811  *
13812  *  Availability:
13813  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13814  *    CarbonLib:        in CarbonLib 1.0 and later
13815  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13816  *    Windows:          in qtmlClient.lib 3.0 and later
13817  }
MCNewAttachedControllernull13818 function MCNewAttachedController( mc: MovieController; theMovie: Movie; w: WindowRef; where: Point ): ComponentResult; external name '_MCNewAttachedController';
13819 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13820 
13821 
13822 {
13823     makes theMovie the only movie attached to the controller. makes the controller visible.
13824     the window and where parameters are passed a long to MCSetMovie and behave as
13825     described there
13826 }
13827 {
13828  *  MCDraw()
13829  *
13830  *  Availability:
13831  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13832  *    CarbonLib:        in CarbonLib 1.0 and later
13833  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13834  *    Windows:          in qtmlClient.lib 3.0 and later
13835  }
MCDrawnull13836 function MCDraw( mc: MovieController; w: WindowRef ): ComponentResult; external name '_MCDraw';
13837 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13838 
13839 
13840 {
13841  *  MCActivate()
13842  *
13843  *  Availability:
13844  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13845  *    CarbonLib:        in CarbonLib 1.0 and later
13846  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13847  *    Windows:          in qtmlClient.lib 3.0 and later
13848  }
MCActivatenull13849 function MCActivate( mc: MovieController; w: WindowRef; activate: Boolean ): ComponentResult; external name '_MCActivate';
13850 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13851 
13852 
13853 {
13854  *  MCIdle()
13855  *
13856  *  Availability:
13857  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13858  *    CarbonLib:        in CarbonLib 1.0 and later
13859  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13860  *    Windows:          in qtmlClient.lib 3.0 and later
13861  }
MCIdlenull13862 function MCIdle( mc: MovieController ): ComponentResult; external name '_MCIdle';
13863 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13864 
13865 
13866 {
13867  *  MCKey()
13868  *
13869  *  Availability:
13870  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13871  *    CarbonLib:        in CarbonLib 1.0 and later
13872  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13873  *    Windows:          in qtmlClient.lib 3.0 and later
13874  }
MCKeynull13875 function MCKey( mc: MovieController; key: SInt8; modifiers: SIGNEDLONG ): ComponentResult; external name '_MCKey';
13876 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13877 
13878 
13879 {
13880  *  MCClick()
13881  *
13882  *  Availability:
13883  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13884  *    CarbonLib:        in CarbonLib 1.0 and later
13885  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13886  *    Windows:          in qtmlClient.lib 3.0 and later
13887  }
MCClicknull13888 function MCClick( mc: MovieController; w: WindowRef; where: Point; when: SIGNEDLONG; modifiers: SIGNEDLONG ): ComponentResult; external name '_MCClick';
13889 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13890 
13891 
13892 {
13893     calls for editing
13894 }
13895 {
13896  *  MCEnableEditing()
13897  *
13898  *  Availability:
13899  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13900  *    CarbonLib:        in CarbonLib 1.0 and later
13901  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13902  *    Windows:          in qtmlClient.lib 3.0 and later
13903  }
MCEnableEditingnull13904 function MCEnableEditing( mc: MovieController; enabled: Boolean ): ComponentResult; external name '_MCEnableEditing';
13905 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13906 
13907 
13908 {
13909  *  MCIsEditingEnabled()
13910  *
13911  *  Availability:
13912  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13913  *    CarbonLib:        in CarbonLib 1.0 and later
13914  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13915  *    Windows:          in qtmlClient.lib 3.0 and later
13916  }
MCIsEditingEnablednull13917 function MCIsEditingEnabled( mc: MovieController ): SIGNEDLONG; external name '_MCIsEditingEnabled';
13918 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13919 
13920 
13921 {
13922  *  MCCopy()
13923  *
13924  *  Availability:
13925  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13926  *    CarbonLib:        in CarbonLib 1.0 and later
13927  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13928  *    Windows:          in qtmlClient.lib 3.0 and later
13929  }
MCCopynull13930 function MCCopy( mc: MovieController ): Movie; external name '_MCCopy';
13931 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13932 
13933 
13934 {
13935  *  MCCut()
13936  *
13937  *  Availability:
13938  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13939  *    CarbonLib:        in CarbonLib 1.0 and later
13940  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13941  *    Windows:          in qtmlClient.lib 3.0 and later
13942  }
MCCutnull13943 function MCCut( mc: MovieController ): Movie; external name '_MCCut';
13944 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13945 
13946 
13947 {
13948  *  MCPaste()
13949  *
13950  *  Availability:
13951  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13952  *    CarbonLib:        in CarbonLib 1.0 and later
13953  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13954  *    Windows:          in qtmlClient.lib 3.0 and later
13955  }
MCPastenull13956 function MCPaste( mc: MovieController; srcMovie: Movie ): ComponentResult; external name '_MCPaste';
13957 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13958 
13959 
13960 {
13961  *  MCClear()
13962  *
13963  *  Availability:
13964  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13965  *    CarbonLib:        in CarbonLib 1.0 and later
13966  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13967  *    Windows:          in qtmlClient.lib 3.0 and later
13968  }
MCClearnull13969 function MCClear( mc: MovieController ): ComponentResult; external name '_MCClear';
13970 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13971 
13972 
13973 {
13974  *  MCUndo()
13975  *
13976  *  Availability:
13977  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13978  *    CarbonLib:        in CarbonLib 1.0 and later
13979  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13980  *    Windows:          in qtmlClient.lib 3.0 and later
13981  }
MCUndonull13982 function MCUndo( mc: MovieController ): ComponentResult; external name '_MCUndo';
13983 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
13984 
13985 
13986 {
13987  *  somewhat special stuff
13988  }
13989 {
13990  *  MCPositionController()
13991  *
13992  *  Availability:
13993  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
13994  *    CarbonLib:        in CarbonLib 1.0 and later
13995  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
13996  *    Windows:          in qtmlClient.lib 3.0 and later
13997  }
MCPositionControllernull13998 function MCPositionController( mc: MovieController; const (*var*) movieRect: Rect; const (*var*) controllerRect: Rect; someFlags: SIGNEDLONG ): ComponentResult; external name '_MCPositionController';
13999 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14000 
14001 
14002 {
14003  *  MCGetControllerInfo()
14004  *
14005  *  Availability:
14006  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14007  *    CarbonLib:        in CarbonLib 1.0 and later
14008  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14009  *    Windows:          in qtmlClient.lib 3.0 and later
14010  }
MCGetControllerInfonull14011 function MCGetControllerInfo( mc: MovieController; var someFlags: SIGNEDLONG ): ComponentResult; external name '_MCGetControllerInfo';
14012 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14013 
14014 
14015 {
14016  *  MCSetClip()
14017  *
14018  *  Availability:
14019  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14020  *    CarbonLib:        in CarbonLib 1.0 and later
14021  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14022  *    Windows:          in qtmlClient.lib 3.0 and later
14023  }
MCSetClipnull14024 function MCSetClip( mc: MovieController; theClip: RgnHandle; movieClip: RgnHandle ): ComponentResult; external name '_MCSetClip';
14025 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14026 
14027 
14028 {
14029  *  MCGetClip()
14030  *
14031  *  Availability:
14032  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14033  *    CarbonLib:        in CarbonLib 1.0 and later
14034  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14035  *    Windows:          in qtmlClient.lib 3.0 and later
14036  }
MCGetClipnull14037 function MCGetClip( mc: MovieController; var theClip: RgnHandle; var movieClip: RgnHandle ): ComponentResult; external name '_MCGetClip';
14038 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14039 
14040 
14041 {
14042  *  MCDrawBadge()
14043  *
14044  *  Availability:
14045  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14046  *    CarbonLib:        in CarbonLib 1.0 and later
14047  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14048  *    Windows:          in qtmlClient.lib 3.0 and later
14049  }
MCDrawBadgenull14050 function MCDrawBadge( mc: MovieController; movieRgn: RgnHandle; var badgeRgn: RgnHandle ): ComponentResult; external name '_MCDrawBadge';
14051 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14052 
14053 
14054 {
14055  *  MCSetUpEditMenu()
14056  *
14057  *  Availability:
14058  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14059  *    CarbonLib:        in CarbonLib 1.0 and later
14060  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14061  *    Windows:          in qtmlClient.lib 3.0 and later
14062  }
MCSetUpEditMenunull14063 function MCSetUpEditMenu( mc: MovieController; modifiers: SIGNEDLONG; mh: MenuRef ): ComponentResult; external name '_MCSetUpEditMenu';
14064 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14065 
14066 
14067 {
14068  *  MCGetMenuString()
14069  *
14070  *  Availability:
14071  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14072  *    CarbonLib:        in CarbonLib 1.0 and later
14073  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14074  *    Windows:          in qtmlClient.lib 3.0 and later
14075  }
MCGetMenuStringnull14076 function MCGetMenuString( mc: MovieController; modifiers: SIGNEDLONG; item: SInt16; var aString: Str255 ): ComponentResult; external name '_MCGetMenuString';
14077 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14078 
14079 
14080 {
14081  *  MCSetActionFilterWithRefCon()
14082  *
14083  *  Availability:
14084  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14085  *    CarbonLib:        in CarbonLib 1.0 and later
14086  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14087  *    Windows:          in qtmlClient.lib 3.0 and later
14088  }
MCSetActionFilterWithRefConnull14089 function MCSetActionFilterWithRefCon( mc: MovieController; blob: MCActionFilterWithRefConUPP; refCon: SIGNEDLONG ): ComponentResult; external name '_MCSetActionFilterWithRefCon';
14090 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14091 
14092 
14093 {
14094  *  MCPtInController()
14095  *
14096  *  Availability:
14097  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14098  *    CarbonLib:        in CarbonLib 1.0 and later
14099  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14100  *    Windows:          in qtmlClient.lib 3.0 and later
14101  }
MCPtInControllernull14102 function MCPtInController( mc: MovieController; thePt: Point; var inController: Boolean ): ComponentResult; external name '_MCPtInController';
14103 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14104 
14105 
14106 {
14107  *  MCInvalidate()
14108  *
14109  *  Availability:
14110  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14111  *    CarbonLib:        in CarbonLib 1.0 and later
14112  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14113  *    Windows:          in qtmlClient.lib 3.0 and later
14114  }
MCInvalidatenull14115 function MCInvalidate( mc: MovieController; w: WindowRef; invalidRgn: RgnHandle ): ComponentResult; external name '_MCInvalidate';
14116 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14117 
14118 
14119 {
14120  *  MCAdjustCursor()
14121  *
14122  *  Availability:
14123  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14124  *    CarbonLib:        in CarbonLib 1.0 and later
14125  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
14126  *    Windows:          in qtmlClient.lib 3.0 and later
14127  }
MCAdjustCursornull14128 function MCAdjustCursor( mc: MovieController; w: WindowRef; where: Point; modifiers: SIGNEDLONG ): ComponentResult; external name '_MCAdjustCursor';
14129 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14130 
14131 
14132 {
14133  *  MCGetInterfaceElement()
14134  *
14135  *  Availability:
14136  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14137  *    CarbonLib:        in CarbonLib 1.0 and later
14138  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
14139  *    Windows:          in qtmlClient.lib 3.0 and later
14140  }
MCGetInterfaceElementnull14141 function MCGetInterfaceElement( mc: MovieController; whichElement: MCInterfaceElement; element: UnivPtr ): ComponentResult; external name '_MCGetInterfaceElement';
14142 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14143 
14144 
14145 {
14146  *  MCGetDoActionsProc()
14147  *
14148  *  Availability:
14149  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14150  *    CarbonLib:        in CarbonLib 1.0.2 and later
14151  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
14152  *    Windows:          in qtmlClient.lib 4.0 and later
14153  }
MCGetDoActionsProcnull14154 function MCGetDoActionsProc( mc: MovieController; var doMCActionProc: DoMCActionUPP; var doMCActionRefCon: SIGNEDLONG ): ComponentResult; external name '_MCGetDoActionsProc';
14155 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14156 
14157 
14158 {
14159  *  MCAddMovieSegment()
14160  *
14161  *  Availability:
14162  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14163  *    CarbonLib:        in CarbonLib 1.3 and later
14164  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
14165  *    Windows:          in qtmlClient.lib 5.0 and later
14166  }
MCAddMovieSegmentnull14167 function MCAddMovieSegment( mc: MovieController; srcMovie: Movie; scaled: Boolean ): ComponentResult; external name '_MCAddMovieSegment';
14168 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14169 
14170 
14171 {
14172  *  MCTrimMovieSegment()
14173  *
14174  *  Availability:
14175  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14176  *    CarbonLib:        in CarbonLib 1.3 and later
14177  *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
14178  *    Windows:          in qtmlClient.lib 5.0 and later
14179  }
MCTrimMovieSegmentnull14180 function MCTrimMovieSegment( mc: MovieController ): ComponentResult; external name '_MCTrimMovieSegment';
14181 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14182 
14183 
14184 {
14185  *  MCSetIdleManager()
14186  *
14187  *  Availability:
14188  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
14189  *    CarbonLib:        in CarbonLib 1.6 and later
14190  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
14191  *    Windows:          in qtmlClient.lib 6.0 and later
14192  }
MCSetIdleManagernull14193 function MCSetIdleManager( mc: MovieController; im: IdleManager ): ComponentResult; external name '_MCSetIdleManager';
14194 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
14195 
14196 
14197 { Called (but not implemented) by controllers that derive from the standard movie controller.
14198    All controllers except standard movie controller must delegate this call. }
14199 const
14200 	kControllerUnderstandsIdleManagers = 1 shl 0;
14201 
14202 {
14203  *  MCSetControllerCapabilities()
14204  *
14205  *  Availability:
14206  *    Mac OS X:         in version 10.2 and later in QuickTime.framework
14207  *    CarbonLib:        in CarbonLib 1.6 and later
14208  *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
14209  *    Windows:          in qtmlClient.lib 6.0 and later
14210  }
MCSetControllerCapabilitiesnull14211 function MCSetControllerCapabilities( mc: MovieController; flags: SIGNEDLONG; flagsMask: SIGNEDLONG ): ComponentResult; external name '_MCSetControllerCapabilities';
14212 (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
14213 
14214 
14215 {***************************************
14216 *                                       *
14217 *       T  I  M  E  B  A  S  E          *
14218 *                                       *
14219 ***************************************}
14220 {
14221  *  NewTimeBase()
14222  *
14223  *  Availability:
14224  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14225  *    CarbonLib:        in CarbonLib 1.0 and later
14226  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14227  *    Windows:          in qtmlClient.lib 3.0 and later
14228  }
NewTimeBasenull14229 function NewTimeBase: TimeBase; external name '_NewTimeBase';
14230 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14231 
14232 
14233 {
14234  *  DisposeTimeBase()
14235  *
14236  *  Availability:
14237  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14238  *    CarbonLib:        in CarbonLib 1.0 and later
14239  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14240  *    Windows:          in qtmlClient.lib 3.0 and later
14241  }
14242 procedure DisposeTimeBase( tb: TimeBase ); external name '_DisposeTimeBase';
14243 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14244 
14245 
14246 {
14247  *  GetTimeBaseTime()
14248  *
14249  *  Availability:
14250  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14251  *    CarbonLib:        in CarbonLib 1.0 and later
14252  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14253  *    Windows:          in qtmlClient.lib 3.0 and later
14254  }
GetTimeBaseTimenull14255 function GetTimeBaseTime( tb: TimeBase; s: TimeScale; var tr: TimeRecord ): TimeValue; external name '_GetTimeBaseTime';
14256 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14257 
14258 
14259 {
14260  *  SetTimeBaseTime()
14261  *
14262  *  Availability:
14263  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14264  *    CarbonLib:        in CarbonLib 1.0 and later
14265  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14266  *    Windows:          in qtmlClient.lib 3.0 and later
14267  }
14268 procedure SetTimeBaseTime( tb: TimeBase; const (*var*) tr: TimeRecord ); external name '_SetTimeBaseTime';
14269 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14270 
14271 
14272 {
14273  *  SetTimeBaseValue()
14274  *
14275  *  Availability:
14276  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14277  *    CarbonLib:        in CarbonLib 1.0 and later
14278  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14279  *    Windows:          in qtmlClient.lib 3.0 and later
14280  }
14281 procedure SetTimeBaseValue( tb: TimeBase; t: TimeValue; s: TimeScale ); external name '_SetTimeBaseValue';
14282 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14283 
14284 
14285 {
14286  *  GetTimeBaseRate()
14287  *
14288  *  Availability:
14289  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14290  *    CarbonLib:        in CarbonLib 1.0 and later
14291  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14292  *    Windows:          in qtmlClient.lib 3.0 and later
14293  }
GetTimeBaseRatenull14294 function GetTimeBaseRate( tb: TimeBase ): Fixed; external name '_GetTimeBaseRate';
14295 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14296 
14297 
14298 {
14299  *  SetTimeBaseRate()
14300  *
14301  *  Availability:
14302  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14303  *    CarbonLib:        in CarbonLib 1.0 and later
14304  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14305  *    Windows:          in qtmlClient.lib 3.0 and later
14306  }
14307 procedure SetTimeBaseRate( tb: TimeBase; r: Fixed ); external name '_SetTimeBaseRate';
14308 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14309 
14310 
14311 {
14312  *  GetTimeBaseStartTime()
14313  *
14314  *  Availability:
14315  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14316  *    CarbonLib:        in CarbonLib 1.0 and later
14317  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14318  *    Windows:          in qtmlClient.lib 3.0 and later
14319  }
GetTimeBaseStartTimenull14320 function GetTimeBaseStartTime( tb: TimeBase; s: TimeScale; var tr: TimeRecord ): TimeValue; external name '_GetTimeBaseStartTime';
14321 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14322 
14323 
14324 {
14325  *  SetTimeBaseStartTime()
14326  *
14327  *  Availability:
14328  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14329  *    CarbonLib:        in CarbonLib 1.0 and later
14330  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14331  *    Windows:          in qtmlClient.lib 3.0 and later
14332  }
14333 procedure SetTimeBaseStartTime( tb: TimeBase; const (*var*) tr: TimeRecord ); external name '_SetTimeBaseStartTime';
14334 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14335 
14336 
14337 {
14338  *  GetTimeBaseStopTime()
14339  *
14340  *  Availability:
14341  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14342  *    CarbonLib:        in CarbonLib 1.0 and later
14343  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14344  *    Windows:          in qtmlClient.lib 3.0 and later
14345  }
GetTimeBaseStopTimenull14346 function GetTimeBaseStopTime( tb: TimeBase; s: TimeScale; var tr: TimeRecord ): TimeValue; external name '_GetTimeBaseStopTime';
14347 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14348 
14349 
14350 {
14351  *  SetTimeBaseStopTime()
14352  *
14353  *  Availability:
14354  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14355  *    CarbonLib:        in CarbonLib 1.0 and later
14356  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14357  *    Windows:          in qtmlClient.lib 3.0 and later
14358  }
14359 procedure SetTimeBaseStopTime( tb: TimeBase; const (*var*) tr: TimeRecord ); external name '_SetTimeBaseStopTime';
14360 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14361 
14362 
14363 {
14364  *  GetTimeBaseFlags()
14365  *
14366  *  Availability:
14367  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14368  *    CarbonLib:        in CarbonLib 1.0 and later
14369  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14370  *    Windows:          in qtmlClient.lib 3.0 and later
14371  }
GetTimeBaseFlagsnull14372 function GetTimeBaseFlags( tb: TimeBase ): SIGNEDLONG; external name '_GetTimeBaseFlags';
14373 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14374 
14375 
14376 {
14377  *  SetTimeBaseFlags()
14378  *
14379  *  Availability:
14380  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14381  *    CarbonLib:        in CarbonLib 1.0 and later
14382  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14383  *    Windows:          in qtmlClient.lib 3.0 and later
14384  }
14385 procedure SetTimeBaseFlags( tb: TimeBase; timeBaseFlags: SIGNEDLONG ); external name '_SetTimeBaseFlags';
14386 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14387 
14388 
14389 {
14390  *  SetTimeBaseMasterTimeBase()
14391  *
14392  *  Availability:
14393  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14394  *    CarbonLib:        in CarbonLib 1.0 and later
14395  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14396  *    Windows:          in qtmlClient.lib 3.0 and later
14397  }
14398 procedure SetTimeBaseMasterTimeBase( slave: TimeBase; master: TimeBase; const (*var*) slaveZero: TimeRecord ); external name '_SetTimeBaseMasterTimeBase';
14399 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14400 
14401 
14402 {
14403  *  GetTimeBaseMasterTimeBase()
14404  *
14405  *  Availability:
14406  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14407  *    CarbonLib:        in CarbonLib 1.0 and later
14408  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14409  *    Windows:          in qtmlClient.lib 3.0 and later
14410  }
GetTimeBaseMasterTimeBasenull14411 function GetTimeBaseMasterTimeBase( tb: TimeBase ): TimeBase; external name '_GetTimeBaseMasterTimeBase';
14412 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14413 
14414 
14415 {
14416  *  SetTimeBaseMasterClock()
14417  *
14418  *  Availability:
14419  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14420  *    CarbonLib:        in CarbonLib 1.0 and later
14421  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14422  *    Windows:          in qtmlClient.lib 3.0 and later
14423  }
14424 procedure SetTimeBaseMasterClock( slave: TimeBase; clockMeister: Component; const (*var*) slaveZero: TimeRecord ); external name '_SetTimeBaseMasterClock';
14425 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14426 
14427 
14428 {
14429  *  GetTimeBaseMasterClock()
14430  *
14431  *  Availability:
14432  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14433  *    CarbonLib:        in CarbonLib 1.0 and later
14434  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14435  *    Windows:          in qtmlClient.lib 3.0 and later
14436  }
GetTimeBaseMasterClocknull14437 function GetTimeBaseMasterClock( tb: TimeBase ): ComponentInstance; external name '_GetTimeBaseMasterClock';
14438 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14439 
14440 
14441 {
14442  *  ConvertTime()
14443  *
14444  *  Availability:
14445  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14446  *    CarbonLib:        in CarbonLib 1.0 and later
14447  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14448  *    Windows:          in qtmlClient.lib 3.0 and later
14449  }
14450 procedure ConvertTime( var theTime: TimeRecord; newBase: TimeBase ); external name '_ConvertTime';
14451 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14452 
14453 
14454 {
14455  *  ConvertTimeScale()
14456  *
14457  *  Availability:
14458  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14459  *    CarbonLib:        in CarbonLib 1.0 and later
14460  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14461  *    Windows:          in qtmlClient.lib 3.0 and later
14462  }
14463 procedure ConvertTimeScale( var theTime: TimeRecord; newScale: TimeScale ); external name '_ConvertTimeScale';
14464 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14465 
14466 
14467 {
14468  *  AddTime()
14469  *
14470  *  Availability:
14471  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14472  *    CarbonLib:        in CarbonLib 1.0 and later
14473  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14474  *    Windows:          in qtmlClient.lib 3.0 and later
14475  }
14476 procedure AddTime( var dst: TimeRecord; const (*var*) src: TimeRecord ); external name '_AddTime';
14477 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14478 
14479 
14480 {
14481  *  SubtractTime()
14482  *
14483  *  Availability:
14484  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14485  *    CarbonLib:        in CarbonLib 1.0 and later
14486  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14487  *    Windows:          in qtmlClient.lib 3.0 and later
14488  }
14489 procedure SubtractTime( var dst: TimeRecord; const (*var*) src: TimeRecord ); external name '_SubtractTime';
14490 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14491 
14492 
14493 {
14494  *  GetTimeBaseStatus()
14495  *
14496  *  Availability:
14497  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14498  *    CarbonLib:        in CarbonLib 1.0 and later
14499  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14500  *    Windows:          in qtmlClient.lib 3.0 and later
14501  }
GetTimeBaseStatusnull14502 function GetTimeBaseStatus( tb: TimeBase; var unpinnedTime: TimeRecord ): SIGNEDLONG; external name '_GetTimeBaseStatus';
14503 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14504 
14505 
14506 {
14507  *  SetTimeBaseZero()
14508  *
14509  *  Availability:
14510  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14511  *    CarbonLib:        in CarbonLib 1.0 and later
14512  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14513  *    Windows:          in qtmlClient.lib 3.0 and later
14514  }
14515 procedure SetTimeBaseZero( tb: TimeBase; var zero: TimeRecord ); external name '_SetTimeBaseZero';
14516 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14517 
14518 
14519 {
14520  *  GetTimeBaseEffectiveRate()
14521  *
14522  *  Availability:
14523  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14524  *    CarbonLib:        in CarbonLib 1.0 and later
14525  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14526  *    Windows:          in qtmlClient.lib 3.0 and later
14527  }
GetTimeBaseEffectiveRatenull14528 function GetTimeBaseEffectiveRate( tb: TimeBase ): Fixed; external name '_GetTimeBaseEffectiveRate';
14529 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14530 
14531 
14532 {
14533  *  GetTimeBaseRateChangeStatus()
14534  *
14535  *  Availability:
14536  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14537  *    CarbonLib:        not available
14538  *    Non-Carbon CFM:   not available
14539  *    Windows:          in qtmlClient.lib 6.5 and later
14540  }
GetTimeBaseRateChangeStatusnull14541 function GetTimeBaseRateChangeStatus( tb: TimeBase; scale: TimeScale; var ratedChangedTo: Fixed; var flags: TimeBaseStatus; var rateChangeTimeBaseTime: TimeRecord; var rateChangeClockTime: TimeRecord; var currentClockTime: TimeRecord ): OSErr; external name '_GetTimeBaseRateChangeStatus';
14542 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14543 
14544 
14545 {
14546  *  ConvertTimeToClockTime()
14547  *
14548  *  Availability:
14549  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14550  *    CarbonLib:        not available
14551  *    Non-Carbon CFM:   not available
14552  *    Windows:          in qtmlClient.lib 6.5 and later
14553  }
14554 procedure ConvertTimeToClockTime( var time: TimeRecord ); external name '_ConvertTimeToClockTime';
14555 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14556 
14557 
14558 {
14559  *  GetTimeBaseMasterOffsetTimeBase()
14560  *
14561  *  Availability:
14562  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14563  *    CarbonLib:        not available
14564  *    Non-Carbon CFM:   not available
14565  *    Windows:          in qtmlClient.lib 6.5 and later
14566  }
GetTimeBaseMasterOffsetTimeBasenull14567 function GetTimeBaseMasterOffsetTimeBase( tb: TimeBase ): TimeBase; external name '_GetTimeBaseMasterOffsetTimeBase';
14568 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14569 
14570 
14571 {
14572  *  SetTimeBaseOffsetTimeBase()
14573  *
14574  *  Availability:
14575  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14576  *    CarbonLib:        not available
14577  *    Non-Carbon CFM:   not available
14578  *    Windows:          in qtmlClient.lib 6.5 and later
14579  }
SetTimeBaseOffsetTimeBasenull14580 function SetTimeBaseOffsetTimeBase( tb: TimeBase; offsettb: TimeBase; const (*var*) offsetZero: TimeRecord ): OSErr; external name '_SetTimeBaseOffsetTimeBase';
14581 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14582 
14583 
14584 {
14585  *  AttachTimeBaseToCurrentThread()
14586  *
14587  *  Availability:
14588  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14589  *    CarbonLib:        not available
14590  *    Non-Carbon CFM:   not available
14591  }
AttachTimeBaseToCurrentThreadnull14592 function AttachTimeBaseToCurrentThread( tb: TimeBase ): OSErr; external name '_AttachTimeBaseToCurrentThread';
14593 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14594 
14595 
14596 {
14597  *  DetachTimeBaseFromCurrentThread()
14598  *
14599  *  Availability:
14600  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14601  *    CarbonLib:        not available
14602  *    Non-Carbon CFM:   not available
14603  }
DetachTimeBaseFromCurrentThreadnull14604 function DetachTimeBaseFromCurrentThread( tb: TimeBase ): OSErr; external name '_DetachTimeBaseFromCurrentThread';
14605 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14606 
14607 
14608 {
14609  *  GetTimeBaseThreadAttachState()
14610  *
14611  *  Availability:
14612  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14613  *    CarbonLib:        not available
14614  *    Non-Carbon CFM:   not available
14615  }
GetTimeBaseThreadAttachStatenull14616 function GetTimeBaseThreadAttachState( inTimeBase: TimeBase; var outAttachedToCurrentThread: Boolean; var outAttachedToAnyThread: Boolean ): OSErr; external name '_GetTimeBaseThreadAttachState';
14617 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14618 
14619 
14620 {***************************************
14621 *                                       *
14622 *       C  A  L  L  B  A  C  K          *
14623 *                                       *
14624 ***************************************}
14625 {
14626  *  NewCallBack()
14627  *
14628  *  Availability:
14629  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14630  *    CarbonLib:        in CarbonLib 1.0 and later
14631  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14632  *    Windows:          in qtmlClient.lib 3.0 and later
14633  }
NewCallBacknull14634 function NewCallBack( tb: TimeBase; cbType: SInt16 ): QTCallBack; external name '_NewCallBack';
14635 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14636 
14637 
14638 {
14639  *  DisposeCallBack()
14640  *
14641  *  Availability:
14642  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14643  *    CarbonLib:        in CarbonLib 1.0 and later
14644  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14645  *    Windows:          in qtmlClient.lib 3.0 and later
14646  }
14647 procedure DisposeCallBack( cb: QTCallBack ); external name '_DisposeCallBack';
14648 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14649 
14650 
14651 {
14652  *  GetCallBackType()
14653  *
14654  *  Availability:
14655  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14656  *    CarbonLib:        in CarbonLib 1.0 and later
14657  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14658  *    Windows:          in qtmlClient.lib 3.0 and later
14659  }
GetCallBackTypenull14660 function GetCallBackType( cb: QTCallBack ): SInt16; external name '_GetCallBackType';
14661 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14662 
14663 
14664 {
14665  *  GetCallBackTimeBase()
14666  *
14667  *  Availability:
14668  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14669  *    CarbonLib:        in CarbonLib 1.0 and later
14670  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14671  *    Windows:          in qtmlClient.lib 3.0 and later
14672  }
GetCallBackTimeBasenull14673 function GetCallBackTimeBase( cb: QTCallBack ): TimeBase; external name '_GetCallBackTimeBase';
14674 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14675 
14676 
14677 {
14678  *  CallMeWhen()
14679  *
14680  *  Availability:
14681  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14682  *    CarbonLib:        in CarbonLib 1.0 and later
14683  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14684  *    Windows:          in qtmlClient.lib 3.0 and later
14685  }
CallMeWhennull14686 function CallMeWhen( cb: QTCallBack; callBackProc: QTCallBackUPP; refCon: SIGNEDLONG; param1: SIGNEDLONG; param2: SIGNEDLONG; param3: SIGNEDLONG ): OSErr; external name '_CallMeWhen';
14687 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14688 
14689 
14690 {
14691  *  CancelCallBack()
14692  *
14693  *  Availability:
14694  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14695  *    CarbonLib:        in CarbonLib 1.0 and later
14696  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14697  *    Windows:          in qtmlClient.lib 3.0 and later
14698  }
14699 procedure CancelCallBack( cb: QTCallBack ); external name '_CancelCallBack';
14700 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14701 
14702 
14703 {***************************************
14704 *                                       *
14705 *       C L O C K   C A L L B A C K     *
14706 *             S U P P O R T             *
14707 *                                       *
14708 ***************************************}
14709 {
14710  *  AddCallBackToTimeBase()
14711  *
14712  *  Availability:
14713  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14714  *    CarbonLib:        in CarbonLib 1.0 and later
14715  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14716  *    Windows:          in qtmlClient.lib 3.0 and later
14717  }
AddCallBackToTimeBasenull14718 function AddCallBackToTimeBase( cb: QTCallBack ): OSErr; external name '_AddCallBackToTimeBase';
14719 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14720 
14721 
14722 {
14723  *  RemoveCallBackFromTimeBase()
14724  *
14725  *  Availability:
14726  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14727  *    CarbonLib:        in CarbonLib 1.0 and later
14728  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14729  *    Windows:          in qtmlClient.lib 3.0 and later
14730  }
RemoveCallBackFromTimeBasenull14731 function RemoveCallBackFromTimeBase( cb: QTCallBack ): OSErr; external name '_RemoveCallBackFromTimeBase';
14732 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14733 
14734 
14735 {
14736  *  GetFirstCallBack()
14737  *
14738  *  Availability:
14739  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14740  *    CarbonLib:        in CarbonLib 1.0 and later
14741  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14742  *    Windows:          in qtmlClient.lib 3.0 and later
14743  }
GetFirstCallBacknull14744 function GetFirstCallBack( tb: TimeBase ): QTCallBack; external name '_GetFirstCallBack';
14745 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14746 
14747 
14748 {
14749  *  GetNextCallBack()
14750  *
14751  *  Availability:
14752  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14753  *    CarbonLib:        in CarbonLib 1.0 and later
14754  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14755  *    Windows:          in qtmlClient.lib 3.0 and later
14756  }
GetNextCallBacknull14757 function GetNextCallBack( cb: QTCallBack ): QTCallBack; external name '_GetNextCallBack';
14758 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14759 
14760 
14761 {
14762  *  ExecuteCallBack()
14763  *
14764  *  Availability:
14765  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
14766  *    CarbonLib:        in CarbonLib 1.0 and later
14767  *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
14768  *    Windows:          in qtmlClient.lib 3.0 and later
14769  }
14770 procedure ExecuteCallBack( cb: QTCallBack ); external name '_ExecuteCallBack';
14771 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
14772 
14773 
14774 {***************************************
14775 *                                       *
14776 *   M O V I E  P R O P E R T I E S      *
14777 *                                       *
14778 ***************************************}
14779 
14780 type
14781 	QTMoviePropertyListenerProcPtr = procedure( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inUserData: UnivPtr );
14782 	QTMoviePropertyListenerUPP = QTMoviePropertyListenerProcPtr;
14783 {
14784  *  QTGetMoviePropertyInfo()
14785  *
14786  *  Availability:
14787  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14788  *    CarbonLib:        not available
14789  *    Non-Carbon CFM:   not available
14790  }
QTGetMoviePropertyInfonull14791 function QTGetMoviePropertyInfo( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; var outPropType: QTPropertyValueType; var outPropValueSize: ByteCount; var outPropertyFlags: UInt32 ): OSErr; external name '_QTGetMoviePropertyInfo';
14792 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14793 
14794 
14795 {
14796  *  QTGetMovieProperty()
14797  *
14798  *  Availability:
14799  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14800  *    CarbonLib:        not available
14801  *    Non-Carbon CFM:   not available
14802  }
QTGetMoviePropertynull14803 function QTGetMovieProperty( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; var outPropValueSizeUsed: ByteCount ): OSErr; external name '_QTGetMovieProperty';
14804 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14805 
14806 
14807 {
14808  *  QTSetMovieProperty()
14809  *
14810  *  Availability:
14811  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14812  *    CarbonLib:        not available
14813  *    Non-Carbon CFM:   not available
14814  }
QTSetMoviePropertynull14815 function QTSetMovieProperty( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSErr; external name '_QTSetMovieProperty';
14816 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14817 
14818 
14819 {
14820  *  QTAddMoviePropertyListener()
14821  *
14822  *  Availability:
14823  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14824  *    CarbonLib:        not available
14825  *    Non-Carbon CFM:   not available
14826  }
QTAddMoviePropertyListenernull14827 function QTAddMoviePropertyListener( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inListenerProc: QTMoviePropertyListenerUPP; inUserData: UnivPtr ): OSErr; external name '_QTAddMoviePropertyListener';
14828 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14829 
14830 
14831 {
14832  *  QTRemoveMoviePropertyListener()
14833  *
14834  *  Availability:
14835  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
14836  *    CarbonLib:        not available
14837  *    Non-Carbon CFM:   not available
14838  }
QTRemoveMoviePropertyListenernull14839 function QTRemoveMoviePropertyListener( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inListenerProc: QTMoviePropertyListenerUPP; inUserData: UnivPtr ): OSErr; external name '_QTRemoveMoviePropertyListener';
14840 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
14841 
14842 
14843 {***************************************
14844 *                                       *
14845 *   T R A C K  P R O P E R T I E S      *
14846 *                                       *
14847 ***************************************}
14848 
14849 type
14850 	QTTrackPropertyListenerProcPtr = procedure( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inUserData: UnivPtr );
14851 	QTTrackPropertyListenerUPP = QTTrackPropertyListenerProcPtr;
14852 {
14853  *  QTGetTrackPropertyInfo()
14854  *
14855  *  Availability:
14856  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14857  *    CarbonLib:        not available
14858  *    Non-Carbon CFM:   not available
14859  }
QTGetTrackPropertyInfonull14860 function QTGetTrackPropertyInfo( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; var outPropType: QTPropertyValueType; var outPropValueSize: ByteCount; var outPropertyFlags: UInt32 ): OSErr; external name '_QTGetTrackPropertyInfo';
14861 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14862 
14863 
14864 {
14865  *  QTGetTrackProperty()
14866  *
14867  *  Availability:
14868  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14869  *    CarbonLib:        not available
14870  *    Non-Carbon CFM:   not available
14871  }
QTGetTrackPropertynull14872 function QTGetTrackProperty( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; var outPropValueSizeUsed: ByteCount ): OSErr; external name '_QTGetTrackProperty';
14873 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14874 
14875 
14876 {
14877  *  QTSetTrackProperty()
14878  *
14879  *  Availability:
14880  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14881  *    CarbonLib:        not available
14882  *    Non-Carbon CFM:   not available
14883  }
QTSetTrackPropertynull14884 function QTSetTrackProperty( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSErr; external name '_QTSetTrackProperty';
14885 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14886 
14887 
14888 {
14889  *  QTAddTrackPropertyListener()
14890  *
14891  *  Availability:
14892  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14893  *    CarbonLib:        not available
14894  *    Non-Carbon CFM:   not available
14895  }
QTAddTrackPropertyListenernull14896 function QTAddTrackPropertyListener( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inListenerProc: QTTrackPropertyListenerUPP; inUserData: UnivPtr ): OSErr; external name '_QTAddTrackPropertyListener';
14897 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14898 
14899 
14900 {
14901  *  QTRemoveTrackPropertyListener()
14902  *
14903  *  Availability:
14904  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14905  *    CarbonLib:        not available
14906  *    Non-Carbon CFM:   not available
14907  }
QTRemoveTrackPropertyListenernull14908 function QTRemoveTrackPropertyListener( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inListenerProc: QTTrackPropertyListenerUPP; inUserData: UnivPtr ): OSErr; external name '_QTRemoveTrackPropertyListener';
14909 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14910 
14911 
14912 {***************************************
14913 *                                       *
14914 *     Q T S A M P L E T A B L E         *
14915 *                                       *
14916 ***************************************}
14917 
14918 type
14919 	QTSampleDescriptionID = SIGNEDLONG;
14920 {
14921  *  QTSampleTableCreateMutable()
14922  *
14923  *  Summary:
14924  *    Creates a new empty sample table.
14925  *
14926  *  Discussion:
14927  *    The newly created sample table will contain no sample references.
14928  *    When sample references are added, their durations and display
14929  *    offsets will be interpreted according to the sample table's
14930  *    current timescale.
14931  *
14932  *  Parameters:
14933  *
14934  *    allocator:
14935  *      The allocator to use for the new sample table.
14936  *
14937  *    timescale:
14938  *      The timescale to use for durations and display offsets.
14939  *
14940  *    hints:
14941  *      Reserved.  Pass NULL.
14942  *
14943  *    newSampleTable:
14944  *      Points to a variable to receive the new sample table.
14945  *
14946  *  Availability:
14947  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14948  *    CarbonLib:        not available
14949  *    Non-Carbon CFM:   not available
14950  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
14951  }
QTSampleTableCreateMutablenull14952 function QTSampleTableCreateMutable( allocator: CFAllocatorRef; timescale_: TimeScale; hints: UnivPtr; var newSampleTable: QTMutableSampleTableRef ): OSStatus; external name '_QTSampleTableCreateMutable';
14953 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14954 
14955 
14956 {
14957  *  QTSampleTableRetain()
14958  *
14959  *  Summary:
14960  *    Increments the retain count of a sample table.
14961  *
14962  *  Discussion:
14963  *    The same sample table is returned for convenience. If sampleTable
14964  *    is NULL, nothing happens.
14965  *
14966  *  Parameters:
14967  *
14968  *    sampleTable:
14969  *      The sample table.
14970  *
14971  *  Availability:
14972  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14973  *    CarbonLib:        not available
14974  *    Non-Carbon CFM:   not available
14975  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
14976  }
QTSampleTableRetainnull14977 function QTSampleTableRetain( sampleTable: QTSampleTableRef ): QTSampleTableRef; external name '_QTSampleTableRetain';
14978 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
14979 
14980 
14981 {
14982  *  QTSampleTableRelease()
14983  *
14984  *  Summary:
14985  *    Decrements the retain count of a sample table.
14986  *
14987  *  Discussion:
14988  *    If the retain count decreases to zero, the sample table is
14989  *    disposed. If sampleTable is NULL, nothing happens.
14990  *
14991  *  Parameters:
14992  *
14993  *    sampleTable:
14994  *      The sample table.
14995  *
14996  *  Availability:
14997  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
14998  *    CarbonLib:        not available
14999  *    Non-Carbon CFM:   not available
15000  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15001  }
15002 procedure QTSampleTableRelease( sampleTable: QTSampleTableRef ); external name '_QTSampleTableRelease';
15003 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15004 
15005 
15006 {
15007  *  QTSampleTableCreateMutableCopy()
15008  *
15009  *  Summary:
15010  *    Copies a sample table.
15011  *
15012  *  Discussion:
15013  *    All the sample references and sample descriptions in the sample
15014  *    table are copied.
15015  *
15016  *  Parameters:
15017  *
15018  *    allocator:
15019  *      The allocator to use for the new sample table.
15020  *
15021  *    sampleTable:
15022  *      The sample table to copy.
15023  *
15024  *    hints:
15025  *      Reserved, set to NULL.
15026  *
15027  *    newSampleTable:
15028  *      Points to a variable to receive the new sample table.
15029  *
15030  *  Availability:
15031  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15032  *    CarbonLib:        not available
15033  *    Non-Carbon CFM:   not available
15034  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15035  }
QTSampleTableCreateMutableCopynull15036 function QTSampleTableCreateMutableCopy( allocator: CFAllocatorRef; sampleTable: QTSampleTableRef; hints: UnivPtr; var newSampleTable: QTMutableSampleTableRef ): OSStatus; external name '_QTSampleTableCreateMutableCopy';
15037 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15038 
15039 
15040 {
15041  *  QTSampleTableGetTypeID()
15042  *
15043  *  Summary:
15044  *    Returns the CFTypeID for QTSampleTableRef.
15045  *
15046  *  Discussion:
15047  *    You could use this to test whether a CFTypeRef that extracted
15048  *    from a CF container such as a CFArray was a QTSampleTableRef.
15049  *
15050  *  Availability:
15051  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15052  *    CarbonLib:        not available
15053  *    Non-Carbon CFM:   not available
15054  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15055  }
QTSampleTableGetTypeIDnull15056 function QTSampleTableGetTypeID: CFTypeID; external name '_QTSampleTableGetTypeID';
15057 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15058 
15059 
15060 {
15061  *  QTSampleTableSetTimeScale()
15062  *
15063  *  Summary:
15064  *    Changes the timescale of a sample table.
15065  *
15066  *  Discussion:
15067  *    The durations and display offsets of all the sample references in
15068  *    the sample table are scaled from the old timescale to the new
15069  *    timescale. No durations will be scaled to a value less than 1.
15070  *    Display offsets will be adjusted to avoid display time collisions.
15071  *
15072  *  Parameters:
15073  *
15074  *    sampleTable:
15075  *      The sample table.
15076  *
15077  *    newTimeScale:
15078  *      The new timescale.
15079  *
15080  *  Availability:
15081  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15082  *    CarbonLib:        not available
15083  *    Non-Carbon CFM:   not available
15084  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15085  }
QTSampleTableSetTimeScalenull15086 function QTSampleTableSetTimeScale( sampleTable: QTMutableSampleTableRef; newTimeScale: TimeScale ): OSStatus; external name '_QTSampleTableSetTimeScale';
15087 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15088 
15089 
15090 {
15091  *  QTSampleTableGetTimeScale()
15092  *
15093  *  Summary:
15094  *    Returns the timescale of a sample table.
15095  *
15096  *  Discussion:
15097  *    Returns 0 if sampleTable is NULL.
15098  *
15099  *  Parameters:
15100  *
15101  *    sampleTable:
15102  *      The sample table.
15103  *
15104  *  Availability:
15105  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15106  *    CarbonLib:        not available
15107  *    Non-Carbon CFM:   not available
15108  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15109  }
QTSampleTableGetTimeScalenull15110 function QTSampleTableGetTimeScale( sampleTable: QTSampleTableRef ): TimeScale; external name '_QTSampleTableGetTimeScale';
15111 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15112 
15113 
15114 {
15115  *  Summary:
15116  *    Attribute flags for QTSampleTableGetNextAttributeChange
15117  }
15118 const
15119 {
15120    * Set this flag to find first num such that samples num-1 and num
15121    * are not adjacent, ie, dataOffset of num-1 + dataSize of num-1 !=
15122    * dataOffset of num
15123    }
15124 	kQTSampleTableAttribute_DiscontiguousData = 1 shl 0;
15125 
15126   {
15127    * Set this flag to find the first sample with data size per sample
15128    * different from that of the starting sample.
15129    }
15130 	kQTSampleTableAttribute_DataSizePerSampleChange = 1 shl 1;
15131 
15132   {
15133    * Set this flag to find the first sample with decode duration
15134    * different from that of the starting sample.
15135    }
15136 	kQTSampleTableAttribute_DecodeDurationChange = 1 shl 2;
15137 
15138   {
15139    * Set this flag to find the first sample with display offset
15140    * different from that of the starting sample.
15141    }
15142 	kQTSampleTableAttribute_DisplayOffsetChange = 1 shl 3;
15143 
15144   {
15145    * Set this flag to find the first sample with sample description ID
15146    * different from that of the starting sample.
15147    }
15148 	kQTSampleTableAttribute_SampleDescriptionIDChange = 1 shl 4;
15149 
15150   {
15151    * Set this flag to find the first sample with any media sample flags
15152    * different from those of the starting sample.
15153    }
15154 	kQTSampleTableAttribute_SampleFlagsChange = 1 shl 5;
15155 
15156   {
15157    * If no flags are set, find the first sample with any attribute
15158    * different from the starting sample.
15159    }
15160 	kQTSampleTableAnyAttributeChange = 0;
15161 
15162 type
15163 	QTSampleTableAttribute = UInt32;
15164 {
15165  *  QTSampleTableGetNextAttributeChange()
15166  *
15167  *  Summary:
15168  *    Finds the next sample number at which one or more of given sample
15169  *    attributes change.
15170  *
15171  *  Parameters:
15172  *
15173  *    sampleTable:
15174  *      The sample table.
15175  *
15176  *    startSampleNum:
15177  *      A sample number.
15178  *
15179  *    attributeMask:
15180  *      A collection of flags that indicates which kinds of attribute
15181  *      changes to search for.
15182  *
15183  *    sampleNumOut:
15184  *      Points to a variable to receive the next sample number after
15185  *      startSampleNum at which any of the requested attributes
15186  *      changes. If no attribute changes are found, this variable is
15187  *      set to zero.
15188  *
15189  *  Availability:
15190  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15191  *    CarbonLib:        not available
15192  *    Non-Carbon CFM:   not available
15193  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15194  }
QTSampleTableGetNextAttributeChangenull15195 function QTSampleTableGetNextAttributeChange( sampleTable: QTSampleTableRef; startSampleNum: SInt64; attributeMask: QTSampleTableAttribute; var sampleNumOut: SInt64 ): OSStatus; external name '_QTSampleTableGetNextAttributeChange';
15196 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15197 
15198 
15199 {
15200  *  QTSampleTableAddSampleDescription()
15201  *
15202  *  Summary:
15203  *    Adds a sample description to a sample table, returning a sample
15204  *    description ID that can be used to refer to it.
15205  *
15206  *  Discussion:
15207  *    You can use the returned sample description ID when adding
15208  *    samples to the sample table.
15209  *    Note: Sample description IDs are local to each sample table. The
15210  *    same sample description handle may have different IDs when
15211  *    referenced in different sample tables.
15212  *
15213  *  Parameters:
15214  *
15215  *    sampleTable:
15216  *      The sample table.
15217  *
15218  *    sampleDescriptionH:
15219  *      The sample description handle. The QTSampleTable will make its
15220  *      own copy of this handle.
15221  *
15222  *    mediaSampleDescriptionIndex:
15223  *      Indicates the sample description index of this sample
15224  *      description in a media. Pass zero for sample descriptions you
15225  *      add to sample tables, to indicate that this was not retrieved
15226  *      from a media.
15227  *
15228  *    sampleDescriptionIDOut:
15229  *      Points to a variable to receive a sample description ID.
15230  *
15231  *  Availability:
15232  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15233  *    CarbonLib:        not available
15234  *    Non-Carbon CFM:   not available
15235  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15236  }
QTSampleTableAddSampleDescriptionnull15237 function QTSampleTableAddSampleDescription( sampleTable: QTMutableSampleTableRef; sampleDescriptionH: SampleDescriptionHandle; mediaSampleDescriptionIndex: SIGNEDLONG; var sampleDescriptionIDOut: QTSampleDescriptionID ): OSStatus; external name '_QTSampleTableAddSampleDescription';
15238 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15239 
15240 
15241 {
15242  *  QTSampleTableCopySampleDescription()
15243  *
15244  *  Summary:
15245  *    Retrieves a sample description from a sample table.
15246  *
15247  *  Discussion:
15248  *    The caller is responsible for disposing the returned sampled
15249  *    description handle with DisposeHandle.
15250  *
15251  *  Parameters:
15252  *
15253  *    sampleTable:
15254  *      The sample table.
15255  *
15256  *    sampleDescriptionID:
15257  *      The sample description ID.
15258  *
15259  *    mediaSampleDescriptionIndexOut:
15260  *      Points to a variable to receive a media sample description
15261  *      index. If the sample description came from a media, this is the
15262  *      index that could be passed to GetMediaSampleDescription to
15263  *      retrieve the same sample description handle. The index will be
15264  *      zero if the sample description did not come directly from a
15265  *      media. Pass NULL if you do not want to receive this information.
15266  *
15267  *    sampleDescriptionHOut:
15268  *      Points to a variable to receive a newly allocated sample
15269  *      description handle. Pass NULL if you do not want one.
15270  *
15271  *  Availability:
15272  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15273  *    CarbonLib:        not available
15274  *    Non-Carbon CFM:   not available
15275  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15276  }
QTSampleTableCopySampleDescriptionnull15277 function QTSampleTableCopySampleDescription( sampleTable: QTSampleTableRef; sampleDescriptionID: QTSampleDescriptionID; var mediaSampleDescriptionIndexOut: SIGNEDLONG; var sampleDescriptionHOut: SampleDescriptionHandle ): OSStatus; external name '_QTSampleTableCopySampleDescription';
15278 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15279 
15280 
15281 {
15282  *  QTSampleTableAddSampleReferences()
15283  *
15284  *  Summary:
15285  *    Adds sample references to a sample table.
15286  *
15287  *  Discussion:
15288  *    Note that you must pass the data size per sample, not the total
15289  *    size of all the samples as with some other APIs.
15290  *
15291  *  Parameters:
15292  *
15293  *    sampleTable:
15294  *      The sample table.
15295  *
15296  *    dataOffset:
15297  *      Specifies the offset at which the first sample begins.
15298  *
15299  *    dataSizePerSample:
15300  *      Specifies the number of bytes of data per sample.
15301  *
15302  *    decodeDurationPerSample:
15303  *      Specifies the decode duration of each sample.
15304  *
15305  *    displayOffset:
15306  *      Specifies the offset from decode time to display time of each
15307  *      sample. If the decode times and display times will be the same,
15308  *      pass 0.
15309  *
15310  *    numberOfSamples:
15311  *      Specifies the number of samples.  Must be greater than zero.
15312  *
15313  *    sampleFlags:
15314  *      Specifies the media sample flags for all samples.
15315  *
15316  *    sampleDescriptionID:
15317  *      Specifies the ID of a sample description that has been added to
15318  *      the sample table with QTSampleTableAddSampleDescription.
15319  *
15320  *    newSampleNumOut:
15321  *      Points to a variable to receive the sample number of the first
15322  *      sample that was added.  Pass NULL if you don't want this
15323  *      information.
15324  *
15325  *  Availability:
15326  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15327  *    CarbonLib:        not available
15328  *    Non-Carbon CFM:   not available
15329  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15330  }
QTSampleTableAddSampleReferencesnull15331 function QTSampleTableAddSampleReferences( sampleTable: QTMutableSampleTableRef; dataOffset: SInt64; dataSizePerSample: ByteCount; decodeDurationPerSample: TimeValue64; displayOffset: TimeValue64; numberOfSamples: SInt64; sampleFlags: MediaSampleFlags; sampleDescriptionID: QTSampleDescriptionID; var newSampleNumOut: SInt64 ): OSStatus; external name '_QTSampleTableAddSampleReferences';
15332 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15333 
15334 
15335 {
15336  *  QTSampleTableGetNumberOfSamples()
15337  *
15338  *  Summary:
15339  *    Returns the number of samples in a sample table.
15340  *
15341  *  Discussion:
15342  *    Returns 0 if sampleTable is NULL.
15343  *
15344  *  Parameters:
15345  *
15346  *    sampleTable:
15347  *      The sample table.
15348  *
15349  *  Availability:
15350  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15351  *    CarbonLib:        not available
15352  *    Non-Carbon CFM:   not available
15353  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15354  }
QTSampleTableGetNumberOfSamplesnull15355 function QTSampleTableGetNumberOfSamples( sampleTable: QTSampleTableRef ): SInt64; external name '_QTSampleTableGetNumberOfSamples';
15356 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15357 
15358 
15359 {
15360  *  QTSampleTableReplaceRange()
15361  *
15362  *  Summary:
15363  *    Replaces a range of samples in a sample table with a range of
15364  *    samples from another sample table. Can also be used to delete a
15365  *    range of samples, or to insert samples without removing any.
15366  *
15367  *  Discussion:
15368  *    This function removes destSampleCount samples from
15369  *    destSampleTable starting with destStartingSampleNum, and then
15370  *    inserts sourceSampleCount samples from sourceSampleTable starting
15371  *    with sourceStartingSampleNum where the removed samples were.
15372  *    Sample descriptions will be copied if necessary and new sample
15373  *    description IDs defined.
15374  *
15375  *  Parameters:
15376  *
15377  *    destSampleTable:
15378  *      The sample table to be modified.
15379  *
15380  *    destStartingSampleNum:
15381  *      The first sample number in destSampleTable to be replaced or
15382  *      deleted, or the sample number at which samples should be
15383  *      inserted.
15384  *
15385  *    destSampleCount:
15386  *      The number of samples to be removed from destSampleTable. Pass
15387  *      0 to insert without removing samples.
15388  *
15389  *    sourceSampleTable:
15390  *      The sample table from which samples should be copied, or NULL
15391  *      to delete samples.
15392  *
15393  *    sourceStartingSampleNum:
15394  *      The first sample number to be copied. Ignored when deleting
15395  *      samples.
15396  *
15397  *    sourceSampleCount:
15398  *      The number of samples which should be copied. Pass 0 to delete
15399  *      samples.
15400  *
15401  *  Availability:
15402  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15403  *    CarbonLib:        not available
15404  *    Non-Carbon CFM:   not available
15405  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15406  }
QTSampleTableReplaceRangenull15407 function QTSampleTableReplaceRange( destSampleTable: QTMutableSampleTableRef; destStartingSampleNum: SInt64; destSampleCount: SInt64; sourceSampleTable: QTSampleTableRef; sourceStartingSampleNum: SInt64; sourceSampleCount: SInt64 ): OSStatus; external name '_QTSampleTableReplaceRange';
15408 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15409 
15410 
15411 {
15412  *  QTSampleTableGetDataOffset()
15413  *
15414  *  Summary:
15415  *    Returns the data offset of a sample.
15416  *
15417  *  Discussion:
15418  *    Returns 0 if the sample table is NULL, or if the sample number is
15419  *    out of range.
15420  *
15421  *  Parameters:
15422  *
15423  *    sampleTable:
15424  *      The sample table.
15425  *
15426  *    sampleNum:
15427  *      The sample number.  The first sample's number is 1.
15428  *
15429  *  Availability:
15430  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15431  *    CarbonLib:        not available
15432  *    Non-Carbon CFM:   not available
15433  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15434  }
QTSampleTableGetDataOffsetnull15435 function QTSampleTableGetDataOffset( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): SInt64; external name '_QTSampleTableGetDataOffset';
15436 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15437 
15438 
15439 {
15440  *  QTSampleTableGetDataSizePerSample()
15441  *
15442  *  Summary:
15443  *    Returns the data size of a sample.
15444  *
15445  *  Discussion:
15446  *    Returns 0 if the sample table is NULL, or if the sample number is
15447  *    out of range.
15448  *
15449  *  Parameters:
15450  *
15451  *    sampleTable:
15452  *      The sample table.
15453  *
15454  *    sampleNum:
15455  *      The sample number.  The first sample's number is 1.
15456  *
15457  *  Availability:
15458  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15459  *    CarbonLib:        not available
15460  *    Non-Carbon CFM:   not available
15461  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15462  }
QTSampleTableGetDataSizePerSamplenull15463 function QTSampleTableGetDataSizePerSample( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): ByteCount; external name '_QTSampleTableGetDataSizePerSample';
15464 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15465 
15466 
15467 {
15468  *  QTSampleTableGetDecodeDuration()
15469  *
15470  *  Summary:
15471  *    Returns the decode duration of a sample.
15472  *
15473  *  Discussion:
15474  *    Returns 0 if the sample table is NULL, or if the sample number is
15475  *    out of range.
15476  *
15477  *  Parameters:
15478  *
15479  *    sampleTable:
15480  *      The sample table.
15481  *
15482  *    sampleNum:
15483  *      The sample number.  The first sample's number is 1.
15484  *
15485  *  Availability:
15486  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15487  *    CarbonLib:        not available
15488  *    Non-Carbon CFM:   not available
15489  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15490  }
QTSampleTableGetDecodeDurationnull15491 function QTSampleTableGetDecodeDuration( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): TimeValue64; external name '_QTSampleTableGetDecodeDuration';
15492 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15493 
15494 
15495 {
15496  *  QTSampleTableGetDisplayOffset()
15497  *
15498  *  Summary:
15499  *    Returns the offset from decode time to display time of a sample.
15500  *
15501  *  Discussion:
15502  *    Returns 0 if the sample table is NULL, or if the sample number is
15503  *    out of range.
15504  *
15505  *  Parameters:
15506  *
15507  *    sampleTable:
15508  *      The sample table.
15509  *
15510  *    sampleNum:
15511  *      The sample number.  The first sample's number is 1.
15512  *
15513  *  Availability:
15514  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15515  *    CarbonLib:        not available
15516  *    Non-Carbon CFM:   not available
15517  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15518  }
QTSampleTableGetDisplayOffsetnull15519 function QTSampleTableGetDisplayOffset( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): TimeValue64; external name '_QTSampleTableGetDisplayOffset';
15520 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15521 
15522 
15523 {
15524  *  QTSampleTableGetSampleDescriptionID()
15525  *
15526  *  Summary:
15527  *    Returns the sample description ID of a sample.
15528  *
15529  *  Discussion:
15530  *    Returns 0 if the sample table is NULL, or if the sample number is
15531  *    out of range.
15532  *
15533  *  Parameters:
15534  *
15535  *    sampleTable:
15536  *      The sample table.
15537  *
15538  *    sampleNum:
15539  *      The sample number.  The first sample's number is 1.
15540  *
15541  *  Availability:
15542  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15543  *    CarbonLib:        not available
15544  *    Non-Carbon CFM:   not available
15545  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15546  }
QTSampleTableGetSampleDescriptionIDnull15547 function QTSampleTableGetSampleDescriptionID( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): QTSampleDescriptionID; external name '_QTSampleTableGetSampleDescriptionID';
15548 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15549 
15550 
15551 {
15552  *  QTSampleTableGetSampleFlags()
15553  *
15554  *  Summary:
15555  *    Returns the media sample flags of a sample.
15556  *
15557  *  Parameters:
15558  *
15559  *    sampleTable:
15560  *      The sample table.
15561  *
15562  *    sampleNum:
15563  *      The sample number.  The first sample's number is 1.
15564  *
15565  *  Availability:
15566  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15567  *    CarbonLib:        not available
15568  *    Non-Carbon CFM:   not available
15569  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15570  }
QTSampleTableGetSampleFlagsnull15571 function QTSampleTableGetSampleFlags( sampleTable: QTSampleTableRef; sampleNum: SInt64 ): MediaSampleFlags; external name '_QTSampleTableGetSampleFlags';
15572 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15573 
15574 
15575 {
15576  *  Summary:
15577  *    Properties of sample tables
15578  }
15579 const
15580 {
15581    * Property class for sample tables.
15582    }
15583 	kQTPropertyClass_SampleTable = FourCharCode('qtst');
15584 
15585   {
15586    * The total decode duration of all samples in the sample table.
15587    * Read-only.
15588    }
15589 	kQTSampleTablePropertyID_TotalDecodeDuration = FourCharCode('tded'); { TimeValue64, Read }
15590 
15591   {
15592    * The least display offset in the table. (-50 is a lesser offset
15593    * than 20.)  Read-only.
15594    }
15595 	kQTSampleTablePropertyID_MinDisplayOffset = FourCharCode('<ddd'); { TimeValue64, Read }
15596 
15597   {
15598    * The greatest display offset in the table. (20 is a greater offset
15599    * than -50.)  Read-only.
15600    }
15601 	kQTSampleTablePropertyID_MaxDisplayOffset = FourCharCode('>ddd'); { TimeValue64, Read }
15602 
15603   {
15604    * The least display time of all samples in the table, relative to
15605    * the decode time of the first sample in the table.  Read-only.
15606    }
15607 	kQTSampleTablePropertyID_MinRelativeDisplayTime = FourCharCode('<dis'); { TimeValue64, Read }
15608 
15609   {
15610    * The greatest display time of all samples in the table, relative to
15611    * the decode time of the first sample in the table.  Read-only.
15612    }
15613 	kQTSampleTablePropertyID_MaxRelativeDisplayTime = FourCharCode('>dis'); { TimeValue64, Read }
15614 
15615 
15616 {
15617  *  QTSampleTableGetPropertyInfo()
15618  *
15619  *  Summary:
15620  *    Returns information about the properties of a sample table.
15621  *
15622  *  Parameters:
15623  *
15624  *    sampleTable:
15625  *      The sample table.
15626  *
15627  *    inPropClass:
15628  *      A property class.
15629  *
15630  *    inPropID:
15631  *      A property ID.
15632  *
15633  *    outPropType:
15634  *      A pointer to memory allocated to hold the property type on
15635  *      return. Pass NULL if you do not want this information.
15636  *
15637  *    outPropValueSize:
15638  *      A pointer to memory allocated to hold the size of the property
15639  *      value on return. Pass NULL if you do not want this information.
15640  *
15641  *    outPropertyFlags:
15642  *      A pointer to memory allocated to hold property flags on return.
15643  *      Pass NULL if you do not want this information.
15644  *
15645  *  Availability:
15646  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15647  *    CarbonLib:        not available
15648  *    Non-Carbon CFM:   not available
15649  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15650  }
QTSampleTableGetPropertyInfonull15651 function QTSampleTableGetPropertyInfo( sampleTable: QTSampleTableRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; outPropType: QTPropertyValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_QTSampleTableGetPropertyInfo';
15652 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15653 
15654 
15655 {
15656  *  QTSampleTableGetProperty()
15657  *
15658  *  Summary:
15659  *    Returns the value of a specific sample table property.
15660  *
15661  *  Parameters:
15662  *
15663  *    sampleTable:
15664  *      The sample table.
15665  *
15666  *    inPropClass:
15667  *      A property class.
15668  *
15669  *    inPropID:
15670  *      A property ID.
15671  *
15672  *    inPropValueSize:
15673  *      The size of the buffer allocated to hold the property value.
15674  *
15675  *    outPropValueAddress:
15676  *      A pointer to the buffer allocated to hold the property value.
15677  *
15678  *    outPropValueSizeUsed:
15679  *      On return, the actual size of the value written to the buffer.
15680  *
15681  *  Availability:
15682  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15683  *    CarbonLib:        not available
15684  *    Non-Carbon CFM:   not available
15685  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15686  }
QTSampleTableGetPropertynull15687 function QTSampleTableGetProperty( sampleTable: QTSampleTableRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_QTSampleTableGetProperty';
15688 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15689 
15690 
15691 {
15692  *  QTSampleTableSetProperty()
15693  *
15694  *  Summary:
15695  *    Sets the value of a specific sample table property.
15696  *
15697  *  Parameters:
15698  *
15699  *    sampleTable:
15700  *      The sample table.
15701  *
15702  *    inPropClass:
15703  *      A property class.
15704  *
15705  *    inPropID:
15706  *      A property ID.
15707  *
15708  *    inPropValueSize:
15709  *      The size of the property value.
15710  *
15711  *    inPropValueAddress:
15712  *      A pointer to the property value.
15713  *
15714  *  Availability:
15715  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
15716  *    CarbonLib:        not available
15717  *    Non-Carbon CFM:   not available
15718  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
15719  }
QTSampleTableSetPropertynull15720 function QTSampleTableSetProperty( sampleTable: QTSampleTableRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSStatus; external name '_QTSampleTableSetProperty';
15721 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
15722 
15723 
15724 {***************************************************************************
15725 *                                                                           *
15726 *           M E T A  D A T A                                                *
15727 *                                                                           *
15728 * QUICKTIME METADATA API OVERVIEW                                           *
15729 *                                                                           *
15730 * A QTMetaDataRef represents a metadata repository consisting of one or     *
15731 * more native metadata containers. The QuickTime MetaData API supports      *
15732 * unified access to and management of these containers.                     *
15733 *                                                                           *
15734 * Each container may be addressed by its storage format                     *
15735 * (kQTMetaDataStorageFormat). Initially, there is support for classic       *
15736 * QuickTime UserData, iTunes metadata, and a richer QuickTime metadata      *
15737 * container format. A QTMetaDataRef may have one or all of these. No        *
15738 * direct access to the native storage containers is provided.               *
15739 *                                                                           *
15740 * Each container consists of some number of metadata items. Metadata items  *
15741 * correspond to individually labeled values with characteristics such as    *
15742 * keys, data types, locale information, etc. What are called items here     *
15743 * are sometimes referred to as attributes or properties in other metadata   *
15744 * systems. Here, the focus is on the management of the pieces of metadata   *
15745 * instead of the associations with objects. This parallels existing         *
15746 * management of the classic QuickTime UserData construct.                   *
15747 *                                                                           *
15748 * QTMetaDataRefs may be associated with the Movie, Track and Media levels.  *
15749 * This parallels UserData placement today but provides access to other      *
15750 * kinds of metadata storage at those levels.                                *
15751 *                                                                           *
15752 * A metadata item is assigned a runtime identifier (QTMetaDataItem) that    *
15753 * along with the QTMetaDataRef identifies the particular item (and value)   *
15754 * across all native containers managed by the QTMetaDataRef.                *
15755 *                                                                           *
15756 * Each item is addressed by a key (or label). The key is not necessarily    *
15757 * unique within its container as it is possible to have multiple items      *
15758 * with the same key (e.g., multiple author items). Operations exist to      *
15759 * enumerate all items or only items with a particular key.                  *
15760 *                                                                           *
15761 * Because a QTMetaDataRef may provide access to different native metadata   *
15762 * containers with differing key structures (a four-char-code for one, a     *
15763 * string for another, etc.), the key structure is also specified. A         *
15764 * QTMetaDataKeyFormat indicates the key structure in APIs accepting keys.   *
15765 * This is also done because some container formats allow multiple key       *
15766 * structures or multiple versions of key structures.                        *
15767 *                                                                           *
15768 * To allow unified access across disparate containers, a wildcard storage   *
15769 * format can be specified. This will direct operations like searches        *
15770 * across container formats. A special key format called                     *
15771 * kQTMetaDataKeyFormatCommon indicates one of a set of common keys that     *
15772 * can be handled by native containers (e.g., copyright).                    *
15773 *                                                                           *
15774 * So, both of these modes of operation are possible: - access metadata      *
15775 * regardless of native container format through the use a common key -      *
15776 * access metadata natively using a native key format                        *
15777 *                                                                           *
15778 ***************************************************************************}
15779 { Opaque reference to a metadata object}
15780 type
15781 	QTMetaDataRef = ^SInt32; { an opaque type }
15782 { Opaque identifier for metadata item}
15783 type
15784 	QTMetaDataItem = UInt64;
15785 const
15786 	kQTMetaDataItemUninitialized = 0;     { Uninitialized metadata item identifier}
15787 
15788 {
15789     Metadata Storage Format.
15790 }
15791 type
15792 	QTMetaDataStorageFormat = OSType;
15793 const
15794 	kQTMetaDataStorageFormatWildcard = 0;  { Wildcard storage format}
15795 
15796 {
15797     Metadata Key Format.
15798 }
15799 type
15800 	QTMetaDataKeyFormat = OSType;
15801 const
15802 	kQTMetaDataKeyFormatWildcard = 0;     { Match any key regardless of key format}
15803 
15804 {***************************************
15805  *  Common Key Format                   *
15806  **************************************}
15807 const
15808 	kQTMetaDataKeyFormatCommon = FourCharCode('comn');
15809 
15810 { Pre-defined meta keys}
15811 const
15812 	kQTMetaDataCommonKeyAuthor = FourCharCode('auth');
15813 	kQTMetaDataCommonKeyComment = FourCharCode('cmmt');
15814 	kQTMetaDataCommonKeyCopyright = FourCharCode('cprt');
15815 	kQTMetaDataCommonKeyDirector = FourCharCode('dtor');
15816 	kQTMetaDataCommonKeyDisplayName = FourCharCode('name');
15817 	kQTMetaDataCommonKeyInformation = FourCharCode('info');
15818 	kQTMetaDataCommonKeyKeywords = FourCharCode('keyw');
15819 	kQTMetaDataCommonKeyProducer = FourCharCode('prod');
15820 	kQTMetaDataCommonKeyAlbum = FourCharCode('albm');
15821 	kQTMetaDataCommonKeyArtist = FourCharCode('arts');
15822 	kQTMetaDataCommonKeyArtwork = FourCharCode('artw');
15823 	kQTMetaDataCommonKeyChapterName = FourCharCode('chap');
15824 	kQTMetaDataCommonKeyComposer = FourCharCode('comp');
15825 	kQTMetaDataCommonKeyDescription = FourCharCode('desc');
15826 	kQTMetaDataCommonKeyGenre = FourCharCode('genr');
15827 	kQTMetaDataCommonKeyOriginalFormat = FourCharCode('orif');
15828 	kQTMetaDataCommonKeyOriginalSource = FourCharCode('oris');
15829 	kQTMetaDataCommonKeyPerformers = FourCharCode('perf');
15830 	kQTMetaDataCommonKeySoftware = FourCharCode('soft');
15831 	kQTMetaDataCommonKeyWriter = FourCharCode('wrtr');
15832 
15833 
15834 {***************************************
15835  *  QuickTime Native Metadata Format    *
15836  **************************************}
15837 { QTMetaDataStorageFormat type}
15838 const
15839 	kQTMetaDataStorageFormatQuickTime = FourCharCode('mdta'); { QuickTime metadata storage format}
15840 
15841 { QTMetaDataKeyFormat type}
15842 const
15843 	kQTMetaDataKeyFormatQuickTime = FourCharCode('mdta'); { Reverse DNS format}
15844 
15845 {***************************************
15846  *  iTunes Native Metadata Format       *
15847  **************************************}
15848 { QTMetaDataStorageFormat type}
15849 const
15850 	kQTMetaDataStorageFormatiTunes = FourCharCode('itms'); { iTunes metadata storage format}
15851 
15852 { QTMetaDataKeyFormat type}
15853 const
15854 	kQTMetaDataKeyFormatiTunesShortForm = FourCharCode('itsk'); { FourCharCode}
15855 	kQTMetaDataKeyFormatiTunesLongForm = FourCharCode('itlk'); { Reverse DNS format}
15856 
15857 { The list of keys for iTunes metadata is TBA.}
15858 
15859 {***************************************
15860  *  UserData Native Format              *
15861  **************************************}
15862 { QTMetaDataStorageFormat type}
15863 const
15864 	kQTMetaDataStorageFormatUserData = FourCharCode('udta'); { UserData storage format}
15865 
15866 { QTMetaDataKeyFormat type}
15867 const
15868 	kQTMetaDataKeyFormatUserData = FourCharCode('udta'); { FourCharCode}
15869 
15870 { The list of keys are the User Data Identifiers (e.g. kUserDataTextAuthor, kUserDataTextCopyright, etc.)}
15871 
15872 {
15873     Mapping from common keys to user data identifiers:
15874 
15875     kQTMetaDataCommonKeyAuthor                  -> kUserDataTextAuthor
15876     kQTMetaDataCommonKeyComment                 -> kUserDataTextComment
15877     kQTMetaDataCommonKeyCopyright               -> kUserDataTextCopyright
15878     kQTMetaDataCommonKeyDirector                -> kUserDataTextDirector
15879     kQTMetaDataCommonKeyDisplayName             -> kUserDataTextFullName
15880     kQTMetaDataCommonKeyInformation             -> kUserDataTextInformation
15881     kQTMetaDataCommonKeyKeywords                -> kUserDataTextKeywords
15882     kQTMetaDataCommonKeyProducer                -> kUserDataTextProducer
15883     kQTMetaDataCommonKeyAlbum                   -> kUserDataTextAlbum
15884     kQTMetaDataCommonKeyArtist                  -> kUserDataTextArtist
15885     kQTMetaDataCommonKeyChapterName             -> kUserDataTextChapter
15886     kQTMetaDataCommonKeyComposer                -> kUserDataTextComposer
15887     kQTMetaDataCommonKeyDescription             -> kUserDataTextDescription
15888     kQTMetaDataCommonKeyGenre                   -> kUserDataTextGenre
15889     kQTMetaDataCommonKeyOriginalFormat          -> kUserDataTextOriginalFormat
15890     kQTMetaDataCommonKeyOriginalSource          -> kUserDataTextOriginalSource
15891     kQTMetaDataCommonKeyPerformers              -> kUserDataTextPerformers
15892     kQTMetaDataCommonKeySoftware                -> kUserDataTextSoftware
15893     kQTMetaDataCommonKeyWriter                  -> kUserDataTextWriter
15894 }
15895 {***************************************
15896  *  Metadata Property Class ID          *
15897  **************************************}
15898 const
15899 	kPropertyClass_MetaData = FourCharCode('meta');
15900 
15901 { Metadata Property ID }
15902 
15903 const
15904 {
15905    * kQTMetaDataPropertyID_StorageFormats: The list of storage formats
15906    * (QTMetaDataStorageFormat) associated with this QTMetaDataRef
15907    * object. Return - C-style array of OSTypes, Read
15908    }
15909 	kQTMetaDataPropertyID_StorageFormats = FourCharCode('fmts');
15910 
15911   {
15912    * kQTMetaDataPropertyID_OwnerType: The owner type associated with
15913    * this QTMetaDataRef object. Return - OSType (QT_MOVIE_TYPE,
15914    * QT_TRACK_TYPE, QT_MEDIA_TYPE), Read
15915    }
15916 	kQTMetaDataPropertyID_OwnerType = FourCharCode('ownt');
15917 
15918   {
15919    * kQTMetaDataPropertyID_Owner: The owner associated with this
15920    * QTMetaDataRef object. The QTMetaDataRef object does not
15921    * necessarily need to have an owner. Return - Movie, Track, or
15922    * Media, Read
15923    }
15924 	kQTMetaDataPropertyID_Owner = FourCharCode('ownr');
15925 
15926 {
15927     Metadata Item Property Class ID
15928 }
15929 const
15930 	kPropertyClass_MetaDataItem = FourCharCode('mdit');
15931 
15932 { Metadata Item Property ID }
15933 
15934 const
15935 {
15936    * kQTMetaDataItemPropertyID_Value: The value of the metadata item.
15937    * Return - C-style array of UInt8, Read
15938    }
15939 	kQTMetaDataItemPropertyID_Value = FourCharCode('valu');
15940 
15941   {
15942    * kQTMetaDataItemPropertyID_DataType: The value type of the metadata
15943    * item. Return - UInt32, Read/Write
15944    }
15945 	kQTMetaDataItemPropertyID_DataType = FourCharCode('dtyp');
15946 
15947   {
15948    * kQTMetaDataItemPropertyID_StorageFormat: The storage format
15949    * (QTMetaDataStorageFormat). Return - QTMetaDataStorageFormat, Read
15950    }
15951 	kQTMetaDataItemPropertyID_StorageFormat = FourCharCode('sfmt');
15952 
15953   {
15954    * kQTMetaDataItemPropertyID_Key: The key associated with the
15955    * metadata item. Return - C-style array of UInt8, Read/Write
15956    }
15957 	kQTMetaDataItemPropertyID_Key = FourCharCode('key ');
15958 
15959   {
15960    * kQTMetaDataItemPropertyID_KeyFormat: The format of the key used.
15961    * Return - OSType, Read/Write
15962    }
15963 	kQTMetaDataItemPropertyID_KeyFormat = FourCharCode('keyf');
15964 
15965   {
15966    * kQTMetaDataItemPropertyID_Locale: The locale identifier based on
15967    * the naming convention defined by the International Components for
15968    * Unicode (ICU). The identifier consists of two pieces of ordered
15969    * information: a language code and a region code. The language code
15970    * is based on the ISO 639-1 standard, which defines two-character
15971    * codes, such as "en" and "fr", for the world's most commonly used
15972    * languages. If a two-letter code is not available, then ISO 639-2
15973    * three-letter identifiers are accepted as well, for example "haw"
15974    * for Hawaiian. The region code is defined by ISO 3166-1. The region
15975    * code is in all caps and appended, after an underscore, after the
15976    * language code, for example "en_US", "en_GB", and "fr_FR". Return -
15977    * C-string, Read/Write
15978    }
15979 	kQTMetaDataItemPropertyID_Locale = FourCharCode('loc ');
15980 
15981 { Well-known data type code}
15982 const
15983 	kQTMetaDataTypeBinary = 0;
15984 	kQTMetaDataTypeUTF8 = 1;
15985 	kQTMetaDataTypeUTF16BE = 2;
15986 	kQTMetaDataTypeMacEncodedText = 3;
15987 	kQTMetaDataTypeJPEGImage = 13;
15988 	kQTMetaDataTypePNGImage = 14;
15989 	kQTMetaDataTypeSignedIntegerBE = 21;  { The size of the integer is defined by the value size}
15990 	kQTMetaDataTypeUnsignedIntegerBE = 22; { The size of the integer is defined by the value size}
15991 	kQTMetaDataTypeFloat32BE = 23;
15992 	kQTMetaDataTypeFloat64BE = 24;
15993 	kQTMetaDataTypeBMPImage = 27;
15994 	kQTMetaDataTypeQuickTimeMetaData = 28;
15995 
15996 
15997 {***************************************
15998  *  QTMetaDataRef Access                *
15999  **************************************}
16000 {
16001  *  QTCopyMovieMetaData()
16002  *
16003  *  Availability:
16004  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16005  *    CarbonLib:        not available
16006  *    Non-Carbon CFM:   not available
16007  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16008  }
QTCopyMovieMetaDatanull16009 function QTCopyMovieMetaData( inMovie: Movie; var outMetaData: QTMetaDataRef ): OSStatus; external name '_QTCopyMovieMetaData';
16010 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16011 
16012 
16013 {
16014  *  QTCopyTrackMetaData()
16015  *
16016  *  Availability:
16017  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16018  *    CarbonLib:        not available
16019  *    Non-Carbon CFM:   not available
16020  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16021  }
QTCopyTrackMetaDatanull16022 function QTCopyTrackMetaData( inTrack: Track; var outMetaData: QTMetaDataRef ): OSStatus; external name '_QTCopyTrackMetaData';
16023 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16024 
16025 
16026 {
16027  *  QTCopyMediaMetaData()
16028  *
16029  *  Availability:
16030  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16031  *    CarbonLib:        not available
16032  *    Non-Carbon CFM:   not available
16033  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16034  }
QTCopyMediaMetaDatanull16035 function QTCopyMediaMetaData( inMedia: Media; var outMetaData: QTMetaDataRef ): OSStatus; external name '_QTCopyMediaMetaData';
16036 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16037 
16038 
16039 {
16040  *  QTMetaDataRetain()
16041  *
16042  *  Availability:
16043  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16044  *    CarbonLib:        not available
16045  *    Non-Carbon CFM:   not available
16046  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16047  }
QTMetaDataRetainnull16048 function QTMetaDataRetain( inMetaData: QTMetaDataRef ): QTMetaDataRef; external name '_QTMetaDataRetain';
16049 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16050 
16051 
16052 {
16053  *  QTMetaDataRelease()
16054  *
16055  *  Availability:
16056  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16057  *    CarbonLib:        not available
16058  *    Non-Carbon CFM:   not available
16059  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16060  }
16061 procedure QTMetaDataRelease( inMetaData: QTMetaDataRef ); external name '_QTMetaDataRelease';
16062 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16063 
16064 
16065 {
16066  *  QTMetaDataCreateFromBuffer()
16067  *
16068  *  Availability:
16069  *    Mac OS X:         in version 10.5 (or QuickTime 7.2) and later in QuickTime.framework
16070  *    CarbonLib:        not available
16071  *    Non-Carbon CFM:   not available
16072  }
QTMetaDataCreateFromBuffernull16073 function QTMetaDataCreateFromBuffer( const (*var*) inBufferPtr: UInt8; inBufferSize: ByteCount; var outMetaData: QTMetaDataRef ): OSStatus; external name '_QTMetaDataCreateFromBuffer';
16074 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
16075 
16076 
16077 {
16078  *  QTMetaDataGetBytes()
16079  *
16080  *  Availability:
16081  *    Mac OS X:         in version 10.5 (or QuickTime 7.2) and later in QuickTime.framework
16082  *    CarbonLib:        not available
16083  *    Non-Carbon CFM:   not available
16084  }
QTMetaDataGetBytesnull16085 function QTMetaDataGetBytes( inMetaData: QTMetaDataRef; inBufferSize: ByteCount; var inBufferPtr: UInt8; var outBufferSizeNeeded: ByteCount ): OSStatus; external name '_QTMetaDataGetBytes';
16086 (* AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER *)
16087 
16088 
16089 {***************************************
16090  *  Metadata Item Routines              *
16091  **************************************}
16092 {
16093  *  QTMetaDataGetPropertyInfo()
16094  *
16095  *  Availability:
16096  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16097  *    CarbonLib:        not available
16098  *    Non-Carbon CFM:   not available
16099  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16100  }
QTMetaDataGetPropertyInfonull16101 function QTMetaDataGetPropertyInfo( inMetaData: QTMetaDataRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; var outPropType: QTPropertyValueType; var outPropValueSize: ByteCount; var outPropFlags: UInt32 ): OSStatus; external name '_QTMetaDataGetPropertyInfo';
16102 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16103 
16104 
16105 {
16106  *  QTMetaDataGetProperty()
16107  *
16108  *  Availability:
16109  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16110  *    CarbonLib:        not available
16111  *    Non-Carbon CFM:   not available
16112  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16113  }
QTMetaDataGetPropertynull16114 function QTMetaDataGetProperty( inMetaData: QTMetaDataRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; var outPropValueSizeUsed: ByteCount ): OSStatus; external name '_QTMetaDataGetProperty';
16115 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16116 
16117 
16118 {
16119  *  QTMetaDataSetProperty()
16120  *
16121  *  Availability:
16122  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16123  *    CarbonLib:        not available
16124  *    Non-Carbon CFM:   not available
16125  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16126  }
QTMetaDataSetPropertynull16127 function QTMetaDataSetProperty( inMetaData: QTMetaDataRef; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSStatus; external name '_QTMetaDataSetProperty';
16128 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16129 
16130 
16131 {
16132  *  QTMetaDataGetItemValue()
16133  *
16134  *  Availability:
16135  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16136  *    CarbonLib:        not available
16137  *    Non-Carbon CFM:   not available
16138  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16139  }
QTMetaDataGetItemValuenull16140 function QTMetaDataGetItemValue( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem; var outValuePtr: UInt8; inValueSize: ByteCount; var outActualSize: ByteCount ): OSStatus; external name '_QTMetaDataGetItemValue';
16141 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16142 
16143 
16144 {
16145  *  QTMetaDataGetNextItem()
16146  *
16147  *  Availability:
16148  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16149  *    CarbonLib:        not available
16150  *    Non-Carbon CFM:   not available
16151  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16152  }
QTMetaDataGetNextItemnull16153 function QTMetaDataGetNextItem( inMetaData: QTMetaDataRef; inMetaDataFormat: QTMetaDataStorageFormat; inCurrentItem: QTMetaDataItem; inKeyFormat: QTMetaDataKeyFormat; const (*var*) inKeyPtr: UInt8; inKeySize: ByteCount; var outNextItem: QTMetaDataItem ): OSStatus; external name '_QTMetaDataGetNextItem';
16154 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16155 
16156 
16157 {
16158  *  QTMetaDataGetItemPropertyInfo()
16159  *
16160  *  Availability:
16161  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16162  *    CarbonLib:        not available
16163  *    Non-Carbon CFM:   not available
16164  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16165  }
QTMetaDataGetItemPropertyInfonull16166 function QTMetaDataGetItemPropertyInfo( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem; inPropClass: QTPropertyClass; inPropID: QTPropertyID; var outPropType: QTPropertyValueType; var outPropValueSize: ByteCount; var outPropFlags: UInt32 ): OSStatus; external name '_QTMetaDataGetItemPropertyInfo';
16167 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16168 
16169 
16170 {
16171  *  QTMetaDataGetItemProperty()
16172  *
16173  *  Availability:
16174  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16175  *    CarbonLib:        not available
16176  *    Non-Carbon CFM:   not available
16177  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16178  }
QTMetaDataGetItemPropertynull16179 function QTMetaDataGetItemProperty( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; outPropValueAddress: QTPropertyValuePtr; var outPropValueSizeUsed: ByteCount ): OSStatus; external name '_QTMetaDataGetItemProperty';
16180 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16181 
16182 
16183 {
16184  *  QTMetaDataSetItemProperty()
16185  *
16186  *  Availability:
16187  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16188  *    CarbonLib:        not available
16189  *    Non-Carbon CFM:   not available
16190  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16191  }
QTMetaDataSetItemPropertynull16192 function QTMetaDataSetItemProperty( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstQTPropertyValuePtr ): OSStatus; external name '_QTMetaDataSetItemProperty';
16193 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16194 
16195 
16196 {
16197  *  QTMetaDataGetItemCountWithKey()
16198  *
16199  *  Availability:
16200  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16201  *    CarbonLib:        not available
16202  *    Non-Carbon CFM:   not available
16203  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16204  }
QTMetaDataGetItemCountWithKeynull16205 function QTMetaDataGetItemCountWithKey( inMetaData: QTMetaDataRef; inMetaDataFormat: QTMetaDataStorageFormat; inKeyFormat: QTMetaDataKeyFormat; const (*var*) inKeyPtr: UInt8; inKeySize: ByteCount; var outCount: ItemCount ): OSStatus; external name '_QTMetaDataGetItemCountWithKey';
16206 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16207 
16208 
16209 {
16210  *  QTMetaDataAddItem()
16211  *
16212  *  Availability:
16213  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16214  *    CarbonLib:        not available
16215  *    Non-Carbon CFM:   not available
16216  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16217  }
QTMetaDataAddItemnull16218 function QTMetaDataAddItem( inMetaData: QTMetaDataRef; inMetaDataFormat: QTMetaDataStorageFormat; inKeyFormat: QTMetaDataKeyFormat; const (*var*) inKeyPtr: UInt8; inKeySize: ByteCount; const (*var*) inValuePtr: UInt8; inValueSize: ByteCount; inDataType: UInt32; var outItem: QTMetaDataItem ): OSStatus; external name '_QTMetaDataAddItem';
16219 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16220 
16221 
16222 {
16223  *  QTMetaDataSetItem()
16224  *
16225  *  Availability:
16226  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16227  *    CarbonLib:        not available
16228  *    Non-Carbon CFM:   not available
16229  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16230  }
QTMetaDataSetItemnull16231 function QTMetaDataSetItem( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem; var inValuePtr: UInt8; inValueSize: ByteCount; inDataType: UInt32 ): OSStatus; external name '_QTMetaDataSetItem';
16232 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16233 
16234 
16235 {
16236  *  QTMetaDataRemoveItem()
16237  *
16238  *  Availability:
16239  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16240  *    CarbonLib:        not available
16241  *    Non-Carbon CFM:   not available
16242  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16243  }
QTMetaDataRemoveItemnull16244 function QTMetaDataRemoveItem( inMetaData: QTMetaDataRef; inItem: QTMetaDataItem ): OSStatus; external name '_QTMetaDataRemoveItem';
16245 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16246 
16247 
16248 {
16249  *  QTMetaDataRemoveItemsWithKey()
16250  *
16251  *  Availability:
16252  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16253  *    CarbonLib:        not available
16254  *    Non-Carbon CFM:   not available
16255  *    Windows:          in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
16256  }
QTMetaDataRemoveItemsWithKeynull16257 function QTMetaDataRemoveItemsWithKey( inMetaData: QTMetaDataRef; inMetaDataFormat: QTMetaDataStorageFormat; inKeyFormat: QTMetaDataKeyFormat; const (*var*) inKeyPtr: UInt8; inKeySize: ByteCount ): OSStatus; external name '_QTMetaDataRemoveItemsWithKey';
16258 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16259 
16260 
16261 {
16262  *  MusicMediaGetIndexedTunePlayer()
16263  *
16264  *  Availability:
16265  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16266  *    CarbonLib:        in CarbonLib 1.0 and later
16267  *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
16268  *    Windows:          in qtmlClient.lib 3.0 and later
16269  }
MusicMediaGetIndexedTunePlayernull16270 function MusicMediaGetIndexedTunePlayer( ti: ComponentInstance; sampleDescIndex: SIGNEDLONG; var tp: ComponentInstance ): ComponentResult; external name '_MusicMediaGetIndexedTunePlayer';
16271 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16272 
16273 
16274 type
16275 	QTBandwidthUsageRecordPtr = ^OpaqueQTBandwidthUsageRecordPtr; { an opaque type }
16276 	OpaqueQTBandwidthUsageRecordPtr = record end;
16277 	QTBandwidthReference = ^QTBandwidthUsageRecordPtr;
16278 	QTBandwidthReferencePtr = ^QTBandwidthReference;  { when a var xx:QTBandwidthReference parameter can be nil, it is changed to xx: QTBandwidthReferencePtr }
16279 	QTScheduledBandwidthUsageRecordPtr = ^OpaqueQTScheduledBandwidthUsageRecordPtr; { an opaque type }
16280 	OpaqueQTScheduledBandwidthUsageRecordPtr = record end;
16281 	QTScheduledBandwidthReference    = ^QTScheduledBandwidthUsageRecordPtr;
16282 	QTScheduledBandwidthReferencePtr = ^QTScheduledBandwidthReference;  { when a var xx:QTScheduledBandwidthReference parameter can be nil, it is changed to xx: QTScheduledBandwidthReferencePtr }
16283 const
16284 	BandwidthManagementPrefsType = FourCharCode('bwmg');
16285 
16286 
16287 type
16288 	BandwidthManagementPrefsRecordPtr = ^BandwidthManagementPrefsRecord;
16289 	BandwidthManagementPrefsRecord = record
16290 		overrideConnectionSpeedForBandwidth: Boolean;
16291 	end;
16292 type
16293 	BandwidthManagementPrefsPtr = BandwidthManagementPrefsRecordPtr;
16294 	BandwidthManagementPrefsHandle = ^BandwidthManagementPrefsPtr;
16295 const
16296 	kQTBandwidthNotifyNeedToStop = 1 shl 0;
16297 	kQTBandwidthNotifyGoodToGo = 1 shl 1;
16298 	kQTBandwidthChangeRequest = 1 shl 2;
16299 	kQTBandwidthQueueRequest = 1 shl 3;
16300 	kQTBandwidthScheduledRequest = 1 shl 4;
16301 	kQTBandwidthVoluntaryRelease = 1 shl 5;
16302 
16303 type
flagsnull16304 	QTBandwidthNotificationProcPtr = function( flags: SIGNEDLONG; reserved: UnivPtr; refcon: UnivPtr ): OSErr;
16305 	QTScheduledBandwidthRecordPtr = ^QTScheduledBandwidthRecord;
16306 	QTScheduledBandwidthRecord = record
16307 		recordSize: SIGNEDLONG;             { total number of bytes in QTScheduledBandwidthRecord}
16308 
16309 		priority: SIGNEDLONG;
16310 		dataRate: SIGNEDLONG;
16311 		startTime: CompTimeValue;              { bandwidth usage start time}
16312 		duration: CompTimeValue;               { duration of bandwidth usage (0 if unknown)}
16313 		prerollDuration: CompTimeValue;        { time for negotiation before startTime (0 if unknown)}
16314 		scale: TimeScale;                  { timescale of value/duration/prerollDuration fields}
16315 		base: TimeBase;                   { timebase}
16316 	end;
16317 type
16318 	QTScheduledBandwidthPtr = QTScheduledBandwidthRecordPtr;
16319 	QTScheduledBandwidthHandle = ^QTScheduledBandwidthPtr;
16320 	QTBandwidthNotificationUPP = QTBandwidthNotificationProcPtr;
16321 {
16322  *  QTBandwidthRequest()   *** DEPRECATED ***
16323  *
16324  *  Deprecated:
16325  *    No longer need to call bandwidth management functions.
16326  *
16327  *  Availability:
16328  *    Mac OS X:         in version 10.0 and later in QuickTime.framework but deprecated in 10.4
16329  *    CarbonLib:        in CarbonLib 1.0.2 and later
16330  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
16331  *    Windows:          in qtmlClient.lib 4.0 and later
16332  }
QTBandwidthRequestnull16333 function QTBandwidthRequest( priority: SIGNEDLONG; callback: QTBandwidthNotificationUPP; refcon: {const} UnivPtr; var bwRef: QTBandwidthReference; flags: SIGNEDLONG ): OSErr; external name '_QTBandwidthRequest';
16334 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16335 
16336 
16337 {
16338  *  QTBandwidthRequestForTimeBase()   *** DEPRECATED ***
16339  *
16340  *  Deprecated:
16341  *    No longer need to call bandwidth management functions.
16342  *
16343  *  Availability:
16344  *    Mac OS X:         in version 10.0 and later in QuickTime.framework but deprecated in 10.4
16345  *    CarbonLib:        in CarbonLib 1.1 and later
16346  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
16347  *    Windows:          in qtmlClient.lib 4.1 and later
16348  }
QTBandwidthRequestForTimeBasenull16349 function QTBandwidthRequestForTimeBase( tb: TimeBase; priority: SIGNEDLONG; callback: QTBandwidthNotificationUPP; refcon: {const} UnivPtr; var bwRef: QTBandwidthReference; flags: SIGNEDLONG ): OSErr; external name '_QTBandwidthRequestForTimeBase';
16350 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16351 
16352 
16353 {
16354  *  QTBandwidthRelease()   *** DEPRECATED ***
16355  *
16356  *  Deprecated:
16357  *    No longer need to call bandwidth management functions.
16358  *
16359  *  Availability:
16360  *    Mac OS X:         in version 10.0 and later in QuickTime.framework but deprecated in 10.4
16361  *    CarbonLib:        in CarbonLib 1.0.2 and later
16362  *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
16363  *    Windows:          in qtmlClient.lib 4.0 and later
16364  }
QTBandwidthReleasenull16365 function QTBandwidthRelease( bwRef: QTBandwidthReference; flags: SIGNEDLONG ): OSErr; external name '_QTBandwidthRelease';
16366 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16367 
16368 
16369 {
16370  *  QTScheduledBandwidthRequest()   *** DEPRECATED ***
16371  *
16372  *  Deprecated:
16373  *    No longer need to call bandwidth management functions.
16374  *
16375  *  Availability:
16376  *    Mac OS X:         in version 10.0 and later in QuickTime.framework but deprecated in 10.4
16377  *    CarbonLib:        in CarbonLib 1.1 and later
16378  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
16379  *    Windows:          in qtmlClient.lib 4.1 and later
16380  }
QTScheduledBandwidthRequestnull16381 function QTScheduledBandwidthRequest( scheduleRec: QTScheduledBandwidthPtr; notificationCallback: QTBandwidthNotificationUPP; refcon: UnivPtr; var sbwRef: QTScheduledBandwidthReference; flags: SIGNEDLONG ): OSErr; external name '_QTScheduledBandwidthRequest';
16382 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16383 
16384 
16385 {
16386  *  QTScheduledBandwidthRelease()   *** DEPRECATED ***
16387  *
16388  *  Deprecated:
16389  *    No longer need to call bandwidth management functions.
16390  *
16391  *  Availability:
16392  *    Mac OS X:         in version 10.0 and later in QuickTime.framework but deprecated in 10.4
16393  *    CarbonLib:        in CarbonLib 1.1 and later
16394  *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
16395  *    Windows:          in qtmlClient.lib 4.1 and later
16396  }
QTScheduledBandwidthReleasenull16397 function QTScheduledBandwidthRelease( sbwRef: QTScheduledBandwidthReference; flags: SIGNEDLONG ): OSErr; external name '_QTScheduledBandwidthRelease';
16398 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16399 
16400 
16401 {
16402  *  NewMCActionFilterUPP()
16403  *
16404  *  Availability:
16405  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16406  *    CarbonLib:        in CarbonLib 1.0 and later
16407  *    Non-Carbon CFM:   available as macro/inline
16408  }
NewMCActionFilterUPPnull16409 function NewMCActionFilterUPP( userRoutine: MCActionFilterProcPtr ): MCActionFilterUPP; external name '_NewMCActionFilterUPP';
16410 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16411 
16412 {
16413  *  NewMCActionFilterWithRefConUPP()
16414  *
16415  *  Availability:
16416  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16417  *    CarbonLib:        in CarbonLib 1.0 and later
16418  *    Non-Carbon CFM:   available as macro/inline
16419  }
NewMCActionFilterWithRefConUPPnull16420 function NewMCActionFilterWithRefConUPP( userRoutine: MCActionFilterWithRefConProcPtr ): MCActionFilterWithRefConUPP; external name '_NewMCActionFilterWithRefConUPP';
16421 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16422 
16423 {
16424  *  NewMCActionNotificationUPP()
16425  *
16426  *  Availability:
16427  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16428  *    CarbonLib:        not available
16429  *    Non-Carbon CFM:   available as macro/inline
16430  }
NewMCActionNotificationUPPnull16431 function NewMCActionNotificationUPP( userRoutine: MCActionNotificationProcPtr ): MCActionNotificationUPP; external name '_NewMCActionNotificationUPP';
16432 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16433 
16434 {
16435  *  NewQTMoviePropertyListenerUPP()
16436  *
16437  *  Availability:
16438  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16439  *    CarbonLib:        in CarbonLib 9.9 and later
16440  *    Non-Carbon CFM:   available as macro/inline
16441  }
NewQTMoviePropertyListenerUPPnull16442 function NewQTMoviePropertyListenerUPP( userRoutine: QTMoviePropertyListenerProcPtr ): QTMoviePropertyListenerUPP; external name '_NewQTMoviePropertyListenerUPP';
16443 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16444 
16445 {
16446  *  NewQTTrackPropertyListenerUPP()
16447  *
16448  *  Availability:
16449  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16450  *    CarbonLib:        in CarbonLib 9.9 and later
16451  *    Non-Carbon CFM:   available as macro/inline
16452  }
NewQTTrackPropertyListenerUPPnull16453 function NewQTTrackPropertyListenerUPP( userRoutine: QTTrackPropertyListenerProcPtr ): QTTrackPropertyListenerUPP; external name '_NewQTTrackPropertyListenerUPP';
16454 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16455 
16456 {
16457  *  NewQTBandwidthNotificationUPP()
16458  *
16459  *  Availability:
16460  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16461  *    CarbonLib:        in CarbonLib 1.0.2 and later
16462  *    Non-Carbon CFM:   available as macro/inline
16463  }
NewQTBandwidthNotificationUPPnull16464 function NewQTBandwidthNotificationUPP( userRoutine: QTBandwidthNotificationProcPtr ): QTBandwidthNotificationUPP; external name '_NewQTBandwidthNotificationUPP';
16465 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16466 
16467 {
16468  *  DisposeMCActionFilterUPP()
16469  *
16470  *  Availability:
16471  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16472  *    CarbonLib:        in CarbonLib 1.0 and later
16473  *    Non-Carbon CFM:   available as macro/inline
16474  }
16475 procedure DisposeMCActionFilterUPP( userUPP: MCActionFilterUPP ); external name '_DisposeMCActionFilterUPP';
16476 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16477 
16478 {
16479  *  DisposeMCActionFilterWithRefConUPP()
16480  *
16481  *  Availability:
16482  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16483  *    CarbonLib:        in CarbonLib 1.0 and later
16484  *    Non-Carbon CFM:   available as macro/inline
16485  }
16486 procedure DisposeMCActionFilterWithRefConUPP( userUPP: MCActionFilterWithRefConUPP ); external name '_DisposeMCActionFilterWithRefConUPP';
16487 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16488 
16489 {
16490  *  DisposeMCActionNotificationUPP()
16491  *
16492  *  Availability:
16493  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16494  *    CarbonLib:        not available
16495  *    Non-Carbon CFM:   available as macro/inline
16496  }
16497 procedure DisposeMCActionNotificationUPP( userUPP: MCActionNotificationUPP ); external name '_DisposeMCActionNotificationUPP';
16498 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16499 
16500 {
16501  *  DisposeQTMoviePropertyListenerUPP()
16502  *
16503  *  Availability:
16504  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16505  *    CarbonLib:        in CarbonLib 9.9 and later
16506  *    Non-Carbon CFM:   available as macro/inline
16507  }
16508 procedure DisposeQTMoviePropertyListenerUPP( userUPP: QTMoviePropertyListenerUPP ); external name '_DisposeQTMoviePropertyListenerUPP';
16509 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16510 
16511 {
16512  *  DisposeQTTrackPropertyListenerUPP()
16513  *
16514  *  Availability:
16515  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16516  *    CarbonLib:        in CarbonLib 9.9 and later
16517  *    Non-Carbon CFM:   available as macro/inline
16518  }
16519 procedure DisposeQTTrackPropertyListenerUPP( userUPP: QTTrackPropertyListenerUPP ); external name '_DisposeQTTrackPropertyListenerUPP';
16520 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16521 
16522 {
16523  *  DisposeQTBandwidthNotificationUPP()
16524  *
16525  *  Availability:
16526  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16527  *    CarbonLib:        in CarbonLib 1.0.2 and later
16528  *    Non-Carbon CFM:   available as macro/inline
16529  }
16530 procedure DisposeQTBandwidthNotificationUPP( userUPP: QTBandwidthNotificationUPP ); external name '_DisposeQTBandwidthNotificationUPP';
16531 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16532 
16533 {
16534  *  InvokeMCActionFilterUPP()
16535  *
16536  *  Availability:
16537  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16538  *    CarbonLib:        in CarbonLib 1.0 and later
16539  *    Non-Carbon CFM:   available as macro/inline
16540  }
InvokeMCActionFilterUPPnull16541 function InvokeMCActionFilterUPP( mc: MovieController; var action: SInt16; params: UnivPtr; userUPP: MCActionFilterUPP ): Boolean; external name '_InvokeMCActionFilterUPP';
16542 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16543 
16544 {
16545  *  InvokeMCActionFilterWithRefConUPP()
16546  *
16547  *  Availability:
16548  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16549  *    CarbonLib:        in CarbonLib 1.0 and later
16550  *    Non-Carbon CFM:   available as macro/inline
16551  }
InvokeMCActionFilterWithRefConUPPnull16552 function InvokeMCActionFilterWithRefConUPP( mc: MovieController; action: SInt16; params: UnivPtr; refCon: SIGNEDLONG; userUPP: MCActionFilterWithRefConUPP ): Boolean; external name '_InvokeMCActionFilterWithRefConUPP';
16553 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
16554 
16555 {
16556  *  InvokeMCActionNotificationUPP()
16557  *
16558  *  Availability:
16559  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16560  *    CarbonLib:        not available
16561  *    Non-Carbon CFM:   available as macro/inline
16562  }
InvokeMCActionNotificationUPPnull16563 function InvokeMCActionNotificationUPP( mc: MovieController; action: SInt16; params: UnivPtr; inFlags: UInt32; var outFlags: UInt32; refCon: UnivPtr; userUPP: MCActionNotificationUPP ): Boolean; external name '_InvokeMCActionNotificationUPP';
16564 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16565 
16566 {
16567  *  InvokeQTMoviePropertyListenerUPP()
16568  *
16569  *  Availability:
16570  *    Mac OS X:         in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
16571  *    CarbonLib:        in CarbonLib 9.9 and later
16572  *    Non-Carbon CFM:   available as macro/inline
16573  }
16574 procedure InvokeQTMoviePropertyListenerUPP( inMovie: Movie; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inUserData: UnivPtr; userUPP: QTMoviePropertyListenerUPP ); external name '_InvokeQTMoviePropertyListenerUPP';
16575 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
16576 
16577 {
16578  *  InvokeQTTrackPropertyListenerUPP()
16579  *
16580  *  Availability:
16581  *    Mac OS X:         in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
16582  *    CarbonLib:        in CarbonLib 9.9 and later
16583  *    Non-Carbon CFM:   available as macro/inline
16584  }
16585 procedure InvokeQTTrackPropertyListenerUPP( inTrack: Track; inPropClass: QTPropertyClass; inPropID: QTPropertyID; inUserData: UnivPtr; userUPP: QTTrackPropertyListenerUPP ); external name '_InvokeQTTrackPropertyListenerUPP';
16586 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
16587 
16588 {
16589  *  InvokeQTBandwidthNotificationUPP()
16590  *
16591  *  Availability:
16592  *    Mac OS X:         in version 10.0 and later in QuickTime.framework
16593  *    CarbonLib:        in CarbonLib 1.0.2 and later
16594  *    Non-Carbon CFM:   available as macro/inline
16595  }
InvokeQTBandwidthNotificationUPPnull16596 function InvokeQTBandwidthNotificationUPP( flags: SIGNEDLONG; reserved: UnivPtr; refcon: UnivPtr; userUPP: QTBandwidthNotificationUPP ): OSErr; external name '_InvokeQTBandwidthNotificationUPP';
16597 (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
16598 
16599 { UPP call backs }
16600 
16601 { selectors for component calls }
16602 const
16603 	kVideoMediaResetStatisticsSelect = $0105;
16604 	kVideoMediaGetStatisticsSelect = $0106;
16605 	kVideoMediaGetStallCountSelect = $010E;
16606 	kVideoMediaSetCodecParameterSelect = $010F;
16607 	kVideoMediaGetCodecParameterSelect = $0110;
16608 	kTextMediaSetTextProcSelect = $0101;
16609 	kTextMediaAddTextSampleSelect = $0102;
16610 	kTextMediaAddTESampleSelect = $0103;
16611 	kTextMediaAddHiliteSampleSelect = $0104;
16612 	kTextMediaDrawRawSelect = $0109;
16613 	kTextMediaSetTextPropertySelect = $010A;
16614 	kTextMediaRawSetupSelect = $010B;
16615 	kTextMediaRawIdleSelect = $010C;
16616 	kTextMediaGetTextPropertySelect = $010D;
16617 	kTextMediaFindNextTextSelect = $0105;
16618 	kTextMediaHiliteTextSampleSelect = $0106;
16619 	kTextMediaSetTextSampleDataSelect = $0107;
16620 	kSpriteMediaSetPropertySelect = $0101;
16621 	kSpriteMediaGetPropertySelect = $0102;
16622 	kSpriteMediaHitTestSpritesSelect = $0103;
16623 	kSpriteMediaCountSpritesSelect = $0104;
16624 	kSpriteMediaCountImagesSelect = $0105;
16625 	kSpriteMediaGetIndImageDescriptionSelect = $0106;
16626 	kSpriteMediaGetDisplayedSampleNumberSelect = $0107;
16627 	kSpriteMediaGetSpriteNameSelect = $0108;
16628 	kSpriteMediaGetImageNameSelect = $0109;
16629 	kSpriteMediaSetSpritePropertySelect = $010A;
16630 	kSpriteMediaGetSpritePropertySelect = $010B;
16631 	kSpriteMediaHitTestAllSpritesSelect = $010C;
16632 	kSpriteMediaHitTestOneSpriteSelect = $010D;
16633 	kSpriteMediaSpriteIndexToIDSelect = $010E;
16634 	kSpriteMediaSpriteIDToIndexSelect = $010F;
16635 	kSpriteMediaGetSpriteActionsForQTEventSelect = $0110;
16636 	kSpriteMediaSetActionVariableSelect = $0111;
16637 	kSpriteMediaGetActionVariableSelect = $0112;
16638 	kSpriteMediaGetIndImagePropertySelect = $0113;
16639 	kSpriteMediaNewSpriteSelect = $0114;
16640 	kSpriteMediaDisposeSpriteSelect = $0115;
16641 	kSpriteMediaSetActionVariableToStringSelect = $0116;
16642 	kSpriteMediaGetActionVariableAsStringSelect = $0117;
16643 	kSpriteMediaNewImageSelect = $011B;
16644 	kSpriteMediaDisposeImageSelect = $011C;
16645 	kSpriteMediaImageIndexToIDSelect = $011D;
16646 	kSpriteMediaImageIDToIndexSelect = $011E;
16647 	kFlashMediaSetPanSelect = $0101;
16648 	kFlashMediaSetZoomSelect = $0102;
16649 	kFlashMediaSetZoomRectSelect = $0103;
16650 	kFlashMediaGetRefConBoundsSelect = $0104;
16651 	kFlashMediaGetRefConIDSelect = $0105;
16652 	kFlashMediaIDToRefConSelect = $0106;
16653 	kFlashMediaGetDisplayedFrameNumberSelect = $0107;
16654 	kFlashMediaFrameNumberToMovieTimeSelect = $0108;
16655 	kFlashMediaFrameLabelToMovieTimeSelect = $0109;
16656 	kFlashMediaGetFlashVariableSelect = $010A;
16657 	kFlashMediaSetFlashVariableSelect = $010B;
16658 	kFlashMediaDoButtonActionsSelect = $010C;
16659 	kFlashMediaGetSupportedSwfVersionSelect = $010D;
16660 	kMovieMediaGetChildDoMCActionCallbackSelect = $0102;
16661 	kMovieMediaGetDoMCActionCallbackSelect = $0103;
16662 	kMovieMediaGetCurrentMoviePropertySelect = $0104;
16663 	kMovieMediaGetCurrentTrackPropertySelect = $0105;
16664 	kMovieMediaGetChildMovieDataReferenceSelect = $0106;
16665 	kMovieMediaSetChildMovieDataReferenceSelect = $0107;
16666 	kMovieMediaLoadChildMovieFromDataReferenceSelect = $0108;
16667 	kMedia3DGetNamedObjectListSelect = $0101;
16668 	kMedia3DGetRendererListSelect = $0102;
16669 	kMedia3DGetCurrentGroupSelect = $0103;
16670 	kMedia3DTranslateNamedObjectToSelect = $0104;
16671 	kMedia3DScaleNamedObjectToSelect = $0105;
16672 	kMedia3DRotateNamedObjectToSelect = $0106;
16673 	kMedia3DSetCameraDataSelect = $0107;
16674 	kMedia3DGetCameraDataSelect = $0108;
16675 	kMedia3DSetCameraAngleAspectSelect = $0109;
16676 	kMedia3DGetCameraAngleAspectSelect = $010A;
16677 	kMedia3DSetCameraRangeSelect = $010D;
16678 	kMedia3DGetCameraRangeSelect = $010E;
16679 	kMedia3DGetViewObjectSelect = $010F;
16680 	kMCSetMovieSelect = $0002;
16681 	kMCGetIndMovieSelect = $0005;
16682 	kMCRemoveAllMoviesSelect = $0006;
16683 	kMCRemoveAMovieSelect = $0003;
16684 	kMCRemoveMovieSelect = $0006;
16685 	kMCIsPlayerEventSelect = $0007;
16686 	kMCSetActionFilterSelect = $0008;
16687 	kMCDoActionSelect = $0009;
16688 	kMCSetControllerAttachedSelect = $000A;
16689 	kMCIsControllerAttachedSelect = $000B;
16690 	kMCSetControllerPortSelect = $000C;
16691 	kMCGetControllerPortSelect = $000D;
16692 	kMCSetVisibleSelect = $000E;
16693 	kMCGetVisibleSelect = $000F;
16694 	kMCGetControllerBoundsRectSelect = $0010;
16695 	kMCSetControllerBoundsRectSelect = $0011;
16696 	kMCGetControllerBoundsRgnSelect = $0012;
16697 	kMCGetWindowRgnSelect = $0013;
16698 	kMCMovieChangedSelect = $0014;
16699 	kMCSetDurationSelect = $0015;
16700 	kMCGetCurrentTimeSelect = $0016;
16701 	kMCNewAttachedControllerSelect = $0017;
16702 	kMCDrawSelect = $0018;
16703 	kMCActivateSelect = $0019;
16704 	kMCIdleSelect = $001A;
16705 	kMCKeySelect = $001B;
16706 	kMCClickSelect = $001C;
16707 	kMCEnableEditingSelect = $001D;
16708 	kMCIsEditingEnabledSelect = $001E;
16709 	kMCCopySelect = $001F;
16710 	kMCCutSelect = $0020;
16711 	kMCPasteSelect = $0021;
16712 	kMCClearSelect = $0022;
16713 	kMCUndoSelect = $0023;
16714 	kMCPositionControllerSelect = $0024;
16715 	kMCGetControllerInfoSelect = $0025;
16716 	kMCSetClipSelect = $0028;
16717 	kMCGetClipSelect = $0029;
16718 	kMCDrawBadgeSelect = $002A;
16719 	kMCSetUpEditMenuSelect = $002B;
16720 	kMCGetMenuStringSelect = $002C;
16721 	kMCSetActionFilterWithRefConSelect = $002D;
16722 	kMCPtInControllerSelect = $002E;
16723 	kMCInvalidateSelect = $002F;
16724 	kMCAdjustCursorSelect = $0030;
16725 	kMCGetInterfaceElementSelect = $0031;
16726 	kMCGetDoActionsProcSelect = $0032;
16727 	kMCAddMovieSegmentSelect = $0033;
16728 	kMCTrimMovieSegmentSelect = $0034;
16729 	kMCSetIdleManagerSelect = $0035;
16730 	kMCSetControllerCapabilitiesSelect = $0036;
16731 	kMusicMediaGetIndexedTunePlayerSelect = $0101;
16732 
16733 {$endc} {not TARGET_CPU_64}
16734 
16735 {$endc} {TARGET_OS_MAC}
16736 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
16737 
16738 end.
16739 {$endc} {not MACOSALLINCLUDE}
16740