+intro => 'Comparison of image encoding formats, based on <a href="https://cloudinary.com/blog/one_pixel_is_worth_three_thousand_words">Cloudinary</a> research.',
codec => {
jpeg => {
name => '<abbr title="Joint Photographic Experts Group">JPEG</abbr>',
available => 1992,
codec => {
jpeg => {
name => '<abbr title="Joint Photographic Experts Group">JPEG</abbr>',
available => 1992,
+ generation => 0,
},
gif => {
name => '<abbr title="Graphics Interchange Format">GIF</abbr>',
available => 1987,
},
gif => {
name => '<abbr title="Graphics Interchange Format">GIF</abbr>',
available => 1987,
+ generation => 0,
},
png => {
name => '<abbr title="Portable Network Graphics">PNG</abbr>',
available => 1996,
},
png => {
name => '<abbr title="Portable Network Graphics">PNG</abbr>',
available => 1996,
+ generation => 1,
},
jp2k => {
name => 'JPEG 2000',
available => 2000,
},
jp2k => {
name => 'JPEG 2000',
available => 2000,
+ generation => 1,
},
webp => {
name => 'WebP',
available => 2010,
},
webp => {
name => 'WebP',
available => 2010,
+ generation => 1,
},
heic => {
name => '<abbr title="High Efficiency Image Container (HEVC in HEIF)">HEIC</abbr>',
available => 2015,
},
heic => {
name => '<abbr title="High Efficiency Image Container (HEVC in HEIF)">HEIC</abbr>',
available => 2015,
+ generation => 2,
},
avif => {
name => '<abbr title="AV1 Image File Format">AVIF</abbr>',
available => 2019,
},
avif => {
name => '<abbr title="AV1 Image File Format">AVIF</abbr>',
available => 2019,
+ generation => 2,
},
jxl => {
name => 'JPEG XL',
available => 2021,
},
jxl => {
name => 'JPEG XL',
available => 2021,
+ generation => 2,
},
pnm => {
name => '<abbr title="Portable aNyMap">PNM</abbr>',
available => 1988,
},
pnm => {
name => '<abbr title="Portable aNyMap">PNM</abbr>',