Anton Khirnov
4ab61cd983
qsv{enc,dec}: extend the internal frame allocator
...
Handle the internal frame requests, which is required by the HEVC
encoding plugin.
Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
2016-11-07 12:48:00 +01:00
Anton Khirnov
00aeedd841
qsv{dec,enc}: use a struct as a memory id with internal memory allocator
...
This will allow implementing the allocator more fully, which is needed
by the HEVC encoder plugin with video memory input.
Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
2016-11-07 12:47:54 +01:00
Mark Thompson
1f26a231bb
qsv: Merge libav implementation
...
Merged as-at libav 398f015
, and therefore includes outstanding
skipped merges 04b17ff
and 130e1f1
.
All features not in libav are preserved, and no options change.
2016-10-31 19:23:40 +00:00
Anton Khirnov
8e07c22e50
qsvenc: print warnings from encode/init
2016-07-22 19:08:13 +02:00
Anton Khirnov
95414eb2dc
qsv: print more complete error messages
...
Include the libmfx error code and its description
2016-07-22 19:08:13 +02:00
Anton Khirnov
21962261c7
qsv: handle the semi-packed formats in map_fourcc as well
...
This will allow using this function for encoding as well, where the
input format is already the semi-packed version.
2016-07-22 19:08:13 +02:00
Anton Khirnov
92736c74fb
qsvdec: add support for P010 (10-bit 420) decoding
2016-07-03 09:13:29 +02:00
Anton Khirnov
536bb17e96
qsvdec: make ff_qsv_map_pixfmt() return a MFX fourcc as well
...
Stop hardcoding NV12.
Also, move this function to the shared code, it will be used by the
encoder as well.
2016-07-03 09:13:29 +02:00
Anton Khirnov
ad9c9440d5
qsvenc: support getting the session from an AVHWFramesContext
2016-06-21 19:53:38 +02:00
Anton Khirnov
a0524d9b1e
qsvdec: support getting the session from an AVHWFramesContext
2016-06-21 19:53:38 +02:00
Derek Buitenhuis
c182845068
Merge commit '92c1a83ee9394b39d68f6affd9104752a03714f8'
...
* commit '92c1a83ee9394b39d68f6affd9104752a03714f8':
qsv: Fix loading multiple plugins
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-13 17:31:36 +01:00
Derek Buitenhuis
6e2ca81485
Merge commit 'ce9d7da7650473f580dcce8c9f8550ea532aa6bd'
...
* commit 'ce9d7da7650473f580dcce8c9f8550ea532aa6bd':
qsv: Move down the implementation query
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-12 15:41:46 +01:00
Luca Barbato
92c1a83ee9
qsv: Fix loading multiple plugins
...
av_get_token does not strip the trailing separator.
2016-03-15 16:05:19 +01:00
Luca Barbato
ce9d7da765
qsv: Move down the implementation query
...
The plugin loaded may not match the general implementation capability
wise.
2016-02-26 10:28:42 +01:00
Ivan Uskov
ce91bab70f
libavcodec/qsv.c: Issue fixed: QSV engine does not release display handler under linux platform.
...
Reviewed-by: Gwenole Beauchesne <gb.devel@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-14 02:02:55 +02:00
Michael Niedermayer
7871eb4361
Merge commit '66acb76bb0492b263215ca9b4d927a7be39ace02'
...
* commit '66acb76bb0492b263215ca9b4d927a7be39ace02':
lavc: add Intel libmfx-based HEVC encoder
Conflicts:
Changelog
configure
libavcodec/Makefile
libavcodec/allcodecs.c
libavcodec/qsv.c
libavcodec/qsvenc.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 11:53:14 +02:00
Anton Khirnov
66acb76bb0
lavc: add Intel libmfx-based HEVC encoder
2015-07-08 23:40:11 +02:00
Ivan Uskov
9c95734e1c
libavcodec/qsv.c: Linux-only code part has been moved to separate function in order to avoid the "ISO C90 forbids mixed declarations and code" compiler warning.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-07 14:03:59 +02:00
Ivan Uskov
db89f45535
avcodec/qsv: Extending QSV/MFX session initialization for the linux platform where a display handle is required.
...
Now ff_qsv_init_internal_session() is able
to find appropriate display handle under linux using VAAPI.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-02 15:05:56 +02:00
Michael Niedermayer
b12eacb383
Merge commit 'd0a63d8b989647ffdb5f40da8e1feaffe1a8e791'
...
* commit 'd0a63d8b989647ffdb5f40da8e1feaffe1a8e791':
qsvdec: split off some code that will be shared with the encoder
Conflicts:
libavcodec/Makefile
libavcodec/qsvdec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-28 01:16:21 +01:00
Anton Khirnov
d0a63d8b98
qsvdec: split off some code that will be shared with the encoder
2015-03-27 21:57:28 +01:00
Anton Khirnov
b04d009b0e
qsv: rename to qsvdec
...
This is to avoid conflicts with the upcoming QSV encoding support.
2015-03-27 21:56:36 +01:00
Yukinori Yamazoe
212556cd21
qsv: Improve the log message of when initializing MFX_IMPL_HARDWARE{2, 3, 4}
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-03-11 19:48:01 +01:00
Anton Khirnov
4e08c82110
lavc: add an Intel libmfx-based H.264 decoder
...
Based on the code by Luca Barbato <lu_zero@gentoo.org> and Yukinori
Yamazoe <drocon11@gmail.com>.
2015-02-19 15:08:49 +01:00