mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-12 02:04:58 +00:00
avfilter/trim: improve rounding precission
Note, the design is still flawed, dont expect this to be frame accurate. float/double first needs to be removed and frames itself trimmed instead of drop vs nodrop Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
24939d567b
commit
1a94d7c7c8
@ -89,17 +89,17 @@ static int config_input(AVFilterLink *inlink)
|
||||
inlink->time_base : (AVRational){ 1, inlink->sample_rate };
|
||||
|
||||
if (s->start_time != DBL_MAX) {
|
||||
int64_t start_pts = lrintf(s->start_time / av_q2d(tb));
|
||||
int64_t start_pts = lrint(s->start_time / av_q2d(tb));
|
||||
if (s->start_pts == AV_NOPTS_VALUE || start_pts < s->start_pts)
|
||||
s->start_pts = start_pts;
|
||||
}
|
||||
if (s->end_time != DBL_MAX) {
|
||||
int64_t end_pts = lrintf(s->end_time / av_q2d(tb));
|
||||
int64_t end_pts = lrint(s->end_time / av_q2d(tb));
|
||||
if (s->end_pts == AV_NOPTS_VALUE || end_pts > s->end_pts)
|
||||
s->end_pts = end_pts;
|
||||
}
|
||||
if (s->duration)
|
||||
s->duration_tb = lrintf(s->duration / av_q2d(tb));
|
||||
s->duration_tb = lrint(s->duration / av_q2d(tb));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user