diff options
author | Anton Khirnov <anton@khirnov.net> | 2015-07-21 18:57:49 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2015-07-25 17:24:25 +0200 |
commit | 96dca089b19bf55293136277f5b081c56146e10e (patch) | |
tree | acbab77ca0267d8088c6ee39a5a56ccfae21e20e /libavcodec/qsvdec.h | |
parent | fa85fcf2b7d1ab822a59245077b8bb855406d3e9 (diff) | |
download | ffmpeg-96dca089b19bf55293136277f5b081c56146e10e.tar.gz |
qsvdec: move qsv_process_data() from qsvdec_h264 to the common code
It will be shared with the upcoming mpeg2 and hevc decoders.
Diffstat (limited to 'libavcodec/qsvdec.h')
-rw-r--r-- | libavcodec/qsvdec.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/libavcodec/qsvdec.h b/libavcodec/qsvdec.h index 01f7690137..d5f2bce254 100644 --- a/libavcodec/qsvdec.h +++ b/libavcodec/qsvdec.h @@ -50,6 +50,11 @@ typedef struct QSVContext { AVFifoBuffer *async_fifo; + // the internal parser and codec context for parsing the data + AVCodecParserContext *parser; + AVCodecContext *avctx_internal; + enum AVPixelFormat orig_pix_fmt; + // options set by the caller int async_depth; int iopattern; @@ -62,9 +67,10 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format); int ff_qsv_decode_init(AVCodecContext *s, QSVContext *q, mfxSession session); -int ff_qsv_decode(AVCodecContext *s, QSVContext *q, - AVFrame *frame, int *got_frame, - AVPacket *avpkt); +int ff_qsv_process_data(AVCodecContext *avctx, QSVContext *q, + AVFrame *frame, int *got_frame, AVPacket *pkt); + +void ff_qsv_decode_flush(AVCodecContext *avctx, QSVContext *q); int ff_qsv_decode_close(QSVContext *q); |