동영상 온라인 압축

목표 용량만 고르면 압축기가 반드시 맞춥니다 — 모든 처리가 브라우저 안에서, 파일은 어떤 서버로도 전송되지 않습니다.

Drop any file here

or

Video, audio, image, or PDF — any size, no upload

🔒 Files never leave your device — everything runs in your browser.

압축기는 어떻게 결정하는가

용량을 입력하면 도구는 그것을 비트 예산으로 바꿉니다: 목표 바이트에 8을 곱하고 재생 시간으로 나눈 값입니다. 첫 번째 패스는 그중 93%만 인코더에 건네는데, 컨테이너도 바이트를 차지하고 하드웨어 인코더는 목표를 넘기는 경향이 있기 때문입니다. 오디오는 고정된 몫을 가져갑니다 — 전체가 1.5 Mbps 이상이면 128 kbps, 목표가 빡빡해질수록 96, 64, 48 kbps로 내려갑니다 — 그리고 나머지가 영상의 몫입니다. 영상 몫이 80 kbps 아래로 떨어질 상황이면 뭉개진 화면을 내보내는 대신 오디오를 빼고, 결과에 그 사실을 표시합니다.

해상도는 영상 비트레이트가 프레임당 픽셀당 0.045비트를 유지할 수 있는 동안 그대로 지킵니다. 그 아래로 내려가면 도구는 고정된 단계 — 2160, 1440, 1080, 720, 540, 480, 360, 240 — 를 한 단씩 내려가되 결코 업스케일하지 않고, 바뀐 해상도를 결과에 보고합니다. 10 MB 목표에서는 30초 클립이 보통 1080p나 720p를 유지하고, 2분 안팎이면 480p급 출력을 예상하면 됩니다.

목표는 약속이므로 도구는 자기 결과를 스스로 검사합니다. 첫 번째 패스는 대개 5–13% 초과로 나오고, 그러면 보정치를 누적해 인코딩을 다시 실행합니다 — 최대 세 번까지, 그리고 두 번째 패스에서 거의 항상 목표 안에 들어옵니다. 80 kbps 하한선으로도 들어가지 않는다면 깨진 파일을 건네는 대신 거부합니다 — “더 큰 용량을 선택하거나 동영상을 먼저 잘라내세요.” 이미 목표보다 작은 파일은 손대지 않고 그대로 돌려줍니다.

슬라이더는 다른 모드입니다: 빠른 패스 한 번, 용량 보장 없음, 세 구간 — 약하게(Light), 균형(Balanced), 강하게(Strong). 구간을 따라 상한이 프레임당 픽셀당 0.14비트에서 0.025비트로 내려가고, 원본을 기준으로도 제한됩니다(가장 순한 설정에서 원본 비트레이트의 85%, 가장 강한 설정에서 22%). 그래서 인코딩이 원본이 지닌 것보다 더 많은 비트를 쓰는 일은 없습니다. '약하게'는 의도적으로 절제되어 있습니다: 해상도를 최대 한 단만 내리고(1080p가 720p가 될 수는 있지만 480p로는 가지 않습니다), 이미 '약하게' 예산의 절반도 쓰지 않는 원본은 정직한 안내와 함께 바이트 하나 바뀌지 않고 돌아옵니다. 용량이 큰 iPhone 영상은 여전히 압축됩니다. '균형'과 '강하게'에서는 메모리에서 만들어진 결과가 실시간 추정치의 1.5배를 넘으면 그 추정치를 목표로 정확한 용량 모드에서 다시 인코딩합니다.

엔진은 둘이고, 둘 다 사용자의 기기에서 돕니다. WebCodecs는 기기의 영상 하드웨어를 사용하며 먼저 실행되고, 어디서나 재생되는 유일한 코덱이라는 이유로 H.264를 우선합니다 — MKV나 WebM이 MP4로 나오는 이유입니다. 브라우저가 컨테이너를 읽지 못하거나(AVI, FLV, WMV, 3GP, MPG) 구형 Firefox처럼 WebCodecs가 없으면, 같은 작업이 ffmpeg.wasm 폴백에서 실행됩니다 — 영상 하드웨어 대신 소프트웨어로, 여전히 업로드는 없습니다.

