02.04.2013 Views

QuickTime Kit Reference Update - filibeto.org

QuickTime Kit Reference Update - filibeto.org

QuickTime Kit Reference Update - filibeto.org

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>QuickTime</strong> <strong>Kit</strong> <strong>Reference</strong> <strong>Update</strong><br />

2007-07-18


Apple Inc.<br />

© 2007 Apple Inc.<br />

All rights reserved.<br />

No part of this publication may be<br />

reproduced, stored in a retrieval system, or<br />

transmitted, in any form or by any means,<br />

mechanical, electronic, photocopying,<br />

recording, or otherwise, without prior<br />

written permission of Apple Inc., with the<br />

following exceptions: Any person is hereby<br />

authorized to store documentation on a<br />

single computer for personal use only and<br />

to print copies of documentation for<br />

personal use provided that the<br />

documentation contains Apple’s copyright<br />

notice.<br />

The Apple logo is a trademark of Apple Inc.<br />

Use of the “keyboard” Apple logo<br />

(Option-Shift-K) for commercial purposes<br />

without the prior written consent of Apple<br />

may constitute trademark infringement and<br />

unfair competition in violation of federal<br />

and state laws.<br />

No licenses, express or implied, are granted<br />

with respect to any of the technology<br />

described in this document. Apple retains<br />

all intellectual property rights associated<br />

with the technology described in this<br />

document. This document is intended to<br />

assist application developers to develop<br />

applications only for Apple-labeled or<br />

Apple-licensed computers.<br />

Every effort has been made to ensure that<br />

the information in this document is<br />

accurate. Apple is not responsible for<br />

typographical errors.<br />

Apple Inc.<br />

1 Infinite Loop<br />

Cupertino, CA 95014<br />

408-996-1010<br />

Apple, the Apple logo, Cocoa, Mac, Mac<br />

OS, Objective-C, Quartz, and <strong>QuickTime</strong><br />

are trademarks of Apple Inc., registered in<br />

the United States and other countries.<br />

Aperture is a trademark of Apple Inc.<br />

OpenGL is a registered trademark of Silicon<br />

Graphics, Inc.<br />

Simultaneously published in the United<br />

States and Canada.<br />

Even though Apple has reviewed this document,<br />

APPLE MAKES NO WARRANTY OR<br />

REPRESENTATION, EITHER EXPRESS OR<br />

IMPLIED, WITH RESPECT TO THIS<br />

DOCUMENT, ITS QUALITY, ACCURACY,<br />

MERCHANTABILITY, OR FITNESS FOR A<br />

PARTICULAR PURPOSE. AS A RESULT, THIS<br />

DOCUMENT IS PROVIDED “AS IS,” AND<br />

YOU, THE READER, ARE ASSUMING THE<br />

ENTIRE RISK AS TO ITS QUALITY AND<br />

ACCURACY.<br />

IN NO EVENT WILL APPLE BE LIABLE FOR<br />

DIRECT, INDIRECT, SPECIAL, INCIDENTAL,<br />

OR CONSEQUENTIAL DAMAGES<br />

RESULTING FROM ANY DEFECT OR<br />

INACCURACY IN THIS DOCUMENT, even if<br />

advised of the possibility of such damages.<br />

THE WARRANTY AND REMEDIES SET<br />

FORTH ABOVE ARE EXCLUSIVE AND IN<br />

LIEU OF ALL OTHERS, ORAL OR WRITTEN,<br />

EXPRESS OR IMPLIED. No Apple dealer, agent,<br />

or employee is authorized to make any<br />

modification, extension, or addition to this<br />

warranty.<br />

Some states do not allow the exclusion or<br />

limitation of implied warranties or liability for<br />

incidental or consequential damages, so the<br />

above limitation or exclusion may not apply to<br />

you. This warranty gives you specific legal<br />

rights, and you may also have other rights which<br />

vary from state to state.


Contents<br />

Introduction to QT<strong>Kit</strong> <strong>Reference</strong> <strong>Update</strong> 5<br />

Organization of This Document 5<br />

See Also 5<br />

10.5 Symbol Changes 7<br />

Classes 7<br />

NSCoder 7<br />

NSObject 7<br />

NSValue 8<br />

QTCaptureAudioPreviewOutput (New) 8<br />

QTCaptureConnection (New) 9<br />

QTCaptureDecompressedVideoOutput (New) 9<br />

QTCaptureDevice (New) 10<br />

QTCaptureDeviceInput (New) 11<br />

QTCaptureFileOutput (New) 11<br />

QTCaptureInput (New) 13<br />

QTCaptureLayer (New) 13<br />

QTCaptureOutput (New) 13<br />

QTCaptureSession (New) 14<br />

QTCaptureVideoPreviewOutput (New) 14<br />

QTCaptureView (New) 15<br />

QTCompressionOptions (New) 15<br />

QTFormatDescription (New) 16<br />

QTMovie 17<br />

QTMovieLayer (New) 19<br />

QTMovieView 19<br />

QTSampleBuffer (New) 20<br />

QTTrack 21<br />

C Symbols 22<br />

QTCaptureConnection.h 22<br />

QTCaptureDevice.h 23<br />

QTCaptureFileOutput.h 26<br />

QTCaptureSession.h 26<br />

QTError.h 27<br />

QTFormatDescription.h 28<br />

QT<strong>Kit</strong>Defines.h 29<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

3


4<br />

QTMedia.h 29<br />

QTMovie.h 29<br />

QTSampleBuffer.h 31<br />

QTTime.h 32<br />

QTTrack.h 32<br />

10.3 Symbol Changes 33<br />

Classes 33<br />

NSCoder 33<br />

NSObject 33<br />

NSValue 34<br />

QTData<strong>Reference</strong> (New) 34<br />

QTMedia (New) 36<br />

QTMovie (New) 37<br />

QTMovieView (New) 42<br />

QTTrack (New) 43<br />

C Symbols 45<br />

QTData<strong>Reference</strong>.h 45<br />

QTMedia.h 45<br />

QTMovie.h 47<br />

QTMovieView.h 53<br />

QTTime.h 53<br />

QTTimeRange.h 54<br />

QTTrack.h 55<br />

QTUtilities.h 56<br />

Document Revision History 57<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


This document summarizes the symbols that have been added to the QT<strong>Kit</strong> framework. The full<br />

reference documentation notes in what version a symbol was introduced, but sometimes it's useful<br />

to see only the new symbols for a given release.<br />

If you are not familiar with this framework you should refer to the complete framework reference<br />

documentation.<br />

Organization of This Document<br />

See Also<br />

Introduction to QT<strong>Kit</strong> <strong>Reference</strong> <strong>Update</strong><br />

Symbols are grouped by class or protocol for Objective-C and by header file for C. For each symbol<br />

there is a link to complete documentation, if available, and a brief description, if available.<br />

For reference documentation on this framework, see <strong>QuickTime</strong> <strong>Kit</strong> Framework <strong>Reference</strong>.<br />

Organization of This Document 5<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


Introduction to QT<strong>Kit</strong> <strong>Reference</strong> <strong>Update</strong><br />

6 See Also<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


Classes<br />

10.5 Symbol Changes<br />

This article lists the symbols added to QT<strong>Kit</strong>.framework in Mac OS X v10.5.<br />

All of the classes with new symbols are listed alphabetically, with their new class, instance, and<br />

delegate methods described.<br />

NSCoder<br />

Complete reference information is available in the NSCoder reference.<br />

Instance Methods<br />

decodeSMPTETimeForKey:<br />

encodeSMPTETime:forKey:<br />

NSObject<br />

Decodes an SMPTETime structure encoded by the receiver<br />

for the given key.<br />

Encodes an SMPTETime for the given key.<br />

Complete reference information is available in the NSObject reference.<br />

Instance Methods<br />

captureOutput:didFinishRecordingToOutputFileAtURL:<br />

forConnections:dueToError:<br />

captureOutput:didOutputSampleBuffer: fromConnection:<br />

captureOutput:didOutputVideoFrame:<br />

withSampleBuffer:fromConnection:<br />

Called whenever the video preview<br />

output outputs a new video frame.<br />

Classes 7<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

captureOutput:didStartRecordingToOutputFileAtURL:<br />

forConnections:<br />

captureOutput:mustChangeOutputFileAtURL:<br />

forConnections:dueToError:<br />

captureOutput:shouldChangeOutputFileAtURL:<br />

forConnections:dueToError:<br />

captureOutput: willFinishRecordingToOutputFileAtURL:<br />

forConnections:dueToError:<br />

captureOutput:willStartRecordingToOutputFileAtURL:<br />

forConnections:<br />

view:willDisplayImage:<br />

NSValue<br />

Complete reference information is available in the NSValue reference.<br />

Class Methods<br />

valueWithSMPTETime:<br />

Instance Methods<br />

SMPTETimeValue<br />

Delegates of QTCaptureView can<br />

implement this method to modify<br />

the image that is to be drawn into<br />

a QTCaptureView.<br />

Returns a new NSValue object containing an SMPTETime.<br />

Returns a SMPTETime structure contained in an NSValue.<br />

QTCaptureAudioPreviewOutput (New)<br />

Complete reference information is available in the QTCaptureAudioPreviewOutput reference.<br />

Instance Methods<br />

outputDeviceUniqueID<br />

setOutputDeviceUniqueID:<br />

setVolume:<br />

8 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns the unique ID of the Core Audio output device being used<br />

to play preview audio.<br />

Sets the unique ID of the Core Audio output device being used to<br />

play preview audio.<br />

Sets the preview volume of the output.


10.5 Symbol Changes<br />

volume<br />

QTCaptureConnection (New)<br />

Returns the preview volume of the output.<br />

Complete reference information is available in the QTCaptureConnection reference.<br />

Instance Methods<br />

attributeForKey:<br />

attributeIsReadOnly:<br />

connectionAttributes<br />

formatDescription<br />

isEnabled<br />

mediaType<br />

owner<br />

setAttribute:forKey:<br />

setConnectionAttributes:<br />

setEnabled:<br />

Returns the current value of the connection attribute for key.<br />

Returns whether the given attribute for the connection cannot be<br />

modified.<br />

Returns a dictionary of all attributes set for the receiver.<br />

Returns the format description of the receiver.<br />

Returns whether the receiver is enabled.<br />

Returns the <strong>QuickTime</strong> media type of the receiver.<br />

Returns the QTCaptureInput or QTCaptureOutput that owns the<br />

receiver.<br />

Sets a connection attribute for the given key. Raises an<br />

NSInvalidArgumentException if the attribute is read-only.<br />

Sets the connection’s attributes from the key-value pairs specified<br />

in the given dictionary. This method raises an<br />

NSInvalidArgumentException if any of the attributes in the<br />

dictionary are read-only.<br />

Sets whether the receiver is enabled.<br />

QTCaptureDecompressedVideoOutput (New)<br />

Complete reference information is available in the QTCaptureDecompressedVideoOutput reference.<br />

Instance Methods<br />

delegate<br />

outputVideoFrame:withSampleBuffer:fromConnection:<br />

Returns the receiver’s delegate.<br />

Called whenever the receiver outputs<br />

a new video frame.<br />

Classes 9<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

pixelBufferAttributes<br />

setDelegate:<br />

setPixelBufferAttributes:<br />

Delegate Methods<br />

captureOutput:didOutputVideoFrame:<br />

withSampleBuffer:fromConnection:<br />

