Class AVAudioPCMBuffer

  • All Implemented Interfaces:
    NSCopying, NSMutableCopying, NSObject

    public class AVAudioPCMBuffer
    extends AVAudioBuffer
    AVAudioPCMBuffer A subclass of AVAudioBuffer for use with PCM audio formats. AVAudioPCMBuffer provides a number of methods useful for manipulating buffers of audio in PCM format. API-Since: 8.0
    • Constructor Detail

      • AVAudioPCMBuffer

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

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static AVAudioPCMBuffer allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • 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()
      • floatChannelData

        @Nullable
        public @Nullable org.moe.natj.general.ptr.ConstPtr<org.moe.natj.general.ptr.FloatPtr> floatChannelData()
        [@property] floatChannelData Access the buffer's float audio samples. floatChannelData returns pointers to the buffer's audio samples if the buffer's format is 32-bit float, or nil if it is another format. The returned pointer is to format.channelCount pointers to float. Each of these pointers is to "frameLength" valid samples, which are spaced by "stride" samples. If format.interleaved is false (as with the standard deinterleaved float format), then the pointers will be to separate chunks of memory. "stride" is 1. If format.interleaved is true, then the pointers will refer into the same chunk of interleaved samples, each offset by 1 frame. "stride" is the number of interleaved channels.
      • frameCapacity

        public int frameCapacity()
        [@property] frameCapacity The buffer's capacity, in audio sample frames.
      • frameLength

        public int frameLength()
        [@property] frameLength The current number of valid sample frames in the buffer. You may modify the length of the buffer as part of an operation that modifies its contents. The length must be less than or equal to the frameCapacity. Modifying frameLength will update the mDataByteSize in each of the underlying AudioBufferList's AudioBuffer's correspondingly, and vice versa. Note that in the case of deinterleaved formats, mDataByteSize will refers the size of one channel's worth of audio samples.
      • hash_static

        public static long hash_static()
      • initWithPCMFormatBufferListNoCopyDeallocator

        public AVAudioPCMBuffer initWithPCMFormatBufferListNoCopyDeallocator​(@NotNull
                                                                             @NotNull AVAudioFormat format,
                                                                             @NotNull
                                                                             @NotNull AudioBufferList bufferList,
                                                                             @Nullable
                                                                             @Nullable AVAudioPCMBuffer.Block_initWithPCMFormatBufferListNoCopyDeallocator deallocator)
        initWithPCMFormat:bufferListNoCopy:deallocator: Initialize a buffer that is to contain PCM audio samples with a given AudioBufferList without copying samples and a custom deallocator block. An exception is raised if the format is not PCM. Returns nil in the following cases: - if the format has zero bytes per frame (format.streamDescription->mBytesPerFrame == 0) - if supplied buffer has zero number of buffers - if each buffer's data byte size are not equal or if any of the buffers' data byte size is zero - if there is a mismatch between the format's number of buffers and the AudioBufferList's size (1 if interleaved, mChannelsPerFrame if deinterleaved) - if the AudioBufferList's pointer to the buffer of audio data is null. Use the deallocator block to define your own deallocation behavior for the provided AudioBufferList's underlying memory. The AudioBufferList passed to the deallocator is identical to the one which was passed to the initializer, in terms of the buffer count, and each buffer's mData and mDataByteSize members. API-Since: 15.0
        Parameters:
        format - The format of the PCM audio to be contained in the buffer.
        bufferList - The buffer list with allocated memory to contain the PCM audio data.
        deallocator - A block to invoke when the resulting AVAudioPCMBuffer object is deallocated.
      • initWithPCMFormatFrameCapacity

        public AVAudioPCMBuffer initWithPCMFormatFrameCapacity​(@NotNull
                                                               @NotNull AVAudioFormat format,
                                                               int frameCapacity)
        initWithPCMFormat:frameCapacity: Initialize a buffer that is to contain PCM audio samples. An exception is raised if the format is not PCM. Returns nil in the following cases: - if the format has zero bytes per frame (format.streamDescription->mBytesPerFrame == 0) - if the buffer byte capacity (frameCapacity * format.streamDescription->mBytesPerFrame) cannot be represented by an uint32_t
        Parameters:
        format - The format of the PCM audio to be contained in the buffer.
        frameCapacity - The capacity of the buffer in PCM sample frames.
      • instanceMethodSignatureForSelector

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

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

        @Nullable
        public @Nullable org.moe.natj.general.ptr.ConstPtr<org.moe.natj.general.ptr.ShortPtr> int16ChannelData()
        [@property] int16ChannelData Access the buffer's int16_t audio samples. int16ChannelData returns the buffer's audio samples if the buffer's format has 2-byte integer samples, or nil if it is another format. See the discussion of floatChannelData.
      • int32ChannelData

        @Nullable
        public @Nullable org.moe.natj.general.ptr.ConstPtr<org.moe.natj.general.ptr.IntPtr> int32ChannelData()
        [@property] int32ChannelData Access the buffer's int32_t audio samples. int32ChannelData returns the buffer's audio samples if the buffer's format has 4-byte integer samples, or nil if it is another format. See the discussion of floatChannelData.
      • 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)
      • setFrameLength

        public void setFrameLength​(int value)
        [@property] frameLength The current number of valid sample frames in the buffer. You may modify the length of the buffer as part of an operation that modifies its contents. The length must be less than or equal to the frameCapacity. Modifying frameLength will update the mDataByteSize in each of the underlying AudioBufferList's AudioBuffer's correspondingly, and vice versa. Note that in the case of deinterleaved formats, mDataByteSize will refers the size of one channel's worth of audio samples.
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • stride

        public long stride()
        [@property] stride The buffer's number of interleaved channels. Useful in conjunction with floatChannelData etc.
      • superclass_static

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

        public static long version_static()
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.