]> git.sesse.net Git - nageru/blobdiff - flags.h
Release Nageru 1.7.2.
[nageru] / flags.h
diff --git a/flags.h b/flags.h
index 7f39fdde11be10b18980c82ac5e3dfc4461f169c..147c62a0b1b80c3406ce69fa01bd3fdbe5e480e2 100644 (file)
--- a/flags.h
+++ b/flags.h
@@ -8,6 +8,7 @@
 #include <vector>
 
 #include "defs.h"
+#include "ycbcr_interpretation.h"
 
 struct Flags {
        int width = 1280, height = 720;
@@ -18,6 +19,7 @@ struct Flags {
        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;
@@ -52,16 +54,25 @@ struct Flags {
        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)