I separated this part from the original conversation to not bloat that one unnecessarily.
Tested it with the A770
This is with pipe from ffmpeg - no hyper mode enabled in QSVenc
This is normal QSVEnc does both jobs - no hyper mode enabled in QSVenc
Hyper mode doesn't seem to work with HEVC.
Retesting with HDD 1 to HDD 2 and SSD to SSD
This test was HHD 1 to HDD1
The 8 cores more in the Ryzen 9 5950X make a difference.
I've got Intel's Arc A770, AMD and nVidia can suck on that : (Intel's SDK scales up QP range with output bit depth, so in x265's terms QPs are 22/22/24)
Code:QSVEncC (x64) 7.32 (r2990) by rigaya, Feb 7 2023 09:45:43 (gcc 9.4.0/Linux) OS Ubuntu 22.04.1 LTS (5.17.0-1026-oem) x64 CPU Info AMD Ryzen 9 5950X 16-Core Processor (16C/32T) <DG2> GPU Info Intel Graphics / Driver : Intel iHD driver for Intel(R) Gen Graphics - 22.4.3 (74f40ee) Media SDK QuickSyncVideo (hardware encoder) FF, 1st GPU, API v2.07 Async Depth 8 frames Hyper Mode off Buffer Memory va, 131 work buffer Input Info y4m(yv12(10bit))->p010 [AVX2], 1920x800, 24000/1001 fps AVSync cfr Output HEVC(yuv420 10bit) main10 @ Level 4 (high tier) 1920x800p 1:1 23.976fps (24000/1001fps) Target usage 1 - best Encode Mode Constant QP (CQP) CQP Value I:34 P:34 B:36 Scenario Info archive QP Limit min: 22, max: 63 Ref frames 6 frames Bframes 16 frames, B-pyramid: on Max GOP Length 240 frames Ext. Features WeightP WeightB GPB QPOffset pic_struct tskip ctu:64 sao:all encoded 137208 frames, 377.51 fps, 893.36 kbps, 609.45 MB encode time 0:06:03, CPULoad: 0.0% frame type IDR 572 frame type I 1144, total size 43.59 MB frame type P 8575, total size 184.09 MB frame type B 128061, total size 403.56 MB
Code:~/w/ffmpeg/ffmpeg -i ~/w/src.h264 -vf crop=1920:800:0:140 -strict -1 -pix_fmt yuv420p10le -f yuv4mpegpipe -v 0 - | ~/w/qsvencc/qsvencc --y4m -i - -c hevc -u best --profile main10 --cqp 34:34:36 --i-adapt --b-adapt --scenario-info archive --open-gop -b 16 --output-depth 10 --la-depth 100 --la-quality slow --pic-struct --hevc-gpb --async-depth 8 -o encoded.hevc
Bear in mind, on a 5950X ffmpeg piping to qsvencc is faster than qsvencc doing decoding and encoding, on other processors it might be slower to way slower.
Tested it with the A770
This is with pipe from ffmpeg - no hyper mode enabled in QSVenc
Code:
QSVEncC (x64) 7.34 (r2999) by rigaya, Feb 13 2023 12:32:42 (VC 1934/Win)
OS Windows 11 x64 (22621) [UTF-8]
CPU Info 12th Gen Intel Core i9-12900K [5.00GHz] (8P+8E,16C/24T) <DG2>
GPU Info Intel Arc A770 Graphics (512EU) 300-2400MHz (31.0.101.4091)
Media SDK QuickSyncVideo (hardware encoder) FF, 2nd GPU, API v2.08
Async Depth 8 frames
Hyper Mode off
Buffer Memory d3d11, 131 work buffer
Input Info avsw: rawvideo(yv12)->p010 [AVX2], 1920x1080, 24000/1001 fps
AVSync cfr
Output HEVC(yuv420 10bit) main10 @ Level 5 (high tier)
1920x1080p 1:1 23.976fps (24000/1001fps)
avwriter: hevc, aac => matroska
Target usage 1 - best
Encode Mode Constant QP (CQP)
CQP Value I:34 P:34 B:36
Scenario Info archive
QP Limit min: 22, max: 63
Ref frames 6 frames
Bframes 16 frames, B-pyramid: on
Max GOP Length 240 frames
Ext. Features WeightP WeightB GPB QPOffset pic_struct tskip ctu:64 sao:all
frame=34047 fps=253 q=-0.0 Lsize=103442308kB time=00:23:40.08 bitrate=596724.0kbits/s speed=10.6x
video:103417762kB audio:22189kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.002277%
encoded 34047 frames, 257.70 fps, 1144.54 kbps, 193.75 MB
encode time 0:02:12, CPU: 0.5%, GPU: 23.1%, VD: 99.1%
frame type IDR 142
frame type I 142, total size 11.96 MB
frame type P 2128, total size 69.73 MB
frame type B 31777, total size 112.06 MB
This is normal QSVEnc does both jobs - no hyper mode enabled in QSVenc
Code:
QSVEncC (x64) 7.34 (r2999) by rigaya, Feb 13 2023 12:32:42 (VC 1934/Win)
OS Windows 11 x64 (22621) [UTF-8]
CPU Info 12th Gen Intel Core i9-12900K [5.02GHz] (8P+8E,16C/24T) <DG2>
GPU Info Intel Arc A770 Graphics (512EU) 300-2400MHz (31.0.101.4091)
Media SDK QuickSyncVideo (hardware encoder) FF, 2nd GPU, API v2.08
Async Depth 8 frames
Hyper Mode off
Buffer Memory d3d11, 160 work buffer
Input Info avqsv: H.264/AVC, 1920x1080, 24000/1001 fps
VPP ColorFmtConvertion: nv12 -> p010
AVSync cfr
Output HEVC(yuv420 10bit) main10 @ Level 5 (high tier)
1920x1080p 1:1 23.976fps (24000/1001fps)
avwriter: hevc, aac => matroska
Target usage 1 - best
Encode Mode Constant QP (CQP)
CQP Value I:34 P:34 B:36
Scenario Info archive
QP Limit min: 22, max: 63
Ref frames 6 frames
Bframes 16 frames, B-pyramid: on
Max GOP Length 240 frames
Ext. Features WeightP WeightB GPB QPOffset pic_struct tskip ctu:64 sao:all
encoded 34047 frames, 268.98 fps, 1158.52 kbps, 196.12 MB
encode time 0:02:06, CPU: 0.3%, GPU: 30.8%, VD: 117.2%
frame type IDR 142
frame type I 142, total size 11.96 MB
frame type P 2128, total size 69.82 MB
frame type B 31777, total size 114.34 MB
Hyper mode doesn't seem to work with HEVC.
Retesting with HDD 1 to HDD 2 and SSD to SSD
This test was HHD 1 to HDD1
The 8 cores more in the Ryzen 9 5950X make a difference.