grishka / libtgvoip

VoIP library for Telegram clients
The Unlicense
388 stars 158 forks source link

linux support #2

Closed ivanbalashov239 closed 7 years ago

ivanbalashov239 commented 7 years ago

alsa/pulseaudio support missing

grishka commented 7 years ago

The library will eventually be ported to each of the four remaining operating systems (Windows, Linux, OS X, Windows Phone).

omkarnathsingh commented 7 years ago

That would be great. Will it then help it to port to Telegram Desktop versions?

stek29 commented 7 years ago

@omkarnathsingh No, you'd have to manually acquire keys, endpoints and other configs from patched tg-cli and make a call using some kind of custom wrapper for this lib (jk, ofc it will)

Techwolf commented 7 years ago

Please either leave out or make pulseaudio an option. Just google "Pulseaudio crash" to see all the horror stories. alsa or ogg is an good option.

melroy89 commented 7 years ago

Windows Phone is dead.

danog commented 7 years ago

@stek29 tg-cli is pretty much dead, I suggest you use MadelineProto: I've already implemented auth key generation for calls (with emoji verification too!), and I'm writing a PHP extension to wrap this lib in a nice class: I've currently implemented wrappers for all methods except the audio callbacks, where I've still gotta decide what method to use to acquire audio (I'm more for a native implementation (with OpenSL ES converting audio from a given file/fifo maybe?); suggestions are welcome (not here, but in the wrapper's repo)).

grishka commented 7 years ago

@danger89 the library will have audio wrappers available for all three desktop operating systems shortly. Currently working on the OS X one, but there will also be, at least, ALSA for Linux and WinAPI-based one for Windows. And you can always do file/ffmpeg/whatever based one, the only important thing is to be precise with callback timing; callbacks should be called exactly every 20 ms.

Also, expect some (minor) changes to the public API as I'll be refactoring the whole thing. For example, I'm planning to rename CVoIPController to tgvoip::VoIPController.

Telegramsrv commented 6 years ago

Windows working?