Age | Commit message (Collapse) | Author |
|
* commit 'cca5e4f040971db6de0bfe6968f00c021d8a9c42':
qsv: adding Multi Frame Encode support
Merged-by: James Almer <jamrial@gmail.com>
|
|
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>
|
|
* commit 'deefca02c275ce4bc5ccbee690463ffef81a18b8':
qsvenc: add the Access Unit Delimiter NAL Unit support
Merged-by: James Almer <jamrial@gmail.com>
|
|
* commit '3d6e76b953afd36e23ef8532b81aea58a6338931':
qsvenc: Fix a typo of FrameRateExtD/FrameRateExtN
Merged-by: James Almer <jamrial@gmail.com>
|
|
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
* commit '2d6b3f3a9dce409ca51d70ef4b85c0593bb4b109':
qsvenc: Provide a detailed error message if the parameters are invalid
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
Currently it always shows "Selected ratecontrol mode is not supported
by the QSV runtime. Choose a different mode", but sometimes it is not
accurate.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
* commit '8bb9824fcbc5a6ebf68391d70a2c4f03447990d2':
qsvenc: AVBR is not supported on non-windows OS
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
AVBR is supported from API 1.3 but only available for Windows
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
|
|
* commit '508378556631dc18d32247b4a4e35703758e1ca9':
qsv: Support explicit lookahead downscaling
Merged-by: James Almer <jamrial@gmail.com>
|
|
* commit '7c65a76b16bc3a44f1592acde2176f187a058797':
lavc/qsvenc: add error messeage if ICQ unsupported.
Merged-by: James Almer <jamrial@gmail.com>
|
|
* commit '6ff29343b01923e9b125fe7404ac8701cdfb1fe5':
lavc/qsvenc: set HRD buffer size
Merged-by: James Almer <jamrial@gmail.com>
|
|
|
|
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
|
|
Hypothetical Reference Decoding (HRD) model assumes that data flows
into a buffer of the fixed size BufferSizeInKB with a constant bitrate.
Smaller BufferSizeInKB means smaller frame size variations,
but more difficult to maintain HRD.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
|
|
* commit 'b843b343d8a3210ae37a2342b1904a5bd1e5fc6e':
qsvenc: cavlc option is only available for h264
Merged-by: James Almer <jamrial@gmail.com>
|
|
Moving option definition to h264 implementation and fixing command line defaults
in order to properly respect cavlc input value
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
|
|
* commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2':
libavcodec/mjpeg_qsv: Add QSV MJPEG encoder
Merged-by: James Almer <jamrial@gmail.com>
|
|
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>
|
|
(cherry picked from commit 3d197514e613ccd9eab43180c0a7c8b09a307606)
|
|
(cherry picked from commit 4936a48b1e6fc2147599541f8b25f43a8a9d1f16)
|
|
Purpose: qsvenc: make sure that interlaced encoding works. Also,
reduce the vertical alignment constraint when possible to reduce
memory usage.
Note: Most of this code used to be present in ffmpeg and was
eliminated in revision 1f26a23 on Oct. 31, 2016 (qsv: Merge libav
implementation, at
https://github.com/FFmpeg/FFmpeg/commit/1f26a231bb065276cd80ce02957c759f3197
edfa#diff-7d84a34d58597bb7aa4b8239dca1f9f8). Already applied to
libav.
Reviewed-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit 8fd8f91e47f33cd82371a97ac81afc476144964f)
Signed-off-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: Aaron Levinson <alevinsn@aracnet.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
Purpose: Fill out the default/unset parameters with ones actually in use.
Note: Matches the current MediaSDK example code. This code used to be
present in ffmpeg and was eliminated in revision 1f26a23 on Oct. 31,
2016 (qsv: Merge libav implementation, at
https://github.com/FFmpeg/FFmpeg/commit/1f26a231bb065276cd80ce02957c759f3197edfa#diff-7d84a34d58597bb7aa4b8239dca1f9f8).
Already applied to libav.
Reviewed-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit b22094d74901fb3ac203c8322f8d84aded470bfb)
Signed-off-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: Aaron Levinson <alevinsn@aracnet.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
And reduce the vertical alignment constraint when possible to reduce the
memory usage.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
Fill out the default/unset parameters with ones actually in use.
Matches the current MediaSDK example code.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
|
|
|
|
* commit '4ab61cd983b539749bd621ea271624ddb5196a8e':
qsv{enc,dec}: extend the internal frame allocator
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit '00aeedd84105a17f414185bd33ecadebeddb3a27':
qsv{dec,enc}: use a struct as a memory id with internal memory allocator
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit '404e51478ecad060249d5b9bee6ab39a8a9d8c1c':
qsv{dec,enc}: always use an internal mfxFrameSurface1
Minor fixups for differences in the QSV encoder because of a53cc.
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit '8e07c22e508b349d145b9f142aa3ee8b3ce1d3a4':
qsvenc: print warnings from encode/init
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit '95414eb2dc63a6f934275b4ed33dedd4369f2c49':
qsv: print more complete error messages
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit 'd9ec3c60143babe1bb77c268e1d5547d15acd69b':
qsvenc: take only the allocated dimensions from the frames context
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
* commit '37a9015ee84c15fec5247ba8f6577351a25fa8d2':
qsvenc: add support for p010
Merged-by: Mark Thompson <sw@jkqxz.net>
|
|
Setting an invalid range for it makes the encoder behave inconsistently.
|
|
Handle the internal frame requests, which is required by the HEVC
encoding plugin.
Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
|
|
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>
|
|
For encoding, this avoids modifying the input surface, which we are not
allowed to do.
This will also be useful in the following commits.
Signed-off-by: Maxym Dmytrychenko <maxym.dmytrychenko@intel.com>
|
|
It should only be done for DEVICE_BUSY/IN_EXECUTION
(cherry picked from commit 0956fd460681e8ccbdae19f135f0d3970bf95c2f)
Fixes ticket #5924.
|
|
4th generation Intel CPUs don't support MFX_EXTBUFF_CODING_OPTION3.
This patch fixes bug #5324.
|
|
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.
|
|
|
|
Include the libmfx error code and its description
|
|
Other parameters, like the display size, should still be taken from the
codec context.
|
|
|
|
It should only be done for DEVICE_BUSY/IN_EXECUTION
|
|
|
|
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
|
|
* commit 'a1335149fd610b16459d9281b611282cac51c950':
qsvenc: store the sync point in heap memory
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
|