QOI ื‘ื™ืœื“ ืงืึทืžืคึผืจืขืฉืึทืŸ ืคึฟืึธืจืžืึทื˜ ื‘ืึทืงืขื ืขื 

ื ื ื™ื™ึทืข ืœื™ื™ื˜ื•ื•ื™ื™ื˜, ืœืึธืกืกืœืขืกืก ื‘ื™ืœื“ ืงืึทืžืคึผืจืขืฉืึทืŸ ืคึฟืึธืจืžืึทื˜ ืื™ื– ื‘ืึทืงืขื ืขื  - QOI (Quite OK Image), ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื–ื™ื™ืขืจ ื’ืขืฉื•ื•ื™ื ื“ ืงืึธืžืคึผืจืขืก ื‘ื™ืœื“ืขืจ ืื™ืŸ ื“ื™ RGB ืื•ืŸ RGBA ืงืึธืœื™ืจ ืกืคึผื™ื™ืกืึทื–. ื•ื•ืขืŸ ืงืึทืžืคึผืขืจื™ื ื’ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื˜ ื“ื™ PNG ืคึฟืึธืจืžืึทื˜, ื“ื™ ืื™ื™ืŸ-ื˜ืจืขื“ื™ื“ ืจืขืคึฟืขืจืขื ืฅ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ QOI ืคึฟืึธืจืžืึทื˜ ืื™ืŸ C ืฉืคึผืจืึทืš, ื•ื•ืึธืก ื˜ื•ื˜ ื ื™ืฉื˜ ื ื•ืฆืŸ SIMD ืื™ื ืกื˜ืจื•ืงืฆื™ืขืก ืื•ืŸ ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืึธืคึผื˜ื™ืžื™ื–ืึทื˜ื™ืึธื ืก, ืื™ื– 20-50 ืžืืœ ืคืึทืกื˜ืขืจ ืื™ืŸ ืงืึธื“ื™ืจื•ื ื’ ื’ื™ื›ืงื™ื™ึทื˜ ื•ื•ื™ ื“ื™ libpng ืื•ืŸ stb_image ืœื™ื™ื‘ืจืขืจื™ื–, ืื•ืŸ 3 -4 ืžืืœ ืคืึทืกื˜ืขืจ ืื™ืŸ ื“ื™ืงืึธื•ื“ื™ื ื’ ื’ื™ื›ืงื™ื™ึทื˜. ืื™ืŸ ื˜ืขืจืžื™ื ืขืŸ ืคื•ืŸ ืงืึทืžืคึผืจืขืฉืึทืŸ ืขืคืขืงื˜ื™ื•ื•ืงื™ื™ึทื˜, QOI ืื™ื– ื ืึธืขื ื˜ ืฆื• libpng ืื™ืŸ ืจื•ื‘ึฟ ื˜ืขืกืฅ (ืื™ืŸ ืขื˜ืœืขื›ืข ื˜ืขืกืฅ ืขืก ืื™ื– ืึท ื‘ื™ืกืœ ืคืึธืจื•ื™ืก, ืื•ืŸ ืื™ืŸ ืื ื“ืขืจืข ืขืก ืื™ื– ืขืจื’ืขืจ), ืึธื‘ืขืจ ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ ืขืก ืื™ื– ื ืึธื•ื˜ื™ืกืึทื‘ืœื™ ืคืึธืจื•ื™ืก ืคื•ืŸ stb_image (ื’ืขื•ื•ื™ื ืก ืคื•ืŸ ืึทืจื•ื™ืฃ ืฆื• 20%).

ื“ื™ ืจืขืคึฟืขืจืขื ืฅ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ QOI ืื™ืŸ C ืื™ื– ื‘ืœื•ื™ื– 300 ืฉื•ืจื•ืช ืคื•ืŸ ืงืึธื“. ื“ืขืจ ืžืงื•ืจ ืงืึธื“ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ MIT ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ. ืึทื“ื“ื™ื˜ื™ืึธื ืึทืœืœื™, ืขื ื˜ื•ื–ื™ืึทืกืฅ ื”ืึธื‘ืŸ ืฆื•ื’ืขื’ืจื™ื™ื˜ ื™ืžืคึผืœืึทืžืึทื ืฅ ืคื•ืŸ ืขื ืงืึธื“ืขืจืก ืื•ืŸ ื“ื™ืงืึธื•ื“ืขืจ ืื™ืŸ ื“ื™ Go, Zig ืื•ืŸ Rust ืฉืคึผืจืึทื›ืŸ. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผืขื“ ื“ื•ืจืš Dominic Szablewski, ืึท ืฉืคึผื™ืœ ื“ืขื•ื•ืขืœืึธืคึผืขืจ ืžื™ื˜ ื“ืขืจืคืึทืจื•ื ื’ ืื™ืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืคึฟืึทืจ ื“ื™ืงืึธื•ื“ื™ื ื’ MPEG1 ื•ื•ื™ื“ืขื. ื ื™ืฆืŸ ื“ื™ QOI ืคึฟืึธืจืžืึทื˜, ื“ืขืจ ืžื—ื‘ืจ ื’ืขื•ื•ืืœื˜ ืฆื• ื•ื•ื™ื™ึทื–ืŸ ืึทื– ืขืก ืื™ื– ืžืขื’ืœืขืš ืฆื• ืฉืึทืคึฟืŸ ืึทืŸ ืขืคืขืงื˜ื™ื•ื• ืื•ืŸ ืคึผืฉื•ื˜ ืื ื“ืขืจ ื‘ืจื™ืจื” ืฆื• ืื™ื‘ืขืจ-ืงืึธืžืคึผืœื™ืฆื™ืจื˜ ืžืึธื“ืขืจืŸ ื‘ื™ืœื“ ืงืึธื“ื™ืจื•ื ื’ ืคึฟืึธืจืžืึทื˜ื™ืจื•ื ื’ืขืŸ.

