/** * @throws OSStatusException * @since Available in iOS 6.0 and later. */ protected static AudioQueueProcessingTap create(AudioQueue audioQueue, ProcessingTapCallback callback, AudioQueueProcessingTapFlags flags) throws OSStatusException { AudioQueueProcessingTap.AudioQueueProcessingTapPtr ptr = new AudioQueueProcessingTap.AudioQueueProcessingTapPtr(); IntPtr maxFramesPtr = new IntPtr(); AudioStreamBasicDescription processingFormat = new AudioStreamBasicDescription(); long cid = callbackId.getAndIncrement(); OSStatus status = create0(audioQueue, new FunctionPtr(cbProcess), cid, flags, maxFramesPtr, processingFormat, ptr); if (OSStatusException.throwIfNecessary(status)) { synchronized (callbacks) { callbacks.put(cid, callback); } AudioQueueProcessingTap result = ptr.get(); result.maxProcessingFrames = maxFramesPtr.get(); result.processingFormat = processingFormat; return result; } return null; } /**
/** * @throws OSStatusException * @since Available in iOS 6.0 and later. */ protected static AudioQueueProcessingTap create(AudioQueue audioQueue, ProcessingTapCallback callback, AudioQueueProcessingTapFlags flags) throws OSStatusException { AudioQueueProcessingTap.AudioQueueProcessingTapPtr ptr = new AudioQueueProcessingTap.AudioQueueProcessingTapPtr(); IntPtr maxFramesPtr = new IntPtr(); AudioStreamBasicDescription processingFormat = new AudioStreamBasicDescription(); long cid = callbackId.getAndIncrement(); OSStatus status = create0(audioQueue, new FunctionPtr(cbProcess), cid, flags, maxFramesPtr, processingFormat, ptr); if (OSStatusException.throwIfNecessary(status)) { synchronized (callbacks) { callbacks.put(cid, callback); } AudioQueueProcessingTap result = ptr.get(); result.maxProcessingFrames = maxFramesPtr.get(); result.processingFormat = processingFormat; return result; } return null; } /**
/** * @throws OSStatusException * @since Available in iOS 6.0 and later. */ protected static AudioQueueProcessingTap create(AudioQueue audioQueue, ProcessingTapCallback callback, AudioQueueProcessingTapFlags flags) throws OSStatusException { AudioQueueProcessingTap.AudioQueueProcessingTapPtr ptr = new AudioQueueProcessingTap.AudioQueueProcessingTapPtr(); IntPtr maxFramesPtr = new IntPtr(); AudioStreamBasicDescription processingFormat = new AudioStreamBasicDescription(); long cid = callbackId.getAndIncrement(); OSStatus status = create0(audioQueue, new FunctionPtr(cbProcess), cid, flags, maxFramesPtr, processingFormat, ptr); if (OSStatusException.throwIfNecessary(status)) { synchronized (callbacks) { callbacks.put(cid, callback); } AudioQueueProcessingTap result = ptr.get(); result.maxProcessingFrames = maxFramesPtr.get(); result.processingFormat = processingFormat; return result; } return null; } /**