azosi · 2026.7.29 01:45 · 조회 1

Remotion Recorder

Remotion Recorder는 화면 녹화 + Remotion 컴포지션을 결합해 화면 위에 오버레이·자막·로고를 자동으로 얹어 영상을 만드는 도구다.


💡 사용 사례

  • 제품 데모 영상 (UI + 나레이션 + 자막)
  • 튜토리얼 (화면 + 화살표·하이라이트)
  • 마케팅 영상 (브라우저 시연 + 오버레이)
  • 쇼케이스 (앱 화면 + 워터마크)

📦 설치

npm i @remotion/recorder

📌 Remotion 4.0+ 필요. Chrome / Edge / Arc / Brave 등 Chromium 기반 브라우저만 지원.


🚀 CLI 사용

npx remotion recorder   --url=https://your-app.com/page   --composition=RecorderOverlay   --output=out.mp4   --duration=30000
인자설명
--url녹화할 페이지 URL
--composition오버레이로 얹을 Remotion 컴포지션 ID
--output출력 파일
--duration녹화 시간 (ms)
--width / --height녹화 해상도

🎨 오버레이 컴포지션 만들기

src/RecorderOverlay.tsx:

import { AbsoluteFill, useCurrentFrame, useVideoConfig, Audio, staticFile } from "remotion";

export const RecorderOverlay = ({ url }: { url: string }) => {
  const frame = useCurrentFrame();
  const { durationInFrames } = useVideoConfig();

  return (
    <AbsoluteFill>
      {/* 하단 워터마크 */}
      <div style={{
        position: "absolute",
        bottom: 20,
        right: 20,
        background: "rgba(0,0,0,0.6)",
        color: "white",
        padding: "8px 16px",
        borderRadius: 8,
        fontSize: 18,
      }}>
        Rec with Remotion
      </div>

      {/* 우상단 진행 표시 */}
      <div style={{
        position: "absolute",
        top: 20,
        right: 20,
        color: "white",
        fontSize: 14,
      }}>
        {Math.round((frame / durationInFrames) * 100)}%
      </div>
    </AbsoluteFill>
  );
};

🧑‍💻 Programmatic API

import { Recorder } from "@remotion/recorder";

const recorder = new Recorder({
  url: "https://example.com",
  composition: "RecorderOverlay",
  output: "out.mp4",
  duration: 30000,
});

await recorder.start();
// ... 브라우저에서 사용자 인터랙션
await recorder.stop();

🎬 녹화 흐름

[ Recorder 시작 ]
    ↓
[ Chromium이 URL 열기 ]
    ↓
[ 화면 캡처 + 오버레이 렌더링 ]
    ↓
[ 프레임 단위 인코딩 ]
    ↓
[ mp4 출력 ]

🎙️ 오디오 녹음

시스템 오디오 + 마이크 동시 녹음:

<AbsoluteFill>
  <Audio src={staticFile("narration.mp3")} />
</AbsoluteFill>

⚠️ 시스템 오디오 캡처는 OS / 브라우저 설정에 따라 제한될 수 있음


⚠️ 알아둘 점

한계설명
Chromium onlyChrome, Edge, Arc, Brave만 지원 (Firefox/Safari 미지원)
리소스 사용1080p 30fps 녹화는 4GB+ RAM 예상
Headless 모드기본 비헤드리스. 디버깅 시 --headful 옵션
권한첫 실행 시 화면 캡처 권한 필요

💡 실전 팁

  • 녹화 전 URL을 사전 로드해 첫 프레임이 빈 화면이 되지 않게
  • 컴포지션에 delayRender()로 비동기 자산 로드 대기
  • npx remotion recorder --help로 모든 옵션 확인
  • 녹화 후 자동으로 mp4에 합성됨 (별도 인코딩 불필요)

📚 영역 구분

상위 문서: ← Remotion Studio & Player 출처: Remotion 공식 문서 — Recorder 한글화 (2026-07-29) 공급사: Remotion AG

변경 이력

날짜변경
2026-07-29초판 작성 (공식 Recorder 가이드 한글화)
2026-07-29메타데이터 블록을 본문 하단으로 이동

댓글

아직 댓글이 없습니다.

댓글을 작성하려면 로그인이 필요합니다.