X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=nageru%2Fflags.h;h=7704410ec5d7f5feaadae43cd757a24b2a2f93a6;hb=a0e57ec99e9dfdd7e79bcf21e8c996dc43b6cb49;hp=96a4160f80515c4a2c815f0084f60f08d5b21f50;hpb=8bb8bb7cc9700befab35a8cc2c4b7a88f0638af9;p=nageru diff --git a/nageru/flags.h b/nageru/flags.h index 96a4160..7704410 100644 --- a/nageru/flags.h +++ b/nageru/flags.h @@ -8,6 +8,7 @@ #include #include "defs.h" +#include "shared/shared_defs.h" #include "ycbcr_interpretation.h" struct Flags { @@ -16,7 +17,6 @@ struct Flags { int max_num_cards = MAX_VIDEO_CARDS; std::string va_display; bool fake_cards_audio = false; - bool uncompressed_video_to_http = false; bool x264_video_to_http = false; bool x264_video_to_disk = false; // Disables Quick Sync entirely. Implies x264_video_to_http == true. bool x264_separate_disk_encode = false; // Disables Quick Sync entirely. Implies x264_video_to_disk == true. @@ -41,8 +41,6 @@ struct Flags { bool x264_speedcontrol_verbose = false; int x264_bitrate = -1; // In kilobit/sec. -1 = not set = DEFAULT_X264_OUTPUT_BIT_RATE. float x264_crf = HUGE_VAL; // From 51 - QP_MAX_SPEC to 51. HUGE_VAL = not set = use x264_bitrate instead. - int x264_vbv_max_bitrate = -1; // In kilobits. 0 = no limit, -1 = same as (CBR). - int x264_vbv_buffer_size = -1; // In kilobits. 0 = one-frame VBV, -1 = same as (one-second VBV). std::vector x264_extra_param; // In “key[,value]” format. int av1_preset = DEFAULT_AV1_PRESET; @@ -78,16 +76,19 @@ struct Flags { 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. + int bit_depth = 8; // 8 or 10. 10 implies x264_video_to_disk == true. YCbCrInterpretation ycbcr_interpretation[MAX_VIDEO_CARDS]; bool transcode_video = true; // Kaeru only. bool transcode_audio = true; // Kaeru only. bool enable_audio = true; // Kaeru only. If false, then transcode_audio is also false. - int x264_bit_depth = 8; // Not user-settable. bool use_zerocopy = false; // Not user-settable. bool fullscreen = false; std::map card_to_mjpeg_stream_export; // If a card is not in the map, it is not exported. + std::string srt_destination_host; + std::string srt_destination_port; + std::string srt_streamid; + std::string srt_passphrase; + int srt_output_latency_ms = DEFAULT_SRT_OUTPUT_LATENCY_MS; }; extern Flags global_flags;