From 42d8c2981f4e76fab5c4c3ed6ff840df7a41a1a4 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Thu, 15 Sep 2011 21:07:32 +0200
Subject: [PATCH] decoder/ffmpeg: higher precision timestamps

---
 NEWS                                | 2 ++
 src/decoder/ffmpeg_decoder_plugin.c | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index 5f0d030cd..8abe0baae 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,8 @@ ver 0.16.5 (2010/??/??)
 * pcm_format: fix 32-to-24 bit conversion (the "silence" bug)
 * input:
   - rewind: reduce heap usage
+* decoder:
+  - ffmpeg: higher precision timestamps
 
 
 ver 0.16.4 (2011/09/01)
diff --git a/src/decoder/ffmpeg_decoder_plugin.c b/src/decoder/ffmpeg_decoder_plugin.c
index 484796fe3..1a1598f36 100644
--- a/src/decoder/ffmpeg_decoder_plugin.c
+++ b/src/decoder/ffmpeg_decoder_plugin.c
@@ -220,7 +220,8 @@ time_from_ffmpeg(int64_t t, const AVRational time_base)
 {
 	assert(t != (int64_t)AV_NOPTS_VALUE);
 
-	return av_rescale_q(t, time_base, (AVRational){1, 1});
+	return (double)av_rescale_q(t, time_base, (AVRational){1, 1024})
+		/ (double)1024;
 }
 
 static enum decoder_command