Log in

View Full Version : madVR - high quality video renderer (GPU assisted)


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 [477] 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329

Asmodian
25th February 2014, 15:08
Only for smooth motion, this is why there is a much bigger performance hit from ED dither with smooth motion on.

James Freeman
25th February 2014, 15:22
Edit: Watching for a bit using opposite color dynamic and there seems to be something I don't like about it. I cannot say what. I hope it isn't placebo as I think it should be the best. I changed to ed11 and I like it more. :confused:

Don't be confused,
ED11 has less apparent Luma Noise for me too.
Hope its one of the choices in the final build.

Only for smooth motion, this is why there is a much bigger performance hit from ED dither with smooth motion on.

Thanks.

Olivier C.
25th February 2014, 16:45
Were you able to reproduce this behavior with several displays of different brands? What's the easiest way to find out? Running ArgyllCMS on the first 5%?

Only tested on 2 different plasmas, not tested yet on a LCD.
I saw clearly this effect on this kind of pattern :
http://a.imageshack.us/img510/6814/ghostingtestblanc100.jpg

NB : display and graphic card (HD7950) are set to Full Range 0-255

*Touche*
25th February 2014, 16:47
I've done extensive comparison between adaptive4 (my favourite of the last test builds) and oppositeColor_dynamic. 8bit only, real content again. It is extremely hard for me to tell a difference. One moment I was certain one was better, but later testing on the same movie scene I chose the other one. If I absolutely had to pick a favourite, it would be oppositeColor_dynamic because of the 4bit results.

Olivier C.
25th February 2014, 16:53
I think the calibration process madVR + dispcalGui is not very consistent because madVR 0.87.4 - madTPG does not work.
It does not? Then please create a bug entry in the madVR bug tracker. Link see first post in this thread. Thanks.

I think it's related to this but i will check :


MistahBonzai,

Turn off Error Diffusion in MadVR settings.
That what made MadTPG not work for me (black window).

I've already reported this in the Bug Tracking page.
Still waiting for a fix to calibrate with Error Diffusion.

EDIT:
Oops.. just noticed you talk about TestPatternSource not TestPatternGenerator.
Never mind, still good to know.

leeperry
25th February 2014, 17:39
Just spent quite some time rolling the new builds and ED11 is the clear winner to me, noise level is very low(which means more bit depth IIUC) and it provides higher clarity than A4(but of course the latter puts that extra noise to good use by increasing the edges visibility, there's a price to pay for its artificial looking "wow factor").

Based on your explanations on what to look for(low noise, no EE) and on quite a bit of rolling I would be much happy with ED11, gg again :)

Regarding the OD builds, I wasn't sure what to think of them on 1080p24 content as they seemed to be veiling the picture differently depending on the movie but on 720p60 movies their annoying noise is a far cry from the clarity of ED11 to my eyes.

Only tested on 2 different plasmas, not tested yet on a LCD.
I saw clearly this effect on this kind of pattern :
http://a.imageshack.us/img510/6814/ghostingtestblanc100.jpg
OK thanks, my i1d2 is nowhere near accurate enough for this kind of job and I can't say that I'm seeing much difference on my edge led LCD...is that supposed to require a reboot? This said, If I move my head by 5cm, the black shade changes....VA panels aren't quite the kings of black as Plasma is.

mzso
25th February 2014, 17:56
Could you please create a bug entry in the madVR bug tracker? I'm currently too busy to look into this. Link see first post of this thread. Thanks.

I did.

PS:
The number of mandatory fields are exorbitant. Motivates me to not use it. Also forces me to lie, for example with "Decoding", where there isn't an "any" or "multiple" option.

Olivier C.
25th February 2014, 18:31
OK thanks, my i1d2 is nowhere near accurate enough for this kind of job and I can't say that I'm seeing much difference on my edge led LCD...is that supposed to require a reboot? This said, If I move my head by 5cm, the black shade changes....VA panels aren't quite the kings of black as Plasma is.

I checked the black level with ITC option off and on and it apparently does not affect the black level 0% (0.005cd/m2 measured with an i1d3)
But the first % of black are crushed with ITC option disabled when i watch carrefully at the pattern in a very dark / totally dark environnement. It was quite obvious

GREG1292
25th February 2014, 20:07
Just spent quite some time rolling the new builds and ED11 is the clear winner to me, noise level is very low(which means more bit depth IIUC) and it provides higher clarity than A4(but of course the latter puts that extra noise to good use by increasing the edges visibility, there's a price to pay for its artificial looking "wow factor").

Based on your explanations on what to look for(low noise, no EE) and on quite a bit of rolling I would be much happy with ED11, gg again :)

Well said ED11 DaBomb:)

DeadlyEmbrace
25th February 2014, 21:39
So after some testing this is my opinion on the final 5:
1) ED11
2) AC4
3) OD32
4) OD16
5) OD8

Thanks for all the different tests Madshi, had a lot of fun checking them out :D

iSunrise
26th February 2014, 00:52
From my testing so far, "ed11" seems to look better than "adaptive4" as adaptive4 adds a very strong texture to the image.
However, it did seem like ed11 may add patterns to the image - I'm sure that testing on grayscale ramps etc would make that obvious.
Care to share your findings? Because I did my usual grayscale comparison(s) with ED11 and at least I cannot see any discernable patterns, even when concentrating on it very carefully. Due to the monoColor nature, itīs also very true to the source, where we donīt need to make assumptions about how it might look on moving content, which is very hard to test anyway, instead of just looking at it and subjectively judge itīs appealing or non-appealing performance. Since Iīm curious though, I even did a detail retention test and it seems like ED11 preserves even more detail than ED4. Opposite Dynamic was like a brute-force approach with a lot of added pixels that are hard to predict (which in a sense, is what we want), but ED11 is a lot more refined, more predictable (donīt confuse this with discernable, because it wasnīt in my testing) in nature and does exactly what a great and transparent dithering algorithm should do. I especially love itīs smooth transitions, itīs just gorgeous.

It seems ED11 is the sum of everything good, with even less noise on luma (at least when compared to ED4, which is very obvious) than before, where the chance is very high to finally have a majority vote, also making it easier for madshi and not complicate things further.

Iīm very impressed by what I see with ED11, madshi.

While ED4 still does have an "edge" (quite literally :D) with better sharpness and an overall picture that is more pleasing to the eye, ED11 is more accurate. ED4 is kind of cheating anyway, since itīs sharpening up details, while it leaves certain other details (which are in the neighbourhood) more in the background (thatīs why it has that textured look). On the other hand, ED4 seems more satisfying to people who just want to watch movies (the extremely subtle luma sharpening seems to effect most of us positively), instead of analysing them to death, while ED11 is truthful and honest. Itīs like some colored speakers, that also have punchier mid-tones, where our ears react instantly with "wow, sounds good".

