44 #define OFFSET(x) offsetof(ANoiseSrcContext, x) 
   45 #define FLAGS AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM 
   62     { 
"nb_samples",   
"set the number of samples per requested frame", 
OFFSET(nb_samples), 
AV_OPT_TYPE_INT, {.i64 = 1024}, 1, INT_MAX, 
FLAGS },
 
   63     { 
"n",            
"set the number of samples per requested frame", 
OFFSET(nb_samples), 
AV_OPT_TYPE_INT, {.i64 = 1024}, 1, INT_MAX, 
FLAGS },
 
  113     buf[0] = 0.99886 * buf[0] + white * 0.0555179;
 
  114     buf[1] = 0.99332 * buf[1] + white * 0.0750759;
 
  115     buf[2] = 0.96900 * buf[2] + white * 0.1538520;
 
  116     buf[3] = 0.86650 * buf[3] + white * 0.3104856;
 
  117     buf[4] = 0.55000 * buf[4] + white * 0.5329522;
 
  118     buf[5] = -0.7616 * buf[5] - white * 0.0168980;
 
  119     pink = buf[0] + buf[1] + buf[2] + buf[3] + buf[4] + buf[5] + buf[6] + white * 0.5362;
 
  120     buf[6] = white * 0.115926;
 
  128     brown = ((0.02 * white) + buf[0]) / 1.02;
 
  174     dst = (
double *)frame->
data[0];
 
  175     for (i = 0; i < nb_samples; i++) {
 
  185     s->
pts    += nb_samples;
 
  206     .priv_class    = &anoisesrc_class,
 
This structure describes decoded (raw) audio or video data. 
 
Main libavfilter public API header. 
 
static const AVOption anoisesrc_options[]
 
double(* filter)(double white, double *buf)
 
const char * name
Pad name. 
 
int ff_filter_frame(AVFilterLink *link, AVFrame *frame)
Send a frame of data to the next filter. 
 
static av_cold int query_formats(AVFilterContext *ctx)
 
int64_t pts
Presentation timestamp in time_base units (time when frame should be shown to user). 
 
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, uint8_t clip)
 
AVFilter ff_asrc_anoisesrc
 
#define AVERROR_EOF
End of file. 
 
static int request_frame(AVFilterLink *outlink)
 
AVFILTER_DEFINE_CLASS(anoisesrc)
 
A filter pad used for either input or output. 
 
A link between two filters. 
 
AVFrame * ff_get_audio_buffer(AVFilterLink *link, int nb_samples)
Request an audio samples buffer with a specific set of permissions. 
 
#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 
 
int64_t av_rescale(int64_t a, int64_t b, int64_t c)
Rescale a 64-bit integer with rounding to nearest. 
 
#define AV_TIME_BASE
Internal time base represented as integer. 
 
AVFilterContext * src
source filter 
 
static const AVFilterPad outputs[]
 
A list of supported channel layouts. 
 
static av_cold int config_props(AVFilterLink *outlink)
 
static const AVFilterPad inputs[]
 
AVSampleFormat
Audio sample formats. 
 
static double white_filter(double white, double *buf)
 
static unsigned int av_lfg_get(AVLFG *c)
Get the next random unsigned 32-bit number using an ALFG. 
 
Describe the class of an AVClass context structure. 
 
static double brown_filter(double white, double *buf)
 
const char * name
Filter name. 
 
av_cold void av_lfg_init(AVLFG *c, unsigned int seed)
 
enum MovChannelLayoutTag * layouts
 
static double pink_filter(double white, double *buf)
 
uint8_t * data[AV_NUM_DATA_POINTERS]
pointer to the picture/channel planes. 
 
static const AVFilterPad anoisesrc_outputs[]
 
static enum AVSampleFormat sample_fmts[]
 
uint32_t av_get_random_seed(void)
Get a seed to use in conjunction with random functions. 
 
#define AV_CH_LAYOUT_MONO