Hvad er QOI-filformatet?
En .qoi-fil er et Quite OK Image, et tabsfri rasterbilledformat skabt af Dominic Szablewski og udgivet den 24. november 2021. Det blev designet til at være langt enklere og meget hurtigere end .png, mens det producerer filer af omtrent samme størrelse. Hele specifikationen fylder en enkelt side, og reference-encoderen og -decoderen er på omkring 300 linjer C.
Indeni starter en .qoi-fil med en 14-byte header, der begynder med ASCII-markøren qoif, efterfulgt af billedets bredde og højde, en kanal-byte (3 for RGB eller 4 for RGBA) og en farverums-byte. De efterfølgende pixels er komprimeret med run-length encoding, en lille cache af nyligt sete farver og delta-kodning mod den forrige pixel. Formatet er fuldstændig tabsfri, understøtter 8-bit alpha og blev lagt i det offentlige domæne under CC0.
Sikkerhed og tryghed
RISIKO: LOWQOI is a plain image format with no scripting, macros, or embedded executable content, so a .qoi file cannot run code on its own. It also has no checksum, so a corrupted file may simply fail to decode. As with any image type, the only real risk comes from bugs in a specific decoder, so keep your viewer up to date.
Formatdetaljer
kort fortaltProgrammer der åbner QOI-filer
.qoi files natively in GIMP 3.0 or later and export them to other formats. .qoi images after installing the IrfanView plugin pack, then re-save to .png or .jpg. .qoi files from the command line with magick input.qoi output.png (build 7.1.0-20 or later). .qoi file directly to view it, browse folders of them, and batch-convert to other image formats. .qoi thumbnails and previews inside Windows File Explorer. .qoi and .png with the official command-line tool qoiconv input.qoi output.png. .qoi files in Finder with a spacebar QuickLook press after installing the plugin. .qoi files with ffmpeg -i input.qoi output.png (version 5.1 or later). qoiconv input.qoi output.png for lossless PNG conversion. Tekniske detaljer
dyb specifikation| Encoding | Byte-aligned tagged chunks; no bit-packing across byte boundaries |
| Byte order | Big-endian (width and height stored as 32-bit big-endian integers) |
| Container | 14-byte header, variable-length data chunks, 8-byte end marker (seven 0x00 bytes followed by 0x01) |
| Compression | Lossless. Combines run-length encoding, a 64-entry running hash index of previously seen pixels, and small per-channel delta coding |
| Typical size | Comparable to PNG for the same RGB or RGBA image |
| Structure | Header holds magic 'qoif', width (u32 BE), height (u32 BE), channels (1 byte: 3=RGB, 4=RGBA), and colorspace (1 byte: 0=sRGB with linear alpha, 1=all linear). Pixels are encoded left to right, top to bottom using five chunk types: QOI_OP_RUN, QOI_OP_INDEX, QOI_OP_DIFF, QOI_OP_LUMA, and QOI_OP_RGB / QOI_OP_RGBA. The index uses the hash (r*3 + g*5 + b*7 + a*11) % 64. |
| Integrity | None. There is no CRC or checksum; a fixed 8-byte end marker signals the end of the stream |
| Color depth | 24-bit RGB or 32-bit RGBA, 8 bits per channel |
| Colorspace | sRGB with linear alpha, or all channels linear (informational flag only; does not affect decoding) |
| Platforms | Windows, macOS, Linux |
| Initial Release Full | November 24, 2021 (specification finalized as version 1.0 on January 5, 2022) |
| Reference Implementation | Single-file MIT-licensed C/C++ library qoi.h (about 300 lines). The specification itself is public domain (CC0). |
| Notes | Designed to be far faster to encode and decode than PNG (roughly 20x-50x faster encoding, 3x-4x faster decoding) while keeping file sizes similar. No animation, no tiling, no interlacing, and a maximum of 8 bits per channel. GameMaker uses QOI (with bzip2) as its default texture storage format since 2022.1. |
| Udgivet | 2021-11-24 |
| Seneste version | 1.0 (2022-01-05) |
| Åben standard | Ja · royaltyfri |
| Specifikation | qoiformat.org |
QOI-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om QOI-filer.
Ofte stillede spørgsmål
Hvordan åbner jeg en QOI-fil?
.qoi-forhåndsvisninger og miniaturebilleder direkte i Stifinder.Hvordan konverterer jeg en QOI-fil til PNG?
qoiconv input.qoi output.png, eller brug ImageMagick med magick input.qoi output.png. Begge er tabsfrie, så PNG-filen vil indeholde præcis de samme pixels.Er QOI bedre end PNG?
Er QOI tabsfri?
Understøtter QOI gennemsigtighed?
Er QOI-filer sikre at åbne?
.qoi-fil indeholder kun billeddata uden scripts eller indlejrede programmer, så åbning af en i en aktuel viser indebærer meget lille risiko.