]> git.sesse.net Git - nageru/blob - flags.h
Add a flag to disable ALSA monitoring output.
[nageru] / flags.h
1 #ifndef _FLAGS_H
2 #define _FLAGS_H
3
4 #include <string>
5
6 #include "defs.h"
7
8 struct Flags {
9         int num_cards = 2;
10         std::string va_display;
11         bool uncompressed_video_to_http = false;
12         bool x264_video_to_http = false;
13         std::string theme_filename = "theme.lua";
14         bool flat_audio = false;
15         bool flush_pbos = true;
16         std::string stream_mux_name = DEFAULT_STREAM_MUX_NAME;
17         bool stream_coarse_timebase = false;
18         std::string stream_audio_codec_name;  // Blank = use the same as for the recording.
19         int stream_audio_codec_bitrate = DEFAULT_AUDIO_OUTPUT_BIT_RATE;  // Ignored if stream_audio_codec_name is blank.
20         std::string x264_preset = X264_DEFAULT_PRESET;
21         std::string x264_tune = X264_DEFAULT_TUNE;
22         int x264_bitrate = DEFAULT_X264_OUTPUT_BIT_RATE;  // In kilobit/sec.
23         int x264_vbv_max_bitrate = -1;  // In kilobits. 0 = no limit, -1 = same as <x264_bitrate> (CBR).
24         int x264_vbv_buffer_size = -1;  // In kilobits. 0 = one-frame VBV, -1 = same as <x264_bitrate> (one-second VBV).
25         bool enable_alsa_output = true;
26 };
27 extern Flags global_flags;
28
29 void parse_flags(int argc, char * const argv[]);
30
31 #endif  // !defined(_FLAGS_H)