[FFmpeg-cvslog] avfilter/trim: improve rounding precission

Michael Niedermayer git at videolan.org
Wed May 1 14:02:04 CEST 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed May  1 13:17:48 2013 +0200| [1a94d7c7c8ca2164c2a1e7d6f1fe7868b01e7e43] | committer: Michael Niedermayer

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 at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1a94d7c7c8ca2164c2a1e7d6f1fe7868b01e7e43
---

 libavfilter/trim.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavfilter/trim.c b/libavfilter/trim.c
index 1ac33e9..34963ae 100644
--- a/libavfilter/trim.c
+++ b/libavfilter/trim.c
@@ -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;
 }



More information about the ffmpeg-cvslog mailing list