diff options
Diffstat (limited to 'libavcodec/qsvdec.h')
-rw-r--r-- | libavcodec/qsvdec.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/qsvdec.h b/libavcodec/qsvdec.h index c30627a4bd..5211fb2ee8 100644 --- a/libavcodec/qsvdec.h +++ b/libavcodec/qsvdec.h @@ -51,10 +51,21 @@ typedef struct QSVContext { AVFifoBuffer *async_fifo; AVFifoBuffer *input_fifo; + // we should to buffer input packets at some cases + // else it is not possible to handle dynamic stream changes correctly + // this fifo uses for input packets buffering + AVFifoBuffer *pkt_fifo; + // this flag indicates that header parsed, // decoder instance created and ready to general decoding int engine_ready; + // we can not just re-init decoder if different sequence header arrived + // we should to deliver all buffered frames but we can not decode new packets + // this time. So when reinit_pending is non-zero we flushing decoder and + // accumulate new arrived packets into pkt_fifo + int reinit_pending; + // options set by the caller int async_depth; int iopattern; |