IMPORTANT: Final Cut Pro, Soundtrack and Audio Unit Plug-ins
IMPORTANT: Final Cut Pro, Soundtrack and Audio Unit Plug-ins
- Subject: IMPORTANT: Final Cut Pro, Soundtrack and Audio Unit Plug-ins
- From: Craig Linssen <email@hidden>
- Date: Mon, 9 Jun 2003 17:59:36 -0700
Final Cut Pro 4 and Mac OS X Audio Unit Plug-ins
Preliminary Developer Guidelines - Information subject to change
) 2003 Apple Computer, Inc.
Final Cut Pro 4.0 includes support for the Mac OS X Core Audio
architecture. Developers can now deploy their Audio Unit modules in the
Final Cut Pro application itself or in the Soundtrack application
following the guidelines detailed here. For general information about
the Mac OS X Core Audio architecture and Audio Unit plug-ins, please
refer to the documentation and examples provided by Apple at
http://developer.apple.com/audio/.
For the Final Cut Pro 4.0 application
For the Final Cut Pro 4.0 application, Audio Unit plug-in developers
should be aware of these points:
1. The Final Cut Pro 4.0 application does not support any
vendor-created custom user interface elements that are part of an Audio
Unit plug-in. Instead, the user controls parameters for a plug-in with
the standard user interface controls (sliders, checkboxes, and so on)
within the Audio Filter Effects window. Audio Unit parameters that are
not published for programmatic access have no corresponding control
element appearing in the Audio Filter Effects window. Audio Units that
are compatible with the Final Cut Pro 4.0 application appear in
sub-folders labeled with the name of the manufacturer within the Audio
Filter Effects window.
2. The Final Cut Pro 4.0 audio track and bussing architecture only
supports monophonic channel processing of individual track items. This
means that Audio Unit plug-ins, if they are to be used within the Final
Cut Pro application, must provide monophonic channel input to
monophonic channel output. Plug-ins that only implement stereo or other
multi-channel processing are not loaded.
3. To support real-time adjustments during playback, an Audio Unit
plug-in should implement the property kAudioUnitProperty_TailTime.
Audio playback and rendering in the Final Cut Pro application operate
with an internal pre-roll audio computation method that ensures
consistent sample values across edit points and during playback
positioning. The application queries the plug-in for the value of this
property to determine how many samples must be computed prior to the
actual playback or edit position so that sample-accurate seaming is
maintained.
Plug-ins that report not implemented for this property load and
operate subject to the following limits: if the applications audio
playback quality preference is set to low-quality, you can adjust the
parameters for the plug-in in real-time during playback, but
sample-seaming artifacts may be audible; if the audio playback quality
preference is set to medium or high in order to eliminate seaming
artifacts, you must render items to which the plug-in is attached.
Units whose internal signal processing produces an infinite tail time,
or whose internal state is indeterminate for a given sample offset,
should report not implemented for the kAudioUnitProperty_TailTime
property. These units cannot be seamed properly during playback and
require item rendering in order to produce a consistent sample stream.
For more information on the kAudioUnitProperty_TailTime property,
see the Apple documentation on Mac OS X Core Audio architecture.
For Soundtrack 1.0
For the Soundtrack 1.0 application, developers should note these points:
1. Soundtrack does allow for the use of custom Audio Unit user
interface elements. In Soundtrack, this custom plug-in user interface
is optional. It only appears when the user clicks the Advanced button
in the generic Soundtrack user interface. (If the Audio Unit plug-in
has no custom user interface elements, the Advanced button does not
appear.) To ensure that an Audio Unit plug-in appears correctly in the
generic Soundtrack user interface, developers should make sure that the
parameter descriptions for the plug-in are complete and accurate.
2. Soundtrack requires that Audio Unit plug-ins have at least stereo
input and stereo output channel capabilities. As long as an Audio Unit
plug-in is capable of stereo input and stereo output, Soundtrack uses
it correctly.
3. Soundtrack utilizes the Audio Unit property
kAudioUnitProperty_TailTime for a CPU usage-saving algorithm. An
Audio Unit plug-in that does not implement this property still operates
in Soundtrack. However, if the plug-in creates an audible tail after
input ends (as in the case of reverb) and if the
kAudioUnitProperty_TailTime property is not implemented, Soundtrack
may truncate the audio output. You can work around this problem by
providing additional silent input to the track that is using the
plug-in.
Document Revision v1.3 June 9, 2003
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.