ffmpeg-gui/backend/README.md

80 lines
1.4 KiB
Markdown
Raw Normal View History

# 🖥️ FFmpeg GUI - Backend
FFmpeg를 활용한 영상 다운로드/변환 API 서버입니다.
![Node.js](https://img.shields.io/badge/Node.js-18+-339933?logo=node.js)
![Express](https://img.shields.io/badge/Express-4.x-000000?logo=express)
![FFmpeg](https://img.shields.io/badge/FFmpeg-Required-007808?logo=ffmpeg)
---
## 🛠️ 기술 스택
| 기술 | 설명 |
| ----------- | ------------- |
| **Node.js** | 런타임 환경 |
| **Express** | 웹 프레임워크 |
| **FFmpeg** | 영상 처리 |
| **UUID** | 고유 ID 생성 |
---
## 📡 API 엔드포인트
### `POST /api/download-request`
다운로드 요청을 생성합니다.
**Request Body:**
```json
{
"url": "영상 URL",
"title": "파일명 (선택)",
"options": {
"startTime": "00:00:00",
"endTime": "00:01:00",
"userAgent": "브라우저 UA",
"referer": "리퍼러 URL"
}
}
```
**Response:**
```json
{
"id": "uuid-v4-format"
}
```
---
### `GET /api/download/:id`
생성된 요청 ID로 영상을 다운로드합니다.
- 요청은 **5분 후 자동 만료**됩니다.
- `Content-Type: video/mp4`로 스트리밍됩니다.
---
## 🚀 실행 방법
```bash
# 의존성 설치
npm install
# 서버 실행
npm start
```
서버는 **포트 3000**에서 실행됩니다.
---
## ⚠️ 요구사항
- Node.js 18+
- FFmpeg 설치 필요 (`ffmpeg`, `ffprobe`)