A simple and elegant client that allows you to make group voice calls quickly and easily.
Examples
•
Documentation
•
PyPi
•
Channel
•
Chat
This project allows to make Telegram group call using MtProto and WebRTC, this is possible thanks to the power of NodeJS's WebRTC library and @evgeny-nadymov
The supported clients for now are Pyrogram and Telethon, but we accept other clients too, you can open a pull request with the edits
Here's how to install the PyTgCalls lib, the commands are given below:
# With Git
pip install git+https://github.com/pytgcalls/pytgcalls -U
# With PyPi (Recommended)
pip install py-tgcalls -U
From file to raw video
ffmpeg -i {INPUT_FILE} -f rawvideo -pix_fmt yuv420p -vf scale=640:-1 {OUTPUT_FILE}
From H264/VP8/VP9 to Audio and Video
ffmpeg -i {INPUT_FILE} -f s16le -ac 1 -ar {BITRATE} {OUTPUT_AUDIO_FILE} -f rawvideo -r {FRAMERATE} -pix_fmt yuv420p -vf scale={SCALING}:-1 {OUTPUT_VIDEO_FILE}
From youtube video/live-stream to Audio and Video
ffmpeg -i "$(youtube-dl -x -g "{YOUTUBE_LINK}")" -f s16le -ac 1 -ar {BITRATE} {OUTPUT_AUDIO_FILE} -f rawvideo -r {FRAMERATE} -pix_fmt yuv420p -vf scale={SCALING}:-1 {OUTPUT_VIDEO_FILE}
From YouTube Live stream to Video
The max resolution allowed by Telegram is of 720p at 30 fps Here also listed the scaling format
- 360p = 640
- 480p = 854
- 720p = 1280
If you have any problem with green screen or un-synchronized video, it can be one of these problems:
- Invalid FFMPEG command
- The video quality specified to convert is higher than the original video one
- Invalid PyTgCalls video parameters
- If you're using fifo, the Fifo max buffer size is too low and this cause the lag problem.
From file to raw format
ffmpeg -i {INPUT_FILE} -f s16le -ac 1 -ar {BITRATE} {OUTPUT_FILE}
From stream link to raw format
ffmpeg -y -i {STREAM_LINK} -f s16le -ac 1 -ar {BITRATE} {OUTPUT_FILE}
From youtube video/live-stream to raw format
ffmpeg -i "$(youtube-dl -x -g "{YOUTUBE_LINK}")" -f s16le -ac 1 -ar {BITRATE} {OUTPUT_FILE}
Big thanks to @evgeny-nadymov for allowing us to use their code from telegram-react and thanks to alemidev for helping to rebuild this library
This library is based on tgcallsjs developed @AndrewLaneX and pyservercall by @Laky-64