Tool-assisted game movies
When human skills are just not enough

Emulator Resources / JPC / Movie Dumping R11

Making dump file


  • If you want to, you can dump to named pipe / named FIFO.
  • Concatenation of dump files is concatenation of their contents.

Programs needed

Making lossless video and audio

60 fps fixed

dumpconvert --video-width=640 --video-height=400 --video-framerate=60 --audio-delay=1.895 --output-wav=audio.wav --output-x264=raw.avi,crf=0,fullrange=on dump.jmd

  • --video-width=640 Sets video width to 640. 640 is the most common value here (its rare to see anything else). See the emulator statusbar during actual game to see what to put here.
  • --video-height=400 Sets video height to 400. 400 is the most common value here (480 is also ocassionally seen, anything else is rare). See the emulator statusbar during actual game to see what to put here.
  • --video-framerate=60 Set video framerate to 60. For videos with anything else as framerate, its simpler to use automatic framerate as opposed to trying to figure out what the proper framerate is.
  • --audio-delay=1.895 Delay audio by 1.895s. The proper value here is length of logo minus codec delay. 1.895 is for 2 second logo and 0.105s codec delay (HE-AAC at 44100Hz). If you use Ogg Vorbis as codec, this is the logo length. NOTE: 2 (2 nanoseconds) is not the same here as 2.0 (2 seconds)!
  • --output-wav=audio.wav Output audio as WAV to audio.wav
  • --output-x264=raw.avi,crf=0,fullrange=on Output video as raw.avi, settings being "lossless" encoding (crf=0).
  • dump.jmd The actual dump file.

If Ogg Vorbis audio is OK and you have oggenc, you could also replace --output-wav option with --output-oggenc=audio.ogg,quality=3 (adjust quality to taste, 3 is reasonable). In this case, the audio delay should be length of logo, since Vorbis has no known codec delay.

If you don't have x264 that works with dumpconvert, you can also dump raw i420 by using --output-rawi420=video.yuv instead of --output-x264 option. If this results red and blue swapped around, use --output-rawi420-uvswap=video.yuv (swap red and blue before writing). Note that these files will be large.

Variable fps

dumpconvert --video-width=640 --video-height=400 --video-framerate=auto --audio-delay=1.895 --output-wav=audio.wav --output-x264=raw.avi,crf=0,fullrange=on --output-timecodev2=times.txt --video-max-dedup=29 dump.jmd

  • --video-width=640, --video-height=400, --audio-delay=1.895, --output-wav=audio.wav, --output-x264=raw.avi,crf=0,fullrange=on see above
  • --video-framerate=auto Set automatic variable framerate
  • --output-timecodev2=times.txt Write timecode data to times.txt
  • --video-max-dedup=29 Allow eliding up to 29 back to back identical frames
  • dump.jmd The actual dump file.

Note: Due to output being variable fps without correct timecodes, the timecodes in raw.avi will be who knows what. Take this into consideration when inserting subtitles.

Very quick'n'dirty way to make WIP encode (no logo, no subtitles)

dumpconvert --video-width=640 --video-height=400 --video-framerate=auto --output-oggenc=audio.ogg,quality=3 --output-x264=video.mkv,crf=20 --output-timecodev2=times.txt --video-max-dedup=29 dump.jmd

mkvmerge --aspect-ratio=1:4/3 --timecodes=1:times.txt -o wipencode.mkv video.mkv audio.ogg

Streamtools errata:

This is for producing stuff for further encoding (see the encoding guide). Thus advanced features like logo insertion, subtitling are not covered here.

Combined RSS Feed
EmulatorResources/JPC/MovieDumpingR11 last edited by Ilari on 2013-06-04 19:33:45
Page info and history | Latest diff | List referrers | View Source