์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.

1. ๊ฐœ์š”2. ํŠน์ง•3. ๋น„๊ต4. ๋‹จ์ 

1. ๊ฐœ์š”[ํŽธ์ง‘]

ํ™ˆํŽ˜์ด์ง€

BPG(Better Portable Graphics)๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ ํŒŒ๋ธŒ๋ฆฌ์Šค ๋นŒ๋ผ[1]๊ฐ€ 2014๋…„์— ๋งŒ๋“  ์ด๋ฏธ์ง€ ํฌ๋งท์ด๋‹ค. ํ™”์งˆ๊ณผ ํŒŒ์ผ ํฌ๊ธฐ๊ฐ€ ๋ฌธ์ œ๋˜๋Š” JPEG๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค.

2. ํŠน์ง•[ํŽธ์ง‘]

  • ๋†’์€ ์••์ถ• ๋น„์œจ. ๋น„์Šทํ•œ ํ™”์งˆ์˜ JPEG๋ณด๋‹ค ํŒŒ์ผ์˜ ์šฉ๋Ÿ‰์ด ํ›จ์”ฌ ์ž‘๋‹ค.
  • ๋Œ€๋ถ€๋ถ„์˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ 56KB ํฌ๊ธฐ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋””์ฝ”๋”๋ฅผ ํ†ตํ•ด ์ง€์›๊ฐ€๋Šฅํ•˜๋‹ค.
  • HEVC ์˜คํ”ˆ ๋น„๋””์˜ค ์••์ถ• ํ‘œ์ค€์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค.
  • ๋ณ€ํ™˜ํ•  ๋•Œ ์†์‹ค์„ ์ค„์ด๊ธฐ ์œ„ํ•ด JPEG์™€ ๋™์ผํ•œ ํฌ๋กœ๋งˆ ํฌ๋งท (grayscale, YCbCr 4:2:0, 4:2:2, 4:4:4)์„ ์ง€์›ํ•œ๋‹ค. ์•ŒํŒŒ์ฑ„๋„, RGB, YCgCo, CMYK ์ƒ‰์ƒ ๊ณต๊ฐ„์„ ์ง€์›ํ•œ๋‹ค.
  • ๋†’์€ ๋‹ค์ด๋‚˜๋ฏน ๋ฒ”์œ„๋ฅผ ์œ„ํ•ด ์ฑ„๋„ ๋‹น 8~14๋น„ํŠธ๋ฅผ ๊ธฐ๋ณธ ์ง€์›ํ•œ๋‹ค.
  • ๋ฌด์†์‹ค ์••์ถ•์„ ์ง€์›ํ•œ๋‹ค.
  • EXIF, ICC profile, XMP ๋“ฑ์˜ ์—ฌ๋Ÿฌ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ์ง€์›๋œ๋‹ค.

3. ๋น„๊ต[ํŽธ์ง‘]

์ง์ ‘ ๋น„๊ตํ•ด ๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด JPEG๋Š” ๋ฌผ๋ก ์ด๊ณ  WebP๋ณด๋‹ค๋„ ๋น„์Šทํ•œ ํŒŒ์ผ ์šฉ๋Ÿ‰์—์„œ ํ™”์งˆ์ด ์šฐ์ˆ˜ํ•˜๋‹ค. HEIF์™€๋Š” ๋น„์Šทํ•œ ํšจ์œจ์„ ๊ฐ€์ง„๋‹ค.
์• ๋‹ˆ๋ฉ”์ด์…˜์—์„œ ํŠนํžˆ๋‚˜ ์šฉ๋Ÿ‰์ด ์ž‘์€ ๊ฒƒ์„ ๋А๋‚„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ๋น„๋””์˜ค ์ฝ”๋ฑ์ธ HEVC๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์••์ถ•์œจ์ด ๊ต‰์žฅํžˆ ๋†’๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
์›€์งค์€ ์—ฌ๊ธฐ์—์„œ ํ™•์ธ ํ•ด ๋ณด์ž.

4. ๋‹จ์ [ํŽธ์ง‘]

