C와 C++ 코드를 WebAssembly로 컴파일해 브라우저, Node.js 및 기타 Wasm 런타임에서 실행할 수 있게 하는 컴파일러 툴체인입니다.
ffmpegwasm/ffmpeg.wasm
브라우저에서 동영상과 오디오를 녹화·변환·스트리밍할 수 있는 순수 WebAssembly 및 JavaScript 기반 FFmpeg 포트입니다.
- 스타
- 17,896
- 포크
- 1,119
- 열린 이슈
- 458
- 마지막 커밋
- 22일 전
어떤 프로젝트인가요?
ffmpeg.wasm은 FFmpeg를 WebAssembly로 컴파일하고 JavaScript API로 감싸 브라우저에서 사용할 수 있게 합니다. 처리가 클라이언트에서 이루어지므로 웹 애플리케이션에서 파일을 서버로 전송하지 않고도 오디오와 동영상을 녹화·변환·스트리밍할 수 있습니다.
이 프로젝트는 @ffmpeg 스코프의 npm 패키지로 배포됩니다. JavaScript API를 호출해 코어를 로드하고, 메모리 내 파일 시스템에 입력 파일을 쓰고, FFmpeg 명령줄 방식의 인수를 실행한 뒤, 출력을 읽어오는 방식으로 사용합니다. 배지에는 실험 단계로 표시되어 있습니다.
저장소에는 설치 방법, API 레퍼런스, FAQ를 다루는 문서 사이트와 코어 라이브러리의 기여 가이드도 포함되어 있습니다.
핵심 기능
- 01WebAssembly를 통해 FFmpeg를 브라우저에서 전부 실행하므로 서버 측 처리가 필요하지 않습니다.
- 02코어 로드, 파일 쓰기, 명령 실행, 출력 읽기를 위한 JavaScript API를 제공합니다.
- 03동영상과 오디오의 변환, 녹화, 스트리밍을 지원합니다.
- 04@ffmpeg 스코프의 npm 패키지로 배포됩니다.
활용 사례
- 업로드 전에 클라이언트에서 사용자가 올린 동영상을 변환하거나 자릅니다.
- 웹 앱에서 오디오나 동영상을 녹화한 뒤 다른 형식으로 트랜스코딩합니다.
- 사용자의 기기에 파일을 로컬로 유지하는 브라우저 기반 미디어 편집기를 만듭니다.
사용 전 알아둘 점
- README에서는 프로젝트의 안정성이 실험적이라고 명시합니다.
토픽
자주 묻는 질문
- ffmpeg.wasm은(는) 무엇인가요?
- 브라우저에서 동영상과 오디오를 녹화·변환·스트리밍할 수 있는 순수 WebAssembly 및 JavaScript 기반 FFmpeg 포트입니다. ffmpeg.wasm은 FFmpeg를 WebAssembly로 컴파일하고 JavaScript API로 감싸 브라우저에서 사용할 수 있게 합니다. 처리가 클라이언트에서 이루어지므로 웹 애플리케이션에서 파일을 서버로 전송하지 않고도 오디오와 동영상을 녹화·변환·스트리밍할 수 있습니다.
- ffmpeg.wasm은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- ffmpeg.wasm은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- ffmpeg.wasm은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. ffmpeg.wasm의 마지막 커밋은 2026년 9월 29일입니다.
- ffmpeg.wasm은(는) 어디에 사용할 수 있나요?
- 업로드 전에 클라이언트에서 사용자가 올린 동영상을 변환하거나 자릅니다. 웹 앱에서 오디오나 동영상을 녹화한 뒤 다른 형식으로 트랜스코딩합니다. 사용자의 기기에 파일을 로컬로 유지하는 브라우저 기반 미디어 편집기를 만듭니다.
- ffmpeg.wasm은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/ffmpegwasm/ffmpeg.wasm
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
재인코딩 없이 영상과 오디오를 무손실로 자르고 다듬고 리먹싱하는 크로스 플랫폼 FFmpeg GUI입니다.
실제 운영체제를 부팅할 수 있도록 런타임에 기계어를 WebAssembly로 변환해 브라우저에서 실행하는 x86 PC 에뮬레이터입니다.
GPU 패스스루나 공유 파일 시스템 없이, 클라이언트에서 TCP 포트 하나만으로 원격 GPU 머신의 ffmpeg를 실행하세요.
빠른 빌드를 위한 Rust 기반 도구를 갖춘 풀스택 웹 애플리케이션용 React 프레임워크입니다.
코드를 영상 타임라인과 애니메이션의 기준으로 삼아 프로그램으로 영상을 만드는 React 기반 프레임워크입니다.