Personally, I donīt really care much about ordered grids, since one of the reasons I would never use them is their very predictability when it comes to the pattern itself. If you have a random pattern, itīs both extremely hard to impossible (depending on the bit-difference) to make out the pattern (especially when the noise is so low as it is for ED11 now) and the chance is also extremely low that it interferes with the display electronics itself (FRC taken into account), while ordered grids can introduce these effect, like nevcairiel already mentioned, so Iīll leave that testing to others for now.

The big question for me right now is, if we are able to achieve this subtle sharpening effect with an added grain algorithm in the future and maybe even make that scalable. We would basically have the best of both worlds, madVR being the most accurate renderer, while users are able to choose their favored look, like with the scaling algorithms. That also would make it easier for madshi, to adjust madVR to a great out-of-the-box experience, whereas the advanced users could unlock itīs true potential.

*Touche*
26th February 2014, 02:43
Due to the monoColor nature, itīs also very true to the source, where we donīt need to make assumptions about how it might look on moving content, which is very hard to test anyway, instead of just looking at it and subjectively judge itīs appealing or non-appealing performance.

I'm not sure about that. Isn't the biggest difference between static and dynamic in the moving content. The "dirty lens/screen" effect that people mentioned. It seems to me that it is exactly the moving content that should be viewed to determine the better ones among static builds. At least I think I better saw the differences with large closeups of people's moving faces and watching their skin and hair.

iSunrise
26th February 2014, 03:23
I'm not sure about that. Isn't the biggest difference between static and dynamic in the moving content. The "dirty lens/screen" effect that people mentioned. It seems to me that it is exactly the moving content that should be viewed to determine the better ones among static builds. At least I think I better saw the differences with large closeups of people's moving faces and watching their skin and hair.
What I meant by "true to the source" is that in comparison to ED4 (probably should have added that to make it more clear) itīs more true to the source. Since itīs static, itīs inability to be adaptive shouldnīt lead anyone to think that this is a strength per se. But it certainly seems preferable to anything else that also was static before it.

A dynamic build of ED11 would probably be even more accurate. Then again, it seems that the dynamic builds (the opposite build trades chroma for luma) are too noisy, largely because of a more pronounced additive luma noise (if your brain assembles e.x. 24 or even worse, 60fps), where "noisy pixels" that are at an exact pixel position a couple of times in that frame interval are amplified and probably will be recognizeable.

James Freeman
26th February 2014, 06:46
iSunrise,

