ื ื ืืึทืข ืืืืืืืืื, ืืึธืกืกืืขืกืก ืืืื ืงืึทืืคึผืจืขืฉืึทื ืคึฟืึธืจืืึทื ืืื ืืึทืงืขื ืขื - 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