Skip to content

[Feature Request] Screen sharing is of somewhat low quality #16487

Open

Description

@p0358

Is your feature request related to a problem?

The screen sharing quality is a bit lower than expected, the text is blurry/low quality and somewhat hard to read.
[tested on Linux and Windows 10 VM, with 3D acceleration available and not respectively]

Describe the solution you'd like

It would be good if we could see a better quality in screensharing. I'm not sure of the technicalities, framerate is already low too. Perhaps the resolution could be increased, with screen sharing there's usually less data to send than with camera data, unless someone decides to stream something like a game or a video. Don't get me wrong, I'm still very grateful Telegram finally has that feature, only suggesting it could be looked into this concern in some free time.

Describe alternatives you've considered

On the lookout I've compared Telegram's quality to other solutions. In Discord, the quality in default free 720p setting is very similar, maybe a tad better. It's much better and clear in higher resolutions available with Nitro subscription. With apps like Skype and Microsoft Teams, the quality is clear, though I think Skype had a better one. Remote control apps/protocols like AnyDesk, TeamViewer, RDP, VNC, all tend to have a crystal clear image quality, some may suffer is there's a lot of motion going on. Free Jitsi Meet in the browser has much clearer image too.
(Personally though I'll probably still stick to Telegram, because it has a better voice quality than for example Discord, and using two communication apps at once is meh and not really needed anymore)

Additional context

As far as I know Discord is using regular H.264. Many of the other mentioned platforms surely use different codecs for desktop, some use custom-designed ones for their purpose. It might be hard to adapt them, given people may want to stream dynamic content like video too. Perhaps a solution like resolution increase or a tradeoff settings between resolution and framerate (to maintain similar bitrate, cause I assume that's the limitation) could be introduced, as Discord appears to have a big perceived quality increase on higher resolutions, though we don't really see what bitrate settings are tied to their presets. However if we trust their statistics screen, they seem to use variable bitrate, and when you screenshare something there where not much is happening on the screen, the bitrate flow is very low. It might be a part of changes they introduced as part of updates for quarantine times, where people started using the thing more for whiteboard sharing rather than gaming, not sure about that part though.

I'm encouraging others to share their thoughts about this, maybe it may turn out it's only an issue on my side for example

Activity

  1. kirsan31 commented on Jul 7, 2021

    @kirsan31
    Contributor

    Tried it today with a colleague. The quality is not enough even for full HD. Overall thoughts, in current state nearly not usable for us :( Problems:

    • No ScreenSharing in non group calls.
    • No quality settings. Definitely need better quality.
    • Can't expand it on full screen (voice chat members bar is always visible).
  2. samushenkov commented on Jul 17, 2021

    @samushenkov

    We use google meet now for desktop sharing with colleagues. If internet connection is very slow google prefers to use low fps over bad image quality. I personally think it is a relly good solution. Image can be updated like several times in 10 seconds (1 frame per 3 seconds) but it stays crystal clear.

  3. kirsan31 commented on Aug 20, 2021

    @kirsan31
    Contributor

    Screen sharing quality is something terrible.

    Tdesktop 2.9.3 on both side, 100mb net, full call quality indicator, Full HD screen sharing:
    image

  4. faan11 commented on Sep 4, 2021

    @faan11

    The problem still persists in Telegram desktop app.
    I think the user should select the appropriate video quality.
    are there any news about this issue?

  5. faan11 commented on Sep 4, 2021

    @faan11

    Moreover, the shared screen is partially cropped when the video call window is maximed.

  6. ilya-markov commented on Sep 13, 2021

    @ilya-markov

    same for me. please fix!

  7. Mohoki commented on Sep 15, 2021

    @Mohoki

    please, fix !

  8. lmcsu commented on Sep 18, 2021

    @lmcsu

    Current quality makes screen sharing feature almost useless 😢
    Please fix that so we can finally stop using those stupid skype and zoom.

  9. searleser97 commented on Sep 20, 2021

    @searleser97

    agree with @lmcsu

  10. ddcovery commented on Oct 27, 2021

    @ddcovery

    Telegram Video Chat is really impressive and easily can substitute horrible zoom in my company... everybody was impressed until I tried to share the screen.

    5 minutes after we returned to zoom... discord is our actual tool.

    This issue is clearly an stopper and solving it a must!!!

  11. skhtml commented on Nov 1, 2021

    @skhtml

    Паша Дуров, сделай это или не пацан?
    Все ждут решение этого бага, я восхищен работой телеги в последнее время - все очень четко и круто, кроме этой нужной вещи

  12. kirsan31 commented on Nov 2, 2021

    @kirsan31
    Contributor

    In Discord you have an option:
    image
    Without nitro it's 5 fps, and it's perfect for text screen sharing.
    We defiantly need something similar in tdesktop 🙏

  13. danbadjar commented on Nov 3, 2021

    @danbadjar

    Same problem here.
    Low quality screen sharing (comparing with google/zoom) and the screen is cropped.

    Please fix it - This will be a killer feature for competitors

  14. mnogokotin commented on Nov 7, 2021

    @mnogokotin

    Fix, please

  15. 37 remaining items

  16. luisalvarado commented on Jul 2, 2024

    @luisalvarado

    Note this also affects on phone. So let's say you want to do support and a client shares their screen via telegram. You look at it on the phone. If you try to do zoom with your fingers, everything is highly pixelated and there is no option anywhere to control the base resolution wnd quality you want to use.

    So there is no way to pick of I want the highest quality so I can zoom and read code or a legal document etc..

    Same thing applies on desktop too.

  17. AnikoV commented on Oct 10, 2024

    @AnikoV

    Guys you really need to fix this, especially with the discord issues.

    Just compared meet and telegram. I have a resolution of 3440x1440. When I broadcast the whole screen, the text becomes unreadable on lower resolution devices (mac air for example). But when I broadcast just the window and make it half the screen the text becomes readable. In addition to comparing full screen streaming, Google has a video zoom tool for the receiving side, so I stream the whole screen, and on the other side the person can focus on a certain area of the screen, which apparently saves traffic.

  18. wize1 commented on Mar 4, 2025

    @wize1

    its been 4 years and it is still issue. it seems nobody attending to it, or even giving any feedback. we wanted to use Telegram instead of Skype for our business, but at current state it is not option.

  19. osminogin commented on Mar 4, 2025

    @osminogin

    I think if the French special services are interested, this problem will be quickly solved.

  20. branigan commented on Mar 4, 2025

    @branigan

    maybe we need more animated stickers... seriously, the lack of pro features is disgusting even in telegram premium .. we've to start to use Microsoft Teams and they crappy and resource consuming app.

  21. lll-Death-lll commented on May 30, 2025

    @lll-Death-lll

    Right now screencasting feels like a slideshow. Would love to see it improve

  22. jvschiavo commented on Jun 11, 2025

    @jvschiavo

    we wanted to use Telegram instead of Skype for our business, but at current state it is not option.

    I guess Skype is also not an option anymore. 🤷‍♀

  23. github-actions commented on Dec 8, 2025

    @github-actions
    Contributor

    Hey there!

    This issue was inactive for a long time and will be automatically closed in 30 days if there isn't any further activity. We therefore assume that the user has lost interest or resolved the problem on their own.

    Don't worry though; if this is an error, let us know with a comment and we'll be happy to reopen the issue.

    Thanks!

  24. greg7mdp commented on Dec 8, 2025

    @greg7mdp

    Issue still present and a problem.

  25. luisalvarado commented on Dec 8, 2025

    @luisalvarado

    Issue happens even with 1GB connections (optic cable internet). There is no option that I am aware that can help the user the quality of resolution, for example ideas like the following would help:

    1. Set resolution on the fly 720p, 1080p, 2K, 4K
    2. Bitrate or quality rate
    3. As the watched, option to Zoom in on a specific area of the screen if needed in order to see it better. Very useful when sharing code and you want to see a specific part of the code.

    This approach is similar to other technologies used for screen sharing. Currently it looks REALLY blurry.

  26. Clawthorn commented on Mar 28, 2026

    @Clawthorn

    I wanted to add to this issue. Me and a friend were exploring discord alternatives for screensharing/streaming now that discord is going the way of the dodo (at least for us). And sadly we had to conclude that telegram is not a viable option. The quality is beyond atrocious. Whenever there's any movement on the screen it turns into a complete color smear. Forget reading text, you can't even make out basic shapes anymore.

    This is definitely something that needs to be looked at, because I'm not the only person who will be looking for discord alternatives and conclude that telegram just isn't a viable option.

  27. sidkoro commented on Aug 6, 2026

    @sidkoro

    On macOS I see a related but slightly different behavior with screen sharing quality.

    Steps:

    Start a voice/video call in Telegram Desktop.
    Start screen sharing (entire screen).
    The shared screen is blurry / low quality on the other side.
    Stop screen sharing and start it again (without ending the call).
    Quality becomes normal / sharp immediately.
    This has been reproducible for me for a long time across multiple macOS versions (including 26.x and 27.0), not only on a recent beta. Telegram Desktop version: 7.0.9 (com.tdesktop.Telegram).

    So in my case it does not look like a permanent bitrate/resolution limit only — the first screen-share session often starts in a bad quality state, and restarting the share fixes it. Sharing a specific window instead of the full screen sometimes also looks better.

    Happy to provide more details/logs if useful.

  28. DoctorGuidance commented on Oct 31, 2026

    @DoctorGuidance

    The reason screen sharing looks sharp in 1-on-1 calls but becomes blurry and unreadable in group voice/video chats is an architectural divergence between WebRTC P2P direct negotiation and SFU (Selective Forwarding Unit) bandwidth allocation:

    1. Root Cause: Camera-Biased Degradation Preference (MAINTAIN_FRAMERATE)

    When WebRTC handles video, its default degradation policy under network congestion or SFU layer constraints is BALANCED or MAINTAIN_FRAMERATE:

    • For camera video (faces), dropping resolution from 1080p down to 480p/360p while keeping 30 fps is desirable.
    • For screen sharing (coding IDEs, terminals, documents, browser tabs), downscaling spatial resolution immediately destroys readability, turning text into blurry artifacts.

    2. Architectural Solution in tgcalls / WebRTC Track Configuration

    To ensure text remains crisp even under severe group call bandwidth constraints, apply three declarative WebRTC parameters to the screen-sharing track:

    A. Set Track contentHint to detail

    // In tgcalls VideoCaptureInterface / screen track setup:
    videoTrack->set_content_hint(webrtc::VideoTrackInterface::ContentHint::kDetailed);

    This signals WebRTC's internal bitrate allocator that the stream contains high-frequency text edges rather than natural camera motion.

    B. Enforce MAINTAIN_RESOLUTION Degradation

    In the RTP sender parameters:

    auto parameters = rtpSender->GetParameters();
    parameters.degradation_preference = webrtc::DegradationPreference::MAINTAIN_RESOLUTION;
    rtpSender->SetParameters(parameters);

    Why this solves the issue: When bandwidth drops or the SFU throttles the pipe, WebRTC will drop the framerate (e.g. from 30 fps down to 8–15 fps) while strictly locking the spatial resolution at 1080p/1440p. In text presentations or IDE coding, low framerate is imperceptible, whereas full resolution keeps all characters razor-sharp.

    C. Clamping Quantizer Thresholds (qpMax)

    For screen content, clamp encoder QP (qpMax <= 32 for H.264/VP9) and set a minimum allocation floor (~600 kbps). This prevents the encoder from introducing severe macroblocking during scroll events.

    We implemented this exact detail contentHint and MAINTAIN_RESOLUTION profile in Guidegram (src/services/webrtcCallPipelineHardener.ts), which completely eliminates text blurriness in multi-participant group calls.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions