OSDN Git Service

I2Cのデバッグマクロを削除
[uzume/uzume_bfin.git] / uzume_prototype / codec_callback.c
1 /**
2  * @file codec_callback.c
3  * @brief オーディオ信号処理を行うユーザー・コールバック
4  * 
5  */
6 #include "t_services.h"
7 #include "kernel_id.h"
8 #include "codec_ad1836a.h"
9 /**
10  * @brief 信号処理初期化関数
11  * @param count @ref codec_callback()に渡される引数配列のサイズ
12  * @ingroup AUDIO
13  * 
14  * この関数は@ref codec_callback()に先立って一度だけ呼び出される。フィルタの構築や
15  * 変数の初期化に使う。count引数の値は@ref codec_callback()のcount引数と同じである。
16  */
17 void codec_callback_init( int count )
18 {
19
20 }
21 /**
22  * @brief 信号処理関数
23  * @param in0_left 左チャンネル0入力配列
24  * @param in0_right 右チャンネル0入力配列
25  * @param out0_left 左チャンネル0出力配列
26  * @param out0_right 右チャンネル0出力配列
27  * @param count 受け渡しするサンプル数
28  * @ingroup AUDIO
29  * 
30  * ユーザーが信号処理を行う関数。オーディオ信号に同期して呼び出される。それぞれの引数は
31  * 引数countがあらわす個数だけデータを持っている。データは24bit符号付整数。32bit変数に
32  * 左詰で渡される。
33  * 
34  * この関数はステレオ信号を2系統あつかえる。すなわち、系統0と系統1がそれぞれ左右チャンネルを持つ。
35  * 
36  * この関数が使う資源で、あらかじめ初期化が必要なものは、@ref codec_callback_init()の
37  * 中で初期化しておく。
38  */
39 void codec_callback( 
40                         int in0_left[], 
41                         int in0_right[], 
42                         int out0_left[], 
43                         int out0_right[], 
44                         int count)
45 {
46                 // ループ変数
47         int sample;
48         
49                 // count個のサンプルすべてを処理する
50         for ( sample = 0; sample < count; sample++ ){
51                 out0_left[sample]  = in0_left[sample];
52                 out0_right[sample] = in0_right[sample];
53         }
54 }
55