QTCaptureDevice (New)<br />

Returns the Core Video pixel buffer<br />

attributes previously set by<br />

setPixelBufferAttributes: that<br />

determine what kind of pixel buffers<br />

are output by the receiver.<br />

Sets the receiver’s delegate.<br />

Sets the CoreVideo pixel buffer<br />

attributes that determine what kind<br />

of pixel buffers are output by the<br />

receiver.<br />

Called whenever the video preview output<br />

outputs a new video frame.<br />

Complete reference information is available in the QTCaptureDevice reference.<br />

Class Methods<br />

defaultInputDeviceWithMediaType:<br />

deviceWithUniqueID:<br />

inputDevices<br />

inputDevicesWithMediaType:<br />

Instance Methods<br />

attributeForKey:<br />

attributeIsReadOnly:<br />

close<br />

10 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns a QTCaptureDevice instance for the default device<br />

connected to the user’s system of the given media type.<br />

Returns a QTCaptureDevice instance with the identifier<br />

device UID.<br />

Returns an array of devices currently connected to the<br />

computer that can be used as input sources.<br />

Returns an array of input devices currently connected to<br />

the computer that send a stream with the given media<br />

type.<br />

Returns a device attribute for the given key.<br />

Returns whether the given attribute for the device cannot be<br />

modified.<br />

Releases application control over the device acquired in the open:<br />

method.


10.5 Symbol Changes<br />

deviceAttributes<br />

formatDescriptions<br />

hasMediaType:<br />

isConnected<br />

isInUseByAnotherApplication<br />

isOpen<br />

localizedDisplayName<br />

modelUniqueID<br />

open:<br />

setAttribute:forKey:<br />

setDeviceAttributes:<br />

uniqueID<br />

QTCaptureDeviceInput (New)<br />

Returns a dictionary of the device’s current attirbutes.<br />

Returns an array of stream formats currently in use by the device.<br />

Returns whether the receiver sends a stream with the given<br />

media type.<br />

Returns YES if the device is connected to the computer.<br />

Returns YES is the device is connected, but being exclusively<br />

used by another application.<br />

Returns YES if the device is open in the current application.<br />

Returns a localized human-readable name for the receiver’s<br />

device.<br />

Returns the unique ID of the model of the receiver’s device.<br />

Attempts to give the application control over the device so that<br />

it can be used for capture.<br />

Sets a device attribute for the given key.<br />

Sets attributes on the device from the key-value pairs in the given<br />

dictionary.<br />

Returns the unique ID of the receiver’s device.<br />

Complete reference information is available in the QTCaptureDeviceInput reference.<br />

Class Methods<br />

deviceInputWithDevice:<br />

Instance Methods<br />

device<br />

initWithDevice:<br />

QTCaptureFileOutput (New)<br />

Returns an autoreleased instance of QTCaptureDeviceInput<br />

associated with the given device.<br />

Returns the device associated with the receiver.<br />

Returns an instance of QTCaptureDeviceInput associated with the<br />

given device.<br />

Complete reference information is available in the QTCaptureFileOutput reference.<br />

Classes 11<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

Instance Methods<br />

compressionOptionsForConnection:<br />

delegate<br />

maximumRecordedDuration<br />

maximumRecordedFileSize<br />

outputFileURL<br />

recordedDuration<br />

recordedFileSize<br />

recordToOutputFileURL:<br />

recordToOutputFileURL:bufferDestination:<br />

setCompressionOptions:forConnection:<br />

setDelegate:<br />

setMaximumRecordedDuration:<br />

setMaximumRecordedFileSize:<br />

Delegate Methods<br />

Returns the options the receiver uses to<br />

compress media on the given connection as it is<br />

being captured.<br />

Returns the receiver’s delegate.<br />

Returns the maximum duration of the media<br />

that should be recorded by the receiver.<br />

Returns the maximum file size, in bytes, of the<br />

file that should be recorded by the receiver.<br />

Returns the file written to by the receiver.<br />

Returns the duration of the media recorded by<br />

the receiver.<br />

Returns the size, in bytes, of the data recorded<br />

by the receiver to output files.<br />

Sets the file written to by the receiver.<br />

Sets the file written to by the receiver, specifying<br />

where the sample buffer currently in flight<br />

should be recorded.<br />

Sets the options the receiver uses to compress<br />

media on the given connection as it is being<br />

captured.<br />

Sets the receiver’s delegate.<br />

Sets the maximum duration of the media that<br />

should be recorded by the receiver.<br />

Sets the maximum file size, in bytes, of the file<br />

that should be recorded by the receiver.<br />

captureOutput:didFinishRecordingToOutputFileAtURL: forConnections:dueToError:<br />

captureOutput:didOutputSampleBuffer: fromConnection:<br />

captureOutput:didStartRecordingToOutputFileAtURL: forConnections:<br />

captureOutput:mustChangeOutputFileAtURL: forConnections:dueToError:<br />

captureOutput:shouldChangeOutputFileAtURL: forConnections:dueToError:<br />

captureOutput: willFinishRecordingToOutputFileAtURL: forConnections:dueToError:<br />

12 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

captureOutput:willStartRecordingToOutputFileAtURL: forConnections:<br />

QTCaptureInput (New)<br />

Complete reference information is available in the QTCaptureInput reference.<br />

Instance Methods<br />

connections<br />

QTCaptureLayer (New)<br />

Returns an array of connections owned by the receiver.<br />

Complete reference information is available in the QTCaptureLayer reference.<br />

Class Methods<br />

layerWithSession:<br />

Instance Methods<br />

initWithSession:<br />

session<br />

setSession:<br />

QTCaptureOutput (New)<br />

Creates an autoreleased QTCaptureLayer associated with the specified<br />

QTCaptureSession object.<br />

Creates a QTCaptureLayer associated with the specified<br />

QTCaptureSession object.<br />

Returns the capture session associated with a QTCaptureLayer object.<br />

Sets or resets the capture session associated with a QTCaptureLayer<br />

object.<br />

Complete reference information is available in the QTCaptureOutput reference.<br />

Instance Methods<br />

connections<br />

Returns an array of connections owned by the receiver that are currently<br />

connected to a capture session.<br />

Classes 13<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTCaptureSession (New)<br />

Complete reference information is available in the QTCaptureSession reference.<br />

Instance Methods<br />

addInput:error:<br />

addOutput:error:<br />

inputs<br />

isRunning<br />

outputs<br />

removeInput:<br />

removeOutput:<br />

startRunning<br />

stopRunning<br />

Adds an input to the receiver.<br />

Adds an output to the receiver.<br />

Returns an array of inputs connected to the receiver.<br />

Returns whether the receiver is running.<br />

Returns an array of outputs connected to the receiver.<br />

Removes an input from the receiver.<br />

Removes an output from the receiver.<br />

QTCaptureVideoPreviewOutput (New)<br />

Tells the receiver to start capturing data from its inputs and sending<br />

data to its outputs.<br />

Tells the receiver to stop capturing data from its inputs and sending<br />

data to its outputs.<br />

Complete reference information is available in the QTCaptureVideoPreviewOutput reference.<br />

Instance Methods<br />

delegate<br />

outputVideoFrame:withSampleBuffer:fromConnection:<br />

pixelBufferAttributes<br />

setDelegate:<br />

setPixelBufferAttributes:<br />

setVisualContext:forConnection:<br />

visualContextForConnection:<br />

14 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns the receiver’s delegate.<br />

Called whenever the receiver outputs<br />

a new video frame.<br />

Sets the receiver’s delegate.<br />

Sets the <strong>QuickTime</strong> visual context<br />

used to preview the video for the<br />

described connection.<br />

Returns the <strong>QuickTime</strong> visual<br />

context used to preview the video for<br />

the given connection.


10.5 Symbol Changes<br />

QTCaptureView (New)<br />

Complete reference information is available in the QTCaptureView reference.<br />

Instance Methods<br />

availableVideoPreviewConnections<br />

captureSession<br />

delegate<br />

fillColor<br />

preservesAspectRatio<br />

previewBounds<br />

setCaptureSession:<br />

setDelegate:<br />

setFillColor:<br />

setPreservesAspectRatio:<br />

setVideoPreviewConnection:<br />

videoPreviewConnection<br />

Delegate Methods<br />

view:willDisplayImage:<br />

QTCompressionOptions (New)<br />

Returns an array of output video connections that can be<br />

previewed.<br />

Returns the capture session being previewed by the<br />

receiver.<br />

Returns the receiver’s delegate.<br />

Returns the fill color drawn in the area of the view not<br />

covered by the video preview.<br />

Returns whether the receiver preserves the aspect ratio of<br />

the video preview when drawing it.<br />

Returns the rectangle occupied by the video preview in<br />

the view.<br />

Sets the capture session to be previewed by the receiver.<br />

Sets the receiver’s delegate.<br />

Sets the fill color drawn in the area of the view not covered<br />

by the video preview.<br />

Sets whether the receiver preserves the aspect ratio of the<br />

video preview when drawing it.<br />

Sets the output connection to be previewed by the receiver.<br />

Returns the output connection being previewed by the<br />

receiver.<br />

Delegates of QTCaptureView can implement this method to modify<br />

the image that is to be drawn into a QTCaptureView.<br />

Complete reference information is available in the QTCompressionOptions reference.<br />

Classes 15<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

Class Methods<br />

compressionOptionsIdentifiersForMediaType:<br />

compressionOptionsWithIdentifier:<br />

Instance Methods<br />

isEqualToCompressionOptions:<br />

localizedCompressionOptionsSummary<br />

localizedDisplayName<br />

mediaType<br />

QTFormatDescription (New)<br />

Returns an array of identifiers that can be<br />

used to create compression options on the<br />

user's computer.<br />

Returns a QTCompressionOptions instance<br />

configured with the options for the given<br />

identifier.<br />

Returns whether the receiver contains options identical<br />

to those in the given compression options object.<br />

Returns a localized summary of the receiver's<br />

compression options.<br />

Returns a short localized name describing the receiver’s<br />

compression options.<br />

Returns the media type on which the receiver’s<br />

compression options should be used.<br />

Complete reference information is available in the QTFormatDescription reference.<br />

Instance Methods<br />

attributeForKey:<br />

formatDescriptionAttributes<br />

formatType<br />

isEqualToFormatDescription:<br />

localizedFormatSummary<br />

mediaType<br />

quickTimeSampleDescription<br />

16 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns the current value of the format description attribute<br />

for the given key.<br />

Returns a dictionary of all attributes set for the receiver.<br />

Returns the format type of the described media.<br />

Returns whether the receiver describes the same format as the<br />

given format description.<br />

Returns a localized summary of the media format.<br />

Returns the media type of the described media.<br />

Returns the media’s <strong>QuickTime</strong> SampleDescription.


10.5 Symbol Changes<br />

QTMovie<br />

Complete reference information is available in the QTMovie reference.<br />

Class Methods<br />

enterQT<strong>Kit</strong>OnThread<br />

enterQT<strong>Kit</strong>OnThreadDisablingThreadSafetyProtection<br />

exitQT<strong>Kit</strong>OnThread<br />

movieTypesWithOptions:<br />

Instance Methods<br />

addChapters:withAttributes:error:<br />

attachToCurrentThread<br />

autoplay<br />

chapterCount<br />

chapterIndexForTime:<br />

chapters<br />

Performs any <strong>QuickTime</strong>-specific<br />

