Retired Document
Important: This sample code may not represent best practices for current development. The project may use deprecated symbols and illustrate technologies and techniques that are no longer recommended.
Clippings/CreateInputMap.txt
// create and add the input map - this tells the effect |
// which tracks in the movie are affected |
long myRefIndex1, myRefIndex2; |
QTAtomContainer myInputMap; |
QTAtom myInputAtom; |
OSType myInputType; |
long myLong; |
QTNewAtomContainer(&myInputMap); |
// first input |
if (videoTracks[0]) { |
// setup a reference between our effect and the first input track |
AddTrackReference(videoTrackFX, videoTracks[0], kTrackModifierReference, &myRefIndex1); |
QTInsertChild(myInputMap, kParentAtomIsContainer, kTrackModifierInput, myRefIndex1, 0, 0, NULL, &myInputAtom); |
// add modifier track type ('vide') |
myInputType = EndianU32_NtoB(kTrackModifierTypeImage); |
QTInsertChild(myInputMap, myInputAtom, kTrackModifierType, 1, 0, sizeof(myInputType), &myInputType, NULL); |
// source name for first source - there is a corresponding |
// kEffectSourceName atom in the effect description to |
// identify the source |
myLong = EndianU32_NtoB(kSourceOneName); |
QTInsertChild(myInputMap, myInputAtom, kEffectDataSourceType, 1, 0, sizeof(myLong), &myLong, NULL); |
} |
// second input |
if (videoTracks[1]) { |
// setup a reference between our effect and the second input track |
AddTrackReference(videoTrackFX, videoTracks[1], kTrackModifierReference, &myRefIndex2); |
QTInsertChild(myInputMap, kParentAtomIsContainer, kTrackModifierInput, myRefIndex2, 0, 0, NULL, &myInputAtom); |
// modifier track type ('vide') |
myInputType = EndianU32_NtoB(kTrackModifierTypeImage); |
QTInsertChild(myInputMap, myInputAtom, kTrackModifierType, 1, 0, sizeof(myInputType), &myInputType, NULL); |
// source name for second source - there is a corresponding |
// kEffectSourceName atom in the effect description to |
// identify the source |
myLong = EndianU32_NtoB(kSourceTwoName); |
QTInsertChild(myInputMap, myInputAtom, kEffectDataSourceType, 1, 0, sizeof(myLong), &myLong, NULL); |
} |
Copyright © 2003 Apple Computer, Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2003-01-14