![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include "audio/audio_capture.h"#include "audio/audio_playback.h"#include "audio/codec.h"#include "audio/types.h"#include "debug.h"#include "lib_common.h"#include "module.h"#include "rtp/rtp.h"#include "transmit.h"#include "utils/audio_buffer.h"#include "utils/thread.h"#include <chrono>#include <iostream>#include <map>#include <mutex>#include <thread>#include <vector>
Go to the source code of this file.
Classes | |
| struct | am_participant |
| class | generic_mix_algo< source_t, intermediate_t > |
| class | linear_mix_algo< source_t, intermediate_t > |
| class | logarithmic_mix_algo< source_t, intermediate_t > |
| class | sockaddr_storage_less |
| struct | state_audio_mixer |
Macros | |
| #define | BPS 2 |
| #define | CHANNELS 1 |
| #define | FRAMES_PER_SEC 25 |
| #define | PARTICIPANT_TIMEOUT_S 60 |
| #define | SAMPLE_RATE 48000 |
| #define | SAMPLES_PER_FRAME (SAMPLE_RATE / FRAMES_PER_SEC) |
Typedefs | |
| typedef int32_t | sample_type_mixed |
| typedef int16_t | sample_type_source |
Functions | |
| static bool | audio_play_mixer_ctl (void *state, int request, void *data, size_t *len) |
| static void | audio_play_mixer_done (void *state) |
| static void | audio_play_mixer_help () |
| static void * | audio_play_mixer_init (const char *cfg) |
| static void | audio_play_mixer_probe (struct device_info **available_devices, int *count, void(**deleter)(void *)) |
| static void | audio_play_mixer_put_frame (void *state, const struct audio_frame *frame) |
| static bool | audio_play_mixer_reconfigure (void *state, struct audio_desc desc) |
| static void | mixer_dummy_rtp_callback (struct rtp *session, rtp_event *e) |
| REGISTER_MODULE (mixer, &aplay_mixer_info, LIBRARY_CLASS_AUDIO_PLAYBACK, AUDIO_PLAYBACK_ABI_VERSION) | |
Variables | |
| static const struct audio_playback_info | aplay_mixer_info |
Definition in file mixer.cpp.
| #define BPS 2 |
Definition at line 64 of file mixer.cpp.
Referenced by am_participant::am_participant(), audio_play_mixer_ctl(), audio_play_mixer_reconfigure(), calculate_rms_helper(), get_avg_volume_helper(), ultragrid::aja::display::process_frames(), and state_audio_mixer::worker().
| #define CHANNELS 1 |
Definition at line 65 of file mixer.cpp.
Referenced by am_participant::am_participant(), audio_play_mixer_ctl(), audio_play_mixer_reconfigure(), and state_audio_mixer::worker().
| #define PARTICIPANT_TIMEOUT_S 60 |
Definition at line 70 of file mixer.cpp.
Referenced by state_audio_mixer::worker().
| #define SAMPLE_RATE 48000 |
Definition at line 63 of file mixer.cpp.
Referenced by am_participant::am_participant(), audio_play_mixer_ctl(), audio_play_mixer_reconfigure(), ultragrid::aja::display::process_frames(), and state_audio_mixer::worker().
| #define SAMPLES_PER_FRAME (SAMPLE_RATE / FRAMES_PER_SEC) |
Definition at line 68 of file mixer.cpp.
Referenced by state_audio_mixer::worker().
| typedef int32_t sample_type_mixed |
| typedef int16_t sample_type_source |
|
static |
Definition at line 433 of file mixer.cpp.
References AC_PCM, AUDIO_PLAYBACK_CTL_MULTIPLE_STREAMS, AUDIO_PLAYBACK_CTL_QUERY_FORMAT, AUDIO_PLAYBACK_PUT_NETWORK_DEVICE, BPS, CHANNELS, desc, len, state_audio_mixer::recv_socket, rtp_get_udp_local_socket(), SAMPLE_RATE, and state.

|
static |
Definition at line 425 of file mixer.cpp.
References state_audio_mixer::should_exit, and state.
|
static |
Definition at line 364 of file mixer.cpp.
References uv_argv.
Referenced by audio_play_mixer_init().
|
static |
Definition at line 396 of file mixer.cpp.
References audio_play_mixer_help(), and INIT_NOERR.

|
static |
|
static |
Definition at line 409 of file mixer.cpp.
References audio_buffer_write(), state_audio_mixer::audio_codec, frame, state_audio_mixer::participants, state_audio_mixer::participants_lock, state_audio_mixer::recv_socket, and state.

|
static |
| REGISTER_MODULE | ( | mixer | , |
| & | aplay_mixer_info, | ||
| LIBRARY_CLASS_AUDIO_PLAYBACK | , | ||
| AUDIO_PLAYBACK_ABI_VERSION | ) |
|
static |