initialization for the current<br />

(non-main) thread; must be paired<br />

with a call to exitQT<strong>Kit</strong>OnThread.<br />

Performs any <strong>QuickTime</strong>-specific<br />

initialization for the current<br />

(non-main) thread, allowing<br />

non-threadsafe components; must be<br />

paired with a call to<br />

exitQT<strong>Kit</strong>OnThread.<br />

Performs any <strong>QuickTime</strong>-specific<br />

shut-down for the current<br />

(non-main) thread; must be paired<br />

with a call to enterQT<strong>Kit</strong>OnThread<br />

or enterQT<strong>Kit</strong>OnThreadDisabling-<br />

ThreadSafetyProtection.<br />

Returns an array of UTIs that<br />

<strong>QuickTime</strong> can open.<br />

Attaches the receiver to the current thread;<br />

returns YES if successful, NO otherwise.<br />

Sets a movie to start playing when a<br />

sufficient amount of media data is<br />

available.<br />

Returns the number of chapters in the<br />

receiver, or 0 if there are no chapters.<br />

Returns the 0-based index of the chapter<br />

that contains the specified movie time.<br />

Returns an NSArray containing<br />

information about the chapters in the<br />

receiver.<br />

Classes 17<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

detachFromCurrentThread<br />

frameImageAtTime:withAttributes:error:<br />

generateApertureModeDimensions<br />

hasChapters<br />

initToWritableData:error:<br />

initToWritableData<strong>Reference</strong>:error:<br />

initToWritableFile:error:<br />

insertSegmentOfTrack:fromRange:scaledToRange:<br />

insertSegmentOfTrack:timeRange:atTime:<br />

invalidate<br />

isIdling<br />

removeApertureModeDimensions<br />

removeChapters<br />

removeTrack:<br />

setIdling:<br />

setVisualContext:<br />

18 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Detaches the receiver from the current<br />

thread; returns YES if successful, NO<br />

otherwise.<br />

Returns an NSImage*, CIImage*,<br />

CGImageRef, CVPixelBufferRef, or<br />

CVOpenGLTextureRef for the movie<br />

image at the specified time<br />

Adds information to a QTMovie needed<br />

to support aperture modes for tracks<br />

created with applications and/or versions<br />

of <strong>QuickTime</strong> that did not support<br />

aperture mode dimensions.<br />

Returns YES if the receiver has chapters,<br />

NO otherwise.<br />

Useful for directly passing filenames and<br />

data objects. The QTMovie returned by<br />

this method is editable.<br />

Creates a new storage container at the<br />

location specified by data<strong>Reference</strong> and<br />

returns a QTMovie object that has that<br />

container as its default data reference.<br />

Useful for directly passing filenames and<br />

data objects. The QTMovie returned by<br />

this method is editable.<br />

Removes aperture mode dimension<br />

information from a movie's tracks.<br />

Removes any existing chapters from the<br />

receiver.<br />

Sets the movie to idle YES or not to idle<br />

NO.


10.5 Symbol Changes<br />

startTimeOfChapter:<br />

visualContext<br />

writeToFile:withAttributes:error:<br />

QTMovieLayer (New)<br />

Complete reference information is available in the QTMovieLayer reference.<br />

Class Methods<br />

layerWithMovie:<br />

Instance Methods<br />

initWithMovie:<br />

movie<br />

setMovie:<br />

QTMovieView<br />

Returns a QTTime structure that is the<br />

start time of the chapter having the<br />

specified 0-based index in the list of<br />

chapters.<br />

Returns an NSError object if an error<br />

occurs and if errorPtr is non-NULL.<br />

Creates an autoreleased QTMovieLayer associated with the specified<br />

QTMovie object.<br />

Creates a QTMovieLayer associated with the specified QTMovie<br />

object.<br />

Returns the movie associated with a QTMovieLayer object.<br />

Complete reference information is available in the QTMovieView reference.<br />

Instance Methods<br />

areStepButtonsVisible<br />

areZoomButtonsVisible<br />

delegate<br />

isBackButtonVisible<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Classes 19<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

isCustomButtonVisible<br />

isHotSpotButtonVisible<br />

isTranslateButtonVisible<br />

isVolumeButtonVisible<br />

setBackButtonVisible:<br />

setCustomButtonVisible:<br />

setDelegate:<br />

setHotSpotButtonVisible:<br />

setStepButtonsVisible:<br />

setTranslateButtonVisible:<br />

setVolumeButtonVisible:<br />

setZoomButtonsVisible:<br />

QTSampleBuffer (New)<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Returns the current visibility state of the specified controller bar<br />

button.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Sets the specified controller bar button to be visible or invisible,<br />

according to the state parameter.<br />

Complete reference information is available in the QTSampleBuffer reference.<br />

Instance Methods<br />

attributeForKey:<br />

audioBufferListWithOptions:<br />

bytesForAllSamples<br />

decodeTime<br />

decrementSampleUseCount<br />

20 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns a sample buffer attribute for the given<br />

key.<br />

Returns the decode time of the buffer.


10.5 Symbol Changes<br />

duration<br />

formatDescription<br />

getAudioStreamPacketDescriptions:inRange:<br />

incrementSampleUseCount<br />

lengthForAllSamples<br />

numberOfSamples<br />

presentationTime<br />

sampleBufferAttributes<br />

sampleUseCount<br />

QTTrack<br />

Complete reference information is available in the QTTrack reference.<br />

Instance Methods<br />

apertureModeDimensionsForMode:<br />

generateApertureModeDimensions<br />

Returns the duration of the buffer.<br />

Returns the format description of the buffer.<br />

Gets an array of CoreAudio<br />

AudioStreamPacketDescriptions describing<br />

the lengths of samples in variable bit rate audio<br />

buffers.<br />

Returns the number of media samples<br />

contained in the buffer.<br />

Returns the presentation time of the buffer.<br />

Returns a dictionary of the sample buffer's<br />

current attirbutes.<br />

Returns an NSSize value that indicates the dimensions<br />

of the target track for the specified movie aperture<br />

mode. For instance, passing a mode of<br />

QTMovieApertureModeClean would cause<br />

apertureModeDimensionsForMode: to return the track<br />

dimensions to use in clean aperture mode.<br />

Adds information to a QTTrack needed to support<br />

aperture modes for tracks created with applications<br />

and/or versions of <strong>QuickTime</strong> that did not support<br />

aperture mode dimensions. If the image descriptions<br />

in the track lack tags describing clean aperture and pixel<br />

aspect ratio information, the media data is scanned to<br />

see if the correct values can be divined and attached.<br />

Then the aperture mode dimensions are calculated and<br />

set. Afterwards, the QTTrackHasApertureMode-<br />

DimensionsAttribute property will be set to YES for this<br />

track. Tracks that do not support aperture modes are<br />

not changed.<br />

Classes 21<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


C Symbols<br />

10.5 Symbol Changes<br />

removeApertureModeDimensions<br />

setApertureModeDimensions:forMode:<br />

Removes aperture mode dimension information from<br />

the target track. It does not attempt to modify sample<br />

descriptions, so it may not completely reverse the effects<br />

of generateApertureModeDimensions. It sets the<br />

QTTrackHasApertureModeDimensionsAttribute<br />

property to NO.<br />

Sets the dimensions of the target track for the specified<br />

movie aperture mode.<br />

All of the header files with new symbols are listed alphabetically, with their new symbols described.<br />

QTCaptureConnection.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTCaptureConnectionAttributeDidChangeNotification<br />

QTCaptureConnectionAttributeWillChangeNotification<br />

QTCaptureConnectionAudioAveragePowerLevelsAttribute<br />

QTCaptureConnectionAudioMasterVolumeAttribute<br />

22 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Posted when one of the connection’s<br />

attributes has changed. The<br />

notification’s userInfo dictionary<br />

will contain the attribute key of the<br />

changed attribute for the key<br />

QTCaptureConnectionChanged-<br />

AttributeKey.<br />

Posted when one of the connection’s<br />

attributes is about to change. The<br />

notification’s userInfo dictionary<br />

will contain the attribute key of the<br />

changed attribute for the key<br />

QTCaptureConnectionChanged-<br />

AttributeKey.<br />

Value is an NSArray of NSNumbers<br />

that correspond to the average<br />

power, in decibels, of each audio<br />

stream sent through the connection.<br />

Value is an NSNumber that<br />

specifies the master volume of all<br />

audio channels sent through the<br />

connection.


10.5 Symbol Changes<br />

QTCaptureConnectionAudioPeakHoldLevelsAttribute<br />

QTCaptureConnectionAudioVolumesAttribute<br />

QTCaptureConnectionChangedAttributeKey<br />

QTCaptureConnectionEnabledAudioChannelsAttribute<br />

QTCaptureConnectionFormatDescription-<br />

DidChangeNotification<br />

QTCaptureConnectionFormatDescription-<br />

WillChangeNotification<br />

QTCaptureDevice.h<br />

Data Types & Constants<br />

Value is an NSArray of NSNumbers<br />

that correspond to the peak hold<br />

level, in decibels, of each audio<br />

channel sent through the<br />

connection.<br />

Value is an NSArray of NSNumbers<br />

that specify the volumes of audio<br />

channels sent through the<br />

connection.<br />

Used as a key in the userInfo<br />

dictionary passed to<br />

QTCaptureConnectionAttribute-<br />

WillChangeNotification, and<br />

QTCaptureConnectionAttribute-<br />

DidChangeNotification to indicate<br />

the the key of that attribute that<br />

changed.<br />

Value is an NSIndexSet that<br />

specifies which audio channels<br />

should be sent through the<br />

connection.<br />

Posted when the format description<br />

of a connection has changed.<br />

Applications can be notified of<br />

changes to a connection’s format by<br />

registering to receive this<br />

notification.<br />

Posted when the format description<br />

of a connection is about to change.<br />

Applications can be notified of<br />

changes to a connection’s format by<br />

registering to receive this<br />

notification.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTCaptureDeviceAttributeDidChangeNotification<br />

Posted when the one of device’s<br />

attributes has changed.<br />

C Symbols 23<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTCaptureDeviceAttributeWillChangeNotification<br />

QTCaptureDeviceAvailableInputSourcesAttribute<br />

QTCaptureDeviceAVCTransportControlsAttribute<br />

QTCaptureDeviceAVCTransportControls-<br />

FastestForwardSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

FastestReverseSpeed<br />

QTCaptureDeviceAVCTransportControlsFastForwardSpeed<br />

QTCaptureDeviceAVCTransportControlsFastReverseSpeed<br />

QTCaptureDeviceAVCTransport-<br />

ControlsNormalForwardSpeed<br />

QTCaptureDeviceAVCTransport-<br />

ControlsNormalReverseSpeed<br />

QTCaptureDeviceAVCTransportControlsNotPlayingMode<br />

QTCaptureDeviceAVCTransportControlsPlaybackMode<br />

QTCaptureDeviceAVCTransportControlsPlaybackModeKey<br />

QTCaptureDeviceAVCTransportControlsPlayingMode<br />

QTCaptureDeviceAVCTransportControls-<br />

SlowestForwardSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

SlowestReverseSpeed<br />

QTCaptureDeviceAVCTransportControlsSlowForwardSpeed<br />

QTCaptureDeviceAVCTransportControlsSlowReverseSpeed<br />

QTCaptureDeviceAVCTransportControlsSpeed<br />

