Skip to content

kevinsung/slp-to-video

Repository files navigation

slp-to-video

Convert Slippi replay files to video.

Takes sequences of Slippi replay files with optional start and end frames and overlay images, and stitches these sequences together. Useful for creating combo videos or converting sets to video. See here for an example of the input file format.

Requirements

  • Node.js >= 12
  • npm
  • ffmpeg

Setup (GNU/Linux)

  1. Install Dolphin build dependencies. See here or here for instructions.

  2. Clone this repository and build Dolphin.

git clone https://github.com/kevinsung/slp-to-video.git
cd slp-to-video
./build-dolphin.sh
  1. Install node dependencies.
npm i

Usage

node slp_to_video.js INPUT_FILE

Convert .slp files to video.

Positionals:
  INPUT_FILE  Describes the input .slp files and output filenames. See
              example_input.json for an example.                        [string]

Options:
  --help            Show help                                          [boolean]
  --version         Show version number                                [boolean]
  --num-processes   The number of processes to use.        [number] [default: 1]
  --dolphin-path    Path to the Dolphin executable.
                      [string] [default: "Ishiiruka/build/Binaries/dolphin-emu"]
  --ssbm-iso-path   Path to the SSBM ISO image.   [string] [default: "SSBM.iso"]
  --game-music-on   Turn game music on.                                [boolean]
  --hide-hud        Hide percentage and stock icons.                   [boolean]
  --hide-tags       Hide tags.                                         [boolean]
  --hide-names      Hide player names.                                 [boolean]
  --disable-chants  Disable character crowd chants.                    [boolean]
  --fixed-camera    Fixed camera mode.                                 [boolean]
  --widescreen-off  Turn off widescreen.                               [boolean]
  --bitrate-kbps    Bitrate in kbps.                   [number] [default: 15000]
  --resolution      Internal resolution multiplier.     [string] [default: "2x"]
  --tmpdir          Temporary directory to use (temporary files may be large).
                         [string] [default: "/tmp/tmp-2c0591ca28e696ed5e563801"]

Notes

  • The default setting for the --resolution option is '2x'. When widescreen is enabled (the default), this corresponds to an internal resolution of 1878x1056. For this case, we automatically upscale the video resolution to 1920x1080.

Contact

Kevin Sung: kevjsung@umich.edu

About

Convert Slippi replay files to video using Dolphin

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published