Docker image based on Python 3.11-slim with FFmpeg support for video processing tasks.
191
Gotemberg is a lightweight Dockerized Flask API that performs video processing operations using ffmpeg.
It supports:
โ Extracting a frame from a video
โ Splitting a video into multiple time-based segments
Designed for developers and media-processing pipelines.
ffmpeg internallypython:3.11-slim)The API listens on port 5000.
Run the container:
docker run -p 5000:5000 limbergarcia/gotemberg:video-v2
POST /frameExtracts a single video frame at the specified timestamp.
| Key | Type | Required | Description |
|---|---|---|---|
video | File | Yes | MP4 video to process |
time | String | No | Timestamp in HH:MM:SS (default: 00:00:01) |
curlcurl -X POST http://localhost:5000/frame \
-F "[email protected]" \
-F "time=00:00:03" \
--output frame.jpg
POST /split_durationSplits a video into multiple MP4 files of equal duration (in minutes).
Returns a ZIP file containing all generated segments.
| Key | Type | Required | Description |
|---|---|---|---|
video | File | Yes | MP4 video file to split |
segment_minutes | Integer | Yes | Duration (in minutes) for each output segment |
A ZIP file containing:
part_000.mp4
part_001.mp4
part_002.mp4
...
curlcurl -X POST http://localhost:5000/split_duration \
-F "[email protected]" \
-F "segment_minutes=20" \
-o segments.zip
ffmpeg segment mode:
ffmpeg -i input.mp4 -c copy -map 0 \
-f segment -segment_time <seconds> part_%03d.mp4
-c copy) โ extremely fastAfter sending the response, the API automatically removes:
docker run -p 5000:5000 limbergarcia/gotemberg:video-v2
Content type
Image
Digest
sha256:f60869c1aโฆ
Size
211.6 MB
Last updated
10 months ago
docker pull limbergarcia/gotemberg:video-v2