24 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Posted when one of the device's<br />

attributes is about to change.<br />

The value is an NSDictionary with<br />

keys and values described under<br />

QTCaptureDevice AVC Transport<br />

Controls.


10.5 Symbol Changes<br />

QTCaptureDeviceAVCTransportControlsSpeedKey<br />

QTCaptureDeviceAVCTransportControlsStoppedSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

VeryFastForwardSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

VeryFastReverseSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

VerySlowForwardSpeed<br />

QTCaptureDeviceAVCTransportControls-<br />

VerySlowReverseSpeed<br />

QTCaptureDeviceChangedAttributeKey<br />

QTCaptureDeviceFormatDescriptions-<br />

DidChangeNotification<br />

QTCaptureDeviceFormatDescriptions-<br />

WillChangeNotification<br />

QTCaptureDeviceInputSourceIdentifierAttribute<br />

QTCaptureDeviceInputSourceIdentifierKey<br />

QTCaptureDeviceInputSourceLocalizedDisplayNameKey<br />

QTCaptureDeviceLegacySequenceGrabberAttribute<br />

The value is an NSNumber<br />

interpreted as a<br />

QTCaptureDeviceAVCTransport-<br />

ControlsSpeed. This is one of the<br />

keys that comprise the<br />

NSDictionary that specifies the<br />

linear media playback mode and<br />

rate given by the<br />

QTCaptureDeviceAVCTransport-<br />

ControlsAttribute.<br />

Indicates the key of the attribute<br />

that changed.<br />

Posted when the device’s formats<br />

that are returned by the<br />

formatDescriptions method have<br />

just changed.<br />

Posted when the device's formats<br />

that are returned by the<br />

formatDescriptions method are<br />

about to change.<br />

Some older devices are opened and<br />

conreolled by legacy Sequence<br />

Grabber components. Applications<br />

that need to configure legacy<br />

devices directly through the<br />

Sequence Grabber configuration<br />

dialog can access an open<br />

component instance with this<br />

attribute.<br />

C Symbols 25<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTCaptureDeviceLinkedDevicesAttribute<br />

QTCaptureDeviceSuspendedAttribute<br />

QTCaptureDeviceWasConnectedNotification<br />

QTCaptureDeviceWasDisconnectedNotification<br />

QTCaptureFileOutput.h<br />

Data Types & Constants<br />

The value is an NSArray of<br />

QTCaptureDevice instances.<br />

Specifies if the device is suspended<br />

(if the lens cover is closed, for<br />

instance). Value is a boolean<br />

NSValue.<br />

Posted when a device is connected<br />

or turned on.<br />

Posted when a device is<br />

disconnected or turned off.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTCaptureFileOutputBufferDestination<br />

QTCaptureFileOutputBufferDestinationNewFile<br />

QTCaptureFileOutputBufferDestinationOldFile<br />

QTCaptureSession.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTCaptureSessionErrorKey<br />

26 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Used as a notification key in the user info<br />

dictionary passed to<br />

QTCaptureSessionRuntimeErrorNotification to<br />

indicate the error responsible for the notification.


10.5 Symbol Changes<br />

QTCaptureSessionRuntimeErrorNotification<br />

QTError.h<br />

Data Types & Constants<br />

Posted when an error occurs that while a capture<br />

session is running prevents input media from<br />

being previewed or captured. The notification<br />

user info dictionary QTCaptureSessionErrorKey<br />

entry contains an NSError object that describes<br />

the error that prevented the session from<br />

running properly. Normally, such errors are<br />

caused by an invalid configuration of inputs and<br />

outputs.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTErrorCaptureInputKey<br />

QTErrorCaptureOutputKey<br />

QTErrorDeviceAlreadyUsedbyAnotherSession<br />

QTErrorDeviceExcludedByAnotherDevice<br />

QTErrorDeviceInUseByAnotherApplication<br />

QTErrorDeviceKey<br />

QTErrorDeviceNotConnected<br />

QTErrorDeviceWasDisconnected<br />

QTErrorDiskFull<br />

QTErrorExcludingDeviceKey<br />

QTErrorIncompatibleInput<br />

QTErrorIncompatibleOutput<br />

The device could not be added to the session<br />

because it experiences a runtime error trying to<br />

use a device already being used by another<br />

session.<br />

The device is excluded by another device.<br />

The device is in use by another application.<br />

The device is not connected to the computer.<br />

The recording has been automatically stopped<br />

because an input device was disconnected.<br />

The recording has been automatically stopped<br />

because the disk being used for recorded<br />

products is full.<br />

The input could not be added to the specified<br />

session because it is incompatible with existing<br />

inputs and outputs in the session.<br />

The output could not be added to the specified<br />

session because it is incompatible with existing<br />

inputs and outputs in the session.<br />

C Symbols 27<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTErrorInvalidInputsOrOutputs<br />

QTErrorMaximumDurationReached<br />

QTErrorMaximumFileSizeReached<br />

QTErrorMediaChanged<br />

QTErrorMediaDiscontinuity<br />

QTErrorNoDataCaptured<br />

QTErrorRecordingSuccesfullyFinishedKey<br />

QTErrorSessionConfigurationChanged<br />

QTErrorUnknown<br />

QT<strong>Kit</strong>ErrorDomain<br />

QTFormatDescription.h<br />

Data Types & Constants<br />

Returned when recording has reached the<br />

maximum duration specified by the application.<br />

Returned when recording has reached the<br />

maximum file size specified by the application.<br />

The recording has been automatically stopped<br />

because the format of the input media changed<br />

or the media samples were invalid.<br />

Returned when there is a discontinuity in<br />

captured media, usually because of perfomance<br />

problems on the user's system or because of a<br />

change in a device's state. This error generally<br />

indicates that media samples have been dropped<br />

in order to maintain real time capture.<br />

Returned when no data was successfully<br />

captured during a recording or other capture<br />

operation.<br />

The recording has been automatically stopped<br />

because an input or output has been added or<br />

removed, or the channels of an input or output<br />

have changed.<br />

Indicates an unexpected or unknown error.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTFormatDescriptionAudioChannelLayoutAttribute<br />

QTFormatDescriptionAudioMagicCookieAttribute<br />

QTFormatDescriptionAudioStream-<br />

BasicDescriptionAttribute<br />

QTFormatDescriptionVideoClean-<br />

ApertureDisplaySizeAttribute<br />

28 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns an NSData interpreted as<br />

Returns an NSData interpreted as<br />

Returns an NSValue interpreted as<br />

a<br />

Returns an NSValue interpreted as<br />

an NSSize that indicates


10.5 Symbol Changes<br />

QTFormatDescriptionVideoEncodedPixelsSizeAttribute<br />

QTFormatDescriptionVideoProduction-<br />

ApertureDisplaySizeAttribute<br />

QT<strong>Kit</strong>Defines.h<br />

Data Types & Constants<br />

Returns an NSValue interpreted as<br />

an NSSize that indicates<br />

Returns an NSValue interpreted as<br />

an NSSize that indicates the<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

TimeCode64MediaType<br />

QTMedia.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTMediaTypeMuxed<br />

QTMediaTypeQuartzComposer<br />

QTMovie.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

C Symbols 29<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTMovieApertureModeAttribute<br />

QTMovieApertureModeClassic<br />

QTMovieApertureModeClean<br />

QTMovieApertureModeDidChangeNotification<br />

QTMovieApertureModeEncodedPixels<br />

QTMovieApertureModeProduction<br />

QTMovieChapterName<br />

QTMovieChapterStartTime<br />

QTMovieChapterTargetTrackAttribute<br />

QTMovieFrameImageDeinterlaceFields<br />

QTMovieFrameImageHighQuality<br />

QTMovieFrameImageOpenGLContext<br />

QTMovieFrameImagePixelFormat<br />

QTMovieFrameImageRepresentationsType<br />

QTMovieFrameImageSingleField<br />

QTMovieFrameImageSize<br />

QTMovieFrameImageType<br />

30 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Sets the aperture mode attribute on a QTMovie<br />

object to indicate whether aspect ratio and<br />

clean aperture correction should be performed.<br />

When a movie is in clean, production, or<br />

encoded pixels aperture mode, each track's<br />

dimensions are overridden by special<br />

dimensions for that mode. The original track<br />

dimensions are preserved and can be restored<br />

by setting the movie into classic aperture mode.<br />

Aperture modes are not saved in movies. The<br />

associated value is of type NSString and is<br />

assumed to be one of the following strings:<br />

Issued when the aperture mode of the target<br />

QTMovie object changes.<br />

A key indicating the chapter name in the<br />

dictionaries that are array elements in the array<br />

returned by QTMovie chapters or passed to<br />

QTMovie addChapters:withAttributes:error.<br />

Aey indicating the chapter start time in the<br />

dictionaries that are array elements in the array<br />

returned by QTMovie chapters or passed<br />

to QTMovie addChapters:withAttributes:error.<br />

A key indicating the track in the QTMovie<br />

object that is the target of the chapter track.<br />

Image is high quality.<br />

For CVOpenGLTextureRef, the OpenGL<br />

context to use.<br />

For CVOpenGLTextureRef, the pixel format to<br />

use.<br />

For NSImage, the image representations in the<br />

image.<br />

Image is single field.<br />

Size of the image.<br />

Type of the image.


10.5 Symbol Changes<br />

QTMovieFrameImageTypeCGImageRef<br />

QTMovieFrameImageTypeCIImage<br />

QTMovieFrameImageTypeCVOpenGLTextureRef<br />

QTMovieFrameImageTypeCVPixelBufferRef<br />

QTMovieFrameImageTypeNSImage<br />

QTMovieHasApertureModeDimensionsAttribute<br />

QTMovieLoadState<br />

QTMovieLoadStateComplete<br />

QTMovieLoadStateError<br />

QTMovieLoadStateLoaded<br />

QTMovieLoadStateLoading<br />

QTMovieLoadStatePlayable<br />

QTMovieLoadStatePlaythroughOK<br />

QTSampleBuffer.h<br />

Data Types & Constants<br />

The aperture mode dimensions set on any track<br />

in this QTMovie object, even if those<br />

dimemsions are all identical to the classic<br />

dimensions (as is the case for content with<br />

square pixels and no edge-processing region).<br />

The value for this key is of type NSNumber,<br />

interpreted as a BOOL.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTSampleBufferAudioBufferList-<br />

OptionAssure16ByteAlignment<br />

QTSampleBufferAudioBufferListOptions<br />

QTSampleBufferDateRecordedAttribute<br />

QTSampleBufferExplicitSceneChange<br />

QTSampleBufferHostTimeAttribute<br />

Returns the date on which the media<br />

in the buffer was originally recorded.<br />

This indicates that a scene change was<br />

explicitly marked in the sample buffer's<br />

metadata.<br />

C Symbols 31<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.5 Symbol Changes<br />

QTSampleBufferSceneChangeTypeAttribute<br />

QTSampleBufferSMPTETimeAttribute<br />

QTSampleBufferTimeStampDiscontinuitySceneChange<br />

QTTime.h<br />

Functions<br />

If the buffer marks a scene change in<br />

the input content, returns a constant<br />

described in Scene Change Types<br />

specifying the type of scene change.<br />

Returns the SMPTE timecode fo the<br />

sample buuffer, if it has one.<br />

This indicates that the scene changed<br />

due to a discontinuity in time stamps<br />

between the current sample buffer and<br />

