Animeret GIF (.gif)

CompuServe Standard

Graphics Interchange Format (GIF) er et 8-bit paletbaseret rasterbilledformat udviklet af CompuServe, verdenskendt for at popularisere korte løkkende animationer på det tidlige internet.

Konverter GIF til MP4

Gratis GIF til MP4-konverter i browseren. Konverter filer med det samme på din enhed.

Komprimér GIF online

Privat - filer forlader aldrig din enhed

Undersøgelse og metadata

Operativsystemer og filanalysatorer identificerer GIF-filer ved at inspicere den indledende binære bytesekvens:

Vælg eller træk filer hertil

Privat - filer forlader aldrig din enhed

eller indsæt Ctrl+V
Privatlivsgaranti uden netværksoverførsel: 0 byte overført til eksterne servere. Al behandling foregik lokalt i browserens sandkasse.

Byte-niveau Header-signatur (Magic Bytes)

Operativsystemer og filanalysatorer identificerer GIF-filer ved at inspicere den indledende binære bytesekvens:

HEX-SIGNATUR (OFFSET 0):

47 49 46 38

ASCII-REPRÆSENTATION: GIF8

Standardisering: CompuServe GIF87a / GIF89a Specification

Tekniske specifikationer

ContainerarkitekturStrømningsbaseret paletbilledformat med blokhoveder og afsluttende markør (0x3B)
KomprimeringLempel-Ziv-Welch (LZW) tabsfri ordbogskomprimering
Byte-rækkefølgelittle-endian for lærredsdimensioner og forsinkelsestimere
FarverumIndekseret 8-bit palet (maksimalt 256 farver pr. ramme)
Kanaler og strukturIndekseret palet med 1-bit binær gennemsigtighed (til/fra)
Maks. dimensioner65.535 x 65.535 pixels (2-byte usignerede heltal)
Gennemsigtighed1-bit binær gennemsigtighed (enkelt farveindeks markeret som gennemsigtigt)
Streaming og progressiv4-pass linje-fletningsalgoritme understøttet i basisspecifikationen

Teknisk sammenligningsmatrix: GIF sammenlignet med konkurrenterne

Teknisk attributGIF (Aktuel)Animated WebPMP4 (H.264)APNG
FilstørrelseMeget stor (dårlig komprimering for videobilleder)Ofte mindre end GIF; resultatet afhænger af billedindhold og kodningsindstillinger.Kan være mindre end GIF; resultatet afhænger af billedindhold og kodningsindstillinger.Moderat
FarveunderstøttelseMaksimalt 256 farver pr. ramme16,7 millioner farver (24-bit Truecolor)16,7 millioner farver (YUV 4:2:0)16,7 millioner farver (24-bit Truecolor)
GennemsigtighedKun 1-bit binær (takkede kanter)Fuld 8-bit glat alfakanalIngen indbygget gennemsigtighedFuld 8-bit glat alfakanal
PlatformunderstøttelseBred understøttelse på mange aktuelle og ældre platformeUnderstøttes af mange aktuelle browsere; tilgængeligheden variererUnderstøttes af mange videoafspillere og browsere; tilgængeligheden variererUnderstøttes af mange aktuelle browsere; tilgængeligheden varierer

Almindelige korruptionstilstande og hex-gendannelsesvejledning

Animationen afspilles delvist og fryser, eller billedfremviseren rapporterer uventet filslut (EOF).

Grundlæggende årsag: Manglende slut-trailerbyte 0x3B (semikolon) forårsaget af afbrudt download.

Gendannelse: Tilføj byte 0x3B til slutningen af filen ved hjælp af en hex-editor.

Sikkerhedsanalyse og parser-angrebsvektorer

GIF-filer er enkle, men har historisk set lidt under LZW-udvidelsesbufferoverløbsangreb og GIFAR-polyglotter.

Kendte angrebsvektorer

  • LZW-bufferoverløbssårbarheder i ældre indbyggede dekodere.
  • GIFAR-polyglotangreb: oprettelse af filer, der er gyldige GIF-filer og gyldige Java JAR-filer samtidigt for at omgå uploadfiltre.

Defensive bedste praksisser: Omkod brugeruploadede animerede GIF'er til MP4 eller animeret WebP løbende for at spare båndbredde og neutralisere polyglot-trusler.

Historisk oprindelse og milepæle

2006Alle globale patenter, der dækker LZW-komprimering, udløber, hvilket gør GIF helt fri af patentbeskyttelse.
1995Netscape 2.0 introducerer Application Extension Block, som muliggør uendelig animationsløkke.
1989CompuServe udgiver GIF89a-specifikationen, som tilføjer animation og gennemsigtige farver.
1987Steve Wilhite og CompuServe udgiver GIF87a til overførsel af farvegrafik over opkaldsmodemer.

Vigtige fordele og styrker

  • GIF understøttes af mange browsere og billedværktøjer, men kompatibiliteten varierer efter platform og program.
  • Øjeblikkelig afspilning uden videokodek-forhandling eller licensbegrænsninger.
  • Tabsfri komprimering inden for sin 256-farvepalet.

Tekniske begrænsninger og ulemper

  • Strengt begrænset til en 256-farvepalet (forårsager voldsomme farvebånd på fotografier).
  • Massivt større filer sammenlignet med moderne MP4-, WebM- eller animerede WebP-videoformater (ofte 5x til 10x større).
  • Binær 1-bit gennemsigtighed forårsager takkede pixelerede kanter på ikke-hvide baggrunde (ingen alfablanding).

Interessante tekniske fakta

  • Skaberen Steve Wilhite afklarede berømt i 2013, at den tilsigtede udtalelse er 'JIF' med et blødt G.
  • Loopende animationer var ikke en del af den officielle CompuServe-specifikation; Netscape tilføjede 'NETSCAPE2.0'-udvidelsesblokken i 1995.
  • I 1994 annoncerede Unisys, at Unisys ville håndhæve sit LZW-softwarepatent aggressivt over for udviklere, der skabte GIF-værktøjer, hvilket direkte fik open source-fællesskabet til at opfinde Portable Network Graphics (PNG)-formatet som et patentfrit alternativ.

Ofte stillede tekniske spørgsmål

Hvorfor er animerede GIF'er så meget større end MP4-videoer?

GIF blev designet i 1987 som et statisk billedformat. Det mangler moderne videokomprimeringskoncepter såsom bevægelsesvektorer mellem billeder, makroblokke og tidsmæssig prædiktiv kodning. Det gemmer hvert billede som et fuldt uafhængigt rasterbillede, hvilket resulterer i massive filstørrelser.

Hvordan kan jeg reducere størrelsen på en GIF?

Du kan reducere antallet af farver i paletten, sænke billedhastigheden (f.eks. fra 30 fps til 15 fps), reducere pixeldimensionerne eller ideelt set konvertere filen til moderne animeret WebP eller MP4.

Understøtter GIF lyd eller lydspor?

Nej. CompuServe GIF-specifikationen blev bygget udelukkende til bitmap-billedrammer og tidsforsinkelser; den indeholder ingen datastrukturer eller synkroniseringsbeholdere til lydstrømme. Moderne platforme, der ser ud til at afspille 'GIF'er med lyd', serverer faktisk mutede eller ikke-mutebare MP4/WebM-videofiler.