aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil/hwcontext_qsv.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2016-08-10 13:01:55 +0200
committerAnton Khirnov <anton@khirnov.net>2016-11-07 12:47:20 +0100
commitb115a35ea62b8f479b48d99a601f0e157517301e (patch)
treeea66f60d3ddbd9a90dc5d3d1340e7ebf2976ec51 /libavutil/hwcontext_qsv.c
parent10065d9324c2e35ce7040b6a2b9ebf6079bcbf42 (diff)
downloadffmpeg-b115a35ea62b8f479b48d99a601f0e157517301e.tar.gz
hwcontext_qsv: add support for the P8 format
When using GPU surfaces with QSV, one needs to supply a frame allocator, which will be invoked to pass surface pools to libmfx. For encoding, this allocator gets invoked not only for the pool of input frames, but also for a separate pool of (apparently) reconstructed frames and another pool of MFX_FOURCC_P8, which on Windows needs to return D3DFMT_P8 D3D surfaces. Those are probably used to store the encoded bitstream on the GPU. Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
Diffstat (limited to 'libavutil/hwcontext_qsv.c')
-rw-r--r--libavutil/hwcontext_qsv.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c
index f2c80860a8..3679dc01d0 100644
--- a/libavutil/hwcontext_qsv.c
+++ b/libavutil/hwcontext_qsv.c
@@ -91,6 +91,7 @@ static const struct {
} supported_pixel_formats[] = {
{ AV_PIX_FMT_NV12, MFX_FOURCC_NV12 },
{ AV_PIX_FMT_P010, MFX_FOURCC_P010 },
+ { AV_PIX_FMT_PAL8, MFX_FOURCC_P8 },
};
static int qsv_device_init(AVHWDeviceContext *ctx)