the previous sample buffer.<br />

All of the new functions in this header file are listed alphabetically, with links to documentation and<br />

abstracts, if available.<br />

QTStringFromSMPTETime<br />

QTTrack.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTTrackFormatSummaryAttribute<br />

QTTrackHasApertureModeDimensionsAttribute<br />

QTTrackIsChapterTrackAttribute<br />

32 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

An NSString that is a localized,<br />

human-readable string that summarizes a<br />

track’s format; for example, “16-bit Integer (Big<br />

Endian), Stereo (L R), 48.000 kHz”. This<br />

attribute is gettable but not settable.<br />

The value to determine whether aperture mode<br />

dimensions have been set on a track, even if<br />

they are all identical to the classic dimensions<br />

(as is the case for content with square pixels<br />

and no edge-processing region).


Classes<br />

10.3 Symbol Changes<br />

This article lists the symbols added to Quartz.framework in Mac OS X v10.3.<br />

All of the classes with new symbols are listed alphabetically, with their new class, instance, and<br />

delegate methods described.<br />

NSCoder<br />

Complete reference information is available in the NSCoder reference.<br />

Instance Methods<br />

decodeQTTimeForKey:<br />

decodeQTTimeRangeForKey:<br />

encodeQTTime:forKey:<br />

encodeQTTimeRange:forKey:<br />

NSObject<br />

Decodes a QTTime structure.<br />

Decodes a QTTimeRange structure.<br />

Encodes a QTTime structure.<br />

Encodes a QTTimeRange structure range.<br />

Complete reference information is available in the NSObject reference.<br />

Instance Methods<br />

externalMovie:<br />

This method is called, if implemented by a<br />

QTMovie delegate object, when an external<br />

movie needs to be found (usually for a wired<br />

action targeted at an external movie).<br />

Classes 33<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

movie:linkToURL:<br />

movie:shouldContinueOperation:withPhase:<br />

atPercent:withAttributes:<br />

movieShouldLoadData:<br />

movieShouldTask:<br />

NSValue<br />

Called to handle the mcAction<br />

mcActionLinkToURL.<br />

Complete reference information is available in the NSValue reference.<br />

Class Methods<br />

valueWithQTTime:<br />

valueWithQTTimeRange:<br />

Instance Methods<br />

QTTimeRangeValue<br />

QTTimeValue<br />

QTData<strong>Reference</strong> (New)<br />

If implemented, this method is called<br />

periodically during lengthy operations (such as<br />

exporting a movie).<br />

If a QTMovie object has a delegate and that<br />

delegate implements this method, that method<br />

will be called before QT<strong>Kit</strong> performs the<br />

standard idle processing on a movie.<br />

Creates an NSValue object that wraps the specified QTTime<br />

structure.<br />

Creates an NSValue object that wraps the specified QTTimeRange<br />

structure.<br />

Returns a QTTimeRange structure that contains the range in an<br />

NSValue object.<br />

Returns a QTTime structure that contains the time in an NSValue<br />

object.<br />

Complete reference information is available in the QTData<strong>Reference</strong> reference.<br />

Class Methods<br />

data<strong>Reference</strong>WithDataRef:type:<br />

34 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Creates a QTData<strong>Reference</strong> object of<br />

type type initialized with data from<br />

dataRef.


10.3 Symbol Changes<br />

data<strong>Reference</strong>WithDataRefData:type:<br />

data<strong>Reference</strong>With<strong>Reference</strong>ToData:<br />

data<strong>Reference</strong>With<strong>Reference</strong>ToData:name:MIMEType:<br />

data<strong>Reference</strong>With<strong>Reference</strong>ToFile:<br />

data<strong>Reference</strong>With<strong>Reference</strong>ToURL:<br />

Instance Methods<br />

dataRef<br />

dataRefData<br />

dataRefType<br />

initWithDataRef:type:<br />

initWithDataRefData:type:<br />

initWith<strong>Reference</strong>ToData:<br />

initWith<strong>Reference</strong>ToData:name:MIMEType:<br />

initWith<strong>Reference</strong>ToFile:<br />

initWith<strong>Reference</strong>ToURL:<br />

Creates a QTData<strong>Reference</strong> object of<br />

type type initialized with data from<br />

dataRefData.<br />

Creates a QTData<strong>Reference</strong> object for<br />

the data block data.<br />

Creates a QTData<strong>Reference</strong> object for<br />

the data block data; this data reference<br />

has two data reference extensions, a<br />

filenaming extension and a MIME type<br />

extension.<br />

Creates a QTData<strong>Reference</strong> object for<br />

the file fileName.<br />

Creates a QTData<strong>Reference</strong> object for<br />

the URL url.<br />

Returns the <strong>QuickTime</strong> data reference associated<br />

with a QTData<strong>Reference</strong> object.<br />

Returns the <strong>QuickTime</strong> data reference data<br />

associated with a QTData<strong>Reference</strong> object, stored<br />

in an NSData object.<br />

Returns the type of the data reference associated<br />

with a QTData<strong>Reference</strong> object.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

with data from dataRef; the QTData<strong>Reference</strong> is<br />

of type dataRefType.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

with data from dataRefData; the QTData<strong>Reference</strong><br />

is of type dataRefType.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

for the data block data.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

for the data block data; this data reference has two<br />

data reference extensions, a filenaming extension<br />

and a MIME type extension.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

for the file fileName.<br />

Initializes a newly created QTData<strong>Reference</strong> object<br />

for the URL url.<br />

Classes 35<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

MIMEType<br />

name<br />

referenceData<br />

referenceFile<br />

referenceURL<br />

setDataRef:<br />

setDataRefType:<br />

QTMedia (New)<br />

Complete reference information is available in the QTMedia reference.<br />

Class Methods<br />

mediaWith<strong>QuickTime</strong>Media:error:<br />

Instance Methods<br />

attributeForKey:<br />

hasCharacteristic:<br />

initWith<strong>QuickTime</strong>Media:error:<br />

mediaAttributes<br />

quickTimeMedia<br />

36 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns the type in a MIME type extension<br />

associated with a QTData<strong>Reference</strong> object.<br />

Returns the name in a filenaming extension<br />

associated with a QTData<strong>Reference</strong> object<br />

Returns the reference data of a QTData<strong>Reference</strong><br />

object, that is, the NSData object passed to<br />

initWith<strong>Reference</strong>ToData or<br />

initWith<strong>Reference</strong>ToData:name: MIMEType.<br />

Returns the file name of the data reference<br />

associated with a QTData<strong>Reference</strong> object.<br />

Returns the URL of the data reference associated<br />

with a QTData<strong>Reference</strong> object.<br />

Sets the data reference data of a QTData<strong>Reference</strong><br />

object to dataRef.<br />

Sets the data reference type of a QTData<strong>Reference</strong><br />

object to type.<br />

Creates a QTMedia object with data from the <strong>QuickTime</strong><br />

media media.<br />

Returns the current value of the media attribute attributeKey.<br />

Returns YES if a QTMedia object has the specified<br />

characteristic.<br />

Initializes a newly created QTMedia object with data from the<br />

<strong>QuickTime</strong> media media.<br />

Returns a dictionary containing the current values of all<br />

defined media attributes.<br />

Returns the <strong>QuickTime</strong> media associated with a QTMedia<br />

object.


10.3 Symbol Changes<br />

setAttribute:forKey:<br />

setMediaAttributes:<br />

track<br />

QTMovie (New)<br />

Set the media attribute attributeKey to the value specified by<br />

the value parameter.<br />

Set the media attributes using the key-value pairs specified<br />

in the dictionary attributes.<br />

Returns the QTTrack that contains a QTMedia object.<br />

Complete reference information is available in the QTMovie reference.<br />

Class Methods<br />

canInitWithData<strong>Reference</strong>:<br />

canInitWithFile:<br />

canInitWithPasteboard:<br />

canInitWithURL:<br />

movie<br />

movieFileTypes:<br />

movieNamed:error:<br />

movieUnfilteredFileTypes<br />

movieUnfilteredPasteboardTypes<br />

movieWithAttributes:error:<br />

Returns YES if the specified data<br />

reference can be used to initialize a<br />

QTMovie object.<br />

Returns YES if the contents of the<br />

specified file can be used to initialize a<br />

QTMovie object.<br />

Returns YES if the contents of the<br />

specified pasteboard can be used to<br />

initialize a QTMovie object.<br />

Returns YES if the contents of the<br />

specified URL can be used to initialize a<br />

QTMovie object.<br />

Creates an empty QTMovie object.<br />

Returns an array of file types that can be<br />

opened as <strong>QuickTime</strong> movies.<br />

Creates a QTMovie object initialized with<br />

the data from the <strong>QuickTime</strong> movie of<br />

the specified name in the application’s<br />

bundle.<br />

Returns an array of file types that can be<br />

used to initialize a QTMovie object.<br />

Returns an array of pasteboard types that<br />

can be used to initialize a QTMovie<br />

object.<br />

Creates a QTMovie object initialized with<br />

the attributes specified in attributes.<br />

Classes 37<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

movieWithData:error:<br />

movieWithData<strong>Reference</strong>:error:<br />

movieWithFile:error:<br />

movieWithPasteboard:error:<br />

movieWith<strong>QuickTime</strong>Movie:disposeWhenDone:error:<br />

movieWithURL:error:<br />

Instance Methods<br />

addImage:forDuration:withAttributes:<br />

appendSelectionFromMovie:<br />

attributeForKey:<br />

can<strong>Update</strong>MovieFile<br />

currentFrameImage<br />

currentTime<br />

delegate<br />

deleteSegment:<br />

duration<br />

38 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Creates a QTMovie object initialized with<br />

the data specified by data.<br />

Creates a QTMovie object intitalized<br />

with the data specified by the data<br />

reference data<strong>Reference</strong>.<br />

Creates a QTMovie object initialized with<br />

the data in the file specified by the name<br />

fileName.<br />

Creates a QTMovie object initialized with<br />

the contents of the pasteboard specified<br />

by pasteboard.<br />

Creates a QTMovie object initialized with<br />

the data from an existing <strong>QuickTime</strong><br />

movie movie.<br />

Creates a QTMovie object initialized with<br />

the data in the URL specified by url.<br />

Adds an image for the specified duration<br />

to the receiver, using attributes specified<br />

in the attributes dictionary.<br />

Appends to a QTMovie the current<br />

selection in movie.<br />

Returns the current value of the movie<br />

attribute attributeKey.<br />

Indicates whether a movie file can be<br />

updated with changes made to the movie<br />

object.<br />

Returns an NSImage for the frame at the<br />

current time in a QTMovie.<br />

Returns the current time of a QTMovie<br />

object as a structure of type QTTime.<br />

Returns the delegate of a QTMovie object.<br />

Deletes from a QTMovie the segment<br />

delimited by segment.<br />

Returns the duration of a QTMovie object<br />

as a structure of type QTTime.


10.3 Symbol Changes<br />

frameImageAtTime:<br />

gotoBeginning<br />

gotoEnd<br />

gotoNextSelectionPoint<br />

gotoPosterTime<br />

gotoPreviousSelectionPoint<br />

initWithAttributes:error:<br />

initWithData:error:<br />

initWithData<strong>Reference</strong>:error:<br />

initWithFile:error:<br />

initWithMovie:timeRange:error:<br />

initWithPasteboard:error:<br />

