ffmpeg writer: lossless avi command (ffv1, dolphin style)

reorder options, make commands easier to read
This commit is contained in:
feos 2018-02-25 15:03:24 +03:00
parent e70549667d
commit 50fdeb59e1
1 changed files with 24 additions and 11 deletions

View File

@ -48,17 +48,30 @@ namespace BizHawk.Client.EmuHawk
{
return new[]
{
new FormatPreset("Uncompressed AVI", "AVI file with uncompressed audio and video. Very large.", "-c:a pcm_s16le -c:v rawvideo -f avi", false, "avi"),
new FormatPreset("Xvid", "AVI file with xvid video and mp3 audio.", "-c:a libmp3lame -c:v libxvid -f avi", false, "avi"),
//new FormatPreset("Lossless Compressed AVI", "AVI file with zlib video and uncompressed audio.", "-c:a pcm_s16le -c:v zlib -f avi", false, "avi"),
new FormatPreset("FLV", "avc+aac in flash container.", "-c:a libvo_aacenc -c:v libx264 -f flv", false, "flv"),
new FormatPreset("Matroska Lossless", "MKV file with lossless video and audio", "-c:a pcm_s16le -c:v libx264rgb -crf 0 -f matroska", false, "mkv"),
new FormatPreset("Matroska", "MKV file with h264 + vorbis", "-c:a libvorbis -c:v libx264 -f matroska", false, "mkv"),
new FormatPreset("QuickTime", "MOV file with avc+aac", "-c:a libvo_aacenc -c:v libx264 -f mov", false, "mov"),
new FormatPreset("Ogg", "Theora + Vorbis in OGG", "-c:a libvorbis -c:v libtheora -f ogg", false, "ogg"),
new FormatPreset("WebM", "Vp8 + Vorbis in WebM", "-c:a libvorbis -c:v libvpx -f webm", false, "webm"),
new FormatPreset("mp4", "ISO mp4 with AVC+AAC", "-c:a libvo_aacenc -c:v libx264 -f mp4", false, "mp4"),
new FormatPreset("[Custom]", "Write your own ffmpeg command. For advanced users only", "-c:a foo -c:v bar -f baz", true, "foobar"),
new FormatPreset("AVI Uncompressed", "Uncompressed video and audio in an AVI container. Very large.",
"-c:a pcm_s16le -c:v rawvideo -f avi", false, "avi"),
new FormatPreset("AVI Lossless", "Lossless FFV1 video and uncompressed audio in an AVI container. Compatible with AVISource, if ffmpeg based decoder is installed.",
"-c:a pcm_s16le -c:v ffv1 -pix_fmt bgr0 -level 1 -g 1 -coder 1 -context 1 -f avi", false, "avi"),
//new FormatPreset("AVI Lossless", "Lossless zlib video and uncompressed audio in an AVI container.",
// "-c:a pcm_s16le -c:v zlib -f avi", false, "avi"),
new FormatPreset("Matroska Lossless", "Lossless AVC video and uncompressed audio in a Matroska container.",
"-c:a pcm_s16le -c:v libx264rgb -crf 0 -f matroska", false, "mkv"),
new FormatPreset("Matroska", "AVC video and Vorbis audio in a Matroska container.",
"-c:a libvorbis -c:v libx264 -f matroska", false, "mkv"),
new FormatPreset("MP4", "AVC video and AAC audio in an MP4 container.",
"-c:a libvo_aacenc -c:v libx264 -f mp4", false, "mp4"),
new FormatPreset("WebM", "VP8 video and Vorbis audio in a WebM container.",
"-c:a libvorbis -c:v libvpx -f webm", false, "webm"),
new FormatPreset("Ogg", "Theora video and Vorbis audio in an Ogg contrainer.",
"-c:a libvorbis -c:v libtheora -f ogg", false, "ogg"),
new FormatPreset("Xvid", "Xvid video and MP3 audio in an AVI container.",
"-c:a libmp3lame -c:v libxvid -f avi", false, "avi"),
new FormatPreset("QuickTime", "AVC video and AAC audio in a QuickTime container.",
"-c:a libvo_aacenc -c:v libx264 -f mov", false, "mov"),
new FormatPreset("FLV", "AVC video and AAC audio in a Flash Video container.",
"-c:a libvo_aacenc -c:v libx264 -f flv", false, "flv"),
new FormatPreset("[Custom]", "Write your own ffmpeg command. For advanced users only.",
"-c:a foo -c:v bar -f baz", true, "foobar"),
};
}