29 #include "libavutil/adler32.h"
30 #include "libavutil/attributes.h"
31 #include "libavutil/channel_layout.h"
32 #include "libavutil/common.h"
33 #include "libavutil/mem.h"
34 #include "libavutil/timestamp.h"
35 #include "libavutil/samplefmt.h"
58 char chlayout_str[128];
59 uint32_t checksum = 0;
64 int planes = planar ? channels : 1;
72 for (i = 0; i < planes; i++) {
84 "n:%"PRId64
" pts:%s pts_time:%s pos:%"PRId64
" "
85 "fmt:%s channels:%d chlayout:%s rate:%d nb_samples:%d "
95 for (i = 0; i < planes; i++)
This structure describes decoded (raw) audio or video data.
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.
const char * name
Filter name.
void * priv
private data for use by the filter
static const AVFilterPad outputs[]
#define av_ts2timestr(ts, tb)
Convenience macro, the return value should be used only directly in function arguments but never stan...
uint8_t ** extended_data
pointers to the data planes/channels.
void av_log(void *avcl, int level, const char *fmt,...) av_printf_format(3
Send the specified message to the log if the level is less than or equal to the current av_log_level...
void av_freep(void *ptr)
Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer ...
const char * name
Pad name.
int ff_filter_frame(AVFilterLink *link, AVFrame *frame)
Send a frame of data to the next filter.
unsigned long av_adler32_update(unsigned long adler, const uint8_t *buf, unsigned int len) av_pure
Calculate the Adler32 checksum of a buffer.
int64_t pts
Presentation timestamp in time_base units (time when frame should be shown to user).
static int filter_frame(AVFilterLink *inlink, AVFrame *buf)
A filter pad used for either input or output.
A link between two filters.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
AVRational time_base
Define the time base used by the PTS of the frames/samples which will pass through this link...
int av_frame_get_channels(const AVFrame *frame)
uint64_t channel_layout
Channel layout of the audio data.
void * av_realloc(void *ptr, size_t size) 1(2)
Allocate or reallocate a block of memory.
static av_cold void uninit(AVFilterContext *ctx)
Main libavfilter public API header.
AVFilterLink ** outputs
array of pointers to output links
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.
int sample_rate
Sample rate of the audio data.
static const AVFilterPad inputs[]
AVFilterContext * dst
dest filter
AVFilter avfilter_af_ashowinfo
int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt)
Check if the sample format is planar.
int channels
Number of channels.
int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt)
Return number of bytes per sample.
int nb_samples
number of audio samples (per channel) described by this frame
#define av_ts2str(ts)
Convenience macro, the return value should be used only directly in function arguments but never stan...
int64_t av_frame_get_pkt_pos(const AVFrame *frame)
int64_t frame_count
Number of past frames sent through the link.
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.