skillfed

ntgcalls

A Native Implementation of Telegram Calls in a seamless way.

ntgcalls v2.2.5 113.6K downloads/30d#12,339 on PyPI115
License unclear Active released

What it is and what it does

NTgCalls is a lightweight C++ library with Python bindings that handles media streaming for Telegram voice and video calls. It wraps WebRTC and Boost under the hood to provide low-level access to call setup, codec handling, and media control (pause, resume, mute, unmute) without requiring a full Telegram client. The library supports group and private calls, screen sharing, microphone and camera streaming, and a range of modern codecs.

Developers use it to build custom Telegram call applications—bots, recording tools, or relay services—that need to send or receive audio and video in Telegram calls. It is designed to be lightweight and resource-efficient, with no Node.js dependency, and offers bindings for Python, Go, C, and Java (Android). The package is actively maintained and provides pre-built wheels for common platforms.

Use it for:

  • Build a Telegram bot that joins group calls and streams audio or video content
  • Create a call recording or monitoring tool that captures audio/video from Telegram calls
  • Implement a relay or bridge service that forwards media between Telegram and other platforms
  • Develop a custom Telegram client with call support for specialized use cases
  • Stream screen content or live media feeds into Telegram group calls

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

NTgCalls provides Python bindings to a C++ library for streaming audio and video in Telegram calls, supporting codecs like H.264, HEVC, VP8, VP9, AV1, AAC, MP3, and Opus.

Yes, if you need to stream media in Telegram calls from Python and are willing to work with a library whose license is not yet clearly documented. The package is actively maintained, has no known vulnerabilities, and provides pre-built wheels for common platforms, reducing install friction. Verify the license terms before use in proprietary projects, and confirm that the API surface and documentation meet your integration needs.

Install

ntgcalls on PyPI

pip

pip install ntgcalls

uv

uv add ntgcalls

poetry

poetry add ntgcalls

Installing ntgcalls

Before you install

Medium install friction due to compiled wheels; the package provides pre-built binaries for Python 3.10–3.14 across macOS (arm64), Linux (x86_64, arm64), and Windows (x86_64). Maintenance is active with a recent commit on 2026-08-03.

License in practice

License status is unclear; no SPDX identifier or raw license text is available in the package metadata. Verify the actual license terms before use in proprietary or copyleft-sensitive projects.

Quickstart

pip install ntgcalls
import ntgcalls
# Consult documentation at https://pytgcalls.github.io/NTgCalls for API usage

Requires Python 3.10 or later; pre-built wheels are available only for specific architectures (macOS arm64, Linux x86_64/arm64, Windows x86_64).

Verify before relying

  • Specific Python API surface and call setup/teardown patterns not detailed in excerpt
  • Whether the package requires Telegram client credentials or API tokens to function
  • Performance characteristics and resource overhead for concurrent calls
  • Exact codec negotiation behavior and fallback strategies

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.10)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 53 days since the last release
Last repo commit
First released
Downloads 113,604/month — #12,339 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ntgcalls-2.2.5-cp310-cp310-macosx_14_0_arm64.whl; ntgcalls-2.2.5-cp310-cp310-manylinux_2_28_aarch64.whl; ntgcalls-2.2.5-cp310-cp310-manylinux_2_28_x86_64.whl; ntgcalls-2.2.5-cp310-cp310-win_amd64.whl; ntgcalls-2.2.5-cp311-cp311-macosx_14_0_arm64.whl; ntgcalls-2.2.5-cp311-cp311-manylinux_2_28_aarch64.whl; ntgcalls-2.2.5-cp311-cp311-manylinux_2_28_x86_64.whl; ntgcalls-2.2.5-cp311-cp311-win_amd64.whl; ntgcalls-2.2.5-cp312-cp312-macosx_14_0_arm64.whl; ntgcalls-2.2.5-cp312-cp312-manylinux_2_28_aarch64.whl; ntgcalls-2.2.5-cp312-cp312-manylinux_2_28_x86_64.whl; ntgcalls-2.2.5-cp312-cp312-win_amd64.whl; ntgcalls-2.2.5-cp313-cp313-macosx_14_0_arm64.whl; ntgcalls-2.2.5-cp313-cp313-manylinux_2_28_aarch64.whl; ntgcalls-2.2.5-cp313-cp313-manylinux_2_28_x86_64.whl; ntgcalls-2.2.5-cp313-cp313-win_amd64.whl; ntgcalls-2.2.5-cp314-cp314-macosx_14_0_arm64.whl; ntgcalls-2.2.5-cp314-cp314-manylinux_2_28_aarch64.whl; ntgcalls-2.2.5-cp314-cp314-manylinux_2_28_x86_64.whl; ntgcalls-2.2.5-cp314-cp314t-macosx_14_0_arm64.whl

Keywords: audio, python, library, video, telegram, stream, ffmpeg, cpp, webrtc, voice-chat, voip, group-chat, video-calls, calls, video-chat, pytgcalls, ntgcalls, tgcalls, py-tgcalls

Programming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Free ThreadingProgramming Language :: Python :: Free Threading :: 3 - StableProgramming Language :: Python :: Implementation :: CPython

Tags

telegram voice call streamingtelegram video call librarywebrtc telegram integrationtelegram media streaming pythontelegram voip librarytelegram group call audiotelegram screen sharing
telegram-integrationwebrtcmedia-streaming

More Internet packages