마이콕 시스템
문서 정보
- 작성일: 2026-02-27
- 최종 업데이트: 2026-04-05
- 버전: v1.2.0
TL;DR
마이콕은 PLUS 멤버십 전용 영구 클립 보관소입니다. 사용자가 콕한 순간을 영원히 보관하기 위해, 원본 영상 만료 전 자동으로 15초 클립을 생성하여 독립 저장합니다. 모든 카메라 앵글의 클립이 하나의 마이콕에 포함됩니다.
목차
- 마이콕이란?
- 핵심 개념
- 영상 상태 전이
- 마이콕 저장 흐름
- 배치 클립 생성 파이프라인
- VM 프로비저닝과 작업 관리
- 멀티카메라 통합
- PLUS 멤버십과 제한
- 원본 삭제와 영구 보존
- 다운로드 구매
- FAQ
마이콕이란?
마이콕(MyKok)은 "내 콕 영상을 영원히 보관" 하는 기능입니다.
체육관에서 촬영된 원본 영상은 일정 기간이 지나면 만료되어 삭제됩니다. 하지만 사용자가 콕을 찍은 순간 중 특별히 보관하고 싶은 것이 있다면, 마이콕으로 저장할 수 있습니다. 마이콕으로 저장된 영상은 원본이 삭제되더라도 독립적인 15초 클립으로 영구 보존됩니다.
| 구분 | 콕(Kok) | 마이콕(MyKok) |
|---|---|---|
| 성격 | 운동 중 특정 순간을 표시한 타임스탬프 | 영구 보관을 위해 선택한 콕 |
| 보존 기간 | 원본 영상 만료 시 함께 접근 불가 | 영구 보존 |
| 영상 파일 | 없음 (원본에서 해당 구간만 재생) | 15초 독립 클립 파일 보유 |
| 멤버십 | 패스 보유자 | PLUS 멤버십 전용 |
| 개수 제한 | 패스별 상이 | 최대 100개 |
비유로 이해하기
콕이 "포스트잇으로 책의 중요한 페이지를 표시"하는 것이라면, 마이콕은 "그 페이지를 복사해서 별도의 파일에 영구 보관"하는 것입니다. 원본 책이 도서관에 반납되더라도 복사본은 남아 있습니다.
핵심 개념
Video와 MyKok의 관계
하나의 Video(10분 원본 영상)에 여러 사용자의 여러 마이콕이 연결될 수 있습니다.
Video (10분 원본, 카메라 4~6대)
│
│ 1 : N 관계
│
├── MyKok A (김철수, 5분 32초 시점)
├── MyKok B (김철수, 8분 10초 시점)
├── MyKok C (이영희, 3분 45초 시점)
└── MyKok D (박민수, 5분 32초 시점)
- 각 마이콕은 정확히 하나의 Video를 참조합니다 (1:1 모델)
- 서로 다른 사용자가 같은 시점을 마이콕으로 저장할 수 있습니다
- 마이콕 1개 = 모든 카메라 앵글의 15초 클립 + 대표 썸네일 1장
클립 구간
콕 시점을 기준으로 앞 10초 + 뒤 5초 = 총 15초 구간을 클립으로 생성합니다.
콕 시점
│
◄──10초──┤──5초──►
─────────┼────────
시작 콕 끝
영상 시작/끝 경계에 걸리면 부족한 만큼 반대쪽으로 늘려서 가능한 한 15초를 확보합니다.
데이터 모델
마이콕 레코드에 저장되는 핵심 데이터입니다.
| 필드 | 설명 |
|---|---|
videoId | 원본 Video FK (1:1 모델) |
kokTimestampId | 콕 타임스탬프 ID (중복 방지) |
kokInfo | 콕 메타데이터 스냅샷 (타임슬롯, 오프셋 등) |
videoState | 영상 보존 상태 (ORIGINAL / CLIPPING / CLIPPED / FAILED) |
mediaInfo | 클립 영상 정보 (카메라별 URL + 썸네일) — 배치 완료 후 채워짐 |
memo | 사용자 메모 (최대 200자, 선택) |
expiresAt | 만료 시각 (구독 해지 시 설정) |
영상 상태 전이
마이콕의 videoState는 클 립 생성 진행 상태를 나타내며, 클라이언트가 어떤 소스로 영상을 재생할지 결정합니다.
상태별 상세
| 상태 | 재생 소스 | 설명 |
|---|---|---|
| ORIGINAL | 원본 Video의 10분 영상에서 해당 구간 재생 | 마이콕 저장 직후. 실제 클립 파일은 아직 없음 |
| CLIPPING | 원본 Video의 10분 영상에서 해당 구간 재생 | 배치 처리 진행 중. ORIGINAL과 동일하게 동작 |
| CLIPPED | 마이콕 자체 클립 파일로 직접 재생 | 독립된 15초 클립 보유. 원본 삭제 후에도 재생 가능 |
| FAILED | 재생 불가 | 클립 생성과 FALLBACK 모두 실패. 운영팀 수동 개입 필요 |
ORIGINAL과 CLIPPING의 차이
두 상태 모두 원본 영상을 참조하지만, CLIPPING은 "곧 독립 클립이 생성될 예정"이라는 의미입니다. 클라이언트 관점에서는 동일하게 동작합니다.