On 01.03.2015 21:25, Luca Barbato wrote:
On 01/03/15 21:22, Diego Biurrun wrote:
On Sat, Feb 28, 2015 at 09:12:57PM +0100, Andreas Cadhalpun wrote:
From 850352d0e1c262b434094fb19787bbd5b6bf6c57 Mon Sep 17 00:00:00 2001
From: Andreas Cadhalpun <andreas.cadhal...@googlemail.com>
Date: Sat, 28 Feb 2015 20:58:31 +0100
Subject: [PATCH] avformat/flvenc: check that the codec_tag fits in one byte
flags is later written with avio_w8 and if it doesn't fit in one byte it
triggers an av_assert2.
--- a/libavformat/flvenc.c
+++ b/libavformat/flvenc.c
@@ -537,7 +537,7 @@ static int flv_write_packet(AVFormatContext *s, AVPacket
*pkt)
avio_w8(pb, FLV_TAG_TYPE_VIDEO);
flags = enc->codec_tag;
- if (flags == 0) {
+ if (flags == 0 || flags < -128 || flags > 255) {
av_log(s, AV_LOG_ERROR,
"Video codec '%s' is not compatible with FLV\n",
avcodec_get_name(enc->codec_id));
Maybe flags should be uint8_t instead?
No, the proper way is to blacklist/whitelist the supported codecs for flv.
It can be limited even further [1]:
- if (flags == 0) {
+ if (flags <= 0 || flags > 15) {
Best regards,
Andreas
1:
https://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=e8565d21c276ab9ac5ce785549420321fbd0b093
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel