diff options
Diffstat (limited to 'cras/src/server/input_data.h')
-rw-r--r-- | cras/src/server/input_data.h | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/cras/src/server/input_data.h b/cras/src/server/input_data.h deleted file mode 100644 index 7ac80be4..00000000 --- a/cras/src/server/input_data.h +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright 2018 The Chromium OS Authors. All rights reserved. - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef INPUT_DATA_H_ -#define INPUT_DATA_H_ - -#include "cras_dsp_pipeline.h" -#include "float_buffer.h" - -/* - * Structure holding the information used when a chunk of input buffer - * is accessed by multiple streams with different properties and - * processing requirements. - * Member: - * ext - Provides interface to read and process buffer in dsp pipeline. - * dev_ptr - Pointer to the associated input iodev. - * area - The audio area used for deinterleaved data copy. - * fbuffer - Floating point buffer from input device. - */ -struct input_data { - struct ext_dsp_module ext; - void *dev_ptr; - struct cras_audio_area *area; - struct float_buffer *fbuffer; -}; - -/* - * Creates an input_data instance for input iodev. - * Args: - * dev_ptr - Pointer to the associated input device. - */ -struct input_data *input_data_create(void *dev_ptr); - -/* Destroys an input_data instance. */ -void input_data_destroy(struct input_data **data); - -/* Sets how many frames in buffer has been read by all input streams. */ -void input_data_set_all_streams_read(struct input_data *data, - unsigned int nframes); - -/* - * Gets an audio area for |stream| to read data from. An input_data may be - * accessed by multiple streams while some requires processing, the - * |offsets| arguments helps track the offset value each stream has read - * into |data|. - * Args: - * data - The input data to get audio area from. - * stream - The stream that reads data. - * offsets - Structure holding the mapping from stream to the offset value - * of how many frames each stream has read into input buffer. - * area - To be filled with a pointer to an audio area struct for stream to - * read data. - * offset - To be filled with the samples offset in |area| that |stream| - * should start reading. - */ -int input_data_get_for_stream(struct input_data *data, - struct cras_rstream *stream, - struct buffer_share *offsets, - struct cras_audio_area **area, - unsigned int *offset); - -/* - * Marks |frames| of audio data as read by |stream|. - * Args: - * data - The input_data to mark frames has been read by |stream|. - * stream - The stream that has read audio data. - * offsets - Structure holding the mapping from stream to the offset value - * of how many frames each stream has read into input buffer. - * frames - Number of frames |stream| has read. - */ -int input_data_put_for_stream(struct input_data *data, - struct cras_rstream *stream, - struct buffer_share *offsets, - unsigned int frames); - -/* - * The software gain scaler of input path consist of two parts: - * (1) The device gain scaler used when lack of hardware gain control. - * Configured by the IntrinsicSensitivity label in alsa UCM config. - * (2) The gain scaler in cras_rstream set by app, for example the AGC - * module in Chrome. - * Args: - * data - The input data that holds pointer to APM instance. - * idev_sw_agin_scaler - The gain scaler configured on input iodev. - * stream - To provide stream layer software gain. - * Returns: - * 1.0 if tuned APM in use, otherwise |iodev gain| * |cras_rstream gain| - */ -float input_data_get_software_gain_scaler(struct input_data *data, - float idev_sw_gain_scaler, - struct cras_rstream *stream); - -#endif /* INPUT_DATA_H_ */ |