Nnedi3
From Avisynth wiki
(Difference between revisions)
m (category) |
m (add Deep_color_tools category) |
||
(17 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{FilterCat6|External_filters|Plugins|Plugins_x64|Restoration_filters|Deinterlacers|Deep_color_tools}} |
{{Filter3 | {{Filter3 | ||
− | | {{Author/tritical}} | + | | {{Author/tritical}}, [https://github.com/jpsdr jpsdr] |
− | | v0.9.4 | + | | v0.9.4.55 |
− | | [ | + | | [https://github.com/jpsdr/NNEDI3/releases NNEDI3_v0_9_4_55.7z] |
| Deinterlacing | | Deinterlacing | ||
− | | [ | + | | [https://www.gnu.org/licenses/gpl-2.0.txt GPLv2] |
− | |6=[ | + | |6=[https://forum.doom9.org/showthread.php?t=147695 Doom9 Thread], [https://forum.doom9.org/showthread.php?t=170083 Update]}} |
− | + | ||
== Description == | == Description == | ||
Line 17: | Line 16: | ||
<br> | <br> | ||
== Requirements == | == Requirements == | ||
− | * AviSynth | + | * [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6.0] |
− | * Supported color formats: [[RGB24]], [[YUY2]], [[YV12]] | + | * [x64]: [[AviSynth+]] |
+ | * Supported color formats: [[RGB24]], [[RGB32]], [[YUY2]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]] | ||
+ | **AviSynth+: All [[planar]] formats (8/10/12/14/16/32-bit, Y, YUV(A)), and RGB(A) with or without alpha) are supported. | ||
<br> | <br> | ||
== Filters == | == Filters == | ||
Line 24: | Line 25: | ||
{{PluginFilterRow|nnedi3|nnedi3| | {{PluginFilterRow|nnedi3|nnedi3| | ||
Deinterlace. | Deinterlace. | ||
− | | [[RGB24]], [[YUY2]], [[YV12]] | + | | [[RGB24]], [[RGB32]], [[YUY2]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]], <br> all [[planar]] formats (Y, YUV(A), RGB(A), 8-16bit and 32bit) |
}} | }} | ||
{{PluginFilterRow|nnedi3|nnedi3_rpow2| | {{PluginFilterRow|nnedi3|nnedi3_rpow2| | ||
Upscale image by the power of 2. | Upscale image by the power of 2. | ||
− | | [[RGB24]], [[YUY2]], [[YV12]] | + | | [[RGB24]], [[RGB32]], [[YUY2]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]], <br> all [[planar]] formats (Y, YUV(A), RGB(A), 8-16bit and 32bit) |
}} | }} | ||
|} | |} | ||
Line 35: | Line 36: | ||
== Changelog == | == Changelog == | ||
Version Date Changes<br> | Version Date Changes<br> | ||
− | v0.9.4 | + | v0.9.4.55 2020/05/05 - Fix issue introduced in previous version.<br> |
− | v0.9. | + | v0.9.4.54 2020/04/27 + Update to the new avisynth headers. |
− | + | + | * Minor code change for threadpool update. |
− | v0.9. | + | * Some cleanup.<br> |
− | + | v0.9.4.53 2019/05/31 * Minor code change for threadpool update.<br> | |
− | + | v0.9.4.52 2019/05/30 + Update in the threadpool, add ThreadLevel parameter.<br> | |
− | + | v0.9.4.51 2019/05/27 * Fix bug in asm PlanarFrame YUY2to422.<br> | |
− | + | v0.9.4.50 05/04/2018 + Optimized CPU placement if SetAffinity=true for prefetch>1 and prefetch<=number of physical cores. | |
− | + | * SetAffinity back to default false.<br> | |
− | + | + | v0.9.4.49 08/03/2018 * Fix AVX2 path code. |
− | + | * Fix some potential issue with range modes. | |
− | + | * Change some default value setting.<br> | |
− | - | + | v0.9.4.48 23/11/2017 * Put back process whole plane by whole plane. |
− | + | * Minor change in threadpool interface.<br> | |
− | v0.9. | + | v0.9.4.47 23/08/2017 + Fix possible deadlock on threadpool destructor.<br> |
− | + | + | v0.9.4.46 10/08/2017 + Forgot to add AVX path code on planarframe.<br> |
− | + | v0.9.4.45 09/08/2017 + Fix Threadpool. | |
− | + | + Add AVX path code. | |
− | v0.9 | + | * Revert to original MT multi-planar mode, may improve MT efficiency.<br> |
− | + | v0.9.4.44 14/06/2017 * Minor fix.<br> | |
− | + | v0.9.4.43 02/06/2017 * Few changes in the threadpool and small fix.<br> | |
− | + | v0.9.4.42 19/05/2017 * Minor change in the threadpool.<br> | |
− | + | v0.9.4.41 10/05/2017 * Fix crash in PlanarFrame for YUYV.<br> | |
+ | v0.9.4.40 11/04/2017 * Fix bug in x64 AVX2 asm code.<br> | ||
+ | v0.9.4.39 28/03/2017 * Some small optimizations on PlanarFrame asm for YUYV.<br> | ||
+ | v0.9.4.38 20/03/2017 * Some cleanup and small modifications on PlanarFrame. | ||
+ | * Update AVS+ header.<br> | ||
+ | v0.9.4.37 05/03/2017 * Remove the use of asmlib. | ||
+ | * Some little bug fixes. | ||
+ | + Add an opt intermediate value (4 for AVX). | ||
+ | + Use of YMM registers in case of AVX2 (or more) CPU, and some little others cleanup/speedup.<br> | ||
+ | v0.9.4.36 24/01/2017 * Set range mode default to 1. Apply range only on last step. | ||
+ | + Add range mode 4.<br> | ||
+ | v0.9.4.35 20/01/2017 + Fix crash on x64 version introduced in v0.9.4.34. | ||
+ | + Fix prescreener issue on flat area with value of 255.<br> | ||
+ | v0.9.4.34 17/01/2017 + Add range parameter.<br> | ||
+ | v0.9.4.33 07/01/2017 + Add support for 9..16 bits and float data formats (thanks to vapoursynth port). | ||
+ | + Add FMA3 and FMA4 functions on some parts (thanks to vapoursynth port). | ||
+ | + Add sleep and prefetch paremeters. | ||
+ | + Fix bug in YUY2 x64 ASM code.<br> | ||
+ | v0.9.4.32 05/12/2016 + Update to new avisynth header and add support for RGB32, RGBPlanar and alpha channel on avs+. | ||
+ | + Add A paremeter (for alpha channel) on nnedi3. | ||
+ | * Update asmlib to 2.50 | ||
+ | * Use /MD (dynamic link) instead of /MT (static link) for building.<br> | ||
+ | v0.9.4.31 14/10/2016 * Use Mutex instead of CriticalSection on some places and some changes in the threadpool interface. | ||
<br> | <br> | ||
== Archived Downloads == | == Archived Downloads == | ||
Line 65: | Line 88: | ||
!!width="150px"| Download | !!width="150px"| Download | ||
!!width="150px"| Mirror | !!width="150px"| Mirror | ||
+ | |- | ||
+ | !v0.9.4 (x64) | ||
+ | |[http://www.dropbox.com/s/fovpn5z9jy4goft/nnedi3_0.9.4_x64.zip?dl=1 nnedi3_0.9.4_x64.zip] | ||
+ | |[https://web.archive.org/web/20200616184607if_/https://files.videohelp.com/u/223002/nnedi3_0.9.4_x64.zip nnedi3_0.9.4_x64.zip] | ||
|- | |- | ||
!v0.9.4 | !v0.9.4 | ||
− | |[http://bengal.missouri.edu/~kes25c/nnedi3.zip nnedi3.zip] | + | |[https://web.archive.org/web/20121118091447if_/http://bengal.missouri.edu/~kes25c/nnedi3.zip nnedi3.zip] |
− | |[ | + | |N/A |
+ | |- | ||
+ | !v0.9.2 | ||
+ | |[https://web.archive.org/web/20110718080343if_/http://ivtc.org/yatta%20support/nnedi3.zip nnedi3.zip] | ||
+ | |N/A | ||
|} | |} | ||
+ | *v0.9.4 (x64) compiled with Intel C++ Compiler XE 14. | ||
+ | *The model weights for nnedi3 are stored in a binary file available at: [https://web.archive.org/web/20141226101614if_/http://bengal.missouri.edu/~kes25c/binary1.bin http://bengal.missouri.edu/~kes25c/binary1.bin] | ||
<br> | <br> | ||
+ | <br> | ||
+ | |||
== External Links == | == External Links == | ||
− | *[ | + | *[https://forum.doom9.org/showthread.php?t=147695 Doom9 Forum] - nnedi3 discussion. |
+ | *[https://forum.doom9.org/showthread.php?t=170083 Doom9 Forum] - nnedi3 for AviSynth 2.6 | ||
+ | *[https://github.com/jpsdr/NNEDI3 GitHub] - Source code repository. | ||
<br> | <br> | ||
<br> | <br> | ||
----------------------------------------------- | ----------------------------------------------- | ||
'''Back to [[External_filters#Deinterlacing|External Filters]] ←''' | '''Back to [[External_filters#Deinterlacing|External Filters]] ←''' |
Latest revision as of 21:13, 25 June 2020
Abstract | |
---|---|
Author | tritical, jpsdr |
Version | v0.9.4.55 |
Download | NNEDI3_v0_9_4_55.7z |
Category | Deinterlacing |
License | GPLv2 |
Discussion | Doom9 Thread, Update |
Contents |
[edit] Description
nnedi3 is an intra-field only deinterlacer. It takes in a frame, throws away one field, and then interpolates the missing pixels using only information from the kept field. It has same rate and double rate modes, and works with YV12, YUY2,and RGB24 input.
nnedi3 is also very good for enlarging images by powers of 2, and includes a function 'nnedi3_rpow2' for that purpose.
nnedi3 is nnedi2 with improved predictor neural network architecture and local neighborhood pre-processing. nnedi3 also has multiple local neighborhood size options to better handle image enlargement vs deinterlacing and give more quality vs speed options.
[edit] Requirements
- [x86]: AviSynth+ or AviSynth 2.6.0
- [x64]: AviSynth+
- Supported color formats: RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411
- AviSynth+: All planar formats (8/10/12/14/16/32-bit, Y, YUV(A)), and RGB(A) with or without alpha) are supported.
[edit] Filters
Filter | Description | Color format |
---|---|---|
nnedi3 |
Deinterlace. |
RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411, all planar formats (Y, YUV(A), RGB(A), 8-16bit and 32bit) |
nnedi3_rpow2 |
Upscale image by the power of 2. |
RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411, all planar formats (Y, YUV(A), RGB(A), 8-16bit and 32bit) |
[edit] Changelog
Version Date Changes
v0.9.4.55 2020/05/05 - Fix issue introduced in previous version.
v0.9.4.54 2020/04/27 + Update to the new avisynth headers. * Minor code change for threadpool update. * Some cleanup.
v0.9.4.53 2019/05/31 * Minor code change for threadpool update.
v0.9.4.52 2019/05/30 + Update in the threadpool, add ThreadLevel parameter.
v0.9.4.51 2019/05/27 * Fix bug in asm PlanarFrame YUY2to422.
v0.9.4.50 05/04/2018 + Optimized CPU placement if SetAffinity=true for prefetch>1 and prefetch<=number of physical cores. * SetAffinity back to default false.
v0.9.4.49 08/03/2018 * Fix AVX2 path code. * Fix some potential issue with range modes. * Change some default value setting.
v0.9.4.48 23/11/2017 * Put back process whole plane by whole plane. * Minor change in threadpool interface.
v0.9.4.47 23/08/2017 + Fix possible deadlock on threadpool destructor.
v0.9.4.46 10/08/2017 + Forgot to add AVX path code on planarframe.
v0.9.4.45 09/08/2017 + Fix Threadpool. + Add AVX path code. * Revert to original MT multi-planar mode, may improve MT efficiency.
v0.9.4.44 14/06/2017 * Minor fix.
v0.9.4.43 02/06/2017 * Few changes in the threadpool and small fix.
v0.9.4.42 19/05/2017 * Minor change in the threadpool.
v0.9.4.41 10/05/2017 * Fix crash in PlanarFrame for YUYV.
v0.9.4.40 11/04/2017 * Fix bug in x64 AVX2 asm code.
v0.9.4.39 28/03/2017 * Some small optimizations on PlanarFrame asm for YUYV.
v0.9.4.38 20/03/2017 * Some cleanup and small modifications on PlanarFrame. * Update AVS+ header.
v0.9.4.37 05/03/2017 * Remove the use of asmlib. * Some little bug fixes. + Add an opt intermediate value (4 for AVX). + Use of YMM registers in case of AVX2 (or more) CPU, and some little others cleanup/speedup.
v0.9.4.36 24/01/2017 * Set range mode default to 1. Apply range only on last step. + Add range mode 4.
v0.9.4.35 20/01/2017 + Fix crash on x64 version introduced in v0.9.4.34. + Fix prescreener issue on flat area with value of 255.
v0.9.4.34 17/01/2017 + Add range parameter.
v0.9.4.33 07/01/2017 + Add support for 9..16 bits and float data formats (thanks to vapoursynth port). + Add FMA3 and FMA4 functions on some parts (thanks to vapoursynth port). + Add sleep and prefetch paremeters. + Fix bug in YUY2 x64 ASM code.
v0.9.4.32 05/12/2016 + Update to new avisynth header and add support for RGB32, RGBPlanar and alpha channel on avs+. + Add A paremeter (for alpha channel) on nnedi3. * Update asmlib to 2.50 * Use /MD (dynamic link) instead of /MT (static link) for building.
v0.9.4.31 14/10/2016 * Use Mutex instead of CriticalSection on some places and some changes in the threadpool interface.
[edit] Archived Downloads
Version | Download | Mirror |
---|---|---|
v0.9.4 (x64) | nnedi3_0.9.4_x64.zip | nnedi3_0.9.4_x64.zip |
v0.9.4 | nnedi3.zip | N/A |
v0.9.2 | nnedi3.zip | N/A |
- v0.9.4 (x64) compiled with Intel C++ Compiler XE 14.
- The model weights for nnedi3 are stored in a binary file available at: http://bengal.missouri.edu/~kes25c/binary1.bin
[edit] External Links
- Doom9 Forum - nnedi3 discussion.
- Doom9 Forum - nnedi3 for AviSynth 2.6
- GitHub - Source code repository.
Back to External Filters ←