initWith<strong>QuickTime</strong>Movie:disposeWhenDone:error:<br />

initWithURL:error:<br />

insertEmptySegmentAt:<br />

insertSegmentOfMovie:fromRange:scaledToRange:<br />

insertSegmentOfMovie:timeRange:atTime:<br />

Returns an NSImage for the frame at the<br />

time time in a QTMovie.<br />

Repositions the play position to the<br />

beginning of the movie.<br />

Repositions the play position to the end<br />

of the movie.<br />

Repositions the movie to the next selection<br />

point.<br />

Repositions the play position to the<br />

movie’s poster time.<br />

Repositions the movie to the previous<br />

selection point.<br />

Initializes a QTMovie object with the<br />

attributes specified in attributes.<br />

Initializes a QTMovie object with the data<br />

specified by data.<br />

Initializes a QTMovie object with the data<br />

reference setting specified by<br />

data<strong>Reference</strong>.<br />

Initializes a QTMovie object with the data<br />

in the file specified by the name fileName.<br />

Initializes a QTMovie object with some or<br />

all of the data from an existing QTMovie<br />

object movie.<br />

Initializes a QTMovie object with the<br />

contents of the pasteboard specified by<br />

pasteboard.<br />

Initializes a QTMovie object with the data<br />

from an existing <strong>QuickTime</strong> movie movie.<br />

Initializes a QTMovie object with the data<br />

in the URL specified by url.<br />

inserts into a QTMovie an empty segment<br />

delimited by the range range.<br />

Inserts the specified segment from the<br />

movie into the receiver, scaled to the range<br />

dstRange.<br />

Inserts into a QTMovie at time time the<br />

selection in movie delimited by the time<br />

range range.<br />

Classes 39<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

movieAttributes<br />

movieFormatRepresentation<br />

movieWithTimeRange:error:<br />

muted<br />

play<br />

posterImage<br />

quickTimeMovie<br />

quickTimeMovieController<br />

rate<br />

replaceSelectionWithSelectionFromMovie:<br />

scaleSegment:newDuration:<br />

selectionDuration<br />

selectionEnd<br />

selectionStart<br />

setAttribute:forKey:<br />

setCurrentTime:<br />

setDelegate:<br />

setMovieAttributes:<br />

40 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns a dictionary containing the<br />

current values of all defined movie<br />

attributes.<br />

Returns the movie’s data in an NSData<br />

object.<br />

Returns a QTMovie object whose data is<br />

the data in the specified time range.<br />

Returns the movie’s mute setting.<br />

Plays the movie.<br />

Returns an NSImage for the poster frame<br />

of a QTMovie.<br />

Returns the <strong>QuickTime</strong> movie associated<br />

with a QTMovie object.<br />

Returns the <strong>QuickTime</strong> movie controller<br />

associated with a QTMovie object.<br />

Returns the current rate of a QTMovie<br />

object.<br />

Replaces the current selection in a<br />

QTMovie with the current selection in<br />

movie.<br />

Scales the QTMovie segment delimited<br />

by the segment segment so that it will<br />

have the new duration newDuration.<br />

Returns the duration of the movie’s<br />

current selection as a QTTime structure.<br />

Returns the end point of the movie’s<br />

current selection as a QTTime structure.<br />

Returns the start time of the movie’s<br />

current selection as a QTTime structure.<br />

Set the movie attribute attributeKey to the<br />

value specified by the value parameter.<br />

Sets the movie’s current time setting to<br />

time.<br />

Sets the movie’s delegate to delegate.<br />

Set the movie attributes using the<br />

key-value pairs specified in the dictionary<br />

attributes.


10.3 Symbol Changes<br />

setMuted:<br />

setRate:<br />

setSelection:<br />

setVolume:<br />

stepBackward<br />

stepForward<br />

stop<br />

tracks<br />

tracksOfMediaType:<br />

updateMovieFile<br />

volume<br />

writeToFile:withAttributes:<br />

Delegate Methods<br />

externalMovie:<br />

movie:linkToURL:<br />

movie:shouldContinueOperation:withPhase:<br />

atPercent:withAttributes:<br />

movieShouldLoadData:<br />

movieShouldTask:<br />

Sets the movie’s mute setting to mute.<br />

Sets the movie’s rate to rate.<br />

Sets the movie’s selection to selection.<br />

Sets the movie’s volume to volume.<br />

Sets the movie backward a single frame.<br />

Sets the movie forward a single frame.<br />

Stops the movie playing.<br />

Returns an array of QTTrack objects<br />

associated with the receiver.<br />

Returns an array of tracks with the<br />

specified media type.<br />

<strong>Update</strong>s the movie file of a QTMovie.<br />

Returns the movie’s volume as a scalar<br />

value of type float.<br />

Returns YES if the movie file was<br />

successfully created and NO otherwise.<br />

This method is called, if implemented by a<br />

QTMovie delegate object, when an external<br />

movie needs to be found (usually for a wired<br />

action targeted at an external movie).<br />

Called to handle the mcAction<br />

mcActionLinkToURL.<br />

If implemented, this method is called<br />

periodically during lengthy operations (such as<br />

exporting a movie).<br />

If a QTMovie object has a delegate and that<br />

delegate implements this method, that method<br />

will be called before QT<strong>Kit</strong> performs the<br />

standard idle processing on a movie.<br />

Classes 41<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTMovieView (New)<br />

Complete reference information is available in the QTMovieView reference.<br />

Instance Methods<br />

add:<br />

addScaled:<br />

controllerBarHeight<br />

copy:<br />

cut:<br />

delete:<br />

fillColor<br />

gotoBeginning:<br />

gotoEnd:<br />

gotoNextSelectionPoint:<br />

gotoPosterFrame:<br />

gotoPreviousSelectionPoint:<br />

initWithFrame:<br />

isControllerVisible<br />

isEditable<br />

movie<br />

movieBounds<br />

42 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

This action method adds the contents of the clipboard to the<br />

movie at the current movie time.<br />

This action method adds the contents of the clipboard to the<br />

movie, scaled to fit into the current movie selection.<br />

Returns the height of the controller bar.<br />

This action method copies the current movie selection onto the<br />

clipboard.<br />

This action method deletes the current movie selection from the<br />

movie, placing it on the clipboard.<br />

This action method deletes the current movie selection from the<br />

movie, placing it on the clipboard.<br />

Returns the fill color of the QTMovieView.<br />

This action method sets the current movie time to the beginning<br />

of the movie.<br />

This action method sets the current movie time to the end of the<br />

movie.<br />

This action method sets the current movie time to the next<br />

selection point.<br />

This action method sets the current movie time to the movie<br />

poster frame.<br />

This action method sets the current movie time to the previous<br />

selection point.<br />

Initializes a newly allocated QTMovieView with frame as its<br />

frame rectangle.<br />

Returns YES if the movie controller bar of the QTMovieView<br />

object is visible.<br />

Returns YES if the QTMovieView object is editable.<br />

Returns the QTMovie object associated with the QTMovieView.<br />

Returns the rectangle currently occupied by the movie in a<br />

QTMovieView.


10.3 Symbol Changes<br />

movieControllerBounds<br />

paste:<br />

pause:<br />

play:<br />

preservesAspectRatio<br />

replace:<br />

selectAll:<br />

selectNone:<br />

setControllerVisible:<br />

setEditable:<br />

setFillColor:<br />

setMovie:<br />

setPreservesAspectRatio:<br />

setShowsResizeIndicator:<br />

stepBackward:<br />

stepForward:<br />

trim:<br />

QTTrack (New)<br />

Returns the rectangle currently occupied by the movie controller<br />

bar (if it’s visible) in a QTMovieView.<br />

This action method inserts the contents of the clipboard (if it<br />

contains a movie clip) into the movie at the current play position.<br />

This action method pauses the movie playback.<br />

This action method starts the movie playing at its current<br />

location.<br />

Returns YES if the QTMovieView object maintains the aspect<br />

ratio of the movie when drawing it in the view.<br />

This action method replaces the current movie selection with<br />

the contents of the clipboard.<br />

This action method selects the entire movie.<br />

This action method selects nothing.<br />

Sets the visibility state of the movie controller bar in a<br />

QTMovieView to controllerVisible.<br />

Sets the edit state of a QTMovieView to editable.<br />

Sets the fill color of a QTMovieView to fillColor.<br />

Sets the QTMovie object in a QTMovieView to movie.<br />

Sets the aspect ratio state of a QTMovieView to<br />

preservesAspectRatio.<br />

Shows or hides the movie controller grow box.<br />

This action method steps the movie backward one frame.<br />

This action method steps the movie forward one frame.<br />

This action method trims the movie to the current movie<br />

selection.<br />

Complete reference information is available in the QTTrack reference.<br />

Class Methods<br />

trackWith<strong>QuickTime</strong>Track:error:<br />

Creates a QTTrack object with data from the <strong>QuickTime</strong><br />

track track.<br />

Classes 43<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

Instance Methods<br />

addImage:forDuration:withAttributes:<br />

attributeForKey:<br />

deleteSegment:<br />

initWith<strong>QuickTime</strong>Track:error:<br />

insertEmptySegmentAt:<br />

insertSegmentOfTrack:fromRange:scaledToRange:<br />

insertSegmentOfTrack:timeRange:atTime:<br />

isEnabled<br />

media<br />

movie<br />

quickTimeTrack<br />

scaleSegment:newDuration:<br />

setAttribute:forKey:<br />

setEnabled:<br />

setTrackAttributes:<br />

setVolume:<br />

44 Classes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Adds an image for the specified duration<br />

to the receiver, using attributes specified<br />

in the attributes dictionary.<br />

Returns the current value of the track<br />

attribute attributeKey.<br />

Deletes from a QTTrack the segment<br />

delimited by segment.<br />

If a QTTrack object cannot be created, an<br />

NSError object is returned in the location<br />

pointed to by errorPtr.<br />

Inserts into a QTTrack an empty segment<br />

delimited by the range range.<br />

Inserts the specified segment from the<br />

track into the receiver, scaled to the range<br />

dstRange.<br />

Inserts into a QTTrack at time time the<br />

selection in movie delimited by the time<br />

range range.<br />

Returns YES if the QTTrack object is<br />

currently enabled, NO otherwise.<br />

Returns the media associated with a<br />

QTTrack object.<br />

Returns the movie that contains a<br />

QTTrack object.<br />

Returns the <strong>QuickTime</strong> track associated<br />

with a QTTrack object.<br />

Scales the QTTrack segment delimited by<br />

the segment segment so that it will have<br />

the new duration newDuration.<br />

Set the track attribute attributeKey to the<br />

value specified by the value parameter.<br />

Sets the enabled state of a QTTrack to<br />

enabled.<br />

Set the track attributes using the key-value<br />

pairs specified in the dictionary attributes.<br />

Sets the volume of a QTTrack to volume.


trackAttributes<br />

volume<br />

C Symbols<br />

10.3 Symbol Changes<br />

Returns a dictionary containing the<br />

current values of all defined track<br />

attributes.<br />

Returns the volume of a QTTrack object.<br />

All of the header files with new symbols are listed alphabetically, with their new symbols described.<br />

QTData<strong>Reference</strong>.h<br />

Data Types & Constants<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTData<strong>Reference</strong>TypeFile<br />

QTData<strong>Reference</strong>TypeHandle<br />

QTData<strong>Reference</strong>TypePointer<br />

QTData<strong>Reference</strong>TypeResource<br />

