Thief of Wealth
article thumbnail

GIF는 움직이는 이미지로써, 이미지 처럼 바로 첨부하고 사용할 수 있다는 장점을 가져서 인기가 높다.

 

하지만, 이 기술은 30년이 넘은 기술로... 비효율적이다.

 

위 그림을 보자.

육안으로는 이미지의 품질이 별반 다르지 않게 느껴진다.

하지만.. 용량은 10배이상 차이가난다!

 

즉, GIF는 불필요하게 대역폭을 낭비해서 엄청나게 많은 전송량을 발생시킨다.

 

그 이유는, GIF의 경우, 256색을 표현할 수 있는 컬러 팔레트와,

각 프레임의 모든 픽셀에 대한 정보를 무손실 압축 데이터로 담고 있는데,

H.264같은 비디오 포매ㅅ은 기본적으로 손실 압축이고, GIF와 비교해서 다양한 최적화 기술이 들어간다.

 

그래서, GIF는 압축효율이 낮아서 불필요하게 대역폭을 낭비한다!

 

다른 이유도 있다.

 

압축된 비디오를 디코딩하는 기술과 관련이 있다. 원래 디코딩은 CPU의 몫이었는데 GPU가 등장하면서 그 속도가 빨라졌다.

GPU를 통한 하드웨어 디코딩이 불가능하다면 유투브도 2시간이상 지속하기 힘들것이라고 한다.

 

근데 GIF는 GPU에서 디코딩을 지원하지 않는다.

오로지 CPU에서 디코딩이된다. CPU를 많이 쓴다는 것은.. 더 많은 배터리를 소모하고, 저사양 디바이스에서 사용이 어려움을 암시한다.

 

그 외 다른이유는 컬러 팔레트에서 최대 사용가능한 색상의 수가 256색으로 제한되어 있다.

또한 GIF89a 규격에 GIF는 애니메이션을 위해 디자인 되지 않았다. 라고 명시되어있다.

 

그래서 아래 글에서 제시하는 결론은 다음과 같다.

1. GIF는 거품 덩어리이며, 모두에게 손해다. (용량, 배터리, 대역폭 등)

2. GIF를 Video로 변환해서 제공하자. 

'개발 > FrontEnd Interview' 카테고리의 다른 글

호이스팅이란 무엇이고, 왜 지양해야하나?  (0) 2021.04.06
함수 선언식, 함수 표현식  (0) 2021.04.06
라이브러리? 프레임워크?  (2) 2021.04.05
ECMA script 란?  (0) 2021.04.05
em? rem?  (2) 2021.04.05
profile on loading

Loading...