Download ZIP (44.8 MB)

Testing and Issues

You can test this entry and submit issues during the testing period of the VoIP Contest, Stage 3. €50,000 contest.

Entries with serious issues will not be able to win the contest, but even minor issues might be important for overall results.


by rating


Fair Wombat Apr 6 at 12:03
So it should work with real I/O on Android device without TGVOIP_USE_CALLBACK_AUDIO_IO flag, right?
Bossy Gnu Apr 6 at 12:34
It needs some code modifications. Right now the library uses files as the Audio Device Module instead of hardware microphone/speaker. It's not enough to simply remove TGVOIP_USE_CALLBACK_AUDIO_IO. I can replace ADM with real devices and try to build an android version by your request.
Fair Wombat Apr 26 at 12:07
Рейтинг работы был значительно улучшен.
В начале каждого звонка с увеличенной задержкой (latency) тишина до 5 секунд. Она мешает правильному измерению качества. Пример семпла из датасета:


После временного ухудшения сетевых условий качество не возвращается к норме даже после того как сеть вернулась в норму. Примеры:



Не реализована сборка под Android.
Fair Wombat Apr 1 at 14:08
Trying to rebuild library to use our coturn server address. Build fails:

[ 30%] Building CXX object tgvoip/CMakeFiles/tgvoip.dir/server.cpp.o
[ 40%] Building CXX object tgvoip/CMakeFiles/tgvoip.dir/webRTCPeer.cpp.o
In file included from /home/unzipper/voip/usercontent/entry1366/src/tgvoip/tgvoip/webRTCPeer.cpp:28:
/home/unzipper/voip/usercontent/entry1366/src/tgvoip/tgvoip/server.h:37:10: error: ‘void server_t::SetMessageQueue(rtc::Thread*)’ marked ‘override’, but does not override
void SetMessageQueue(rtc::Thread *_thread) override;
In file included from /home/unzipper/voip/usercontent/entry1366/src/tgvoip/tgvoip/server.cpp:10:
/home/unzipper/voip/usercontent/entry1366/src/tgvoip/tgvoip/server.h:37:10: error: ‘void server_t::SetMessageQueue(rtc::Thread*)’ marked ‘override’, but does not override
void SetMessageQueue(rtc::Thread *_thread) override;
make[2]: *** [tgvoip/CMakeFiles/tgvoip.dir/build.make:76: tgvoip/CMakeFiles/tgvoip.dir/server.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [tgvoip/CMakeFiles/tgvoip.dir/build.make:89: tgvoip/CMakeFiles/tgvoip.dir/webRTCPeer.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:93: tgvoip/CMakeFiles/tgvoip.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

If I remove override keyword in
void SetMessageQueue(rtc::Thread *_thread) override;
then, it builds, but fails with segmentation fault during call:
Bossy Gnu Apr 1 at 14:43
Please make sure you replaced WebRTC M80 (included in my Stage 2 submission) by M81 (included in my Stage 3 submission).
Also run your own tgwss (singaling) server please, sources are included in the submission.
And one more note, try to increase IO timeout from 5 to 10 sec - TgVoip.cpp line 81 to avoid connection loosing with signaling server on low quality networks.
Fair Wombat Apr 6 at 11:31
Were there any attempts to build library for Android with real I/O etc, as was requested in previous contest stage?

Don't see any mentions about it in sources.
Bossy Gnu Apr 6 at 11:42
There is no any problem to build the library for an android supported platform. The library depends on WebRTC ( and libwebsockets (, both are android friendly, and rapidjson which is header-only C++ library and can be used with any NDK project.
Nobody added any issues yet...