Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
10th April 2016, 19:43 | #1041 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
official mvtools v2.5.11.20 has been released and pinterf did some fix too https://github.com/pinterf/mvtools/tree/mvtools-pfmod
can we have new mvtools mod16 ?
__________________
See My Avisynth Stuff |
10th April 2016, 20:14 | #1042 | Link | |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,666
|
Quote:
|
|
10th April 2016, 20:24 | #1043 | Link | |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
Quote:
and not work with avs 2.5 (some people still use it)
__________________
See My Avisynth Stuff |
|
11th April 2016, 00:03 | #1045 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
I came up with the my mod mainly because of the 2.6 Api and to fix some memory exceptions of the x64 version. Really not big modifications. At about the same time Physic came back to business after many years and fixed some other things with the 2.5.11.20 version. But this is for 32 bit only. Note that the 2.6.0.5 version (and thus my mod also) is still 8 bit except the output of mdegrain. Looking at the complexity of the code I think it would be easier to backport the plugin from VapourSynth when we need a true (stacked )16 bit or even float! (Avisynth+ 2017 ) version.
|
15th April 2016, 22:37 | #1049 | Link | ||
Registered User
Join Date: Sep 2013
Posts: 919
|
Quote:
Quote:
Am I supposed to copy the files from the Win32 directory to the same with the .avsi file?
__________________
System: i7 3770K, GTX660, Win7 64bit, Panasonic ST60, Dell U2410. |
||
2nd June 2016, 08:53 | #1052 | Link |
Registered User
Join Date: Feb 2004
Location: NYC
Posts: 124
|
So, I was told in another thread that this is the proper way to use dither tools to change the color matrix whilst downscaling:
Code:
Dither_convert_8_to_16 () Dither_resize16 (640, 480, csp="YV24") # change to the desired dimensions Dither_convert_yuv_to_rgb (matrix="709", output="rgb48y", lsb_in=true) r = SelectEvery (3, 0) g = SelectEvery (3, 1) b = SelectEvery (3, 2) Dither_convert_rgb_to_yuv (r, g, b, matrix="601", lsb=false, mode=0, output="YV12") First, why is the downscale being done here as opposed to just using AviSynth's resizers at the very end of the script? What benefit comes from doing this? Having less to process for the color matrix conversion? Second, why process in rgb48y? I'm not asking because I'm skeptical. I just would like to know how this works, as I'm new to Dither. |
2nd June 2016, 22:18 | #1053 | Link |
Registered User
Join Date: Jan 2010
Posts: 709
|
maybe the resize can be done this way if you don't want Dither_convert_yuv_to_rgb to upscale chroma planes, you can use chromak="spline36" to reduce the chroma blurring too, but differences will be negible.
You can use Dither_resize16 at the end too, it will be better than internal avs resizers coz works with better input precision (I don't know for avs+). internally conversion between colorimetries is done using rgb coz those define how to convert yuv to/from rgb I don't know how well colormatrix will do, sure it can't get/output at 16bit precision, but I hope all calculation are done internally in float/double, not integer as MisterX said.
__________________
powered by Google Translator |
6th June 2016, 21:04 | #1055 | Link | ||
Registered User
Join Date: Mar 2014
Posts: 308
|
Quote:
Quote:
And yes, the downscaling is done right after padding the input to 16-bit as this reduces the number of samples needed to process, thus increasing the speed. Leaving downscaling to the end wouldn't affect accuracy much (might even be very slightly better?), but would be considerably slower depending on the downscaling factor. The YCbCr→RGB conversion requires the chroma subsampling to be undone at some point, so by converting to 4:4:4 directly in Dither_resize16, we avoid unnecessary resampling, which is both faster and more accurate.
__________________
Say no to AviSynth 2.5.8 and DirectShowSource! |
||
6th June 2016, 23:00 | #1056 | Link | |
Registered User
Join Date: Jan 2010
Posts: 709
|
Quote:
Code:
Dither_convert_8_to_16 () Dither_convert_yuv_to_rgb (matrix="709", output="rgb48y", lsb_in=true, chromak="spline36") r = SelectEvery (3, 0) g = SelectEvery (3, 1) b = SelectEvery (3, 2) Dither_convert_rgb_to_yuv (r, g, b, matrix="601", output="YV24") Dither_resize16 (640, 480, csp="YV12") # change to the desired dimensions ditherpost() I was trying this and that with paris clip from Derf's, and I notice some values in the V channel (the yellow papers on the table, the orange of the ball) change, even without resize and the same matrix, just doing yuv->rgb->yuv ps2 it also happen with avs internal converttorgb, but less
__________________
powered by Google Translator Last edited by Motenai Yoda; 7th June 2016 at 15:35. |
|
7th June 2016, 16:23 | #1057 | Link | ||
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,666
|
Quote:
Quote:
Here's a comparison between the two methods: 1x | 3x Here's the original picture I used in the script below, I also change the dithering mode to satisfy colours. Code:
FFImageSource("IMG_4850.png") Dither_convert_rgb_to_yuv (matrix="709", output="YV12", lsb=true) o = last o.Dither_resize16 (640, 360, csp="YV24") # change to the desired dimensions Dither_convert_yuv_to_rgb (matrix="709", output="rgb48y", lsb_in=true) r = SelectEvery (3, 0) g = SelectEvery (3, 1) b = SelectEvery (3, 2) Dither_convert_rgb_to_yuv (r, g, b, matrix="601", lsb=true, output="YV12", chromak="spline36") a = last o.Dither_convert_yuv_to_rgb (matrix="709", output="rgb48y", lsb_in=true, chromak="spline36") r = SelectEvery (3, 0) g = SelectEvery (3, 1) b = SelectEvery (3, 2) Dither_convert_rgb_to_yuv (r, g, b, matrix="601", output="YV24") Dither_resize16 (640, 360, csp="YV12") # change to the desired dimensions b = last a = a.Dither_convert_yuv_to_rgb (matrix="601", output="rgb24", lsb_in=true, chromak="spline36", mode=6).Subtitle("A") b = b.Dither_convert_yuv_to_rgb (matrix="601", output="rgb24", lsb_in=true, chromak="spline36", mode=6).Subtitle("B") Interleave(a,b) |
||
7th June 2016, 17:55 | #1058 | Link | |
Registered User
Join Date: Jan 2010
Posts: 709
|
Quote:
I suspected resize was optional as if you would to downsize or not. if not you can add chromak="spline36" to Dither_convert_yuv_to_rgb too and remove Dither_resize16 call.
__________________
powered by Google Translator Last edited by Motenai Yoda; 7th June 2016 at 18:25. |
|
12th June 2016, 19:07 | #1059 | Link | |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
Quote:
__________________
See My Avisynth Stuff |
|
14th July 2016, 10:24 | #1060 | Link |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,582
|
@cretindesalpes
AVS+ is getting more features in these days, such as high bit colors spaces. Do you think it could be useful to create a specific build of your suite?
__________________
@turment on Telegram |
Tags |
color banding, deblocking, noise reduction |
|
|