![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include "config_unix.h"#include "config_win32.h"#include <algorithm>#include <cassert>#include <climits>#include <string>#include <unordered_map>#include "audio/codec.h"#include "audio/utils.h"#include "compat/strings.h"#include "debug.h"#include "lib_common.h"#include "utils/macros.h"#include "utils/misc.h"
Go to the source code of this file.
Classes | |
| struct | audio_codec_state |
Macros | |
| #define | MOD_NAME "[acodec] " |
Variables | |
| static const unordered_map< audio_codec_t, audio_codec_info_t, hash< int > > | audio_codec_info |
Definition in file codec.cpp.
| #define MOD_NAME "[acodec] " |
Definition at line 55 of file codec.cpp.
Referenced by audio_codec_compress().
| audio_frame2 audio_codec_compress | ( | struct audio_codec_state * | s, |
| const audio_frame2 * | frame ) |
Audio_codec_compress compresses given audio frame.
This function has to be called iterativelly, in first iteration with frame, the others with NULL
| s | state |
| frame | in first iteration audio frame to be compressed, in following NULL |
| pointer | pointing to data |
| NULL | indicating that there are no data left |
Definition at line 245 of file codec.cpp.
References audio_frame2::append(), audio_channel_demux(), audio_codec_state::bitrate, audio_channel::bps, audio_desc::bps, audio_desc::ch_count, audio_channel::codec, audio_desc::codec, audio_compress_info::compress, audio_channel::data, audio_channel::data_len, audio_codec_state::desc, audio_codec_state::direction, audio_channel::duration, frame, audio_codec_state::funcs, audio_frame2::get_bps(), audio_frame2::get_sample_rate(), audio_compress_info::init, audio_frame2::init(), LOG, LOG_LEVEL_ERROR, MOD_NAME, audio_channel::sample_rate, audio_desc::sample_rate, audio_frame2::set_duration(), audio_frame2::set_timestamp(), audio_codec_state::state, audio_codec_state::state_count, and audio_channel::timestamp.
Referenced by audio_sender_thread(), and state_audio_mixer::worker().

| audio_frame2 audio_codec_decompress | ( | struct audio_codec_state * | s, |
| audio_frame2 * | frame ) |
Definition at line 299 of file codec.cpp.
References AC_PCM, audio_frame2::append(), audio_channel_demux(), audio_channel::bps, audio_desc::codec, audio_channel::data, audio_channel::data_len, audio_compress_info::decompress, audio_codec_state::desc, audio_codec_state::direction, frame, audio_codec_state::funcs, audio_frame2::get_bps(), audio_frame2::get_data(), audio_frame2::get_data_len(), audio_frame2::get_sample_rate(), audio_compress_info::init, audio_frame2::init(), len, LOG, LOG_LEVEL_ERROR, LOG_LEVEL_WARNING, log_msg(), max, audio_frame2::resize(), audio_channel::sample_rate, audio_frame2::set_timestamp(), audio_codec_state::state, and audio_codec_state::state_count.
Referenced by decode_audio_frame().

| void audio_codec_done | ( | struct audio_codec_state * | s | ) |
Definition at line 372 of file codec.cpp.
References audio_compress_info::done, audio_codec_state::funcs, audio_codec_state::state, and audio_codec_state::state_count.
Referenced by state_audio_mixer::state_audio_mixer(), am_participant::~am_participant(), audio_codec_reconfigure(), audio_decoder_destroy(), audio_done(), audio_init(), and get_audio_codec_list().
| const int * audio_codec_get_supported_samplerates | ( | struct audio_codec_state * | s | ) |
Definition at line 367 of file codec.cpp.
References audio_codec_state::funcs, audio_compress_info::get_samplerates, and audio_codec_state::state.
Referenced by audio_sender_thread().
| struct audio_codec_state * audio_codec_init | ( | audio_codec_t | audio_codec, |
| audio_codec_direction_t | direction ) |
Definition at line 160 of file codec.cpp.
References audio_codec_init_real(), audio_codec_state::direction, and get_name_to_audio_codec().
Referenced by audio_codec_reconfigure().

| struct audio_codec_state * audio_codec_init_cfg | ( | const char * | audio_codec_cfg, |
| audio_codec_direction_t | direction ) |
Definition at line 165 of file codec.cpp.
References audio_codec_init_real(), and audio_codec_state::direction.
Referenced by am_participant::am_participant(), state_audio_mixer::state_audio_mixer(), and audio_init().

|
static |
Definition at line 171 of file codec.cpp.
References AC_NONE, AUDIO_COMPRESS_ABI_VERSION, audio_codec_state::bitrate, audio_desc::codec, audio_codec_state::desc, audio_codec_state::direction, audio_codec_state::funcs, get_libraries_for_class(), get_name_to_audio_codec(), audio_compress_info::init, LIBRARY_CLASS_AUDIO_COMPRESS, LOG_LEVEL_ERROR, log_msg(), parse_audio_codec_params(), audio_codec_state::state, state, audio_codec_state::state_count, and audio_compress_info::supported_codecs.
Referenced by audio_codec_init(), audio_codec_init_cfg(), and get_audio_codec_list().

| struct audio_codec_state * audio_codec_reconfigure | ( | struct audio_codec_state * | old, |
| audio_codec_t | audio_codec, | ||
| audio_codec_direction_t | direction ) |
Definition at line 225 of file codec.cpp.
References audio_codec_done(), audio_codec_init(), audio_desc::codec, audio_codec_state::desc, and audio_codec_state::direction.
Referenced by audio_decoder_reconfigure().

|
static |
Definition at line 385 of file codec.cpp.
References AC_ALAW, AC_MULAW, AC_NONE, and audio_codec_info.
Referenced by parse_audio_codec_params().
| vector< tuple< audio_codec_info_t, bool, string > > get_audio_codec_list | ( | ) |
Definition at line 109 of file codec.cpp.
References AC_NONE, audio_codec_done(), audio_codec_info, audio_codec_init_real(), AUDIO_CODER, desc, get_codec_desc(), and get_name_to_audio_codec().
Referenced by list_audio_codecs(), and print_capabilities().

| audio_codec_t get_audio_codec_to_tag | ( | uint32_t | tag | ) |
Definition at line 460 of file codec.cpp.
References AC_NONE, and audio_codec_info.
Referenced by audio_decoder_reconfigure(), audio_fec_decode(), decode_audio_frame(), and parse_audio_hdr().
| uint32_t get_audio_tag | ( | audio_codec_t | codec | ) |
Definition at line 455 of file codec.cpp.
References audio_codec_info.
Referenced by format_audio_header().
|
static |
Definition at line 94 of file codec.cpp.
References audio_codec_state::funcs, audio_compress_info::get_codec_info, audio_codec_state::state, and STR_LEN.
Referenced by get_audio_codec_list().
| const char * get_name_to_audio_codec | ( | audio_codec_t | codec | ) |
Definition at line 450 of file codec.cpp.
References audio_codec_info.
Referenced by audio_codec_init(), audio_codec_init_real(), audio_decoder_reconfigure(), get_audio_codec_list(), libavcodec_init(), main(), operator<<(), BasicRTSPOnlySubsession::setSDPLines(), and validate_std_audio().
| void list_audio_codecs | ( | void | ) |
Definition at line 132 of file codec.cpp.
References get_audio_codec_list(), name, SBOLD, SRED, and TRED.
Referenced by parse_options_internal().

| struct audio_codec_params parse_audio_codec_params | ( | const char * | ccfg | ) |
Definition at line 402 of file codec.cpp.
References AC_NONE, get_audio_codec(), IS_KEY_PREFIX, LOG, LOG_LEVEL_ERROR, MSG, params, strdupa, unit_evaluate(), and val.
Referenced by audio_codec_init_real(), audio_init(), and main().

|
static |
Definition at line 67 of file codec.cpp.
Referenced by get_audio_codec(), get_audio_codec_list(), get_audio_codec_to_tag(), get_audio_tag(), and get_name_to_audio_codec().