다운로드 전에 자르기 vs 다운로드 후 자르기: 2026년 어느 것이 더 나을까
다운로드 전 자르기는 원하는 클립만 가져와 대역폭과 시간을 절약합니다. ffmpeg와 온라인 도구의 장단점을 비교합니다.
2시간 스트림에서 90초 구간 하나만 필요합니다. 이를 얻는 방법은 두 가지가 있으며, 사람들은 종교적 질문인 양 어느 것이 “올바른”지 논쟁합니다. 하지만 그렇지 않습니다. 이들은 두 가지 엔지니어링 트레이드오프이며, 더 나은 방법은 당신이 실제로 신경 쓰는 것이 무엇인지에 따라 달라집니다: 대역폭, 프레임 정확성, 품질, 또는 소스가 로그인 뒤에 있는지 여부입니다.
두 가지 철학은 다음과 같습니다:
- 다운로드 전에 자르기 — 정확한 시작/종료 지점을 먼저 파악한 다음, 그 범위 내의 바이트만 가져옵니다. 원하지 않는 부분은 절대 다운로드하지 않습니다.
- 다운로드 후 자르기 — 전체 파일(또는 전체 스트림)을 받아온 후, ffmpeg 같은 도구로 로컬에서 클립을 잘라냅니다.
이 글에서는 각각의 실제 트레이드오프를 설명하고, ffmpeg을 제대로 다루며(많은 클립을 망치는 가장 흔한 실수인 -ss 배치를 포함), 온라인 트리머에 대해 솔직하게 설명하고, 브라우저 확장 프로그램이 어디에 적합한지 설명합니다. 글의 끝 부분에 비교 표가 있으니 글을 건너뛰고 싶으시면 참고하시면 됩니다.
핵심 차이점: 실제로 무엇이 다운로드되는가
전체 논쟁은 한 가지 질문으로 귀결됩니다: 버릴 바이트를 가져오나요?
최신 스트리밍 비디오(HLS 또는 DASH)는 하나의 파일이 아닙니다. 이것은 일반적으로 각각 2–10초 길이인 수백 개의 작은 세그먼트를 가리키는 매니페스트(.m3u8 또는 .mpd 플레이리스트)입니다. 2시간 비디오의 47:00~48:30분 부분을 원한다면, 그 90초는 아마도 15–45개의 세그먼트에 있습니다. 나머지 약 3,000개 세그먼트는 당신과 무관합니다.
- 다운로드 후 자르기는 약 3,000개의 세그먼트를 모두 가져오고, 여러 기가바이트의 파일을 조립한 후, 클립을 자를 때 99%를 삭제합니다. 클립을 위해 전체 대역폭과 저장소 비용을 지불합니다.
- 다운로드 전에 자르기는 시작/종료 지점을 세그먼트 범위로 변환하고, 해당 범위만 요청하고, 작은 파일을 조립합니다. 당신은 대략 클립 길이에 비례하는 비용을 지불합니다.
긴 비디오에서 짧은 클립의 경우 차이는 엄청납니다 — 종종 30MB 다운로드와 4GB 다운로드의 차이입니다. 이것이 다운로드 전 자르기가 존재하는 주된 이유이며, 이는 마케팅이 아닌 실제 측정 가능한 절감입니다.
문제는 다운로드 전 자르기가 세그먼트 경계만큼만 정확하다는 것입니다(아래에서 더 설명함), 그리고 매니페스트를 이해하고 부분 범위를 가져올 수 있는 도구가 필요합니다. 다운로드 후 자르기는 특별한 프로토콜 인식 없이 디스크에 이미 있는 문자 그대로 모든 파일에서 작동합니다. 둘 다 장점이 있습니다.
방법 1: ffmpeg으로 다운로드 후 자르기
이미 전체 파일을 가지고 있거나, 전체 파일이 필요하고 단지 클립을 추출하는 경우라면, ffmpeg이 올바른 도구입니다. 무료이고 스크립트 가능하며, 올바르게 사용하면 손실 없습니다.
빠르고 손실 없는 컷: 스트림 복사
ffmpeg -ss 00:10:00 -to 00:15:00 -i input.mp4 -c copy out.mp4
이것은 10:00에서 15:00 사이의 5분을 추출합니다. 중요한 플래그는 -c copy이며, 이것은 ffmpeg에게 기존 오디오 및 비디오 스트림을 재인코딩 없이 복사하도록 지시합니다. 디코딩 없음, 재압축 없음. 거대한 파일에서도 초 단위로 실행되며, 출력은 소스와 비트 대 비트로 동일한 품질입니다. 생성 손실은 없습니다.
-c copy의 대가는 키프레임 경계에서만 자를 수 있다는 것입니다. 비디오는 가끔 전체 프레임(키프레임 / I-프레임)과 그 다음 이전 프레임의 차이만 저장하는 많은 프레임으로 압축됩니다. 차이 프레임에서 깨끗한 클립을 시작할 수 없습니다. 왜냐하면 그것이 diff할 것이 없기 때문입니다. 따라서 ffmpeg은 시작점을 가장 가까운 앞쪽의 키프레임으로 스냅합니다. 일반적인 2–10초의 키프레임 간격으로, 실제 컷은 요청한 것보다 1~2초 더 일찍 발생할 수 있습니다. 대부분의 클립에서는 보이지 않습니다. 프레임 정확한 편집의 경우 충분하지 않습니다.
-ss before -i vs after -i — 위험한 함정
이것은 ffmpeg의 트리밍에 관한 가장 오해받는 사항이며, 잘못 사용하면 검은색/정지된 소개 또는 느린 컷이 생깁니다.
-ss before -i (입력 시킹):
ffmpeg -ss 00:10:00 -i input.mp4 -c copy out.mp4
ffmpeg은 읽기 시작 전에 대략 그 타임스탬프로 시킹합니다 — 파일 인덱스의 가장 가까운 키프레임으로 직접 이동합니다. 이것은 빠릅니다(버려지는 부분을 디코딩하지 않음) 하지만 키프레임으로 제한되므로, 시작은 근사합니다. -c copy를 사용하면 이것은 속도를 위해 정확히 원하는 것입니다.
-ss after -i (출력 시킹):
ffmpeg -i input.mp4 -ss 00:10:00 -c copy out.mp4
여기서 ffmpeg은 파일을 맨 처음부터 읽고, 10:00까지 모든 것을 디코딩/버린 후, 쓰기를 시작합니다. 이것은 프레임 정확하지만 긴 입력에서 느립니다. 시작점 전의 모든 것을 처리하기 때문입니다. 1:55:00 시작점이 있는 2시간 파일에서, 거의 2시간의 입력을 처리하는 동안 기다릴 것입니다.
역사적인 “입력 시킹이 부정확하다”는 평판은 대부분 최신 ffmpeg에서 재인코딩 경우에 고쳐졌습니다 — 재인코딩할 때, ffmpeg은 -ss를 -i 전에 놓을 수 있으며 여전히 인코드 중 트리밍으로 프레임 정확한 결과를 생성합니다. 하지만 -c copy를 사용하면 -ss가 어디에 가든 기본적으로 키프레임으로 제한되어 있습니다. 왜냐하면 복사는 새 키프레임을 만들 수 없기 때문입니다.
경험 법칙:
- 빠르길 원하고 ±1–2초는 괜찮습니까?
-ssbefore-i,-c copy. - 프레임 정확성을 원하고 재인코딩도 괜찮습니까?
-ssbefore-i, 그리고 재인코딩(아래 참고). - 긴 파일에서
-ssafter-i를 피하세요. 특정 이유가 있지 않으면 — 가장 느린 옵션입니다.
프레임 정확한 컷: 재인코딩
정확한 프레임에서 클립을 시작해야 할 때 — 밈 컷, 스포츠 리플레이, 정확한 인용 — 스트림 복사는 할 수 없습니다. ffmpeg이 시작점에 새 키프레임을 만들 수 있도록 재인코딩해야 합니다:
ffmpeg -ss 00:10:00 -to 00:15:00 -i input.mp4 \
-c:v libx264 -crf 18 -preset medium \
-c:a aac -b:a 192k out.mp4
이것은 밀리초 수준의 프레임 정확합니다. 정직한 비용:
- 더 느립니다. 범위의 모든 프레임을 디코딩하고 재압축합니다. 초가 아닌 분 단위입니다.
- 품질 손실. 손실 비디오를 손실 비디오로 재인코딩하면 항상 어느 정도의 품질이 손실됩니다.
-crf 18은 시각적으로 거의 투명하며 대부분의 용도에 적합하지만,-c copy처럼 소스와 비트 동일하지는 않습니다.
따라서 트레이드오프는 실제이고 대칭입니다: 복사는 빠르고 손실 없지만 대략적입니다. 재인코딩은 정확하지만 더 느리고 약간의 손실이 있습니다. 컷 지점이 정확해야 하는지 여부에 따라 선택하세요.
ffmpeg을 스트림 URL로 직접 가리키기
항상 파일을 디스크에 먼저 가져야 하는 것은 아닙니다. ffmpeg은 URL을 가져올 수 있습니다 — .m3u8 포함 — 직접 -i로, 그리고 -ss/-t와 결합하면 이것은 부분 다운로드가 됩니다:
ffmpeg -ss 00:47:00 -t 00:01:30 \
-i "https://example.com/video/master.m3u8" \
-c copy clip.mp4
-t 00:01:30은 “90초 지속 시간”을 의미합니다(절대 종료 시간인 -to와 대조적으로). ffmpeg이 플레이리스트로 시킹할 수 있기 때문에, 전체 스트림이 아닌 범위를 다루는 세그먼트를 대략 가져옵니다 — 따라서 이것 은 명령줄에서 다운로드 전 자르기의 한 형태입니다. 작동할 때, 이것은 훌륭합니다.
주의 사항은 이것이 고통스러워지는 지점이며, 이것이 CLI가 항상 충분하지 않은 이유입니다:
- 인증. 스트림에 쿠키나 로그인된 세션이 필요하면, 단순 ffmpeg은 없습니다. 403을 얻습니다. 헤더를 전달할 수 있습니다(
-headers "Cookie: ...") 하지만 DevTools에서 직접 추출해야 하며, 만료됩니다. - 만료되는 서명된 URL. 많은 CDN은 30–120초 동안 유효한 서명이 있는 URL을 제공합니다. URL을 복사하고 명령을 입력할 때쯤이면 이미 죽어 있을 수 있습니다 — 그리고 ffmpeg은 다운로드 중에 새로 고칠 수 없습니다.
- 별도의 오디오/비디오 매니페스트. 최신 HLS는 종종 비디오와 오디오를 별도의 플레이리스트로 제공하므로, 단일
-i master.m3u8은 무음 비디오를 줄 수 있습니다. 결국 두 개의-i입력과 수동 페어링이 필요합니다 — 이는 고유의 토끼굴입니다. 우리는 그 특정 실패를 HLS 다운로드 오디오/비디오 분할 수정에서 설명했습니다.
공개, 인증 없는 VOD와 믹싱된 오디오의 경우, ffmpeg-against-a-URL 접근은 정말 훌륭합니다. 이상적에서 벗어날수록, 더 많은 마찰을 마주합니다. 전체 매니페스트 처리 안내는 m3u8 / HLS 스트림 다운로드 방법을 참고하세요.
방법 2: 온라인 비디오 트리머
URL을 붙이거나 파일을 업로드하고, 두 개의 핸들을 끌어다 놓고, 내보내기를 클릭하고, 클립을 다운로드합니다. 온라인 트리머는 설치 없이 사용할 수 있으며, 일회용 소형 파일의 경우 정말 편합니다. 공정한 청취를 받을 만 하지만, 비용을 명확하게 이해하세요.
- 당신은 비디오를 다른 사람의 서버로 업로드합니다. 개인, 내부 또는 민감한 모든 것에 대해, 그것이 게임 전부입니다 — 파일은 머신을 떠나 당신이 제어하지 않는 보존 기간 동안 제3자 인프라에 있습니다.
- 크기 및 길이 제한. 무료 계층은 일반적으로 업로드를 수백 MB 또는 몇 분으로 제한하며, 이는 트리밍이 가장 중요한 긴 소스 경우를 정확히 배제합니다.
- 재인코딩 품질 손실. 대부분의 온라인 트리머는 내보낼 때 재인코딩하며, 비트레이트를 거의 제어할 수 없으므로, ffmpeg 재인코딩과 유사하거나(종종 더 나쁜) 품질 손실을 받습니다 —
-crf노브 없이 조정할 수 없습니다. - 스트림에 대해 “다운로드 전에 자르기”를 해결하지 않습니다. URL을 가져가는 온라인 트리머는 보통 서버 측에서 전체 비디오를 먼저 가져가야 하므로, 당신의 끝에서 대역폭 절감을 얻지 못합니다 — 당신은 단지 전체 다운로드를 그들의 서버로 이동했을 뿐입니다.
- 로그인 상속 없음. 그들은 당신의 인증된 세션을 볼 수 없으므로, 페이월이나 로그인 뒤에 있는 것은 문제가 됩니다.
온라인 트리머가 올바른 선택인 경우: 파일이 이미 작고, 민감하지 않으며, ffmpeg이 설치되지 않았고, 한 번만 필요합니다. 그 상자 밖에서는, 그들은 가장 약한 옵션입니다.
방법 3: 브라우저에서 다운로드 전에 자르기
세 번째 경로는 둘 다의 최고를 얻으려고 시도합니다: 선택한 범위만 가져오는 대역폭 효율 더하기 실제 브라우저 세션 내에서 실행하는 소스 접근. 이것이 Video Downloader One-for-All(v1.1.38, 2026년 6월), Chrome 및 Edge용 HLS/DASH 다운로더 확장 프로그램의 클립 & 자르기 다운로드 기능 뒤의 설계입니다.
실제로 어떻게 작동하는지:
- 확장 프로그램이 보는 동안 페이지의 HLS 또는 DASH 온디맨드 스트림을 감지합니다.
- 정확한 시작 지점과 종료 지점을 설정할 수 있는 검색 가능한 미리보기를 제공합니다 — 프레임으로 스크럽하고, 핸들을 놓습니다.
- 다운로드 시, 그 범위를 기본 세그먼트로 변환하고 선택한 범위 내의 세그먼트만 가져옵니다. 클립 밖의 부분은 절대 다운로드되지 않습니다.
- 확장 프로그램이 페이지 내 확장 프로그램으로 실행되기 때문에, 로그인 세션을 상속받습니다 — 동일한 쿠키, 동일한 헤더, 동일한 출처 — 따라서 인증되고 서명된 URL 스트림이 단순 CLI를 패배시키고도 작동합니다.
“선택한 세그먼트만 가져옵니다” 부분은 이것을 단순 다운로드의 화려한 프론트엔드가 아닌 진정한 트리밍 전 다운로드로 만드는 것입니다. 긴 소스의 짧은 클립에서, 그것은 이상적인 ffmpeg -ss ... -i url 경우와 동일한 대역폭 및 저장소 절감입니다 — URL을 찾지 않고, 만료 서명 경쟁 없이, 분할 오디오/비디오 매니페스트를 수동으로 페어링하지 않고.
정직한 제한, 중요하기 때문에:
- 컷은 세그먼트로 제한됩니다, ffmpeg의
-c copy처럼 — 저장된 클립은 정확한 프레임이 아닌 세그먼트 가장자리(일반적으로 ±몇 초)에서 시작하고 종료합니다. 프레임 완벽한 컷이 필요하면, 여전히 결과를 나중에 재인코딩합니다(ffmpeg, 한 명령). 트레이드오프는 빠른 경로를 빠르게 하는 것과 동일한 키프레임/세그먼트 제한입니다. - 온디맨드 HLS 및 DASH를 대상으로 합니다. 라이브 녹음은 다른 기능입니다; 그것에 대해서는 라이브 스트림 레코더가 관련 페이지입니다.
- 그것은 다운로드 효율 도구이지, 마법 우회가 아닙니다 — DRM으로 보호된 비디오는 설계상 도달 불가능합니다.
클립 & 자르기 다운로드는 무료 및 유료 계획 모두에서 사용 가능합니다(가격 책정에서 차이점 참고), 더 광범위한 스트림 처리는 HLS 다운로더 페이지에 있습니다. 섹션을 가져가는 작업 중심 안내의 경우, 우리는 비디오의 일부를 다운로드하는 방법도 가지고 있습니다.
나란히 비교
전체 의사 결정이 한 표에 있습니다. “대역폭을 절약합니다”는 당신이 버릴 부분을 다운로드하지 않음을 의미합니다.
| 방법 | 대역폭 절약? | 프레임 정확한? | 원본 품질 유지? | CLI 필요? | 로그인 뒤에서 작동? |
|---|---|---|---|---|---|
ffmpeg -c copy (로컬 파일) | 아니요 — 이미 전체 파일이 있음 | 아니요 (키프레임으로 제한) | 예 (손실 없는 복사) | 예 | N/A (파일이 이미 로컬) |
| ffmpeg 재인코딩 (로컬 파일) | 아니요 | 예 | 아니요 (재압축) | 예 | N/A |
ffmpeg -ss/-t 스트림 URL에 대해 | 예 (범위를 다루는 세그먼트 가져옴) | 아니요 (키프레임으로 제한) | 예 (-c copy 사용 시) | 예 | 유효한 쿠키/헤더를 수동으로 제공할 경우만 |
| 온라인 트리머 | 아니요 (서버가 전체 항목을 가져옴) | 대개 아니요 | 아니요 (재인코딩) | 아니요 | 아니요 |
| 브라우저 내 다운로드 전 자르기 (OFA) | 예 (선택한 세그먼트만 가져옴) | 아니요 (세그먼트로 제한) | 예 (재인코딩 없음) | 아니요 | 예 (세션 상속) |
표에서 읽을 몇 가지:
- 여기서는 프레임 정확하고 동시에 대역폭 절약하고 동시에 손실 없는 것이 없습니다. 프레임 정확성은 재인코딩(품질 비용)이나 전체 파일(대역폭 비용)이 필요합니다. 이것은 도구 갭이 아닙니다 — 그것은 압축된 비디오의 키프레임 구조입니다. 당신이 신경 쓰는 두 가지를 선택하세요.
- 당신의 대역폭을 스트림에서 절약하는 유일한 옵션은 부분 범위를 가져오는 두 가지입니다: URL에 대한 ffmpeg, 그리고 브라우저 내 확장. 다른 모든 것은 전체 페이로드를 어딘가로 이동합니다.
- CLI 옵션은 품질에서 아무것도 포기하지 않습니다(
-c copy사용 시) 하지만 인증, URL, 매니페스트 페어링을 직접 처리하도록 요청합니다.
그럼 어느 것을 사용해야 할까요?
- 이미 디스크에 파일이 있고 빠르고 손실 없는 클립을 원합니다. ffmpeg
-ssbefore-i와-c copy. 초 단위로 완료됩니다. - 프레임 정확한 컷이 필요합니다.
-crf 18으로 ffmpeg 재인코딩합니다. 약간의 품질 손실과 추가 시간을 받아들입니다. - 소스가 공개, 인증 없는, 믹싱된 VOD 스트림이고 당신은 터미널에서 편하십니다.
ffmpeg -ss ... -t ... -i "url" -c copy— 이것은 다운로드 전에 자르고 타이핑 비용만 들어갑니다. - 작고, 민감하지 않은 파일이고 한 번만 설치 없이 필요합니다. 온라인 트리머는 괜찮습니다.
- 긴 스트림에서 클립만 원하고, 소스가 로그인이 필요하거나 만료되는 URL을 제공하고, 및/또는 오디오와 비디오가 분할되어 있습니다 — 그리고 그것을 위해 ffmpeg을 감시하고 싶지 않습니다. 이것이 브라우저 내 Video Downloader One-for-All 다운로드 전 자르기가 만들어진 경우입니다: 선택한 범위만 가져오고, 세션 내에서 실행되므로 인증이 무료입니다.
항상 저장할 권리가 있는 콘텐츠만 다운로드하세요 — 당신의 업로드, 적절히 라이선스된 자료, 또는 조건이 허락하는 콘텐츠.
결론
“다운로드 전에 자르기”와 “다운로드 후 자르기”는 경쟁자라기보다 다른 질문에 대한 답입니다. 파일이 이미 로컬이면, 당신은 정말 단지 ffmpeg을 하는 것입니다, 그리고 유일한 실제 결정은 복사(빠르고, 손실 없고, 대략적) 대 재인코딩(정확하고, 느리고, 약간 손실) — 더하기 -i 올바른 쪽에 -ss 얻기입니다. 소스가 긴 스트림이고 슬라이스만 원한다면, 다운로드 전 자르기는 버릴 바이트를 지불하지 않는 유일한 접근입니다 — 그리고 브라우저 내에서 이를 수행하는 것이 그 효율성이 로그인 게이팅된, 서명된 URL, 분할 매니페스트 스트림과 공존할 수 있게 하는 것입니다. 이들은 단순 CLI를 옆으로 보냅니다.
당신이 최적화하는 것에 방법을 맞추고, 누군가가 정답이 하나 있다고 당신에게 말하도록 하지 마세요.