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

Xaurus
8th May 2016, 13:38
I've tried to read through the last number of pages and looked at some guides, but I can't figure out how to let madvr treat movie clips that have "odd" resolution, like 1916 x 1076.
I am upscaling everything to 3840 x 2160. A normal 1920 x 1080 movie has roughly 6-7 ms "to spare" relative to the frame interval of 41.67 ms, but these movies with 1916 x 1076 almost eats up this buffer and brings the rendering time closer to 41.67 ms.

One way is of course to add a profile for each such "odd" resolution, but I looked in zoom control and checked the "disable scaling if image size changes by only" option to "5 lines or less".
MPC-HC is set to "touch window from inside". But there is absolutely no difference what so ever. Am I misunderstanding this option?

Would appreciate any input relative to handling these "odd" format movies.

huhn
8th May 2016, 14:06
you are scaling for 1924 lines. so you can't use that option.

alf6
8th May 2016, 16:32
reproduced.

lanczos is used or at least shown in the OSD when the image is only scaled in X or Y direction.

jinc is correctly used with a 1440x1080p 16/9 AR source displayed at 1920x1080p.
there is an additional "image y = jinc" line.

you have set your player to stretch. set it to "touch window from the inside" (name can depend on the player) if you don't want that.

Colud anyone recommend how to fix this in mpc-hc?

Xaurus
8th May 2016, 17:10
you are scaling for 1924 lines. so you can't use that option.
Hmm can't say I am following you. :(

Just answer me this: is there anything in madvr settings that can deal with "odd" resolutions like 1916 x 1076 except for creating a new profile for it?

baii
8th May 2016, 19:14
Hmm can't say I am following you. :(

Just answer me this: is there anything in madvr settings that can deal with "odd" resolutions like 1916 x 1076 except for creating a new profile for it?
Do you want to have black bar for those odd resolutions to trade for better performance?

Sent from my 306SH using Tapatalk

Xaurus
8th May 2016, 20:01
Do you want to have black bar for those odd resolutions to trade for better performance?

Sent from my 306SH using Tapatalk
If that means a tiny black bar for width and for height, sure thing. I don't know how though, I've played around with zoom control but the performance stays the same no matter what I do...

dansrfe
8th May 2016, 22:57
If that means a tiny black bar for width and for height, sure thing. I don't know how though, I've played around with zoom control but the performance stays the same no matter what I do...

Make sure you have crop enabled in order to remove the black bars from the processing chain and get a potential render time improvement.

Xaurus
8th May 2016, 23:24
Make sure you have crop enabled in order to remove the black bars from the processing chain and get a potential render time improvement.
What exactly must I set in order to get this working?

So I have set:
"disable scaling if image size changes by only ... 5 lines or less"
"move subtitles to bottom of the screen/window"
"automatically detect hard coded black bars"
"crop black bars"

This doesn't make any difference...
Should MPC-HC stay at "touch window from inside" or some other setting?

Scaling info with a normal 1920x1080 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64
chroma > Jinc AR
Rendering times ~35 ms

Scaling info with 1916x1076 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64 > Jinc AR
chroma > Jinc AR
Rendering times ~40 ms

As you can see it adds roughly 5 ms to the rendering time which I what I want to avoid.

Thanks.

bill4
8th May 2016, 23:38
Can we expect DX12 and/or Vulcan support at some point in the future?

JarrettH
9th May 2016, 01:09
What exactly must I set in order to get this working?

So I have set:
"disable scaling if image size changes by only ... 5 lines or less"
"move subtitles to bottom of the screen/window"
"automatically detect hard coded black bars"
"crop black bars"

This doesn't make any difference...
Should MPC-HC stay at "touch window from inside" or some other setting?

Scaling info with a normal 1920x1080 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64
chroma > Jinc AR
Rendering times ~35 ms

Scaling info with 1916x1076 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64 > Jinc AR
chroma > Jinc AR
Rendering times ~40 ms

As you can see it adds roughly 5 ms to the rendering time which I what I want to avoid.

Thanks.

Check "disable scaling if image size changes by" (pick 10 lines or less)

Edit: And check "automatically detect hard coded black bars" with "crop black bars"

...sorry I see you have both options on, but I don't think 5 lines or less is sufficient

In the latter statistics that is happening because image doubling doesn't QUITE fill a 4k screen; in fact, if you choose 10 lines or less that should fix it!

huhn
9th May 2016, 01:38
Check "disable scaling if image size changes by" (pick 10 lines or less)

Edit: And check "automatically detect hard coded black bars" with "crop black bars"

...sorry I see you have both options on, but I don't think 5 lines or less is sufficient

In the latter statistics that is happening because image doubling doesn't QUITE fill a 4k screen; in fact, if you choose 10 lines or less that should fix it!

nope the scaling factor is still 1924 lines not 4 lines.

even if you set it to 50 lines it will not stop scaling. i tried it already.

Warner306
9th May 2016, 01:58
What exactly must I set in order to get this working?

So I have set:
"disable scaling if image size changes by only ... 5 lines or less"
"move subtitles to bottom of the screen/window"
"automatically detect hard coded black bars"
"crop black bars"

This doesn't make any difference...
Should MPC-HC stay at "touch window from inside" or some other setting?

Scaling info with a normal 1920x1080 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64
chroma > Jinc AR
Rendering times ~35 ms

Scaling info with 1916x1076 @ 3840x2160:
chroma > Jinc AR
luma > Nnedi 64 > Jinc AR
chroma > Jinc AR
Rendering times ~40 ms

As you can see it adds roughly 5 ms to the rendering time which I what I want to avoid.

Thanks.

Try setting image upscaling to Lanczos3. You're just over 2x scaling.

