Record vnc screens to mp4 video using ffmpeg written in go.
Go to file
2020-08-09 23:13:57 +02:00
.gitattributes Add .gitattributes 2019-06-02 12:20:06 +02:00
.gitignore First draft 2019-06-02 12:35:25 +02:00
Dockerfile Convert to go module 2020-08-09 23:13:57 +02:00
go.mod Convert to go module 2020-08-09 23:13:57 +02:00
go.sum Convert to go module 2020-08-09 23:13:57 +02:00
LICENSE Initial commit 2019-06-02 12:16:36 +02:00
main.go First draft 2019-06-02 12:35:25 +02:00
README.md First draft 2019-06-02 12:35:25 +02:00

VNC recorder

this is wip, don't use in production!

Record VNC screens to mp4 video using ffmpeg. Thanks to amitbet for providing his vnc2video library which made this wrapper possible.

Use

docker run -it saily/vnc-recorder --help


NAME:
   vnc-recorder - Connect to a vnc server and record the screen to a video.

USAGE:
   vnc-recorder [global options] command [command options] [arguments...]

VERSION:
   1.0

AUTHOR:
   Daniel Widerin <daniel@widerin.net>

COMMANDS:
     help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --ffmpeg value     Which ffmpeg executable to use (default: "ffmpeg") [$VR_FFMPEG_BIN]
   --host value       VNC host (default: "localhost") [$VR_VNC_HOST]
   --port value       VNC port (default: 5900) [$VR_VNC_PORT]
   --password value   Password to connect to the VNC host (default: "secret") [$VR_VNC_PASSWORD]
   --framerate value  Framerate to record (default: 30) [$VR_FRAMERATE]
   --outfile value    Output file to record to. (default: "output.mp4") [$VR_OUTFILE]
   --help, -h         show help
   --version, -v      print the version

Note: If you run vnc-recorder from your command line and don't use docker you might want to customize the --ffmpeg flag to point to an existing ffmpeg installation.

Build

docker build -t yourbuild .
docker run -it yourbuild --help

TODO

  • Add tests!
  • Add more encoder options
  • Get some patches merged for our dependencies