UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
Loading...
Searching...
No Matches
vidcap_state_ndi Struct Reference
Collaboration diagram for vidcap_state_ndi:
Collaboration graph

Classes

struct  last_desc
 

Public Member Functions

 ~vidcap_state_ndi ()
 
void print_stats ()
 

Public Attributes

array< struct audio_frame, 2 > audio
 
int audio_buf_idx = 0
 
double audio_divisor = DEFAULT_AUDIO_DIVISOR
 sample divisor derived from audio reference level - 1 for 0 dB, 10 for 20 dB
 
bool capture_audio = false
 
NDIlib_recv_create_v3_t create_settings {NDIlib_source_t(), NDIlib_recv_color_format_best, NDIlib_recv_bandwidth_highest, true, NULL}
 
NDIlib_video_frame_v2_t field_0 {}
 stored to asssemble interleaved interlaced video together with field 1
 
NDIlib_find_create_t find_create_settings {true, nullptr, nullptr}
 
int frames = 0
 
LIB_HANDLE lib {}
 
const NDIlib_t * NDIlib {}
 
NDIlib_find_instance_t pNDI_find = nullptr
 
NDIlib_recv_instance_t pNDI_recv = nullptr
 
string requested_name
 
string requested_url
 
std::chrono::steady_clock::time_point t0 = std::chrono::steady_clock::now()
 

Detailed Description

Definition at line 81 of file ndi.cpp.

Constructor & Destructor Documentation

◆ ~vidcap_state_ndi()

vidcap_state_ndi::~vidcap_state_ndi ( )
inline

Definition at line 115 of file ndi.cpp.

115 {
116 free(const_cast<char *>(find_create_settings.p_extra_ips));
117 }
NDIlib_find_create_t find_create_settings
Definition ndi.cpp:96

References find_create_settings.

Member Function Documentation

◆ print_stats()

void vidcap_state_ndi::print_stats ( )
inline

Definition at line 105 of file ndi.cpp.

105 {
106 auto now = steady_clock::now();
107 double seconds = duration_cast<std::chrono::microseconds>(now - t0).count() / 1000000.0;
108 if (seconds > 5) {
109 LOG(LOG_LEVEL_INFO) << MOD_NAME << frames << " frames in "
110 << seconds << " seconds = " << frames / seconds << " FPS\n";
111 frames = 0;
112 t0 = now;
113 }
114 }
#define LOG_LEVEL_INFO
normal reporting
Definition debug.h:62
#define LOG(level)
Definition debug.h:313
static constexpr const char * MOD_NAME
Definition ndi.cpp:69
std::chrono::steady_clock::time_point t0
Definition ndi.cpp:99

References frames, LOG, LOG_LEVEL_INFO, MOD_NAME, and t0.

Member Data Documentation

◆ audio

array<struct audio_frame, 2> vidcap_state_ndi::audio

Definition at line 87 of file ndi.cpp.

Referenced by audio_append_pcm().

◆ audio_buf_idx

int vidcap_state_ndi::audio_buf_idx = 0

Definition at line 88 of file ndi.cpp.

Referenced by audio_append_pcm().

◆ audio_divisor

double vidcap_state_ndi::audio_divisor = DEFAULT_AUDIO_DIVISOR

sample divisor derived from audio reference level - 1 for 0 dB, 10 for 20 dB

Definition at line 103 of file ndi.cpp.

Referenced by audio_append_pcm().

◆ capture_audio

bool vidcap_state_ndi::capture_audio = false

Definition at line 89 of file ndi.cpp.

◆ create_settings

NDIlib_recv_create_v3_t vidcap_state_ndi::create_settings {NDIlib_source_t(), NDIlib_recv_color_format_best, NDIlib_recv_bandwidth_highest, true, NULL}

Definition at line 97 of file ndi.cpp.

97{NDIlib_source_t(), NDIlib_recv_color_format_best, NDIlib_recv_bandwidth_highest, true, NULL};

◆ field_0

NDIlib_video_frame_v2_t vidcap_state_ndi::field_0 {}

stored to asssemble interleaved interlaced video together with field 1

Definition at line 92 of file ndi.cpp.

92{};

◆ find_create_settings

NDIlib_find_create_t vidcap_state_ndi::find_create_settings {true, nullptr, nullptr}

Definition at line 96 of file ndi.cpp.

96{true, nullptr, nullptr};

Referenced by ~vidcap_state_ndi(), and show_help().

◆ frames

int vidcap_state_ndi::frames = 0

Definition at line 100 of file ndi.cpp.

Referenced by print_stats().

◆ lib

LIB_HANDLE vidcap_state_ndi::lib {}

Definition at line 83 of file ndi.cpp.

83{};

◆ NDIlib

const NDIlib_t* vidcap_state_ndi::NDIlib {}

Definition at line 84 of file ndi.cpp.

84{};

Referenced by show_help(), and vidcap_ndi_done().

◆ pNDI_find

NDIlib_find_instance_t vidcap_state_ndi::pNDI_find = nullptr

Definition at line 86 of file ndi.cpp.

◆ pNDI_recv

NDIlib_recv_instance_t vidcap_state_ndi::pNDI_recv = nullptr

Definition at line 85 of file ndi.cpp.

◆ requested_name

string vidcap_state_ndi::requested_name

Definition at line 94 of file ndi.cpp.

Referenced by get_matching_source().

◆ requested_url

string vidcap_state_ndi::requested_url

Definition at line 95 of file ndi.cpp.

Referenced by get_matching_source().

◆ t0

std::chrono::steady_clock::time_point vidcap_state_ndi::t0 = std::chrono::steady_clock::now()

Definition at line 99 of file ndi.cpp.

Referenced by print_stats().


The documentation for this struct was generated from the following file: