61#define EXIT_FAIL_USAGE 2
63#define EXIT_FAIL_DISPLAY 4
64#define EXIT_FAIL_CAPTURE 5
65#define EXIT_FAIL_DECODER 6
66#define EXIT_FAIL_TRANSMIT 7
67#define EXIT_FAIL_COMPRESS 8
68#define EXIT_FAIL_CONTROL_SOCK 9
69#define EXIT_FAIL_NETWORK 10
70#define EXIT_FAIL_AUDIO 11
73#define INIT_NOERR ((void*)1)
89#define DEFAULT_AUDIO_CAPTURE_CHANNELS 1
97#define MAX_CUDA_DEVICES 4
102#define MODE_SENDER (1U<<0U)
103#define MODE_RECEIVER (1U<<1U)
122#define RATE_UNLIMITED 0
123#define RATE_AUTO (-1)
124#define RATE_DYNAMIC (-2)
125#define RATE_MIN RATE_DYNAMIC
126#define RATE_DEFAULT (-3)
127#define RATE_FLAG_FIXED_RATE (1ll<<62ll)
137 void (*
callback)(
void *),
void *udata);
179#define COMMON_OPTS_INIT \
188#include <unordered_map>
192#define MERGE_(a,b) a##b
193#define LABEL_(a) MERGE_(unique_name_, a)
194#define UNIQUE_LABEL LABEL_(__COUNTER__)
203#define ADD_TO_PARAM(param, doc) ADD_TO_PARAM_SALT(UNIQUE_LABEL, param, doc)
204#define ADD_TO_PARAM_SALT(salt, param, doc) static void MERGE_(add_to_param_doc_, salt)(void) __attribute__((constructor));\
206static void MERGE_(add_to_param_doc_, salt)(void) \
208 register_param(param, doc);\
210struct NOT_DEFINED_STRUCT_THAT_SWALLOWS_SEMICOLON
void handle_error(int status)
bool running_in_debugger()
void common_cleanup(struct init_data *init_data)
void crash_signal_handler(int sig)
void init_root_module(struct module *root_mod)
unsigned int cuda_devices_count
char * sage_network_device
void print_capabilities(const char *cfg)
void register_should_exit_callback(struct module *mod, void(*callback)(void *), void *udata)
volatile int audio_offset
added audio delay in ms (non-negative), can be used to tune AV sync
int glfw_init_count
0->1 - call glfwInit, 1->0 call glfwTerminate; glfw{Init,Terminate} should be called from main thr,...
void(* mainloop_t)(void *)
bool cuda_devices_explicit
–cuda-device/-D specified expilcitly
unsigned int audio_capture_bps
const char * get_commandline_param(const char *key)
int get_exit_status(struct module *root_mod)
int set_pixfmt_conv_policy(const char *optarg)
void unregister_should_exit_callback(struct module *mod, void(*callback)(void *), void *udata)
std::unordered_map< std::string, std::string > commandline_params
void register_param(const char *param, const char *doc)
bool tok_in_argv(char **argv, const char *tok)
bool register_mainloop(mainloop_t, void *)
bool parse_params(const char *optarg, bool preinit)
unsigned int audio_capture_sample_rate
void hang_signal_handler(int sig)
void set_audio_delay(int val)
char pixfmt_conv_pref[]
bitdepth, subsampling, color space
void print_configuration(void)
const char * get_version_details(void)
bool parse_bitrate(char *optarg, long long int *bitrate)
unsigned int cuda_devices[]
volatile int video_offset
added video delay in ms (non-negative), can be used to tune AV sync
struct init_data * common_preinit(int argc, char *argv[])
mainloop_t mainloop
mainloop to be run if display mainloop isn't run
int get_audio_delay(void)
void set_commandline_param(const char *key, const char *val)
void print_video_codecs(void)
int set_audio_capture_format(const char *optarg)
void print_pixel_formats(void)
unsigned int audio_capture_channels
@ STR_LEN
"standard" string length placeholder
Option::Callback::fcn_type callback
struct exporter * exporter
Struct video_frame represents a video frame and contains video description.