diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 1236fcf7642d4f3afa54071e1d90ff45dc9e58e3..e0421fdf7e75963688a9e8e4b17573a710c08408 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -557,6 +557,8 @@ int attribute_align_arg avcodec_decode_video(AVCodecContext *avctx, AVFrame *pic
     av_init_packet(&avpkt);
     avpkt.data = buf;
     avpkt.size = buf_size;
+    // HACK for CorePNG to decode as normal PNG by default
+    avpkt.flags = AV_PKT_FLAG_KEY;
 
     return avcodec_decode_video2(avctx, picture, got_picture_ptr, &avpkt);
 }