Merge Video API

Category: media

Combine multiple video files into a single MP4. This tool runs entirely in the browser using FFmpeg.wasm — no server-side API is available.

Endpoint

N/A Browser API (FFmpeg.wasm)
No Server API

Response

Content-Type: N/A

This tool processes video files locally in the browser using FFmpeg.wasm. No server-side API is available.

// Browser-only: processed via FFmpeg.wasm

cURL Example

# No cURL equivalent — this tool uses FFmpeg.wasm in the browser

Code Samples

// Merge Video uses FFmpeg.wasm in the browser
import { FFmpeg } from '@ffmpeg/ffmpeg';

const ffmpeg = new FFmpeg();
await ffmpeg.load();

await ffmpeg.writeFile('input1.mp4', videoData1);
await ffmpeg.writeFile('input2.mp4', videoData2);

await ffmpeg.writeFile('list.txt',
    'file input1.mp4\nfile input2.mp4');

await ffmpeg.exec(['-f', 'concat', '-safe', '0',
    '-i', 'list.txt', '-c', 'copy', 'output.mp4']);

const data = await ffmpeg.readFile('output.mp4');
# For server-side video merging, use moviepy or ffmpeg-python:
from moviepy.editor import VideoFileClip, concatenate_videoclips

clip1 = VideoFileClip('video1.mp4')
clip2 = VideoFileClip('video2.mp4')

final = concatenate_videoclips([clip1, clip2])
final.write_videofile('merged.mp4')
// For server-side video merging, use FFmpeg via ProcessBuilder:
ProcessBuilder pb = new ProcessBuilder(
    "ffmpeg", "-f", "concat", "-safe", "0",
    "-i", "list.txt", "-c", "copy", "output.mp4"
);
Process process = pb.start();
process.waitFor();