![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include "config.h"#include "config_unix.h"#include "config_win32.h"#include "debug.h"#include "host.h"#include "lib_common.h"#include "video.h"#include "video_display.h"#include "utils/string_view_utils.hpp"#include <condition_variable>#include <vector>#include <memory>#include <mutex>#include <queue>#include <thread>
Go to the source code of this file.
Classes | |
| struct | state_multiplier |
Variables | |
| static const struct video_display_info | display_multiplier_info |
| static constexpr unsigned int | IN_QUEUE_MAX_BUFFER_LEN = 5 |
| static constexpr const char * | MOD_NAME = "[multiplier] " |
| static constexpr int | SKIP_FIRST_N_FRAMES_IN_STREAM = 5 |
Definition in file multiplier.cpp.
|
static |
Definition at line 127 of file multiplier.cpp.
References desc, display_reconfigure(), state_multiplier::displays, video_desc_eq(), and VIDEO_NORMAL.
Referenced by display_multiplier_worker().

|
static |
Definition at line 209 of file multiplier.cpp.
References state.
|
static |
Definition at line 246 of file multiplier.cpp.
References display_ctl_property(), len, property, state, and val.

|
static |
Definition at line 215 of file multiplier.cpp.
References state, and vf_alloc_desc_data().

|
static |
Definition at line 88 of file multiplier.cpp.
References display_needs_mainloop(), flags, fmt, INIT_NOERR, initialize_video_display(), LOG, LOG_LEVEL_ERROR, LOG_LEVEL_FATAL, LOG_LEVEL_VERBOSE, MOD_NAME, parent, show_help(), and tokenize().

|
static |
Definition at line 282 of file multiplier.cpp.
|
static |
Definition at line 267 of file multiplier.cpp.
References display_put_audio_frame(), frame, and state.

|
static |
Definition at line 222 of file multiplier.cpp.
References flags, frame, IN_QUEUE_MAX_BUFFER_LEN, PUTF_BLOCKING, PUTF_DISCARD, state, and vf_free().

|
static |
Definition at line 254 of file multiplier.cpp.
References desc, display_reconfigure(), state, and VIDEO_NORMAL.

|
static |
Definition at line 274 of file multiplier.cpp.
References channels, display_reconfigure_audio(), quant_samples, sample_rate, and state.

|
static |
Multiplier main loop
Runs threads for all slave displays except the first one and an additional one for this display. For the first display given on command-line it then switches to its run-loop. This allows a flawless run on macOS where a GUI worker (GL/SDL) needs to be run in the main thread to work properly.
Definition at line 189 of file multiplier.cpp.
References display_join(), display_multiplier_worker(), display_run_mainloop(), display_run_new_thread(), and state.

|
static |
Definition at line 140 of file multiplier.cpp.
References check_reconf(), tile::data, tile::data_len, display_get_frame(), display_put_frame(), frame, PUTF_BLOCKING, SKIP_FIRST_N_FRAMES_IN_STREAM, state, video_frame::tiles, vf_free(), and video_desc_from_frame().
Referenced by display_multiplier_run().

| REGISTER_MODULE | ( | multiplier | , |
| & | display_multiplier_info, | ||
| LIBRARY_CLASS_VIDEO_DISPLAY | , | ||
| VIDEO_DISPLAY_ABI_VERSION | ) |
|
static |
Definition at line 82 of file multiplier.cpp.
Referenced by display_multiplier_init().
|
static |
Definition at line 288 of file multiplier.cpp.
|
staticconstexpr |
Definition at line 58 of file multiplier.cpp.
Referenced by display_multiplier_putf().
|
staticconstexpr |
Definition at line 59 of file multiplier.cpp.
Referenced by display_multiplier_init().
|
staticconstexpr |
Definition at line 60 of file multiplier.cpp.
Referenced by display_multiplier_worker().