QTData<strong>Reference</strong>TypeURL<br />

QTMedia.h<br />

Data Types & Constants<br />

The file type for a QTData<strong>Reference</strong> object.<br />

The handle type for a QTData<strong>Reference</strong> object.<br />

The pointer type for a QTData<strong>Reference</strong> object.<br />

The resource type for a QTData<strong>Reference</strong> object.<br />

The URL type for a QTData<strong>Reference</strong> object.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTMediaCharacteristicAudio<br />

QTMediaCharacteristicCanSendVideo<br />

QTMediaCharacteristicCanStep<br />

QTMediaCharacteristicHasNoDuration<br />

QTMediaCharacteristicHasSkinData<br />

The media has audio data. This is a BOOL.<br />

The media can send visual data to another track.<br />

This is a BOOL.<br />

The media can step. This is a BOOL.<br />

The media has no duration. This is a BOOL.<br />

The media has skin data. This is a BOOL.<br />

C Symbols 45<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTMediaCharacteristicHasVideoFrameRate<br />

QTMediaCharacteristicNonLinear<br />

QTMediaCharacteristicProvidesActions<br />

QTMediaCharacteristicProvidesKeyFocus<br />

QTMediaCharacteristicVisual<br />

QTMediaCreationTimeAttribute<br />

QTMediaDurationAttribute<br />

QTMediaModificationTimeAttribute<br />

QTMediaQualityAttribute<br />

QTMediaSampleCountAttribute<br />

QTMediaTimeScaleAttribute<br />

QTMediaType3D<br />

QTMediaTypeAttribute<br />

QTMediaTypeBase<br />

QTMediaTypeFlash<br />

QTMediaTypeHint<br />

QTMediaTypeMovie<br />

QTMediaTypeMPEG<br />

QTMediaTypeMusic<br />

QTMediaTypeQTVR<br />

QTMediaTypeSkin<br />

QTMediaTypeSound<br />

QTMediaTypeSprite<br />

46 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

The media has a video frame rate. This is a BOOL.<br />

The media is non-linear. This is a BOOL.<br />

The media has actions. This is a BOOL.<br />

Key events can be focused at the media. This is a<br />

BOOL.<br />

The media has video data. This is a BOOL.<br />

The creation time of a QTMedia object; the value<br />

for this key is of type NSDate.<br />

The duration of a QTMedia object; the value for<br />

this key is of type NSValue, interpreted as a<br />

QTTime.<br />

The modification time of a QTMedia object; the<br />

value for this key is of type NSDate.<br />

The media quality; the value for this key is of type<br />

NSNumber, interpreted as a short.<br />

The media sample count; the value for this key is<br />

of type NSNumber, interpreted as a long.<br />

The media time scale; the value for this key is of<br />

type NSNumber, interpreted as a long.<br />

3D media.<br />

The media type; the value for this key is of type<br />

NSString; see below for the values this attribute<br />

can return.<br />

Base media.<br />

Flash media.<br />

Hint media.<br />

Movie media.<br />

MPEG media<br />

Music media<br />

<strong>QuickTime</strong> VR media.<br />

Skin media<br />

Sound media.<br />

Sprite media.


10.3 Symbol Changes<br />

QTMediaTypeStream<br />

QTMediaTypeText<br />

QTMediaTypeTimeCode<br />

QTMediaTypeTween<br />

QTMediaTypeVideo<br />

QTMovie.h<br />

Data Types & Constants<br />

Stream media.<br />

Text media.<br />

Timecode media.<br />

Tween media.<br />

Video media.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTAddImageCodecQuality<br />

QTAddImageCodecType<br />

QTIncludeAggressiveTypes<br />

QTIncludeAllTypes<br />

QTIncludeCommonTypes<br />

QTIncludeStillImageTypes<br />

QTIncludeTranslatableTypes<br />

QTMovieActiveSegmentAttribute<br />

QTMovieAskUnresolvedDataRefsAttribute<br />

The image codec value; the value for this key<br />

is of type NSNumber.<br />

The image codec string; the value for this key<br />

is of type NSString.<br />

This value adds to the array all file types for<br />

files that can be opened using a movie importer<br />

but that are not commonly used in connection<br />

with movies (for instance, text or HTML files).<br />

This value adds to the array all file types that<br />

<strong>QuickTime</strong> can open on the current system,<br />

using any available movie or graphics<br />

importer.<br />

This value adds to the array all common file<br />

types that <strong>QuickTime</strong> can open in place on the<br />

current system.<br />

This value adds to the array all file types for<br />

still images that can be opened using a graphics<br />

importer.<br />

This value adds to the array all file types for<br />

files that can be opened using a movie importer<br />

but for which a new file must be created.<br />

The active segment of a QTMovie object; the<br />

value for this key is of type NSValue,<br />

interpreted as a QTTimeRange structure.<br />

C Symbols 47<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTMovieAutoAlternatesAttribute<br />

QTMovieChapterDidChangeNotification<br />

QTMovieChapterListDidChangeNotification<br />

QTMovieCloseWindowRequestNotification<br />

QTMovieCopyrightAttribute<br />

QTMovieCreationTimeAttribute<br />

QTMovieCurrentSizeAttribute<br />

QTMovieCurrentTimeAttribute<br />

QTMovieDataAttribute<br />

QTMovieData<strong>Reference</strong>Attribute<br />

QTMovieDataSizeAttribute<br />

QTMovieDelegateAttribute<br />

QTMovieDidEndNotification<br />

QTMovieDisplayNameAttribute<br />

QTMovieDontInteractWithUserAttribute<br />

48 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

The auto-alternate state of a QTMovie object.<br />

The value for this key is of type NSNumber,<br />

interpreted as a BOOL.<br />

Issued when the chapter associated with<br />

QTMovie changes.<br />

Issued when the chapter list associated with<br />

QTMovie changes.<br />

Sent when a request is made to close the<br />

movie’s window.<br />

The copyright string of a QTMovie object; the<br />

value for this key is of type NSString.<br />

The creation time of a QTMovie object; the<br />

value for this key is of type NSDate.<br />

The current size of a QTMovie object; the value<br />

for this key is of type NSValue, interpreted as<br />

an NSSize structure.<br />

The current time of a QTMovie object; the value<br />

for this key is of type NSValue, interpreted as<br />

a QTTime structure.<br />

The data of a QTMovie object.<br />

The data reference of a QTMovie object.<br />

The data size of a QTMovie. The value for this<br />

key is of type NSNumber, which is interpreted<br />

as a long long.<br />

The delegate for a QTMovie object. The value<br />

for this key is of type NSObject.<br />

Sent when the movie is “done” or at its end.<br />

The display name of a QTMovie object. A<br />

display name is stored as user data in a movie<br />

file and hence may differ from the base name<br />

of the movie’s filename or URL. The value for<br />

this key is of type NSString.<br />

When set in a dictionary passed to<br />

movieWithAttributes or initWithAttributes,<br />

this prevents <strong>QuickTime</strong> from interacting with<br />

the user during movie initialization. The value<br />

for this key is of type NSNumber, interpreted<br />

as a BOOL.


10.3 Symbol Changes<br />

QTMovieDurationAttribute<br />

QTMovieEditabilityDidChangeNotification<br />

QTMovieEditableAttribute<br />

QTMovieEditedNotification<br />

QTMovieEnterFullScreenRequestNotification<br />

QTMovieExitFullScreenRequestNotification<br />

QTMovieExport<br />

QTMovieExportManufacturer<br />

QTMovieExportSettings<br />

QTMovieExportType<br />

QTMovieFileNameAttribute<br />

QTMovieFileOffsetAttribute<br />

QTMovieFileTypeOptions<br />

QTMovieFlatten<br />

QTMovieHasAudioAttribute<br />

QTMovieHasDurationAttribute<br />

QTMovieHasVideoAttribute<br />

The duration of a QTMovie object; the value<br />

for this key is of type NSValue, interpreted as<br />

a QTTime structure.<br />

Sent when the editable state of a movie has<br />

changed.<br />

The editable setting; the value for this key is of<br />

type NSNumber, interpreted as a BOOL. This<br />

value is YES if the movie can be edited.<br />

Sent when a movie has been edited.<br />

Sent when a request is made to play back a<br />

movie in full screen mode.<br />

Sent when a request is made to play back a<br />

movie in normal windowed mode.<br />

The movie export setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

The export manufacturer value; the value for<br />

this key is of type NSNumber, interpreted as<br />

a long.<br />

Information to come.<br />

The movie export type; the value for this key<br />

is of type NSNumber, interpreted as a long.<br />

The file name string of a QTMovie object; the<br />

value for this key is of type NSString.<br />

The file offset value; the value for this key is of<br />

type NSNumber, interpreted as a long long.<br />

The movie flatten setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

The audio data setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

This value is YES if the movie contains audio<br />

data.<br />

The duration setting; the value for this key is<br />

of type NSNumber, interpreted as a BOOL.<br />

This value is YES if the movie has a duration.<br />

The video data setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

This value is YES if the movie contains video<br />

data.<br />

C Symbols 49<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTMovieIsActiveAttribute<br />

QTMovieIsInteractiveAttribute<br />

QTMovieIsLinearAttribute<br />

QTMovieIsSteppableAttribute<br />

QTMovieLoadStateAttribute<br />

QTMovieLoadStateDidChangeNotification<br />

QTMovieLoopModeDidChangeNotification<br />

QTMovieLoopsAttribute<br />

QTMovieLoopsBackAndForthAttribute<br />

QTMovieMessageNotificationParameter<br />

QTMovieMessageStringPostedNotification<br />

QTMovieModificationTimeAttribute<br />

QTMovieMutedAttribute<br />

QTMovieNaturalSizeAttribute<br />

50 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

The active setting; the value for this key is of<br />

type NSNumber, interpreted as a BOOL.<br />

The interactive setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

This value is YES if the movie is interactive.<br />

The linear setting; the value for this key is of<br />

type NSNumber, interpreted as a BOOL. This<br />

value is YES if the movie is linear, as opposed<br />

to a non-linear <strong>QuickTime</strong> VR movie.<br />

The steppable setting; the value for this key is<br />

of type NSNumber, interpreted as a BOOL.<br />

This value is YES if the movie can step from<br />

frame to frame.<br />

The load state value; the value for this key is<br />

of type NSNumber, interpreted as a long.<br />

Sent when the load state of a movie has<br />

changed.<br />

Sent when a change is made in a movie’s<br />

looping mode.<br />

The looping setting; the value for this key is of<br />

type NSNumber, interpreted as a BOOL. This<br />

value is YES if the movie is set to loop.<br />

The palindrome looping setting; the value for<br />

this key is of type NSNumber, interpreted as<br />

a BOOL.<br />

Used as a key in the userInfo dictionary passed<br />

to the QTMovieMessageNotification<br />

notification to indicate the message. The<br />

associated value is an NSString.<br />

Sent when a movie message has been received<br />

by the movie controller.<br />

The modification time of a QTMovie object; the<br />

value for this key is of type NSDate.<br />

The mute setting; the value for this key is of<br />

type NSNumber, interpreted as a BOOL. This<br />

value is YES if the movie volume is muted.<br />

The natural size of a QTMovie object; the value<br />

for this key is of type NSValue, interpreted as<br />

an NSSize structure.


10.3 Symbol Changes<br />

QTMovieOpenAsyncOKAttribute<br />