You should probably change ED4 to "Adaptive 4" in your posts, because its not derived from the original ED4 as people might think.
I have posted the order of things to not get us confused: Builds Chronology. (http://forum.doom9.org/showpost.php?p=1670457&postcount=23801)

ED7 -> NL6 (Noisy 3) -> Adaptive 4 -> Mono/Multi Static/Dynamic.
ED10 -> ED11.

The ED11 derived from ED10 which is one of the first ED builds with the lowest amount of noise.
But is wasn't chosen back then, ED7 was chosen which is medium-noise.

A dynamic build of ED11 would probably be even more accurate.
Or even an OppositeColor Dynamic build.

I think madshi is now focusing on a low noise build, because we already chosen the medium-noise builds (ED7 -> Adaptive 4).
But I'm not sure either, maybe he plans to start clean from ED10 and discard the progress we had till now with ED7?... Or not.
I also read somewhere that the standard (high-noise) non ED Random Dithering will be replaced by something better (IIRC).

Madshi's plans are unclear to me as to many, so we'll have to just ride along.

6233638
26th February 2014, 07:05
Care to share your findings? Because I did my usual grayscale comparison(s) with ED11 and at least I cannot see any discernable patterns, even when concentrating on it very carefully.Well I was mostly viewing real content in 4-bit when doing comparisons yesterday, and there were some obvious patterns showing up.

These have been brightened to make the comparison easier to see, but in 4-bit they were very noticeable on their own without being altered.
Taken from the opening titles of a film:

ed11 (http://abload.de/img/ed11vrq3m.png)
Adaptive 4 (http://abload.de/img/a4vlogs.png)
oppositeColor Dynamic (http://abload.de/img/oduxpnm.png)

And on one of the displays I'm testing with, which has a non-standard way of addressing the pixels, those "crosshatch" areas actually turn into alternating lines of color.
On other displays, it just looks "patchy" though, when the other builds have a rougher texture, but are fairly uniform.
Due to the monoColor nature, itīs also very true to the source, where we donīt need to make assumptions about how it might look on moving content, which is very hard to test anyway, instead of just looking at it and subjectively judge itīs appealing or non-appealing performance.I'm not sure that I agree with this, but I would still take monoColor Dynamic (or whatever it was called - I renamed all of them for simplicity) over any of the static builds, though my preference is still oppositeColor Dynamic by far.

This is why I suggested there be a separate toggle for mono/color, and static/dynamic. (though I personally don't think static should be used at all)

I thought so as well but I noticed that the noise from oppositeColor Dynamic actually was noticeable in 8bit whereas the static noise from the non-Dynamic algorithms wasn't.Do you have any video samples for this? So far no-one has posted anything where it's visible.

I'm not saying it isn't, but I'd like to see something where it is, as I've been through a large portion of my film library now and have yet to find anything where it turns out to be caused by the dither pattern and not noise/artifacts in the source.

James Freeman
26th February 2014, 07:20
Well I was mostly viewing real content in 4-bit when doing comparisons yesterday, and there were some obvious patterns showing up.


ed11 (http://abload.de/img/ed11vrq3m.png)
Adaptive 4 (http://abload.de/img/a4vlogs.png)
oppositeColor Dynamic (http://abload.de/img/oduxpnm.png)



On a very low noise build like ED11, some patterning is inevitable (we are pixel restricted).
Adding just a little more randomness to ED11 will make it look like Adaptive 4, which is not what madshi is aiming for (I think).

We already have Medium-Noise builds (Adaptive 4 and its successors), which are not going anywhere (again, I think).
Now, we are selecting a Low-Noise build, and ED11 is just perfect, even though its adding a little pattern.
You will not have to use the Low-Noise option if you don't like the slight patterning, Medium-Noise will be there for you.


This is why I suggested there be a separate toggle for mono/color, and static/dynamic.

I think it will be the wisest way to go.
But in what configuration? Only for Medium-Noise?
Will Low-Noise have any switchable options?

But again, madshi's plans are unclear to me as to many, so we'll have to just ride along.

madshi
26th February 2014, 09:49
FWIW, ordered dithering can have rather bad interaction with cheap screens/TVs (ie. 6-bit panels), when the ordered dithering pattern happens to match the pattern the panel uses to dither the signal, you get an amplified pattern and its truely visible - a primary reason why i switched LAV Video to random dithering by default.
I think it should be possible to work around this by dynamically changing the ordered dither position, mirroring it, rotating it, inverting it etc by random, to achieve "dynamic" ordered dithering. This might not be good enough yet with the conventional "rectangular" ordered dithering patterns, but with the "modern" ones which look sort of like error diffusion it should work just fine, I think. Haven't tested it yet, though.

Totally subjective, "not trying to analyze individual pixels", testing with 4bit mode and only 3 of the builds:

ed11 > od8 > od32

Doesn't seem much of a difference in 8bit mode. My display's anti glare layer itself is more noticeable than the least significant bits. And so are specks of dust.
How do you like ED11 compared to A4?

how about ed11 with 0.97 and/or the same random numbers as A4? I'd really like to try a low noise build that would be as close as possible to A4...retaining the same clarity but with a lower noise level :)
A4 looks the way it looks because it uses a *lot* of noise to get rid of patterns. ED11 tries to get along with as little noise as possible while still mostly avoiding patterns. Changing the random number generator or going with 0.97 (ED11 already partially uses 0.97) won't change the general look of ED11. I'd have to increase the noise level for ED11 to look nearer to A4, but if I do that, then what's the point of ED11? It would just look nearer to A4, including the higher noise level.

ED11>ODC ever so slight
Ok, thx.

OD8, AD4 look dirty, with OD8 the worst and AD4 right after it.
OD16 is a ****, not there and not there.
ED11, OD32 Look great, they are the smoothest.

OD32 - Most even looking dithering pattern, but less smooth for real content (bigger/fluffier dithering pattern compared to ED11).
ED11 - Slightly "less organised" than OD32, but looks way smoother in real content & test patterns (smaller/denser dithering pattern compared to OD32).

ED11 Wins for me.

madshi,
It looks that ED11 is the cleanest looking build so far, even to OppositeColor Dynamic, dare I say (EDIT: for static images (paused)).
Hope the ED11 pattern (instead the current AD4) somehow permeates into the OppositeColor build. ;).
Yes, there will be dynamic and/or oppositeColor versions of ED11. However, the benefit of oppositeColor seems to be quite a bit smaller for ED11 than it is for A4. There's still some benefit for luma noise, but not as much as for A4.

I tried comparing them in 4bit, in this case oppositeColor dynamic looked best (by far) and I didn't really like ordered dithering because of the static noise. But after watching in 8bit I found that the temporal noise caused by the dynamic algorithm was far more noticeable than the static noise caused by ordered dithering. So in the end I'm not really sure which I prefer; in 4bit ed11 seemed to be best followed by ad4 and then the ordered dithering builds but in 8bit I wasn't really able to tell the difference between them. They did all give a pretty noticeable improvement over random dithering so if ordered dithering can be made as fast as random dithering then that will probably be my new default.
Ok, thanks.

From my testing so far, "ed11" seems to look better than "adaptive4" as adaptive4 adds a very strong texture to the image.
However, it did seem like ed11 may add patterns to the image - I'm sure that testing on grayscale ramps etc would make that obvious.

I don't really like the ordered dithering builds at all. Very obvious patterns introduced onto the image.
Thanks.

Ok, went through new builds.

Panasonic 55ST60 plasma, calibrated
4:4:4

Tested only 8bit and real video content (720p BR rips and 720p HDTV rips), so I have no idea what patterns these form in 4bit or gradients and such.

I wanted to test this as objectively as I could, so I had my GF change the builds on me randomly, without telling me which one she set or if she even changed them. I also renamed them randomly before so even she didn't know which was which.

After multiple runs, this is how I would rank them:

BEST
1. adaptive4
2. od32

It was hard to tell them apart sometimes. Further comparison would be needed to determine which one is clearly better, but it seems that adaptive 4 has a slight edge. Both of them clearly stood out from the rest.

MIDDLE
3. od08

Landed somewhere in the middle, but closer to bad ones than to good ones above.

WORST
4. ed11
5. od16

Clearly the worst with most visible noise/dot patterns.

EDIT: Redid the testing and added some new sample scenes. It was much harder to tell the difference. Maybe my brain locked to different things when I did the first runs in the morning. I am not as rested now. Also did additional testing between adaptive4 and ed11, which most prefer, and ended up switching my preference between them, which goes to show how hard it is to tell between them (for me, on my screen). Don't care either way, as I found oppositeColor_dynamic better more often than not, so I'll keep away from static builds.
Thanks. FWIW, did you test at 8bit or 4bit?

I decided to also do some testing in 4-bit and 8-bit with these builds, along with oppositColor_dynamic using smooth motion, 1080p24->1440p60 (same settings as my last test).

Testing with 4 bit for the first time; I can actually see differences in 4 bit. It makes me doubt the differences I "see" in 8-bit. :o

4-bit oppositColor_dynamic looks amazing, the noise is almost invisible. :scared:

in 4-bit I like:
oppositColor_dynamic > ed11 > adaptive4 > od32 > od16 > od8
This is mostly based on perceived noise level but the patterns in the od8/16/32 builds were also a negative.

in 8-bit I like:
ed11 >= adaptive4 > oppositColor_dynamic > od32 = od16 = od8
ed11 seems very clean but I would happily watch od32 (probably without noticing).

Edit: Watching for a while in 8-bit using opposite color dynamic and there seems to be something I don't like about it. I cannot say what. I hope it isn't placebo as I think it should be the best. I changed to ed11 and I like it more. :confused:
Thanks.

Just spent quite some time rolling the new builds and ED11 is the clear winner to me, noise level is very low(which means more bit depth IIUC) and it provides higher clarity than A4(but of course the latter puts that extra noise to good use by increasing the edges visibility, there's a price to pay for its artificial looking "wow factor").

Based on your explanations on what to look for(low noise, no EE) and on quite a bit of rolling I would be much happy with ED11, gg again :)

Regarding the OD builds, I wasn't sure what to think of them on 1080p24 content as they seemed to be veiling the picture differently depending on the movie but on 720p60 movies their annoying noise is a far cry from the clarity of ED11 to my eyes.
Thanks.

I did.

PS:
The number of mandatory fields are exorbitant. Motivates me to not use it. Also forces me to lie, for example with "Decoding", where there isn't an "any" or "multiple" option.
Yeah, sorry about that, but if I left all those fields optional, most users probably wouldn't bother filling them, and I'd end up having to ask in 90% of all bug reports for more information. That said, more "any" or "multiple" options would probably make sense.

Well said ED11 DaBomb:)
:)

So after some testing this is my opinion on the final 5:
1) ED11
2) AC4
3) OD32
4) OD16
5) OD8

Thanks for all the different tests Madshi, had a lot of fun checking them out :D
Ok, thanks.

