Added Support for VideoCalls, Screensharing and Optimized CPU Usage during calls#916
Open
Laky-64 wants to merge 42 commits intoTGX-Android:mainfrom
Open
Added Support for VideoCalls, Screensharing and Optimized CPU Usage during calls#916Laky-64 wants to merge 42 commits intoTGX-Android:mainfrom
Laky-64 wants to merge 42 commits intoTGX-Android:mainfrom
Conversation
In 2021, there was a competition for the design of audio/video calls, and this option seemed the most promising to many: https://contest.com/android-design/entry2997. Maybe you can somehow come to an agreement with the author and take his design for your implementation. |
fbec9a8 to
8bb1443
Compare
japananimetime
added a commit
to japananimetime/Telegram-X
that referenced
this pull request
Jan 11, 2026
Cherry-picked Video Calls with Camera and Screen Sharing support. - Added CallInterface abstraction layer - Added NTgCallsInterface and TgCallsInterface implementations - Added VoIPFloatingLayout and VoIPTextureView for video display - Updated CallController with video button support - Updated TGCallService with NTgCalls/TgCalls selection based on BuildConfig.USE_NTGCALLS Based on commit 9513771 from Laky-64/Telegram-X PR TGX-Android#916 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
japananimetime
added a commit
to japananimetime/Telegram-X
that referenced
this pull request
Jan 11, 2026
- Add BLUETOOTH_CONNECT and BLUETOOTH_SCAN permissions for Android 12+ - Add USE_NTGCALLS BuildConfig flag (controlled by app.ntgcalls in local.properties) - Add useNTgCalls to ApplicationConfig and ConfigurationPlugin - Add conditional NTgCalls dependency (io.github.pytgcalls:ntgcalls:2.0.6) Note: The NTgCalls interface code from PR TGX-Android#916 requires API compatibility updates - the PR was written for a different version of the NTgCalls library with packages (media, p2p, devices, exceptions) that don't exist in the public Maven Central release. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
logopek
pushed a commit
to logopek/reX
that referenced
this pull request
Jan 11, 2026
Cherry-picked Video Calls with Camera and Screen Sharing support. - Added CallInterface abstraction layer - Added NTgCallsInterface and TgCallsInterface implementations - Added VoIPFloatingLayout and VoIPTextureView for video display - Updated CallController with video button support - Updated TGCallService with NTgCalls/TgCalls selection based on BuildConfig.USE_NTGCALLS Based on commit 9513771 from Laky-64/Telegram-X PR TGX-Android#916 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
logopek
pushed a commit
to logopek/reX
that referenced
this pull request
Jan 11, 2026
- Add BLUETOOTH_CONNECT and BLUETOOTH_SCAN permissions for Android 12+ - Add USE_NTGCALLS BuildConfig flag (controlled by app.ntgcalls in local.properties) - Add useNTgCalls to ApplicationConfig and ConfigurationPlugin - Add conditional NTgCalls dependency (io.github.pytgcalls:ntgcalls:2.0.6) Note: The NTgCalls interface code from PR TGX-Android#916 requires API compatibility updates - the PR was written for a different version of the NTgCalls library with packages (media, p2p, devices, exceptions) that don't exist in the public Maven Central release. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
japananimetime
added a commit
to japananimetime/Telegram-X
that referenced
this pull request
Jan 17, 2026
Cherry-picked Video Calls with Camera and Screen Sharing support. - Added CallInterface abstraction layer - Added NTgCallsInterface and TgCallsInterface implementations - Added VoIPFloatingLayout and VoIPTextureView for video display - Updated CallController with video button support - Updated TGCallService with NTgCalls/TgCalls selection based on BuildConfig.USE_NTGCALLS Based on commit 9513771 from Laky-64/Telegram-X PR TGX-Android#916 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
japananimetime
added a commit
to japananimetime/Telegram-X
that referenced
this pull request
Jan 17, 2026
- Add BLUETOOTH_CONNECT and BLUETOOTH_SCAN permissions for Android 12+ - Add USE_NTGCALLS BuildConfig flag (controlled by app.ntgcalls in local.properties) - Add useNTgCalls to ApplicationConfig and ConfigurationPlugin - Add conditional NTgCalls dependency (io.github.pytgcalls:ntgcalls:2.0.6) Note: The NTgCalls interface code from PR TGX-Android#916 requires API compatibility updates - the PR was written for a different version of the NTgCalls library with packages (media, p2p, devices, exceptions) that don't exist in the public Maven Central release. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
64777e7 to
225c605
Compare
a1c1b9f to
1617e78
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

The guide below provides the flow for creating a perfect pull request to the Telegram X Repository. Before submitting your PR, ensure that it complies with the following principles.

Screen_Recording_20250830_170141_NTgCallsX.mp4
Perfect PRs must be:
Rational. This PR replaces the old TgCalls implementation with NTgCalls, adding full support for video calls and screen sharing, while also introducing a more efficient CPU usage management. To enable NTgCalls locally, you need to add the following line in your
local.propertiesfile:'main'branch.When fixing issues, make sure that your PR is:
When adding features, expect:
Other contributions: