![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include "config_msvc.h"#include "debug.h"#include <ntv2devicescanner.h>#include <ajantv2/includes/ntv2utils.h>#include <ajabase/system/debug.h>#include <ajatypes.h>#include <ntv2debug.h>#include <algorithm>#include <cassert>#include <chrono>#include <cmath>#include <condition_variable>#include <cstdint>#include <cstdio>#include <cstdlib>#include <cstring>#include <functional>#include <iostream>#include <memory>#include <mutex>#include <queue>#include <sstream>#include <stdexcept>#include <string>#include <thread>#include <unordered_map>#include <utility>#include <vector>#include "audio/types.h"#include "host.h"#include "lib_common.h"#include "utils/color_out.h"#include "video_display.h"#include "video.h"#include "aja_common.hpp"
Go to the source code of this file.
Classes | |
| struct | ultragrid::aja::display |
| struct | ultragrid::aja::display::configuration |
| struct | ultragrid::aja::display::desc |
Namespaces | |
| namespace | ultragrid |
| namespace | ultragrid::aja |
Macros | |
| #define | BPS 4 |
| #define | CHECK(cmd) |
| #define | CHECK_EX(cmd, msg, action_failed) |
| #define | DEFAULT_MAX_FRAME_QUEUE_LEN 1 |
| #define | LINK_SPEC static |
| #define | MOD_NAME "[AJA display] " |
| #define | NOOP ((void)0) |
| #define | SAMPLE_RATE 48000 |
Variables | |
| const unordered_map< NTV2Channel, NTV2OutputCrosspointID, hash< int > > | ultragrid::aja::chanToLutSrc |
| static const struct video_display_info | display_aja_info |
Definition in file aja.cpp.
| #define BPS 4 |
The maximum number of bytes of 48KHz audio that can be transferred for two frames. Worst case, assuming 16 channels of audio (max), 4 bytes per sample, and 67 msec per frame (assuming the lowest possible frame rate of 14.98 fps)... 48,000 samples per second requires 6,408 samples x 4 bytes/sample x 16 = 410,112 bytes 402K will suffice, with 1536 bytes to spare
Definition at line 102 of file aja.cpp.
Referenced by display_aja_get_property(), and display_aja_reconfigure_audio().
| #define CHECK | ( | cmd | ) |
| #define CHECK_EX | ( | cmd, | |
| msg, | |||
| action_failed ) |
Definition at line 131 of file aja.cpp.
Referenced by ultragrid::aja::display::~display(), ultragrid::aja::display::RouteOutputSignal(), ultragrid::aja::display::SetUpAudio(), and ultragrid::aja::display::SetUpVideo().
| #define DEFAULT_MAX_FRAME_QUEUE_LEN 1 |
Definition at line 93 of file aja.cpp.
Referenced by ultragrid::aja::display::show_help().
| #define MOD_NAME "[AJA display] " |
Definition at line 94 of file aja.cpp.
Referenced by display_aja_init(), display_aja_put_audio_frame(), and display_aja_reconfigure().
| #define SAMPLE_RATE 48000 |
Definition at line 103 of file aja.cpp.
Referenced by display_aja_get_property(), and display_aja_reconfigure_audio().
| LINK_SPEC void display_aja_done | ( | void * | state | ) |
Definition at line 1008 of file aja.cpp.
References state, and VIDEO_CODEC_NONE.
|
static |
Definition at line 868 of file aja.cpp.
References display_aja_is_quad_format(), and fmt.
Referenced by display_aja_reconfigure().

| LINK_SPEC bool display_aja_get_property | ( | void * | state, |
| int | property, | ||
| void * | val, | ||
| size_t * | len ) |
Definition at line 1041 of file aja.cpp.
References AC_PCM, BPS, ultragrid::aja::codec_map, codecs, count, desc, DISPLAY_PROPERTY_AUDIO_FORMAT, DISPLAY_PROPERTY_CODECS, DISPLAY_PROPERTY_VIDEO_MODE, DISPLAY_PROPERTY_VIDEO_SEPARATE_TILES, len, property, SAMPLE_RATE, state, and val.
| LINK_SPEC struct video_frame * display_aja_getf | ( | void * | state | ) |
Definition at line 1020 of file aja.cpp.
References state, and vf_alloc_desc_data().

Definition at line 938 of file aja.cpp.
References DISPLAY_FLAG_AUDIO_ANY, flags, fmt, INIT_NOERR, LOG, LOG_LEVEL_ERROR, MOD_NAME, RGB, and UYVY.
|
static |
format is a quad-link format
Definition at line 855 of file aja.cpp.
References fmt.
Referenced by display_aja_get_first_matching_video_format().
| LINK_SPEC void display_aja_probe | ( | struct device_info ** | available_cards, |
| int * | count, | ||
| void(** | deleter )(void *) ) |
Definition at line 831 of file aja.cpp.
| LINK_SPEC void display_aja_put_audio_frame | ( | void * | state, |
| const struct audio_frame * | frame ) |
Definition at line 1088 of file aja.cpp.
References frame, len, LOG, LOG_LEVEL_WARNING, MOD_NAME, NTV2_AUDIOSIZE_MAX, and state.
| LINK_SPEC bool display_aja_putf | ( | void * | state, |
| struct video_frame * | frame, | ||
| long long | nonblock ) |
Definition at line 1027 of file aja.cpp.
References video_frame::color_spec, tile::data, tile::data_len, frame, nonblock, ultragrid::aja::display::Putf(), R12L, state, video_frame::tiles, and vc_copylineR12LtoR12A().

| LINK_SPEC bool display_aja_reconfigure | ( | void * | state, |
| struct video_desc | desc ) |
Definition at line 885 of file aja.cpp.
References ultragrid::aja::codec_map, video_desc::color_spec, desc, display_aja_get_first_matching_video_format(), video_desc::fps, video_desc::height, INTERLACED_MERGED, video_desc::interlacing, LOG, LOG_LEVEL_ERROR, MOD_NAME, state, video_desc::tile_count, VIDEO_CODEC_NONE, and video_desc::width.

| LINK_SPEC bool display_aja_reconfigure_audio | ( | void * | state, |
| int | quant_samples, | ||
| int | channels, | ||
| int | sample_rate ) |
Definition at line 1103 of file aja.cpp.
References BPS, channels, quant_samples, SAMPLE_RATE, sample_rate, and state.
| REGISTER_MODULE | ( | aja | , |
| & | display_aja_info, | ||
| LIBRARY_CLASS_VIDEO_DISPLAY | , | ||
| VIDEO_DISPLAY_ABI_VERSION | ) |
|
static |
Definition at line 1120 of file aja.cpp.