diff options
Diffstat (limited to 'testing/av_test.c')
-rw-r--r-- | testing/av_test.c | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/testing/av_test.c b/testing/av_test.c index 35eb3f60..5dc2643c 100644 --- a/testing/av_test.c +++ b/testing/av_test.c | |||
@@ -84,15 +84,15 @@ struct toxav_thread_data { | |||
84 | int32_t sig; | 84 | int32_t sig; |
85 | }; | 85 | }; |
86 | 86 | ||
87 | const char *vdout = "AV Test"; /* Video output */ | 87 | static const char *vdout = "AV Test"; /* Video output */ |
88 | PaStream *adout = NULL; /* Audio output */ | 88 | static PaStream *adout = NULL; /* Audio output */ |
89 | 89 | ||
90 | typedef struct { | 90 | typedef struct { |
91 | uint16_t size; | 91 | uint16_t size; |
92 | int16_t data[]; | 92 | int16_t data[]; |
93 | } frame; | 93 | } frame; |
94 | 94 | ||
95 | void *pa_write_thread (void *d) | 95 | static void *pa_write_thread (void *d) |
96 | { | 96 | { |
97 | /* The purpose of this thread is to make sure Pa_WriteStream will not block | 97 | /* The purpose of this thread is to make sure Pa_WriteStream will not block |
98 | * toxav_iterate thread | 98 | * toxav_iterate thread |
@@ -119,21 +119,21 @@ void *pa_write_thread (void *d) | |||
119 | /** | 119 | /** |
120 | * Callbacks | 120 | * Callbacks |
121 | */ | 121 | */ |
122 | void t_toxav_call_cb(ToxAV *av, uint32_t friend_number, bool audio_enabled, bool video_enabled, void *user_data) | 122 | static void t_toxav_call_cb(ToxAV *av, uint32_t friend_number, bool audio_enabled, bool video_enabled, void *user_data) |
123 | { | 123 | { |
124 | printf("Handling CALL callback\n"); | 124 | printf("Handling CALL callback\n"); |
125 | ((CallControl *)user_data)->incoming = true; | 125 | ((CallControl *)user_data)->incoming = true; |
126 | } | 126 | } |
127 | void t_toxav_call_state_cb(ToxAV *av, uint32_t friend_number, uint32_t state, void *user_data) | 127 | static void t_toxav_call_state_cb(ToxAV *av, uint32_t friend_number, uint32_t state, void *user_data) |
128 | { | 128 | { |
129 | printf("Handling CALL STATE callback: %d\n", state); | 129 | printf("Handling CALL STATE callback: %d\n", state); |
130 | ((CallControl *)user_data)->state = state; | 130 | ((CallControl *)user_data)->state = state; |
131 | } | 131 | } |
132 | void t_toxav_receive_video_frame_cb(ToxAV *av, uint32_t friend_number, | 132 | static void t_toxav_receive_video_frame_cb(ToxAV *av, uint32_t friend_number, |
133 | uint16_t width, uint16_t height, | 133 | uint16_t width, uint16_t height, |
134 | uint8_t const *y, uint8_t const *u, uint8_t const *v, | 134 | uint8_t const *y, uint8_t const *u, uint8_t const *v, |
135 | int32_t ystride, int32_t ustride, int32_t vstride, | 135 | int32_t ystride, int32_t ustride, int32_t vstride, |
136 | void *user_data) | 136 | void *user_data) |
137 | { | 137 | { |
138 | ystride = abs(ystride); | 138 | ystride = abs(ystride); |
139 | ustride = abs(ustride); | 139 | ustride = abs(ustride); |
@@ -166,12 +166,12 @@ void t_toxav_receive_video_frame_cb(ToxAV *av, uint32_t friend_number, | |||
166 | cvShowImage(vdout, img); | 166 | cvShowImage(vdout, img); |
167 | free(img_data); | 167 | free(img_data); |
168 | } | 168 | } |
169 | void t_toxav_receive_audio_frame_cb(ToxAV *av, uint32_t friend_number, | 169 | static void t_toxav_receive_audio_frame_cb(ToxAV *av, uint32_t friend_number, |
170 | int16_t const *pcm, | 170 | int16_t const *pcm, |
171 | size_t sample_count, | 171 | size_t sample_count, |
172 | uint8_t channels, | 172 | uint8_t channels, |
173 | uint32_t sampling_rate, | 173 | uint32_t sampling_rate, |
174 | void *user_data) | 174 | void *user_data) |
175 | { | 175 | { |
176 | CallControl *cc = user_data; | 176 | CallControl *cc = user_data; |
177 | frame *f = malloc(sizeof(uint16_t) + sample_count * sizeof(int16_t) * channels); | 177 | frame *f = malloc(sizeof(uint16_t) + sample_count * sizeof(int16_t) * channels); |
@@ -182,13 +182,14 @@ void t_toxav_receive_audio_frame_cb(ToxAV *av, uint32_t friend_number, | |||
182 | free(rb_write(cc->arb, f)); | 182 | free(rb_write(cc->arb, f)); |
183 | pthread_mutex_unlock(cc->arb_mutex); | 183 | pthread_mutex_unlock(cc->arb_mutex); |
184 | } | 184 | } |
185 | void t_toxav_bit_rate_status_cb(ToxAV *av, uint32_t friend_number, | 185 | static void t_toxav_bit_rate_status_cb(ToxAV *av, uint32_t friend_number, |
186 | uint32_t audio_bit_rate, uint32_t video_bit_rate, | 186 | uint32_t audio_bit_rate, uint32_t video_bit_rate, |
187 | void *user_data) | 187 | void *user_data) |
188 | { | 188 | { |
189 | printf ("Suggested bit rates: audio: %d video: %d\n", audio_bit_rate, video_bit_rate); | 189 | printf ("Suggested bit rates: audio: %d video: %d\n", audio_bit_rate, video_bit_rate); |
190 | } | 190 | } |
191 | void t_accept_friend_request_cb(Tox *m, const uint8_t *public_key, const uint8_t *data, size_t length, void *userdata) | 191 | static void t_accept_friend_request_cb(Tox *m, const uint8_t *public_key, const uint8_t *data, size_t length, |
192 | void *userdata) | ||
192 | { | 193 | { |
193 | if (length == 7 && memcmp("gentoo", data, 7) == 0) { | 194 | if (length == 7 && memcmp("gentoo", data, 7) == 0) { |
194 | assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0); | 195 | assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0); |
@@ -197,7 +198,7 @@ void t_accept_friend_request_cb(Tox *m, const uint8_t *public_key, const uint8_t | |||
197 | 198 | ||
198 | /** | 199 | /** |
199 | */ | 200 | */ |
200 | void initialize_tox(Tox **bootstrap, ToxAV **AliceAV, CallControl *AliceCC, ToxAV **BobAV, CallControl *BobCC) | 201 | static void initialize_tox(Tox **bootstrap, ToxAV **AliceAV, CallControl *AliceCC, ToxAV **BobAV, CallControl *BobCC) |
201 | { | 202 | { |
202 | Tox *Alice; | 203 | Tox *Alice; |
203 | Tox *Bob; | 204 | Tox *Bob; |
@@ -235,7 +236,7 @@ void initialize_tox(Tox **bootstrap, ToxAV **AliceAV, CallControl *AliceCC, ToxA | |||
235 | tox_self_get_address(Alice, address); | 236 | tox_self_get_address(Alice, address); |
236 | 237 | ||
237 | 238 | ||
238 | assert(tox_friend_add(Bob, address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); | 239 | assert(tox_friend_add(Bob, address, (const uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); |
239 | 240 | ||
240 | uint8_t off = 1; | 241 | uint8_t off = 1; |
241 | 242 | ||
@@ -286,7 +287,7 @@ void initialize_tox(Tox **bootstrap, ToxAV **AliceAV, CallControl *AliceCC, ToxA | |||
286 | printf("Created 2 instances of ToxAV\n"); | 287 | printf("Created 2 instances of ToxAV\n"); |
287 | printf("All set after %llu seconds!\n", time(NULL) - cur_time); | 288 | printf("All set after %llu seconds!\n", time(NULL) - cur_time); |
288 | } | 289 | } |
289 | int iterate_tox(Tox *bootstrap, ToxAV *AliceAV, ToxAV *BobAV, void *userdata) | 290 | static int iterate_tox(Tox *bootstrap, ToxAV *AliceAV, ToxAV *BobAV, void *userdata) |
290 | { | 291 | { |
291 | tox_iterate(bootstrap, userdata); | 292 | tox_iterate(bootstrap, userdata); |
292 | tox_iterate(toxav_get_tox(AliceAV), userdata); | 293 | tox_iterate(toxav_get_tox(AliceAV), userdata); |
@@ -294,7 +295,7 @@ int iterate_tox(Tox *bootstrap, ToxAV *AliceAV, ToxAV *BobAV, void *userdata) | |||
294 | 295 | ||
295 | return MIN(tox_iteration_interval(toxav_get_tox(AliceAV)), tox_iteration_interval(toxav_get_tox(BobAV))); | 296 | return MIN(tox_iteration_interval(toxav_get_tox(AliceAV)), tox_iteration_interval(toxav_get_tox(BobAV))); |
296 | } | 297 | } |
297 | void *iterate_toxav (void *data) | 298 | static void *iterate_toxav (void *data) |
298 | { | 299 | { |
299 | struct toxav_thread_data *data_cast = data; | 300 | struct toxav_thread_data *data_cast = data; |
300 | #if defined TEST_TRANSFER_V && TEST_TRANSFER_V == 1 | 301 | #if defined TEST_TRANSFER_V && TEST_TRANSFER_V == 1 |
@@ -330,7 +331,7 @@ void *iterate_toxav (void *data) | |||
330 | pthread_exit(NULL); | 331 | pthread_exit(NULL); |
331 | } | 332 | } |
332 | 333 | ||
333 | int send_opencv_img(ToxAV *av, uint32_t friend_number, const IplImage *img) | 334 | static int send_opencv_img(ToxAV *av, uint32_t friend_number, const IplImage *img) |
334 | { | 335 | { |
335 | int32_t strides[3] = { 1280, 640, 640 }; | 336 | int32_t strides[3] = { 1280, 640, 640 }; |
336 | uint8_t *planes[3] = { | 337 | uint8_t *planes[3] = { |
@@ -368,7 +369,7 @@ int send_opencv_img(ToxAV *av, uint32_t friend_number, const IplImage *img) | |||
368 | free(planes[2]); | 369 | free(planes[2]); |
369 | return rc; | 370 | return rc; |
370 | } | 371 | } |
371 | int print_audio_devices() | 372 | static int print_audio_devices(void) |
372 | { | 373 | { |
373 | int i = 0; | 374 | int i = 0; |
374 | 375 | ||
@@ -382,7 +383,7 @@ int print_audio_devices() | |||
382 | 383 | ||
383 | return 0; | 384 | return 0; |
384 | } | 385 | } |
385 | int print_help (const char *name) | 386 | static int print_help (const char *name) |
386 | { | 387 | { |
387 | printf("Usage: %s -[a:v:o:dh]\n" | 388 | printf("Usage: %s -[a:v:o:dh]\n" |
388 | "-a <path> audio input file\n" | 389 | "-a <path> audio input file\n" |