FFmpeg
|
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include "avassert.h"
#include "channel_layout.h"
#include "bprint.h"
#include "common.h"
#include "error.h"
#include "macros.h"
#include "opt.h"
Go to the source code of this file.
Data Structures | |
struct | channel_name |
struct | channel_layout_name |
Macros | |
#define | CHAN_IS_AMBI(x) |
Functions | |
static const char * | get_channel_name (enum AVChannel channel_id) |
void | av_channel_name_bprint (AVBPrint *bp, enum AVChannel channel_id) |
bprint variant of av_channel_name(). More... | |
int | av_channel_name (char *buf, size_t buf_size, enum AVChannel channel_id) |
Get a human readable string in an abbreviated form describing a given channel. More... | |
void | av_channel_description_bprint (AVBPrint *bp, enum AVChannel channel_id) |
bprint variant of av_channel_description(). More... | |
int | av_channel_description (char *buf, size_t buf_size, enum AVChannel channel_id) |
Get a human readable string describing a given channel. More... | |
enum AVChannel | av_channel_from_string (const char *str) |
This is the inverse function of av_channel_name(). More... | |
static FF_DISABLE_DEPRECATION_WARNINGS uint64_t | get_channel_layout_single (const char *name, int name_len) |
uint64_t | av_get_channel_layout (const char *name) |
Return a channel layout id that matches name, or 0 if no match is found. More... | |
int | av_get_extended_channel_layout (const char *name, uint64_t *channel_layout, int *nb_channels) |
Return a channel layout and the number of channels based on the specified name. More... | |
void | av_bprint_channel_layout (struct AVBPrint *bp, int nb_channels, uint64_t channel_layout) |
Append a description of a channel layout to a bprint buffer. More... | |
void | av_get_channel_layout_string (char *buf, int buf_size, int nb_channels, uint64_t channel_layout) |
Return a description of a channel layout. More... | |
int | av_get_channel_layout_nb_channels (uint64_t channel_layout) |
Return the number of channels in the channel layout. More... | |
int64_t | av_get_default_channel_layout (int nb_channels) |
Return default channel layout for a given number of channels. More... | |
int | av_get_channel_layout_channel_index (uint64_t channel_layout, uint64_t channel) |
Get the index of a channel in channel_layout. More... | |
const char * | av_get_channel_name (uint64_t channel) |
Get the name of a given channel. More... | |
const char * | av_get_channel_description (uint64_t channel) |
Get the description of a given channel. More... | |
uint64_t | av_channel_layout_extract_channel (uint64_t channel_layout, int index) |
Get the channel with the given index in channel_layout. More... | |
int | av_get_standard_channel_layout (unsigned index, uint64_t *layout, const char **name) |
Get the value and name of a standard channel layout. More... | |
FF_ENABLE_DEPRECATION_WARNINGS int | av_channel_layout_from_mask (AVChannelLayout *channel_layout, uint64_t mask) |
Initialize a native channel layout from a bitmask indicating which channels are present. More... | |
int | av_channel_layout_from_string (AVChannelLayout *channel_layout, const char *str) |
Initialize a channel layout from a given string description. More... | |
void | av_channel_layout_uninit (AVChannelLayout *channel_layout) |
Free any allocated data in the channel layout and reset the channel count to 0. More... | |
int | av_channel_layout_copy (AVChannelLayout *dst, const AVChannelLayout *src) |
Make a copy of a channel layout. More... | |
static int | ambisonic_order (const AVChannelLayout *channel_layout) |
If the layout is n-th order standard-order ambisonic, with optional extra non-diegetic channels at the end, return the order. More... | |
static int | try_describe_ambisonic (AVBPrint *bp, const AVChannelLayout *channel_layout) |
If the custom layout is n-th order standard-order ambisonic, with optional extra non-diegetic channels at the end, write its string description in bp. More... | |
int | av_channel_layout_describe_bprint (const AVChannelLayout *channel_layout, AVBPrint *bp) |
bprint variant of av_channel_layout_describe(). More... | |
int | av_channel_layout_describe (const AVChannelLayout *channel_layout, char *buf, size_t buf_size) |
Get a human-readable string describing the channel layout properties. More... | |
enum AVChannel | av_channel_layout_channel_from_index (const AVChannelLayout *channel_layout, unsigned int idx) |
Get the channel with the given index in a channel layout. More... | |
enum AVChannel | av_channel_layout_channel_from_string (const AVChannelLayout *channel_layout, const char *str) |
Get a channel described by the given string. More... | |
int | av_channel_layout_index_from_channel (const AVChannelLayout *channel_layout, enum AVChannel channel) |
Get the index of a given channel in a channel layout. More... | |
int | av_channel_layout_index_from_string (const AVChannelLayout *channel_layout, const char *str) |
Get the index in a channel layout of a channel described by the given string. More... | |
int | av_channel_layout_check (const AVChannelLayout *channel_layout) |
Check whether a channel layout is valid, i.e. More... | |
int | av_channel_layout_compare (const AVChannelLayout *chl, const AVChannelLayout *chl1) |
Check whether two channel layouts are semantically the same, i.e. More... | |
void | av_channel_layout_default (AVChannelLayout *ch_layout, int nb_channels) |
Get the default channel layout for a given number of channels. More... | |
const AVChannelLayout * | av_channel_layout_standard (void **opaque) |
Iterate over all standard channel layouts. More... | |
uint64_t | av_channel_layout_subset (const AVChannelLayout *channel_layout, uint64_t mask) |
Find out what channels from a given set are present in a channel layout, without regard for their positions. More... | |
Variables | |
static const struct channel_name | channel_names [] |
static const struct channel_layout_name | channel_layout_map [] |
audio channel layout utility functions
Definition in file channel_layout.c.
#define CHAN_IS_AMBI | ( | x | ) |
Definition at line 38 of file channel_layout.c.
|
static |
Definition at line 79 of file channel_layout.c.
Referenced by av_bprint_channel_layout(), and av_get_channel_name().
|
static |
Definition at line 207 of file channel_layout.c.
Referenced by av_get_channel_layout().
|
static |
If the layout is n-th order standard-order ambisonic, with optional extra non-diegetic channels at the end, return the order.
Return a negative error code otherwise.
Definition at line 655 of file channel_layout.c.
Referenced by ff_opus_parse_extradata(), mov_read_SA3D(), and try_describe_ambisonic().
|
static |
If the custom layout is n-th order standard-order ambisonic, with optional extra non-diegetic channels at the end, write its string description in bp.
Return a negative error code otherwise.
Definition at line 698 of file channel_layout.c.
Referenced by av_channel_layout_describe_bprint().
|
static |
Definition at line 46 of file channel_layout.c.
Referenced by av_channel_description_bprint(), av_channel_from_string(), av_channel_layout_from_string(), av_channel_name_bprint(), av_get_channel_description(), get_channel_layout_single(), and get_channel_name().
|
static |
Definition at line 173 of file channel_layout.c.
Referenced by av_bprint_channel_layout(), av_channel_layout_default(), av_channel_layout_describe_bprint(), av_channel_layout_from_string(), av_channel_layout_standard(), av_get_default_channel_layout(), av_get_standard_channel_layout(), and get_channel_layout_single().