BPG์˜ ๋‹จ์ ๋“ค ๋Œ€๋ถ€๋ถ„์€ X265 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ทธ ์›์ธ์ด ์žˆ๋‹ค. BPG๊ฐ€ ๊ณ ์••์ถ•๋ฅ ์„ ์ž๋ž‘ํ•˜๋Š” ์ด์œ  ์—ญ์‹œ ๊ทธ ๋•Œ๋ฌธ์ธ ์ ์„ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์•„์ด๋Ÿฌ๋‹ˆ๋„ ์ด๋Ÿฐ ์•„์ด๋Ÿฌ๋‹ˆ๊ฐ€ ์—†์„ ์ง€๊ฒฝ์ด๋‹ค.
  • BPG๋ฅผ ์ •์‹์œผ๋กœ ์ง€์›ํ•˜๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์—†์œผ๋ฉฐ, ์ง€์›ํ•  ์˜ˆ์ •๋„ ์—†์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.
    ํ˜„์žฌ๋กœ์จ๋Š” ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ์ ์ธ๋ฐ, ์ œ์ผ ํฐ ๊ฑธ๋ฆผ๋Œ์€ ๋ฐ”๋กœ HEVC ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ํŠนํ—ˆ๋กœ ๋ณดํ˜ธ(Patent-protected)[2]๋ฐ›๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋ชจ์งˆ๋ผ์—์„œ๋Š” ์ง€์›ํ•  ๊ณ„ํš์ด ์—†๋‹ค๊ณ  ํ–ˆ์œผ๋ฉฐ[3], ํฌ๋กœ๋ฎด ๊ณ„์—ด์€ ์„œ๋“œํŒŒํ‹ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋งก๊ธฐ๊ฒ ๋‹ค๋Š” ์ž…์žฅ์„ ๋ณด์ด๊ณ  ์žˆ๋‹ค. ๊ทธ๋‚˜๋งˆ๋„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ AVIF๋ฅผ ์ง€์›ํ•˜๋Š” ์ชฝ์œผ๋กœ ์งฑ๋ฐ•์•„๋†“์€ ์ƒํƒœ๋ผ ์ „๋ง์€ ์–ด๋‘์ปด์ปดํ•˜๋‹ค.
  • ๋†’์€ CPU ์‚ฌ์šฉ๋ฅ  ๋ฐ ๋ž™ ์œ ๋ฐœ
    ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๊ฐœ์„ ๋  ์—ฌ์ง€๊ฐ€ ์žˆ์œผ๋‚˜, ์•„์ง BPG ์ด๋ฏธ์ง€๋ฅผ ๋””์ฝ”๋”ฉ์„ ํ•˜๋Š” ๋ฐ์— ๋งŽ์€ ์ž์›์ด ์†Œ๋ชจ๋œ๋‹ค.[4] ํ˜„์žฌ๋กœ์„œ๋Š” ๋ธŒ๋ผ์šฐ์ € ์ง€์›์„ ์ „ํ˜€ ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์ด๊ธฐ์— ์›น์—์„œ ์‚ฌ์šฉํ•œ๋‹ค ํ• ์ง€๋ผ๋„ ์ƒ์ˆ ํ•œ 56KB ํฌ๊ธฐ์˜ asm.js๋กœ ์ปดํŒŒ์ผ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ฐ›์•„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๋ฐ, ๋ฌธ์ œ๋Š” ์ด ๋…€์„, ์ด๋ฏธ์ง€ ๋””์ฝ”๋”ฉํ•œ๋‹ค๊ณ  ํŽ˜์ด์ง€๋ฅผ ์–ผ๋ ค๋ฒ„๋ฆฐ๋‹ค.[5](...) ๋™์˜์ƒ ์ธ์ฝ”๋”์™€๋Š” ๋‹ค๋ฅด๊ฒŒ asm.js๊ณผ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ์ˆ ์ƒ ํ•œ๊ณ„๋กœ GPGPU๋Š” ์ปค๋…• ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋”ฉ ์ง€์›๋„ ์•ˆ ๋˜๋Š” ์ƒํ™ฉ์ด๊ธฐ์— ๋ฌธ์ œ๋Š” ๋”์šฑ ์‹ฌ๊ฐํ•˜๋‹ค. ์›น ๊ฐœ๋ฐœ์ž ์ž…์žฅ์—์„œ๋Š” ํŠธ๋ž˜ํ”ฝ ์ค„์ด๋ ค๊ณ  BPG๋ฅผ ์ผ๋‹ค๊ฐ€ ๋˜๋ ค ๋ž™์„ ์–ป๊ฒŒ ๋˜๋Š” ์…ˆ์ด๋‹ค.
  • ๊ณผ์žฅ๋œ ์••์ถ•๋ฅ 
    ๋ถ„๋ช… BPG๋Š” HEVC ๊ธฐ์ˆ ์„ ์ด์šฉํ•ด ๋†’์€ ์••์ถ•๋ฅ ์„ ์–ป๊ธฐ๋Š” ํ•˜์˜€์œผ๋‚˜, ํ˜„์žฌ๋กœ์จ๋Š” ์ตœ์ ํ™”๊ฐ€ ์‹œ๊ธ‰ํ•œ ๋ฌธ์ œ์ธ์ง€๋ผ ์‹ค์‚ฌ์šฉ์œผ๋กœ ์“ฐ๊ธฐ ์œ„ํ•ด ์†๋„๋ฅผ ๋น ๋ฅด๊ฒŒ ํ•˜๋ฉด ์••์ถ•๋ฅ ์ด ๋˜๋ ค ๋‚ฎ์•„์ง„๋‹ค. ์‰ฝ๊ฒŒ ์–˜๊ธฐํ•˜์ž๋ฉด ์—ฌํ–‰ ๊ฐ€๋ฐฉ์— ์ง์„ ์•„์ฃผ ๊พน๊พน ๋ˆŒ๋Ÿฌ ๋‹ด์•„ ์ตœ๋Œ€ํ•œ ์••์ถ•ํ–ˆ์œผ๋‚˜ ์›ํ•˜๋Š” ์˜ท์„ ๋‹ค์‹œ ๊บผ๋‚ด๋ ค๊ณ  ๋ณด๋‹ˆ ๋„ˆ๋ฌด ๊ฝ‰๊ฝ‰ ๋ˆŒ๋Ÿฌ ๋‹ด์•„ ์—ฌํ–‰ ๊ฐ€๋ฐฉ ํ‘ธ๋Š”๋ฐ ํ•œ ์„ธ์›”๊ฑธ๋ฆฐ ๋‹ค๋Š” ๋ง.
  • ๋ฌด์†์‹ค ์••์ถ•์— ๋ถˆ๋ฆฌ
    H.265์˜ ํŠน์„ฑ์ƒ ๋ฌด์†์‹ค ์••์ถ•์— ๋ถˆ๋ฆฌํ•œ ํŽธ์ด๋‹ค.
