import { type RequestHandler } from '@sveltejs/kit';
import fs from 'fs';
import path from 'path';
import { promisify } from 'util';

const stat = promisify(fs.stat);

export const GET: RequestHandler = async ({ setHeaders }) => {
	const videoPath = path.join(process.cwd(), 'tmp', 'process.mp4');

	try {
		const stats = await stat(videoPath);
		const videoSize = stats.size;

		// 브라우저가 영상을 스트리밍할 수 있도록 헤더 설정
		setHeaders({
			'Content-Type': 'video/mp4',
			'Content-Length': videoSize.toString(),
			'Accept-Ranges': 'bytes'
		});

		const videoStream = fs.createReadStream(videoPath);
		return new Response(videoStream);
		
	} catch (error) {
		return new Response('영상을 찾을 수 없습니다.', { status: 404 });
	}
};