[FFmpeg-devel] [PATCH] avformat/segafilm - revert keyframe detection

Gyan Doshi gyandoshi at gmail.com
Sat Apr 21 10:34:32 EEST 2018


References:

http://www.ffmpeg.org/pipermail/ffmpeg-devel/2018-April/228596.html
http://www.ffmpeg.org/pipermail/ffmpeg-devel/2018-April/228602.html


-------------- next part --------------
From a9b55290722ee6222b5cb5d067544f3846e1b07b Mon Sep 17 00:00:00 2001
From: Gyan Doshi <ffmpeg at gyani.pro>
Date: Sat, 21 Apr 2018 12:44:12 +0530
Subject: [PATCH] avformat/segafilm - revert keyframe detection

Keyframe detection was inverted in cfe1a9d311 in order to fix keyframe
flags set for the sample attached to trac #7091. However, that sample is
errantly muxed.

As noted at
https://web.archive.org/web/20020803104640/http://www.pcisys.net:80/~melanson/codecs/film-format.txt,
the original keyframe detection logic is correct, and this patch
restores it.
---
 libavformat/segafilm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/segafilm.c b/libavformat/segafilm.c
index e72c26b144..b0c6c419ce 100644
--- a/libavformat/segafilm.c
+++ b/libavformat/segafilm.c
@@ -239,7 +239,7 @@ static int film_read_header(AVFormatContext *s)
         } else {
             film->sample_table[i].stream = film->video_stream_index;
             film->sample_table[i].pts = AV_RB32(&scratch[8]) & 0x7FFFFFFF;
-            film->sample_table[i].keyframe = (scratch[8] & 0x80) ? AVINDEX_KEYFRAME : 0;
+            film->sample_table[i].keyframe = (scratch[8] & 0x80) ? 0 : AVINDEX_KEYFRAME;
             video_frame_counter++;
             if (film->video_type)
                 av_add_index_entry(s->streams[film->video_stream_index],
-- 
2.12.2.windows.2


More information about the ffmpeg-devel mailing list