Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2018-12-13 22:12:52 +0300
committerPaul B Mahol <onemda@gmail.com>2018-12-14 13:32:27 +0300
commite9817636a7e132129fee0c34e05f224da14c5200 (patch)
tree442ba142175c69c648619b862bdb3afe7ecb910d /libavformat/flac_picture.c
parent6f058b5cef67ffdb45f1d99553537efa9d3c1c1a (diff)
avformat/flac_picture: try to guess PNG by actual picture data
Fixes #5028.
Diffstat (limited to 'libavformat/flac_picture.c')
-rw-r--r--libavformat/flac_picture.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/flac_picture.c b/libavformat/flac_picture.c
index 38982b960d..8317ab2fa6 100644
--- a/libavformat/flac_picture.c
+++ b/libavformat/flac_picture.c
@@ -20,6 +20,8 @@
*/
#include "libavutil/avassert.h"
+#include "libavutil/intreadwrite.h"
+#include "libavcodec/png.h"
#include "avformat.h"
#include "flac_picture.h"
#include "id3v2.h"
@@ -119,6 +121,9 @@ int ff_flac_parse_picture(AVFormatContext *s, uint8_t *buf, int buf_size)
goto fail;
}
+ if (AV_RB64(data->data) == PNGSIG)
+ id = AV_CODEC_ID_PNG;
+
st = avformat_new_stream(s, NULL);
if (!st) {
RETURN_ERROR(AVERROR(ENOMEM));