[FFmpeg-cvslog] avformat/mpsubdec: Use double instead of float for timestamp calculations

Michael Niedermayer git at videolan.org
Wed May 27 17:45:44 CEST 2015


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed May 27 15:25:28 2015 +0200| [07fc47909f6f3a8faa92c2715e07bba6d833074c] | committer: Michael Niedermayer

avformat/mpsubdec: Use double instead of float for timestamp calculations

This provides higher precission

Reviewed-by: Clément Bœsch <u at pkh.me>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

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

diff --git a/libavformat/mpsubdec.c b/libavformat/mpsubdec.c
index c49f149..7c26d4f 100644
--- a/libavformat/mpsubdec.c
+++ b/libavformat/mpsubdec.c
@@ -59,13 +59,13 @@ static int mpsub_read_header(AVFormatContext *s)
     AVRational pts_info = (AVRational){ 100, 1 }; // ts based by default
     int res = 0;
     int multiplier = 100;
-    float current_pts = 0;
+    double current_pts = 0;
 
     av_bprint_init(&buf, 0, AV_BPRINT_SIZE_UNLIMITED);
 
     while (!avio_feof(s->pb)) {
         char line[1024];
-        float start, duration;
+        double start, duration;
         int fps, len = ff_get_line(s->pb, line, sizeof(line));
 
         if (!len)
@@ -77,7 +77,7 @@ static int mpsub_read_header(AVFormatContext *s)
             /* frame based timing */
             pts_info = (AVRational){ fps, 1 };
             multiplier = 1;
-        } else if (sscanf(line, "%f %f", &start, &duration) == 2) {
+        } else if (sscanf(line, "%lf %lf", &start, &duration) == 2) {
             AVPacket *sub;
             const int64_t pos = avio_tell(s->pb);
 



More information about the ffmpeg-cvslog mailing list