Class AVAssetReaderVideoCompositionOutput

  • All Implemented Interfaces:
    NSObject

    public class AVAssetReaderVideoCompositionOutput
    extends AVAssetReaderOutput
    AVAssetReaderVideoCompositionOutput AVAssetReaderVideoCompositionOutput is a concrete subclass of AVAssetReaderOutput that defines an interface for reading video frames that have been composited together from the frames in one or more AVAssetTracks of an AVAssetReader's AVAsset. Clients can read the video frames composited from one or more asset tracks by adding an instance of AVAssetReaderVideoCompositionOutput to an AVAssetReader using the -[AVAssetReader addOutput:] method. API-Since: 4.1
    • Constructor Detail

      • AVAssetReaderVideoCompositionOutput

        protected AVAssetReaderVideoCompositionOutput​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • assetReaderVideoCompositionOutputWithVideoTracksVideoSettings

        public static AVAssetReaderVideoCompositionOutput assetReaderVideoCompositionOutputWithVideoTracksVideoSettings​(@NotNull
                                                                                                                        @NotNull NSArray<? extends AVAssetTrack> videoTracks,
                                                                                                                        @Nullable
                                                                                                                        @Nullable NSDictionary<java.lang.String,​?> videoSettings)
        assetReaderVideoCompositionOutputWithVideoTracks:videoSettings: Creates an instance of AVAssetReaderVideoCompositionOutput for reading composited video from the specified video tracks and supplying media data according to the specified video settings. Each track must be one of the tracks owned by the target AVAssetReader's asset and must be of media type AVMediaTypeVideo. A value of nil for videoSettings configures the output to return samples in a convenient uncompressed format, with properties determined according to the properties of the specified video tracks. Initialization will fail if the video settings cannot be used with the specified tracks. AVAssetReaderVideoCompositionOutput can only produce uncompressed output. This means that the video settings dictionary must follow the rules for uncompressed video output, as laid out in AVVideoSettings.h. In addition, the following keys are not supported: AVVideoCleanApertureKey AVVideoPixelAspectRatioKey AVVideoScalingModeKey
        Parameters:
        tracks - An NSArray of AVAssetTrack objects from which the resulting AVAssetReaderVideoCompositionOutput should read video frames for compositing.
        videoSettings - An NSDictionary of video settings to be used for video output. See AVVideoSettings.h for more information about how to construct a video settings dictionary.
        Returns:
        An instance of AVAssetReaderVideoCompositionOutput.
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(@NotNull
                                                                   @NotNull java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(@NotNull
                                                                   @NotNull java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(@NotNull
                                                                                 @NotNull java.lang.Object aTarget,
                                                                                 @NotNull
                                                                                 @NotNull org.moe.natj.objc.SEL aSelector,
                                                                                 @Nullable
                                                                                 @Nullable java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        @NotNull
        public static @NotNull NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        @NotNull
        public static @NotNull org.moe.natj.objc.Class classForKeyedUnarchiver()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        @NotNull
        public static @NotNull NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(@NotNull
                                                                                             @NotNull java.lang.String key)
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • version_static

        public static long version_static()
      • customVideoCompositor

        @Nullable
        public @Nullable AVVideoCompositing customVideoCompositor()
        [@property] customVideoCompositor Indicates the custom video compositor instance used by the receiver. This property is nil if there is no video compositor, or if the internal video compositor is in use. API-Since: 7.0
      • initWithVideoTracksVideoSettings

        public AVAssetReaderVideoCompositionOutput initWithVideoTracksVideoSettings​(@NotNull
                                                                                    @NotNull NSArray<? extends AVAssetTrack> videoTracks,
                                                                                    @Nullable
                                                                                    @Nullable NSDictionary<java.lang.String,​?> videoSettings)
        initWithVideoTracks:videoSettings: Creates an instance of AVAssetReaderVideoCompositionOutput for reading composited video from the specified video tracks and supplying media data according to the specified video settings. Each track must be one of the tracks owned by the target AVAssetReader's asset and must be of media type AVMediaTypeVideo. A value of nil for videoSettings configures the output to return samples in a convenient uncompressed format, with properties determined according to the properties of the specified video tracks. Initialization will fail if the video settings cannot be used with the specified tracks. AVAssetReaderVideoCompositionOutput can only produce uncompressed output. This means that the video settings dictionary must follow the rules for uncompressed video output, as laid out in AVVideoSettings.h. This method throws an exception for any of the following reasons: - any video track is not of media type AVMediaTypeVideo - any video track is not part of this asset reader output's AVAsset - track output settings would cause the output to yield compressed samples - video settings does not follow the rules for uncompressed video output (AVVideoSettings.h) - video settings contains any of the following keys: - AVVideoCleanApertureKey - AVVideoPixelAspectRatioKey - AVVideoScalingModeKey - AVVideoDecompressionPropertiesKey
        Parameters:
        tracks - An NSArray of AVAssetTrack objects from which the resulting AVAssetReaderVideoCompositionOutput should read video frames for compositing.
        videoSettings - An NSDictionary of video settings to be used for video output. See AVVideoSettings.h for more information about how to construct a video settings dictionary.
        Returns:
        An instance of AVAssetReaderVideoCompositionOutput.
      • setVideoComposition

        public void setVideoComposition​(@Nullable
                                        @Nullable AVVideoComposition value)
        [@property] videoComposition The composition of video used by the receiver. The value of this property is an AVVideoComposition that can be used to specify the visual arrangement of video frames read from each source track over the timeline of the source asset. This property throws an exception if a value is set after reading has started.
      • videoComposition

        @Nullable
        public @Nullable AVVideoComposition videoComposition()
        [@property] videoComposition The composition of video used by the receiver. The value of this property is an AVVideoComposition that can be used to specify the visual arrangement of video frames read from each source track over the timeline of the source asset. This property throws an exception if a value is set after reading has started.
      • videoSettings

        @Nullable
        public @Nullable NSDictionary<java.lang.String,​?> videoSettings()
        [@property] videoSettings The video settings used by the receiver. The value of this property is an NSDictionary that contains values for keys as specified by AVVideoSettings.h. A value of nil indicates that the receiver will return video frames in a convenient uncompressed format, with properties determined according to the properties of the receiver's video tracks.
      • videoTracks

        @NotNull
        public @NotNull NSArray<? extends AVAssetTrack> videoTracks()
        [@property] videoTracks The tracks from which the receiver reads composited video. The value of this property is an NSArray of AVAssetTracks owned by the target AVAssetReader's asset.
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.