Lines Matching refs:insamples
43 void (*silencedetect)(struct SilenceDetectContext *s, AVFrame *insamples,
60 static char *get_metadata_val(AVFrame *insamples, const char *key)
62 AVDictionaryEntry *e = av_dict_get(insamples->metadata, key, NULL, 0);
66 static av_always_inline void update(SilenceDetectContext *s, AVFrame *insamples,
74 s->start = insamples->pts - (int64_t)(s->duration / av_q2d(time_base) + .5);
75 av_dict_set(&insamples->metadata, "lavfi.silence_start",
78 get_metadata_val(insamples, "lavfi.silence_start"));
83 av_dict_set(&insamples->metadata, "lavfi.silence_end",
84 av_ts2timestr(insamples->pts, &time_base), 0);
85 av_dict_set(&insamples->metadata, "lavfi.silence_duration",
86 av_ts2timestr(insamples->pts - s->start, &time_base), 0);
89 get_metadata_val(insamples, "lavfi.silence_end"),
90 get_metadata_val(insamples, "lavfi.silence_duration"));
97 static void silencedetect_##name(SilenceDetectContext *s, AVFrame *insamples, \
101 const type *p = (const type *)insamples->data[0]; \
106 update(s, insamples, *p < noise && *p > -noise, \
136 static int filter_frame(AVFilterLink *inlink, AVFrame *insamples)
141 const int nb_samples = insamples->nb_samples * nb_channels;
150 s->silencedetect(s, insamples, nb_samples, nb_samples_notify,
153 return ff_filter_frame(inlink->dst->outputs[0], insamples);