summaryrefslogtreecommitdiff
path: root/tests/test5/capture.c
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2012-06-03 21:45:00 +0000
committerLudovic Pouzenc <ludovic@pouzenc.fr>2012-06-03 21:45:00 +0000
commit9c7c14513dfe3440dad9cf0b1c652dde9e4f1de7 (patch)
treef41d3c8390e7a58a753b26909a104ba0005acacd /tests/test5/capture.c
parent1068de951585f796e8468bf346efa72c9ff84da9 (diff)
download2012-violon-leds-9c7c14513dfe3440dad9cf0b1c652dde9e4f1de7.tar.gz
2012-violon-leds-9c7c14513dfe3440dad9cf0b1c652dde9e4f1de7.tar.bz2
2012-violon-leds-9c7c14513dfe3440dad9cf0b1c652dde9e4f1de7.zip
Version qui marchouille sans le pointeur de fonction (segfault incompris).
Problèmes d'offset. Le vu-mètre donne juste la valeur abs max ce qui ne correspond pas à grand chose git-svn-id: file:///var/svn/2012-violon-leds/trunk@11 6be1fa4d-33ac-4c33-becc-79fcb3794bb6
Diffstat (limited to 'tests/test5/capture.c')
-rw-r--r--tests/test5/capture.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/tests/test5/capture.c b/tests/test5/capture.c
index d003fe8..441a6ac 100644
--- a/tests/test5/capture.c
+++ b/tests/test5/capture.c
@@ -5,6 +5,8 @@
#define APP_TITLE "Test 5 lpo"
#define BUFSIZE 1024
+extern void my_process(gint sound_level, void *userdata);
+
capture_sound_level_cb_t *capture_sound_level_cb=NULL;
int capture_init(pa_mainloop **m, pa_context **c);
@@ -26,7 +28,7 @@ void audio_thread(void *args) {
capture_sound_level_cb=(capture_sound_level_cb_t *)args;
- printf("debug : args==%p capture_sound_level_cb==%p\n", args, capture_sound_level_cb);
+ //printf("debug : args==%p capture_sound_level_cb==%p\n", args, capture_sound_level_cb);
res=capture_init(&m, &c);
g_assert(res==0);
@@ -194,11 +196,14 @@ void stream_read_callback(pa_stream *s, size_t nbytes, void *userdata) {
printf("pa_stream_peek() failed\n");//: %s", pa_strerror(pa_context_errno(context)));
return;
}
- printf("level : %i\n", compute_level(p,nbytes));
+ //printf("level : %i\n", compute_level(p,nbytes));
+
+//printf("debug : before call capture_sound_level_cb==%p\n", capture_sound_level_cb);
+
+ my_process(compute_level(p,nbytes), NULL);
+// (*capture_sound_level_cb)(compute_level(p,nbytes), NULL);
-printf("debug : before call capture_sound_level_cb==%p\n", capture_sound_level_cb);
- (*capture_sound_level_cb)(compute_level(p,nbytes), NULL);
-printf("debug : after call capture_sound_level_cb==%p\n", capture_sound_level_cb);
+//printf("debug : after call capture_sound_level_cb==%p\n", capture_sound_level_cb);
pa_stream_drop(s);
}
@@ -208,6 +213,7 @@ gint compute_level(const void *data, size_t nbytes) {
gint val, level=0;
for (i=0;i<nbytes/2;i++) {
val=((int16_t *)data)[i];
+ //printf("val==%i\n", val);
if (val<0) val=-val;
if (level<val) level=val;
}