PageRenderTime 30ms CodeModel.GetById 22ms app.highlight 4ms RepoModel.GetById 0ms app.codeStats 1ms

/packages/univint/src/QuickTimeStreaming.pas

https://github.com/slibre/freepascal
Pascal | 2473 lines | 787 code | 291 blank | 1395 comment | 0 complexity | 38d0058b1c2400cbd3a62b06df9e7d7c MD5 | raw file
Possible License(s): LGPL-2.0, LGPL-2.1, LGPL-3.0

Large files files are truncated, but you can click here to view the full file

   1{
   2     File:       QuickTime/QuickTimeStreaming.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://www.freepascal.org/bugs.html
  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{$packenum 1}
  27{$macro on}
  28{$inline on}
  29{$calling mwpascal}
  30
  31unit QuickTimeStreaming;
  32interface
  33{$setc UNIVERSAL_INTERFACES_VERSION := $0400}
  34{$setc GAP_INTERFACES_VERSION := $0308}
  35
  36{$ifc not defined USE_CFSTR_CONSTANT_MACROS}
  37    {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
  38{$endc}
  39
  40{$ifc defined CPUPOWERPC and defined CPUI386}
  41	{$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
  42{$endc}
  43{$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
  44	{$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
  45{$endc}
  46
  47{$ifc not defined __ppc__ and defined CPUPOWERPC32}
  48	{$setc __ppc__ := 1}
  49{$elsec}
  50	{$setc __ppc__ := 0}
  51{$endc}
  52{$ifc not defined __ppc64__ and defined CPUPOWERPC64}
  53	{$setc __ppc64__ := 1}
  54{$elsec}
  55	{$setc __ppc64__ := 0}
  56{$endc}
  57{$ifc not defined __i386__ and defined CPUI386}
  58	{$setc __i386__ := 1}
  59{$elsec}
  60	{$setc __i386__ := 0}
  61{$endc}
  62{$ifc not defined __x86_64__ and defined CPUX86_64}
  63	{$setc __x86_64__ := 1}
  64{$elsec}
  65	{$setc __x86_64__ := 0}
  66{$endc}
  67{$ifc not defined __arm__ and defined CPUARM}
  68	{$setc __arm__ := 1}
  69{$elsec}
  70	{$setc __arm__ := 0}
  71{$endc}
  72
  73{$ifc defined cpu64}
  74  {$setc __LP64__ := 1}
  75{$elsec}
  76  {$setc __LP64__ := 0}
  77{$endc}
  78
  79
  80{$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
  81	{$error Conflicting definitions for __ppc__ and __i386__}
  82{$endc}
  83
  84{$ifc defined __ppc__ and __ppc__}
  85	{$setc TARGET_CPU_PPC := TRUE}
  86	{$setc TARGET_CPU_PPC64 := FALSE}
  87	{$setc TARGET_CPU_X86 := FALSE}
  88	{$setc TARGET_CPU_X86_64 := FALSE}
  89	{$setc TARGET_CPU_ARM := FALSE}
  90	{$setc TARGET_OS_MAC := TRUE}
  91	{$setc TARGET_OS_IPHONE := FALSE}
  92	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
  93	{$setc TARGET_OS_EMBEDDED := FALSE}
  94{$elifc defined __ppc64__ and __ppc64__}
  95	{$setc TARGET_CPU_PPC := FALSE}
  96	{$setc TARGET_CPU_PPC64 := TRUE}
  97	{$setc TARGET_CPU_X86 := FALSE}
  98	{$setc TARGET_CPU_X86_64 := FALSE}
  99	{$setc TARGET_CPU_ARM := FALSE}
 100	{$setc TARGET_OS_MAC := TRUE}
 101	{$setc TARGET_OS_IPHONE := FALSE}
 102	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
 103	{$setc TARGET_OS_EMBEDDED := FALSE}
 104{$elifc defined __i386__ and __i386__}
 105	{$setc TARGET_CPU_PPC := FALSE}
 106	{$setc TARGET_CPU_PPC64 := FALSE}
 107	{$setc TARGET_CPU_X86 := TRUE}
 108	{$setc TARGET_CPU_X86_64 := FALSE}
 109	{$setc TARGET_CPU_ARM := FALSE}
 110{$ifc defined(iphonesim)}
 111 	{$setc TARGET_OS_MAC := FALSE}
 112	{$setc TARGET_OS_IPHONE := TRUE}
 113	{$setc TARGET_IPHONE_SIMULATOR := TRUE}
 114{$elsec}
 115	{$setc TARGET_OS_MAC := TRUE}
 116	{$setc TARGET_OS_IPHONE := FALSE}
 117	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
 118{$endc}
 119	{$setc TARGET_OS_EMBEDDED := FALSE}
 120{$elifc defined __x86_64__ and __x86_64__}
 121	{$setc TARGET_CPU_PPC := FALSE}
 122	{$setc TARGET_CPU_PPC64 := FALSE}
 123	{$setc TARGET_CPU_X86 := FALSE}
 124	{$setc TARGET_CPU_X86_64 := TRUE}
 125	{$setc TARGET_CPU_ARM := FALSE}
 126	{$setc TARGET_OS_MAC := TRUE}
 127	{$setc TARGET_OS_IPHONE := FALSE}
 128	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
 129	{$setc TARGET_OS_EMBEDDED := FALSE}
 130{$elifc defined __arm__ and __arm__}
 131	{$setc TARGET_CPU_PPC := FALSE}
 132	{$setc TARGET_CPU_PPC64 := FALSE}
 133	{$setc TARGET_CPU_X86 := FALSE}
 134	{$setc TARGET_CPU_X86_64 := FALSE}
 135	{$setc TARGET_CPU_ARM := TRUE}
 136	{ will require compiler define when/if other Apple devices with ARM cpus ship }
 137	{$setc TARGET_OS_MAC := FALSE}
 138	{$setc TARGET_OS_IPHONE := TRUE}
 139	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
 140	{$setc TARGET_OS_EMBEDDED := TRUE}
 141{$elsec}
 142	{$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ is defined.}
 143{$endc}
 144
 145{$ifc defined __LP64__ and __LP64__ }
 146  {$setc TARGET_CPU_64 := TRUE}
 147{$elsec}
 148  {$setc TARGET_CPU_64 := FALSE}
 149{$endc}
 150
 151{$ifc defined FPC_BIG_ENDIAN}
 152	{$setc TARGET_RT_BIG_ENDIAN := TRUE}
 153	{$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
 154{$elifc defined FPC_LITTLE_ENDIAN}
 155	{$setc TARGET_RT_BIG_ENDIAN := FALSE}
 156	{$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
 157{$elsec}
 158	{$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
 159{$endc}
 160{$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
 161{$setc CALL_NOT_IN_CARBON := FALSE}
 162{$setc OLDROUTINENAMES := FALSE}
 163{$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
 164{$setc OPAQUE_UPP_TYPES := TRUE}
 165{$setc OTCARBONAPPLICATION := TRUE}
 166{$setc OTKERNEL := FALSE}
 167{$setc PM_USE_SESSION_APIS := TRUE}
 168{$setc TARGET_API_MAC_CARBON := TRUE}
 169{$setc TARGET_API_MAC_OS8 := FALSE}
 170{$setc TARGET_API_MAC_OSX := TRUE}
 171{$setc TARGET_CARBON := TRUE}
 172{$setc TARGET_CPU_68K := FALSE}
 173{$setc TARGET_CPU_MIPS := FALSE}
 174{$setc TARGET_CPU_SPARC := FALSE}
 175{$setc TARGET_OS_UNIX := FALSE}
 176{$setc TARGET_OS_WIN32 := FALSE}
 177{$setc TARGET_RT_MAC_68881 := FALSE}
 178{$setc TARGET_RT_MAC_CFM := FALSE}
 179{$setc TARGET_RT_MAC_MACHO := TRUE}
 180{$setc TYPED_FUNCTION_POINTERS := TRUE}
 181{$setc TYPE_BOOL := FALSE}
 182{$setc TYPE_EXTENDED := FALSE}
 183{$setc TYPE_LONGLONG := TRUE}
 184uses MacTypes,Components,Events,Files,QuickdrawTypes,Movies,ImageCompression,QuickTimeComponents;
 185{$endc} {not MACOSALLINCLUDE}
 186
 187
 188{$ifc TARGET_OS_MAC}
 189
 190{$ALIGN MAC68K}
 191
 192{ QuickTime is not available to 64-bit clients }
 193
 194{$ifc not TARGET_CPU_64}
 195
 196const
 197	kQTSInfiniteDuration = $7FFFFFFF;
 198	kQTSUnknownDuration = $00000000;
 199	kQTSNormalForwardRate = $00010000;
 200	kQTSStoppedRate = $00000000;
 201
 202type
 203	QTSPresentationRecordPtr = ^QTSPresentationRecord;
 204	QTSPresentationRecord = record
 205		data: array [0..1-1] of SIGNEDLONG;
 206	end;
 207type
 208	QTSPresentation = ^QTSPresentationRecord;
 209	QTSStreamRecordPtr = ^QTSStreamRecord;
 210	QTSStreamRecord = record
 211		data: array [0..1-1] of SIGNEDLONG;
 212	end;
 213type
 214	QTSStream = ^QTSStreamRecord;
 215	QTSEditEntryPtr = ^QTSEditEntry;
 216	QTSEditEntry = record
 217		presentationDuration: TimeValue64;
 218		streamStartTime: TimeValue64;
 219		streamRate: Fixed;
 220	end;
 221type
 222	QTSEditList = record
 223		numEdits: SInt32;
 224		edits: array [0..0] of QTSEditEntry;
 225	end;
 226	QTSEditListPtr = ^QTSEditList;
 227type
 228	QTSEditListHandle = ^QTSEditListPtr;
 229	QTSNotificationProcPtr = function( inErr: ComponentResult; inNotificationType: OSType; inNotificationParams: UnivPtr; inRefCon: UnivPtr ): ComponentResult;
 230	QTSNotificationUPP = QTSNotificationProcPtr;
 231{-----------------------------------------
 232    Get / Set Info
 233-----------------------------------------}
 234const
 235	kQTSGetURLLink = FourCharCode('gull'); { QTSGetURLLinkRecord* }
 236
 237{ get and set }
 238const
 239	kQTSTargetBufferDurationInfo = FourCharCode('bufr'); { Fixed* in seconds; expected, not actual }
 240	kQTSDurationInfo = FourCharCode('dura'); { QTSDurationAtom* }
 241	kQTSSoundLevelMeteringEnabledInfo = FourCharCode('mtrn'); { Boolean* }
 242	kQTSSoundLevelMeterInfo = FourCharCode('levm'); { LevelMeterInfoPtr }
 243	kQTSSourceTrackIDInfo = FourCharCode('otid'); { UInt32* }
 244	kQTSSourceLayerInfo = FourCharCode('olyr'); { UInt16* }
 245	kQTSSourceLanguageInfo = FourCharCode('olng'); { UInt16* }
 246	kQTSSourceTrackFlagsInfo = FourCharCode('otfl'); { SInt32* }
 247	kQTSSourceDimensionsInfo = FourCharCode('odim'); { QTSDimensionParams* }
 248	kQTSSourceVolumesInfo = FourCharCode('ovol'); { QTSVolumesParams* }
 249	kQTSSourceMatrixInfo = FourCharCode('omat'); { MatrixRecord* }
 250	kQTSSourceClipRectInfo = FourCharCode('oclp'); { Rect* }
 251	kQTSSourceGraphicsModeInfo = FourCharCode('ogrm'); { QTSGraphicsModeParams* }
 252	kQTSSourceScaleInfo = FourCharCode('oscl'); { Point* }
 253	kQTSSourceBoundingRectInfo = FourCharCode('orct'); { Rect* }
 254	kQTSSourceUserDataInfo = FourCharCode('oudt'); { UserData }
 255	kQTSSourceInputMapInfo = FourCharCode('oimp'); { QTAtomContainer }
 256	kQTSInfo_DataProc = FourCharCode('datp'); { QTSDataProcParams* }
 257	kQTSInfo_SendDataExtras = FourCharCode('dext'); { QTSSendDataExtrasParams* }
 258	kQTSInfo_HintTrackID = FourCharCode('htid'); { long* }
 259	kQTSInfo_URL = FourCharCode('url '); { Handle*, cstring in handle }
 260	kQTSInfo_Authentication = FourCharCode('auup'); { QTSAuthenticationParams }
 261	kQTSInfo_MediaPacketizer = FourCharCode('rmpk'); { ComponentInstance }
 262
 263{ get only }
 264const
 265	kQTSStatisticsInfo = FourCharCode('stat'); { QTSStatisticsParams* }
 266	kQTSMinStatusDimensionsInfo = FourCharCode('mstd'); { QTSDimensionParams* }
 267	kQTSNormalStatusDimensionsInfo = FourCharCode('nstd'); { QTSDimensionParams* }
 268	kQTSTotalDataRateInfo = FourCharCode('drtt'); { UInt32*, add to what's there }
 269	kQTSTotalDataRateInInfo = FourCharCode('drti'); { UInt32*, add to what's there }
 270	kQTSTotalDataRateOutInfo = FourCharCode('drto'); { UInt32*, add to what's there }
 271	kQTSLostPercentInfo = FourCharCode('lpct'); { QTSLostPercentParams*, add to what's there }
 272	kQTSNumViewersInfo = FourCharCode('nviw'); { UInt32* }
 273	kQTSMediaTypeInfo = FourCharCode('mtyp'); { OSType* }
 274	kQTSNameInfo = FourCharCode('name'); { QTSNameParams* }
 275	kQTSCanHandleSendDataType = FourCharCode('chsd'); { QTSCanHandleSendDataTypeParams* }
 276	kQTSAnnotationsInfo = FourCharCode('meta'); { QTAtomContainer }
 277	kQTSRemainingBufferTimeInfo = FourCharCode('btms'); { UInt32* remaining buffer time before playback, in microseconds }
 278	kQTSInfo_SettingsText = FourCharCode('sttx'); { QTSSettingsTextParams* }
 279	kQTSInfo_AverageFrameRate = FourCharCode('fps '); { UnsignedFixed* }
 280
 281
 282type
 283	QTSAuthenticationParamsPtr = ^QTSAuthenticationParams;
 284	QTSAuthenticationParams = record
 285		flags: SInt32;
 286		userID: ConstCStringPtr;                 { caller disposes of pointer}
 287		password: ConstCStringPtr;               { caller disposes of pointer}
 288	end;
 289const
 290	kQTSTargetBufferDurationTimeScale = 1000;
 291
 292type
 293	QTSPanelFilterParamsPtr = ^QTSPanelFilterParams;
 294	QTSPanelFilterParams = record
 295		version: SInt32;
 296		inStream: QTSStream;
 297		inPanelType: OSType;
 298		inPanelSubType: OSType;
 299		details: QTAtomSpec;
 300	end;
 301{ return true to keep this panel}
 302type
 303	QTSPanelFilterProcPtr = function( var inParams: QTSPanelFilterParams; inRefCon: UnivPtr ): Boolean;
 304	QTSPanelFilterUPP = QTSPanelFilterProcPtr;
 305const
 306	kQTSSettingsTextSummary = FourCharCode('set1');
 307	kQTSSettingsTextDetails = FourCharCode('setd');
 308
 309type
 310	QTSSettingsTextParamsPtr = ^QTSSettingsTextParams;
 311	QTSSettingsTextParams = record
 312		flags: SInt32;                  { None yet defined}
 313		inSettingsSelector: OSType;     { which kind of setting you want from enum above}
 314		outSettingsAsText: Handle;      { QTS allocates; Caller disposes}
 315		inPanelFilterProc: QTSPanelFilterUPP;      { To get a subset filter with this   }
 316		inPanelFilterProcRefCon: UnivPtr;
 317	end;
 318type
 319	QTSCanHandleSendDataTypeParamsPtr = ^QTSCanHandleSendDataTypeParams;
 320	QTSCanHandleSendDataTypeParams = record
 321		modifierTypeOrInputID: SInt32;
 322		isModifierType: Boolean;
 323		returnedCanHandleSendDataType: Boolean; { callee sets to true if it can handle it}
 324	end;
 325type
 326	QTSNameParams = record
 327		maxNameLength: SInt32;
 328		requestedLanguage: SInt32;
 329		returnedActualLanguage: SInt32;
 330		returnedName: UInt8Ptr;           { pascal string; caller supplies}
 331	end;
 332type
 333	QTSLostPercentParamsPtr = ^QTSLostPercentParams;
 334	QTSLostPercentParams = record
 335		receivedPkts: UInt32;
 336		lostPkts: UInt32;
 337		percent: Fixed;
 338	end;
 339type
 340	QTSDimensionParamsPtr = ^QTSDimensionParams;
 341	QTSDimensionParams = record
 342		width: Fixed;
 343		height: Fixed;
 344	end;
 345type
 346	QTSVolumesParamsPtr = ^QTSVolumesParams;
 347	QTSVolumesParams = record
 348		leftVolume: SInt16;
 349		rightVolume: SInt16;
 350	end;
 351type
 352	QTSGraphicsModeParamsPtr = ^QTSGraphicsModeParams;
 353	QTSGraphicsModeParams = record
 354		graphicsMode: SInt16;
 355		opColor: RGBColor;
 356	end;
 357type
 358	QTSGetURLLinkRecordPtr = ^QTSGetURLLinkRecord;
 359	QTSGetURLLinkRecord = record
 360		displayWhere: Point;
 361		returnedURLLink: Handle;
 362	end;
 363const
 364	kQTSDataProcParamsVersion1 = 1;
 365
 366const
 367	kQTSDataProcType_MediaSample = FourCharCode('mdia');
 368	kQTSDataProcType_HintSample = FourCharCode('hint');
 369
 370type
 371	QTSDataProcParamsPtr = ^QTSDataProcParams;
 372	QTSDataProcParams = record
 373		version: SInt32;
 374		flags: SInt32;
 375		stream: QTSStream;
 376		procType: OSType;
 377		proc: QTSNotificationUPP;
 378		procRefCon: UnivPtr;
 379	end;
 380const
 381	kQTSDataProcSelector_SampleData = FourCharCode('samp');
 382	kQTSDataProcSelector_UserData = FourCharCode('user');
 383
 384const
 385	kQTSSampleDataCallbackParamsVersion1 = 1;
 386
 387type
 388	QTSSampleDataCallbackParamsPtr = ^QTSSampleDataCallbackParams;
 389	QTSSampleDataCallbackParams = record
 390		version: SInt32;
 391		flags: SInt32;
 392		stream: QTSStream;
 393		procType: OSType;
 394		mediaType: OSType;
 395		mediaTimeScale: TimeScale;
 396		sampleDesc: SampleDescriptionHandle;
 397		sampleDescSeed: UInt32;
 398		sampleTime: TimeValue64;
 399		duration: TimeValue64;               { could be 0 }
 400		sampleFlags: SInt32;
 401		dataLength: UInt32;
 402		data: {const} UnivPtr;
 403	end;
 404const
 405	kQTSUserDataCallbackParamsVersion1 = 1;
 406
 407type
 408	QTSUserDataCallbackParamsPtr = ^QTSUserDataCallbackParams;
 409	QTSUserDataCallbackParams = record
 410		version: SInt32;
 411		flags: SInt32;
 412		stream: QTSStream;
 413		procType: OSType;
 414		userDataType: OSType;
 415		userDataHandle: Handle;         { caller must make copy if it wants to keep the data around}
 416	end;
 417const
 418	kQTSSendDataExtrasParamsVersion1 = 1;
 419
 420type
 421	QTSSendDataExtrasParamsPtr = ^QTSSendDataExtrasParams;
 422	QTSSendDataExtrasParams = record
 423		version: SInt32;
 424		flags: SInt32;
 425		procType: OSType;
 426	end;
 427type
 428	QTSModalFilterProcPtr = function( inDialog: DialogPtr; const (*var*) inEvent: EventRecord; var ioItemHit: SInt16; inRefCon: UnivPtr ): Boolean;
 429	QTSModalFilterUPP = QTSModalFilterProcPtr;
 430{-----------------------------------------
 431    Characteristics
 432-----------------------------------------}
 433{ characteristics in Movies.h work here too }
 434const
 435	kQTSSupportsPerStreamControlCharacteristic = FourCharCode('psct');
 436
 437type
 438	QTSVideoParamsPtr = ^QTSVideoParams;
 439	QTSVideoParams = record
 440		width: Fixed;
 441		height: Fixed;
 442		matrix: MatrixRecord;
 443		gWorld: CGrafPtr;
 444		gdHandle: GDHandle_fix;
 445		clip: RgnHandle;
 446		graphicsMode: SInt16;
 447		opColor: RGBColor;
 448	end;
 449type
 450	QTSAudioParamsPtr = ^QTSAudioParams;
 451	QTSAudioParams = record
 452		leftVolume: SInt16;
 453		rightVolume: SInt16;
 454		bassLevel: SInt16;
 455		trebleLevel: SInt16;
 456		frequencyBandsCount: SInt16;
 457		frequencyBands: UnivPtr;
 458		levelMeteringEnabled: Boolean;
 459	end;
 460type
 461	QTSMediaParamsPtr = ^QTSMediaParams;
 462	QTSMediaParams = record
 463		v: QTSVideoParams;
 464		a: QTSAudioParams;
 465	end;
 466const
 467	kQTSMustDraw = 1 shl 3;
 468	kQTSAtEnd = 1 shl 4;
 469	kQTSPreflightDraw = 1 shl 5;
 470	kQTSSyncDrawing = 1 shl 6;
 471
 472{ media task result flags }
 473const
 474	kQTSDidDraw = 1 shl 0;
 475	kQTSNeedsToDraw = 1 shl 2;
 476	kQTSDrawAgain = 1 shl 3;
 477	kQTSPartialDraw = 1 shl 4;
 478
 479{============================================================================
 480        Notifications
 481============================================================================}
 482{ ------ notification types ------ }
 483const
 484	kQTSNullNotification = FourCharCode('null'); { NULL }
 485	kQTSErrorNotification = FourCharCode('err '); { QTSErrorParams*, optional }
 486	kQTSNewPresDetectedNotification = FourCharCode('newp'); { QTSNewPresDetectedParams* }
 487	kQTSPresBeginChangingNotification = FourCharCode('prcb'); { NULL }
 488	kQTSPresDoneChangingNotification = FourCharCode('prcd'); { NULL }
 489	kQTSPresentationChangedNotification = FourCharCode('prch'); { NULL }
 490	kQTSNewStreamNotification = FourCharCode('stnw'); { QTSNewStreamParams* }
 491	kQTSStreamBeginChangingNotification = FourCharCode('stcb'); { QTSStream }
 492	kQTSStreamDoneChangingNotification = FourCharCode('stcd'); { QTSStream }
 493	kQTSStreamChangedNotification = FourCharCode('stch'); { QTSStreamChangedParams* }
 494	kQTSStreamGoneNotification = FourCharCode('stgn'); { QTSStreamGoneParams* }
 495	kQTSPreviewAckNotification = FourCharCode('pvak'); { QTSStream }
 496	kQTSPrerollAckNotification = FourCharCode('pack'); { QTSStream }
 497	kQTSStartAckNotification = FourCharCode('sack'); { QTSStream }
 498	kQTSStopAckNotification = FourCharCode('xack'); { QTSStream }
 499	kQTSStatusNotification = FourCharCode('stat'); { QTSStatusParams* }
 500	kQTSURLNotification = FourCharCode('url '); { QTSURLParams* }
 501	kQTSDurationNotification = FourCharCode('dura'); { QTSDurationAtom* }
 502	kQTSNewPresentationNotification = FourCharCode('nprs'); { QTSPresentation }
 503	kQTSPresentationGoneNotification = FourCharCode('xprs'); { QTSPresentation }
 504	kQTSPresentationDoneNotification = FourCharCode('pdon'); { NULL }
 505	kQTSBandwidthAlertNotification = FourCharCode('bwal'); { QTSBandwidthAlertParams* }
 506	kQTSAnnotationsChangedNotification = FourCharCode('meta'); { NULL }
 507
 508
 509{ flags for QTSErrorParams }
 510const
 511	kQTSFatalErrorFlag = $00000001;
 512
 513type
 514	QTSErrorParamsPtr = ^QTSErrorParams;
 515	QTSErrorParams = record
 516		errorString: ConstCStringPtr;
 517		flags: SInt32;
 518	end;
 519type
 520	QTSNewPresDetectedParamsPtr = ^QTSNewPresDetectedParams;
 521	QTSNewPresDetectedParams = record
 522		data: UnivPtr;
 523	end;
 524type
 525	QTSNewStreamParamsPtr = ^QTSNewStreamParams;
 526	QTSNewStreamParams = record
 527		stream: QTSStream;
 528	end;
 529type
 530	QTSStreamChangedParamsPtr = ^QTSStreamChangedParams;
 531	QTSStreamChangedParams = record
 532		stream: QTSStream;
 533		mediaComponent: ComponentInstance;         { could be NULL }
 534	end;
 535type
 536	QTSStreamGoneParamsPtr = ^QTSStreamGoneParams;
 537	QTSStreamGoneParams = record
 538		stream: QTSStream;
 539	end;
 540type
 541	QTSStatusParamsPtr = ^QTSStatusParams;
 542	QTSStatusParams = record
 543		status: UInt32;
 544		statusString: ConstCStringPtr;
 545		detailedStatus: UInt32;
 546		detailedStatusString: ConstCStringPtr;
 547	end;
 548type
 549	QTSInfoParamsPtr = ^QTSInfoParams;
 550	QTSInfoParams = record
 551		infoType: OSType;
 552		infoParams: UnivPtr;
 553	end;
 554type
 555	QTSURLParamsPtr = ^QTSURLParams;
 556	QTSURLParams = record
 557		urlLength: UInt32;
 558		url: ConstCStringPtr;
 559	end;
 560const
 561	kQTSBandwidthAlertNeedToStop = 1 shl 0;
 562	kQTSBandwidthAlertRestartAt = 1 shl 1;
 563
 564type
 565	QTSBandwidthAlertParamsPtr = ^QTSBandwidthAlertParams;
 566	QTSBandwidthAlertParams = record
 567		flags: SInt32;
 568		restartAt: TimeValue;              { new field in QT 4.1}
 569		reserved: UnivPtr;
 570	end;
 571{============================================================================
 572        Presentation
 573============================================================================}
 574{-----------------------------------------
 575     Flags
 576-----------------------------------------}
 577{ flags for NewPresentationFromData }
 578const
 579	kQTSAutoModeFlag = $00000001;
 580	kQTSDontShowStatusFlag = $00000008;
 581	kQTSSendMediaFlag = $00010000;
 582	kQTSReceiveMediaFlag = $00020000;
 583
 584type
 585	QTSNewPresentationParamsPtr = ^QTSNewPresentationParams;
 586	QTSNewPresentationParams = record
 587		dataType: OSType;
 588		data: {const} UnivPtr;
 589		dataLength: UInt32;
 590		editList: QTSEditListHandle;
 591		flags: SInt32;
 592		timeScale: TimeScale_fix;              { set to 0 for default timescale }
 593		mediaParams: QTSMediaParamsPtr;
 594		notificationProc: QTSNotificationUPP;
 595		notificationRefCon: UnivPtr;
 596	end;
 597type
 598	QTSPresParamsPtr = ^QTSPresParams;
 599	QTSPresParams = record
 600		version: UInt32;
 601		editList: QTSEditListHandle;
 602		flags: SInt32;
 603		timeScale: TimeScale_fix;              { set to 0 for default timescale }
 604		mediaParams: QTSMediaParamsPtr;
 605		notificationProc: QTSNotificationUPP;
 606		notificationRefCon: UnivPtr;
 607	end;
 608const
 609	kQTSPresParamsVersion1 = 1;
 610
 611type
 612	QTSPresIdleParamsPtr = ^QTSPresIdleParams;
 613	QTSPresIdleParams = record
 614		stream: QTSStream;
 615		movieTimeToDisplay: TimeValue64;
 616		flagsIn: SInt32;
 617		flagsOut: SInt32;
 618	end;
 619const
 620	kQTSExportFlag_ShowDialog = $00000001;
 621
 622const
 623	kQTSExportParamsVersion1 = 1;
 624
 625type
 626	QTSExportParamsPtr = ^QTSExportParams;
 627	QTSExportParams = record
 628		version: SInt32;
 629		exportType: OSType;
 630		exportExtraData: UnivPtr;
 631		destinationContainerType: OSType;
 632		destinationContainerData: UnivPtr;
 633		destinationContainerExtras: UnivPtr;
 634		flagsIn: SInt32;
 635		flagsOut: SInt32;
 636		filterProc: QTSModalFilterUPP;
 637		filterProcRefCon: UnivPtr;
 638		exportComponent: Component;        { NULL unless you want to override }
 639	end;
 640{-----------------------------------------
 641    Toolbox Init/Close
 642-----------------------------------------}
 643{ all "apps" must call this }
 644{
 645 *  InitializeQTS()
 646 *  
 647 *  Availability:
 648 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 649 *    CarbonLib:        in CarbonLib 1.1 and later
 650 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 651 *    Windows:          in QTSClient.lib 4.0 and later
 652 }
 653function InitializeQTS: OSErr; external name '_InitializeQTS';
 654(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 655
 656
 657{
 658 *  TerminateQTS()
 659 *  
 660 *  Availability:
 661 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 662 *    CarbonLib:        in CarbonLib 1.1 and later
 663 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 664 *    Windows:          in QTSClient.lib 4.0 and later
 665 }
 666function TerminateQTS: OSErr; external name '_TerminateQTS';
 667(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 668
 669
 670{-----------------------------------------
 671    Presentation Functions
 672-----------------------------------------}
 673{
 674 *  QTSNewPresentation()
 675 *  
 676 *  Availability:
 677 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 678 *    CarbonLib:        in CarbonLib 1.1 and later
 679 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 680 *    Windows:          in QTSClient.lib 4.0 and later
 681 }
 682function QTSNewPresentation( const (*var*) inParams: QTSNewPresentationParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentation';
 683(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 684
 685
 686{
 687 *  QTSNewPresentationFromData()
 688 *  
 689 *  Availability:
 690 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 691 *    CarbonLib:        in CarbonLib 1.3 and later
 692 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
 693 *    Windows:          in QTSClient.lib 5.0 and later
 694 }
 695function QTSNewPresentationFromData( inDataType: OSType; inData: {const} UnivPtr; (*const*) var inDataLength: SInt64; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromData';
 696(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 697
 698
 699{
 700 *  QTSNewPresentationFromFile()
 701 *  
 702 *  Availability:
 703 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 704 *    CarbonLib:        in CarbonLib 1.3 and later
 705 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
 706 *    Windows:          in QTSClient.lib 5.0 and later
 707 }
 708function QTSNewPresentationFromFile( const (*var*) inFileSpec: FSSpec; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromFile';
 709(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 710
 711
 712{
 713 *  QTSNewPresentationFromDataRef()
 714 *  
 715 *  Availability:
 716 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 717 *    CarbonLib:        in CarbonLib 1.3 and later
 718 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
 719 *    Windows:          in QTSClient.lib 5.0 and later
 720 }
 721function QTSNewPresentationFromDataRef( inDataRef: Handle; inDataRefType: OSType; const (*var*) inPresParams: QTSPresParams; var outPresentation: QTSPresentation ): OSErr; external name '_QTSNewPresentationFromDataRef';
 722(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 723
 724
 725{
 726 *  QTSDisposePresentation()
 727 *  
 728 *  Availability:
 729 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 730 *    CarbonLib:        in CarbonLib 1.1 and later
 731 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 732 *    Windows:          in QTSClient.lib 4.0 and later
 733 }
 734function QTSDisposePresentation( inPresentation: QTSPresentation; inFlags: SInt32 ): OSErr; external name '_QTSDisposePresentation';
 735(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 736
 737
 738{
 739 *  QTSPresExport()
 740 *  
 741 *  Availability:
 742 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 743 *    CarbonLib:        in CarbonLib 1.3 and later
 744 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
 745 *    Windows:          in QTSClient.lib 5.0 and later
 746 }
 747function QTSPresExport( inPresentation: QTSPresentation; inStream: QTSStream; var inExportParams: QTSExportParams ): OSErr; external name '_QTSPresExport';
 748(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 749
 750
 751{
 752 *  QTSPresIdle()
 753 *  
 754 *  Availability:
 755 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 756 *    CarbonLib:        in CarbonLib 1.1 and later
 757 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 758 *    Windows:          in QTSClient.lib 4.0 and later
 759 }
 760procedure QTSPresIdle( inPresentation: QTSPresentation; var ioParams: QTSPresIdleParams ); external name '_QTSPresIdle';
 761(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 762
 763
 764{
 765 *  QTSPresInvalidateRegion()
 766 *  
 767 *  Availability:
 768 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 769 *    CarbonLib:        in CarbonLib 1.1 and later
 770 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 771 *    Windows:          in QTSClient.lib 4.0 and later
 772 }
 773function QTSPresInvalidateRegion( inPresentation: QTSPresentation; inRegion: RgnHandle ): OSErr; external name '_QTSPresInvalidateRegion';
 774(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 775
 776
 777{-----------------------------------------
 778    Presentation Configuration
 779-----------------------------------------}
 780{
 781 *  QTSPresSetFlags()
 782 *  
 783 *  Availability:
 784 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 785 *    CarbonLib:        in CarbonLib 1.1 and later
 786 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 787 *    Windows:          in QTSClient.lib 4.0 and later
 788 }
 789function QTSPresSetFlags( inPresentation: QTSPresentation; inFlags: SInt32; inFlagsMask: SInt32 ): OSErr; external name '_QTSPresSetFlags';
 790(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 791
 792
 793{
 794 *  QTSPresGetFlags()
 795 *  
 796 *  Availability:
 797 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 798 *    CarbonLib:        in CarbonLib 1.1 and later
 799 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 800 *    Windows:          in QTSClient.lib 4.0 and later
 801 }
 802function QTSPresGetFlags( inPresentation: QTSPresentation; var outFlags: SInt32 ): OSErr; external name '_QTSPresGetFlags';
 803(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 804
 805
 806{
 807 *  QTSPresGetTimeBase()
 808 *  
 809 *  Availability:
 810 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 811 *    CarbonLib:        in CarbonLib 1.1 and later
 812 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 813 *    Windows:          in QTSClient.lib 4.0 and later
 814 }
 815function QTSPresGetTimeBase( inPresentation: QTSPresentation; var outTimeBase: TimeBase ): OSErr; external name '_QTSPresGetTimeBase';
 816(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 817
 818
 819{
 820 *  QTSPresGetTimeScale()
 821 *  
 822 *  Availability:
 823 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 824 *    CarbonLib:        in CarbonLib 1.1 and later
 825 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 826 *    Windows:          in QTSClient.lib 4.0 and later
 827 }
 828function QTSPresGetTimeScale( inPresentation: QTSPresentation; var outTimeScale: TimeScale ): OSErr; external name '_QTSPresGetTimeScale';
 829(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 830
 831
 832{
 833 *  QTSPresSetInfo()
 834 *  
 835 *  Availability:
 836 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 837 *    CarbonLib:        in CarbonLib 1.1 and later
 838 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 839 *    Windows:          in QTSClient.lib 4.0 and later
 840 }
 841function QTSPresSetInfo( inPresentation: QTSPresentation; inStream: QTSStream; inSelector: OSType; ioParam: UnivPtr ): OSErr; external name '_QTSPresSetInfo';
 842(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 843
 844
 845{
 846 *  QTSPresGetInfo()
 847 *  
 848 *  Availability:
 849 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 850 *    CarbonLib:        in CarbonLib 1.1 and later
 851 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 852 *    Windows:          in QTSClient.lib 4.0 and later
 853 }
 854function QTSPresGetInfo( inPresentation: QTSPresentation; inStream: QTSStream; inSelector: OSType; ioParam: UnivPtr ): OSErr; external name '_QTSPresGetInfo';
 855(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 856
 857
 858{
 859 *  QTSPresHasCharacteristic()
 860 *  
 861 *  Availability:
 862 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 863 *    CarbonLib:        in CarbonLib 1.1 and later
 864 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 865 *    Windows:          in QTSClient.lib 4.0 and later
 866 }
 867function QTSPresHasCharacteristic( inPresentation: QTSPresentation; inStream: QTSStream; inCharacteristic: OSType; var outHasIt: Boolean ): OSErr; external name '_QTSPresHasCharacteristic';
 868(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 869
 870
 871{
 872 *  QTSPresSetNotificationProc()
 873 *  
 874 *  Availability:
 875 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 876 *    CarbonLib:        in CarbonLib 1.1 and later
 877 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 878 *    Windows:          in QTSClient.lib 4.0 and later
 879 }
 880function QTSPresSetNotificationProc( inPresentation: QTSPresentation; inNotificationProc: QTSNotificationUPP; inRefCon: UnivPtr ): OSErr; external name '_QTSPresSetNotificationProc';
 881(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 882
 883
 884{
 885 *  QTSPresGetNotificationProc()
 886 *  
 887 *  Availability:
 888 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 889 *    CarbonLib:        in CarbonLib 1.1 and later
 890 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 891 *    Windows:          in QTSClient.lib 4.0 and later
 892 }
 893function QTSPresGetNotificationProc( inPresentation: QTSPresentation; var outNotificationProc: QTSNotificationUPP; var outRefCon: UnivPtr ): OSErr; external name '_QTSPresGetNotificationProc';
 894(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 895
 896
 897{-----------------------------------------
 898    Presentation Control
 899-----------------------------------------}
 900{
 901 *  QTSPresPreview()
 902 *  
 903 *  Availability:
 904 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 905 *    CarbonLib:        in CarbonLib 1.3 and later
 906 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
 907 }
 908function QTSPresPreview( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inTimeValue: TimeValue64; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreview';
 909(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 910
 911
 912{
 913 *  QTSPresPreroll()
 914 *  
 915 *  Availability:
 916 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 917 *    CarbonLib:        in CarbonLib 1.1 and later
 918 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 919 *    Windows:          in QTSClient.lib 4.0 and later
 920 }
 921function QTSPresPreroll( inPresentation: QTSPresentation; inStream: QTSStream; inTimeValue: UInt32; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreroll';
 922(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 923
 924
 925{
 926 *  QTSPresPreroll64()
 927 *  
 928 *  Availability:
 929 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 930 *    CarbonLib:        in CarbonLib 1.1 and later
 931 *    Non-Carbon CFM:   in QTStreamLib 4.1 and later
 932 *    Windows:          in QTSClient.lib 4.1 and later
 933 }
 934function QTSPresPreroll64( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inPrerollTime: TimeValue64; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresPreroll64';
 935(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 936
 937
 938{
 939 *  QTSPresStart()
 940 *  
 941 *  Availability:
 942 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 943 *    CarbonLib:        in CarbonLib 1.1 and later
 944 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 945 *    Windows:          in QTSClient.lib 4.0 and later
 946 }
 947function QTSPresStart( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSPresStart';
 948(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 949
 950
 951{
 952 *  QTSPresSkipTo()
 953 *  
 954 *  Availability:
 955 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 956 *    CarbonLib:        in CarbonLib 1.1 and later
 957 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 958 *    Windows:          in QTSClient.lib 4.0 and later
 959 }
 960function QTSPresSkipTo( inPresentation: QTSPresentation; inTimeValue: UInt32 ): OSErr; external name '_QTSPresSkipTo';
 961(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 962
 963
 964{
 965 *  QTSPresSkipTo64()
 966 *  
 967 *  Availability:
 968 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 969 *    CarbonLib:        in CarbonLib 1.1 and later
 970 *    Non-Carbon CFM:   in QTStreamLib 4.1 and later
 971 *    Windows:          in QTSClient.lib 4.1 and later
 972 }
 973function QTSPresSkipTo64( inPresentation: QTSPresentation; (*const*) var inTimeValue: TimeValue64 ): OSErr; external name '_QTSPresSkipTo64';
 974(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 975
 976
 977{
 978 *  QTSPresStop()
 979 *  
 980 *  Availability:
 981 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
 982 *    CarbonLib:        in CarbonLib 1.1 and later
 983 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
 984 *    Windows:          in QTSClient.lib 4.0 and later
 985 }
 986function QTSPresStop( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSPresStop';
 987(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
 988
 989
 990{============================================================================
 991        Streams
 992============================================================================}
 993{-----------------------------------------
 994    Stream Functions
 995-----------------------------------------}
 996{
 997 *  QTSPresNewStream()
 998 *  
 999 *  Availability:
1000 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1001 *    CarbonLib:        in CarbonLib 1.1 and later
1002 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1003 *    Windows:          in QTSClient.lib 4.0 and later
1004 }
1005function QTSPresNewStream( inPresentation: QTSPresentation; inDataType: OSType; inData: {const} UnivPtr; inDataLength: UInt32; inFlags: SInt32; var outStream: QTSStream ): OSErr; external name '_QTSPresNewStream';
1006(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1007
1008
1009{
1010 *  QTSDisposeStream()
1011 *  
1012 *  Availability:
1013 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1014 *    CarbonLib:        in CarbonLib 1.1 and later
1015 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1016 *    Windows:          in QTSClient.lib 4.0 and later
1017 }
1018function QTSDisposeStream( inStream: QTSStream; inFlags: SInt32 ): OSErr; external name '_QTSDisposeStream';
1019(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1020
1021
1022{
1023 *  QTSPresGetNumStreams()
1024 *  
1025 *  Availability:
1026 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1027 *    CarbonLib:        in CarbonLib 1.1 and later
1028 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1029 *    Windows:          in QTSClient.lib 4.0 and later
1030 }
1031function QTSPresGetNumStreams( inPresentation: QTSPresentation ): UInt32; external name '_QTSPresGetNumStreams';
1032(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1033
1034
1035{
1036 *  QTSPresGetIndStream()
1037 *  
1038 *  Availability:
1039 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1040 *    CarbonLib:        in CarbonLib 1.1 and later
1041 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1042 *    Windows:          in QTSClient.lib 4.0 and later
1043 }
1044function QTSPresGetIndStream( inPresentation: QTSPresentation; inIndex: UInt32 ): QTSStream; external name '_QTSPresGetIndStream';
1045(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1046
1047
1048{
1049 *  QTSGetStreamPresentation()
1050 *  
1051 *  Availability:
1052 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1053 *    CarbonLib:        in CarbonLib 1.1 and later
1054 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1055 *    Windows:          in QTSClient.lib 4.0 and later
1056 }
1057function QTSGetStreamPresentation( inStream: QTSStream ): QTSPresentation; external name '_QTSGetStreamPresentation';
1058(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1059
1060
1061{
1062 *  QTSPresSetPreferredRate()
1063 *  
1064 *  Availability:
1065 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1066 *    CarbonLib:        in CarbonLib 1.1 and later
1067 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1068 *    Windows:          in QTSClient.lib 4.0 and later
1069 }
1070function QTSPresSetPreferredRate( inPresentation: QTSPresentation; inRate: Fixed; inFlags: SInt32 ): OSErr; external name '_QTSPresSetPreferredRate';
1071(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1072
1073
1074{
1075 *  QTSPresGetPreferredRate()
1076 *  
1077 *  Availability:
1078 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1079 *    CarbonLib:        in CarbonLib 1.1 and later
1080 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1081 *    Windows:          in QTSClient.lib 4.0 and later
1082 }
1083function QTSPresGetPreferredRate( inPresentation: QTSPresentation; var outRate: Fixed ): OSErr; external name '_QTSPresGetPreferredRate';
1084(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1085
1086
1087{
1088 *  QTSPresSetEnable()
1089 *  
1090 *  Availability:
1091 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1092 *    CarbonLib:        in CarbonLib 1.1 and later
1093 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1094 *    Windows:          in QTSClient.lib 4.0 and later
1095 }
1096function QTSPresSetEnable( inPresentation: QTSPresentation; inStream: QTSStream; inEnableMode: Boolean ): OSErr; external name '_QTSPresSetEnable';
1097(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1098
1099
1100{
1101 *  QTSPresGetEnable()
1102 *  
1103 *  Availability:
1104 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1105 *    CarbonLib:        in CarbonLib 1.1 and later
1106 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1107 *    Windows:          in QTSClient.lib 4.0 and later
1108 }
1109function QTSPresGetEnable( inPresentation: QTSPresentation; inStream: QTSStream; var outEnableMode: Boolean ): OSErr; external name '_QTSPresGetEnable';
1110(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1111
1112
1113{
1114 *  QTSPresSetPresenting()
1115 *  
1116 *  Availability:
1117 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1118 *    CarbonLib:        in CarbonLib 1.1 and later
1119 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1120 *    Windows:          in QTSClient.lib 4.0 and later
1121 }
1122function QTSPresSetPresenting( inPresentation: QTSPresentation; inStream: QTSStream; inPresentingMode: Boolean ): OSErr; external name '_QTSPresSetPresenting';
1123(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1124
1125
1126{
1127 *  QTSPresGetPresenting()
1128 *  
1129 *  Availability:
1130 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1131 *    CarbonLib:        in CarbonLib 1.1 and later
1132 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1133 *    Windows:          in QTSClient.lib 4.0 and later
1134 }
1135function QTSPresGetPresenting( inPresentation: QTSPresentation; inStream: QTSStream; var outPresentingMode: Boolean ): OSErr; external name '_QTSPresGetPresenting';
1136(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1137
1138
1139{
1140 *  QTSPresSetActiveSegment()
1141 *  
1142 *  Availability:
1143 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1144 *    CarbonLib:        in CarbonLib 1.1 and later
1145 *    Non-Carbon CFM:   in QTStreamLib 4.1 and later
1146 *    Windows:          in QTSClient.lib 4.1 and later
1147 }
1148function QTSPresSetActiveSegment( inPresentation: QTSPresentation; inStream: QTSStream; (*const*) var inStartTime: TimeValue64; (*const*) var inDuration: TimeValue64 ): OSErr; external name '_QTSPresSetActiveSegment';
1149(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1150
1151
1152{
1153 *  QTSPresGetActiveSegment()
1154 *  
1155 *  Availability:
1156 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1157 *    CarbonLib:        in CarbonLib 1.1 and later
1158 *    Non-Carbon CFM:   in QTStreamLib 4.1 and later
1159 *    Windows:          in QTSClient.lib 4.1 and later
1160 }
1161function QTSPresGetActiveSegment( inPresentation: QTSPresentation; inStream: QTSStream; var outStartTime: TimeValue64; var outDuration: TimeValue64 ): OSErr; external name '_QTSPresGetActiveSegment';
1162(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1163
1164
1165{
1166 *  QTSPresSetPlayHints()
1167 *  
1168 *  Availability:
1169 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1170 *    CarbonLib:        in CarbonLib 1.1 and later
1171 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1172 *    Windows:          in QTSClient.lib 4.0 and later
1173 }
1174function QTSPresSetPlayHints( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inFlagsMask: SInt32 ): OSErr; external name '_QTSPresSetPlayHints';
1175(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1176
1177
1178{
1179 *  QTSPresGetPlayHints()
1180 *  
1181 *  Availability:
1182 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1183 *    CarbonLib:        in CarbonLib 1.1 and later
1184 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1185 *    Windows:          in QTSClient.lib 4.0 and later
1186 }
1187function QTSPresGetPlayHints( inPresentation: QTSPresentation; inStream: QTSStream; var outFlags: SInt32 ): OSErr; external name '_QTSPresGetPlayHints';
1188(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1189
1190
1191{-----------------------------------------
1192    Stream Spatial Functions
1193-----------------------------------------}
1194{
1195 *  QTSPresSetGWorld()
1196 *  
1197 *  Availability:
1198 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1199 *    CarbonLib:        in CarbonLib 1.1 and later
1200 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1201 *    Windows:          in QTSClient.lib 4.0 and later
1202 }
1203function QTSPresSetGWorld( inPresentation: QTSPresentation; inStream: QTSStream; inGWorld: CGrafPtr; inGDHandle: GDHandle ): OSErr; external name '_QTSPresSetGWorld';
1204(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1205
1206
1207{
1208 *  QTSPresGetGWorld()
1209 *  
1210 *  Availability:
1211 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1212 *    CarbonLib:        in CarbonLib 1.1 and later
1213 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1214 *    Windows:          in QTSClient.lib 4.0 and later
1215 }
1216function QTSPresGetGWorld( inPresentation: QTSPresentation; inStream: QTSStream; var outGWorld: CGrafPtr; var outGDHandle: GDHandle ): OSErr; external name '_QTSPresGetGWorld';
1217(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1218
1219
1220{
1221 *  QTSPresSetClip()
1222 *  
1223 *  Availability:
1224 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1225 *    CarbonLib:        in CarbonLib 1.1 and later
1226 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1227 *    Windows:          in QTSClient.lib 4.0 and later
1228 }
1229function QTSPresSetClip( inPresentation: QTSPresentation; inStream: QTSStream; inClip: RgnHandle ): OSErr; external name '_QTSPresSetClip';
1230(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1231
1232
1233{
1234 *  QTSPresGetClip()
1235 *  
1236 *  Availability:
1237 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1238 *    CarbonLib:        in CarbonLib 1.1 and later
1239 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1240 *    Windows:          in QTSClient.lib 4.0 and later
1241 }
1242function QTSPresGetClip( inPresentation: QTSPresentation; inStream: QTSStream; var outClip: RgnHandle ): OSErr; external name '_QTSPresGetClip';
1243(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1244
1245
1246{
1247 *  QTSPresSetMatrix()
1248 *  
1249 *  Availability:
1250 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1251 *    CarbonLib:        in CarbonLib 1.1 and later
1252 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1253 *    Windows:          in QTSClient.lib 4.0 and later
1254 }
1255function QTSPresSetMatrix( inPresentation: QTSPresentation; inStream: QTSStream; const (*var*) inMatrix: MatrixRecord ): OSErr; external name '_QTSPresSetMatrix';
1256(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1257
1258
1259{
1260 *  QTSPresGetMatrix()
1261 *  
1262 *  Availability:
1263 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1264 *    CarbonLib:        in CarbonLib 1.1 and later
1265 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1266 *    Windows:          in QTSClient.lib 4.0 and later
1267 }
1268function QTSPresGetMatrix( inPresentation: QTSPresentation; inStream: QTSStream; var outMatrix: MatrixRecord ): OSErr; external name '_QTSPresGetMatrix';
1269(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1270
1271
1272{
1273 *  QTSPresSetDimensions()
1274 *  
1275 *  Availability:
1276 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1277 *    CarbonLib:        in CarbonLib 1.1 and later
1278 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1279 *    Windows:          in QTSClient.lib 4.0 and later
1280 }
1281function QTSPresSetDimensions( inPresentation: QTSPresentation; inStream: QTSStream; inWidth: Fixed; inHeight: Fixed ): OSErr; external name '_QTSPresSetDimensions';
1282(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1283
1284
1285{
1286 *  QTSPresGetDimensions()
1287 *  
1288 *  Availability:
1289 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1290 *    CarbonLib:        in CarbonLib 1.1 and later
1291 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1292 *    Windows:          in QTSClient.lib 4.0 and later
1293 }
1294function QTSPresGetDimensions( inPresentation: QTSPresentation; inStream: QTSStream; var outWidth: Fixed; var outHeight: Fixed ): OSErr; external name '_QTSPresGetDimensions';
1295(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1296
1297
1298{
1299 *  QTSPresSetGraphicsMode()
1300 *  
1301 *  Availability:
1302 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1303 *    CarbonLib:        in CarbonLib 1.1 and later
1304 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1305 *    Windows:          in QTSClient.lib 4.0 and later
1306 }
1307function QTSPresSetGraphicsMode( inPresentation: QTSPresentation; inStream: QTSStream; inMode: SInt16; const (*var*) inOpColor: RGBColor ): OSErr; external name '_QTSPresSetGraphicsMode';
1308(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1309
1310
1311{
1312 *  QTSPresGetGraphicsMode()
1313 *  
1314 *  Availability:
1315 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1316 *    CarbonLib:        in CarbonLib 1.1 and later
1317 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1318 *    Windows:          in QTSClient.lib 4.0 and later
1319 }
1320function QTSPresGetGraphicsMode( inPresentation: QTSPresentation; inStream: QTSStream; var outMode: SInt16; var outOpColor: RGBColor ): OSErr; external name '_QTSPresGetGraphicsMode';
1321(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1322
1323
1324{
1325 *  QTSPresGetPicture()
1326 *  
1327 *  Availability:
1328 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1329 *    CarbonLib:        in CarbonLib 1.1 and later
1330 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1331 *    Windows:          in QTSClient.lib 4.0 and later
1332 }
1333function QTSPresGetPicture( inPresentation: QTSPresentation; inStream: QTSStream; var outPicture: PicHandle ): OSErr; external name '_QTSPresGetPicture';
1334(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1335
1336
1337{
1338 *  QTSPresSetVisualContext()
1339 *  
1340 *  Availability:
1341 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1342 *    CarbonLib:        in CarbonLib 1.1 and later
1343 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1344 *    Windows:          in QTSClient.lib 4.0 and later
1345 }
1346function QTSPresSetVisualContext( inPresentation: QTSPresentation; inStream: QTSStream; inVisualContext: QTVisualContextRef ): OSErr; external name '_QTSPresSetVisualContext';
1347(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1348
1349
1350{
1351 *  QTSPresGetVisualContext()
1352 *  
1353 *  Availability:
1354 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1355 *    CarbonLib:        in CarbonLib 1.1 and later
1356 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1357 *    Windows:          in QTSClient.lib 4.0 and later
1358 }
1359function QTSPresGetVisualContext( inPresentation: QTSPresentation; inStream: QTSStream; var outVisualContext: QTVisualContextRef ): OSErr; external name '_QTSPresGetVisualContext';
1360(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1361
1362
1363{-----------------------------------------
1364    Stream Sound Functions
1365-----------------------------------------}
1366{
1367 *  QTSPresSetVolumes()
1368 *  
1369 *  Availability:
1370 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1371 *    CarbonLib:        in CarbonLib 1.1 and later
1372 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1373 *    Windows:          in QTSClient.lib 4.0 and later
1374 }
1375function QTSPresSetVolumes( inPresentation: QTSPresentation; inStream: QTSStream; inLeftVolume: SInt16; inRightVolume: SInt16 ): OSErr; external name '_QTSPresSetVolumes';
1376(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1377
1378
1379{
1380 *  QTSPresGetVolumes()
1381 *  
1382 *  Availability:
1383 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1384 *    CarbonLib:        in CarbonLib 1.1 and later
1385 *    Non-Carbon CFM:   in QTStreamLib 4.0 and later
1386 *    Windows:          in QTSClient.lib 4.0 and later
1387 }
1388function QTSPresGetVolumes( inPresentation: QTSPresentation; inStream: QTSStream; var outLeftVolume: SInt16; var outRightVolume: SInt16 ): OSErr; external name '_QTSPresGetVolumes';
1389(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1390
1391
1392{-----------------------------------------
1393    Sourcing
1394-----------------------------------------}
1395{
1396 *  QTSPresGetSettingsAsText()
1397 *  
1398 *  Availability:
1399 *    Mac OS X:         in version 10.1 and later in QuickTime.framework
1400 *    CarbonLib:        in CarbonLib 1.6 and later
1401 *    Non-Carbon CFM:   in QTStreamLib 5.0.1 and later
1402 }
1403function QTSPresGetSettingsAsText( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inSettingsType: OSType; var outText: Handle; inPanelFilterProc: QTSPanelFilterUPP; inPanelFilterProcRefCon: UnivPtr ): OSErr; external name '_QTSPresGetSettingsAsText';
1404(* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
1405
1406
1407{
1408 *  QTSPresSettingsDialog()
1409 *  
1410 *  Availability:
1411 *    Mac OS X:         in version 10.0 and later in QuickTime.framework
1412 *    CarbonLib:        in CarbonLib 1.3 and later
1413 *    Non-Carbon CFM:   in QTStreamLib 5.0 and later
1414 }
1415function QTSPresSettingsDialog( inPresentation: QTSPresentation; inStream: QTSStream; inFlags: SInt32; inFilterProc: QTSModalFilterUPP; inFilterProcRefCon: UnivPtr ): OSErr; external name '_QTSPresSettingsDialog';
1416(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
1417
1418
1419{
1420 *  QTSPresSettingsDialogWithFilters()
1421 *  
1422 *  Availability:
1423 *    Mac OS X:         in version 10.1 and later in QuickTime.framework
1424 *    CarbonLib:        in CarbonLib 1.6 and later
1425 *    Non-Carbon CFM:   in QTStreamLib 5.0.1 and later
1426 }
1427function QTSPresSettingsDialog…

Large files files are truncated, but you can click here to view the full file