실제로 필요한 용량은 얼마인가?

대부분의 압축은 다른 누군가가 정한 상한을 통과하기 위해 합니다. 아래 숫자는 각 플랫폼이 스스로 문서화한 값이고 — 링크된 페이지에 프리셋과 세부 조건이 있습니다 — 바이트 상한이 공개되지 않은 곳은 값을 지어내는 대신 표에 그렇게 적었습니다.

플랫폼문서화된 상한사람들이 걸리는 지점
Discord 무료 10 MB · Nitro Basic 50 MB · Nitro 500 MB 바이트 단위로 검사되며, 서버가 아니라 업로드하는 사람의 구독 등급을 따릅니다.
WhatsApp 상태 16 MB, 채팅은 훨씬 큰 파일도 받습니다 30초를 넘는 상태 클립은 나뉘어 올라가고, 큰 채팅 동영상은 가장 심하게 재압축됩니다.
이메일 Gmail·Yahoo 25 MB, Outlook.com 20 MB — 공표된 수치 Base64가 첨부 파일을 약 33% 부풀립니다: 실질적 상한은 약 18 MB(Gmail)와 15 MB(Outlook), 회사 메일 서버는 흔히 10 MB입니다.
Telegram 2 GB(Premium은 4 GB) 원본 그대로 보내려면 파일로 전송하세요. 50–100 MB는 몇 초면 전송됩니다.
Messenger 채팅 미디어 25 MB · 파일 첨부 100 MB(모바일) 파일로 보내면 인라인 재생이 없습니다 — 받는 쪽이 내려받아야 합니다.
WeChat 채팅 동영상 20 MB 미만 사진 10 MB, 앱 내 녹화 15초. 파일 전송 상한은 공개된 것이 없어 적지 않았습니다.
Slack 모든 요금제에서 파일당 1 GB 무료 요금제: 파일이 90일 뒤 보이지 않게 되고 1년 뒤 삭제됩니다 — 용량이 아니라 보존 기간의 문제입니다.
카카오톡 휴대폰과 PC 모두 파일당 300 MB 모든 파일 형식에 적용되며, 이를 올려 주는 유료 등급은 없습니다.
Zalo 파일당 1 GB 100 MB 이하 미디어는 장기 보관되고, 더 무거운 미디어는 만료될 수 있습니다.
Twitter (X) 512 MB, 2분 20초(일반 계정) MP4 또는 MOV. Premium은 더 허용하지만, X는 모든 업로드를 재인코딩합니다.
Instagram 바이트 상한 미공개 — 프리셋은 스토리 25 MB · 릴스 50 MB · 긴 동영상 100 MB 모든 업로드를 재인코딩하며, 너무 큰 파일이 가장 심하게 눌립니다.
TikTok 웹: 10 GB 미만, 30분 이내 · API/예약 게시 4 GB · Ads Manager 500 MB 앱은 바이트가 아니라 길이(60분)만 문서화합니다. “iPhone 287 MB 제한”은 어느 공식 페이지에도 없습니다.
YouTube 256 GB 또는 12시간(전화 인증 전에는 15분) 권장 비트레이트는 1080p에서 약 8 Mbps, 720p에서 5 Mbps — 그 이상의 바이트는 대부분 버려집니다.

문제의 대부분은 두 가지 패턴에서 생깁니다. 이메일은 파일이 아니라 인코딩된 메시지를 측정하므로, 이메일 페이지는 공표된 25와 20이 아니라 Gmail 18 MB, Outlook 15 MB를 겨냥합니다. 그리고 채팅 앱은 두 갈래로 움직입니다 — Messenger는 인라인 25 MB와 파일 100 MB, WhatsApp은 상태 16 MB와 훨씬 큰 채팅. 어느 플랫폼 페이지도 다루지 않는 상한이라면, 용량별 페이지가 2 MB부터 8 MB, 25 MB, 100 MB를 거쳐 200 MB까지 이어집니다.

먼저 잘라내고, 그다음 압축

