QSVEncC (x64) 3.33 (r1761) by rigaya, Mar 7 2020 13:22:22 (VC 1916/Win/avx2) reader: raw, avi, avs, vpy, avqsv [H.264/AVC, H.265/HEVC, MPEG2, VP8, VP9] Usage: QSVEncC [Options] -i -o When video codec could be decoded by QSV, any format or protocol supported by ffmpeg library could be used as a input. Also, input can be avi, avs, vpy, raw YUV or YUV4MPEG2(y4m) format. when raw(default), fps, input-res are also necessary. output format will be automatically set by the output extension. when output filename is set to "-", H.264/AVC ES output is thrown to stdout. Example: QSVEncC -i "" -o "" avs2pipemod -y4mp "" | QSVEncC --y4m -i - -o "" Example for Benchmark: QSVEncC -i "" --benchmark "" Information Options: -h,-? --help show help -v,--version show version info --check-hw check if QuickSyncVideo is available --check-lib check lib API version installed --check-features [] check encode/vpp features with no option value, result will on stdout, otherwise, it is written to file path set and opened by default application. when writing to file, txt/html/csv format is available, chosen by the extension of the output file. --check-features-html [] check encode/vpp features and write html report to specified path. With no value, "qsv_check.html" will be created to current directory. --check-environment check environment info --check-avversion show dll version --check-codecs show codecs available --check-encoders show audio encoders available --check-decoders show audio decoders available --check-profiles show profile names available for specified audio codec --check-formats show in/out formats available --check-protocols show in/out protocols available --check-filters show filters available Basic Encoding Options: -i,--input set input filename -o,--output set output filename Input formats (auto detected from extension of not set) --raw set input as raw format --y4m set input as y4m format --avi set input as avi format --avs set input as avs format --vpy set input as vpy format --vpy-mt set input as vpy(mt) format --avhw use libavformat + hw decode for input --avsw set input to use avcodec + sw decoder --input-res x set input resolution --crop ,,, crop pixels from left,top,right,bottom left crop is unavailable with avhw reader --output-res x set output resolution --fps / or set framerate --interlace set input as interlaced tff, bff -c,--codec set encode codec - h264(default), hevc, mpeg2, raw --level set codec level - H.264: auto(default), 1, 1b, 1.1, 1.2, 1.3 2, 2.1, 2.2, 3, 3.1, 3.2, 4, 4.1, 4.2 5, 5.1, 5.2 - HEVC: auto(default), 1, 2, 2.1, 3, 3.1, 4 4.1, 5, 5.1, 5.2, 6, 6.1, 6.2 - MPEG2: auto(default), low, main, high high1440 --profile set codec profile - H.264: auto(default), Baseline, Main, High - HEVC: auto(default), main, main10 - MPEG2: auto(default), Simple, Main, High --tier set codec tier - HEVC: main(default), high --fixed-func use fixed func instead of GPU EU (default:off) Frame buffer Options: frame buffers are selected automatically by default. d3d9 memory is faster than d3d11, so d3d9 frames are used whenever possible, except decode/vpp only mode (= no encoding mode, system frames are used). On particular cases, such as runnning on a system with dGPU, or running vpp-rotate, will require the uses of d3d11 surface. Options below will change this default behavior. --disable-d3d disable using d3d surfaces --d3d use d3d9/d3d11 surfaces --d3d9 use d3d9 surfaces --d3d11 use d3d11 surfaces Encode Mode Options: EncMode default: --cqp --cqp or encode in Constant QP, default 24:26:27 :: set qp value for i:p:b frame --la set bitrate in Lookahead mode (kbps) --la-hrd set bitrate in HRD-Lookahead mode (kbps) --icq encode in Intelligent Const. Quality mode default value: 24 --la-icq encode in ICQ mode with Lookahead default value: 26 --cbr set bitrate in CBR mode (kbps) --vbr set bitrate in VBR mode (kbps) --avbr set bitrate in AVBR mode (kbps) AVBR mode is only supported with API v1.3 --avbr-unitsize avbr calculation period in x100 frames default 27 (= unit size 2300 frames) --qvbr set bitrate in Quality VBR mode. requires --qvbr-q option to be set as well --qvbr-q or set quality used in qvbr mode. default: 23 --qvbr-quality QVBR mode is only supported with API v1.11 --vcm set bitrate in VCM mode (kbps) Other Encode Options: --fallback-rc enable fallback of ratecontrol mode, when platform does not support new ratecontrol modes. -a,--async-depth set async depth for QSV pipeline. (0-64) default: 0 (=auto, 4+2*(extra pipeline step)) --max-bitrate set max bitrate(kbps) --qp-min or set min QP, default 0 (= unset) :: --qp-max or set max QP, default 0 (= unset) :: --qp-offset [:][:]... set qp offset of each pyramid reference layers. default 0 (= unset). -u,--quality encode quality - best, higher, high, balanced(default) fast, faster, fastest --la-depth set Lookahead Depth, 10-100 --la-window-size enables Lookahead Windowed Rate Control mode, and set the window size in frames. --la-quality set lookahead quality. - auto(default), fast, medium, slow --(no-)mbbrc enables per macro block rate control default: auto --ref reference frames default 0 (auto) -b,--bframes number of sequential b frames default 3(HEVC) / 3(others) --(no-)b-pyramid enables B-frame pyramid reference (default:off) --(no-)direct-bias-adjust lower usage of B frame Direct/Skip type --gop-len (max) gop length, default 0 (auto) when auto, fps x 10 will be set. --(no-)open-gop enables open gop (default:off) --strict-gop force gop structure --(no-)i-adapt enables adaptive I frame insert (default:off) --(no-)b-adapt enables adaptive B frame insert (default:off) --(no-)weightp enable weighted prediction for P frame --(no-)weightb enable weighted prediction for B frame --(no-)adapt-ltr enable adaptive LTR frames --(no-)repartition-check [H.264] enable prediction from small partitions --(no-)fade-detect enable fade detection --trellis set trellis mode used in encoding - auto(default), off, i, ip, all --mv-scaling set mv cost scaling - 0 set MV cost to be 0 - 1 set MV cost 1/2 of default - 2 set MV cost 1/4 of default - 3 set MV cost 1/8 of default --slices number of slices, default 0 (auto) --vbv-bufsize set vbv buffer size (kbit) / default: auto --no-deblock [h264] disables H.264 deblock feature --tskip [hevc] enable transform skip --sao [hevc] - auto default - none disable sao - luma enable sao for luma - chroma enable sao for chroma - all enable sao for luma & chroma --ctu [hevc] max ctu size - auto(default), 16, 32, 64 --sharpness [vp8] set sharpness level for vp8 enc --sar : set Sample Aspect Ratio --dar : set Display Aspect Ratio --bluray for H.264 bluray encoding --aud insert aud nal unit to ouput stream. --pic-struct insert pic-timing SEI with pic_struct. --chromaloc set chroma location flag [ 0 ... 5 ] default: 0 = unspecified --videoformat undef, auto, ntsc, component, pal, secam mac default: undef --colormatrix undef, auto, auto_res, bt709, smpte170m bt470bg, smpte240m, YCgCo, fcc, GBR bt2020nc, bt2020c, derived-ncl, derived-cl ictco, 2100-lms default: undef --colorprim undef, auto, auto_res, bt709, smpte170m bt470m, bt470bg, smpte240m, film, bt2020 st428, st431-2, st432-1, ebu3213-e default: undef --transfer undef, auto, auto_res, bt709, smpte170m bt470m, bt470bg, smpte240m, linear, log100 log316, iec61966-2-4, bt1361e, iec61966-2-1 bt2020-10, bt2020-12, smpte2084, smpte428 arib-std-b67 default: undef --colorrange undef, limited, tv, full, pc, auto default: undef --max-cll , set MaxCLL/MaxFall in nits. e.g. "1000,300" --master-display set Mastering display data. e.g. "G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,1)" --dhdr10-info apply dynamic HDR10+ metadata from json file. --input-analyze set time (sec) which reader analyze input file. default: 5 (seconds). could be only used with avhw/avsw reader. use if reader fails to detect audio stream. --video-track set video track to encode in track id 1 (default) highest resolution video track 2 next high resolution video track ... -1 lowest resolution video track -2 next low resolution video track ... --video-streamid set video track to encode in stream id --audio-source input extra audio file. --audio-file [?][:] extract audio into file. could be only used with avhw/avsw reader. below are optional, in [?], specify track number to extract. in [?], specify output format. --trim :[,:]... trim video for the frame range specified. frame range should not overwrap each other. --seek [:][:][.] (hh:mm:ss.ms) skip video for the time specified, seek will be inaccurate but fast. --input-format set input format of input file. this requires use of avhw/avsw reader. -f,--output-format set output format of output file. if format is not specified, output format will be guessed from output file extension. set "raw" for H.264/ES output. --audio-copy [[,...]] mux audio with video during output. could be only used with avhw/avsw reader and avcodec muxer. by default copies all audio tracks. "--audio-copy 1,2" will extract audio track #1 and #2. --audio-codec [?] encode audio to specified format. in [?], specify track number to encode. --audio-profile [?] specify audio profile. in [?], specify track number to apply. --audio-bitrate [?] set encode bitrate for audio (kbps). in [?], specify track number of audio. --audio-ignore-decode-error (default: 10) set numbers of continuous packets of audio decode error to ignore, replaced by silence. --audio-samplerate [?] set sampling rate for audio (Hz). in [?], specify track number of audio. --audio-resampler set audio resampler. swr (swresampler: default), soxr (libsoxr) --audio-delay [?] set audio delay (ms). --audio-stream [?][][:][,[][:]][.. set audio streams in channels. in [?], specify track number to split. in , set input channels to use from source stream. if unset, all input channels will be used. in , set output channels to mix. if unset, all input channels will be copied without mixing. example1: --audio-stream FL,FR splitting dual mono audio to each stream. example2: --audio-stream :stereo mixing input channels to stereo. example3: --audio-stream 5.1,5.1:stereo keeping 5.1ch audio and also adding downmixed stereo stream. usable symbols mono = FC stereo = FL + FR 2.1 = FL + FR + LFE 3.0 = FL + FR + FC 3.0(back) = FL + FR + BC 3.1 = FL + FR + FC + LFE 4.0 = FL + FR + FC + BC quad = FL + FR + BL + BR quad(side) = FL + FR + SL + SR 5.0 = FL + FR + FC + SL + SR 5.1 = FL + FR + FC + LFE + SL + SR 6.0 = FL + FR + FC + BC + SL + SR 6.0(front) = FL + FR + FLC + FRC + SL + SR hexagonal = FL + FR + FC + BL + BR + BC 6.1 = FL + FR + FC + LFE + BC + SL + SR 6.1(front) = FL + FR + LFE + FLC + FRC + SL + SR 7.0 = FL + FR + FC + BL + BR + SL + SR 7.0(front) = FL + FR + FC + FLC + FRC + SL + SR 7.1 = FL + FR + FC + LFE + BL + BR + SL + SR 7.1(wide) = FL + FR + FC + LFE + FLC + FRC + SL + SR --audio-filter [?] set audio filter. in [?], specify track number of audio. --chapter-copy copy chapter to output file. --chapter set chapter from file specified. --key-on-chapter set key frame on chapter. --sub-source input extra subtitle file. --sub-copy [[,...]] copy subtitle to output file. these could be only used with avhw/avsw reader and avcodec muxer. below are optional, in [?], specify track number to copy. --caption2ass [] enable caption2ass during encode. !! This feature requires Caption.dll !! supported formats ... srt (default), ass --data-copy [[,...]] copy data stream to output file. --avsync method for AV sync (default: cfr) cfr ... assume cfr forcecfr ... check timestamp and force cfr vfr ... honor source timestamp and enable vfr output. only available for avsw/avhw reader, and could not be used with --trim. --input-option : set input option name and value. these could be only used with avhw/avsw reader. -m,--mux-option : set muxer option name and value. these could be only used with avhw/avsw reader and avcodec muxer. VPP Options: --vpp-denoise use vpp denoise, set strength (0-100) --vpp-mctf ["auto" or ] use vpp motion compensated temporal filter(mctf) set strength (1-20), default: 0 (auto) --vpp-detail-enhance use vpp detail enahancer, set strength (0-100) --vpp-deinterlace set vpp deinterlace mode - none disable deinterlace - normal normal deinterlace - it inverse telecine - bob double framerate --vpp-image-stab set image stabilizer mode - none, upscale, box --vpp-rotate rotate image 90, 180, 270. --vpp-mirror mirror image - h mirror in horizontal direction - v mirror in vertical direction --vpp-half-turn half turn video image unoptimized and very slow. --vpp-resize set scaling quality - auto(default) - simple use simple scaling - fine use high quality scaling --vpp-colorspace [=][,=][...] Converts colorspace of the video. params matrix=: bt709, smpte170m range=: limited, full --vpp-delogo set delogo file path --vpp-delogo-select set target logo name or auto select file or logo index starting from 1. --vpp-delogo-pos : set delogo pos offset --vpp-delogo-depth set delogo depth [default:128] --vpp-delogo-y set delogo y param --vpp-delogo-cb set delogo cb param --vpp-delogo-cr set delogo cr param --vpp-delogo-add add logo mode --input-buf buffer size for input in frames (1-16) default hw: 3, sw: 1 cannot be used with avqsv reader. --output-buf buffer size for output in MByte default 8 MB (0-128) --mfx-thread set mfx thread num (-1 (auto), 2, 3, ...) note that mfx thread cannot be less than 2. --min-memory minimize memory usage of QSVEncC. same as --output-thread 0 --audio-thread 0 --mfx-thread 2 -a 1 --input-buf 1 --output-buf 0 this will cause lower performance! --(no-)timer-period-tuning enable(disable) timer period tuning default: enabled --log set log file name --log-level set log level debug, info(default), warn, error --log-framelist output frame info of avhw reader to path --max-procfps limit encoding speed for lower utilization. default:0 (no limit) --output-thread set output thread num -1: auto (= default) 0: disable (slow, but less memory usage) 1: use one thread --perf-monitor [][,]... check performance info of encoder and output to log file select counter from below, default = all counters for perf-monitor all ... monitor all info cpu_total ... cpu total usage (%) cpu_kernel ... cpu kernel usage (%) cpu_main ... cpu main thread usage (%) cpu_enc ... cpu encode thread usage (%) cpu_in ... cpu input thread usage (%) cpu_out ... cpu output thread usage (%) cpu_aud_proc ... cpu aud proc thread usage (%) cpu_aud_enc ... cpu aud enc thread usage (%) cpu ... monitor all cpu info gpu_load ... gpu usage (%) gpu_clock ... gpu avg clock vee_load ... gpu video encoder usage (%) ved_load ... gpu video decoder usage (%) gpu ... monitor all gpu info queue ... queue usage mem_private ... private memory (MB) mem_virtual ... virtual memory (MB) mem ... monitor all memory info io_read ... io read (MB/s) io_write ... io write (MB/s) io ... monitor all io info fps ... encode speed (fps) fps_avg ... encode avg. speed (fps) bitrate ... encode bitrate (kbps) bitrate_avg ... encode avg. bitrate (kbps) frame_out ... written_frames --perf-monitor-interval set perf monitor check interval (millisec) default 500, must be 50 or more --python set python path for --perf-monitor-plot default: python --benchmark run in benchmark mode and write result in txt file --bench-quality "all" or [,][,]... default: "best,balanced,fastest" list of target quality to check on benchmark