영상 일부분을 블러 처리하거나 검게 가리는 방법
영상의 일부를 블러 처리하려면 Sume에서 FFmpeg filtergraph 하나로 영역을 잘라 블러를 적용한 뒤 제자리에 다시 올리세요. 아니면 속이 채워진 drawbox로 가리세요.

영상의 일부를 블러 처리하려면 프레임을 복사하고, 복사본에서 가리고 싶은 영역을 잘라 내 블러를 적용한 뒤, 같은 위치에 다시 올리세요. 그 영역을 완전히 가리려면 대신 속이 채워진 박스를 그 위에 그리세요. FFmpeg에서는 어느 쪽이든 filtergraph 하나(split, crop, gblur, overlay, 또는 drawbox)로 되며, Sume의 POST /v1/video-filter가 이미 media.sume.com에 호스팅된 클립에 이를 실행해 새 MP4를 반환합니다. 고정된 숫자를 쓰면 영역이 클립 내내 같은 자리에 머물기 때문에, 움직이는 얼굴이나 번호판을 따라가지 않습니다.
필터 문법은 FFmpeg 필터 문서를, Sume 관련 내용은 영상 필터와 영상 프레임 문서, Sume API 레퍼런스를 따르며, 모두 2026-09-27에 확인했습니다. Sume 필터 컴파일러에서 확인한 동작은 현재 동작하는 방식대로 설명합니다.
영상의 고정된 영역을 블러 처리하려면 어떻게 하나요?
프레임의 왼쪽 위 모서리를 기준으로 영역을 픽셀 단위로 잰 다음, 그 값으로 split[main][copy];[copy]crop=400:120:760:900,gblur=sigma=20[blurred];[main][blurred]overlay=760:900 그래프를 채우세요. 화면의 일부를 처리해 그 위에 다시 올릴 때 FFmpeg 문서가 직접 쓰는 패턴입니다.
split은 프레임을 두 개로 복사하고 각각[main]과[copy]라는 라벨을 붙입니다.crop=400:120:760:900은 복사본에서 왼쪽 위 모서리가 x 760, y 900에 있는 400×120 영역을 남깁니다.gblur=sigma=20은 그 영역을 블러 처리합니다.sigma는 가우시안 블러의 표준편차로 기본값은 0.5이며,sigmaV를 따로 설정하지 않으면 세로 방향에도 적용됩니다. 값이 클수록 더 많이 흐려집니다.overlay=760:900은 블러 처리된 영역을 같은 x, y 위치에 맞춰[main]위에 다시 올립니다.- 서버가 입력과 출력을 공급하므로, Sume는
[main]같은 내부 라벨은 받지만[0:v]같은 스트림 지정자는 거부합니다. 또한 현재 그래프는 라벨이 아니라 필터로 시작하고 끝나야 합니다.
curl -X POST https://api.sume.com/v1/video-filter \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: blur-area-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/screen-recording.mp4",
"filtergraph": "split[main][copy];[copy]crop=400:120:760:900,gblur=sigma=20[blurred];[main][blurred]overlay=760:900"
}'대신 영상의 일부를 검게 가리려면 어떻게 하나요?
drawbox=x=760:y=900:w=400:h=120:color=black:t=fill처럼 속이 채워진 박스를 그리세요. x와 y는 박스의 왼쪽 위 모서리이고, t=fill은 3픽셀 테두리를 그리는 대신 박스 안을 채우며, color는 FFmpeg 색상 문법에 따른 색 이름이나 hex 값을 받습니다. 블러를 적용해도 글자를 읽을 수 있다면 sigma를 높이거나 박스를 쓰세요. 박스 두 개는 쉼표로 이은 drawbox 필터 두 개입니다.
영역의 위치와 크기는 어떻게 알아내나요?
POST /v1/video-frames로 원본 크기 스틸을 뽑으세요. 과금되지 않고, max_edge를 생략하면 소스 프레임 크기를 유지하며, 호출당 at[]에 시각을 최대 24개까지 받습니다. 아무 이미지 편집기에서나 영역의 왼쪽 위 모서리와 크기를 읽으세요. 가리려는 대상이 조금 움직인다면, 스틸들에서 보이는 모든 위치를 덮도록 박스 크기를 정하세요.
클립은 이전 Sume Job의 출력처럼 이미 워크스페이스에 있는 media.sume.com 아티팩트나 에셋이어야 하며, 이 규칙은 엔드포인트별로 받는 URL에서 설명합니다.
영상의 몇 초만 블러 처리할 수 있나요?
네, 몇 단계를 거치면 됩니다. 위의 그래프는 클립의 모든 프레임을 블러 처리하므로, 영상 트림으로 클립을 여러 부분으로 자르고, 필요한 부분에 필터를 적용한 뒤, Timeline 1.0 렌더로 부분들을 이어 붙이세요. 현재 렌더의 소리는 클립이 아니라 오디오 스파인에서 나오므로, 오디오 분리로 얻은 클립의 트랙을 audio.url로 넘기세요.
한도는 어떻게 되나요?
결과는 소스의 크기, 프레임 레이트, 오디오를 그대로 가진 새 MP4이며, 소스는 그대로 남습니다.
| 한도 | 값 |
|---|---|
| 소스 | Sume에 호스팅된 최대 300초 클립 하나, 더 길면 output_duration_exceeded로 실패 |
| 그래프 크기 | 최대 2,048자, 이름 있는 필터 32개. 위의 블러 그래프는 필터 네 개를 씀 |
| 라벨 | 내부 라벨만 가능, 스트림 지정자는 invalid_filtergraph로 실패 |
| HDR 소스 | PQ와 HLG는 hdr_source_unsupported로 거부 |
| 과금 | POST /v1/video-filter/check는 무료, 인코딩은 Job당 과금(GET /v1/catalog에서 확인) |
출처
관련 글
미디어 도구 카테고리의 다른 글
- 어두운 영상을 밝게 만드는 방법: 노출, 감마, 레벨
어두운 영상은 FFmpeg의 exposure, eq 감마, colorlevels 필터를 Sume 영상 필터 Job 하나로 실행해 밝게 만듭니다. 반대로 어둡게 하려면 dim op를 쓰세요.
- SRT 자막 파일을 영상에 입히는 방법
SRT 파일을 영상에 입히면 자막 줄이 화면에 그려집니다. Sume 자막 API는 .srt 파일을 받지 않으므로, 블록마다 cue로 바꿔 cue를 대신 보내세요.
- 말하기 속도 계산 방법: 분당 단어 수(WPM) 구하기
말하기 속도는 말한 단어 수를 분 단위 발화 시간으로 나눈 값입니다. 음성 인식의 단어별 타임스탬프로 녹음 전체나 문장마다 두 값을 모두 잴 수 있습니다.
- 영상 색보정 방법: 색 틀어짐과 색온도 바로잡기
Sume에서 FFmpeg 필터로 영상을 색보정합니다. colorbalance는 노란색이나 초록색으로 틀어진 색을 없애고, colortemperature는 색온도를, eq는 채도를 설정합니다.
작성자 Sume