On Sun, 16 May 2021, Anton Khirnov wrote:

Quoting Marton Balint (2021-05-14 21:28:06)
Also use helper function to set the timestamp. Maybe we could also use
nanosecond precision, but there were some float rounding concerns.

Signed-off-by: Marton Balint <c...@passwd.hu>
---
 libavformat/flvdec.c     | 11 ++---------
 tests/ref/fate/flv-demux |  2 +-
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c
index ddaceaafe4..6bd6c8c944 100644
--- a/libavformat/flvdec.c
+++ b/libavformat/flvdec.c
@@ -28,6 +28,7 @@
 #include "libavutil/channel_layout.h"
 #include "libavutil/dict.h"
 #include "libavutil/opt.h"
+#include "libavutil/internal.h"
 #include "libavutil/intfloat.h"
 #include "libavutil/mathematics.h"
 #include "libavutil/time_internal.h"
@@ -682,17 +683,9 @@ static int amf_parse_object(AVFormatContext *s, AVStream 
*astream,
         } else if (amf_type == AMF_DATA_TYPE_STRING) {
             av_dict_set(&s->metadata, key, str_val, 0);
         } else if (amf_type == AMF_DATA_TYPE_DATE) {
-            time_t time;
-            struct tm t;
-            char datestr[128];
-            time =  date.milliseconds / 1000; // to seconds
-            gmtime_r(&time, &t);
-
             // timezone is ignored, since there is no easy way to offset the 
UTC
             // timestamp into the specified timezone
-            strftime(datestr, sizeof(datestr), "%Y-%m-%dT%H:%M:%SZ", &t);
-
-            av_dict_set(&s->metadata, key, datestr, 0);
+            avpriv_dict_set_timestamp(&s->metadata, key, 1000 * 
(int64_t)date.milliseconds);

No objections, if it passes FATE everywhere.

Thanks, applied, will keep an eye on FATE.

Regards,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to