X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=flags.cpp;h=f3d9b658d286c125d057a1384cec6c1aff5538ad;hb=afe996bc7dfc8689ca356d00824fbfcd632f93a2;hp=996107bbfa1b2d32538828ac71a98f34f7b656c2;hpb=1caeebce7e0d2b18ae7fb588aaccde7d19117e00;p=nageru diff --git a/flags.cpp b/flags.cpp index 996107b..f3d9b65 100644 --- a/flags.cpp +++ b/flags.cpp @@ -13,7 +13,9 @@ Flags global_flags; // Long options that have no corresponding short option. enum LongOption { - OPTION_FAKE_CARDS_AUDIO = 1000, + OPTION_MULTICHANNEL = 1000, + OPTION_MIDI_MAPPING, + OPTION_FAKE_CARDS_AUDIO, OPTION_HTTP_UNCOMPRESSED_VIDEO, OPTION_HTTP_X264_VIDEO, OPTION_X264_PRESET, @@ -55,7 +57,9 @@ void usage() fprintf(stderr, " -v, --va-display=SPEC VA-API device for H.264 encoding\n"); fprintf(stderr, " ($DISPLAY spec or /dev/dri/render* path)\n"); fprintf(stderr, " -m, --map-signal=SIGNAL,CARD set a default card mapping (can be given multiple times)\n"); - fprintf(stderr, " -M, --input-mapping=FILE start with the given audio input mapping\n"); + fprintf(stderr, " -M, --input-mapping=FILE start with the given audio input mapping (implies --multichannel)\n"); + fprintf(stderr, " --multichannel start in multichannel audio mapping mode\n"); + fprintf(stderr, " --midi-mapping=FILE start with the given MIDI controller mapping (implies --multichannel)\n"); fprintf(stderr, " --fake-cards-audio make fake (disconnected) cards output a simple tone\n"); fprintf(stderr, " --http-uncompressed-video send uncompressed NV12 video to HTTP clients\n"); fprintf(stderr, " --http-x264-video send x264-compressed video to HTTP clients\n"); @@ -103,6 +107,8 @@ void parse_flags(int argc, char * const argv[]) { "map-signal", required_argument, 0, 'm' }, { "input-mapping", required_argument, 0, 'M' }, { "va-display", required_argument, 0, 'v' }, + { "multichannel", no_argument, 0, OPTION_MULTICHANNEL }, + { "midi-mapping", required_argument, 0, OPTION_MIDI_MAPPING }, { "fake-cards-audio", no_argument, 0, OPTION_FAKE_CARDS_AUDIO }, { "http-uncompressed-video", no_argument, 0, OPTION_HTTP_UNCOMPRESSED_VIDEO }, { "http-x264-video", no_argument, 0, OPTION_HTTP_X264_VIDEO }, @@ -172,9 +178,16 @@ void parse_flags(int argc, char * const argv[]) case 'M': global_flags.input_mapping_filename = optarg; break; + case OPTION_MULTICHANNEL: + global_flags.multichannel_mapping_mode = true; + break; case 'v': global_flags.va_display = optarg; break; + case OPTION_MIDI_MAPPING: + global_flags.midi_mapping_filename = optarg; + global_flags.multichannel_mapping_mode = true; + break; case OPTION_FAKE_CARDS_AUDIO: global_flags.fake_cards_audio = true; break;