- Notifications
You must be signed in to change notification settings - Fork14
FFmpeg websocket server for ffmpeg-commander.
License
alfg/ffmpegd
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
FFmpeg websocket server and API forFFmpeg Commander.
*Currently a work-in-progress! Bugs and breaking changes are expected.
ffmpegd
connectsFFmpeg Commander toffmpeg by providing a websocket server to send encode tasks and receive realtime progress updates back to the browser. This allows usingffmpeg-commander
as a GUI forffmpeg
.
The goal is to provide a simple interface for sending FFmpeg tasks from the browser (and other supported clients in the future) to your local machine.
SeeUsage for more details.
process websocket[ffmpeg] <-------> [ffmpegd] <-----------> [ffmpeg-commander]
$ go install github.com/alfg/ffmpegd@latest
Release binaries for your platform at:https://github.com/alfg/ffmpegd/releases
A Docker image is available withalfg/ffmpeg build installed:
$ docker run -it -p 8080:8080 -v /tmp/:/home alfg/ffmpegd
Or via GitHub Container Registry:
$ docker run -it -p 8080:8080 -v /tmp/:/home ghcr.io/alfg/ffmpegd
Or using thedocker-compose
example:
$ docker-compose up ffmpegd
TBD
- ffmpeg must be installed and available on your
$PATH
. - Run
ffmpegd
:
$ ffmpegd
This wil start the websocket server in your current working directory and wait for a connection.
- Go tohttps://alfg.github.io/ffmpeg-commander/ in the browser
- Enable
ffmpegd
in Options. - Once connected, you can start sending encode jobs to ffmpegd!
$ ffmpegd███████╗███████╗███╗ ███╗██████╗ ███████╗ ██████╗ ██████╗██╔════╝██╔════╝████╗ ████║██╔══██╗██╔════╝██╔════╝ ██╔══██╗█████╗ █████╗ ██╔████╔██║██████╔╝█████╗ ██║ ███╗██║ ██║██╔══╝ ██╔══╝ ██║╚██╔╝██║██╔═══╝ ██╔══╝ ██║ ██║██║ ██║██║ ██║ ██║ ╚═╝ ██║██║ ███████╗╚██████╔╝██████╔╝╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚══════╝ ╚═════╝ ╚═════╝ v0.0.8[ffmpegd] - websocket server for ffmpeg-commander. Checking FFmpeg version....4.3.1 Checking FFprobe version...4.3.1 Server started on port :8080. - Go to https://alfg.github.io/ffmpeg-commander to connect! - ffmpegd must be enabled in ffmpeg-commander options!Encoding... 6111 / 17620 (34.68%) 3.37x @ 80.77
Seedemo for a websocket client example.
go build -v./ffmpegd
go test ./...
- Logging levels and output
MIT
About
FFmpeg websocket server for ffmpeg-commander.