aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/h264.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-07-23 17:39:30 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-07-23 17:40:21 +0200
commit601c2388549ff395bc99383029e92c2219152af0 (patch)
tree4999484c29bf729212163a2b6ac5c191fb0cf236 /libavcodec/h264.c
parent1bf371b24ebd0804d2cc041b45eba295b02d80c6 (diff)
downloadffmpeg-601c2388549ff395bc99383029e92c2219152af0.tar.gz
avcodec/h264: support AV_PKT_DATA_NEW_EXTRADATA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/h264.c')
-rw-r--r--libavcodec/h264.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index f4fcef0847..10905db49a 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -1891,6 +1891,12 @@ static int h264_decode_frame(AVCodecContext *avctx, void *data,
return buf_index;
}
+ if (h->is_avc && av_packet_get_side_data(avpkt, AV_PKT_DATA_NEW_EXTRADATA, NULL)) {
+ int side_size;
+ uint8_t *side = av_packet_get_side_data(avpkt, AV_PKT_DATA_NEW_EXTRADATA, &side_size);
+ if (is_extra(side, side_size))
+ ff_h264_decode_extradata(h, side, side_size);
+ }
if(h->is_avc && buf_size >= 9 && buf[0]==1 && buf[2]==0 && (buf[4]&0xFC)==0xFC && (buf[5]&0x1F) && buf[8]==0x67){
if (is_extra(buf, buf_size))
return ff_h264_decode_extradata(h, buf, buf_size);