iBoot/apps/EmbeddedIOP/function_audiodsp/loopback_process.h

44 lines
1.3 KiB
C
Raw Normal View History

2023-07-08 13:03:17 -07:00
/*
* Copyright (C) 2010-2011 Apple Inc. All rights reserved.
*
* This document is the property of Apple Inc.
* It is considered confidential and proprietary.
*
* This document may not be reproduced or transmitted in any form,
* in whole or in part, without the express written permission of
* Apple Inc.
*/
#ifndef _SPEAKER_PROT_H_
#define _SPEAKER_PROT_H_
#include "debug_tap.h"
#include "iop_au_interface.h"
#include <platform.h>
typedef void * loopback_process_t;
/*
* loopback process is an object that will process an input buffer in-
* place, applying the passed Audio Unit to it.
*
* debug_taps can be added at specific tap points.
*
* It is assumed that the input number of samples to process matches
* with the call to process.
*
*/
// channel bitmask is to allow cases when audio is not packed.
loopback_process_t create_loopback_process(audio_unit_t au, uint32_t frames_to_process, uint32_t channels_to_process, uint32_t sample_size, uint32_t channel_bitmask);
void destroy_loopback_process(loopback_process_t loopback);
void set_debug_tap(loopback_process_t loopback, debug_tap_t inputTap, debug_tap_t outputTap);
void set_tap_point(loopback_process_t loopback, uint32_t index);
// Assumes that input is as described when loopback created
void process_data(loopback_process_t loopback, void *processBuffer);
#endif // _SPEAKER_PROT_H_