Care to share your findings? Because I did my usual grayscale comparison(s) with ED11 and at least I cannot see any discernable patterns, even when concentrating on it very carefully. Due to the monoColor nature, itīs also very true to the source, where we donīt need to make assumptions about how it might look on moving content, which is very hard to test anyway, instead of just looking at it and subjectively judge itīs appealing or non-appealing performance. Since Iīm curious though, I even did a detail retention test and it seems like ED11 preserves even more detail than ED4. Opposite Dynamic was like a brute-force approach with a lot of added pixels that are hard to predict (which in a sense, is what we want), but ED11 is a lot more refined, more predictable (donīt confuse this with discernable, because it wasnīt in my testing) in nature and does exactly what a great and transparent dithering algorithm should do. I especially love itīs smooth transitions, itīs just gorgeous.

It seems ED11 is the sum of everything good, with even less noise on luma (at least when compared to ED4, which is very obvious) than before, where the chance is very high to finally have a majority vote, also making it easier for madshi and not complicate things further.

Iīm very impressed by what I see with ED11
Glad to hear that, thanks.

I think madshi is now focusing on a low noise build, because we already chosen the medium-noise builds (ED7 -> Adaptive 4).
Correct.

But I'm not sure either, maybe he plans to start clean from ED10 and discard the progress we had till now with ED7?... Or not.
I'm not sure myself, to be honest. I didn't expect ED11 to be as well liked as it seems to be now. Which makes me wonder whether we still need A4 at all. I've already been working on the settings dialog for all this, and having 2 different error diffusion algorithm does make it more confusing. Having only one error diffusion algorithm would be much nicer and easier to understand. But then, I think it's too early to rule A4 out yet. I'll probably offer both ED11 and A4 in the next official build and then ask for feedback about whether to keep or scratch A4 for the build after that.

I also read somewhere that the standard (high-noise) non ED Random Dithering will be replaced by something better (IIRC).
I might replace random dithering with dynamic ordered dithering as the default option (not decided yet), but at this point I still plan to offer random dithering as an option, in any case.

And on one of the displays I'm testing with, which has a non-standard way of addressing the pixels, those "crosshatch" areas actually turn into alternating lines of color.
On other displays, it just looks "patchy" though, when the other builds have a rougher texture, but are fairly uniform.
I'm not sure that I agree with this, but I would still take monoColor Dynamic (or whatever it was called - I renamed all of them for simplicity) over any of the static builds, though my preference is still oppositeColor Dynamic by far.
Let's wait and see how you like ED11 dynamic, monoColor or oppositeColor. The minor patterns ED11 still has seem to totally fade away in dynamic mode, so ED11 dynamic might be a great option to use.

Do you have any video samples for this? So far no-one has posted anything where it's visible.

I'm not saying it isn't, but I'd like to see something where it is, as I've been through a large portion of my film library now and have yet to find anything where it turns out to be caused by the dither pattern and not noise/artifacts in the source.
I see this on my JVC X3 projector when playing the "smallramp.ytp" test pattern zoomed to the whole screen. Static looks totally calm. Dynamic seems to add a very low level noise floor, moving around. It's like pausing playback of a movie with a very low grain level (static) and then playing it (dynamic).

This will heavily depend on the display, though. I don't see any of that on my computer monitor. I'm not sure if my projector is just so much better (or simply bigger). Or maybe the internal dithering of the JVC X3 somehow reacts to dynamic dithering in some way. I don't really know...

On a very low noise build like ED11, some patterning is inevitable (we are pixel restricted).
Adding just a little more randomness to ED11 will make it look like Adaptive 4, which is not what madshi is aiming for (I think).
Agreed.

James Freeman
26th February 2014, 10:19
One thing for sure, madshi.
Keep the 4bit option for a while, because with 8bit there's a lot of placebo going on.

Many displays have FRC even if advertised as true 8-bit panels.
Some can be advertised ad true 8-bit, but be 6bit+FRC.
This might result in a stronger apparent noise, than the dithering that "going through the cable" or MadVR is offering (in any build), with a true 8-bit panel (and a hidden FRC).
So please keep the 4bit option to nullify this possibility of placebo noise at hidden FRC

6233638
26th February 2014, 10:26
Let's wait and see how you like ED11 dynamic, monoColor or oppositeColor. The minor patterns ED11 still has seem to totally fade away in dynamic mode, so ED11 dynamic might be a great option to use.Looking forward to it.

I see this on my JVC X3 projector when playing the "smallramp.ytp" test pattern zoomed to the whole screen. Static looks totally calm. Dynamic seems to add a very low level noise floor, moving around. It's like pausing playback of a movie with a very low grain level (static) and then playing it (dynamic).Well JVC are using PWM to drive their panels, so that may play a part in it as well. I can just make out some movement in 8-bit using the oppositeColor dynamic build and smallramp.ytp.

There are some things I can do which make it more visible on my display, but then that makes the static patterns much more visible on the static builds too...

I think one of the problems is, again, the fact that on a pattern like smallramp.ytp, you end up with bands which are being dithered, and bands which are not being dithered.
In the case of the dynamic builds, this means you have areas which are moving, and areas which are static, and that really makes them stand out.

In an actual moving image though, and especially something which has some amount of sensor noise/film grain, it really shouldn't be noticeable like it is on a static grayscale ramp.

leeperry
26th February 2014, 11:23
ED11 already partially uses 0.97.
Great, it seemed clear to me that there were two big families(0.97/1.0) and that I always prefered the former.

I won't be able to use the chroma noise builds and I wasn't too fond of the dynamic mechanism either, you made clear that there wasn't much room for improvement in ED11 mono-static...I still would love to see what 0.965 and 0.975 would do but hey, it looks great as is and should age a lot better than A4(that looks really obsolete now IMHO, much like NL6/A4).

OTOH the wow factor of A4 is big, and it would be good to have two ED options with one worse than the other so you could easily spot the improvement....RD is no competition really.

James Freeman
26th February 2014, 12:34
leeperry,

I don't think AD4 is obsolete after what we've gone through with it.
I think people who like absolutely no pattern like cyberbeing, 6233638, might still prefer the AD4 and its successors over the lower noise (and small patterning) of ED11.

If I understood madshi correctly, there will be 8 options within the next (beta?) build:
Low-Noise (ED11): Mono/Multi Static/Dynamic.
Medium-Noise (AD4): Mono/Multi Static/Dynamic.

From these, some will naturally become obsolete and will be removed from the next official release.

leeperry
26th February 2014, 12:47
Well, the more visible the noise the lower the bit depth and at this game A4 has been superseded IMHO.

Of course, it'd be good to keep it for A/B comparisons against ED11 and for those whose display's dithering is more forgiving and/or who like its obvious EE and are willing to cope with the associated extra noise :)

Qaq
26th February 2014, 12:56
Are there any problems to put all actual dithering algorithms in one bild so users could toggle those by a hot keys? That would make testing a way more effective IMO.

Shiandow
26th February 2014, 13:12
Do you have any video samples for this? So far no-one has posted anything where it's visible.