도구가 목표를 거부할 때 메시지는 “동영상을 먼저 잘라내세요”로 끝나는데, 빈말이 아닙니다: 10 MB에 꽉 짜인 1분 클립이 같은 예산에 짓눌린 10분짜리보다 거의 항상 더 낫게 보입니다. 동영상 트림은 실제 플레이어를 띄웁니다. H.264 파일의 끝부분만 잘라내면 재인코딩 없이 스트림을 그대로 복사하고, 시작점을 옮기면(또는 다른 코덱이면) 사용자의 영상 하드웨어에서 프레임 단위로 정확하게 재인코딩합니다. 동영상 자르기는 먼저 9:16, 1:1, 16:9, 4:3에 맞춰 주므로, 남기는 픽셀에만 비트레이트가 쓰입니다. 브라우저가 재생하지 않는 형식 — AVI, WMV, 흔히 옛 휴대폰의 3GP나 방송용 TS — 은 두 도구 모두에서 미리보기가 나오지 않습니다: 먼저 MP4로 변환하세요. 소리만 필요하다면 압축을 건너뛰고 MP3를 추출하세요. 그리고 압축은 한 번만: 재인코딩을 반복하면 화질 손실이 누적되므로, 최종 목표는 원본에서 실행하세요.

목적별 압축 도구

자주 묻는 질문

요청한 정확한 용량을 어떻게 맞추나요?

용량 예산을 영상과 오디오에 배분하고, 필요하면 해상도를 조정한 뒤 결과를 검증합니다 — 초과하면 목표 안에 들어올 때까지 재인코딩합니다.

어떤 형식을 지원하나요?

MP4·MOV·WebM·MKV와 옛 형식(AVI·FLV·WMV·MPG)까지. 출력은 어디서나 재생되는 MP4(H.264)입니다 — Discord, WhatsApp, 이메일, TV.

동영상이 서버에 업로드되나요?

아니요. 모든 처리가 기기의 하드웨어 가속으로 브라우저 안에서 이뤄집니다. 동영상은 기기 밖으로 나가지 않습니다.

'약하게', '균형', '강하게'는 실제로 무엇을 하나요?

원본 비트레이트 중 얼마를 남길지를 정합니다 — 가장 순한 설정에서 85%, 가장 강한 설정에서 22% — 그리고 그 위에는 프레임당 픽셀당 0.14비트에서 0.025비트로 내려가는 상한이 있습니다. '약하게'는 128 kbps 오디오를 유지하고 해상도를 최대 한 단만 내립니다. '강하게'는 96 kbps 오디오를 쓰고 예산이 요구하는 만큼 해상도를 내립니다. 셋 중 어느 것도 바이트 수를 보장하지 않습니다 — 그게 필요하면 정확한 용량을 지정하세요.

왜 파일이 그대로 돌아왔나요?

정직한 이유가 둘 있습니다. 정확한 용량 모드에서는 이미 목표보다 작은 파일은 손대지 않고 돌려줍니다 — 예산에 맞춰 압축하는 일이 파일을 키워서는 안 되기 때문입니다. '약하게'에서는 이미 '약하게'의 픽셀당 비트 예산의 절반도 쓰지 않는 원본(화면 녹화, 가벼운 다운로드 파일)은 재인코딩으로 화질만 잃을 뿐이므로, 안내와 함께 바이트 하나 바뀌지 않고 돌아옵니다. 그래도 줄이고 싶다면 '균형'으로 바꾸거나 정확한 용량을 지정하세요.

2 GB 파일도 압축할 수 있나요?

네 — 입력 용량 제한은 없습니다. 파일은 업로드되지 않고 디스크에서 바로 읽히기 때문입니다. Chromium 계열 브라우저에서는 300 MB 이상인 파일 하나를 처리할 때 먼저 저장 위치를 묻고, 인코딩하는 동안 결과를 디스크에 곧바로 기록하므로 메모리 사용량이 일정하게 유지됩니다. 다른 브라우저는 작업을 메모리에서 실행하며, 파일이 기기에 비해 크면 도구가 먼저 경고합니다. 하드웨어 가속 패스는 보통 실시간에 가까운 속도로 돕니다.