ํ˜„์žฌ๋กœ์จ๋Š” ๋ฌด์†์‹ค ์••์ถ•์— ํ•œํ•ด์„œ ์ด๋ณด๋‹ค ๋น„์Šทํ•˜๊ฑฐ๋‚˜ ์ข€ ๋” ๋†’์€ ์••์ถ•๋ฅ ์„ ๋ณด์ด๋ฉด์„œ ๋น„์Šทํ•œ ์‹œ๊ธฐ์— ๊ฐœ๋ฐœ๋œ FLIF๊ฐ€ ๊ทธ ์œ„์น˜๋ฅผ ์ฐจ์ง€ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค. ์ผ๋ถ€ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด์„œ๋Š” BPG๋ณด๋‹ค ๋†’์€ ์••์ถ•๋ฅ ์„ ๋ณด์ด๊ธฐ๋„ ํ•œ๋‹ค๊ณ #. ์ด์ชฝ์€ ์‚ฐ์ˆ ๋ถ€ํ˜ธํ™”(Arithmetic coding)์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ํŠนํ—ˆ ๋งŒ๋ฃŒ๋œ ๊ธฐ์ˆ ์ด๋ผ์„œ ๋ฒ•์ ์œผ๋กœ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋งŒ, BPG์™€ ๋น„์Šทํ•˜๊ฒŒ ์—ฐ์‚ฐ๋Ÿ‰์ด ๋งŽ์€ ๊ฒƒ์ด ํ ์ด๋‹ค.
[1] Fabrice Bellard. FFmpeg์™€ QEMU์˜ ์ฐฝ์‹œ์ž์ด๋‹ค.
[3] ํŠนํ—ˆ๋กœ ๋ณดํ˜ธ๋ฐ›๊ณ  ์žˆ๋Š” ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋ผ๊ณ  ํ•œ๋‹ค.#
[4] ๊ทธ๋„ ๊ทธ๋Ÿด ๊ฒƒ์ด, ๊ธฐ์ˆ ์˜ ์›์กฐ๊ฐ€ ๋˜๋Š” H.265๋„ ์ „์šฉ ๋””์ฝ”๋”๊ฐ€ ๋‚˜์˜ค๊ฑฐ๋‚˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ตœ์ ํ™”๊ฐ€ ๋˜๊ธฐ ์ „์—๋Š” ์—„์ฒญ๋‚œ ๋ž™์„ ์œ ๋ฐœํ–ˆ์—ˆ๋‹ค.
[5] ์œ„์˜ ๋น„๊ต ๋ฌธ๋‹จ์—์„œ ์›€์งค ๋งํฌ์— ๋“ค์–ด๊ฐ€๋ฉด ์ž ๊น ํŽ˜์ด์ง€ ๋กœ๋”ฉ์ด ์•ˆ ๋˜๋Š” ๊ฒŒ ๊ทธ ์ด์œ . ๋ฌผ๋ก  ๋ฌดํ•œ๋ฃจํ”„์— ๊ฑธ๋ฆฐ ๊ฒŒ ์•„๋‹ˆ๋ผ์„œ ์ž‘์€ ์›€์งค ์ •๋„๋Š” ์•ฝ 5-6์ดˆ ์ •๋„๋ฉด ์ œ๋Œ€๋กœ ๋Œ์•„์˜ค๊ธฐ๋Š” ํ•œ๋‹ค.