mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-25 08:42:39 +00:00
lavfi/silencedetect: use av_ts2timestr() macro.
This commit is contained in:
parent
94bc672489
commit
d3b06399ff
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include "libavutil/opt.h"
|
||||
#include "libavutil/timestamp.h"
|
||||
#include "avfilter.h"
|
||||
|
||||
typedef struct {
|
||||
@ -32,7 +33,7 @@ typedef struct {
|
||||
double noise; ///< noise amplitude ratio
|
||||
int duration; ///< minimum duration of silence until notification
|
||||
int64_t nb_null_samples; ///< current number of continuous zero samples
|
||||
double start; ///< if silence is detected, this value contains the time of the first zero sample
|
||||
int64_t start; ///< if silence is detected, this value contains the time of the first zero sample
|
||||
int last_sample_rate; ///< last sample rate to check for sample rate changes
|
||||
} SilenceDetectContext;
|
||||
|
||||
@ -106,18 +107,17 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamples)
|
||||
if (!silence->start) {
|
||||
silence->nb_null_samples++;
|
||||
if (silence->nb_null_samples >= nb_samples_notify) {
|
||||
silence->start = insamples->pts * av_q2d(inlink->time_base) - silence->duration;
|
||||
silence->start = insamples->pts - silence->duration / av_q2d(inlink->time_base);
|
||||
av_log(silence, AV_LOG_INFO,
|
||||
"silence_start: %f\n", silence->start);
|
||||
"silence_start: %s\n", av_ts2timestr(silence->start, &inlink->time_base));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (silence->start) {
|
||||
double end = insamples->pts * av_q2d(inlink->time_base);
|
||||
if (silence->start)
|
||||
av_log(silence, AV_LOG_INFO,
|
||||
"silence_end: %f | silence_duration: %f\n",
|
||||
end, end - silence->start);
|
||||
}
|
||||
"silence_end: %s | silence_duration: %s\n",
|
||||
av_ts2timestr(insamples->pts, &inlink->time_base),
|
||||
av_ts2timestr(insamples->pts - silence->start, &inlink->time_base));
|
||||
silence->nb_null_samples = silence->start = 0;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user