• Copy Link
support AVIF images
Сергѣй Юрьевичъ Соколовъ, Mar 24, 2021 at 04:06
OpenSuggestionGeneral

AVIF is an image file format with the following attractive features:

➀ higher bit depths are supported (not only 8-bit, but also 10-bit and 12-bit colour components are possible) and thus HDR and WCG images look better (colour banding is reduced),

➁ lossy AVIF images have much higher quality-to-filesize ratio than JPEG or WebP (see https://jakearchibald.com/2020/avif-has-landed/ for example),

➂ artifacts of lossy AVIF compression are visually appealing (see https://cloudinary.com/blog/what_to_focus_on_in_image_compression_fidelity_or_appeal or https://netflixtechblog.com/avif-for-next-generation-image-coding-b1d75675fe4 for example) because of CDEF (see https://hacks.mozilla.org/2018/06/av1-next-generation-video-the-constrained-directional-enhancement-filter/ for details) even in images of relatively low quality (though, of course, it's always possible to apply even further compression that'll make these images ugly at last).

Most Web browsers seem eager to support AVIF in 2021:

⓵ mobile Google Chrome supports AVIF since v89 (see https://blog.chromium.org/2021/01/chrome-89-beta-advanced-hardware.html for details), and that version of Chrome has been released out of beta in early March (see https://chromereleases.googleblog.com/2021/03/chrome-for-android-update.html for details), and desktop Chrome supported AVIF even earlier (since v85), and thus AVIF support in Google Chrome is complete,

⓶ support of AVIF in Mozilla Firefox is a bit delayed because of a bug in its colour conversion (see https://bugzilla.mozilla.org/show_bug.cgi?id=1682995#c24 for details), but AVIF support is still likely to land later in April or in May,

⓷ WebKit (the browser engine of Safari) has got its AVIF support in early March (see https://bugs.webkit.org/show_bug.cgi?id=207750 for details) and thus an AVIF-supporting Safari version is likely to be released in the future.

Hence the suggestion here is that Telegram should also support AVIF images and let its users decide how an AVIF file is sent, providing the three options:

⑴ As a file: iconified representation, visible filename and filesize, optional caption, 2 GB limit on filesizes, currently the only option for AVIF.

⑵ As an image: wide representation (equal to messages' width), suppressed transparency, optional caption, 1280 pixels limit on width and height.

⑶ As a sticker: narrower representation, supported transparency, no caption, 2 MB limit on filesizes.

722Copy link
Comments12
Сергѣй Юрьевичъ Соколовъ Mar 24, 2021
The choice of the first or the second of these options is ubiquitously presented in the current interfaces of Telegram by the notion of recompression to JPEG; for example, Telegram Desktop has the checkbox “compress images” and Telegram for Android has the menu item “send without compression”. However, Telegram should refrain from AVIF-to-JPEG recompression because that would introduce longer delivery and costly storage without any real benefit and thus it would be silly. Telegram should even refrain from AVIF-to-AVIF recompression (on the client side before sending the file, and on the server side, and again on the client side before saving the file) because such recompression would have several demerits:

➊ Recompression causes generation loss (see https://en.wikipedia.org/wiki/Generation_loss for the definition, see also https://youtu.be/FtSWpw7zNkI for an example of generation loss in AVIF files compared to other image types). The most popular pictures (the pictures that are saved and sent again the most often: the memes, the spectacular photoes, the screenshots of awesome news, etc.) would become the most affected, the most “punished” by the quality loss; and they don't deserve that. Therefore recompression efforts on the server side are likely to incentivize unofficial clients to create AVIF files of exorbitant quality and filesizes (when compressing PNG-to-AVIF, for example) and thus to lengthen the delivery in order to ensure that the only significant quality loss is on the server side.
Сергѣй Юрьевичъ Соколовъ Mar 24, 2021
➋ Server-side recompression is costly. First of all, it involves the expenditure of the precious server-side CPU cycles (and these are so precious that Telegram intentionally refrains from GIF-to-MP4 recompression of files greater than 10 megabytes despite the obviously larger filesize-related gains for them). In addition to that, and perhaps more importantly, server-side recompression also generates (because of the generation loss) many files containing the same image on different stages of recompression and thus the expenditure of server-side storage for all of these files. (Telegram would not be able to deduplicate that storage and lessen the cost even if it involves some content-addressable filesystem because formally such files are different before and after the recompression.)

➌ Automatic compression is not very intellectual. The software is likely to try only one setting of the encoder (or maybe two or three more settings if the result of the first compression does not fit in some self-imposed limit) because it prioritizes fast delivery. And usually that is correct, that is the priority. Telegram users, however, can go much further if necessary. For example, it's not unlikely for digital artists (or for authors of some photo documentary, or for hardcore fans visually quoting their beloved masterpieces, etc.) to accept slower encoding for better quality, or to play with encoder's settings for dozens of minutes, or even to find newer or experimental encoders (that would never make it to Telegram apps) with different settings and algorithms if they are able to reach somewhat better AVIF quality within the same public set of constraints. Of course, that may happen only if that set of constraints is indeed public, and obeyed, and the results are not ruined by further recompression.
Сергѣй Юрьевичъ Соколовъ Mar 24, 2021
Refraining from AVIF-to-AVIF recompression, Telegram should limit the server-side image processing to a few simple (not CPU-intensive) tasks, such as:

⒈ Privacy protection by removing metadata (such as geotags) from the images.

⒉ Steganography suppression by removing behind-the-tail data (similar to RARJPEG) from the images.

⒊ Rejecting the images that won't fit in the enforced constraints.

It's okay for Telegram to enforce many constraints on AVIF images as long as the rules are public, for example:

① “Filesize shall not exceed 2 MB” (such is the current rule for stickers in WebP files).

② “File shall not contain more than 6553600 pixels” (such is the current rule for stickers in WebP files in Telegram Desktop).

③ “The number of bytes shall not exceed the half of the number of pixels” (if Telegram decides to limit the quality of smaller files).

If the image does not fit, then it might be silently “sent as a file” (for example, that is exactly what currently happens if a WebP file is larger than 2 MB and thus deemed unfit for a sticker in Telegram) or rejected with an error.

When a PNG file is being sent, Telegram should offer PNG-to-AVIF compression as an alternative to PNG-to-JPEG and probably even prefer the former.

Telegram should also consider using AVIF images (instead of JPEG images) where recompression is desirable: AVIF thumbnails, AVIF small avatars, AVIF previews (under messages that refer to images or to illustrated web pages), etc.

Telegraph (the site, not the Graph Messenger) should also support AVIF images and let its users upload AVIF files or embed them by URLs pasted on empty lines. The uploaded AVIF files (like the already supported PNG uploads) should not be recompressed after upload or face worse limits than the usual 5 megabytes.
M
Moritz May 17, 2021
When it´s license free, it´s a good addition to WebP
Сергѣй Юрьевичъ Соколовъ May 17, 2021
Why “when it's license free”, what's wrong with the https://aomedia.org/license/
Сергѣй Юрьевичъ Соколовъ Oct 11, 2021
AVIF support becomes wider in October 2021:

① Android 12 is released and it supports AVIF: https://android-developers.googleblog.com/2021/10/android-12-is-live-in-aosp.html

② Firefox 93 is released and it supports AVIF: https://www.mozilla.org/en-US/firefox/93.0/releasenotes/
Show next 6 comments
Login
  1. Bugs and Suggestions
AllIssuesSuggestions
by rating by time

40196 Cards

Added
About this platform
All users are welcome to create new entries, view existing entries and vote on them. What is this for? This platform is a place where users can vote for feature suggestions for Telegram or report issues…
Dec 23, 2020ClosedTip
92
Added
Disable "New Contact Joined" chats
Users receive a notification when one of their contacts becomes available on Telegram. It is currently possible to disable the notification: the new chats will appear in the list without sending a notification.…
Dec 11, 2019Suggestion, General
93
Added
Allow site owners to make their own Instant View templates
Instant View templates are currently created and maintained by Telegram, the list of supported websites is expanded gradually. Some site owners would like to get IV support for their websites sooner.…
Jan 23, 2021Suggestion, General
57
Added
Hide messages from blocked users in groups
Sometimes you don't want to see messages from people you blocked, even in the groups you share with them. Such messages could be automatically collapsed and hidden under a spoiler (like 'You blocked Doge.…
Nov 5, 2019Suggestion, General
199
Added
Call transfer between devices
Add an option to seamlessly transfer ongoing voice and video calls between different devices with one account: e.g., from a mobile phone to a desktop PC and vice versa.
Dec 23, 2020Suggestion, General, Calls
35
Added
Separate passcode lock for specific chats or Archive
Option to lock certain chats with a separate passcode. On a chat-by-chat basis, or for an entire Chat Folder, e.g. the Archive. Use cases Family iPads and other shared devices. Can also be used in environments…
Nov 5, 2019Suggestion, General
59
Added
Secret Group Chats
Add an option to create Group Chats with End to End Encryption like Secret Chats.
Jan 28, 2021Suggestion, General
54
Added
Bookmarks in channels
A feature to mark a message in a channel, and to continue reading the channel from this message. Use cases Long stories, broadcasts, and 'I will read it later' situations. Workaround Forwarding a message…
Nov 5, 2019Suggestion, General
18
Added
Feed or Stream with posts from Subscribed Channels
Show posts from channels you're subsribed to in a single view, one post after another – without the need to open each channel seprately to see what's new. Like Twitter and other feed-based social networks.…
Dec 23, 2020Suggestion, General
50
Added
Standalone watchOS app
An independent Watch app that allows the user to receive messages and reply to them even when their paired iPhone is out of range.
Dec 12, 2019FixediOS, Suggestion
30
Fixed
Video call image is stuck and doesn't move
on video calls, video feed of all call participants were all frozen. tried connecting via another internet connection, but to the same effect. please fix thank you. Steps to reproduce 1. join a group…
May 8FixedIssue, Android
35
Added
LaTeX support to write math equations and formulas directly in the message
Add the inline LaTeX support to include math formulas and symbols directly in the message. Engineers would love this feature!
May 9, 2021FixedSuggestion, General
4
Fixed
New sticker/emoji search doesn’t prioritize saved stickers/emoji
Now sticker lookup and sticker pack lookup is completely broken. For example before if I looked up "smile" it would pull results from my saved packs first and all of the random default unsaved packs last.…
May 7FixedIssue, Android
19
Added
Dedicated wearOS app
Create a dedicated and update wearOS app for Telegram that allows users to communicate with users like the smartphone version, with support for media and cellular data on the smartwatch.
Mar 21, 2021FixedSuggestion, Android
4
Fixed
Media shared via external apps cannot be sent with a timer anymore
Steps to reproduce 1. Share a photo or video from Gallery/external app to Telegram. 2. Select a chat between two users. 3. Tap the Send photo/video heading to open the media editor. Current result The…
May 14FixedIssue, Android
1
Fixed
Media shared via external share cannot be sent as file
Description When trying to send a media file (photo or video) from the phone's gallery to Telegram via the standard system "Share" button, the option to "Send as file" is not working correctly. Steps…
May 28Issue, Android
4
0:18
Fixed
In version 12.8.0, the 'mark as read' option from the dropdown menu is not working
In version 12.8.0, the ‘mark as read’ option in the drop-down menu does not work. Steps to reproduce 1. You receive a message whilst on the home screen 2. You try to tap “mark as read” to indicate that…
Jun 9FixedIssue, Android
5
Fixed
Persistent media playback notification after listening to voice messages
After updating to Telegram 12.8.0 on Android, the media playback notification stays stuck after listening to a voice message. It disappears only if I fully close Telegram from recent apps. I tested the…
Jun 11Issue, Android
10
Added
Option to disable the Stories feature
Official Response: Stories take up no extra space in the Telegram UI – but if you'd prefer not to see stories from certain contacts, hold down on their profile picture at the top of your screen and select…
Jul 21, 2023Suggestion, General
16077924
Added
Shadowsocks proxy support
Add Built-in VMess, Shadowsocks, SSR, Trojan-GFW proxies support The ( vmess / vmess1 / ss / ssr / trojan ) proxy link in the message can be clicked
Apr 11, 2021Suggestion, General
1447568
Added
Improve the ability to search chat history for Asian regional languages, such as Chinese and Japanese
Improve the ability to search chat history for Asian regional languages, such as Chinese and Japanese. Telegram's chat history search function is based on words, and is suitable for languages such as…
Dec 23, 2020Suggestion, General
2403796
Added
The sticker text is covered of the time of the message
The time of the message is displayed on the sticker. It is not comfortable to read sticker. It often happens that time covers part of the text on the sticker. And if the sticker is sent from the channel…
Mar 20, 2022Android, Suggestion
222638
Added
Update Iran Flag Emoji to Sun & Lion
PSA: کاربران گرامی دقت داشته باشید که نیاز به ارسال کامنت‌های اسپم در این پیشنهاد نیست و لایک کردن پیشنهاد کافیست این اقدام هم‌وطنان که به صورت گروهی در حال اسپم کردن بخش پشتیبانی و پلتفرم پیشنهادهای…
Jan 9FixedSuggestion, General
252125
1:52
Added
Emergency passcode to hide chats
Option to set an alternative passcode ("double bottom") that either opens a limited set of chats, opens a different account, or destroys one of the connected accounts completely when entered. Use cases…
Feb 27, 2021Suggestion
942014
Added
Notify all group members
An option to notify all group members or admins using a special mention (e.g. @all and @admins). Use cases Important news and major updates in big communities. Potential issues Some group admins already…
Nov 4, 2019Suggestion
1481787
Added
Chat permissions: Can Talk
Please add chat permission: Can Talk. How it works If it's enabled, user can talk in a voice chat. Otherwise user is muted. For users In apps it would be useful for chat owners - they will be able to…
Aug 3, 2021Suggestion, General
241772
Fixed
App's badge counter shows unread messages when all chats are read
Badge counters inside the app and on the app's icon may sometimes show unread messages while there are no unread chats in the list. Workaround Tap 10 times on the Settings tab icon > Reindex Unread Counters.…
Nov 12, 2020Issue, iOS
6181507
Added
Unlimited favorite stickers
Increase the limit for favorite stickers. The current limit is five stickers. When you add another one, the first sticker is replaced. Use cases Choose a limited set of stickers which you will always…
Dec 11, 2019Suggestion
741505
Added
Choose a different default folder instead of "All Chats"
This feature is available as part of Telegram Premium. An option to pin one of your folders as the main folder instead of All Chats. When you open the app, it would show you the folder you chose. Pressing…
Nov 16, 2020FixedSuggestion
701467
Fixed
Live streams have low speed audio resulting in almost no sound
Since the latest stable update, audio from Live Streams is missing. The audio track is actually slightly audible if you max out the volume of your device, but it will be barely noticeable, and feels extremely…
Jan 4, 2025FixedIssue, iOS
71372
Added
Partial reply
Reply only on parts of a message. This would be very useful, if someone wrote a very long message and you only want to refer to one or two sentences - or even only one or a few words.  If you click on…
Jan 23, 2021FixedSuggestion, General
711363
Added
Allow adding Bots (Web Apps) to the Attachment Menu to all bots
Now only selected bots can be added to the Attachment Menu. But as a developer of inline bots, I see this as a barrier to make telegram a better messenger Let users decide, what they want to see in their…
Apr 17, 2022Suggestion, General
191273
Fixed
Telegram's Message Limit: Old Messages Gone Forever
When the message count reaches a million, old messages disappear. Steps to reproduce 1. Be an active Telegram user 2. Wait until the coveted number of incoming/outgoing messages is reached. 3. Eh, it's…
Jul 19, 2022Issue, General
1001231
Added
Disable iOS design in Android app
Android app should follow Material Design, not iOS patterns The recent Android update (12.4.*) introduces design elements directly ported from iOS, creating a non-native experience that ignores platform…
Feb 7Suggestion, Android
4081169
Fixed
Incorrect Search Ban for Quality channels
Incorrect Search Ban on one of The Largest Telegram Channel Steps to reproduce My Channel @Funny is one of the largest English Entertainment channel with Over 250K Subscribers & great Engagement. But…
Dec 15, 2024Issue, General
451143
Added
Alternate profile pictures
When setting a profile picture or video that's only visible to contacts (or certain users, groups etc.), allow choosing an alternate picture or video that will be shown to everyone else. Use cases -…
Nov 17, 2020FixedSuggestion
641131
Added
Armenian language official translation in telegram
Dear Telegram administration. We ask you to make the translation of the Armenian language official in telegram. Not a few people speak Armenian, and a full-fledged Armenian segment has already formed…
Jan 8, 2023Suggestion, General
2081080
Added
Better global search
Make global search a place to find all communities in channels and public chats.
Feb 9, 2021Suggestion, Android
561045
Added
Add Instant View to Telegram Desktop
Add Instant View to Telegram Desktop. The feature is there right now for MacOS Telegram App, but missing from regular Telegram Desktop. Preferably, it should open an article in the existing telegram window…
Dec 23, 2020FixedSuggestion, Telegram Desktop
691039
Added
Transfer ownership if creator account was deleted
Option to transfer ownership in groups and channels if the creator was deleted so the first admin with all permissions will become a creator! Thumbs up if you want this to happen 👍 App: all
Dec 24, 2020FixedSuggestion, General
1651005
Added
NTF Stickers
Dear Telegram Team, This is a proposal to enhance the Telegram ecosystem: the introduction of NFT stickers — unique digital stickers based on blockchain technology, which can not only be used in chats…
Oct 10, 2025Suggestion, General
57975
Added
No one open the video in the groups conversations without the admins permission
During the meeting conversations in telegram, some members want to speak so when we open the Microphone for them to speak, they open video with sexual content. This leads to annoy the members and they…
Jan 30, 2023Android, Suggestion
24967
Fixed
Status displaying issue for iranian numbers
Title: Unreasonable Restrictions on Iranian Accounts Description: Viewing Premium Statuses: Non-premium Iranian accounts cannot see the statuses of premium users. However, purchasing a premium subscription…
Oct 26, 2024FixedIssue, Android
87943
Added
Proper support for inline video messages fro bots
Proper support for Video Notes (aka round videos) in inline mode for bots
Nov 9, 2022Suggestion, General
67926
Added
Add an option to disable auto-ordering of sticker packs on mobile
Add an option to disable auto-ordering of sticker packs. If you have a lot of packs, it make sense to order them in a way that makes it easy for you to find the right sticker. This has been the behaviour…
Sep 19, 2022FixedSuggestion, Android, iOS
223884
Added
Custom icons for folders
Add the ability to choose icons for folders on mobile platforms – like in Telegram Desktop and Telegram macOS. Sync them on all devices. Use cases - Find folders you're looking for more easily. - Save…
Nov 17, 2020Suggestion, iOS, Android
28872
Added
More Two-Factor Authentication methods
An option to add an authenticator app with temporary, one-time passwords (e.g. Authy, Google Authenticator) as another second factor.
Nov 5, 2019Suggestion
33831
Added
An option for a channel/group owner to better interact with subscribers without the risk of being reported as spammer by trolls.
An option for the owner of a channel or a group to set a visible flag informing all new members that they might be privately contacted one single time by the owner/admins of the channel/group they are…
Feb 26, 2022Suggestion, General
41780
Added
Tmail - Telegram Email Service
Telegram is a great messenger, but it can also be a great Email service. So without further introductions, let's start. It may seem like Email service is for the previous generation, but many people,…
Jan 24, 2021Suggestion, General
126748
Fixed
Missing parts of message history
Your help needed: The team needs help with app's logs. Messages are missing on mobile but visible on Telegram Web and Desktop. Notifications of new messages are received, but messages don't appear in…
Feb 15, 2022Issue, Android
82741