avcodec/libx265: export choosen picture types
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 30 Mar 2015 22:37:46 +0000 (00:37 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 31 Mar 2015 18:21:10 +0000 (20:21 +0200)
Fixes part of ticket 4285

Reviewed-by Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/libx265.c

index 5a26ca9..19217b0 100644 (file)
@@ -272,6 +272,19 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     pkt->pts = x265pic_out.pts;
     pkt->dts = x265pic_out.dts;
 
+    switch (x265pic_out.sliceType) {
+    case X265_TYPE_IDR:
+    case X265_TYPE_I:
+        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I;
+        break;
+    case X265_TYPE_P:
+        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_P;
+        break;
+    case X265_TYPE_B:
+        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_B;
+        break;
+    }
+
     *got_packet = 1;
     return 0;
 }