Skip to main content

Telegram VoIP Library for Python

Project description

pytgvoip

Read the Docs PyPI AppVeyor (windows wheels) LGPLv3+

Telegram VoIP Library for Python

Documentation

PytgVoIP is a Telegram VoIP library written in Python and C++.

It uses libtgvoip (a library used in official clients) for voice encoding and transmission, and pybind11 for simple generation of Python extension written in C++.

It is targeted to MTProto client library developers, detailed usage guide is available here.

An example of usage with Pyrogram is available here (stefano-pytgvoip-pyrogram in PyPI), could be used as reference.

Features

  • Python callbacks for sending and receiving audio stream frames allow flexible control
  • Pre-built Windows wheels in PyPI

Requirements

  • Python 3.5 or higher

Linux, MacOS: (use binary wheels from PyPI for Windows)

  • libtgvoip
  • CMake, C++11-compatible compiler, Python headers

Installing

pip3 install pytgvoip

Install pytgvoip_pyrogram to use this module with Pyrogram.

Encoding audio streams

Streams consumed by libtgvoip should be encoded in 16-bit signed PCM audio.

$ ffmpeg -i input.mp3 -f s16le -ac 1 -ar 48000 -acodec pcm_s16le input.raw  # encode
$ ffmpeg -f s16le -ac 1 -ar 48000 -acodec pcm_s16le -i output.raw output.mp3  # decode

❤️ Donate

If this project helps you, consider buying me a coffee:
PayPal.

..and yes... 😊 the paypal account is correct. Thank you so much!


📜 License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

File details

Details for the file stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e7e379e9ce4a3d70192a60004b884594d86b34f7b2e75fc0c7899f9159393913
MD5 7f3f253c3723a7f4524e8a6873552d57
BLAKE2b-256 25070bd974cd36f1b596015e3e9444939c43fcd56a509b555a6aac467cddeb8b

See more details on using hashes here.

File details

Details for the file stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stefano_pytgvoip-0.1.0.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d0c21a2c5d0d84e5d36ef0cfb63dd5be20f40ea0850980e37b14b85d1c7f098f
MD5 a49c943e1921da10b5a27e58b106e5d6
BLAKE2b-256 c3644484dc82af6f512159d12577323714f4687af06c7ef3090ec3135cbc5846

See more details on using hashes here.

File details

Details for the file stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7f15bf816d9530247ece6ad7321d7af7b530314f86c99752505e344e86457329
MD5 8be0262fc34ef609ecaa62e2295b23b0
BLAKE2b-256 2095955897884104cb3fbf7b158588fd99e83b734b1a9f89b4fceb0bd21bb58b

See more details on using hashes here.

File details

Details for the file stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stefano_pytgvoip-0.1.0.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0d0db8d5fb63ab72931272ff23c759b4c8ded6b1dbae8c3f994d8ceafbae754c
MD5 06981c6ed8f24b2caddb6b9319218d18
BLAKE2b-256 0df760edd7b17c3113df8d929d26f07fba8042d56299ae8bc42fab0e47613def

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page