88 if (sd->
size <
sizeof(*di)) {
104 "surround %f (%f ltrt) - lfe %f",
113 if (gain == INT32_MIN)
135 if (sd->
size <
sizeof(*rg)) {
152 if (sd->
size <
sizeof(*ast)) {
180 char chlayout_str[128];
181 uint32_t checksum = 0;
185 int data_size = buf->
nb_samples * block_align;
186 int planes = planar ? channels : 1;
194 for (i = 0; i < planes; i++) {
206 "n:%"PRId64
" pts:%s pts_time:%s pos:%"PRId64
" "
207 "fmt:%s channels:%d chlayout:%s rate:%d nb_samples:%d "
208 "checksum:%08"PRIX32
" ",
217 for (i = 0; i < planes; i++)
This structure describes decoded (raw) audio or video data.
ptrdiff_t const GLvoid * data
This side data must be associated with an audio frame and corresponds to enum AVAudioServiceType defi...
#define AV_LOG_WARNING
Something somehow does not look correct.
static const AVFilterPad outputs[]
Main libavfilter public API header.
memory handling functions
static void dump_replaygain(AVFilterContext *ctx, AVFrameSideData *sd)
double center_mix_level_ltrt
Absolute scale factor representing the nominal level of the center channel during an Lt/Rt compatible...
uint32_t track_peak
Peak track amplitude, with 100000 representing full scale (but values may overflow).
Macro definitions for various function/variable attributes.
const char * name
Pad name.
int ff_filter_frame(AVFilterLink *link, AVFrame *frame)
Send a frame of data to the next filter.
timestamp utils, mostly useful for debugging/logging purposes
unsigned long av_adler32_update(unsigned long adler, const uint8_t *buf, unsigned int len)
Calculate the Adler32 checksum of a buffer.
int64_t pts
Presentation timestamp in time_base units (time when frame should be shown to user).
Structure to hold side data for an AVFrame.
static int filter_frame(AVFilterLink *inlink, AVFrame *buf)
double surround_mix_level_ltrt
Absolute scale factor representing the nominal level of the surround channels during an Lt/Rt compati...
Lt/Rt 2-channel downmix, Dolby Pro Logic II compatible.
Metadata relevant to a downmix procedure.
int32_t album_gain
Same as track_gain, but for the whole album.
AVFrameSideData ** side_data
double lfe_mix_level
Absolute scale factor representing the level at which the LFE data is mixed into L/R channels during ...
int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt)
Check if the sample format is planar.
A filter pad used for either input or output.
static void print_gain(AVFilterContext *ctx, const char *str, int32_t gain)
This structure describes optional metadata relevant to a downmix procedure.
A link between two filters.
#define av_ts2timestr(ts, tb)
Convenience macro, the return value should be used only directly in function arguments but never stan...
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
void * priv
private data for use by the filter
AVRational time_base
Define the time base used by the PTS of the frames/samples which will pass through this link...
const char * av_get_sample_fmt_name(enum AVSampleFormat sample_fmt)
Return the name of sample_fmt, or NULL if sample_fmt is not recognized.
uint64_t channel_layout
Channel layout of the audio data.
audio channel layout utility functions
Lt/Rt 2-channel downmix, Dolby Surround compatible.
static void dump_downmix(AVFilterContext *ctx, AVFrameSideData *sd)
static void print_peak(AVFilterContext *ctx, const char *str, uint32_t peak)
static void dump_audio_service_type(AVFilterContext *ctx, AVFrameSideData *sd)
Lo/Ro 2-channel downmix (Stereo).
static av_cold void uninit(AVFilterContext *ctx)
static void dump_matrixenc(AVFilterContext *ctx, AVFrameSideData *sd)
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.
Public header for libavutil Adler32 hasher.
int format
format of the frame, -1 if unknown or unset Values correspond to enum AVPixelFormat for video frames...
uint32_t * plane_checksums
Scratch space for individual plane checksums for planar audio.
#define AV_LOG_INFO
Standard information.
double surround_mix_level
Absolute scale factor representing the nominal level of the surround channels during a regular downmi...
Libavcodec external API header.
int sample_rate
Sample rate of the audio data.
int av_frame_get_channels(const AVFrame *frame)
static const AVFilterPad inputs[]
const char * name
Filter name.
AVFilterLink ** outputs
array of pointers to output links
enum AVFrameSideDataType type
int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt)
Return number of bytes per sample.
common internal and external API header
void * av_realloc_array(void *ptr, size_t nmemb, size_t size)
int channels
Number of channels.
uint32_t album_peak
Same as track_peak, but for the whole album,.
double center_mix_level
Absolute scale factor representing the nominal level of the center channel during a regular downmix...
#define av_ts2str(ts)
Convenience macro, the return value should be used only directly in function arguments but never stan...
AVFilterContext * dst
dest filter
int64_t av_frame_get_pkt_pos(const AVFrame *frame)
static void dump_unknown(AVFilterContext *ctx, AVFrameSideData *sd)
int32_t track_gain
Track replay gain in microbels (divide by 100000 to get the value in dB).
ReplayGain information in the form of the AVReplayGain struct.
uint8_t ** extended_data
pointers to the data planes/channels.
ReplayGain information (see http://wiki.hydrogenaudio.org/index.php?title=ReplayGain_1.0_specification).
int nb_samples
number of audio samples (per channel) described by this frame
The data is the AVMatrixEncoding enum defined in libavutil/channel_layout.h.
int64_t frame_count
Number of past frames sent through the link.
enum AVDownmixType preferred_downmix_type
Type of downmix preferred by the mastering engineer.