Cookies voor statistiek en advertenties
We gebruiken cookies voor statistiek en voor advertenties, allebei naar Google. Weigeren verandert niets aan wat je te zien krijgt.Lees de privacypagina
GIF
Beperkt tot 256 kleuren, maar het enige afbeeldingsformaat dat overal beweegt. Voor video levert het enorme bestanden op.
GIF
GIF is een binair formaat dat alleen iets betekent voor een programma dat het kent. Het bewaart een raster van beeldpunten, dus het wordt zacht zodra je het verder vergroot dan zijn eigen resolutie. Het wordt gebruikt voor het web.
De extensie is .gif en de volledige naam Graphics Interchange Format. Allebei zeggen ze minder dan wat het bestand kan bevatten, en daar gaat de rest van deze pagina over.
CompuServe bracht het in 1987 uit. De specificatie is GIF89a.
Aan een formaat dat zo lang leesbaar is gebleven kun je iets toevertrouwen dat je over tien jaar terug wilt hebben.
Ze is volledig gepubliceerd, dus wie het formaat wil uitvoeren kan dat uit het document doen in plaats van door te kijken hoe anderen het doen. Daarom duikt het in zo veel programma’s op, en daarom gaan bestanden van twintig jaar geleden nog steeds open. Openbaar is niet hetzelfde als royaltyvrij: waar een formaat een codec omhult, is de octrooilicentie een aparte vraag waarop de standaard geen antwoord geeft.
Het gaat overal nog open en oudere programma’s schrijven het nog, maar er wordt niets nieuws meer omheen gebouwd. Converteer wat je wilt bewaren en kies het niet voor iets dat vandaag begint.
GIF bewaart zijn inhoud precies. Opnieuw opslaan verandert niets, dus je kunt het zo vaak openen, bewerken en wegschrijven als je wilt zonder dat er schade opstapelt — en dat is wat er een werkformaat van maakt in plaats van een afleverformaat.
GIF draagt een alfakanaal mee, dus een logo houdt zijn zachte randen over alles wat erachter ligt in plaats van in een wit vak aan te komen.
GIF kan een animatie bewaren in plaats van één stilstaand beeld. Dat is de moeite waard om te weten vóór het converteren: een doel dat één beeld bevat houdt het eerste en laat de rest vallen, meestal zonder het te zeggen.
Tot 8 bits per kanaal. Het kan werken in een geïndexeerd palet.
Acht bits per kanaal is wat een scherm laat zien en wat vrijwel elk afleverformaat meebrengt.
Het palet is de beperking waar al het andere uit volgt. Bij een foto moeten de kleuren gekozen en benaderd worden — daarom komen verlopen in banden of spikkels naar buiten, en daarom doorstaat een tekening met egale vlakken dit formaat zonder kleerscheuren.
GIF kan geen beeld beschrijven dat langer is dan 65.535 beeldpunten per zijde. Dat ligt ver boven een gewone foto en goed binnen bereik van een aan elkaar genaaid panorama of een scan op hoge resolutie — precies daar kom je hem tegen.
GIMP, Adobe Photoshop en ImageMagick lezen het, en de meeste programma’s van dezelfde soort ook.
Als een bestand niet opengaat ligt het zelden aan het formaat — vaker is het programma ouder dan het formaat. Converteren naar iets ouders is de betrouwbare weg eromheen, en daarvoor is de rest van deze site bedoeld.
Elke actuele browser leest het.
Je kunt het dus zonder zorgen op een pagina zetten of aan een bericht hangen, zonder je af te vragen wat de andere kant geïnstalleerd heeft.
GIF is bedoeld om door te geven, niet om in te werken. Er een bewerken kan en is zelden prettig; de verstandige weg loopt via de bron en een nieuwe export.
De terugkerende klachten: zachte verlopen komen soms in zichtbare stappen naar buiten.
Niets daarvan is een reden om het formaat te mijden. Het zijn de dingen die je beter kent voordat een ervan je verrast, en dat is een andere en een nuttigere bewering.
Een GIF slaat een palet van hoogstens 256 kleuren op en verwijst dan naar de index ervan. Elke pixel is een getal dat naar een tabelvermelding wijst. Dat was een verstandig ontwerp in 1987, toen schermen 256 kleuren konden tonen en een palet was hoe afbeeldingen werkten.
Elke klacht over GIF is tot dat feit te herleiden. Een foto heeft veel meer dan 256 losse kleuren, dus een foto omzetten betekent bijna alles ervan weggooien — waarom luchten in zichtbare banden vervallen en huidtinten vlekkerig worden. Het formaat doet dit niet slecht; het doet precies waarvoor het ontworpen is, op inhoud waarvoor het nooit bedoeld was.
Staat een encoder voor een verloop dat hij niet kan weergeven, dan kan hij ditheren: pixels van de twee dichtstbijzijnde beschikbare kleuren verspreiden zodat het oog ze vermengt. Het werkt echt, en het is waarom een goed gemaakte GIF van een foto er beter uitziet dan het palet zou toestaan.
De kosten zijn van dichtbij zichtbaar als een fijne korrel, en ze zijn duur. Dithering vernietigt de reeksen identieke pixels waarop GIF’s compressie leunt, dus een geditherde GIF is vaak veel groter dan een ongeditherde. Die ruil — vloeiendere verlopen tegen een groter bestand — is de belangrijkste hendel die iemand heeft bij het maken ervan.
GIF animeert zonder video te zijn, en het doet dat op meer plekken dan APNG of animated WebP bereiken — chatprogramma’s, e-mail, forumsoftware, presentatietools en een hoop software die nooit een tweede geanimeerd formaat leerde. Dat bereik heeft het veertig jaar gedragen. Het heeft geen speler, geen codecafstemming en geen autoplaytoestemming nodig — het is een afbeelding, en alles dat afbeeldingen toont, toont hem bewegend.
Dat is meer een sociaal feit dan een technisch. Chatapplicaties, forums, issue-trackers en berichtenplatforms accepteren een geanimeerde GIF en weigeren vaak een geanimeerde WebP of APNG, terwijl beide in elk meetbaar opzicht beter zijn. Het formaat overleeft door waar het geaccepteerd wordt, niet door wat het doet.
Elk frame wordt opgeslagen als afbeelding, alleen tegen zichzelf en zijn buren gecomprimeerd op een beperkte manier. Videocodecs beschrijven wat er tussen frames veranderde; GIF doet dat grotendeels niet. Vijf seconden van iemand die beweegt op enige echte grootte levert een bestand van meerdere megabytes op, waar dezelfde clip als MP4 een paar honderd kilobyte is.
De praktische hendels zijn resolutie, framerate en lengte, in die volgorde. De breedte terugbrengen naar rond de 480 pixels en het aantal naar 10 of 12 beelden per seconde brengt een clip meestal naar een verstuurbare grootte. Accepteert de bestemming video überhaupt, dan blijft dat verreweg het betere antwoord.
Een GIF kan één paletvermelding als transparant markeren, en dat is het hele mechanisme. Een pixel is óf volledig dekkend óf volledig onzichtbaar — er zijn geen tussenwaarden.
Het zichtbare resultaat is gekartelde randen op alles wat rond is, en een halo van de oude achtergrondkleur rond een onderwerp dat tegen iets anders is uitgesneden. PNG loste dit in 1996 op met een echt alfakanaal, en dat is de sterkste enkele reden om voor een logo of pictogram PNG te gebruiken in plaats van GIF.
GIF’s compressie gebruikt LZW, waarop Unisys octrooien had. In 1994 begon het bedrijf die te handhaven tegen software die GIF’s schreef, en een formaat dat iedereen vrij had gebruikt vereiste plotseling een licentie.
Het antwoord was PNG, in de open ontwikkeld in de maanden erna specifiek om onbelast te zijn, en het kwam beter uit op vrijwel elk vlak. De octrooien liepen af tussen 2003 en 2006 — het Amerikaanse eerst, het Europese, Japanse en Canadese in 2004, dat van IBM als laatste — en het geschil werd geschiedenis. Toen had GIF de discussie over stilstaande beelden al permanent verloren, en behield alleen de animatie.
Elk frame draagt zijn eigen vertraging, dus een GIF kan een lange pauze op één beeld houden en door andere razen. Het aantal lussen leeft in een uitbreidingsblok, met nul als betekenis oneindig, wat vrijwel elke GIF opgeeft.
Een vertraging van 0 of 1 honderdste van een seconde is waar het gedrag uiteenloopt: browsers klemden historisch zeer korte vertragingen op een minimum vast, dus een GIF gemaakt op 100 beelden per seconde speelt in sommige kijkers op ruwweg tien en sneller in andere. Speelt een animatie merkbaar verschillend snel op verschillende plekken, dan is dat klemmen meestal de reden.
Steve Wilhite, die het team leidde dat het bij CompuServe maakte, zei dat het met een zachte G werd uitgesproken — als "jif" — en herhaalde dat bij het aanvaarden van een lifetime achievement award in 2013. De harde G blijft in de praktijk overweldigend gangbaarder.
Het staat hier omdat mensen er echt naar zoeken, en omdat het eerlijke antwoord is dat de bedoeling van de maker en het algemene gebruik het oneens zijn, wat een gewone uitkomst is voor een woord dat sneller verspreidde dan iemand het kon corrigeren.
Voor een stilstaand beeld, PNG — verliesvrij, volledige kleur, echte transparantie, en meestal kleiner dan de GIF. Voor een animatie die ergens naartoe gaat dat video accepteert, MP4 of WebM, dat een fractie van de grootte zal zijn bij betere kwaliteit. Voor een animatie die een afbeelding moet blijven, WebP waar de bestemming het ondersteunt.
Zet alleen om naar GIF wanneer de bestemming er specifiek om vraagt, wat een echt en gangbaar geval is: een chatvenster, een issue-thread, een documentatiepagina, een platform waarvan het uploadformulier al tien jaar niet veranderd is. Het formaat is slechter dan zijn opvolgers en beter geaccepteerd, en dat is de hele rekensom.
| Extensie | .gif |
|---|---|
| Mediatype | image/gif |
| Uitgegeven door | CompuServe |
| Voor het eerst gepubliceerd | 1987 |
| Specificatie | GIF89a |
Wat deze pagina beweert, is na te gaan, en dit zijn de documenten die de zaak beslechten.