After some more testing I think I may have to take that statement back, at one point I was pretty sure that I could see some kind of temporal noise with dynamic builds, but I have been unable to find any sample where it is obvious. I still think that it is the case but I'm somewhat starting to doubt myself. At this point I can only say that ed11 looks 'quieter'. Unless someone else can back this up it might just be my imagination. But it does seem plausible that temporal noise might be more noticeable than spatial noise.

Anyway I had the strongest 'impression' of 'noisiness' at shallow mid-dark gradients, possibly blue-green ones, setting debanding to high seemed to 'help' as well. Perhaps you can make this effect noticeable by using a field of a colour where this effect is largest (I think 1/3 of the way between two adjacent colours might do it) with two pure colours next to it to verify that one field looks noisier than the other.

I'm sorry that I can't be more specific but since this effect is so incredibly hard to see it is very hard to be precise. The only reason I think this is even relevant is that as far as I can tell the 'static' noise is completely invisible in 8 bits, unless someone can point out an example where this is noticeable.

Ver Greeneyes
26th February 2014, 13:51
After some more testing I think I may have to take that statement back, at one point I was pretty sure that I could see some kind of temporal noise with dynamic builds, but I have been unable to find any sample where it is obvious. I still think that it is the case but I'm somewhat starting to doubt myself. At this point I can only say that ed11 looks 'quieter'. Unless someone else can back this up it might just be my imagination. But it does seem plausible that temporal noise might be more noticeable than spatial noise.It is known that some people are more sensitive to the high frequency dithering 6-bit panels do than others - the ones who are more sensitive to it perceive it as flickering. This is 8-bit 'flickering' (albeit at a lower frequency if you're not using smooth motion or 60fps content), which should be 4x less obvious, but it's certainly there. The question is whether you notice it and find it unpleasant during normal viewing, when you're not suspiciously straining your eyes trying to compare two builds :D

*Touche*
26th February 2014, 13:52
Thanks. FWIW, did you test at 8bit or 4bit?


8bit only:

Tested only 8bit and real video content (720p BR rips and 720p HDTV rips), so I have no idea what patterns these form in 4bit or gradients and such.

leeperry
26th February 2014, 14:14
Oh well, A4 is actually great to inject life into bitrate starved 16mm high-iso movie encodes...their lack of bitrate is annoying with ED11 as the original movie grain looks blurry, A4 covers it very nicely and its EE is the icing on the cake. Keeping both A4 & ED11 sounds like a brilliant idea :thanks:

James Freeman
26th February 2014, 14:22
We haven't heard from the purists yet...
What ciberbeing and bacondither think about having slight patterning...

Maybe "ED11 Dynamic" will be the end all be all solution.
Can't wait....

seiyafan
26th February 2014, 15:41
I have three questions on how to handle 1080p movies on 1440p monitors. If I enable NNEDI3 doubling, since it only works with powers of 2, it would first double it to 2160, then downscale it (I think Catmull-Rom is the most popular algorithm for downscaling) to 1440. Would this still yield visually better results than just a one step upscaling using (Jinc-3/4 AR) without the doubling? Is Catmull-Rom a good algorithm to use here?

My second question is: for 1080 --> 1440, is image upscaling algorithm used at all if NNEDI3 doubling is enabled?

My third question is: how is NNEDI3 under chroma upscaling related to NNEDI3 chroma doubling? Since both consume a lot of resources, which one yields a better result if I can only choose one or the other? Sorry I am still technically challenged in this area.

:)

iSunrise
26th February 2014, 18:06
This will heavily depend on the display, though. I don't see any of that on my computer monitor. I'm not sure if my projector is just so much better (or simply bigger). Or maybe the internal dithering of the JVC X3 somehow reacts to dynamic dithering in some way. I don't really know...
Could also be related to the dot pitch itself.

Thatīs why it is important to not only analyse the algorithms on accurate displays (smaller ones), but also judge them on bigger screens.

Because when the dot pitch is too close, like it usually is on 24" screens, itīs almost impossible to discern a pattern, without zooming or other image manipulations to make them more visible.

I currently am using a GIMP plugin to separate luma from chroma, where you can very easily see the chroma or luma detail, which you can also compare (by substracting the differences) to other algorithms.

And in these, ED11 preserves A LOT of details, almost on the same level as opposite dynamic (I would say itīs a pretty negligible difference). A4 has a lot less compared to both, itīs not nearly as smooth looking.


