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.
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 <x264_bitrate> (CBR).
- int x264_vbv_buffer_size = -1; // In kilobits. 0 = one-frame VBV, -1 = same as <x264_bitrate> (one-second VBV).
std::vector<std::string> x264_extra_param; // In “key[,value]” format.
int av1_preset = DEFAULT_AV1_PRESET;
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,av1}_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.
- int av1_bit_depth = 8; // Not user-settable.
bool use_zerocopy = false; // Not user-settable.
bool fullscreen = false;
std::map<unsigned, unsigned> 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 = DEFAULT_SRT_OUTPUT_LATENCY_MS;
};
extern Flags global_flags;