Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-07lavc/qsv: extactly map profileZhong Li
Currently profile mapping is hard-coded, and not flexible to do extactly map (E.g: libmfx treats H264 constrained baseline to be baseline profile). vaapi profile mapping funtion provides a better soultion than current qsv mapping. Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-05-07lavc/qsvdec: fix hevc level incorrectly mapZhong Li
libmfx hevc level defination is same as h264, not level_idc of SPEC. Signed-off-by: Zhong Li <zhong.li@intel.com>
2018-07-12lavc/qsv: handle MFX_FRAMETYPE_UNKNOWN caseZhong Li
Signed-off-by: Zhong Li <zhong.li@intel.com>
2018-06-12lavc/qsv: suppress code scan complainZhong Li
Suppress the complain "variables 'type' is used but maybe uninitialized".
2018-04-14Merge commit 'cca5e4f040971db6de0bfe6968f00c021d8a9c42'James Almer
* commit 'cca5e4f040971db6de0bfe6968f00c021d8a9c42': qsv: adding Multi Frame Encode support Merged-by: James Almer <jamrial@gmail.com>
2018-04-14Merge commit '52ed83fa1a7f5170447eff6fad0b6c57119596e9'James Almer
* commit '52ed83fa1a7f5170447eff6fad0b6c57119596e9': lavc/qsvdec: expose frame pic_type and key_frame Merged-by: James Almer <jamrial@gmail.com>
2018-04-08qsv: adding Multi Frame Encode supportMaxym Dmytrychenko
Starting from API 1.25 helps to improve performance of the simultaneous encode, 1:N scenario, like: ./avconv -y -hwaccel qsv -c:v h264_qsv -r 30000/1001 -i ~/bbb_sunflower_1080p_60fps_normal.mp4 -vframes 600 -an \ -filter_complex "split=2[s1][s2]; [s1]scale_qsv=1280:720[o1]; [s2]scale_qsv=960:540[o2]" \ -map [o1] -c:v h264_qsv -b:v 3200k -minrate 3200k -maxrate 3200k -f rawvideo /tmp/3200a.264 \ -map [o2] -c:v h264_qsv -b:v 1750k -minrate 1750k -maxrate 1750k -f rawvideo /tmp/1750a.264 Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2018-04-08lavc/qsvdec: expose frame pic_type and key_frameZhong Li
Currently pict_type and key_frame are unset. Add an extra param to fetch the picture type from qsv decoder The judgement “key frame is equal to IDR frame” only suitable for H264. For HEVC, all IRAP frames are key frames, and other codecs have no IDR frame. Signed-off-by: ChaoX A Liu <chaox.a.liu@intel.com> Signed-off-by: Zhong Li <zhong.li@intel.com> Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2018-02-12Merge commit '6829a079444e10818a847e153121fb458cc5c0a8'James Almer
* commit '6829a079444e10818a847e153121fb458cc5c0a8': qsvdec: Relax the surface vs coded dimension check Merged-by: James Almer <jamrial@gmail.com>
2018-01-26qsvdec: Relax the surface vs coded dimension checkZhong Li
Fix a common vp8 decoding failure. Many vp8 clips cannot decode if hw_frames_ctx is enabled, reporting "Error during QSV decoding.: incompatible video parameters (-14)". It is due to mfx.FrameInfo.Width/Height not matching coded_w/coded_h. See: avconv -hwaccel qsv -init_hw_device qsv -c:v vp8_qsv -i vp8-test-vectors-r1/vp80-00-comprehensive-001.ivf -vf "hwdownload,format=nv12" -pix_fmt yuv420p -f md5 - Signed-off-by: Zhong Li <zhong.li@intel.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-11-11Merge commit 'ea25ccd1b2a980df8d43cc1f86a23e3c094090a6'James Almer
* commit 'ea25ccd1b2a980df8d43cc1f86a23e3c094090a6': qsv: Join the derived session to the parent Merged-by: James Almer <jamrial@gmail.com>
2017-11-08Merge commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2'James Almer
* commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2': libavcodec/mjpeg_qsv: Add QSV MJPEG encoder Merged-by: James Almer <jamrial@gmail.com>
2017-10-04Merge commit '984736dd9e5b50987a5910e22495304e4a6d975c'James Almer
* commit '984736dd9e5b50987a5910e22495304e4a6d975c': lavc: make sure not to return EAGAIN from codecs Merged-by: James Almer <jamrial@gmail.com>
2017-09-27qsv: Join the derived session to the parentLuca Barbato
Should improve the performance on multiple transcoding from a single source.
2017-07-25libavcodec/mjpeg_qsv: Add QSV MJPEG encoderHuang, Zhengxu
usage: -hwaccel qsv -c:v h264_qsv -i in -c:v mjpeg_qsv -global_quality 80 -f mjpeg out Signed-off-by: ChaoX A Liu <chaox.a.liu@gmail.com> Signed-off-by: Zhengxu Huang <zhengxu.maxwell@gmail.com> Signed-off-by: Andrew Zhang <huazh407@gmail.com Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2017-06-15qsv: Add ability to create a session from a deviceMark Thompson
(cherry picked from commit 4936a48b1e6fc2147599541f8b25f43a8a9d1f16)
2017-04-02qsv: Add ability to create a session from a deviceMark Thompson
2017-04-01Merge commit '715b8243460836fb7dd15bf7e41668e773beb276'Clément Bœsch
* commit '715b8243460836fb7dd15bf7e41668e773beb276': qsv: Drop some unused variables Merged-by: Clément Bœsch <u@pkh.me>
2017-04-01Merge commit 'e0b164576f7467b7b1127c18175e215dc1df011f'Clément Bœsch
* commit 'e0b164576f7467b7b1127c18175e215dc1df011f': qsv: Add VP8 decoder Merged-by: Clément Bœsch <u@pkh.me>
2017-03-31Merge commit '4ab61cd983b539749bd621ea271624ddb5196a8e'Mark Thompson
* commit '4ab61cd983b539749bd621ea271624ddb5196a8e': qsv{enc,dec}: extend the internal frame allocator Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-31Merge commit '00aeedd84105a17f414185bd33ecadebeddb3a27'Mark Thompson
* commit '00aeedd84105a17f414185bd33ecadebeddb3a27': qsv{dec,enc}: use a struct as a memory id with internal memory allocator Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-12Merge commit '8e07c22e508b349d145b9f142aa3ee8b3ce1d3a4'Mark Thompson
* commit '8e07c22e508b349d145b9f142aa3ee8b3ce1d3a4': qsvenc: print warnings from encode/init Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-12Merge commit '95414eb2dc63a6f934275b4ed33dedd4369f2c49'Mark Thompson
* commit '95414eb2dc63a6f934275b4ed33dedd4369f2c49': qsv: print more complete error messages Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-12Merge commit '21962261c74aed4df00ae8348a5e2d1ecb67c52d'Mark Thompson
* commit '21962261c74aed4df00ae8348a5e2d1ecb67c52d': qsv: handle the semi-packed formats in map_fourcc as well Merged-by: Mark Thompson <sw@jkqxz.net>
2017-02-25lavc: make sure not to return EAGAIN from codecsAnton Khirnov
This error is treated specially by the API. CC: libav-stable@libav.org
2016-11-17qsv: Drop some unused variablesDiego Biurrun
2016-11-14qsv: Add VP8 decoderMark Thompson
2016-11-14qsvdec: Pass the correct profile to libmfxMark Thompson
This was correct for H.26[45], because libmfx uses the same values derived from profile_idc and the constraint_set flags, but it is wrong for other codecs. Also avoid passing FF_LEVEL_UNKNOWN (-99) as the level, as this is certainly invalid.
2016-11-14Merge commit '92736c74fb1633e36f7134a880422a9b7db14d3f'Hendrik Leppkes
* commit '92736c74fb1633e36f7134a880422a9b7db14d3f': qsvdec: add support for P010 (10-bit 420) decoding Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-11-14Merge commit '536bb17e9659c5ed7576a218d4085cdd6d5742fa'Hendrik Leppkes
* commit '536bb17e9659c5ed7576a218d4085cdd6d5742fa': qsvdec: make ff_qsv_map_pixfmt() return a MFX fourcc as well Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-11-07qsv{enc,dec}: extend the internal frame allocatorAnton Khirnov
Handle the internal frame requests, which is required by the HEVC encoding plugin. Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
2016-11-07qsv{dec,enc}: use a struct as a memory id with internal memory allocatorAnton Khirnov
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-10-31qsv: Merge libav implementationMark Thompson
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-07-22qsvenc: print warnings from encode/initAnton Khirnov
2016-07-22qsv: print more complete error messagesAnton Khirnov
Include the libmfx error code and its description
2016-07-22qsv: handle the semi-packed formats in map_fourcc as wellAnton Khirnov
This will allow using this function for encoding as well, where the input format is already the semi-packed version.
2016-07-03qsvdec: add support for P010 (10-bit 420) decodingAnton Khirnov
2016-07-03qsvdec: make ff_qsv_map_pixfmt() return a MFX fourcc as wellAnton Khirnov
Stop hardcoding NV12. Also, move this function to the shared code, it will be used by the encoder as well.
2016-06-21qsvenc: support getting the session from an AVHWFramesContextAnton Khirnov
2016-06-21qsvdec: support getting the session from an AVHWFramesContextAnton Khirnov
2016-04-13Merge commit '92c1a83ee9394b39d68f6affd9104752a03714f8'Derek Buitenhuis
* commit '92c1a83ee9394b39d68f6affd9104752a03714f8': qsv: Fix loading multiple plugins Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-12Merge commit 'ce9d7da7650473f580dcce8c9f8550ea532aa6bd'Derek Buitenhuis
* commit 'ce9d7da7650473f580dcce8c9f8550ea532aa6bd': qsv: Move down the implementation query Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-15qsv: Fix loading multiple pluginsLuca Barbato
av_get_token does not strip the trailing separator.
2016-02-26qsv: Move down the implementation queryLuca Barbato
The plugin loaded may not match the general implementation capability wise.
2015-07-14libavcodec/qsv.c: Issue fixed: QSV engine does not release display handler ↵Ivan Uskov
under linux platform. Reviewed-by: Gwenole Beauchesne <gb.devel@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-09Merge commit '66acb76bb0492b263215ca9b4d927a7be39ace02'Michael Niedermayer
* 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-09lavc: add Intel libmfx-based HEVC encoderAnton Khirnov
2015-07-07libavcodec/qsv.c: Linux-only code part has been moved to separate function ↵Ivan Uskov
in order to avoid the "ISO C90 forbids mixed declarations and code" compiler warning. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-02avcodec/qsv: Extending QSV/MFX session initialization for the linux platform ↵Ivan Uskov
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-03-28Merge commit 'd0a63d8b989647ffdb5f40da8e1feaffe1a8e791'Michael Niedermayer
* 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>