avformat/segafilmenc - set keyframe bit correctly
authorGyan Doshi <ffmpeg@gyani.pro>
Sat, 5 May 2018 11:34:53 +0000 (17:04 +0530)
committerGyan Doshi <ffmpeg@gyani.pro>
Tue, 8 May 2018 07:59:15 +0000 (13:29 +0530)
As per
https://web.archive.org/web/20020803104640/http://www.pcisys.net:80/~melanson/codecs/film-format.txt,

the top bit of the info1 chunk is set as 1 for inter-coded frames and 0
otherwise.

libavformat/segafilmenc.c
libavformat/version.h

index 5b0d7e6..524230e 100644 (file)
@@ -69,7 +69,7 @@ static int film_write_packet_to_header(AVFormatContext *format_context, FILMPack
         info1 = pkt->pts;
         info2 = pkt->duration;
         /* The top bit being set indicates a key frame */
-        if (pkt->keyframe)
+        if (!pkt->keyframe)
             info1 |= (1 << 31);
     }
 
index e589d77..49e40e9 100644 (file)
@@ -33,7 +33,7 @@
 // Also please add any ticket numbers that you believe might be affected here
 #define LIBAVFORMAT_VERSION_MAJOR  58
 #define LIBAVFORMAT_VERSION_MINOR  13
-#define LIBAVFORMAT_VERSION_MICRO 101
+#define LIBAVFORMAT_VERSION_MICRO 102
 
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
                                                LIBAVFORMAT_VERSION_MINOR, \