1영상 업로드 → 자동 변환원본을 올리면 360p · 720p · 1080p, 4초 조각으로 자동 변환됩니다
2나란히 재생 비교
재생 중에 위쪽 통신 환경을 바꿔 보세요 · 4G · 약한 신호 · 끊김은 서버가 속도를 일부러 낮춰 흉내 냅니다
기존통째로 다운로드 후 재생
첫 화면까지
–
받은 데이터
–
다운로드
–
영상 파일 전체(–)를 다 받아야 첫 화면이 나옵니다.
중간에 연결이 끊기면 받던 파일을 버리고 처음부터 다시 받아야 하고, 앞부분만 보고 나가도 전체 용량만큼 데이터가 나갑니다.
중간에 연결이 끊기면 받던 파일을 버리고 처음부터 다시 받아야 하고, 앞부분만 보고 나가도 전체 용량만큼 데이터가 나갑니다.
새 방식HLS 스트리밍
첫 화면까지
–
받은 데이터
–
멈춤 횟수
–
측정 속도
–
미리 받아 둔 분량
–
재생 위치
–
화질 단계 — ■ 재생 중 · ■ 받는 중
받은 조각 (최근 순)
| 조각 | 화질 | 크기 | 받은 시간 | 속도 |
|---|
3앱이 받는 API 응답GET /api/videos
–
기존 앱을 끊지 않고 옮기는 방법
- 기존 downloadUrl은 그대로 둡니다. 업데이트하지 않은 구버전 앱은 지금처럼 다운로드로 재생합니다.
- streamUrl만 새로 더합니다. 새 앱은 이 주소가 있으면 스트리밍으로 재생합니다.
- 변환이 끝나지 않은 영상은 streamUrl이 null이라, 새 앱도 기존 방식으로 재생합니다. 일괄 변환 중에도 서비스가 멈추지 않습니다.
Flutter 앱에서는 재생 주소만 바꾸면 됩니다. 아이폰은 기본 재생기(AVPlayer), 안드로이드는 ExoPlayer가 이 화면과 같은 방식으로 화질을 자동으로 바꿉니다.
4월 운영비 계산2026년 11월 공시 단가 기준
R2: 저장 $0.015/GB · 월 10GB 무료 · 전송 무료 · 읽기 요청 월 1,000만 건 무료 ·
S3(서울): 저장 약 $0.025/GB · CloudFront 정액 Pro $15/월(전송 50TB · 요청 1,000만 건 포함, 초과 요금 없음) ·
Cloudflare Stream: 저장 1,000분당 $5 · 시청 1,000분당 $1 (변환 무료).
모든 계정은 발주사 명의로 직접 결제하며 실제 청구액은 사용량에 따라 달라질 수 있습니다.