diff options
Diffstat (limited to 'toxav/toxav.c')
-rw-r--r-- | toxav/toxav.c | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/toxav/toxav.c b/toxav/toxav.c index 881ade1f..8624a6b1 100644 --- a/toxav/toxav.c +++ b/toxav/toxav.c | |||
@@ -142,7 +142,6 @@ bool toxav_version_is_compatible(uint32_t major, uint32_t minor, uint32_t patch) | |||
142 | 142 | ||
143 | return 1; | 143 | return 1; |
144 | } | 144 | } |
145 | |||
146 | ToxAV* toxav_new(Tox* tox, TOXAV_ERR_NEW* error) | 145 | ToxAV* toxav_new(Tox* tox, TOXAV_ERR_NEW* error) |
147 | { | 146 | { |
148 | TOXAV_ERR_NEW rc = TOXAV_ERR_NEW_OK; | 147 | TOXAV_ERR_NEW rc = TOXAV_ERR_NEW_OK; |
@@ -202,7 +201,6 @@ END: | |||
202 | 201 | ||
203 | return av; | 202 | return av; |
204 | } | 203 | } |
205 | |||
206 | void toxav_kill(ToxAV* av) | 204 | void toxav_kill(ToxAV* av) |
207 | { | 205 | { |
208 | if (av == NULL) | 206 | if (av == NULL) |
@@ -224,18 +222,15 @@ void toxav_kill(ToxAV* av) | |||
224 | pthread_mutex_destroy(av->mutex); | 222 | pthread_mutex_destroy(av->mutex); |
225 | free(av); | 223 | free(av); |
226 | } | 224 | } |
227 | |||
228 | Tox* toxav_get_tox(const ToxAV* av) | 225 | Tox* toxav_get_tox(const ToxAV* av) |
229 | { | 226 | { |
230 | return (Tox*) av->m; | 227 | return (Tox*) av->m; |
231 | } | 228 | } |
232 | |||
233 | uint32_t toxav_iteration_interval(const ToxAV* av) | 229 | uint32_t toxav_iteration_interval(const ToxAV* av) |
234 | { | 230 | { |
235 | /* If no call is active interval is 200 */ | 231 | /* If no call is active interval is 200 */ |
236 | return av->calls ? av->interval : 200; | 232 | return av->calls ? av->interval : 200; |
237 | } | 233 | } |
238 | |||
239 | void toxav_iterate(ToxAV* av) | 234 | void toxav_iterate(ToxAV* av) |
240 | { | 235 | { |
241 | pthread_mutex_lock(av->mutex); | 236 | pthread_mutex_lock(av->mutex); |
@@ -336,7 +331,6 @@ void toxav_iterate(ToxAV* av) | |||
336 | av->dmsst = 0; | 331 | av->dmsst = 0; |
337 | } | 332 | } |
338 | } | 333 | } |
339 | |||
340 | bool toxav_call(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, uint32_t video_bit_rate, TOXAV_ERR_CALL* error) | 334 | bool toxav_call(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, uint32_t video_bit_rate, TOXAV_ERR_CALL* error) |
341 | { | 335 | { |
342 | if ((audio_bit_rate && audio_bit_rate_invalid(audio_bit_rate)) | 336 | if ((audio_bit_rate && audio_bit_rate_invalid(audio_bit_rate)) |
@@ -375,7 +369,6 @@ bool toxav_call(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, uint | |||
375 | 369 | ||
376 | return true; | 370 | return true; |
377 | } | 371 | } |
378 | |||
379 | void toxav_callback_call(ToxAV* av, toxav_call_cb* function, void* user_data) | 372 | void toxav_callback_call(ToxAV* av, toxav_call_cb* function, void* user_data) |
380 | { | 373 | { |
381 | pthread_mutex_lock(av->mutex); | 374 | pthread_mutex_lock(av->mutex); |
@@ -383,7 +376,6 @@ void toxav_callback_call(ToxAV* av, toxav_call_cb* function, void* user_data) | |||
383 | av->ccb.second = user_data; | 376 | av->ccb.second = user_data; |
384 | pthread_mutex_unlock(av->mutex); | 377 | pthread_mutex_unlock(av->mutex); |
385 | } | 378 | } |
386 | |||
387 | bool toxav_answer(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, uint32_t video_bit_rate, TOXAV_ERR_ANSWER* error) | 379 | bool toxav_answer(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, uint32_t video_bit_rate, TOXAV_ERR_ANSWER* error) |
388 | { | 380 | { |
389 | pthread_mutex_lock(av->mutex); | 381 | pthread_mutex_lock(av->mutex); |
@@ -432,7 +424,6 @@ END: | |||
432 | 424 | ||
433 | return rc == TOXAV_ERR_ANSWER_OK; | 425 | return rc == TOXAV_ERR_ANSWER_OK; |
434 | } | 426 | } |
435 | |||
436 | void toxav_callback_call_state(ToxAV* av, toxav_call_state_cb* function, void* user_data) | 427 | void toxav_callback_call_state(ToxAV* av, toxav_call_state_cb* function, void* user_data) |
437 | { | 428 | { |
438 | pthread_mutex_lock(av->mutex); | 429 | pthread_mutex_lock(av->mutex); |
@@ -440,7 +431,6 @@ void toxav_callback_call_state(ToxAV* av, toxav_call_state_cb* function, void* u | |||
440 | av->scb.second = user_data; | 431 | av->scb.second = user_data; |
441 | pthread_mutex_unlock(av->mutex); | 432 | pthread_mutex_unlock(av->mutex); |
442 | } | 433 | } |
443 | |||
444 | bool toxav_call_control(ToxAV* av, uint32_t friend_number, TOXAV_CALL_CONTROL control, TOXAV_ERR_CALL_CONTROL* error) | 434 | bool toxav_call_control(ToxAV* av, uint32_t friend_number, TOXAV_CALL_CONTROL control, TOXAV_ERR_CALL_CONTROL* error) |
445 | { | 435 | { |
446 | pthread_mutex_lock(av->mutex); | 436 | pthread_mutex_lock(av->mutex); |
@@ -585,7 +575,6 @@ END: | |||
585 | 575 | ||
586 | return rc == TOXAV_ERR_CALL_CONTROL_OK; | 576 | return rc == TOXAV_ERR_CALL_CONTROL_OK; |
587 | } | 577 | } |
588 | |||
589 | void toxav_callback_audio_bit_rate_status(ToxAV* av, toxav_audio_bit_rate_status_cb* function, void* user_data) | 578 | void toxav_callback_audio_bit_rate_status(ToxAV* av, toxav_audio_bit_rate_status_cb* function, void* user_data) |
590 | { | 579 | { |
591 | pthread_mutex_lock(av->mutex); | 580 | pthread_mutex_lock(av->mutex); |
@@ -593,7 +582,6 @@ void toxav_callback_audio_bit_rate_status(ToxAV* av, toxav_audio_bit_rate_status | |||
593 | av->abcb.second = user_data; | 582 | av->abcb.second = user_data; |
594 | pthread_mutex_unlock(av->mutex); | 583 | pthread_mutex_unlock(av->mutex); |
595 | } | 584 | } |
596 | |||
597 | bool toxav_audio_bit_rate_set(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, bool force, TOXAV_ERR_SET_BIT_RATE* error) | 585 | bool toxav_audio_bit_rate_set(ToxAV* av, uint32_t friend_number, uint32_t audio_bit_rate, bool force, TOXAV_ERR_SET_BIT_RATE* error) |
598 | { | 586 | { |
599 | LOGGER_DEBUG("Setting new audio bitrate to: %d", audio_bit_rate); | 587 | LOGGER_DEBUG("Setting new audio bitrate to: %d", audio_bit_rate); |
@@ -668,7 +656,6 @@ END: | |||
668 | 656 | ||
669 | return rc == TOXAV_ERR_SET_BIT_RATE_OK; | 657 | return rc == TOXAV_ERR_SET_BIT_RATE_OK; |
670 | } | 658 | } |
671 | |||
672 | void toxav_callback_video_bit_rate_status(ToxAV* av, toxav_video_bit_rate_status_cb* function, void* user_data) | 659 | void toxav_callback_video_bit_rate_status(ToxAV* av, toxav_video_bit_rate_status_cb* function, void* user_data) |
673 | { | 660 | { |
674 | pthread_mutex_lock(av->mutex); | 661 | pthread_mutex_lock(av->mutex); |
@@ -676,7 +663,6 @@ void toxav_callback_video_bit_rate_status(ToxAV* av, toxav_video_bit_rate_status | |||
676 | av->vbcb.second = user_data; | 663 | av->vbcb.second = user_data; |
677 | pthread_mutex_unlock(av->mutex); | 664 | pthread_mutex_unlock(av->mutex); |
678 | } | 665 | } |
679 | |||
680 | bool toxav_video_bit_rate_set(ToxAV* av, uint32_t friend_number, uint32_t video_bit_rate, bool force, TOXAV_ERR_SET_BIT_RATE* error) | 666 | bool toxav_video_bit_rate_set(ToxAV* av, uint32_t friend_number, uint32_t video_bit_rate, bool force, TOXAV_ERR_SET_BIT_RATE* error) |
681 | { | 667 | { |
682 | LOGGER_DEBUG("Setting new video bitrate to: %d", video_bit_rate); | 668 | LOGGER_DEBUG("Setting new video bitrate to: %d", video_bit_rate); |
@@ -751,7 +737,6 @@ END: | |||
751 | 737 | ||
752 | return rc == TOXAV_ERR_SET_BIT_RATE_OK; | 738 | return rc == TOXAV_ERR_SET_BIT_RATE_OK; |
753 | } | 739 | } |
754 | |||
755 | bool toxav_audio_send_frame(ToxAV* av, uint32_t friend_number, const int16_t* pcm, size_t sample_count, uint8_t channels, uint32_t sampling_rate, TOXAV_ERR_SEND_FRAME* error) | 740 | bool toxav_audio_send_frame(ToxAV* av, uint32_t friend_number, const int16_t* pcm, size_t sample_count, uint8_t channels, uint32_t sampling_rate, TOXAV_ERR_SEND_FRAME* error) |
756 | { | 741 | { |
757 | TOXAV_ERR_SEND_FRAME rc = TOXAV_ERR_SEND_FRAME_OK; | 742 | TOXAV_ERR_SEND_FRAME rc = TOXAV_ERR_SEND_FRAME_OK; |
@@ -861,7 +846,6 @@ END: | |||
861 | 846 | ||
862 | return rc == TOXAV_ERR_SEND_FRAME_OK; | 847 | return rc == TOXAV_ERR_SEND_FRAME_OK; |
863 | } | 848 | } |
864 | |||
865 | bool toxav_video_send_frame(ToxAV* av, uint32_t friend_number, uint16_t width, uint16_t height, const uint8_t* y, const uint8_t* u, const uint8_t* v, TOXAV_ERR_SEND_FRAME* error) | 849 | bool toxav_video_send_frame(ToxAV* av, uint32_t friend_number, uint16_t width, uint16_t height, const uint8_t* y, const uint8_t* u, const uint8_t* v, TOXAV_ERR_SEND_FRAME* error) |
866 | { | 850 | { |
867 | TOXAV_ERR_SEND_FRAME rc = TOXAV_ERR_SEND_FRAME_OK; | 851 | TOXAV_ERR_SEND_FRAME rc = TOXAV_ERR_SEND_FRAME_OK; |
@@ -1034,7 +1018,6 @@ END: | |||
1034 | 1018 | ||
1035 | return rc == TOXAV_ERR_SEND_FRAME_OK; | 1019 | return rc == TOXAV_ERR_SEND_FRAME_OK; |
1036 | } | 1020 | } |
1037 | |||
1038 | void toxav_callback_audio_receive_frame(ToxAV* av, toxav_audio_receive_frame_cb* function, void* user_data) | 1021 | void toxav_callback_audio_receive_frame(ToxAV* av, toxav_audio_receive_frame_cb* function, void* user_data) |
1039 | { | 1022 | { |
1040 | pthread_mutex_lock(av->mutex); | 1023 | pthread_mutex_lock(av->mutex); |
@@ -1042,7 +1025,6 @@ void toxav_callback_audio_receive_frame(ToxAV* av, toxav_audio_receive_frame_cb* | |||
1042 | av->acb.second = user_data; | 1025 | av->acb.second = user_data; |
1043 | pthread_mutex_unlock(av->mutex); | 1026 | pthread_mutex_unlock(av->mutex); |
1044 | } | 1027 | } |
1045 | |||
1046 | void toxav_callback_video_receive_frame(ToxAV* av, toxav_video_receive_frame_cb* function, void* user_data) | 1028 | void toxav_callback_video_receive_frame(ToxAV* av, toxav_video_receive_frame_cb* function, void* user_data) |
1047 | { | 1029 | { |
1048 | pthread_mutex_lock(av->mutex); | 1030 | pthread_mutex_lock(av->mutex); |
@@ -1084,7 +1066,6 @@ int callback_invite(void* toxav_inst, MSICall* call) | |||
1084 | pthread_mutex_unlock(toxav->mutex); | 1066 | pthread_mutex_unlock(toxav->mutex); |
1085 | return 0; | 1067 | return 0; |
1086 | } | 1068 | } |
1087 | |||
1088 | int callback_start(void* toxav_inst, MSICall* call) | 1069 | int callback_start(void* toxav_inst, MSICall* call) |
1089 | { | 1070 | { |
1090 | ToxAV* toxav = toxav_inst; | 1071 | ToxAV* toxav = toxav_inst; |
@@ -1113,7 +1094,6 @@ int callback_start(void* toxav_inst, MSICall* call) | |||
1113 | pthread_mutex_unlock(toxav->mutex); | 1094 | pthread_mutex_unlock(toxav->mutex); |
1114 | return 0; | 1095 | return 0; |
1115 | } | 1096 | } |
1116 | |||
1117 | int callback_end(void* toxav_inst, MSICall* call) | 1097 | int callback_end(void* toxav_inst, MSICall* call) |
1118 | { | 1098 | { |
1119 | ToxAV* toxav = toxav_inst; | 1099 | ToxAV* toxav = toxav_inst; |
@@ -1129,7 +1109,6 @@ int callback_end(void* toxav_inst, MSICall* call) | |||
1129 | pthread_mutex_unlock(toxav->mutex); | 1109 | pthread_mutex_unlock(toxav->mutex); |
1130 | return 0; | 1110 | return 0; |
1131 | } | 1111 | } |
1132 | |||
1133 | int callback_error(void* toxav_inst, MSICall* call) | 1112 | int callback_error(void* toxav_inst, MSICall* call) |
1134 | { | 1113 | { |
1135 | ToxAV* toxav = toxav_inst; | 1114 | ToxAV* toxav = toxav_inst; |
@@ -1145,7 +1124,6 @@ int callback_error(void* toxav_inst, MSICall* call) | |||
1145 | pthread_mutex_unlock(toxav->mutex); | 1124 | pthread_mutex_unlock(toxav->mutex); |
1146 | return 0; | 1125 | return 0; |
1147 | } | 1126 | } |
1148 | |||
1149 | int callback_capabilites(void* toxav_inst, MSICall* call) | 1127 | int callback_capabilites(void* toxav_inst, MSICall* call) |
1150 | { | 1128 | { |
1151 | ToxAV* toxav = toxav_inst; | 1129 | ToxAV* toxav = toxav_inst; |
@@ -1166,7 +1144,6 @@ int callback_capabilites(void* toxav_inst, MSICall* call) | |||
1166 | pthread_mutex_unlock(toxav->mutex); | 1144 | pthread_mutex_unlock(toxav->mutex); |
1167 | return 0; | 1145 | return 0; |
1168 | } | 1146 | } |
1169 | |||
1170 | bool audio_bit_rate_invalid(uint32_t bit_rate) | 1147 | bool audio_bit_rate_invalid(uint32_t bit_rate) |
1171 | { | 1148 | { |
1172 | /* Opus RFC 6716 section-2.1.1 dictates the following: | 1149 | /* Opus RFC 6716 section-2.1.1 dictates the following: |
@@ -1174,14 +1151,12 @@ bool audio_bit_rate_invalid(uint32_t bit_rate) | |||
1174 | */ | 1151 | */ |
1175 | return bit_rate < 6 || bit_rate > 510; | 1152 | return bit_rate < 6 || bit_rate > 510; |
1176 | } | 1153 | } |
1177 | |||
1178 | bool video_bit_rate_invalid(uint32_t bit_rate) | 1154 | bool video_bit_rate_invalid(uint32_t bit_rate) |
1179 | { | 1155 | { |
1180 | (void) bit_rate; | 1156 | (void) bit_rate; |
1181 | /* TODO: If anyone knows the answer to this one please fill it up */ | 1157 | /* TODO: If anyone knows the answer to this one please fill it up */ |
1182 | return false; | 1158 | return false; |
1183 | } | 1159 | } |
1184 | |||
1185 | bool invoke_call_state_callback(ToxAV* av, uint32_t friend_number, uint32_t state) | 1160 | bool invoke_call_state_callback(ToxAV* av, uint32_t friend_number, uint32_t state) |
1186 | { | 1161 | { |
1187 | if (av->scb.first) | 1162 | if (av->scb.first) |
@@ -1190,7 +1165,6 @@ bool invoke_call_state_callback(ToxAV* av, uint32_t friend_number, uint32_t stat | |||
1190 | return false; | 1165 | return false; |
1191 | return true; | 1166 | return true; |
1192 | } | 1167 | } |
1193 | |||
1194 | ToxAVCall* call_new(ToxAV* av, uint32_t friend_number, TOXAV_ERR_CALL* error) | 1168 | ToxAVCall* call_new(ToxAV* av, uint32_t friend_number, TOXAV_ERR_CALL* error) |
1195 | { | 1169 | { |
1196 | /* Assumes mutex locked */ | 1170 | /* Assumes mutex locked */ |
@@ -1271,7 +1245,6 @@ END: | |||
1271 | 1245 | ||
1272 | return call; | 1246 | return call; |
1273 | } | 1247 | } |
1274 | |||
1275 | ToxAVCall* call_get(ToxAV* av, uint32_t friend_number) | 1248 | ToxAVCall* call_get(ToxAV* av, uint32_t friend_number) |
1276 | { | 1249 | { |
1277 | /* Assumes mutex locked */ | 1250 | /* Assumes mutex locked */ |
@@ -1280,7 +1253,6 @@ ToxAVCall* call_get(ToxAV* av, uint32_t friend_number) | |||
1280 | 1253 | ||
1281 | return av->calls[friend_number]; | 1254 | return av->calls[friend_number]; |
1282 | } | 1255 | } |
1283 | |||
1284 | ToxAVCall* call_remove(ToxAVCall* call) | 1256 | ToxAVCall* call_remove(ToxAVCall* call) |
1285 | { | 1257 | { |
1286 | if (call == NULL) | 1258 | if (call == NULL) |
@@ -1320,7 +1292,6 @@ CLEAR: | |||
1320 | 1292 | ||
1321 | return NULL; | 1293 | return NULL; |
1322 | } | 1294 | } |
1323 | |||
1324 | bool call_prepare_transmission(ToxAVCall* call) | 1295 | bool call_prepare_transmission(ToxAVCall* call) |
1325 | { | 1296 | { |
1326 | /* Assumes mutex locked */ | 1297 | /* Assumes mutex locked */ |
@@ -1396,7 +1367,6 @@ FAILURE_3: | |||
1396 | pthread_mutex_destroy(call->mutex_audio); | 1367 | pthread_mutex_destroy(call->mutex_audio); |
1397 | return false; | 1368 | return false; |
1398 | } | 1369 | } |
1399 | |||
1400 | void call_kill_transmission(ToxAVCall* call) | 1370 | void call_kill_transmission(ToxAVCall* call) |
1401 | { | 1371 | { |
1402 | if (call == NULL || call->active == 0) | 1372 | if (call == NULL || call->active == 0) |
@@ -1425,7 +1395,6 @@ void call_kill_transmission(ToxAVCall* call) | |||
1425 | pthread_mutex_destroy(call->mutex_video); | 1395 | pthread_mutex_destroy(call->mutex_video); |
1426 | pthread_mutex_destroy(call->mutex); | 1396 | pthread_mutex_destroy(call->mutex); |
1427 | } | 1397 | } |
1428 | |||
1429 | void ba_set(ToxAvBitrateAdapter* ba, uint32_t bit_rate) | 1398 | void ba_set(ToxAvBitrateAdapter* ba, uint32_t bit_rate) |
1430 | { | 1399 | { |
1431 | ba->bit_rate = bit_rate; | 1400 | ba->bit_rate = bit_rate; |
@@ -1434,7 +1403,6 @@ void ba_set(ToxAvBitrateAdapter* ba, uint32_t bit_rate) | |||
1434 | ba->next_send_interval = 1000; | 1403 | ba->next_send_interval = 1000; |
1435 | ba->active = true; | 1404 | ba->active = true; |
1436 | } | 1405 | } |
1437 | |||
1438 | bool ba_shoud_send_dummy(ToxAvBitrateAdapter* ba) | 1406 | bool ba_shoud_send_dummy(ToxAvBitrateAdapter* ba) |
1439 | { | 1407 | { |
1440 | if (!ba->active || ba->next_send > current_time_monotonic()) | 1408 | if (!ba->active || ba->next_send > current_time_monotonic()) |