Class: AVMutableVideoCompositionLayerInstruction

Inherits:
AVVideoCompositionLayerInstruction show all

Overview

AVMutableVideoCompositionLayerInstruction is a mutable subclass of AVVideoCompositionLayerInstruction that you use to modify the transform and opacity ramps to apply to a given track in an AV composition.

Instance Attribute Summary (collapse)

Class Method Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from AVVideoCompositionLayerInstruction

#getOpacityRampForTime:startOpacity:endOpacity:timeRange:, #getTransformRampForTime:startTransform:endTransform:timeRange:

Methods inherited from NSObject

#!, #!=, #!~, #, #==, #===, #=~, #Rational, #__callee__, #__method__, #__send__, #__type__, `, alloc, allocWithZone:, #autoContentAccessingProxy, autoload, autoload?, autorelease_pool, #awakeAfterUsingCoder:, binding, block_given?, caller, cancelPreviousPerformRequestsWithTarget:, cancelPreviousPerformRequestsWithTarget:selector:object:, catch, class, classFallbacksForKeyedArchiver, #classForCoder, #classForKeyedArchiver, classForKeyedUnarchiver, #clone, conformsToProtocol:, #copy, copyWithZone:, #dealloc, #define_singleton_method, description, display, #doesNotRecognizeSelector:, #dup, #enum_for, #eql?, #equal?, #extend, fail, #finalize, format, #forwardInvocation:, #forwardingTargetForSelector:, framework, #freeze, #frozen?, getpass, gets, global_variables, #init, initialize, #initialize_clone, #initialize_copy, #initialize_dup, #inspect, instanceMethodForSelector:, instanceMethodSignatureForSelector:, #instance_eval, #instance_exec, #instance_of?, #instance_variable_defined?, #instance_variable_get, #instance_variable_set, #instance_variables, instancesRespondToSelector:, isSubclassOfClass:, #is_a?, iterator?, #kind_of?, lambda, load, load_bridge_support_file, load_plist, local_variables, loop, #method, #methodForSelector:, #methodSignatureForSelector:, #methods, #mutableCopy, mutableCopyWithZone:, new, #nil?, open, p, #performSelector:onThread:withObject:waitUntilDone:, #performSelector:onThread:withObject:waitUntilDone:modes:, #performSelector:withObject:afterDelay:, #performSelector:withObject:afterDelay:inModes:, #performSelectorInBackground:withObject:, #performSelectorOnMainThread:withObject:waitUntilDone:, #performSelectorOnMainThread:withObject:waitUntilDone:modes:, print, printf, #private_methods, proc, #protected_methods, #public_method, #public_methods, #public_send, putc, puts, raise, rand, readline, readlines, #replacementObjectForCoder:, #replacementObjectForKeyedArchiver:, require, resolveClassMethod:, resolveInstanceMethod:, #respond_to?, #respond_to_missing?, select, #send, setVersion:, #singleton_methods, sprintf, srand, superclass, #taint, #tainted?, #tap, test, throw, #to_plist, #to_s, trace_var, trap, #trust, #untaint, untrace_var, #untrust, #untrusted?, version

Constructor Details

This class inherits a constructor from NSObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class NSObject

Instance Attribute Details

- (CMPersistentTrackID) trackID

The trackID of the source track to which the compositor will apply the instruction.

Returns:

  • (CMPersistentTrackID)

Class Method Details

+ (Object) videoCompositionLayerInstruction

Returns a new mutable video composition layer instruction.

Returns:

  • (Object)

    A new mutable video composition layer instruction with no transform or opacity ramps and trackID initialized to kCMPersistentTrackID_Invalid.

+ (Object) videoCompositionLayerInstructionWithAssetTrack(track)

Returns a new mutable video composition layer instruction for the given track.

Parameters:

  • track (AVAssetTrack)

    The asset track to which to apply the instruction.

Returns:

  • (Object)

    A new mutable video composition layer instruction with no transform or opacity ramps and trackID initialized to the track ID of track.

Instance Method Details

- (Object) setOpacity(opacity, atTime:time)

Sets a value of the opacity at a time within the time range of the instruction. Sets a fixed opacity to apply from the specified time until the next time at which an opacity is set; this is the same as setting a flat ramp for that time range. Before the first time for which an opacity is set, the opacity is held constant at 1.0; after the last specified time, the opacity is held constant at the last value.

Parameters:

  • opacity (Float)

    The opacity to be applied at time. The value must be between 0.0 and 1.0.

  • time (CMTime)

    A time value within the time range of the composition instruction.

Returns:

- (Object) setOpacityRampFromStartOpacity(startOpacity, toEndOpacity:endOpacity, timeRange:timeRange)

Sets an opacity ramp to apply during a specified time range. During an opacity ramp, opacity is computed using a linear interpolation. Before the first time for which an opacity is set, the opacity is held constant at 1.0; after the last specified time, the opacity is held constant at the last value.

Parameters:

  • startOpacity (Float)

    The opacity to be applied at the start time of timeRange. The value must be between 0.0 and 1.0.

  • endOpacity (Float)

    The opacity to be applied at the end time of timeRange. The value must be between 0.0 and 1.0.

  • timeRange (CMTimeRange)

    The time range over which the value of the opacity will be interpolated between startOpacity and endOpacity.

Returns:

- (Object) setTransform(transform, atTime:time)

Sets a value of the transform at a time within the time range of the instruction. Sets a fixed transform to apply from the specified time until the next time at which a transform is set. This is the same as setting a flat ramp for that time range. Before the first specified time for which a transform is set, the affine transform is held constant at the value of CGAffineTransformIdentity; after the last time for which a transform is set, the affine transform is held constant at that last value.

Parameters:

  • transform (CGAffineTransform)

    The transform to be applied at time.

  • time (CMTime)

    A time value within the time range of the composition instruction.

Returns:

- (Object) setTransformRampFromStartTransform(startTransform, toEndTransform:endTransform, timeRange:timeRange)

Sets a transform ramp to apply during a given time range. During a transform ramp, the affine transform is interpolated between the values set at the ramp's start time and end time. Before the first specified time for which a transform is set, the affine transform is held constant at the value of CGAffineTransformIdentity; after the last time for which a transform is set, the affine transform is held constant at that last value.

Parameters:

  • startTransform (CGAffineTransform)

    The transform to be applied at the starting time of timeRange.

  • endTransform (CGAffineTransform)

    The transform to be applied at the end time of timeRange.

  • timeRange (CMTimeRange)

    The time range over which the value of the transform will be interpolated between startTransform and endTransform.

Returns: