libretro / libretro/RetroArch

[Feature Request] Support for AVIF thumbnail images - Far smaller image file sizes

Open
#16,109 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Being as the thumbnails folder can take up gigabytes with large game collections, can you please consider supporting AVIF images?

AVIF is a modern image format based on the AV1 video codec. It's royalty-free and offers far superior compression when compared to JPG or WEBP images, and still beats the relatively new HEIC image format (which isn't royalty free). It's currently the best there is when it comes to compression vs image quality. Importantly it supports transparency, which is obviously useful for thumbnails, and there's also support for lossless images, animation, HDR and more.

As for AVIF adoption - All current web browsers and commonly used image viewers (like the Windows Photo app) have support for AVIF. Image editing software like GIMP has it built-in, while Photoshop has a plugin.

Right now the game thumbnails use PNG images, so when these use 32-bit colour and a decent resolution (900p-ish) they can bloat to around 2MB each. A compressed AVIF image will get extremely close to matching PNG lossless image quality while being ~70% smaller and still looking much better than JPG/WEBP at the same file size. Typically you can have around 30 - 40% smaller files than JPG or Googles WEBP while still matching the image quality, or have an AVIF image the same file size as JPG/WEBP but with considerably better image quality/less compression artifacts.

Here's some possibly useful info on AVIF decoding performance (incase you're worried about thumbnail loading times when scrolling through the playlist).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points; begin by locating the thumbnail loading and generation paths and determining where image-format support is handled. Done would mean AVIF thumbnails work reliably across the project's supported platforms without breaking existing PNG thumbnails.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.