#include <vector>
#include "defs.h"
+#include "ycbcr_interpretation.h"
struct Flags {
int width = 1280, height = 720;
bool x264_video_to_http = false;
bool x264_video_to_disk = false; // Disables Quick Sync entirely. Implies x264_video_to_http == true.
std::vector<std::string> theme_dirs { ".", "/usr/local/share/nageru" };
+ std::string recording_dir = ".";
std::string theme_filename = "theme.lua";
bool locut_enabled = true;
bool gain_staging_auto = true;
double output_buffer_frames = 6.0;
double output_slop_frames = 0.5;
int max_input_queue_frames = 6;
+ int http_port = DEFAULT_HTTPD_PORT;
bool display_timecode_in_stream = false;
bool display_timecode_on_stdout = false;
+ bool enable_quick_cut_keys = false;
bool ten_bit_input = false;
bool ten_bit_output = false; // Implies x264_video_to_disk == true and x264_bit_depth == 10.
+ YCbCrInterpretation ycbcr_interpretation[MAX_VIDEO_CARDS];
+ bool transcode_audio = true; // Kaeru only.
int x264_bit_depth = 8; // Not user-settable.
bool use_zerocopy = false; // Not user-settable.
bool can_disable_srgb_decoder = false; // Not user-settable.
};
extern Flags global_flags;
-void parse_flags(int argc, char * const argv[]);
+enum Program {
+ PROGRAM_NAGERU,
+ PROGRAM_KAERU
+};
+void usage(Program program);
+void parse_flags(Program program, int argc, char * const argv[]);
#endif // !defined(_FLAGS_H)