QOI ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื™ื– ืคืจื™ื™ึท ืคื•ืŸ ื“ื™ ื”ืึทื›ืœืึธื˜ืข ืื•ืŸ ื ืึทื˜ื•ืจ ืคื•ืŸ ื“ื™ ืงืึธื“ืขื“ ื‘ื™ืœื“ (O (n)). ืงืึธื“ื™ืจื•ื ื’ ืื•ืŸ ื“ื™ืงืึธื•ื“ื™ื ื’ ื–ืขื ืขืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืื™ืŸ ืื™ื™ืŸ ืคืึธืจืŸ - ื™ืขื“ืขืจ ืคึผื™ืงืกืขืœ ืื™ื– ืคึผืจืึทืกืขืกื˜ ื‘ืœื•ื™ื– ืึทืžืึธืœ ืื•ืŸ ืงืขื ืขืŸ ื–ื™ื™ืŸ ืขื ืงืึธื•ื“ื™ื“ ืื™ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ 4 ื•ื•ืขื’ืŸ, ืื•ื™ืกื’ืขืงืœื™ื‘ืŸ ื“ื™ืคึผืขื ื“ื™ื ื’ ืื•ื™ืฃ ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ื‘ื™ืœื“ืฆืขืœืŸ. ืื•ื™ื‘ ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืคึผื™ืงืกืขืœ ืงืึธื•ื™ื ืกื™ื™ื“ื– ืžื™ื˜ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข, ื“ื™ ื™ื‘ืขืจื›ืึทื–ืขืจื•ื ื’ ื˜ืึธืžื‘ืึทื ืง ื‘ืœื•ื™ื– ื™ื ืงืจื™ืกื™ื–. ืื•ื™ื‘ ื“ืขืจ ืคึผื™ืงืกืขืœ ืฉื•ื•ืขื‘ืขืœืขืš ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื•ื•ืึทืœื•ืขืก ืื™ืŸ ื“ื™ 64 ืคืึทืจื’ืึทื ื’ืขื ื”ื™ื™ื˜ ืคึผื™ืงืกืขืœ ื‘ืึทืคืขืจ, ื“ื™ ื•ื•ืขืจื˜ ืื™ื– ืจื™ืคึผืœื™ื™ืกื˜ ื“ื•ืจืš ืึท 6-ื‘ื™ืกืœ ืคืึธื˜ืึธ ืฆื• ื“ื™ ืคืึทืจื’ืึทื ื’ืขื ื”ื™ื™ื˜ ืคึผื™ืงืกืขืœ. ืื•ื™ื‘ ื“ื™ ืงืึธืœื™ืจ ืคื•ืŸ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืคึผื™ืงืกืขืœ ืื™ื– ืึท ื‘ื™ืกืœ ืึทื ื“ืขืจืฉ, ื“ื™ ื—ื™ืœื•ืง ืื™ื– ื’ืขื•ื•ื™ื–ืŸ ืื™ืŸ ืึท ืงื•ืจืฅ ืคืึธืจืขื (ืงื•ืจืฅ ืงืึธื“ื™ืจื•ื ื’ ืคื•ืŸ ื“ื™ ื“ื™ืคืขืจืึทื ืกื™ื– ืื™ืŸ ืงืึธืœื™ืจ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ื•ื•ืึธืก ืคึผืึทืกื™ืง ืื™ืŸ 2,4, 5 ืื•ืŸ XNUMX ื‘ื™ื˜ืŸ). ืื•ื™ื‘ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืื™ื– ื ื™ืฉื˜ ืึธื ื•ื•ืขื ื“ืœืขืš, ื“ื™ ืคื•ืœ rgba ื•ื•ืขืจื˜ ืื™ื– ืฆื•ื’ืขืฉื˜ืขืœื˜.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’