QTMovieOperationBeginPhase<br />

QTMovieOperationEndPhase<br />

QTMovieOperationPhase<br />

QTMovieOperation<strong>Update</strong>PercentPhase<br />

QTMoviePasteboardAttribute<br />

QTMoviePasteboardType<br />

QTMoviePlaysAllFramesAttribute<br />

QTMoviePlaysSelectionOnlyAttribute<br />

QTMoviePosterTimeAttribute<br />

QTMoviePreferredMutedAttribute<br />

QTMoviePreferredRateAttribute<br />

QTMoviePreferredVolumeAttribute<br />

QTMoviePreviewModeAttribute<br />

QTMoviePreviewRangeAttribute<br />

QTMovieRateAttribute<br />

QTMovieRateChangesPreservePitchAttribute<br />

The open async setting; the value for this key<br />

is of type NSNumber, interpreted as a BOOL.<br />

The pasteboard setting of a QTMovie object.<br />

The play-all-frames setting; the value for this<br />

key is of type NSNumber, interpreted as a<br />

BOOL. This value is YES if the movie will play<br />

all frames.<br />

The play-selection setting; the value for this<br />

key is of type NSNumber, interpreted as a<br />

BOOL. This value is YES if the movie will play<br />

only the current selection.<br />

The movie poster time of a QTMovie object;<br />

the value for this key is of type NSValue,<br />

interpreted as a QTTime structure.<br />

The preferred mute setting; the value for this<br />

key is of type NSNumber, interpreted as a<br />

BOOL. This value is YES if the movie preferred<br />

mute setting is muted.<br />

The preferred rate; the value for this key is of<br />

type NSNumber, interpreted as a float.<br />

The preferred volume; the value for this key is<br />

of type NSNumber, interpreted as a float.<br />

The preview mode setting; the value for this<br />

key is of type NSNumber, interpreted as a<br />

BOOL. This value is YES if the movie is in<br />

preview mode.<br />

The preview range of a QTMovie object; the<br />

value for this key is of type NSValue,<br />

interpreted as a QTTimeRange structure.<br />

The movie rate; the value for this key is of type<br />

NSNumber, interpreted as a float.<br />

When the playback rate is not unity, audio<br />

must be resampled in order to play at the new<br />

rate.<br />

C Symbols 51<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTMovieRateDidChangeNotification<br />

QTMovieRateDidChangeNotificationParameter<br />

QTMovieResolveDataRefsAttribute<br />

QTMovieSelectionAttribute<br />

QTMovieSelectionDidChangeNotification<br />

QTMovieSizeDidChangeNotification<br />

QTMovieStatusCodeNotificationParameter<br />

QTMovieStatusFlagsNotificationParameter<br />

QTMovieStatusStringNotificationParameter<br />

QTMovieStatusStringPostedNotification<br />

QTMovieTargetIDNotificationParameter<br />

QTMovieTargetNameNotificationParameter<br />

QTMovieTimeDidChangeNotification<br />

52 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Sent when the rate of a movie has changed.<br />

Used as a key in the userInfo dictionary passed<br />

to the QTMovieRateDidChangeNotification<br />

notification to indicate the new playback rate.<br />

The associated value is an NSNumber that<br />

holds a float.<br />

The selection range of a QTMovie object; the<br />

value for this key is of type NSValue,<br />

interpreted as a QTTimeRange structure.<br />

Sent when the selection of a movie has<br />

changed.<br />

Sent when the size of a movie has changed.<br />

Used as a key in the userInfo dictionary passed<br />

to the QTMovieStatusStringPostedNotification<br />

notification to indicate a status code (or error<br />

code). The associated value is an NSNumber<br />

that holds an int.<br />

Used as a key in the userInfo dictionary passed<br />

to the QTMovieStatusStringPostedNotification<br />

notification to indicate status flags. The<br />

associated value is an NSNumber that holds a<br />

long.<br />

Used as a key in the userInfo dictionary passed<br />

to the QTMovieStatusStringPostedNotification<br />

notification to indicate a status string.<br />

Status messages can be sent by <strong>QuickTime</strong>’s<br />

streaming components or by any code that<br />

wants to display a message in the movie<br />

controller bar status area.<br />

Used as a key in the dictionary passed to the<br />

externalMovie: delegate method to indicate<br />

that the delegate should return a QTMovie<br />

object that has the movie ID specified by the<br />

key’s value.<br />

Used as a key in the dictionary passed to the<br />

externalMovie: delegate method to indicate<br />

that the delegate should return a QTMovie<br />

object that has the movie name specified by the<br />

key’s value.<br />

Sent when the time in a movie has changed.


10.3 Symbol Changes<br />

QTMovieTimeScaleAttribute<br />

QTMovieUneditableException<br />

QTMovieURLAttribute<br />

QTMovieVolumeAttribute<br />

QTMovieVolumeDidChangeNotification<br />

QTMovieView.h<br />

Data Types & Constants<br />

The movie time scale; the value for this key is<br />

of type NSNumber, interpreted as a long. In<br />

Mac OS X 10.5 and later, this attribute is<br />

gettable and settable. In general, you should<br />

set this attribute only on newly-created movies<br />

or on movies that have not been edited. Also,<br />

you should only increase the time scale value,<br />

and you should try to use integer multiples of<br />

the existing time scale. In earlier versions of<br />

Mac OS X, this attribute is gettable only.<br />

The URL of a QTMovie object; the value for<br />

this key is of type NSURL.<br />

The movie volume; the value for this key is of<br />

type NSNumber, interpreted as a float.<br />

Sent when the volume of a movie has changed.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTMovieViewControllerVisibleBinding<br />

QTMovieViewFillColorBinding<br />

QTMovieViewMovieBinding<br />

QTMovieViewPreservesAspectRatioBinding<br />

QTTime.h<br />

Functions<br />

All of the new functions in this header file are listed alphabetically, with links to documentation and<br />

abstracts, if available.<br />

QTGetTimeInterval<br />

Returns the value of a QTTime structure expressed as an<br />

NSTimeInterval.<br />

C Symbols 53<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTGetTimeRecord<br />

QTMakeTime<br />

QTMakeTimeScaled<br />

QTMakeTimeWithTimeInterval<br />

QTMakeTimeWithTimeRecord<br />

QTStringFromTime<br />

QTTimeCompare<br />

QTTimeDecrement<br />

QTTimeFromString<br />

QTTimeIncrement<br />

QTTimeIsIndefinite<br />

Data Types & Constants<br />

Returns the value of a QTTime structure expressed as a<br />

TimeRecord.<br />

Creates a QTTime structure.<br />

Returns a QTTime structure.<br />

Creates a QTTime structure.<br />

Creates a QTTime structure.<br />

Returns a description of a QTTime structure.<br />

Returns a value of type NSComparisonResult.<br />

Subtracks one QTTime from another.<br />

Returns a QTTime structure.<br />

Adds two QTTime structures.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

kQTTimeIsIndefinite<br />

QTIndefiniteTime<br />

QTZeroTime<br />

timeValue<br />

QTTimeRange.h<br />

Functions<br />

All of the new functions in this header file are listed alphabetically, with links to documentation and<br />

abstracts, if available.<br />

QTEqualTimeRanges<br />

QTIntersectionTimeRange<br />

QTMakeTimeRange<br />

54 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns YES if the specified time ranges are identical.<br />

Returns a QTTimeRange structure that represents the<br />

intersection of the two ranges.<br />

Returns a QTTimeRange structure initialized using the QTTime<br />

structures time and duration.


10.3 Symbol Changes<br />

QTStringFromTimeRange<br />

QTTimeInTimeRange<br />

QTTimeRangeEnd<br />

QTTimeRangeFromString<br />

QTUnionTimeRange<br />

QTTrack.h<br />

Data Types & Constants<br />

Returns a description of a QTTimeRange structure.<br />

Returns YES if the specified time time lies in the time range<br />

range.<br />

Returns a QTTime structure representing the end of the specified<br />

time range.<br />

Returns a QTTimeRange structure<br />

Returns a QTTimeRange structure.<br />

All of the new data types and constants in this header file are listed alphabetically, with links to<br />

documentation and abstracts, if available.<br />

QTTrackBoundsAttribute<br />

QTTrackCreationTimeAttribute<br />

QTTrackDimensionsAttribute<br />

QTTrackDisplayNameAttribute<br />

QTTrackEnabledAttribute<br />

QTTrackIDAttribute<br />

QTTrackLayerAttribute<br />

QTTrackMediaTypeAttribute<br />

QTTrackModificationTimeAttribute<br />

QTTrackRangeAttribute<br />

QTTrackTimeScaleAttribute<br />

The bounding rectangle of a QTTrack object; the value for<br />

this key is of type NSValue, interpreted as an NSRect.<br />

The creation time of a QTTrack object; the value for this<br />

key is of type NSDate.<br />

The dimensions of a QTTrack object; the value for this key<br />

is of type NSValue, interpreted as an NSSize.<br />

The display name of a QTTrack object; the value for this<br />

key is of type NSString.<br />

The track enabled state of a QTTrack object; the value for<br />

this key is of type NSNumber, interpreted as a BOOL.<br />

The track ID of a QTTrack object; the value for this key is<br />

of type NSNumber, interpreted as a long.<br />

The track layer of a QTTrack object; the value for this key<br />

is of type NSNumber, interpreted as a short.<br />

The media type of a QTTrack object; the value for this key<br />

is of type NSString.<br />

The modification time of a QTTrack object; the value for<br />

this key is of type NSDate.<br />

The range of time this track occupies; the value for this<br />

key is of type NSValue, interpreted as a QTTimeRange.<br />

The track time scale; the value for this key is of type<br />

NSNumber, interpreted as a long.<br />

C Symbols 55<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.


10.3 Symbol Changes<br />

QTTrackUsageInMovieAttribute<br />

QTTrackUsageInPosterAttribute<br />

QTTrackUsageInPreviewAttribute<br />

QTTrackVolumeAttribute<br />

QTUtilities.h<br />

Functions<br />

The movie usage setting; the value for this key is of type<br />

NSNumber, interpreted as a BOOL.<br />

The poster usage setting; the value for this key is of type<br />

NSNumber, interpreted as a BOOL.<br />

The preview usage setting; the value for this key is of type<br />

NSNumber, interpreted as a BOOL.<br />

The volume of a QTTrack object; the value for this key is<br />

of type NSNumber, interpreted as a float.<br />

All of the new functions in this header file are listed alphabetically, with links to documentation and<br />

abstracts, if available.<br />

QTOSTypeForString<br />

QTStringForOSType<br />

56 C Symbols<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

Returns a four-character code representing the specified NSString.<br />

Returns an NSString representing the specified four-character<br />

code type.


Document Revision History<br />

This table describes the changes to <strong>QuickTime</strong> <strong>Kit</strong> <strong>Reference</strong> <strong>Update</strong>.<br />

Date<br />

2007-07-18<br />

2005-04-29<br />

Notes<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.<br />

<strong>Update</strong>d with the symbols added to the <strong>QuickTime</strong> <strong>Kit</strong> framework in Mac<br />

OS X v10.5.<br />

New document that summarizes the symbols added to the <strong>QuickTime</strong> <strong>Kit</strong><br />

framework in Mac OS X v10.4.<br />

57


58<br />

Document Revision History<br />

2007-07-18 | © 2007 Apple Inc. All Rights Reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!