From edf01e33d5680018a8c48224b8f7134587f3fcdf Mon Sep 17 00:00:00 2001 From: Oliver Schinagl Date: Wed, 10 Nov 2004 12:52:49 +0000 Subject: renamed audiodriver simply to audio --- Graphic_Equalizer/include/audio.hch | 80 ++++++++++++++++++++++ Graphic_Equalizer/include/audiodriver.hch | 80 ---------------------- Graphic_Equalizer/src/audio.hcc | 107 ++++++++++++++++++++++++++++++ Graphic_Equalizer/src/audiodriver.hcc | 107 ------------------------------ 4 files changed, 187 insertions(+), 187 deletions(-) create mode 100644 Graphic_Equalizer/include/audio.hch delete mode 100644 Graphic_Equalizer/include/audiodriver.hch create mode 100644 Graphic_Equalizer/src/audio.hcc delete mode 100644 Graphic_Equalizer/src/audiodriver.hcc diff --git a/Graphic_Equalizer/include/audio.hch b/Graphic_Equalizer/include/audio.hch new file mode 100644 index 0000000..0b11168 --- /dev/null +++ b/Graphic_Equalizer/include/audio.hch @@ -0,0 +1,80 @@ +/*! \file audiodriver.hch + * + * \section generic Audiodriver API + * + * \section project Project information. + * Project Graphic Equalizer\n + * \author O.M. Schinagl + * \date 20041021 + * \version 0.1 + * + * \section copyright Copyright + * Copyright ©2004 Koninklijke Philips Electronics N.V. All rights reserved + * + * \section history Change history + * 20041021: O.M. Schinagl\n Initial version + * + ********************************************************************/ + +#ifndef _AUDIODRIVER_HCH +#define _AUDIODRIVER_HCH 1 + + + +/* + * Type definition of the shared memory to be used in various processes + */ +typedef struct { +} audiodata_s; + + + +/* + * States used to indicate wether audio data is sampled. + */ +#define AUDIO_NOT_READY 0 +#define AUDIO_READY 1 + + + +/* + * Line in or Mic in aliases for audio_init. + */ +#define LINE_IN RC200AudioInLineIn +#define MIC_IN RC200AudioInMicIn + + + +/* + * Sample Rate Aliases for audio_init. + */ +#define SR_8000 RC200AudioSampleRate8000 +#define SR_11025 RC200AudioSampleRate11025 +#define SR_16000 RC200AudioSampleRate16000 +#define SR_22050 RC200AudioSampleRate22050 +#define SR_44100 RC200AudioSampleRate44100 +#define SR_48000 RC200AudioSampleRate48000 + + + +/* + * Initialize the Audio sub-system. gain_level sets the internal amplifier to + * passed level, input_source chooses between line in or mic in. The + * sample_rate is set to supplied rate. Defines for these are mentioned above. + */ +void audio_init(unsigned 4 gain_level, + unsigned 1 input_source, + unsigned 3 sample_rate); + + + +/* + * Main audiodriver loop. This procedure never returns! It handles audio io, + * updates the shared memory and notifies listeners. + */ +void audio_main(void); + +#else +#error "ERROR file audiodriver.hch multiple times included" +#endif /* --- _AUDIODRIVER_HCH --- */ + diff --git a/Graphic_Equalizer/include/audiodriver.hch b/Graphic_Equalizer/include/audiodriver.hch deleted file mode 100644 index 0b11168..0000000 --- a/Graphic_Equalizer/include/audiodriver.hch +++ /dev/null @@ -1,80 +0,0 @@ -/*! \file audiodriver.hch - * - * \section generic Audiodriver API - * - * \section project Project information. - * Project Graphic Equalizer\n - * \author O.M. Schinagl - * \date 20041021 - * \version 0.1 - * - * \section copyright Copyright - * Copyright ©2004 Koninklijke Philips Electronics N.V. All rights reserved - * - * \section history Change history - * 20041021: O.M. Schinagl\n Initial version - * - ********************************************************************/ - -#ifndef _AUDIODRIVER_HCH -#define _AUDIODRIVER_HCH 1 - - - -/* - * Type definition of the shared memory to be used in various processes - */ -typedef struct { -} audiodata_s; - - - -/* - * States used to indicate wether audio data is sampled. - */ -#define AUDIO_NOT_READY 0 -#define AUDIO_READY 1 - - - -/* - * Line in or Mic in aliases for audio_init. - */ -#define LINE_IN RC200AudioInLineIn -#define MIC_IN RC200AudioInMicIn - - - -/* - * Sample Rate Aliases for audio_init. - */ -#define SR_8000 RC200AudioSampleRate8000 -#define SR_11025 RC200AudioSampleRate11025 -#define SR_16000 RC200AudioSampleRate16000 -#define SR_22050 RC200AudioSampleRate22050 -#define SR_44100 RC200AudioSampleRate44100 -#define SR_48000 RC200AudioSampleRate48000 - - - -/* - * Initialize the Audio sub-system. gain_level sets the internal amplifier to - * passed level, input_source chooses between line in or mic in. The - * sample_rate is set to supplied rate. Defines for these are mentioned above. - */ -void audio_init(unsigned 4 gain_level, - unsigned 1 input_source, - unsigned 3 sample_rate); - - - -/* - * Main audiodriver loop. This procedure never returns! It handles audio io, - * updates the shared memory and notifies listeners. - */ -void audio_main(void); - -#else -#error "ERROR file audiodriver.hch multiple times included" -#endif /* --- _AUDIODRIVER_HCH --- */ - diff --git a/Graphic_Equalizer/src/audio.hcc b/Graphic_Equalizer/src/audio.hcc new file mode 100644 index 0000000..c7d1adf --- /dev/null +++ b/Graphic_Equalizer/src/audio.hcc @@ -0,0 +1,107 @@ +/*! \file header_templace.hcc + * + * \section generic Message build up information and more + * + * \section project Project information. + * Project Graphic Equalizer\n + * \author + * \date 20041011 + * \version 0.1 + * + * \section copyright Copyright + * Copyright ©2004 Koninklijke Philips Electronics N.V. All rights reserved + * + * \section history Change history + * 20041011: \n Initial version + * + ********************************************************************/ + +/******** System Includes *************/ +#include + +#include "pal_master.hch" + +/******** Application Includes ********/ +#include "audio.hch" +#include "audio_shared.hch" + + + +/*! \fn void audio_init(unsigned 4 gain_level, + * unsigned 1 input_source, + * unsigned 3 sample_rate) + * + * \brief Set some inital values to the audio hardware. + * + * \param unsigned 4 gain_level Set the input amplifier to this + * amplification level. + * \param unsigned 1 input_source Choose between microphone input + * or linein input + * \param unsigned 3 sample_rate Set the sample rate between 8000 + * and 48000 + * + * \return void + * \retval void + * + */ +void audio_init(unsigned 4 gain_level, + unsigned 1 input_source, + unsigned 3 sample_rate) { + /* + * We simply call the appropiate handlers and pass values along. We + * Don't set the mute on input gain. We have volume control to do this. + * Input and Output sampling rates are equal. We dont' need different + * rates. + */ + RC200AudioInSetGain(FALSE, gain_level, gain_level); + RC200AudioInSetInput(input_source); + PalAudioInSetSampleRate(AudioIn, sample_rate); + PalAudioOutSetSampleRate(AudioOut, sample_rate); +} /* --- audio_init() --- */ + + + +/*! \fn void audio_main(void); + * \brief Main audiodriver. This function never returns! It calls the + * audiohandlers and stores samples into a global array. Once 64 + * Samples are collected it raises a signal AUDIO_READY to let + * other processes know it's ready. We use quadruple buffering for + * audio input and double buffering for audio output. + * + * \param void + * + * \return Never Returns. + * \retval void + */ +void audio_main(void) { + /* + * Setup audio pointers. + */ + macro expr AudioIn = PalAudioInCT(0); + macro expr AudioOut = PalAudioOutCT(0); + + /* + * Determin the data width for the current platform. + */ + macro expr IW = PalAudioInGetMaxDataWidthCT(); + macro expr OW = PalAudioOutGetMaxDataWidthCT(); + + signed IW sample_left_in, sample_right_in; + signed OW sample_left_out, sample_right_out; + + for (;;) { + PalAudioRead(AudioIn, &sample_left_in, &sample_right_in); + +/* par { + sample_add(sample_left_in); + sample_get(&sample_left_out); + sample_right_out = sample_right_in; + } + if (rotate_samples()) { + / * + * 64 Samples have been processed, calculate. + * / + } +*/ PalAudioWrite(AudioOut, (signed OW)(sample_left_in @ 0), (signed OW)(sample_right_in @ 0)); + } +} /* --- audio_main() --- */ diff --git a/Graphic_Equalizer/src/audiodriver.hcc b/Graphic_Equalizer/src/audiodriver.hcc deleted file mode 100644 index c7d1adf..0000000 --- a/Graphic_Equalizer/src/audiodriver.hcc +++ /dev/null @@ -1,107 +0,0 @@ -/*! \file header_templace.hcc - * - * \section generic Message build up information and more - * - * \section project Project information. - * Project Graphic Equalizer\n - * \author - * \date 20041011 - * \version 0.1 - * - * \section copyright Copyright - * Copyright ©2004 Koninklijke Philips Electronics N.V. All rights reserved - * - * \section history Change history - * 20041011: \n Initial version - * - ********************************************************************/ - -/******** System Includes *************/ -#include - -#include "pal_master.hch" - -/******** Application Includes ********/ -#include "audio.hch" -#include "audio_shared.hch" - - - -/*! \fn void audio_init(unsigned 4 gain_level, - * unsigned 1 input_source, - * unsigned 3 sample_rate) - * - * \brief Set some inital values to the audio hardware. - * - * \param unsigned 4 gain_level Set the input amplifier to this - * amplification level. - * \param unsigned 1 input_source Choose between microphone input - * or linein input - * \param unsigned 3 sample_rate Set the sample rate between 8000 - * and 48000 - * - * \return void - * \retval void - * - */ -void audio_init(unsigned 4 gain_level, - unsigned 1 input_source, - unsigned 3 sample_rate) { - /* - * We simply call the appropiate handlers and pass values along. We - * Don't set the mute on input gain. We have volume control to do this. - * Input and Output sampling rates are equal. We dont' need different - * rates. - */ - RC200AudioInSetGain(FALSE, gain_level, gain_level); - RC200AudioInSetInput(input_source); - PalAudioInSetSampleRate(AudioIn, sample_rate); - PalAudioOutSetSampleRate(AudioOut, sample_rate); -} /* --- audio_init() --- */ - - - -/*! \fn void audio_main(void); - * \brief Main audiodriver. This function never returns! It calls the - * audiohandlers and stores samples into a global array. Once 64 - * Samples are collected it raises a signal AUDIO_READY to let - * other processes know it's ready. We use quadruple buffering for - * audio input and double buffering for audio output. - * - * \param void - * - * \return Never Returns. - * \retval void - */ -void audio_main(void) { - /* - * Setup audio pointers. - */ - macro expr AudioIn = PalAudioInCT(0); - macro expr AudioOut = PalAudioOutCT(0); - - /* - * Determin the data width for the current platform. - */ - macro expr IW = PalAudioInGetMaxDataWidthCT(); - macro expr OW = PalAudioOutGetMaxDataWidthCT(); - - signed IW sample_left_in, sample_right_in; - signed OW sample_left_out, sample_right_out; - - for (;;) { - PalAudioRead(AudioIn, &sample_left_in, &sample_right_in); - -/* par { - sample_add(sample_left_in); - sample_get(&sample_left_out); - sample_right_out = sample_right_in; - } - if (rotate_samples()) { - / * - * 64 Samples have been processed, calculate. - * / - } -*/ PalAudioWrite(AudioOut, (signed OW)(sample_left_in @ 0), (signed OW)(sample_right_in @ 0)); - } -} /* --- audio_main() --- */ -- cgit v0.12