summaryrefslogtreecommitdiff
path: root/tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp
diff options
context:
space:
mode:
authorJun Wako <wakojun@gmail.com>2015-04-24 16:26:14 +0900
committerJun Wako <wakojun@gmail.com>2015-04-24 16:26:14 +0900
commit1fe4406f374291ab2e86e95a97341fd9c475fcb8 (patch)
tree1be0e16b4b07b5a31ea97ec50a9eb13a288c3d27 /tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp
parenta20ef7052c6e937d2f7672dd59456e55a5c08296 (diff)
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
b9e0ea0 Merge commit '7fa9d8bdea3773d1195b04d98fcf27cf48ddd81d' as 'tool/mbed/mbed-sdk' 7fa9d8b Squashed 'tool/mbed/mbed-sdk/' content from commit 7c21ce5 git-subtree-dir: tmk_core git-subtree-split: b9e0ea08cb940de20b3610ecdda18e9d8cd7c552
Diffstat (limited to 'tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp')
-rw-r--r--tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp b/tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp
new file mode 100644
index 0000000000..e18891032a
--- /dev/null
+++ b/tool/mbed/mbed-sdk/libraries/tests/usb/device/audio/main.cpp
@@ -0,0 +1,40 @@
+// Playback example with the USBAUDIO library
+
+#include "mbed.h"
+#include "USBAudio.h"
+
+// frequency: 48 kHz
+#define FREQ_SPK 48000
+#define FREQ_MIC 48000
+
+// 2channels: stereo
+#define NB_CHA_SPK 2
+#define NB_CHA_MIC 2
+
+// length computed: each ms, we receive 48 * 16bits ->48 * 2 bytes. as there are two channels, the length will be 48 * 2 * 2
+#define LENGTH_AUDIO_PACKET_SPK (FREQ_SPK / 500) * NB_CHA_SPK
+#define LENGTH_AUDIO_PACKET_MIC (FREQ_MIC / 500) * NB_CHA_MIC
+
+// USBAudio object
+USBAudio audio(FREQ_SPK, NB_CHA_SPK, FREQ_MIC, NB_CHA_MIC, 0xab45, 0x0378);
+
+int main() {
+ // buffer of int
+ int buf_in[LENGTH_AUDIO_PACKET_SPK/sizeof(int)];
+ int buf_out[LENGTH_AUDIO_PACKET_MIC/sizeof(int)];
+ int * stream_out = buf_in;
+ int * stream_in = buf_out;
+ int * tmp = NULL;
+
+ while (1) {
+ // read and write one audio packet each frame
+ audio.readWrite((uint8_t *)stream_in, (uint8_t *)stream_out);
+
+ // swap the buffers
+ tmp = stream_in;
+ stream_in = stream_out;
+ stream_out = tmp;
+ }
+}
+
+