Captix 는 실시간 자막 · 그래픽 송출 통합 도구입니다. 예배·방송·세미나·이벤트에서 자막과 그래픽을 디자인하고 NDI/SDI/OBS 로 송출합니다.
① 스크립트 작성 → ② 페이지 디자인 → ③ 런다운 구성 → ④ TAKE 송출
이 4 단계가 Captix 사용의 95%. 나머지 (AI, 위젯, 실시간 자막) 는 이 흐름을 보조하는 부가 기능.
| 대상 | 대표 사용 케이스 |
|---|---|
| 교회 | 설교 자막, 찬양 가사, 예배 순서, 광고 슬라이드 |
| 방송 스튜디오 | 로어서드(lower-third), 발표자 이름표, 통계 그래픽, 실시간 자막 |
| 세미나·강연 | 발표 자막, 동시통역 자막, 질의응답 자막 |
| 온라인 라이브 | OBS 와 Browser Source 연동, 채팅 자막, 후원 알림 |
| 이벤트·공연 | 가사 자막, 출연자 소개, 진행표 |
| 항목 | 최소 | 권장 |
|---|---|---|
| OS | Windows 10 / macOS 12 | Windows 11 / macOS 14+ |
| CPU | 4-core 3GHz | 8-core 3.5GHz+ |
| RAM | 8 GB | 16 GB+ |
| GPU | iGPU 가능 | NVIDIA RTX (Whisper GPU 가속) |
| 디스크 | 5 GB | 10 GB+ (Whisper 모델 + 캐시) |
Captix Setup x.x.x.exe Windows / .dmg macOS) 실행Whisper 실시간 자막을 처음 사용하면 자동으로:
1회만 진행. 5~15분 소요 (네트워크 속도에 따라).
5 개의 핵심 객체만 이해하면 Captix 의 모든 기능이 명확해집니다.
Project (프로젝트, .capp)
한 행사/방송의 모든 것 — 페이지 디자인 + 스크립트 + 런다운 + 에셋 + 설정. 통째로 백업/공유.
Page (페이지)
자막 디자인 템플릿. 캔버스 크기 (보통 1920×1080) + 레이어들 (텍스트/도형/이미지/영상). 한 프로젝트에 여러 페이지 가능.
Cue (큐)
실제 송출되는 한 항목. 큐 = 페이지 + 입력 데이터. 종류:
Layer (레이어)
페이지를 구성하는 요소들. 8 종류 — Background / Text / Shape / Image / Video / Group / Mask / Lighting·Particle. z-index 로 위계.
Widget (위젯) — 동적 데이터 소스
실시간으로 값이 변하는 공급원. 페이지의 텍스트 레이어에 {위젯명} 으로 참조 → 송출 중 자동 갱신.
Captix 는 작업 단계마다 다른 화면을 보여줍니다. 상단 메뉴바 좌측의 [디자인]/[송출] 버튼으로 모드를 전환합니다.
스크립트의 각 슬라이드를 직접 편집 (텍스트 변경, 슬라이드별 스타일 오버라이드).
| 위치 | 요소 | 역할 |
|---|---|---|
| 좌측 | 로고 + CAPTIX | 브랜드 |
| 중좌 | [송출] / [디자인] | 모드 전환 |
| 중좌 | [파일] | 새 런다운, 열기, 저장, 페이지 import/export, 스크립트 import/export |
| 중좌 | [편집] | Undo / Redo / Copy / Paste |
| 중좌 | [출력] | PNG 시퀀스 / ProRes 4444 / PNG 스틸 렌더 export |
| 중앙 | 프로젝트명 + 라이센스 | 더블클릭 → 인라인 편집. 라이센스 만료일 D-N 표시. |
| 우측 | [📡 송출] | 통합 송출 버튼 — 활성화된 모든 출력 동시 시작/중지 |
| 우측 | [출력 창] ▼ | 창 출력 토글 + 드롭다운 (Chroma Key, Browser 포트) |
| 우측 | [⚙] | 설정 패널 |
[SIZE 1920×1080] [FPS 30p] [NDI 30fps] [OUT NDI·WIN·WEB·SDI] [SDI ✓142 ⚠3] [FRAME 12.5/18.2ms]
Captix 의 전형적 사용 패턴 — 한 번만 따라하면 전체 흐름이 이해됩니다.
새 프로젝트 생성
메뉴바 → [파일] → 새 런다운. 빈 프로젝트 시작.
페이지 디자인 (디자인 모드)
모드 [디자인] 클릭 → 좌측 Design Library 의 + → "메인 자막" 생성 → 캔버스에 텍스트 레이어 추가 (도구 T) → 입력: {text} (큐의 텍스트가 들어올 자리).
스크립트 작성
좌측 ScriptStore 의 + → 스크립트 이름 입력 → 본문 입력. 빈 줄로 슬라이드 구분:
안녕하세요, 반갑습니다.
오늘 발표를 시작하겠습니다.
첫 번째 주제부터 살펴보겠습니다.
3 슬라이드로 자동 분할.
런다운 구성
모드 [송출] 클릭 → 우측 Rundown 의 + → Script 큐 추가 → 방금 만든 스크립트 + 페이지 ("메인 자막") 선택.
출력 설정
메뉴바 [⚙] → 일반 탭 → 어떤 출력 켤지 선택 (가장 간단: 창 출력만 ON, 두 번째 모니터로).
송출 시작
상단 [📡 송출] 클릭 → 출력 창 등장.
큐 TAKE
Rundown 에서 큐 선택 → [TAKE] 또는 Enter. 첫 슬라이드 송출.
슬라이드 진행
↓ 또는 Space → 다음 슬라이드. 송출 화면이 자동 갱신.
대본·가사·발표문 같은 긴 텍스트를 슬라이드별로 송출하는 방법.
두 번 엔터 (빈 줄) 가 슬라이드 구분자. 한 줄 안의 줄바꿈은 같은 슬라이드 안의 line break.
예시:
안녕하세요 반갑습니다 ← 슬라이드 1, 1줄
← 빈 줄 (구분자)
오늘 발표 주제는 ← 슬라이드 2, 1줄째
신제품 출시 계획입니다 ← 슬라이드 2, 2줄째
← 빈 줄
첫 번째로 ← 슬라이드 3, 1줄째
시장 분석을 보겠습니다 ← 슬라이드 3, 2줄째
같은 슬라이드에 여러 텍스트 슬롯을 두려면 && 구분자 사용:
안녕하세요 여러분&&Hello everyone
오늘 발표를 시작하겠습니다&&Let's begin today's presentation
슬롯 1, 슬롯 2 가 각각 다른 텍스트 레이어에 바인딩 (페이지 디자인 시 슬롯 번호로 지정).
UTF-8 / EUC-KR 인코딩을 자동 감지합니다. 기존 본문이 있으면 뒤에 이어 붙입니다. 빈 줄로 슬라이드를 구분하므로, TXT 가져오기 후 빈 줄을 조정하면 슬라이드 단위가 결정됩니다.
스크립트 만든 후 특정 슬라이드만 다르게 디자인하고 싶으면:
페이지는 자막의 "디자인 템플릿". 이걸 한 번 만들면 모든 큐에서 재사용됩니다.
| 레이어 | 추가 방법 | 용도 |
|---|---|---|
| 텍스트 (T) | 도구 T 선택 → 캔버스 클릭 | 자막 본문, 발표자 이름 |
| 도형 (Shape) | 도구 □ ○ ✎ → 드래그 | 배경 박스, 강조선, 장식 |
| 이미지 (Image) | 에셋 패널 → 드래그 | 로고, 사진 |
| 비디오 (Video) | 에셋 패널 → 드래그 | 배경 영상, 트랜지션 |
| 아이콘 | 에셋 패널 → 🎯 아이콘 검색 | 20만 아이콘에서 즉시 선택 |
| AI 이미지 | 에셋 패널 → 🎨 AI 생성 | 커스텀 이미지 텍스트로 생성 |
| 그룹 (Group) | 여러 레이어 선택 → 우클릭 → 그룹화 | 여러 요소 묶어 한꺼번에 이동 |
텍스트 레이어 안에 {변수명} 또는 script.text 슬롯 활성화 → 큐 TAKE 시 큐의 텍스트가 자동으로 그 자리에 들어감.
&& 뒤 영문 가사 등)텍스트 레이어 안에 {widget_name} 직접 입력. 송출 중 위젯 값으로 자동 치환.
발표자: {presenter} ← DataIO 위젯 "presenter"
경과 시간: {timer1} ← Timer 위젯
자막: {transcript1,last3} ← Whisper 최근 3줄
한 텍스트 안에서 일부 글자만 다른 스타일 적용:
안녕하세요 {1}홍길동{0}입니다
↑ 프리셋 1 적용 ↑ 리셋
이름만 강조색·큰 글씨로 표시.
.capt 파일로 다른 프로젝트에 가져가기런다운은 큐의 실행 순서. 행사 진행 흐름대로 위에서 아래로 배치.
| 작업 | 방법 |
|---|---|
| 순서 변경 | 왼쪽 ⠿ 핸들 드래그 |
| 삭제 | Delete |
| 복제 | Ctrl+D |
| 다중 선택 | Ctrl+클릭 / Shift+클릭 |
| 그룹 묶기 | 여러 선택 → 우클릭 → Group Header 생성 |
| 그룹 접기 | 그룹 헤더 좌측 ▾ 클릭 |
한 프로젝트에 런다운 여러 개 가능. 좌상단 런다운 선택 드롭다운에서 전환.
| 채널 | 역할 | 화면 |
|---|---|---|
| Preview | 다음에 송출할 큐 대기열 | 편집 모니터만 |
| Program | 실제 출력 중인 큐 | NDI/SDI/창/Browser 모두 |
한 화면에 여러 큐를 동시에 송출할 수 있습니다. 각 큐가 다른 레이어에 올라감.
예시 구성:
큐 인스펙터의 대상 레이어 를 다르게 지정 → 동시에 송출. - 키로 특정 레이어만 OUT.
모든 레이어 즉시 종료. 화면 검정 → 응급 시 사용 (실수 송출, 비상 상황).
| 레이어 | 지원 기능 |
|---|---|
| Background | 배경. 색상 / 그라데이션 (선형·방사형) / 이미지 / 비디오 / 투명 / Chroma Key |
| Text | 본문 텍스트 + 배경 박스. 폰트, 그라데이션, 다중 stroke, 그림자, 글로우, 변수 바인딩, 슬롯 모드, 세로쓰기 |
| Shape | 사각형 (rect) / 원형 (ellipse) / 자유 path (SVG). 그라데이션·stroke·shadow·glow 지원 |
| Image | PNG/JPG/SVG. fit 모드 5가지 (fill/contain/cover/fit-width/fit-height) |
| Video | MP4/MOV. in/out 포인트, 루프, 자동 재생, 음량 |
| Group | 여러 레이어 묶음. blend isolation 옵션 |
| Mask | 도형/이미지의 알파로 다른 레이어를 클립핑 |
| Lighting / Particle | 조명·파티클 이펙트 (반짝임, 빛 번짐 등) |
text (전체 텍스트에 한 그라데이션) / glyph (글자마다 독립 그라데이션)예: 안쪽 흰색 1px + 중간 검정 3px + 바깥쪽 파란색 5px = 3중 outline. 방송 자막의 가독성 향상에 필수.
한 텍스트 레이어 안에서 일부만 다른 스타일:
{1}강조{0} 그리고 본문
{N} · 폰트 프리셋 N 적용 시작{0} · 리셋 (기본 스타일로 복원)| 그룹 | 채널 | 설명 |
|---|---|---|
| 위치/회전 | X / Y | 좌우/상하 이동 (px) |
| ROT_X / ROT_Y / ROT_Z | 3축 회전 (각도) | |
| 크기/투명도 | OPACITY | 0 ~ 1 투명도 |
| SCALE / SCALE_X / SCALE_Y | 크기 (배수) | |
| 이펙트 | BLUR | 가우시안 블러 (px) |
| GLOW | 글로우 강도 + 색상 | |
| 텍스트 흐름 | SCROLL_H / SCROLL_V | 가로/세로 스크롤 (캐러셀, 뉴스 띠) |
| 파형 | 모양 | 용도 |
|---|---|---|
| sine | 부드러운 -1↔+1 정현파 | 부드러운 떠다니기 |
| cosine | sine 의 90° shift | cos 부터 시작 |
| triangle | 직선 톱니 | 일정 속도 왕복 |
| sawtooth | 한 방향 톱니 | 등장 후 리셋 |
| square | 0/1 깜빡임 | blink, strobe |
| sine+ | 0~1 부드러운 호흡 | opacity 페이드 (음수 없음) |
| cosine+ | 1~0 시작 | 1 부터 페이드 |
| sine² | peak 평평한 0~1 | 가장 부드러운 호흡 (glow) |
| |sine| | V 모양 (2x 빠름) | 하트비트, 펄스 |
자주 쓰는 조합 (페이드 인, 슬라이드 업, 호흡 등) 은 프리셋으로 저장됨. 클릭 한 번에 적용.
텍스트의 글자/단어/줄마다 애니메이션 시작 시간을 약간씩 늦춤. "한 글자씩 등장" 효과:
Enter/Exit 의 진행 곡선 — linear / ease-in / ease-out / ease-in-out / spring / bounce / cubic.
| 단축키 | 기능 |
|---|---|
| Ctrl+Z / Ctrl+Y | Undo / Redo |
| F12 | DevTools (디버그) |
| 단축키 | 기능 |
|---|---|
| Ctrl+스크롤 | 줌 인/아웃 |
| Ctrl+0 | 화면 맞춤 |
| Ctrl+1 | 100% 배율 |
| 휠 클릭 + 드래그 | 캔버스 팬 (이동) |
| ↑↓←→ | 1px 넛지 |
| Shift+화살표 | 10px 넛지 |
| Shift+드래그 | 축 잠금 (X 또는 Y만) |
| Ctrl+C / V | 레이어 복사/붙여넣기 (+20px offset) |
| Delete | 레이어 삭제 |
| 더블클릭 (텍스트) | 인라인 편집 모드 |
| 드래그 (빈 영역) | 마키 선택 (사각형) |
| Ctrl+클릭 | 다중 선택 토글 |
| 단축키 | 기능 |
|---|---|
| Enter | TAKE / GO (선택 큐 송출) |
| − · Backspace | 선택 큐의 레이어 OUT |
| ↑ / ↓ | 큐 / 슬라이드 이동 |
| Shift+화살표 | 큐 범위 선택 |
| Numpad + · Space | GO 후 다음 슬라이드 |
| Esc | Black 또는 Preview 취소 |
Mac 노트북은 숫자 키패드가 없어, 키패드 키를 본체 키로 대체할 수 있도록 alias 가 적용됩니다. 결과 동작은 동일합니다.
| 키패드 (Windows) | Mac 대체 | 동작 |
|---|---|---|
| Enter | Enter | GO / TAKE |
| Numpad + | Space | GO 후 다음 슬라이드 |
| − (minus) | Backspace | 레이어 OUT |
| ↑ | ← | 이전 슬라이드 |
| ↓ | → | 다음 슬라이드 |
DataIO 패널 · Script Cue 패널 · 메인 송출 영역 모두 동일하게 작동합니다.
자막 디자인에 필요한 일러스트·아이콘·효과를 텍스트만으로 생성. 무료.
자주 쓰는 자막 조각 — ☁ 구름 / 💨 연기 / ✨ 골드플레어 / ➖ 가로광선 / 💫 블루크로스 / 🌟 스파클 / ⭐ 별 / 🔥 불꽃 / 🎀 리본 / 💎 보석 / 🏆 트로피 / 🥇 금메달 / 🌹 장미 / 🍃 잎사귀 / 🌈 무지개 / 💬 말풍선 / 👑 왕관 / 🎭 캐릭터 / ✏ 손그림
가장 빠르게 아이콘을 추가하는 방법. 인증 불필요, 무료, 200,000+ 아이콘.
아이콘이 2가지 이상 색상 사용 시 → 자동으로 PNG 모드 권장 (정보 손실 방지).
SVG fill-rule="evenodd" 자동 감지 → 가운데 구멍 보존.
커스텀 도형이 필요한데 적당한 아이콘이 없을 때, AI 에게 SVG 직접 생성 요청.
Shape Picker → AI 생성 탭 (또는 도형 추가 메뉴에서 AI 옵션).
자주 쓰는 30+ 도형은 하드코딩 (즉시 반환) — 번개, 별, 하트, 화살표 등. 그 외 입력은 AI 호출.
AI 이미지 생성 시 자동으로 적용 — 사용자는 신경 안 써도 됨.
AI 이미지 생성 패널의 🇰🇷→🇺🇸 자동 번역 체크박스. 기본 ON.
Captix 의 가장 많이 쓰는 큐 종류. 대본/가사처럼 슬라이드 단위로 진행되는 콘텐츠.
런다운 큐 옆에 "3/24" 형태로 현재 위치 표시.
| 상황 | 구성 |
|---|---|
| 설교 자막 | 1부/2부/결론 큐 분리, 각 큐 20-50 슬라이드 |
| 찬양 가사 | 곡 별 큐, 절·후렴 슬라이드 분리 |
| 이중 언어 가사 | && 로 슬롯 2개, 페이지에 슬롯 1/2 텍스트 레이어 |
| 발표 PT 자막 | 슬라이드별 핵심 문장만 추출 |
스크립트 안 만들고 빠르게 한 문장만 송출.
페이지의 텍스트 레이어 안에 {text} 가 있으면 자동 주입.
외부 데이터 행을 자막으로 송출. 인물 명단, 가사, 통계 등.
| 소스 | 설명 |
|---|---|
| Excel (.xlsx/.xls) | 스프레드시트 행. 실시간 파일 감시 (변경 시 자동 갱신) |
| CSV | 쉼표/탭 구분 데이터 |
| JSON | 로컬 파일 또는 직접 입력 |
| HTTP API | GET 요청 → JSON 응답 파싱 |
| API Server | HTTP/UDP 수신 → 변수 실시간 업데이트 |
| Manual | UI 에서 직접 행 입력 |
| Bible | 성경 검색 (4 버전, 한↔영 cross-language) |
| Timer / Clock | 시간 기반 행 자동 진행 |
4 버전 지원:
창 1:1 → 창세기 1:1
요 3:16~20 → 요한복음 3:16-20
1 John 3:16 → 요한일서 3:16
Gen 1 → 창세기 1장 (전체)
하나님 → "하나님" 단어 검색
한글 입력 → 영문 성경에서 자동 매칭, 영문 입력 → 한글 성경에서 자동 매칭.
'창 1:1' + KJV 선택 → Genesis 1:1 자동 매치
'Jn 3:16' + 개역한글 → 요한복음 3:16 자동 매치
DataIO 데이터의 컬럼 (예: 이름 / 직책 / 사진URL) → 페이지의 텍스트 레이어에 매핑:
페이지 텍스트 레이어: {name}
{title}
DataIO 행: name="홍길동", title="대표"
↓
출력: 홍길동
대표
스코어, 선수 이름처럼 외부에서 값을 보내 자막을 실시간 갱신할 때 사용합니다. DATA I/O 의 API 소스가 HTTP/UDP 서버를 열고, 들어온 값을 런다운·PGM·PVW·UI 에 즉시 반영합니다.
POST /update) = 값을 받음. 원격 제어 API(28장, 기본 3040, POST /api/...) = TAKE 등 조작. 이름이 비슷하니 혼동 주의.스코어보드)team1_score, team1_name). acceptAll 이 꺼져 있으면 여기 등록된 이름만 수용| 메서드 · 경로 | 설명 |
|---|---|
POST /update | 변수 값 업데이트 (JSON body 또는 ?var=이름&value=값) |
GET /status | 현재 모든 변수 값 조회 |
UDP :포트 | JSON 또는 key=value;key=value 패킷 |
{"name":"Lions"} ✔ · {"name":Lions} ✗(400). 숫자만 따옴표 없이 가능.# PowerShell — 숫자
Invoke-RestMethod -Uri "http://localhost:3030/update" -Method Post `
-ContentType "application/json" -Body '{"team1_score":"5"}'
# 텍스트 (값을 따옴표로)
Invoke-RestMethod -Uri "http://localhost:3030/update" -Method Post `
-ContentType "application/json" -Body '{"team1_name":"Lions"}'
# 쿼리 파라미터 (한 변수)
Invoke-RestMethod -Uri "http://localhost:3030/update?var=team1_score&value=5" -Method Post
# curl
curl -X POST http://localhost:3030/update -H "Content-Type: application/json" -d "{\"team1_score\":\"5\"}"
서버 실행 중이면 API 편집 패널에 🧪 API 테스트 블록이 나타납니다. 변수별 테스트 값을 적고 ▶ 테스트 전송 → 외부 클라이언트와 동일한 POST /update 로 실제 전송, 결과(✓ 200 / 오류 / 연결 실패)를 즉시 표시. JSON 따옴표 걱정 없이 검증할 수 있어 편리합니다.
외부 전송(HTTP/UDP) → API 서버 수신
→ 전역 데이터 소스 갱신 (위젯/필터 재계산)
→ 참조 DataCue 갱신
├ 편집 패널 변수 칸 동기화
├ PVW(프리뷰) 즉시 반영
└ 송출 중이면 PGM·출력창·NDI 즉시 반영
즉 송출 중인 텍스트도 다시 TAKE 하지 않고 값만 바뀝니다. 잦은 업데이트는 자동으로 묶여(coalescing) 처리되어 안전합니다.
| 증상 | 원인 / 해결 |
|---|---|
Not found. See /help | 원격 제어 명령(/api/...)을 데이터 API 포트(3030)로 보냄. 포트/기능 구분 |
| 숫자는 되는데 텍스트가 안 됨 | JSON 문자열 따옴표 누락 → 400. "값" 으로 감싸기 |
updated: {} | acceptAll 꺼짐 + 미정의 변수명. 이름 등록 또는 acceptAll 켜기 |
| 화면이 안 바뀜 | 서버 실행 중인지, 템플릿 링크에 변수 매핑됐는지, 포트 맞는지 확인 |
단일 이미지 풀스크린 송출. 광고, 안내 슬라이드, 정적 화면.
페이지 디자인만 보여주고 텍스트는 Preview 에서 즉석 편집. "이름표" 같은 한 번 쓰고 버리는 큐에 적합.
모든 레이어 검정. 응급 컷아웃, 휴식 시간, 광고 사이 공백.
런다운의 섹션 구분자. 송출 단위 아님 (TAKE 안 됨). 1부 / 2부 / 폐회 같은 구획용.
위젯은 실시간으로 값이 변하는 데이터 공급원. 큐와 달리 "송출 항목" 이 아니라 페이지 안에 박혀서 계속 갱신됨.
| 모드 | 용도 |
|---|---|
| countup · 카운트업 | 경과 시간 표시 (시작 후 00:00 → 00:01...) |
| countdown · 카운트다운 | 남은 시간 (예: 5:00 → 0:00) |
| clock · 시계 | 현재 시각 (HH:MM:SS) |
DataSource (Excel/CSV/API) 의 데이터를 검색·필터링한 결과를 위젯으로 노출.
태그: {필터명,열,행} (1-based)
{members,name,3} → members 필터의 name 컬럼 3행
{members,phone,1} → members 필터의 phone 컬럼 1행
Part 6 의 다음 섹션에서 자세히.
{이름} 삽입Captix 의 부가 기능 중 하나. 마이크나 시스템 오디오를 받아 실시간으로 자막화. faster-whisper large-v3-turbo 모델 사용 (완전 로컬, 인터넷 불필요).
transcript1)| 소스 | 설명 |
|---|---|
| mic | 마이크 (USB/오디오 인터페이스). 디바이스 선택 가능 |
| system | 시스템 오디오 (재생 중인 영상/회의 소리). Windows: 스테레오 믹스 또는 VB-CABLE 필요 |
| ndi-mix | NDI 송출 mixer 의 PGM 오디오 (방송 신호의 음성) |
텍스트 레이어 안에:
{transcript1} → 가장 최근 1줄
{transcript1,last3} → 최근 3줄 (개행 join)
{transcript1,full} → 세션 전체
인명·지명·전문용어를 사전에 등록 → Whisper 의 정확도 ↑.
예시:
홍길동 김영희 이철수
서울 부산 광주 대전
ESG 메타버스 NFT
captix 캡틱스
위젯 헤더의 📄 SRT / 📝 TXT 버튼 → 세션 자막 파일 다운로드. YouTube/Vimeo 자막 import 가능.
{태그} 시스템페이지 안의 텍스트가 동적 데이터와 자동 연결되는 메커니즘.
| 태그 | 의미 |
|---|---|
{text} | Text 큐의 텍스트 |
{script.text} | Script 큐의 현재 슬라이드 |
{timer1} | Timer 위젯 "timer1" 의 현재 값 |
{counter1} | Counter 위젯 값 |
{transcript1} | 실시간 자막 최근 1줄 |
{transcript1,last3} | 최근 3줄 |
{transcript1,full} | 세션 전체 |
{members,name,2} | DataFilter "members" 의 name 컬럼 2행 |
{1}...{0} | 인라인 스타일 프리셋 N 적용/해제 |
한 텍스트 레이어에 여러 태그 가능. 큐가 우선이고 위젯이 그 다음:
발표자 {name} · 시각 {timer1} · 자막: {transcript1}
↑ DataIO 큐 ↑ Timer ↑ Whisper
Captix 의 모든 출력은 같은 합성 결과(투명 배경 포함)를 4가지 경로로 내보냅니다. 용도에 맞게 하나 이상을 켜고 쓸 수 있습니다.
| 경로 | 대상 | 알파(투명) | 지연 | 대표 용도 |
|---|---|---|---|---|
| NDI | LAN 의 다른 PC (OBS/vMix/TriCaster) | ✔ 지원 | 매우 낮음 | 네트워크 송출 |
| SDI | 방송 스위처/장비 (DeckLink) | ✔ (key/fill) | 매우 낮음 | 방송 표준 하드웨어 |
| 창 모드 | 로컬 2번째 모니터 / 캡처 보드 | 크로마키로 대체 | 없음(로컬) | 듀얼 모니터·NDI 미사용 |
| 브라우저 | 같은 PC 의 OBS Browser Source | ✔ 지원 | 낮음 | OBS 단일 PC |
같은 LAN 의 다른 PC 로 영상을 보냅니다. 수신 측 OBS/vMix/TriCaster 가 NDI 소스로 받습니다. 케이블 없이 네트워크만으로 방송 품질 영상을 전달하는 가장 흔한 방식입니다.
Blackmagic DeckLink 카드로 방송 표준 SDI 출력.
| 모드 | 채널 | 용도 |
|---|---|---|
| rgba | 단일 BGRA | 일반 영상 (알파 무시, 불투명) |
| 4444 | 단일 ARGB | alpha 임베디드 (4444 지원 다운스트림) |
| keyer-hw | 1 + 인접 | 카드 내부 keyer (Duo 2 / 4K Extreme 등). 자동 fill+key 인접 출력 |
| keyer-sw | 2 (독립 선택) | Captix 가 소프트웨어로 fill/key 분리. 8K Pro / Quad 같은 multi-channel 카드 권장 |
설정 → SDI → 인터레이스 출력 체크 → 30fps NTSC 가 자동으로 1080i 59.94 로 송출.
설정 → SDI → 채널 드롭다운에 [KEY/DL/QL] 라벨:
설정 → SDI → 📂 SDI 로그 폴더 열기 → 송출 통계, 에러, 장치 capability 모두 기록.
송출 화면을 독립된 프레임리스 창으로 띄웁니다. 그 창을 두 번째 모니터(또는 캡처 보드 입력)로 보내 사용합니다. NDI/SDI 장비 없이 로컬에서 가장 간단하게 송출하는 방법입니다.
크로마 키 배경: 출력 창은 OS 창이라 진짜 투명이 어려우므로, 투명 대신 단색 크로마 배경(기본 #00ff00 녹색)을 깔 수 있습니다.
같은 PC 의 OBS 에서 브라우저 소스로 받습니다. 내장 HTTP+WebSocket 서버가 합성 프레임을 실시간으로 푸시하며, 알파(투명 배경)를 그대로 지원합니다. 같은 PC + OBS 조합에서 가장 깔끔합니다.
4577)http://localhost:4577/?browser=1&transparent=truelocalhost 대신 송출 PC 의 LAN IP 사용 + 방화벽 허용 — 이 경우엔 NDI 가 더 적합다른 PC, 스튜디오 컨트롤러 (Stream Deck, TouchOSC), 자동화 스크립트에서 Captix 큐를 제어.
| 프로토콜 | 포트 | 용도 |
|---|---|---|
| OSC | UDP 9000 | TouchOSC, QLab, MaxMSP |
| HTTP REST | TCP 3040 | 웹 인터페이스, curl 자동화 (/api/...) |
| WebSocket | TCP 3040 | 양방향 제어 + 상태 broadcast (/api/ws, HTTP 와 포트 공유) |
| 명령 | 역할 |
|---|---|
cue:take <cueId> | 큐 ID 로 TAKE |
cue:take-idx <index> | 런다운 순서 N 번째 큐 TAKE |
cue:out <cueId> | 큐 OUT |
cue:preview <cueId> | Preview 만 (송출 X) |
layer:out <0-9> | 특정 레이어만 OUT |
layer:out-all | 모든 레이어 OUT (= Black) |
video:play/pause/stop | 현재 영상 큐 transport |
script:next/prev/goto-idx | 스크립트 슬라이드 이동 |
기본 포트 3040. 큐 인덱스는 0-based(첫 큐 = 0).
| 동작 | 경로 |
|---|---|
| 첫(N번째) 큐 TAKE | POST /api/cue/idx/0/take |
| 큐 ID 로 TAKE | POST /api/cue/{큐ID}/take |
| TAKE OFF (전체) | POST /api/layer/out-all |
| 특정 레이어 OUT | POST /api/layer/{N}/out |
| 상태 조회 | GET /api/state |
# 첫 큐 TAKE / 전체 OUT (PowerShell)
Invoke-RestMethod -Uri "http://localhost:3040/api/cue/idx/0/take" -Method Post
Invoke-RestMethod -Uri "http://localhost:3040/api/layer/out-all" -Method Post
?token=값 또는 헤더 x-captix-token 추가.Bitfocus Companion 모듈로 Captix HTTP 엔드포인트 연결 → 버튼 하나로 큐 TAKE.
// JavaScript 클라이언트 (HTTP 와 포트 공유, 경로 /api/ws)
const ws = new WebSocket('ws://localhost:3040/api/ws')
ws.onopen = () => {
ws.send(JSON.stringify({ type: 'cue:take-idx', index: 0 }))
}
ws.onmessage = (e) => console.log('Captix event:', e.data)
편집 후 NLE (Premiere, DaVinci) 로 가져가거나 다른 시스템에서 재생할 때.
| 포맷 | 출력 | 알파 | 용도 |
|---|---|---|---|
| PNG 시퀀스 | frame_000001.png ~ | ✅ | NLE 무손실 import |
| ProRes 4444 | .mov (yuva444p10le) | ✅ | 방송용 무손실 영상 |
| PNG 스틸 | 현재 프레임 1장 | ✅ | 썸네일, 광고 |
Image / Video 큐는 원본 파일이 결과물이므로 자동 제외.
실시간 자막 위젯 (Whisper) 결과 → 📄 SRT / 📝 TXT 버튼 → 파일 다운로드.
.capp / .capt / .capts| 확장자 | 내용 | 공유 단위 |
|---|---|---|
| .capp | 전체 프로젝트 — 런다운 + 페이지 + 스크립트 + 위젯 + 폰트 프리셋 + 애니메이션 프리셋 + 미디어 (ZIP 압축) | 완전한 백업/복원, 다른 PC 로 통째 이전 |
| .capt | 페이지 디자인 패키지 — 선택 페이지 + 참조 이미지/비디오 + 폰트 (ZIP) | 동료에게 디자인 공유, 다른 프로젝트로 import |
| .capts | 스크립트 패키지 — 스크립트 + 슬라이드 데이터 | 설교문/가사 모음 공유 |
| .captix-rundown.json | 런다운만 (큐 메타데이터, 미디어 경로 참조) | 런다운 구성 공유 (미디어 별도) |
captix-project.capp (zip)
├── manifest.json 메타 (버전, 작성자, 생성일)
├── storage/
│ ├── themes-v1.json 페이지 디자인들
│ ├── rundown-v1.json 런다운
│ ├── widgets.json 위젯
│ ├── font-presets.json
│ ├── anim-presets-v3.json
│ └── my-shapes-v1.json
├── mediaAssets/ 비디오/이미지
└── designs/ 디자인 이미지
메뉴바 [⚙] 클릭. 5개 탭.
| 제공자 | 비용 | 필요 정보 | 특징 |
|---|---|---|---|
| Pollinations | 무료 | 없음 (선택: 토큰) | 인증 불필요. 워터마크 제거는 토큰 필요 |
| Cloudflare Workers AI | 월 무료 한도 | Account ID + Token | Flux Schnell, 안정적 속도 |
| Hugging Face | 월 무료 한도 | API Token | 오픈소스 모델. cold start 느림 |
| OpenAI | 유료 (~$0.04/장) | API Key | gpt-image-1. 프롬프트 추종도 최고 |
장시간 송출 (수 시간 이상) 시 메모리 안정성 확인. 최근 패치로 RemoteBridge listener 누수 수정됨 — 최신 버전 사용 권장.
http://localhost:4577/?browser=1 정확히| 용어 | 설명 |
|---|---|
| Project (.capp) | 모든 작업물의 최상위 단위. 통째로 백업/이전 가능. |
| Page (.capt) | 자막 디자인 템플릿. 한 번 만들면 모든 큐에서 재사용. |
| Cue | 송출 단위. Page + 입력 데이터. |
| Layer | Page 의 구성 요소. 텍스트/도형/이미지 등. |
| Widget | 동적 데이터 소스. 위젯명으로 텍스트에 바인딩. |
| Rundown (.captix-rundown.json) | 큐 실행 순서. |
| TAKE | Preview 큐를 Program 으로 송출. |
| Preview / Program | 다음 송출 대기 / 실제 송출 (방송 표준 2-bus). |
| Dissolve | 큐 전환 시 페이드 인/아웃. |
| NDI | NewTek 의 무손실 IP 영상 송출. 알파 채널 지원. |
| SDI | 방송용 BNC 영상 케이블 규격. |
| DeckLink | Blackmagic Design 의 SDI 카드 시리즈. |
| Fill + Key | SDI 합성 방식. Fill = RGB 컬러, Key = 알파 마스크 (별도 채널). |
| faster-whisper | OpenAI Whisper 의 고속 구현. Captix 가 사용. |
| LocalAgreement-K | 스트리밍 STT 안정화 — 같은 인식 K 회 연속 확정. |
| VAD | Voice Activity Detection — 음성/비음성 구분. |
| RTF | Real-Time Factor — 처리시간 ÷ 오디오시간. 1 미만이 실시간. |
| Iconify | 200,000+ 아이콘 검색 API. 무료, 인증 불필요. |
| Pollinations | 무료 AI 이미지 생성 서비스. Flux 모델 기반. |
| ProRes 4444 | Apple ProRes 의 알파 채널 지원 무손실 영상 코덱. |
| NLE | Non-Linear Editor — Premiere, DaVinci, Final Cut 등. |
| OSC | Open Sound Control — 음악/공연용 UDP 제어 프로토콜. |
| Stagger | 애니메이션 글자별 시작 시간 어긋남 (한 글자씩 등장 효과). |