Update only for NVEnc.auo (Aviutl plugin), adding English and Chinese translation.
Fix GPU usage sometimes showing over 100%.
Now --audio-stream will be able to handle change of audio channel during encoding.
Fix incorrect p210 → yuv444 conversion made in GPU.
Fix --vpp-colorspace used with --vpp-deinterlace causing corruption of chroma data. ( #416 )
Fix unexpected abort caused when reading from stdin on Linux systems.
This change disables "quit by 'q' key" in Linux systems.
Support conversion from bt470bg in --vpp-colorspace. ( #416 )
Fix audio volume getting smaller when downmixing surround audio. ( #415 )
Now --vpp-colorspace hdr2sdr will follow in/out colormatrix, colorprim and transfer specified. ( #412 )
Fix error caused when audio decoder not reporting sample format. ( #399 )
Reduce usage of deprecated functions.
Fix black line artifact caused when reading yuv422 input file using --crop option.
Now nvencc can be built on Linux systems based on aarch64 arch.
hw encoding worked fine, but hw decode currently failes.
Tesla T4G(AWS g5g) example of --check-features.
Fix vpp-afs deinterlace blending causing artifact in some cases when handling YUV420. ( #398 )
Add error message when setting 0 for ldr_nits and source_peak.
Add new option to resize while preserving aspect ratio. ( #391, --output-res <w>x<h>,preserve_aspect_ratio=<string> )
Now 'q' key could be used to quit the program from the console. ( #392 )
Fix artifacts caused when using --avhw with some HEVC input files
Avoid PPS id out of range error caused and encoding giving up with few frames for HEVC 10bit input. ( #389 )
Fix timestamp error caused when using --vpp-afs and --vpp-convolution3d at the same time.
Add pyramid, prism to lut3d_interp option in --vpp-colorspace.
Add more timestamp checks. ( #383 )
Add 3D denoise filter. (--vpp-convolution3d)
Fix audio out of sync when audio start time is not zero and timebase of video and audio is different. ( #386 )
[Windows] Fix app crushing in NVEnc 5.45 with error "avcuvid/avsw: avcodec: failed to load dlls".
Add support for ffmpeg 5.0. ( #379 )
Update ffmpeg dlls (for Windows).
ffmpeg 4.x -> 5.0
expat 2.2.5 -> 2.4.4
fribidi 1.0.1 -> 1.0.11
libogg 1.3.4 -> 1.3.5
libvorbis 1.3.6 -> 1.3.7
libsndfile 1.0.28 -> 1.0.31
libxml2 2.9.10 -> 2.9.12
libbluray 1.1.2 -> 1.3.0
dav1d 0.6.0 -> 0.9.2
Fix error when using --vpp-delogo with auto_nr or auto_fade option on.
Add new option --qvbr <float> which allows to set constant quality mode directly.
This is simply short for --vbr 0 --vbr-quality <float>.
Add new option to --vpp-colorspace to apply 3d LUT table. (--vpp-colorspace lut3d, #376 )
Add new option to insert dolby vision rpu to HEVC bitstream. (--dolby-vision-rpu, #371 )
Add new option to specify dolby vision profile. (--dolby-vision-profile, #371 )
Rpm build at Fedora34 seems to fail due to CUDA nvcc and gcc version mismatch. I'm currently not able to find out how I can avoid this.
Add option to set thread priority and power throttling modes. (--thread-priority, --thread-throttling)
Fix negative output-res not working with --dar.
Avoid freeze caused when input file is broken when suing avhw mode. ( #373 )
Fix green line showing up in the left upper side of the frame when converting 12～16bit depth to 10bit depth.
Add AVX2/AVX512 optimization for nal unit parser.
Fixed NVEnc auto build.
Fix --check-hw, --check-features not working in NVEnc 5.38. ( #366, #367 )¨
Fix padding "right" and "left" was applied opposite way in --vpp-pad.
Fix encode session limit error showing up on multi GPU environment, even if the actual encode session number is below the limit.
Optimize --vpp-smooth prec=fp16 mode, 10% faster on RTX2070.
Add option to apply bitstream filter to audio track. (--audio-bsf)
Fix --caption2ass not working from NVEnc 5.19.
Add new font mime types for vpp-subburn. ( #357 )
Fix audio delay not working from NVEnc 5.31. ( #359 )
Update NVENC SDK to API 11.1.
API 11.1 is available from driver Win 471.41 / Linux 470.57.02.
Add new option to set QP offset for chroma. (--chroma-qp-offset)
Fix CUDA 11.4 build. ( #355 )
Now --vpp-subburn will show libass log by default. ( #353 )
Fix order of audio or subtitles getting reversed with some input files. ( #349 )
Fix yuv444→p010 conversion causing chroma artifacts from 5.31.
Fix --vpp-colorspace not working in Linux environment. ( #352 )
Fix crush when using avs reader with some version of Avisynth.
Now error will be shown when input file and output file is set to the same file, to avoid destroying the input file.
Add pre-built binaries for Linux OS. ( #239 )
Usage is shown here.
Fix issue when writing raw ES file or log file to current directory by relative path.
Add new option to set upper limit in data size of the input video to be analyzed to get information of the tracks. (--input-probesize, #335)
Now --input-analyze can be set in float. ( #335 )
Add new option to dump timestamps of the packets read. ( --log-packets, FOR DEBUG ONLY, #335 )
Now data stream packets without timestamps can be handled. ( #335 )
Reduce redundant process in initialization. ( #335 )
Add error message when video track information could not be analyzed properly. ( #335 )
Now tracks to be copied or encoded can be specified by codec name. ( #335 )
Add new option to read option(s) to be used from a file. ( --option-file, #325 )
Fix subtitle conversion not working properly. ( #336 )
Fix green line artifcat coming out with --vpp-solorspace when the width cannot be divided by 4. ( #313 )
Fix issue that the metadata for subtile were always copied even if --sub-metadata clear was specified. ( #331 )
Now the metadata from the input files will be also copied by default when --audio-metadata or --sub-metadata is specified. ( #331 )
Fix issue that the settings were not applied properly when using --audio-source or --sub-source multiple times. ( #332 )
Add information for slices whne it is used. ( #329 )
The limitation of maximum frames to be inserted between two VFR frames is now relaxed from 8 to 1024. ( #327 )
Add option to rerun NVEncC in ANSI mode. (--process-codepage os)
The previous NVEnc 5.28 has added Avisynth Unicode support, by running the app using UTF-8 as the codepage. On the other hand this requires Avisynth scripts to be in UTF-8. I had comments from some users that this cause problem with scripts using non-ASCII characters with legacy codepage, and also tools saving scripts in legacy codepage.
"--process-codepage os" is a switch to make the app run in the default codepage set in the OS, which shall allow AviSynth scripts using non-ASCII characters with legacy codepage to work again.
When this option is set, a copy of the exe file will be created in the same directory of the original exe file, and the manifest file of the copy will be modified using UpdateResourceW API to switch back code page to the default of the OS, and then the copied exe will be run, allowing us to handle the AviSynth scripts using legacy code page.
Add Avisynth Unicode support. ( #309 )
Fix --vpp-edgelevel returning rather dark picture from NVEnc 5.26. ( #310 )
Now --vpp-subburn can use embedded fonts in mkv containers ( #307 ).
Add new option to set font directory in --vpp-subburn ( #307 ).
Add new option to set metadata in --audio-source and --sub-source.
Add support for Windows 10 long path support. ( #309 )
Fix help message of --vpp-warpsharp ( #294, #304 ).
Add another edge sharpening filter. ( --vpp-warpsharp, #294, #302 )
Improve opening short subtitle files. ( #298 )
Fixed an issue where vpp-colorspace hdr2sdr = reinhard did not work properly in 5.24.
Move github release binary to VS2019 build.
Move x86 version to CUDA11.
CUDA11 build requires NVIDIA driver 456.81 or later, where CUDA10 build can go with 418.96 or later.
Add new option to output timecode file. (--timecode)
Now --check-features will show actual min/max levels supported. ( #291 )
Improve hdr2sdr=bt2390 implementation of vpp-colorspace. ( #285 )
Add desaturation curve feature to hdr2sdr conversion in vpp-colorspace.
Update libvmaf to v2.0.0.
This will improve vmaf calculation performance done in CPU. However, it is still likely becoming a performance bottleneck.
Fix YUV444 resize error caused when selecting npp resize algorithms. ( #287 )
Add support for --vpp-colorspace in Ampere GPUs. ( #286 )
Add bt2390 based tone mapping in --vpp-colorspace. ( #285 )
Improve bit depth conversion for fullrange videos. ( #284 )
Add experimental support to allow audio/subtitle selection by language metadata. ( #283 )
Fix max bitrate set to 0 in 720p HEVC high tier encoding. ( #282 )
Change handling of truncation of downward bit depth conversion. ( #278 )
Fix time in milliseconds not read correctly in some Matroska format chapters.
Add new filter which will remove consequentive duplicate frame(s) and create a VFR video. ( --vpp-mpdecimate )
This might help improve effective encoding performance.
Add option to calculate VMAF score using libvmaf v1.3.15. (--vmaf)
Currently Win x64 only feature.
Please note that vmaf calculation is done by CPU, and is likely to become a performance bottleneck and hurt encoding performance.
Change muxing behavior, not to add VUI information to the container when using --atc-sei. ( #272 )
Fix --vpp-tweak swapuv not working properly. ( #266 )
Add option which will add Alternative Transfer Characteristics SEI for HLG. ( --atc-sei, #272 )
Add support for --vpp-subburn in avs/vpy/raw/y4m readers. ( #276 )
Avoid crash when hw decoder returned corrupted timestamp for the frame decoded. ( #275 )
Fix problem that --sub-copy always copied not only the subtitle track specified but all the subitle tracks starting from NVEnc 5.16.
Fix problem that --repeat-headers was always enabled in HEVC encoding.
Add support for Ampere CUDA Core number detection.
Add --check-features result for RTX3090. (Thanks to 翡璃月 for providing the data!)
Seems like the HEVC 12bit HW decode and AV1 HW decode is detected correctly. (Not sure it actually works)
Add experimental support for NVENC SDK 11. ( #273 )
This tries to add support for the HEVC 12bit & AV1 hw decode which are the new features in NVENC SDK 11. Please note that these features are not tested at all and may not work, as I don't have Ampere GPUs (RTX30xx), I'm less confident on AV1 as it is a new codec.
Workaround to avoid --vpp-knn stop working starting from NVIDIA driver 456.38.
Now --sub-copy and --vpp-subburn could be used at the same time. ( #268 )
Add swapuv feature to --vpp-tweak. ( #266 )
Fix problem that the return value of the process was always "0" when running --check-hw, --check-features.
Add p210 → yv12 conversion. ( #265 )
Add option to set input colorspace for raw input. ( --input-csp, #264 )
Raw input will now support yuv420/422/444 color formats.
Fix issue that Apple prores codec could not be decoded.
Split SEI of maxcll and masterdisplay into separate nal units. ( #259 )
Change bitstream output when maxcll or masterdisplay is set.
Now the SEIs will be written before each IDR frame, after VPS/SPS/PPS headers. ( #259 )
Add option to specify AviSynth DLL location. (--avsdll, #256 )
Update ffmpeg dlls.
This will add support for muxing PGS subtitles into m2ts containers. ( #252 )
Fix --audio-stream stereo not working. ( #251 )
Add default-duration segment for mkv output. ( #250 )
Check whether the environment supports --bref-mode each or --bref-mode middle.
Show more detailes for "B Ref Mode", "Field Encoding", "Me Only Mode" in --check-features.
Fix typo in --multipass parameter. ( #249 )
2pass-quater → 2pass-quarter
Add new 7 preset levels (P1～P7) to --preset. These require API v10.0. ( #248 )
Add support for NVENC SDK API ver 10.0. This requires NVIDIA driver 445.87 or later.
Add new option for multipass mode. (--multipass, #248 )
Support multi NVENC SDK SPI versions.
When the driver does not support the latest API ver, NVEncC will fallback to older API versions. The fallback version supported is API ver 9.0 and 9.1. In this case, features which are not supported on the fallback version will be not available.
The API version used will be shown on the log.
Options below will be mapped to each other depending on the NVENC API version used.
Fix memory leak caused when writing in raw format with --sar. ( #247 )
Add support for blockx/blocky = 4 and 8 in --vpp-decimate.
Fix NVEnc 5.07 did not run without nppc64_10.dll, even if it is not actually required. ( #246, #247 )
--repeat-spspps → --repeat-headers に変更。
Put default vpy reader back to multi-thread version, the default was accidentaly changed to single thread in NVEnc 5.01 - 5.05.
Fix HEVC hw decode issue in 5.04. ( #242 )
Add delay option to --audio-source. ( #241 )
Now NVEncC could be built also with gcc7 on Linux.
Disable --lookahead when using --dhdr10-info, as it causes app crash.( #233 )
Avoid application failing by hw decode error with some HEVC files, by switching to sw decoder. ( #237 )
Fix error code returning 0 even if error had happened in avhw reader. ( #231 )
Now more details will be shown about Avisynth+/AvisynthNeo version when using avs reader.
HW decode availability will also be checked when using --ssim or --psnr when selecting GPU on multi GPU environment.
Fix audio length getting shorter than video after encoding when some of the --audio-filter (such as loudnorm) were used.
Fix --lowlatency causing error when used with --avsw/--avhw.
Fix app crashing with --video-tag option. ( #236 )
Add option for metadata output control. ( #226 )
Add option to specify disposition. ( --audio-disposition, --sub-disposition, #226 )
Add option to show sorted option list. (--option-list)
Add missing options to --help.
Fix debug log output for --vpp-delogo, which was always writing some logs to stdout.
Fix --audio-source / --sub-source failing to get correct input file name.
Improve error handling caused in avhw reader. ( #231 )
Add first timestamp information to debug log. ( #229 )
Support Linux OS ( #220 ).
Now tested for Ubuntu 19.10 / 18.04.
Build instruction are written here. → (Ubuntu 19.10 / 18.04)
Build tests: travis CI
Known issues: YUV444 hw decode not supported in Pascal Gen GPUs.
Now --check-features will also show information for hw decode support.
Add new filter to remove duplicated frames in cycle specified. ( --vpp-decimate )
Add option to copy attachments. ( --attachment-copy, #221 )
Fix potential memory access issue in yuv444 → nv12/p010 conversion.
Now app will stop when cuvid parser error is detected ( Additional fix for #197 ).
Major version bump is due to major update in NVEnc.auo(Aviutl plugin).
Updates in NVEncC
Add option to rotate or tranpose videos. (--vpp-rotate, --vpp-transform, #217 )
Add option for lowlatency encoding. (--lowlatency)
Not recommended in most cases, as it harms encode throughput.
Add experimental option to copy hdr10plus meta data from input file. (--dhdr10-info copy)
Ignore errors when invalid parameters were passed to audio encoders and decoders.
Fix problem that --chapter only worked with avsw/avhw reader.
Detect cuvid parser error. ( #197 )
Avoid unnecessarily showing error message caused by driver version 445.75. ( #74 )
Fix profile was set wrong to the container, in case of HEVC main444 encoding.
Update ffmpeg dll, and also updates included libraries.
dav1d 0.5.2 -> 0.6.0
bzip2 1.0.6 -> 1.0.8
This also includes fixes for libopus build, which causes crush when using libopus. ( #212 )
@rigaya rigaya released this Mar 7, 2020
Add option to set input option(s) for avsw/avhw reader. ( --input-option) ( #209 )
Improve audio mux handling especially trueHD. ( #177 )
Fix vpp-yadif causing artifact from 4.66.
@rigaya rigaya released this Feb 29, 2020
Now vpp-colorspace can convert colorange alone without any another conversions, by "--vpp-colorspace range=pc:tv".
Add another denoise filter --vpp-smooth.
Consider --ref value when calculating max bitrate automatically. ( #206 )
Fix --vpp-subburn timestamp offset calculation. ( #205 )
Add parameter for --vpp-subburn to select whether to add timestamp offset to match the first timestamp of the video file. ( #205 )
@rigaya rigaya released this Feb 20, 2020
Some small bug fixes and improvements.
Fix --caption2ass failing in some ts files.
Improve error message when command line parsing has failed.
Will now show actually which param has the wrong value for some options with multiple params.
@rigaya rigaya released this Feb 11, 2020
Fix NVEnc 4.63 unnecessarily showing error message when using lookahead option. ( #202 )
Message like below was shown, but was not actually an error.
nvenc : Error on NvEncEncodePicture: 17 (NVENC HW encode driver requires more input buffers to produce an output bitstream)
@rigaya rigaya released this Feb 10, 2020
Improve stability of app initialization.
improve handling of mux process, which might fix the instability of seeking, like audio getting silent for a while after seeking. ( #177, #185, #201 )
Fix wrong handling of chromaloc and colorange ( #190 ).
Fix problem that --interlace auto could not be used in previous version. ( #187 )
Fix potential app freeze when encoding was aborted.
Add more debug/trace logs. ( #197 )
@rigaya rigaya released this Feb 1, 2020
Add feature to copy color characteristic params from input file, when using avhw/avsw reader. ( #190 )
It could also be used for the input of vpp-colorspace.
Add feature to check interlace flags per frame, and deinterlace only for interlaced frames. ( --interlace auto, #187 )
Now --tier high will be ignored when --level is set to 1 ～ 3.1. ( #188 )
Now interlaced yuv422 to yuv420 conversion will be supported via yuv444. ( #194 )
Improve stability of ssim/psnr calculation. ( #189, #191 )
Fix issue that vpp-subburn with scaling did not work from NVEnc 4.60. ( #193 )
Improve stability vpp-subburn when calculating timestamps. ( #195 )
Always show output file name on console. ( #190 )
Now color characteristic params, mastering display and maxcll information will be shown on the log.
@rigaya rigaya released this Jan 16, 2020
Fix unexpected value being set for maxcll/maxfall when when using --master-display copy or --max-cll copy, if the input file has no maxcll/maxfall value and the output is mkv format. ( #185 )
Fix memory leak when using --ssim/--psnr.
@rigaya rigaya released this Jan 13, 2020
Add option to calculate ssim/psnr ( #178, --ssim, --psnr).
Add option to copy HDR related metadata. ( #185, --master-display copy, --max-cll copy)
[Win10 only] Now progress indicator will show per process GPU, VE (Video Encoder), VD (Video Decoder) utilization, which was previously showing per system utilization.
Now vpp-subburn will be automatically disabled when track which does not exist in input file is specified (previously showed error and exited) ( #176 ).
Update ffmpeg dll.
libogg-1.3.3 → 1.3.4
twolame-0.3.13 → 0.4.0
wavpack-5.1.0 → 5.2.0
libxml2-2.9.9 → 2.9.10
dav1d-0.5.2 ! new !
This also includes fixes for mkv parser in libavformat. ( #165 )
@rigaya rigaya released this Dec 24, 2019
Fix vpp-subburn result getting colorless ( #183 ).
@rigaya rigaya released this Dec 16, 2019
Some bug fixes.
Fix memory leak in audio processing. ( #175 )
Fix HEVC level not shown properly on the log. ( #181 )
Fix issue that encode speed and bitrate were not shown properly by --pref-monitor.
@rigaya rigaya released this Dec 5, 2019
Add HLG->SDR support to vpp-colorspace hdr2sdr. ( #179 )
Fix typo of a parameter. ( arib-srd-b67 -> arib-std-b67) ( #179 )
Remove "w" option from vpp-colorspace hdr2sdr=hable, now will be calculated by source_peak / ldr_nits.
Fix sub-copy not working from NVEnc 4.56.
Fix trueHD decode error in mkv which has certain pattern of timestamps. ( #175 )
Fix vpp-afs level= 0 getting unexpexted artifacts.
@rigaya rigaya released this Nov 26, 2019
Allow one of the value (either width or height) in --output-res to be negative, which will automatically calculate the width or height to keep the aspect ratio.
Fix issue that VC-1 hw decode was failing in some input files. ( #172, #174 )
Update option list of weightp, removing "H.264 only". ( #172 )
Now warning for HEVC + weightp encoding will be shown on Pascal/Volta Gen GPUs. ( #172 )
Limit HEVC multirefs to make it complaiant to HEVC spec. ( #171 )
Add option which adds delay to audio stream. (avaliable for avsw/avhw reader) ( --audio-delay, #169 )
@rigaya rigaya released this Nov 5, 2019 · 23 commits to master since this release
Re-correct Fix for master-display & max-cll, which wasn't correct in NVEnc 4.53. ( #75 )
@rigaya rigaya released this Oct 31, 2019 · 25 commits to master since this release
Avoid --master-display and --max-cll not working fine when muxing into mp4, mkv, etc ( #75 ).
Add initial support for avs audio.
@rigaya rigaya released this Oct 8, 2019 · 37 commits to master since this release
Change command line options for multiple refs from NVEnc 4.51, to be able to set them individually. (--multiref-l0, --multiref-l1
Add multiref-** options to help.
Revert binaries for x64 buillt in appveyor back to VS2017, as VS2019 sometimes runs into error when installing CUDA.
@rigaya rigaya released this Oct 7, 2019 · 39 commits to master since this release
Update to NVENC SDK 9.1, now NVIDIA graphics driver 436.15 or later is required.
Add feature to specify multiple refs. (--ref)
Note: It seems like this feature is for Turing (and future) Gen GPUs only.
Add total frame numbers to be encoded when possible. ( #155 )
@rigaya rigaya released this Sep 21, 2019 · 45 commits to master since this release
Fix artifact caused in Spline16 resize. ( #154 )
Fix potential overflow in yuv444(16bit)->yv12/nv12 conversion. ( #151 )
@rigaya rigaya released this Sep 18, 2019 · 49 commits to master since this release
Add options to modify brightness, contrast and transparency of the subtitle to burn in vpp-subburn. ( #152 )
@rigaya rigaya released this Sep 17, 2019 · 51 commits to master since this release
Fix hdr2sdr conversion for reinhard and mobius, which was returning unintended result in bright regions. ( #151 )
Change hdr2sdr conversion to sync conversion ratio between RGB.
Adapt progress indicator to console width.
@rigaya rigaya released this Sep 1, 2019 · 59 commits to master since this release
Fix potential deadlock of the app.
Add new feature to mux external subtitle file. (--sub-source, #131 )
Improve GPU detection, avoiding failure on some environments (some CUDA functions return error). ( #141 )
Fix --audio-source not working from 4.44. ( #142 )
Fix --output-format not working from 4.44. ( #144 )
@rigaya rigaya released this Aug 27, 2019 · 71 commits to master since this release
Now estimated out size will be printed to the encode progress log( #140 ).
This works only when the console has enough width.
Add more log output on device detection( #141 ).
Fix problem that Caption.dll was needed when using --audio-source( #142 ).
Fix potential dead lock.