MokrySedeS
9th May 2016, 08:49
I thought that maybe executing a command line in a profile with this (http://www.computerhope.com/forum/index.php?topic=118983.0) script (set mpc-hc to 200% instead of touch window from inside) would solve it for Xaurus but sadly this option is broken in madVR http://bugs.madshi.net/view.php?id=210 :(

nevcairiel
9th May 2016, 08:54
Can we expect DX12 and/or Vulcan support at some point in the future?

Both of these APIs are not particularly useful for video rendering, as you only render one thing, a video image, not a million different objects on screen.

regiregi22
9th May 2016, 09:46
I have a high-end CPU and a mid-high-end Nvidia GPU. I am wondering what would be the most efficient approach regarding load balancing.

If I am not wrong, I recall that madvr uses CUDA from the GPU for rendering. Would it be wise to use "None" has hardware decorder, so the CPU is used for decoding while the whole GPU power is spared to madvr?

Or, on the other hand, if madvr uses the CPU, would it be better to use CUDA hardware decoding and leaving the whole CPU for madvr?

nevcairiel
9th May 2016, 10:08
madVR doesn't use the CPU much, so if its fast enough to decode everything you encounter, using software decoding is generally a good option.
Note that CUDA decoding is not generally recommended anymore, and if you go with hardware decoding, favor DXVA2 (copy-back) instead.

bill4
9th May 2016, 10:44
Both of these APIs are not particularly useful for video rendering, as you only render one thing, a video image, not a million different objects on screen.

Thanks. I just thought Vulcan (as it's closer to the hardware) could have been faster. Thanks anyway.

As far as DX12 is concerned, the advantage would be to use 2 different cards (AMD & nVidia) together to increase available power.

huhn
9th May 2016, 11:33
Thanks. I just thought Vulcan (as it's closer to the hardware) could have been faster. Thanks anyway.

As far as DX12 is concerned, the advantage would be to use 2 different cards (AMD & nVidia) together to increase available power.

it's not that simple.

madVR is working with huge images and both cards need these images.

PCI-e is simply not fast enough to get these images from one GPU to any other GPU.
video processing feature usually need the whole image to get a proper results so splitting the image doesn't work too.

madshi
9th May 2016, 13:28
On what is it based then?
Can they be compared like 'super-xbr anti-bloating 100' meaning 'super-xbr 150 minus the softening anti-bloating 100 does' or something?
Simply consider the anti-bloating versions of super-xbr as slightly different algorithms, with different parameters.

if I check 'scale chrome separately, if ...' then indeed chroma conversion vanishes (so maybe this new option brought this bug, if it's a bug)
Well sounds to me like this option is designed to allow just what you want, scale chroma straight to the target (which in this case is no scaling at all).
^ It's as nevcairiel said. It's not a bug. The behaviour is exactly what the trade quality option is meant to do.

Superres with antibloat at or above 100% completely eliminates the aliasing/blobbiness/chunkiness SR introduces to low resolution content. Unfortunately, it also makes it appear that superres is doing almost nothing except introduce artifacts on hardcoded subs and similar scene details.

For low-res bad quality content, SXBR AB25 looks quite similiar to nnedi64. There's a bit less sharpness, but similar reduction in source artifacts. Considering the cost, that's pretty damn good. Any higher AB and SXBR starts looking too soft. Using AB on SXBR followed by SR with AB checked can tend to produce odd looking images.
K, thanks.

What quality tradeoffs are present when we check "scale chroma separately"?
Unchecking that option always upscaled chroma first, then converts to RGB, then scales the RGB image to the final resolution. Checking that option scales Y and the CbCr channels separately, if doing so improves performance. Quality is slightly better when always upscaling chroma first.

Would it be possible to start a thread where test images are available for download? By that, I mean the unaltered, original image. I am new to this but have discovered the following:

Not every image is a good test image;
Good test images are difficult to find on the Web;
Most images only show differences in parts of the image, not the entire image;
Some images show no difference at all;
Images must be the correction resolution and size to allow for adequate resizing.

If test images are indeed the best way to assist this enterprise, good test images should be available to everyone interested in testing.
I don't have the time for that, but if you want to do that, that's fine with me. I have a couple of test images I like to use, you can find them in my posts in this thread.

I don't see how "Ctrl+Alt+1" is relevant. That's neither "alt+[something]" nor does it include a character with a diacritic mark (like these: íöüóőúáűé)
I tried Ctrl+Alt+Q/W, which works here also. But not with only Alt as a modifier.
At some point I'm going to improve the keyboard shortcut stuff. Instead of having to type in the "name" of a key, you will be able to simply press the key you want and madVR will "record" it. I suppose that should solve this problem you're reporting. Sorry, will have to wait until I get to that, which could be a while...

i tried anti bloat 25-75 now and i can't find something that is useful for pure up scaling.

it kind of creates on effect of double lining where anti bloat 100 was so unsharp i didn't really notice this.

FHD->UHD with crisp edges 1.5 upscale refinment is already clearly highlighting this effect. and that for all anti bloat super xbr settings.

even super xbr anti bloat 25 isn't as sharp as super xbr 100 and every higher anti bloat setting isn't as sharp as spline 3.

so here is the main issue upscale refinement is needed with super xbr anti bloat which has issues with crisp edges.
Ok, I'll see if I can modify the super-xbr anti-bloating settings to make all those options a bit sharper. Of course that will also decrease the anti-bloating effect a bit.

Don't know if this has been reported, but since version 0.90.16 there is a problem with dxva deinterlacing for me. The picture is extremely pale when deinterlacing is active.
I'm using Nvidia 960 with latest driver.
I'll need more details. E.g. which decoder are you using? Software or hardware? Does anything change if you modify the decoder settings? Have you tried with madVR default settings? What happens if you toggle the "use DXVA chroma upscaling" options in the madVR "trade quality" settings section?

For hires photos SSIM downscaling w/ AR+AB100% seemed like the best compromise. I couldn't see any obvious differences between relaxed and strict AR. I vote for whatever uses the least GPU cycles.
I think I can now retire NEDI+SR and replace it with "super-xbr, anti-bloating:75". It's almost as good as NEDI+SR at minimizing blocking and gibbs artefacts and will use much less GPU. Note: I always have enhance detail: 1.0 pre-resize.
Ok, thanks for the feedback.

Antibloat appears too strong in the new sxbr doubling options.
I don't really understand what you mean. Instead of trying to describe which technical aspect of the algorithm could be problematic, try describing what you don't like about the final image quality when using super-xbr with anti-bloating.

Yes, it's useful. I find AdaptiveSharpen to look more natural with anti-bloating 75% or 100%.

I only tested the anti-bloating filter so far and I don't like it for SuperRes, it removes all the benefits brought by SuperRes even with low values.
Thanks.

"ldmp" because it's set too high in madVR and it forbids the enhancement of very small details. When set too low, the noise is sharpened too, but a noise remover can be used to avoid this.
ldmp is set high intentionally because there's a separate "enhance detail" algorithm, which is supposed to enhance very small detail. This way you can control edge sharpness and detail enhancement separately.

Also, we need a noise remover in madVR.
I don't really like noise removal much. Artifact remove: Ok. So if with "noise" you mean compression artifacts, then I'm with you, it would be nice to have that. But developing such algorithms is very difficult. For now it would be best to use some AviSynth script to do this kind of stuff. It should be done on the video in the original resolution, anyway, so it should be acceptable, doing this before madVR gets the images.

And "xstr" so I can define it to 0, because it sharpens the edges only (like unsharpHQ) and it's not a good thing for a high definition look
Agreed. That's why madVR has already set xstr to 0 by default.

Yes, either 75% or 100%.

I like the anti-bloating but don't see much either way in the anti-ringing.

I don't really prefer them but it looks different enough to be useful. But I don't really care about downscaling anyway.

Again, not of much interest to me but in general and including here I'd take the option that's more different, so the strict (soft).
Thanks.

Black screen is back while using nnedi3. Here are the circumstances:

This happens right after video transcoding a video is finished and I'm still watching video in Kodi via dsplayer. I don't know if other players are affected as well

I need to exit to FSE to bring back the picture then exit the player then play it again
So if you don't do video transcoding there isn't any problem? I'm not sure, maybe video transcoding is using OpenCL, too? In that it might conflict with madVR. It shouldn't, but if the drivers are bad, it could. Probably nothing I can do.

We want to operate A stretch, sharpness controls and blanking via an ipad
There's a network protocol, but it's relatively complicated.

Why do you need A stretch via ipad? madVR should be able to detect the correct aspect ratio of the movie and then should allow you to setup a profile for A stretch and one without, and you could let madVR automatically switch to the right profile. So everything could be fully automated.

Ive noticed if I set debanding to anything higher than low I get a lot of dropped frames.
Try activating the "don't rerender frames when fade in/out is detected" option. This option may require bigger than default queue sizes to work without frame drops, especially if you've configured the madVR settings in such a way that you GPU has to do some serious workload.

A friend of mine has an old Windows 7 machine, Core2Quad QX9770 @ 4000 and a GTX 980 @ 1520 MHz (nvidia 359.09 driver I believe) and a 1080p DLP projector. He uses the old MadVr 0.87.13 build with these settings :

This works on all the content he views with zero frame skipping. Now, if I use the same MadVr settings (and version of MadVr) on my system I get dropped frames! I have a Windows 10 x64 PRO system with Intel Skylake 6600K @ 4500 and GTX 980Ti @ 1300 (tested with 355.98 and 364.51 drivers) and my 1080p Panasonic VT30. Why is that? Is Windows 10 that broken? nVidia drivers? I do have a more powerful system than he...so this makes no sense to me.

What seems to work so far with my system is the newest MadVr 0.90.17 with these settings :

- Deinterlacing : OFF
- artifact removal : medium/high
- image enhancements : None
- chroma upscaling : NNEDI3 256
- image downscaling : SSIM 2D100%, AR relaxed, LL
- image doubling : Allways, NNEDI3 64 on ONLY double and quad LUMA
- image upscaling : Jinc AR
- upscaling refinement : CE1, ED1, LS 0.65, AR
- D3D11 Fullscreen exclusive mode
- dithering : Error Diffusion 2
- smooth motion off (Reclock)
- trade settings : all OFF
The latest madVR build may consume some more power than older builds, depending on which settings you're using. I'm always working on the algorithms, trying to improve the quality, so sometimes performance goes down a bit.

Generally, I'd recommend to spend your GPU resources where it matters most. E.g. as the other users already suggested, chroma upscaling is not really critical, so saving some performance in that area should allow you to spend your resources more effectively elsewhere.

Antibloat filter - very good! Personally i find 50% setting best for me.

Makes picture "foggy-ish" with superres+antibloat enabled, not sure why would anyone use it there.
I think most difference makes superxbr+antibloat in doubling.

Basically with my settings 720p anime became BR level on 1440p monitor - magic.
It's a bit more complicated with films, still looks better.

I also switched to Crispen edges 3.0 in IE, i find it much more usable now. I do not use settings that have antibloat in IE, something conflicts and makes picture weird.
Sorry can't explain better, 100% colorblind(meaning only black,white and billions of grey - seriously) so take all that with a grain of salt.
Thanks!

After upgrading to 90.17 (from 90.15, I believe) and without changing any settings, render queues are suddenly struggling to fill up with some of my profiles.

Any ideas which new features might have become more taxing to the system compared to 90.15? I'd really prefer not having to go through all the profiles one by one again and try to guess what's different. FWIW, I'm not using any "gimmicks" besides doubling other than super-res x1.

EDIT: The only thing I can think of causing this is the tweaked upscaling/downscaling anti-ringing filters = much more performance hungry than before.
Anti-ringing for sharpening + Super-Res got slower.

Can the actual rips influence performance? My rig does Image Doubling - Luma with NNEDI3 32n SuperSampling always enabled on most 1080p 23-24p BD's and rips I made, but some specific rips stutter heavily with SuperSaming enabled with identical 23-24p 1080p content using identical rip settings and H.264 encoder settings... I obviously use the same madVR settings for both rip types - the ones that stutter with SS and the ones that do not.

- Any ideas why the above happens?
- Does madVR waste resources on rendering the black bars?
If you have frame drops / stuttering, check the Ctrl+J OSD to see which queue (from top to bottom) is the first one getting into trouble. That's your bottleneck. Could be the decoder, or the GPU, or something else.

madVR skips black bars if you enable black bar detection and activate "crop black bars".

Ok I have the sharpness and anamorphic stretch now working from my ipad but the notifications pop up on the top left hand corner for the profiles created. Is there a way to turn these OFF please, I don't want them to show?

As we have a movie club I don't want to inflict these notifications to my audience..... ;)
Not possible atm. Will be possible in some future version. But it will take some time.

Yes, anti-ringing makes a difference. It's not a huge difference but it avoids some ringing with SuperRes so I think you should keep this option.

I didn't find an example where the anti-bloating filter makes a difference vs simply a lower SSIM value.

I didn't find an example where I found a difference regarding sharpness between these two options so I would choose the strict option to avoid ringing as much as possible. But I use a UHD TV so downscaling is not very easy to test for me, I don't have a lot of samples
Thanks!

Hey Madashi, I'm getting a blank screen maybe 10% of the time when switching to fullscreen exclusive mode. The player does not crash but, it does freeze my whole computer for about 20- 30 seconds then suddenly it starts working. I've only noticed it since 90.16 was released.

I'm using the latest nvidia driver on windows 10 64bit, mpc-hc, lav and reclock

Anyone else run into this issue?
Is it possible that your TV is having trouble synchronizing to an eventually modified refresh rate (or bitdepth)? Do you have 10bit output enabled?

- I do find antibloat useful for Adaptive sharpen 0.7 + crispen edges 1.0. It helps remove the paintbrush effect. I've settled on a strength of 125 for upscaling 720p content

- I've experimented with this on and off and if there is a benefit I'm having a hard time picking it out. I use super res 2 for 720p content anything higher is to aggressive

- YES but only when SSIM is at a strength of 100%. Otherwise you lose to much detail. Currently using at a strength of 100%. Anything higher and it cancels out the benefit of SSIM, IMO

- Relaxed. I have a panasonic VT series plasma and some are reporting they can see no difference. I can see a noticeable difference and relaxed retains more detail. strict is to aggressive. Relaxed does a good job of limiting ringing while retaining detail.
Thanks.

madshi
9th May 2016, 13:28
It's a real shame 'move subtitles' breaks with italic text - one line with just a "<i>" is enough to break all lines for the remainder of the movie.
It's on my to do list. But fixing stuff in XySubFilter is very painful for me, so I'm not sure when I'll get to that... :(

Hi madshi is DontRenderAfterStop still applicable in the latest build?
The code is still in there, so I suppose so.

Found a performance bug in my setup with a fix. I was wondering why the rendering time on chroma was higher than it used to be in the past. It might be related to LAV 0.68.

Some numbers using a high resolution video playing in chroma upscaling mode only.

In LAV Video settings-

DXVA2 Copyback 1.6 ms
DXVA2 Native 2.6 ms

Yes, native was 1 ms slower than copyback.. which makes no sense to me, but that's what the HUD was saying.

This is with the following checked ON in madvr options:
use a separate device for presentation
use a separate device for dxva processing

Now, if you uncheck these options the rendering time in copyback jumps to 12+ ms.

I have no idea what interaction is at play here but the rendering time difference is huge with those two checked and unchecked.
Not sure why that happens, probably a GPU driver issue. In theory using separate devices should not help in any way, but it does.

What should i do to remove the green artifacts when playing the file below?
Probably a GPU driver problem... :( Some NVidia drivers/GPUs can't handle NNEDI3 correctly.

Sorry it took me a while to do more tests regarding the crash on first play, but I've been very busy with work.
I finally had a chance to spend a few hours trying to debug this, and here are the results.
My current config:
Win 8.1 Pro x64 with MCE
ADM 7870 With Crimson 16.4.1 (same issue with all Crimson drivers)
Latest MPC-BE x64 nightly, MadVR and LAV x64 beta

Problem: player crashes at launch (MPB-BE has stopped working) on first playback after a reboot. Playing the same file right after the initial crash (or any other file) works fine.
Once the first crash has occurred, playing the same file (or any other file) with a different player works fine.
There is no crash if EVR or EVR-CP is selected instead of MadVR.

I've tried the following:

Revert to Catalyst 14.12 (last stable catalyst for my GPU): same issue (rules out Crimson)
MPC-HC x64 instead or MPC-BE: same issue (rules out MPC-BE)
MPC-BE x86 instead of MPC-BE x64: same issue (rules out x64)
Using FSE mode: same issue (rules out non FSE mode)
Disabling the use D3D11 path: same issue (rules out D3D11 path)
Playing with the general settings in the rendering options (delay playback, disable desktop composition, use a separate device for presentation): same issue
Trying to launch MPC-BE and MPC-HC directly, without using MyMovies to select the film: same issue (rules out MyMovies)

I'm running out of idea, but it looks like this clearly establishes that the issue lies with MadVR as it's not the GPU driver, nor the player, nor MyMovies.

I'm going to try to go back to older MadVR versions, as this is not a problem I used to have, but I had already tried to go back as far as 0.89.x and the problem was still there, so not sure how much further I should go. What is the oldest version of MadVR that will still work with the current option/registry and won't mess up my configuration?

In case it matters, I was always trying to play the same film, a bluray at 23p (BDMV folder), but I have the same issue with any movie (well, at least BD folder) so it's not movie specific.
Finding the cause of crashes is always hard. Your tests seem to indicate that madVR is likely to be at fault. I'm not 100% convinced yet, but it's certainly very possible. The most problematic thing is that crashes that only seem to affect one user (or very few users), but not all users, are hard to pinpoint. Why does it only occur for those few users and not for the others?

It could be some 3rd party software conflicting. E.g. I've received tons of reports of Asus and other 3rd party software producing crashes in madVR. Could be something like that, just with the crash occurring outside of madVR, so that madVR doesn't catch and report the crash.

Anyway, how to solve the issue? I've really no clue right now. You could go back to older madVR builds to try to find whether one specific build introduced the problem. Of course going back means you're losing features. If you want to go this route, I'd suggest to do large steps, e.g. don't go from v0.90.16 to v0.90.15, then v0.90.14. Instead go from v0.90.16 to v0.85.0, then to v0.80.0. Or jump directly to v0.70.0 and if that works try v0.75.0 etc. Using large steps will make testing go much faster.

The settings are stored upward and downward compatible. But to be extra safe, you should store the "settings.bin" file, or the registry settings value if there's no settings.bin file. Then later you can restore the old settings by first double clicking "restore default settings.bat" and afterwards copying in the stored "settings.bin" (or registry value).

I gotta agree with you. At a glance, AB makes things closer to what they should look like, especially for the windmill bricks. Also, at least compared to bicubic 150, even with AB, SSIM is sharper. However, for the food pic, it's little harder to say that SSIM without AB is absolutely ruining the image. If I pixel peep, the table cloth pattern tends to jump too far forward, but at a distance, no AB looks better.

I think it depends a lot on view distance to decide if SSIM AB is better. Without AB, you definitely spoof a higher-res image with sharper/higher frequency features, and the inaccuracy isn't as bad or apparent at longer distances. This sharpening effect is probably better/more accurate than anything you could accomplish with adaptivesharpen or the likes. I'd say keep AB as an option for the user to decide on for SSIM (maybe labeled as "accurate" vs "sharp")
I agree that anti-bloating is effective, but I'm not sure if removing the sharper SSIM is good or bad. Bicubic150 is not even close to as sharp. SSIM without AB might be preferable to users who want a really sharp image. Still, the less unnecessary options, the better. Most users will tick every checkbox available thinking it makes things look better.
I agree, SSIM 100% is better with Anti-Bloating enabled but is it better than just using SSIM 50% or 25%?
Thanks for posting this comparison. Well, you did make me change my mind. After seeing these screenshots comparison, I did some more testing and found that anti-bloating at 25% strength actually helps when used with SSIM at a higher strength like 75% or 100%.
Thanks for your feedback. Maybe I'll tweak the anti-bloating algorithm *everywhere* to internally increase sharpening strength. Currently anti-bloating both changes the look of the image (less bloated) but also decreases the apparent sharpness. Would be nice to tweak it so that the apparent sharpness isn't changed, but only the look. But I'm not sure yet if I'll do that...

Madshi, what rendering intent madVR uses by default when "this display is already calibrated" is selected?
Looks like a simple colorimetric intent that clips the out of gamut colors, right?
Atm simple clipping.

I have the same Problem with mvc-mkv...I tried xysubfilter but also the MPC-BE internal filters. Both times, with "Stereoskopic Subtitles disabled" and enabled as "side by side" I get the Subs in the Display plane...

the Subs are stored in the mkv as DVD-sub.
There seems not to be an Option (in MPC-BE, madVR or xysubfilter) to adjust the depth of the Subs...

I would be ok with an user-adjusted Option...I'm not talking about the "original Settings in the mpls"...
All MVC encodings I've seen have at least "some" subtitle depth information in them, and madVR uses that. Are we talking about MVC videos or something else (like user encoded side-by-side)?

When I watch a 24.000 fps movie with "use Direct3D 11 for presentation" enabled render queue and present queue are not full. Present time is unusually high too

With "use Direct3D 11 for presentation" disabled stats is ok.

Can I set a profile auto select rules for 24 fps movies?
This is a known problem with some GPU drivers, when using D3D11 with either 10bit output or "unusual" frame rates. Probably nothing I can do about. Usually reducing the number of prepresented frames helps.

Using profiles should work, I suppose. See first page of this thread.

I noticed that the HDR to SDR algorithm in madVR saturates the color way beyond normal, I'll explain.
A standard 709 image converted to BT.2020 ST.2084 (ICC profile made by ArgyllCMS) exported as AVI and encoded with HEVC (primaries and matrix 2020, ST.2084 EOTF, P3 master display, 10,000 peak).

When playing back this video in madVR the image should look identical to the original 709 image right?
The resulting image in madVR is dark and more saturated compared to simply reversing the 2020 st.2084 icc profile (back to linear).
That lets me believe that something is wrong.
Every time in the recent past, when a user sent a user-encoded sample to me which indicated that madVR might do something wrong with the colors, after spending hours on debugging I found that the sample was encoded incorrectly, either due to user error or bugs in other software.

Because of that at this point I'm not eager to look into user-encoded samples, especially as long as madVR is the only renderer supporting HDR, so we have nothing to compare to. Official samples only at this point, sorry.

Apparently madVR algorithm is much more complex with range conversions much smarter than I am.
It looks like it is not a simple curve as I assumed, it is dynamic gamut and average picture level dependent.
Madshi, can you just explain how it works, I will be grateful.
As I mentioned before, the algorithm is not in its final state atm, so I don't think it makes much sense for me to explain how it works now, when it will change "soon".

Would it be possible for MadVR to support:

MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
MEDIASUBTYPE_XYZC {435A5958-0000-0010-8000-00AA00389B71}
FORMAT_VIDEOINFO2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}

This is a 12-bit XYZ format. There are a couple of relatively inexpensive DirectShow filters that can decode jpeg2000 pretty quickly and can output 12bit xyz (without forcing a conversion to rec709). The conversion to display color can easily be done by the user with either a 3DLUT or pixel shaders (linearize, 3x3 matrix, gamma), or a combination of both.

I have no idea if it is simple or difficult to add support for another pixel type. Thank you.
It wouldn't make sense for me to try to implement something like this "blind". So basically I'd need to be able to play some sample files directly on my PC, preferably without having to spend any money.

Hey madshi, thanks for madVR! Do you mind feature requests? I have a video which was IVTC'd (not by me), but it still has duplicate frames. When i force film mode on it it doesn't seem to work well. Tdecimate works though. It's not a deal breaker, but it's annoying. Can you fix this? i'll send you video sample if you need it.
Can you send me a sample which shows this? I'm not sure when I'll find time to look into it, but samples where IVTC fails to work as expected are always welcome.

madshi can you please add DCI-P3 D65 to madVR?
Add it where and how and why? It's already supported if SMPTE 2086 metadata specifies it.

sometimes madVR does not switch to 3D stereoscopic mode and resolution when I play back an MVC video. That's a problem because I'm outputting at 4k and thus the video is played back in 2D at 4k. Maybe having some kind of 1080p23@3D display mode would do the trick. Right now I'm using two profiles, one with 4k resolutions and one with 1080p. Using 1080p display mode always ensure that 3D stereoscopic mode is activated. Using 4k display mode don't.
In theory madVR should manually switch to 1080p and only afterwards try to enable 3D, exactly to solve the issue you're reporting. Not sure why that doesn't seem to work for you.

madshi, the 10,000 nit HDR setting will not respect my selection and clip the highlights.
It also exhibits random behavior when pausing the video or resizing the window.
There is some unstable interaction between the Metadata and the selected nit peak setting.
When I select 10,000 nit I need to see all the 64-940 range without madVR clipping, stretching, or compressing anything, even if above 1000 nit input (metadata peak, step 721) there is no content.

Happens with the official HDR demo videos or my videos.
Are there any official samples with 10,000 nit? I've only seen max 4,000 nits samples.

Any idea why madvr dxva image upscaling is clipping btb and wtw?
madVR is trying to convince the GPU/GPU drivers to not clip BTB/WTW, but the GPU drivers don't always listen.

Since a few days ago MadVR is not working in FSE mode under Windows 10. I get a blank screen on a secondary or tertiary display. If I right click on XYsubfilter on the system tray the image comes back. If I bounce between FSE on secondary/tertiary a couple of times MPC-HC crashes. If I try skip frames it locks up. It works using Windows overlay or DX11. I tried different (older) versions of MadVR and MPC-HC plus older AMD drivers (default Win10 version).
Well, if this is "since a few days ago" something must have changed. Not sure what, though. It's really impossible to diagnose from here.

Can you please inform me what LAV and madVR does with chroma location, how do they decode and display it.
Is madVR "fixing" or moving the chroma position to a different place to re-align the 0.5 pixel shift?
I see that I have to use at least Billinear scaling for the chroma to display correctly.
Probably LAV reports the correct placement, but madVR currently ignores it and always applies the pixel shift, because anything newer than MPEG1 uses that.

Does MadVR already support DolbyVision HDR? Will it support it in future?
Dolby Vision specs are not available to me.

I have got 3D effect, but English is not my first language, so I use Polish subtitles. I think there is something wrong with subtitles shown on my screen, they are blurred/parted, so my eyes hurts, when I watch such movie. Are there any options or external filters, which I should use instead of those built in MPC-HC?
Which subtitle renderer are you using? Try the MPC-HC internal one and XySubFilter. Do you see the same problem with both?

I heard madshi planned on making a "add black bars" feature, but I'm not sure if it's still is on the table or not.
I don't remember. What was this supposed to do?

I have a problem with this great renderer. I breaks a lot. I've attached my bug report. Please help. Thanks
You're using a very old madVR build. Try the latest one. If that still crashes, send a bug report to me.

regiregi22
9th May 2016, 15:52
madVR doesn't use the CPU much, so if its fast enough to decode everything you encounter, using software decoding is generally a good option.
Note that CUDA decoding is not generally recommended anymore, and if you go with hardware decoding, favor DXVA2 (copy-back) instead.
Copy that. It's an overclocked i7 3770K, so if there is something it cannot handle, I don't know what could do the job instead :p

Will use "None" as a decoder then.

Thanks for your help :goodpost:

JarrettH
9th May 2016, 16:42
Originally Posted by JarrettH
Is there a profile rule for hevc or h265?

Basically what I want to do is create a profile to disable artifact removal if the file format is hevc.
Does anyone know how to setup a profile like this?

Excluding supported formats does not work

if (not h264) or (not MPEG2) "x265"

Still looking for an answer if there is one...madshi?:thanks:

huhn
9th May 2016, 17:10
Ok, I'll see if I can modify the super-xbr anti-bloating settings to make all those options a bit sharper. Of course that will also decrease the anti-bloating effect a bit.

stopping it from double lining would be fine too.

"most" people are using super xbr anti bloat and downscale after that and thanks to the sharp downscaler it is more than sharp enough.

madshi
9th May 2016, 17:28
Is there a string value for hevc or h.265?
madVR does not detect h265 yet.

baii
9th May 2016, 17:59
I thought I saw hevc / hi10p in the osd before?

Sent from my 306SH using Tapatalk

omarank
9th May 2016, 19:38
Would it be possible for MadVR to support:

MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
MEDIASUBTYPE_XYZC {435A5958-0000-0010-8000-00AA00389B71}
FORMAT_VIDEOINFO2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}

This is a 12-bit XYZ format. There are a couple of relatively inexpensive DirectShow filters that can decode jpeg2000 pretty quickly and can output 12bit xyz (without forcing a conversion to rec709). The conversion to display color can easily be done by the user with either a 3DLUT or pixel shaders (linearize, 3x3 matrix, gamma), or a combination of both.

I have no idea if it is simple or difficult to add support for another pixel type. Thank you.
It wouldn't make sense for me to try to implement something like this "blind". So basically I'd need to be able to play some sample files directly on my PC, preferably without having to spend any money.

Looks like RenderGuy2 is referring to DCP video content. madshi, you may download DCP samples (trailers) from this link: http://wdsspr.ru

Below are two samples from the above link (the first one is 2D video and the second one is 3D video):

http://wdsspr.ru/W/JungleBook/trailer/DigitalTRLL/JungleBook2016_TLR-L-2D_F_RU-XX_INT_51_2K_DI_20160212_DTB_IOP.zip?download

http://wdsspr.ru/W/FinestHours/trailer/Digital/FinestHours_TLR-A-3D_S_RU-XX_RU_51_2K_DI_20150709_DLA_IOP-3D_OV.zip?download

Incidentally, I sent you a PM on 6th April (actually reverted to our previous conversation) regarding the XYZ input in madVR and the conversion method for XYZ to RGB, in case you haven’t noticed. I understand though that this would be low on your priority list.

Warner306
9th May 2016, 20:39
This wasn't answered before...I'd like to know where super-xbr ranks in terms of ringing since adding additional anti-ringing. Is it still one of the worst offenders for ringing?

madshi
9th May 2016, 20:47
Using the latest 0.90.17 madVR I've encountered a glitch where if I keep resizing the MPC window so that the scaling changes just right, the brightness of the video becomes washed out. However, unchecking linear and sigmoidal light options in the down/upscaling menu removes the glitch.

Normal - http://i.imgur.com/4UpFebN.jpg
Glitching - http://i.imgur.com/UF7I9Cx.jpg

I'm watching an anamorphic DVD transfer. I couldn't quickly reproduce this glitch on 4:3 or similar content.

I tried on/offing the newest options, including "scale chroma separately, if..." but only turning LL/SL off makes this glitch go away.
There seems to be a bug with linear light downscaling and mixed x/y scaling.
I'll try to upload a sample this evening which demonstrates the problem.
What's happening is that, with luma x downscaling and luma y upscaling, activating linear light downscaling results in a very dark image.
If NNEDI3 luma doubling is activated under these conditions (no chroma) the image turns green.

This is unaffected by the new chroma quality option.

EDIT: It's the combination of sigmoidal light upscaling, and linear light downscaling that seems to cause this.
Disabling either one fixes it.
Nope, all is well with .15 whatever SD going dark in windowed mode or 720p going dark in FSE, it's actually downscaling antibloat that triggers it in combination with NNEDI3 luma-only doubling as I just found out.
I'm not sure if this had been reported already, but I'm having strange issues with SSIM downscaling combined with various other settings. It interacts badly with NNEDI3 image doubling and SuperRes.
For some reason, Jinc AR is showing up as Lanczos 3AR in image upscaling.
All of these issues should be fixed in the next build.

I have an issue with changing channels whilst watching live TV within Kodi DSPlayer. If I switch from one HD channel to another, frames start being played out of order (so everything looks like it's jumping around all over the place). If I switch from an HD channel to an SD one, I get a grey and/or green screen and have to restart Kodi.

Here's my specs and software versions on the problematic machine:


Kodi with DSPlayer 16.1 RC2 (latest)
MadVR 0.90.17 (latest)
Fullscreen Exclusive Mode disabled
MediaPortal PVR Client
Windows 10
Intel Xeon X5650 @ 4 GHz
AMD R9 270 (2 GB)

I've also tried using both ffmpeg and TSReader within the MediaPortal PVR Client settings, as well as turning "fast channel switching" on and off. These settings make no difference. Here's a summary of my MadVR rendering settings:


Direct3D 9 renderer
Use separate device for presentation
Use separate device for DXVA processing
Delay playback start until render queue is full
Windowed mode (present 8 frames in advance)
Smooth motion enabled

I've uploaded log files (http://dragonq.noip.me/files/pc/video/madvr/MadVR%20Channel%20Change%20Issue.7z) from when I started to watch one HD channel, then switched to another HD channel, then stopped playback. Hopefully it helps to identify the issue!
On a quick check I've not seen anything, but I don't really know what to look for.

What happens if you disable DXVA deinterlacing? What happens if you use disable the "use separate device for ..." options? What happens if you disable smooth motion?

I was doing some testing on GPU LUTs and found that the “disable GPU gamma ramps” setting in madVR doesn’t perfectly make the ramps linear. I used this (https://www.xrite.com/i1display-2/support/d546) tester from X-Rite website and tested on three different systems with AMD, Nvidia and Intel GPUs respectively. All three systems didn’t have any ICC profile loaded or any other application loading the GPU LUTs. So they already had linear ramps. The tester software correctly reported that the LUTs were unmodified. When madVR was used with “disable GPU gamma ramps’ selected, it reported that the LUTs were modified. The tester software also shows some RGB values to describe the modification done to the LUTs. The RGB values shown in case of madVR were just slightly different from the values which it shows when the LUTs are linear. Apparently, this is a bug in madVR. This bug may not have any visual consequences because madVR makes the LUTs almost linear, but still it's a thing of concern as this will engage the GPU processing of LUTs adding an extra dithering noise to the video.
Can you please show me exactly what the tester software showed? I mean this:

> The tester software also shows some RGB values
> to describe the modification done to the LUTs

Don't really want to install one more unknown application on my dev PC.

There are 2 different ways to create a neutral/linear LUT. madVR knows both and detects both. Maybe that software you were using only knows one of them and doesn't like madVR's default LUT.

Sure. Using a 1.85.1 movie as an example (Ant Man), I have 'always - 2x supersampling' set in image doubling. First screenshot has 'automatically detect hardcoded black bars' selected, along with 'zoom small black bars away'. Doubling is being performed but no upscaling refinements have any effect (notice the render times). If I untick 'automatically detect hardcoded black bars' render times more than double and upscaling enhancements are clearly working (second screenshot).

http://imgur.com/Hli7UJI

http://imgur.com/MfuNVg5

On a 2.35.1 movie, with 'automatically detect hardcoded black bars' selected, along with zoom big black bars away completely so the picture fills the screen, upscaling refinements work fine along with doubling.
I've tried but I can't seem to be able to reproduce this. Anyway, I've done a small change and hope that it will fix the issue for you in the next build.

Looks like RenderGuy2 is referring to DCP video content. madshi, you may download DCP samples (trailers) from this link: http://wdsspr.ru

Below are two samples from the above link (the first one is 2D video and the second one is 3D video):

http://wdsspr.ru/W/JungleBook/trailer/DigitalTRLL/JungleBook2016_TLR-L-2D_F_RU-XX_INT_51_2K_DI_20160212_DTB_IOP.zip?download

http://wdsspr.ru/W/FinestHours/trailer/Digital/FinestHours_TLR-A-3D_S_RU-XX_RU_51_2K_DI_20150709_DLA_IOP-3D_OV.zip?download
Before I download these: Can LAV Video Decoder split and decode them? Or how else would I play these?

This wasn't answered before...I'd like to know where super-xbr ranks in terms of ringing since adding additional anti-ringing. Is it still one of the worst offenders for ringing?
I don't think so, but why don't you judge for yourself?

RenderGuy2
9th May 2016, 21:43
Before I download these: Can LAV Video Decoder split and decode them? Or how else would I play these?


I will send you a link to a demo version of the decoder and some small samples. LAV can split mxf and decode jpeg2000. There are two drawbacks to using LAV for jpeg2000 decoding though, it is slow, even a powerful cpu struggles to decode in real-time. Also it forces a conversion from XYZ to rec709, resulting in a potential loss of color gamut. Anyway, if it's not too much work, it would be great if MadVR could connect to a XYZC output pin.

Thanks

foozoor
9th May 2016, 22:28
@madshi
Will you add new CrossBilateral and SuperRes in the next madVR release?

Damn there are so many shitpostings about madVR, MPDN and mpv on 4chan!

madshi
9th May 2016, 22:38
I will send you a link to a demo version of the decoder and some small samples. LAV can split mxf and decode jpeg2000. There are two drawbacks to using LAV for jpeg2000 decoding though, it is slow, even a powerful cpu struggles to decode in real-time. Also it forces a conversion from XYZ to rec709, resulting in a potential loss of color gamut. Anyway, if it's not too much work, it would be great if MadVR could connect to a XYZC output pin.
Ok thanks, will put it on my to do list, but probably not with a high priority.

Will you add new CrossBilateral and SuperRes in the next madVR release?
I've tried the new SuperRes version, but I like mine better (mine has a few modifications like built in anti-ringing etc), so I won't update that one. At least not for now. I do plan to update the bilateral chroma upscaler, but it will have to wait for the version after the next.

madshi
9th May 2016, 22:47
madVR v0.90.18 released

http://madshi.net/madVR.zip

* added new deringing algorithm
* added dering key shortcut and file name tag ("dering(ing)=on/off/half/full")
* fixed: upscaling refinement wasn't always active when doing supersampling
* fixed: Jinc upscaling was replaced by Lanczos3 when upscaling in only X or Y
* fixed: some graphical corruption when combining NNEDI3 + SSIM2D + Anti-Bloat
* fixed: image was too bright with linear light down- and sigmoidal upscaling
* fixed: sometimes HDR SMPTE 2086 metadata got lost
Here are a few image comparisons that show how my new deringing algorithm compares to AviSynth's "DeHalo_alpha" (default settings) deringing script:

clown:
no deringing (http://madVR.com/doom9/dering/clownNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/clownDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/clownMadVR.png)

some anime:
no deringing (http://madVR.com/doom9/dering/animeNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/animeDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/animeMadVR.png)

light house:
no deringing (http://madVR.com/doom9/dering/lightHouseNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/lightHouseDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/lightHouseMadVR.png)

some movie:
no deringing (http://madVR.com/doom9/dering/movieNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/movieDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/movieMadVR.png)

Ver Greeneyes
10th May 2016, 01:17
Hmm, with the new build I seem to be getting image doubling if the window is smaller than the video. It turns off if the window is the exact size as the video. I have image doubling set to "only if the scaling factor is 1.5x (or bigger)", so I shouldn't be getting supersampling!

flashmozzg
10th May 2016, 01:30
Here are a few image comparisons that show how my new deringing algorithm compares to AviSynth's "DeHalo_alpha" (default settings) deringing script:

clown:
no deringing (http://madVR.com/doom9/dering/clownNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/clownDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/clownMadVR.png)

some anime:
no deringing (http://madVR.com/doom9/dering/animeNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/animeDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/animeMadVR.png)

light house:
no deringing (http://madVR.com/doom9/dering/lightHouseNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/lightHouseDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/lightHouseMadVR.png)

some movie:
no deringing (http://madVR.com/doom9/dering/movieNoDering.png) - - | - - DeHalo_alpha (http://madVR.com/doom9/dering/movieDeHaloAlpha.png) - - | - - madVR (http://madVR.com/doom9/dering/movieMadVR.png)

American Dad - Anime xD

It seems that the new madVR algo keeps the sharpness of original image while "deleting" most of the halos. Nice!

Warner306
10th May 2016, 03:30
madVR v0.90.18 released

http://madshi.net/madVR.zip

* added new deringing algorithm
* added dering key shortcut and file name tag ("dering(ing)=on/off/half/full")
* fixed: upscaling refinement wasn't always active when doing supersampling
* fixed: Jinc upscaling was replaced by Lanczos3 when upscaling in only X or Y
* fixed: some graphical corruption when combining NNEDI3 + SSIM2D + Anti-Bloat
* fixed: image was too bright with linear light down- and sigmoidal upscaling
* fixed: sometimes HDR SMPTE 2086 metadata got lost
Here are a few image comparisons that show how my new deringing algorithm compares to AviSynth's "DeHalo_alpha" (default settings) deringing script:


Can you make some recommendations when these settings should be used? What bit rate (2,500 Kbps) is low enough for deringing to be necessary? Or what scaling factor?

har3inger
10th May 2016, 03:32
What means of sorcery did you employ for the dering filter? How does it work (if you don't mind sharing)?

What are the theoretical drawbacks of your algorithm? What should we be looking for to see what needs tweaking?

Any way to specify dering strength via options or profiles?

Hmm, with the new build I seem to be getting image doubling if the window is smaller than the video. It turns off if the window is the exact size as the video. I have image doubling set to "only if the scaling factor is 1.5x (or bigger)", so I shouldn't be getting supersampling!

Same here. Resizing videos down seems to really eat up rendering horsepower, and OSD reports that sxbr is employed for upscale.

James Freeman
10th May 2016, 05:48
The new de-ringing algo replaces the old one automatically or do I have to activate it?

madshi
10th May 2016, 07:46
Hmm, with the new build I seem to be getting image doubling if the window is smaller than the video. It turns off if the window is the exact size as the video. I have image doubling set to "only if the scaling factor is 1.5x (or bigger)", so I shouldn't be getting supersampling!
Ooops, will have to check that.

It seems that the new madVR algo keeps the sharpness of original image while "deleting" most of the halos. Nice!
:D

Can you make some recommendations when these settings should be used? What bit rate (2,500 Kbps) is low enough for deringing to be necessary? Or what scaling factor?
Ringing is not a compression artifact. It occurs if the studio downscaled the original master or applied edge enhancement / sharpening. So bitrate does not have any meaning in this context.

You should activate deringing when the source has visible ringing. I'm not sure if you can keep it always enabled. I tried to tweak the algo to not do harm if there's no ringing to begin with, but we'll need thourough tests to figure out how successful I was with that.

What means of sorcery did you employ for the dering filter? How does it work (if you don't mind sharing)?
The sorcery of my mind... :D It's a brand new algo, not based on anything else. It's quite complex (6 shader passes, actually), and costs quite a bit of performance, too. Technical details are secret... :p

What are the theoretical drawbacks of your algorithm? What should we be looking for to see what needs tweaking?
Theoretical drawbacks:

1) It might not always find/remove all ringing. Which can look a bit "weird" when there are some fragments of ringing left while others are removed. But that's the way it is.

2) It might mistake image detail as ringing and mistakingly remove it. This seems to be more a problem with dark halos around bright edges than with white halos around dark edges (especially for Anime), that's why there's one sub option that allows you to decide whether you only want bright halos to be removed, or also dark halos. Default is only bright halos.

Any way to specify dering strength via options or profiles?
Atm my algo doesn't know/support different strengths. It simply tries to remove ringing of any strength. The only option is whether you want only bright halos to be removed or also dark halos. See settings dialog.

The new de-ringing algo replaces the old one automatically or do I have to activate it?
The old "anti-ringing" algos are all still there. They have a different purpose.

Basically it's the same as with dithering vs debanding: Dithering tries to make sure that madVR processing does not add new banding artifacts. Debanding tries to remove banding artifacts that are already in the source. In the same way anti-ringing tries to make sure that madVR processing does not add new ringing artifacts. Deringing tries to remove ringing artifacts that are already in the source.

-------

I should mention that the algo is tweaked for halos produced by downscaling and edge enhancement/sharpening. These halos can be quite visible/bright, but they're usually narrow (1-2 pixels wide). If the source was upscaled a lot, there can be very wide halos, which my algo cannot handle.

AngelGraves13
10th May 2016, 08:04
New de-ringing options looks great and should always be enabled (if performance isn't an issue). It's really noticeable with the lighthouse image, and does wonders.

I'll leave the sub-option disabled for now as I like to watch a lot of Simpsons and Futurama.

Question:
madshi, what are the chances of a "low-pass filter" appearing in madvr? It would greatly aid in the removal of moire and false color, which is a serious problem with SD content, especially MPEG-2.

Here's an article with an image of the potential benefits... http://www.imaging-resource.com/PRODS/sony-rx1r-ii/Z_DSC0185.jpg

70MM
10th May 2016, 08:57
The new de-ringing algo replaces the old one automatically or do I have to activate it?

I did the latest update today and just went into my HT to check it....

Ive tried to turn on the new anti ringing feature but it wont stay on, its always greyed out. I have banding set on med top one, high bottom one. Ive tried to change these round to see if I can activate the two new features on this page but just cant get them to activate and lock on....

What might be wrong for me?

ryrynz
10th May 2016, 10:33
The bug I've mentioned a couple of times about not being able in input more than one key press at a time on profiles under 'Devices'' still exists.

Can you make some recommendations when these settings should be used? What bit rate (2,500 Kbps) is low enough for deringing to be necessary? Or what scaling factor?

There is no hard and fast rule, evaluate the content and make the call yourself.

regiregi22
10th May 2016, 10:47
After some time reading about it, seems pretty complicated for me to devise the most optimal settings for the video output.
The only thing I have connected to the projector is the PC, nothing else. And the PC has a monitor too, which I use to work and watching movies.

This is the whole chain of settings I have available to set. Would it be wise to configure RGB 0-255 in all the steps? Any downsides on that? If not, what would be the best setting?

LAV Video (RGB):
-TV (16-235)
-PC (0-255)
-Untouched

madvr (RGB):
-TV (16-235)
-PC (0-255)

Nvidia panel - Color format:
-RGB
-YCbCr442
-YCbCr444

Nvidia panel - Range:
-TV (16-235)
-PC (0-255)

Projector:
-TV (16-235)
-PC (0-255)

Monitor:
-RGB
-YPbPr


Thank you guys,
Best regards

James Freeman
10th May 2016, 10:51
Basically it's the same as with dithering vs debanding: Dithering tries to make sure that madVR processing does not add new banding artifacts. Debanding tries to remove banding artifacts that are already in the source. In the same way anti-ringing tries to make sure that madVR processing does not add new ringing artifacts. Deringing tries to remove ringing artifacts that are already in the source.

Thanks.
My question was a lot simpler, I just could not find where to turn it on till you replied. :)
Found it: Processing-> Artifact Removal-> Reduce Ringing Artifacts.

I'm of to try it.

madshi
10th May 2016, 10:58
madshi, what are the chances of a "low-pass filter" appearing in madvr? It would greatly aid in the removal of moire and false color, which is a serious problem with SD content, especially MPEG-2.
I don't take feature requests atm.

I did the latest update today and just went into my HT to check it....

Ive tried to turn on the new anti ringing feature but it wont stay on, its always greyed out.
It's greyed out?? Screenshot, please, with it greyed out? I don't think the settings dialog even knows how to grey the main dering option out!

After some time reading about it, seems pretty complicated for me to devise the most optimal settings for the video output.
The only thing I have connected to the projector is the PC, nothing else. And the PC has a monitor too, which I use to work and watching movies.

This is the whole chain of settings I have available to set. Would it be wise to configure RGB 0-255 in all the steps? Any downsides on that? If not, what would be the best setting?
This was discussed AT LENGTH just a couple of pages ago.

XMonarchY
10th May 2016, 11:02
Should I enable "Scale Linear Light" for "Image Downscaling - SSIM 2D 100% + AR" for the best visual quality?

Madshi,

Big thanks for the new madVR build!

nevcairiel
10th May 2016, 11:17
Should I enable "Scale Linear Light" for "Image Downscaling - SSIM 2D 100% + AR" for the best visual quality?


Why don't you try and find out?
If you can't judge the quality for yourself, then you might as well not bother, because you won't see a difference then either. :)

70MM
10th May 2016, 11:23
It's greyed out?? Screenshot, please, with it greyed out? I don't think the settings dialog even knows how to grey the main dering option out!


.
APPLY is greyed out so you cant activate the new feature.

Im not the only one to report this now. I thought it was just me not able to apply the new anti-ring feature but others have mentioned it too. So that's good, its not just me doing something wrong....:helpful:

omarank
10th May 2016, 11:58
Can you please show me exactly what the tester software showed? I mean this:

> The tester software also shows some RGB values
> to describe the modification done to the LUTs

Don't really want to install one more unknown application on my dev PC.

There are 2 different ways to create a neutral/linear LUT. madVR knows both and detects both. Maybe that software you were using only knows one of them and doesn't like madVR's default LUT.
Well, the application doesn’t require installation. You can just run the standalone exe file. Anyway, please see the screenshots in the below link:

http://www.mediafire.com/view/pd8924882kj99vt/Comparison.png

The application doesn’t resize so I am unable to show the complete table. But, I guess with the screenshots you will get a fair idea of the problem.

Before I download these: Can LAV Video Decoder split and decode them? Or how else would I play these?
Nevcairiel was willing to output XYZ directly to madVR, when I made that request. He also said that it wouldn’t be too much work on his side. Maybe you can speak to him.

For testing, you may download the trial version of JPEG2000 Video Decoder (http://www.3dtv.at/Downloads/JPEG2000VideoDecoder122_en.msi). More information here (http://www.3dtv.at/Products/Jpeg2000Decoder/Index_en.aspx).

By default it outputs XYZ (disguised as RGB). You can enable the XYZ to RGB conversion through the decoder settings. It’s output is limited to 8 bits only. Honestly, the ideal solution would be that LAV outputs XYZ to madVR.

* added new deringing algorithm
Here are a few image comparisons that show how my new deringing algorithm compares to AviSynth's "DeHalo_alpha" (default settings) deringing script:
This is really wonderful. On the light house image, it indeed looks like magic. Thank you for another very useful addition to madVR!

By the way, the file name tag “deringing=full|half” would enable/disable “reduce dark halos around bright edges, too” option, right?

ryrynz
10th May 2016, 12:36
APPLY is greyed out so you cant activate the new feature.

Im not the only one to report this now. I thought it was just me not able to apply the new anti-ring feature but others have mentioned it too. So that's good, its not just me doing something wrong....:helpful:

Perhaps you could help out here since personally I nor madshi have this problem. You could upload your settings or you could find out exactly what causes it.
Revert to the previous version and unselect some options and then upgrade again, rinse and repeat as necessary. You hopefully should be able to find what's triggering it.

The dehaloing is nice, but what are the chances of it being a little less soft/smudgy, I'd like to see it hopefully retain or "create" some kind of detail if possible. Can you add some grain and or
allow the algo to be a little more flexible in it's choices of color?

cork_OS
10th May 2016, 13:21
New anti-ringing algo looks really great, but sometime needs even more strength. Sample: AR (http://i1376.photobucket.com/albums/ah1/Ivan_Nemow/WWa_zpsn6xbsnlf.png) / noAR (http://i1376.photobucket.com/albums/ah1/Ivan_Nemow/WWb_zpsbfj6eu4n.png).
The sorcery of my mind... :D It's a brand new algo, not based on anything else. It's quite complex (6 shader passes, actually), and costs quite a bit of performance, too. Technical details are secret... :p
At first I guessed it related to line thinning.