ed11 (http://abload.de/img/ed11vrq3m.png)
Adaptive 4 (http://abload.de/img/a4vlogs.png)
oppositeColor Dynamic (http://abload.de/img/oduxpnm.png)

Thanks.

ED11 seems a bit less bright than the other two. Did you brighten them up or did you take them as is? Because one of the special characteristics of the base algorithm that we used for mono_static/dynamic and the opposite builds was that they are a bit brighter, which is especially noticeable when you look at bright white tones. And I kind of prefer the smoother, more even look of ED11 to it. There are far less small single visible bright pixels in the ED11 shot.

cyberbeing
26th February 2014, 18:15
We haven't heard from

I originally wasn't intending on taking a look at the new builds, but I guess I will, since I'm now a bit confused what the next step here is going to be after all this recent feedback.

Took a quick look comparing low-noise ED11 against low-noise ED10, and while it does reduce medium patterns on certain shades to low patterns, on other shades it only reduces heavy patterns to medium patterns. I still don't like the low-noise builds, but I would at least consider it a vast improvement over ED10.

For the OD32/OD16/OD8 builds, they all completely eliminate the cross-talk (noise over edges & boundaries) problem which plagued all the error diffusion builds. They also seems to have the least patterns and the lowest chroma noise by far, though I guess this would mean the OD builds may have higher luma noise than Adaptive4? OD32 has the most even noise distribution out of the OD bunch, with them becoming progressively worse with the lower number builds. If you wanted to make OD32 a high performance random dither alternative, I'd say go for it.

With leeperry and others coming to prefer the low-noise ED11, it once again makes me curious as to what an 'adaptive4' nl5 (floyd-stein, 0.97, old random generator) build would have looked like. I do remember nl5 having slightly lower chroma/luma noise than nl6. Could you PM me such an nl5-based adaptive4 monoColor static build madshi, just so I could archive it as an up-to-date baseline reference for what I personally liked?

XMonarchY
26th February 2014, 18:39
I was wondering:

1. Feedback in this thread is not representative of the general population for which madshi knows all the preferences. For example, it was agreed here that A4/Adaptive 4 was the best ED method, while I am sure madshi stated that most people like the ED11/Noisy2Limited. People here did not like opposite color, but I did, and madshi stated that most people do prefer opposite color. Where else is testing going on? Since my all my preferences go against what people like in here, then maybe there is another madVR discussion somewhere else?

2. What kind of TVs/monitors and chroma subsampling modes do people who prefer noisy builds (A4) have? I wonder if its limited to a specific type, like plasma TVs that already have plenty of dithering going on. I think SPVA owners like myself prefer the limited noise builds...

3. On AVS Forums, it was stated (by James Freeman, I think) that madTPG does not work with ED and should be disabled. However, I kept it enabled and used it with ArgyllCMS to create a 3DLUT, which worked, and HCFR measurement results were excellent. Does that mean that ED was not applied to patterns? Does that mean that real-film content is not displaying the same colors as madTPG patterns, thus making my visuals inaccurate? How inaccurate? There is actually a way to play madTPG patterns through MPC-HC or JRiver. Would that be a better way to at least verify that using ED for films did not result in highly inaccurate real-film content since the 3DLUT I created was made using madTPG, when ED was enabled?

4. I am still confused about the mono/multi/opposite - I thought they were replacement for regular random dithering. If not, are they combined with Adaptive 4 or ED11/Noisy2Limited? Where are the builds?

5. OD - Opposite Color Dynamic? Is it merged with A4 or ED11?
Can't find the builds.

6. Would it not be an awesome idea to edit the OP with links to all the recent builds and provide basic info with chronology?

James Freeman
26th February 2014, 19:02
1. Feedback in this thread is not representative of the general population for which madshi knows all the preferences. For example, it was agreed here that A4/Adaptive 4 was the best ED method, while I am sure madshi stated that most people like the ED11/Noisy2Limited. People here did not like opposite color, but I did, and madshi stated that most people do prefer opposite color. Where else is testing going on? Since my all my preferences go against what people like in here, then maybe there is another madVR discussion somewhere else?

Wrong. The votes do represent the general population, you can count them yourself.
Yes, AD4 was preferred till madshi introduced ED11.
Wrong, Most people did like OppositeColor Dynamic.

3. On AVS Forums, it was stated (by James Freeman, I think) that madTPG does not work with ED and should be disabled.

It still does not work for me.
The madTPG window is frozen in balck and does not change colors.
Nvidia?

4. I am still confused about the mono/multi/opposite - I thought they were replacement for regular random dithering. If not, are they combined with Adaptive 4 or ED11/Noisy2Limited? Where are the builds?


mono/multi/opposite are successors derived from the Adaptive 4 build which derived from ED7.

ED11 is NOT Noisy2Limited.
Where did you read that?

5. OD - Opposite Color Dynamic? Is it merged with A4 or ED11?
Can't find the builds.

Ordered Dithering,
Its a completely new algorithm for us to test in the latest test build.

6. Would it not be an awesome idea to edit the OP with links to all the recent builds and provide basic info with chronology?

I already did.
ED Chronology (http://forum.doom9.org/showpost.php?p=1670457&postcount=23801)


It looks like you ready the pages of this thread intermittently (page yes page no)....

iSunrise
26th February 2014, 19:05
...For example, it was agreed here that A4/Adaptive 4 was the best ED method, while I am sure madshi stated that most people like the ED11/Noisy2Limited.
There is no best. Because of certain characteristics with the A4 build, it just seems to satisfy a broad base of users, whereas others preferred the opposite builds, because of the luma->chroma distribution change, smoother transitions and last but not least, because the algorithm was dynamic, while A4 (AKA monoColor_static) is static. The problem with the opposite builds is that we were unsure of, whether the colors added could be a problem, also, they didnīt seem to cancel out for everyone. ED11 now seems to fit right in between, while some are having concerns that it adds some patterns again. Thereforce madshi will now prepare an ED11 dynamic build to address and hopefully rectify that concern.

Also, ED11 is a completely new build that was just posted a couple of pages back.

This is an ongoing discussion where everyone can provide some meaningful feedback. The more, the better.

It would be helpful if you actually read a couple pages back if you come to this thread, because some of your questions would be answered instantly.

yok833
26th February 2014, 19:13
I have a 55st50 plasma and I still prefer the A4 build over the last ED11... There is a nice improvement with ED11 over ED10 but the A4 gives a better texture to the picture even if it is a bit more noisy..

"Envoyé depuis mon GT-I9300 avec Tapatalk"

James Freeman
26th February 2014, 19:17
There is a nice improvement with ED11 over ED10 but the A4 gives a better texture to the picture even if it is a bit more noisy..

Its been clearly stated more that one time that ENHANCEMENT of the image/texture is not what dithering should do.

The goal of dithering is to make low bitdepth picture look like high bitdepth one.
Which loosely translates to "Apparent Smoothness".

Look for Smoothness & less Noise.
Yes, even if the image looks Softer, that's a good thing.

leeperry
26th February 2014, 19:45
I have a 55st50 plasma and I still prefer the A4 build over the last ED11... There is a nice improvement with ED11 over ED10 but the A4 gives a better texture to the picture even if it is a bit more noisy
madshi's original plan was up for one low-noise and one mid-noise algorithms, ideally he would more than likely add two dynamic/multicolor sub-options and most everyone should hopefully be in happy-land :cool:

I would also be bummed if A4 disappeared as it's kind of a guilty pleasure to me on low-bitrate stuff, but that's not part of the current plan:
I think it's too early to rule A4 out yet. I'll probably offer both ED11 and A4 in the next official build and then ask for feedback about whether to keep or scratch A4 for the build after that.


It would be helpful if you actually read a couple pages back if you come to this thread, because some of your questions would be answered instantly.
If you miss a few days in this thread, you're so SOL.....that's what happened to me when v0.87.4 was released and I really felt out of the loop ^^

cyberbeing
26th February 2014, 20:03
XMonarchY, it does all become a bit confusing, since there were so many builds and they weren't all labeled in consistent ways. I'd organize them in a reduced way as follows:

Medium-Noise progressions (error diffusion w/ random | eliminated patterns + artifacts)

ED5 (1.0 floyd, old RNG) [madVRedtest.rar]
->
Noisy 2 (1.0 -> 0.97, old -> new RNG) [madVRednoisy.rar]
->
Noisy 2 + bugfixes (new -> old RNG) [madVRnoisyLimited.rar]
->
NL5 (identical to madVRnoisyLimited.rar) [madVRnl.rar]


ED7 (0.97 filter, old RNG) [madVRedtest.rar]
->
Noisy 3 (old -> new RNG) [madVRednoisy.rar]
->
NL6 (Noisy 3 + bugfixes) [madVRnl.rar]
->
Adaptive4 (NL6 + adaptive noise) [madVRadaptive4.rar]
->
monoColor-static (identical to previous), adds multiColor & dynamic variations [madVRed4.rar]
->
adds oppositeColor variations [madVRopposite.rar]
->
Adaptive4 (identical to monoColor-static) [madVRfinal5.rar]


Low-noise builds (error diffusion w/o random | pattens + artifacts)

madVR 0.87.4 OpenCL Error-Diffusion [madVR_0.87.4.zip]
Initial tests of DirectCompute port [madVRDirectCompute1|2|3|4|5.rar]
ED1-ED4, ED6, ED8 (various algorithms) [madVRedtest.rar]
ED9 (madshi custom) [madVRedtest2.rar]
->
ED10 (modified ED9) [madVRedtest3.rar]

Low-noise build (error diffusion + ??? | reduced pattens + artifacts)

ED11 (modified ED10) [madVRfinal5.rar]


Ordered dither w/ random (lower performance cost than error-diffusion builds possible)

OD8, OD16, OD32 [madVRfinal5.rar]

leeperry
26th February 2014, 20:10
Actually I think it went DC3 > NL6 > A4 but maybe not :D

madshi
26th February 2014, 20:16
I have three questions on how to handle 1080p movies on 1440p monitors. If I enable NNEDI3 doubling, since it only works with powers of 2, it would first double it to 2160, then downscale it (I think Catmull-Rom is the most popular algorithm for downscaling) to 1440. Would this still yield visually better results than just a one step upscaling using (Jinc-3/4 AR) without the doubling? Is Catmull-Rom a good algorithm to use here?
Yes, NNEDI3 will have a visible effect in this situation, if the source is detailed/sharp enough. Whether you like how NNEDI3 looks and whether it's worth the higher GPU consumption for you is a question that you can only answer for yourself. Catmull-Rom is a good downscaling algorithm, especially with anti-ringing and linear-light enabled. (linear-light is not recommend for upscaling).

My second question is: for 1080 --> 1440, is image upscaling algorithm used at all if NNEDI3 doubling is enabled?
Depends on whether you only double luma resolution with NNEDI3 or whether you double chroma resolution, too. If you don't double chroma resolution, the image upscaling algorithm is used to upscale chroma from 1080 to the target resolution.

My third question is: how is NNEDI3 under chroma upscaling related to NNEDI3 chroma doubling? Since both consume a lot of resources, which one yields a better result if I can only choose one or the other?
DVDs, Blu-Rays and broadcasts are all 4:2:0, which means that the chroma channel only has a quarter of the luma channel resolution. E.g. for Blu-Rays luma is 1920x1080, but chroma is only 960x540. So madVR has to upscale the chroma channel to the full resolution first, before it can convert the video to RGB. The algorithm in the "chroma upscaling" section defines how madVR does that. The image doubling section defines how madVR treats the image, after it was converted to RGB.

So basically when playing back Blu-Ray in your situation, the chroma upscaling algorithm defines how chroma is upscaled from 960x540 -> 1920x1080. And the image doubling defines whether the luma and/or chroma channels are doubled with NNEDI from 1920x1080 to 3840x2160 or not.

Generally NNEDI bringt the biggest benefit when using it for luma doubling. If you then still have GPU resources to spare, using NNEDI for chroma upscaling is better than using it for chroma doubling. I personally do not recommend using NNEDI chroma doubling. But I've added the options for people who have almighty GPUs and want to go bonkers on the settings.

Took a quick look comparing low-noise ED11 against low-noise ED10, and while it does reduce medium patterns on certain shades to low patterns, on other shades it only reduces heavy patterns to medium patterns. I still don't like the low-noise builds, but I would at least consider it a vast improvement over ED10.
I'd like to hear your opinion about "ED11 dynamic" vs. "A4 static". The mild ED11 patterns should disappear when using the dynamic mode. Would be interesting to hear which noise level is overall higher, and which looks better...

For the OD32/OD16/OD8 builds, they all completely eliminate the cross-talk (noise over edges & boundaries) problem which plagued all the error diffusion builds. They also seems to have the least patterns and the lowest chroma noise by far, though I guess this would mean the OD builds may have higher luma noise than Adaptive4? OD32 has the most even noise distribution out of the OD bunch, with them becoming progressively worse with the lower number builds. If you wanted to make OD32 a high performance random dither alternative, I'd say go for it.
OD32 will be the new default option. It's just as fast as random dithering. Actually it seems to be slightly faster than multi-colored random dithering, but maybe a tad slower than mono-colored random dithering.

Yes, ordered dithering has a very nice noise distribution and doesn't cross-talk. However, both advantages can also come back to haunt you: There is no cross-talk because ordered dithering does not (at all) spread errors to neighbor pixels. Which means that there is potential for inaccuracies and detail loss (same as with random dithering). Ordered dithering works great for gray bar test patterns and ramps, but it doesn't look as well for moving video content, IMHO. The nice noise distribution is great until you notice that it's so even that it gets somewhat visible in motion. The way ordered dithering works means that if there's a small change in brightness/color, the whole dither pattern will mostly stay identical, but only one or two pixels in every 32x32 dither block will change. This doesn't matter much for images, but it can look weird for video. The dynamic mode solves some of this, but overall I still noticeably prefer the error diffusion look for videos.

Since ordered dithering works so well for test patterns, though, madTPG will now always use ordered dithering, totally disregarding which dithering options are set in the madVR settings.

With leeperry and others coming to prefer the low-noise ED11, it once again makes me curious as to what an 'adaptive4' nl5 (floyd-stein, 0.97, old random generator) build would have looked like. I do remember nl5 having slightly lower chroma/luma noise than nl6. Could you PM me such an nl5-based adaptive4 monoColor static build madshi, just so I could archive it as an up-to-date baseline reference for what I personally liked?
Unfortunately I've already modified the compute shader to make use of the fact that Filter-Lite distributes the weights to less pixels than Floyd-Steinberg does. So I can't just switch the weights and create a new test build. I'd have to rewrite the algorithm again to make it capable of using Floyd-Steinberg weights...

-------

So here's the "final" dither build:

http://madshi.net/madVRfinalDither.rar

It's still an unofficial build, but not a "test" build, anymore. Meaning, I'm not planning to do any more algorithm changes (unless something unexpected comes up). I could have made this build into v0.87.5, but I think there are too many bugs left (unrelated to dithering). I'd like to go bug fixing now, before releasing v0.87.5. So guys, if there are still bugs in madVR which you'd like fixed, make sure they're in the bug tracker. Cause I'll work through the bugs listed there in the next couple of days, and then finally release v0.87.5.

FWIW, you can now choose any bitdepth between 3-8 for your display. Testing at 3bit should make dither differences *really* visible. Though testing with a higher bitdepth probably makes more sense.

There's one thing I wasn't sure about: I'm currently using "oppositeColor" noise for both ordered dithering and error diffusion, when you activate the "colored noise" checkbox in the settings dialog. However, for random dithering I'm still using "multiColor" noise. I'm wondering whether I should change that to "oppositeColor", too? Would be easy to do, and I've already tested, it very noticeably lowers luma noise once more. But then, madVR has been using "multiColor" random noise for years, so I'm a bit wary of changing the way it looks right now. And it's probably not necessary since there are better alternatives available now. Thoughts?

cyberbeing
26th February 2014, 20:20
Actually I think it went DC3 > NL6 > A4 but maybe not :D

DC3 [madVRdirectCompute3.rar] was a low-noise algorithm (patterns & artifacts) which predated the ED1-8 test builds [madVRedtest.rar] where the algorithm tests really began. If you look back, the build you preferred was "Noisy 3" from [madVRednoisy.rar] which turned into NL6 (Noisy 3 + bugfixes). A lot of people back then were just calling them DC# builds, since we had shifted focus to deciding on a medium-noise algorithm. Techinally that was incorrect, we actually have numbered DirectCompute builds which were a direct port of the algorithm in madVR 0.87.4.

James Freeman
26th February 2014, 20:23
-------

So here's the "final" dither build:

http://madshi.net/madVRfinalDither.rar

It's still an unofficial build, but not a "test" build, anymore. Meaning, I'm not planning to do any more algorithm changes (unless something unexpected comes up). I could have made this build into v0.87.5, but I think there are too many bugs left (unrelated to dithering). I'd like to go bug fixing now, before releasing v0.87.5. So guys, if there are still bugs in madVR which you'd like fixed, make sure they're in the bug tracker. Cause I'll work through the bugs listed there in the next couple of days, and then finally release v0.87.5.

FWIW, you can now choose any bitdepth between 3-8 for your display. Testing at 3bit should make dither differences *really* visible. Though testing with a higher bitdepth probably makes more sense.

There's one thing I wasn't sure about: I'm currently using "oppositeColor" noise for both ordered dithering and error diffusion, when you activate the "colored noise" checkbox in the settings dialog. However, for random dithering I'm still using "multiColor" noise. I'm wondering whether I should change that to "oppositeColor", too? Would be easy to do, and I've already tested, it very noticeably lowers luma noise once more. But then, madVR has been using "multiColor" random noise for years, so I'm a bit wary of changing the way it looks right now. And it's probably not necessary since there are better alternatives available now. Thoughts?

HOLLY MOLLY !!!
Thank You !!!

Hope the 3-8 bitdepth option stays.


Quick bug report:
The dithering pixel becomes HUGE with Ordered Dithering as the MPC-HC window gets smaller.
Video Frame -> Normal Size.

Madshi,
Can you please write a small list of what build are are what setting.

madshi
26th February 2014, 20:25
Hmmmm... Just noticed that there seem to be some problems with ordered dithering if I zoom the video. Will have to check and create a fixed build.

iSunrise
26th February 2014, 20:28
FWIW, you can now choose any bitdepth between 3-8 for your display.
Yes, finally! Great addition, madshi!

Did you have to rewrite a lot of code for that change? Because I always wondered why you used that 4bit mode "hack" instead of directly including it into the existing display code?

Also, Iīm curious, why did you stop at 3bit instead of 1bit?

EDIT:

Bug report:

(1) Installed madVRfinaldither (by overwriting the files)
(2) Changed display properties to 3bit
(3) Changed dithering algorithm from the defaults to Error diffusion - option 2 [with everything else disabled]
(4) Opened a clip
(5) Resized it to 200%

Then the following error appeared:
http://abload.de/thumb/madvrfinaldither_erroc9j29.png (http://abload.de/image.php?img=madvrfinaldither_erroc9j29.png)

Itīs reproducible every time directly after I resize to 200%, not before. Also happens when I resize to fullscreen. Seems there is a problem with the resize altogether.

EDIT 2:
NNEDI3 seems to be the problem, thanks cyberbeing.

Nvidia GTX 580, 327.23 drivers

cyberbeing
26th February 2014, 20:36
Hmm, first thing I see after installing this latest build then MPC-HC crashes:
http://i.imgbox.com/69CkK01h.png

Update: Needed to go into offline settings and disable NNEDI3 to stop the instant crashes

James Freeman
26th February 2014, 20:41
Quick Bug report 2:
When switching from "None" to any Dithering mode, the checkbox options do not appear till the settings window is closed, or switched to another branch and back.

Shiandow
26th February 2014, 20:55
There's one thing I wasn't sure about: I'm currently using "oppositeColor" noise for both ordered dithering and error diffusion, when you activate the "colored noise" checkbox in the settings dialog. However, for random dithering I'm still using "multiColor" noise. I'm wondering whether I should change that to "oppositeColor", too? Would be easy to do, and I've already tested, it very noticeably lowers luma noise once more. But then, madVR has been using "multiColor" random noise for years, so I'm a bit wary of changing the way it looks right now. And it's probably not necessary since there are better alternatives available now. Thoughts?

Mathematically it is justified since doing so does not change the average colour. But it does mean that instead of interpolating between 8 different combinations (with varying probability) it will only interpolate between 4 different combinations. It's hard to say what kind of an effect this has.

One specific problem I can think of is the following, consider the colour: (0.4,1.2,0.7). If we want to do random dithering with oppositeColor noise then we should add something of the form (x,-x,x) with x a random number between -0.5 and 0.5, and then round the result to nearest integer, this gives us:

(0,2,0) if x<-0.3
(0,1,0) if -0.3<x<-0.2
(0,1,1) if -0.2<x<0.1
(1,1,1) if 0.1<x

But if we change the colour slightly to (0.4,1.3,0.8) then we get:

(0,2,0) if x<-0.3
(0,2,1) if -0.3<x<-0.2
(0,1,1) if -0.2<x<0.1
(1,1,1) if 0.1<x

So now dithering uses a different set of colours. I'm not sure how noticeable this would be on gradients etc. but it could look quite odd. In both of the above cases the multiColor version just picks randomly between:

(0,1,0), (0,1,1), (0,2,0), (0,2,1), (1,1,0), (1,1,1), (1,2,0), (1,2,1)

This might make the transition smoother.

Edit: A similar problem happens with multiColor when one of the values is almost 'whole' but this happens less frequently.

James Freeman
26th February 2014, 21:00
But then, madVR has been using "multiColor" random noise for years, so I'm a bit wary of changing the way it looks right now. And it's probably not necessary since there are better alternatives available now. Thoughts?

If its using the same CPU power, go for the better looking option and leave the nostalgia behind.
Besides, if anyone is still using Random Dithering instead of Ordered Dithering, he probably couldn't care less "what's inside". ;)

Change it to OppositeColor.


Madshi,
Can you please write a small list of what dithering options are are what builds (ED11, AD4, OD32, Random, None.....Correct?).

cyberbeing
26th February 2014, 21:06
Meh, I'd vote to leave Random Dither as-is. I have a feeling that oppositeColor with the noise level of 'random dither' would be horrible to my eyes. If there is anything which random dither has in its favor, it's that people have gotten used to it over the years. No need to blur the difference between dither algorithms even more.

iSunrise
26th February 2014, 21:10
I also would say that it makes sense to leave some backwards compatibility in-place right now. If there are unforseen problems for some, there should be a safe base to go back to.