GIF 속도 조절
브라우저에서, 업로드 없이
GIF
0.5× · 0.75× · 1.5× · 2× · 3× · 다시 인코딩하지 않음
GIF
빠르게·느리게, 재인코딩 없이규격
7개 항목| 항목 | 값 | 비고 |
|---|---|---|
| 입력 | 움직이는 GIF | 프레임이 하나뿐인 GIF에는 바꿀 속도가 없다 |
| 출력 | GIF | 같은 프레임, 새 딜레이 |
| 속도 | 0.5× · 0.75× · 1.5× · 2× · 3× | 처음에는 2× |
| 그림 | 저장된 그대로 복사 | 프레임마다 딜레이 숫자만 고쳐 쓴다 |
| 딜레이 단위 | 1/100초 | 반올림하되 전체 길이는 1/100초 안에서 맞춘다 |
| 가장 짧은 딜레이 | 20 ms | 브라우저는 0·10 ms를 100 ms로 재생한다 |
| 처리 위치 | 이 브라우저 | 서버로 보내지 않음 |
무엇이 일어나나
3개무슨 일이, 왜 일어나나
움직이는 GIF를 놓고 얼마나 빠르게 또는 느리게 할지 고른다. GIF는 프레임마다 화면에 머무는 시간(딜레이)을 따로 적어 두는데, 이 페이지가 바꾸는 것은 그 숫자뿐이다. 그림과 색표와 위치는 바이트 그대로 복사되므로 배지는 "다시 인코딩하지 않음"이다. 모든 일은 이 브라우저 안에서 일어나고 GIF는 서버로 가지 않는다.
딜레이는 1/100초 단위로 적힌다. 그래서 모든 속도가 딱 나눠떨어지지는 않는다. 70 ms를 두 배 빠르게 하면 35 ms인데 GIF는 이 값을 담을 수 없다. 딜레이마다 가장 가까운 1/100초로 반올림하고 남은 차이를 다음 프레임으로 넘기므로, 애니메이션 전체 길이는 정확한 값과 1/100초 넘게 벌어지지 않는다. 그런 일이 있었으면 결과 아래 줄이 말한다.
브라우저의 두 가지 관행이 GIF가 얼마나 빨라질 수 있는지를 정한다. 크롬·파이어폭스·사파리는 0 ms나 10 ms로 적힌 딜레이를 100 ms로 재생한다. 그래서 그렇게 적힌 프레임은 실제로 보이던 100 ms를 기준으로 계산한다. 같은 이유로 적힌 대로 재생되는 가장 짧은 딜레이는 20 ms, 초당 50장이다. 그보다 짧아져야 하는 프레임은 20 ms에 머물고, 결과 아래 줄이 GIF가 실제로 몇 배가 됐는지 말한다.
자주 묻는 질문
3개속도를 바꾸면 화질이 떨어지나
아니다. 딜레이 숫자만 고쳐 쓰고, 모든 프레임의 그림은 색표까지 파일에 저장된 그대로 복사한다. 파일 크기도 원본과 같거나 몇 바이트 차이다.
3배를 골랐는데 3배가 아닌 이유
이미 빠른 프레임은 20 ms 바닥에 닿는다. 30 ms 프레임을 3배로 하면 10 ms인데, 브라우저는 이것을 100 ms로 보여 준다. 빨라지는 게 아니라 느려진다. 그런 프레임은 20 ms에 머물고, 결과 아래 줄이 GIF의 실제 속도를 적는다.
프레임 하나의 시간만 바꿀 수 있나
이 페이지에서는 안 된다. 모든 프레임을 같은 배수로 바꾸므로 애니메이션의 리듬은 그대로다.