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

Georgel
1st May 2016, 00:56
256 neuron luma nnedi3? No, let alone all the enhancement.

With no enhancement a 980ti / fury x can do 128 for 1080p while gimping everything else. Anyways, cramping all the option on doesn't always make it "look better".

Btw, if you push the gpu hard on laptop, the fan noise can be pretty annoying unless you have headphone on all time.

I thought that an ultra fast GPU could do a bit more.

I do wear headphones almost all the time. I am one of those audiophools who invests in headphones too. Afterall my project is about audio reproduction, and music quality and fidelity.

Georgel
1st May 2016, 00:57
If the display is set to 16-235, does it clip 0-15 or 236-255? I'm still editing this section in my own guide.

IF you have display set 16-235, it normally clips all values outside of this, so yes, they should look like clipping.

Georgel
1st May 2016, 01:02
1080p NNEDI3 32 doubling already requires much performance, GTX 980 can do 1080p 30fps NNEDI3 64 doubling + some very lightweight postprocessing at most. When you output 4k resolution, deband with max quality isn't low on resources either and neither is sharpen edges.
Don't buy an expensive notebook now, probably already in June or July you can buy notebooks with Polaris 10 or GP104/106 GPU which will be a huge technology update in general over current GPUs (HEVC 10 bit, HDR, Display Port 1.3...).

I was studying the new generation of GPUs. I am a member of Notebookreview, and their thread for Pascal seems to be almost the most fired up on the internet.

1080M for laptops sadly seems like one of those huge letdowns that you wish you could get over, because all news indicate to 1080M being released a bit later, and they don't indicate a much higher power update.

Well, I mainly need a laptop with 4K display, because I am creating Visual Novels, and need those color accuracy.

But I also abuse my day to day laptop to watch anime, and listen to music and do programming, so having a laptop that has a 4K screen, but on which I can also do powerful gaming and use madVR with full blown potential really sounds sweet. So far, I am able to use anything but not NNEDI algorithms with my GTX860M, so it is not a major letdown, but I am not watching videos in 4K. I am a bit worried that when I will get to 4K I might be disappointed in the performance of that GPU (desktop GTX980).

I want to be able to fluently play games and watch movies in native 4K at 60fps for games, and without drops for madVR.

I also hope that the new link they use for Pascal could make SLI or whatever it will be named to be easier to implement in madVR (or automatic, why not ?)

aufkrawall
1st May 2016, 02:04
NVLink is for professional HPC, not consumer GPUs.
16nm FF+ will also lower power consumption remarkably over 28nm. This is especially useful in notebooks or HTPCs, I can't imagine notebooks with full GM204 chip can actually be close to silent.

Also, with good 1080p sources there's not really any need to use NNEDI3 over super-xbr (anti-bloat) + SuperRes, which requires much less GPU performance. Polaris 10 will most likely be slower than GP104 in games, but it will also cost less and still be sufficient for a lot of things.
GM204 isn't able to decode HEVC 10 bit or VP-9, it will be outdated soon.

Stereodude
1st May 2016, 02:43
dont you need a tv with 10 bit panel to see steps above 255?
that panasonic plasma is only 8 bit right ?
sure it will be clipping.

get a 500M instead :)
true 10bit panel
FWIW, I can see an improvement with 10-bit vs. 8-bit on my Samsung plasma with a gradient ramp (madVR dithering turned off).

Georgel
1st May 2016, 02:49
NVLink is for professional HPC, not consumer GPUs.
16nm FF+ will also lower power consumption remarkably over 28nm. This is especially useful in notebooks or HTPCs, I can't imagine notebooks with full GM204 chip can actually be close to silent.

Also, with good 1080p sources there's not really any need to use NNEDI3 over super-xbr (anti-bloat) + SuperRes, which requires much less GPU performance. Polaris 10 will most likely be slower than GP104 in games, but it will also cost less and still be sufficient for a lot of things.
GM204 isn't able to decode HEVC 10 bit or VP-9, it will be outdated soon.

That is useful to know.

I will make sure to wait until they release the desktop version of 1080 and see how much better it is in relation to desktop 980. I need to feel motivated to buy the thing.

Also, Clevo P870, is not exactly your average desktop, it is pretty silent, built like a tank, accepts both desktop CPU and GPU, and rocks one's world.

On the other hand, it is quite expensive and heavy. Really heavy.

This being said, I would still consider P870, because I can get it with G.Skill RAM and Samsung PRO SSDs and other features that you cannot do on non custom laptops.

Asmodian
1st May 2016, 03:33
IF you have display set 16-235, it normally clips all values outside of this, so yes, they should look like clipping.

Right, to properly calibrate for 16-235 you would adjust the display until only 16-235 were visible so everything above and below would be effectively clipped.

MadVR 16-235, GPU 0-255, and adjust the display until only 16-235 are visible.

Asmodian
1st May 2016, 04:03
dont you need a tv with 10 bit panel to see steps above 255?
that panasonic plasma is only 8 bit right ?
sure it will be clipping.

get a 500M instead :)
true 10bit panel

This isn't how 10-bit v.s. 8-bit works.

255 8-bit = 1023 10-bit

64-940 in 10-bit is simply 16-235 in 8-bit, the problem is bad banding with a gradient from near 0 to 10,000(!?) nits with only 220 steps.

10,000 nits is crazy but if it was possible you would need at least 12-bit for 3505 steps... hopefully we can get rid of limited range by then too so we could use all 4096 steps. :p

JarrettH
1st May 2016, 04:58
Is there a string value for hevc or h.265?

Basically what I want to do is create a profile to disable artifact removal if the file format is hevc. :thanks:

Edit: Maybe this works for now...?

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

Ok that isn't working...what do I need to fix?

Warner306
1st May 2016, 05:03
Right, to properly calibrate for 16-235 you would adjust the display until only 16-235 were visible so everything above and below would be effectively clipped.

MadVR 16-235, GPU 0-255, and adjust the display until only 16-235 are visible.

Ok, I'm finally clear on this topic. Thanks.

MrBonk
1st May 2016, 05:38
This is the recommended combination if desktop colors are of no concern, right?

I'm getting confused once again because some on the other hand say to use madVR full and GPU full.

I have madVR limited, GPU full and HDMI black level "low" on my Samsung TV (can't remember if low meant full or limited but I'm guessing low = full). Can someone confirm if this is opimal? Black levels look alright on test clips at least.

Low black level is limited yes. But most Samsungs are capable of full range 4:4:4.

Normal black level = full range.

huhn
1st May 2016, 05:57
There is some banding introduced by expanding 16-235 to 0-255 but madVR's dithering prevents this being an issue (it results in extra dither noise instead of banding), at least on most displays.

this is wrong.

YCbCr to limited RGB and full range RGB is creating float point data.

if you have an YCbCr stream with only Y information limited range would create less banding but that is more than unrealistic.

so full range RGB wins because float to 0-255 has less precision loss than float to 16-235. still a very small difference.

JarrettH
1st May 2016, 06:18
Is there a string value for hevc or h.265?

Basically what I want to do is create a profile to disable artifact removal if the file format is hevc. :thanks:

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

Ok that isn't working...what do I need to fix?

Edit: figured it out myself (different issue), still need help with setting up this profile though

huhn
1st May 2016, 06:20
1, 2 and 3 are hot key for MPC-HC.

press 3 for default settings.

chros
1st May 2016, 09:52
There is some banding introduced by expanding 16-235 to 0-255 but madVR's dithering prevents this being an issue (it results in extra dither noise instead of banding), at least on most displays.

this is wrong.

YCbCr to limited RGB and full range RGB is creating float point data.

if you have an YCbCr stream with only Y information limited range would create less banding but that is more than unrealistic.

so full range RGB wins because float to 0-255 has less precision loss than float to 16-235. still a very small difference.
I can confirm what huhn states: I have to use Full Range with my Intel driver and on my TV to able get 10 bit. If I'm using limited range with both I even get clipped blacks.
Maybe it's the result of the combination of the 2 devices, I don't know. The point is everyone should experiment to see what's the best option for him/herself.
I personally vote for Full range.

GCRaistlin
1st May 2016, 10:47
I thought the only reason to use limited RGB is that either one's GPU or one's display device doesn't support full RGB?..

huhn
1st May 2016, 13:18
I thought the only reason to use limited RGB is that either one's GPU or one's display device doesn't support full RGB?..

there are other good reason to set the TV to limited range for example using an AVR with source devices that can't do full range RGB.

what so ever madVR is clipping WTW and BTB with default settings and this is correct.

Georgel
1st May 2016, 13:24
there are other good reason to set the TV to limited range for example using an AVR with source devices that can't do full range RGB.

what so ever madVR is clipping WTW and BTB with default settings and this is correct.

I don't seem to understand this.

Even if your source does output limited range, and not full range, why would you want to output software limited range?

Would not the clipping effect be better if you output anyways to full range, and let the destination clip, if it does?

huhn
1st May 2016, 13:28
source device

the source in this case is for example a PS3, cable tuner, sat receiver or something like that.

GCRaistlin
1st May 2016, 15:06
source device

the source in this case is for example a PS3, cable tuner, sat receiver or something like that.

I don't understand - how do you use madVR if the source device is PS3?

Warner306
1st May 2016, 17:25
this is wrong.

YCbCr to limited RGB and full range RGB is creating float point data.

if you have an YCbCr stream with only Y information limited range would create less banding but that is more than unrealistic.

so full range RGB wins because float to 0-255 has less precision loss than float to 16-235. still a very small difference.

When set to 16-235, I thought madVR passes blacker-than-black and whiter-than-white and the display clips these values. Is this incorrect?

huhn
1st May 2016, 17:57
When set to 16-235, I thought madVR passes blacker-than-black and whiter-than-white and the display clips these values. Is this incorrect?

depends.

they are not removed but that doesn't the mean display will remove them.

the TV need limited range setting and the GPU full range YCbCr or limited range RGB will not work. this setup crushes colors on the desktop.
still the second best setup you can do with madVR.
it all depends on your screen anyway.

on a properly calibrated screen WTW and BTB aren't shown but a correct signal is still needed.
I don't understand - how do you use madVR if the source device is PS3?

AVR (these digital audio amps with HDMI in and out) they are very very common.

if you connect a sat receiver, a ps3, a BD player, a PC with madVR and what ever to this AVR.

with this setup you can easily run in problem with full range because not all devices support full range.

so your PC is not the only thing in this system and not all can use full range RGB but all send there signal in the same HDMI port on your TV (source -> AVR -TV) which is on 99 % of all screen either full range or limited range depending on the settings.

using YCbCr or limited range RGB is a viable solution in this case.

BTW. full range is the "clipped" signal.

if you really like to know more about this make a new thread this has little to do with madVR.

Warner306
1st May 2016, 18:04
depends.

they are not removed but that doesn't the mean display will remove them.

the TV need limited range setting and the GPU full range YCbCr or limited range RGB will not work. this setup crushes colors on the desktop.
still the second best setup you can do with madVR.
it all depends on your screen anyway.

on a properly calibrated screen WTW and BTB aren't shown but a correct signal is still needed.


That is what I thought. After the 20th edit, I may have described this section accurately.

trueunborn
1st May 2016, 18:06
Try setting ReClock on manual fps.

Thanks for replying. I'd like to do that but i am kind of a noob :D, i do not know how to manually enter display refresh rate (i only got a way to detect it through Direct draw or direct 3D, but does not change a thing). Besides i get some pre-configured media speed adpatations but nothing that can bypass the problem. If i knew a way to enter manually my refresh rate OR really manually adjust media speed adapatation, i certainly could do something... is it possible?
Anyway, i guess the bug as nothing to do with MAdvr because if i manually select a 3D resolution and play a 2D file, Reclock do think 23 Hz is 24hz too (works perfectly in 2D modes besides). One workaround would be if MAdvr could let us choose the display refresh rate for 3D modes (23 or 24 Hz) so i could put 24 Hz and let reclock work normaly.
I will certainly try to post to nvidia and reclock boards but i am pretty sure it as 0 chance to change anything (because nvidia do not care about things like that and reclock is pretty dead).

huhn
1st May 2016, 18:09
That is what I thought. After the 20th edit, I may have described this section accurately.

last word from me on this topic:

There are 3 possible HTPC level configurations, when using madVR:

(1) Display wants 0-255. GPU and madVR are consequently also both set to 0-255.

This is the most recommended setup because it doesn't (shouldn't) have any banding problems, and still has all video, desktop and games with correct black/white levels. In this case test patterns need to have black at 0,0,0, obviously.

(2) Display wants 16-235. GPU is set to 16-235. madVR has to be set to 0-255.

This is not recommended, because the GPU stretches the madVR output, probably in 8bit without dithering, so banding could be introduced. However, this is not a big problem for ArgyllCMS. Argyll still needs to create test patterns with black at 0,0,0. The GPU will then stretch the test patterns from 0-255 to 16-235, so the display will get 16,16,16, although Argyll rendered 0,0,0. So the levels are correct.

(3) Display wants 16-235. GPU is set to 0-255. madVR is set to 16-235.

This is the recommended setup for best image quality if your display can't do 0-255. This setup results in banding-free madVR image quality. However, levels for desktop and games will be incorrect, because desktop and games will render black at 0,0,0, while the display expects black at 16,16,16.

source: http://www.avsforum.com/forum/139-display-calibration/1471169-madvr-argyllcms.html

Stereodude
1st May 2016, 18:19
Ideally you want to convert from YCbCr to RGB and expand RGB to 0-255 at the same time in one step since the color space conversion works with floating point math that can be mapped to any output range you want with minimal loss. That means either sending YCbCr to the display and letting the display do both steps at once (which isn't an option for PCs since they work in RGB space and can't output native YCbCr), or doing the YCbCr to 0-255 RGB conversion in the PC. Unfortunately, some people may have a display that won't accept RGB 0-255 which means they have to use a less than ideal setup and have to pick between option 2 and 3 that huhn lists based on what all you're trying to use the PC for.

David
1st May 2016, 18:39
Simplified, and only for one color matrix, YUV -> RGB works like this: (without range change)

R = Y + 1.54 * (V - 128)
G = Y - 0.183 * (U - 128) - 0.45 * (V - 128)
B = Y + 1.81 * (U - 128)

(No guarantees for the exact coefficients, I just cobbled them together quickly)

As you can see, its quite odd values which are used here, which are guaranteed to produce odd results in 16-bit float.
If you want to convert that back to 8-bit integer for RGB output, you need to round, or better, dither!

Now if you want to do range expansion, the values used here just change slightly, and it looks like this:

R = 1.16 * (Y - 16) + 1.79 * (V - 128)
G = 1.16 * (Y - 16) - 0.213 * (U - 128) - 0.532 * (V - 128)
B = 1.16 * (Y - 16) + 2.11 * (U - 128)

No change in functionality, just a few changes in coefficients.


http://forum.doom9.org/showthread.php?p=1678348#post1678348

Uoppi
1st May 2016, 19:47
I'd set everything to full range so desktop levels remain accurate and the GPU doesn't have to do a range conversion for the display -- after madVR, the output is straight passthrough.

Your configuration is considered optimal because madVR doesn't clip anything and all output is passed-through as is to the display. But I doubt it has any real advantage over setting everything full range; especially when your desktop levels will be off and look distracting.

Can anyone claim superiority for setting madVR to 16-235?

OK. Desktop accuracy is irrelevant to me as I use the HTPC exclusively for madVR + Kodi (and also foobar2000 but with the TV turned off). So I'll keep using madVR limited, GPU & TV full (assuming "low" black level means full on Samsungs!)

GCRaistlin
1st May 2016, 20:35
There are 3 possible HTPC level configurations, when using madVR
I always keep this in mind, that's why I asked my question above. Can we say that madVR should always set to the lowest levels value of those that GPU wants and display wants and GPU should be set to 0-255 if possible?

Warner306
1st May 2016, 21:35
I always keep this in mind, that's why I asked my question above. Can we say that madVR should always set to the lowest levels value of those that GPU wants and display wants and GPU should be set to 0-255 if possible?

Try to avoid allowing the GPU to do any range conversions. That is the most straightforward recommendation.

Stereodude
1st May 2016, 22:40
PGS subtitles are incompatible with the Direct3D 11 presentation modes?

Edit: Apparently that's not my problem. No idea why I don't have subtitles.

AngelGraves13
1st May 2016, 23:00
PGS subtitles are incompatible with the Direct3D 11 presentation modes?

Edit: Apparently that's not my problem. No idea why I don't have subtitles.

Check your filters. I use LAV Filters and set it to Forced only.

SamuelMaki
2nd May 2016, 12:41
OK. Desktop accuracy is irrelevant to me as I use the HTPC exclusively for madVR + Kodi (and also foobar2000 but with the TV turned off). So I'll keep using madVR limited, GPU & TV full (assuming "low" black level means full on Samsungs!)

"Low" black level does not mean full range! Or at least that is the case with my LG. So change that to "normal"/"full"/"automatic"/"PC mode"/whatever is the other option. Then just use both madVR and GPU on full range and enjoy worry-free watching.

Xaurus
2nd May 2016, 15:31
Hello guys, when looking for the most important GPU performance aspect for madvr, is it Memory Bandwidth, Pixel Fillrate or Texture Fillrate?

huhn
2nd May 2016, 16:45
look at gaming performance.

Memory Bandwidth is not that important after you reach over 100 GB/s

Georgel
2nd May 2016, 19:19
Hello guys, when looking for the most important GPU performance aspect for madvr, is it Memory Bandwidth, Pixel Fillrate or Texture Fillrate?

Simple answer is release date and price LOL.

I am GPU oc'er and I have been studying those for a good while. All that actually comes after learning all that was online about GPUs is that their price and release date reveals their potential.

And benchmarks.

It is irrelevant what it might seem from Nvidia technical specifications, a GTX980 is faster than a 970 for both gaming and madVR, and a 980TI is faster than a 980.

madVR seems to scale like games do with a GPU. Only that for madVR, your vRAM is not important, because you will never fill over 2GB, regardless if you are watching 4K, while with games you can go over 4GB even at FHD + 60Hz. Movies are afterall 24fps, or 30 most of times. Very few movies are 50 or 60 fps.

baii
2nd May 2016, 19:41
If you use nnedi3, open CL will matter, but both sides are relative close in this gen. 4gb is enough for 4k output if you keep the queue reasonable.3gb is tight if you dual screen or Windows decides it want to keep your vram as hostage for some reason.

Sent from my 306SH using Tapatalk

aufkrawall
2nd May 2016, 20:46
I switched from a GTX 980 with 1,4Ghz to a R9 390 with 1040Mhz and don't notice any difference in speed in madVR.
What I however notice is that native DXVA2 decoding doesn't kill image quality with AMD (with Nvidia, chroma get's extremely blurry) and that the Radeon doesn't get sometimes stuck in the wrong power state with NNEDI3. With the 980, I sometimes had to restart Windows to make the GPU clock up again.

I think the coming Polaris 10 GPU could have the potential to become the "perfect" madVR card (probably faster than 390X, probably not over 130W power consumption, HEVC 10 bit, price probably very affordable).

Asmodian
2nd May 2016, 21:48
this is wrong.

YCbCr to limited RGB and full range RGB is creating float point data.

if you have an YCbCr stream with only Y information limited range would create less banding but that is more than unrealistic.

so full range RGB wins because float to 0-255 has less precision loss than float to 16-235. still a very small difference.

Ah you are correct, of course.

However, Y only test patterns are pretty common so it is easy for even casual tests to show an improvement using limited range with dithering disabled. :p

I thought the only reason to use limited RGB is that either one's GPU or one's display device doesn't support full RGB?..

I agree, this is only a theoretical issue, not a practical one. I recommend and use full range myself.

Edit: even as a theoretical issue limited range is only better with Y only sources.

Warner306
3rd May 2016, 00:11
Theoretically, does this make sense?


Correct RGB output levels are necessary when passing from PC to TV color spaces.

Note: LAV Video RGB settings are not relevant and will not impact these conversions.

Option 1:

When sending video via HDMI to a TV, the most straightforward color space is set as follows:

(madVR) PC levels (0-255) -> (GPU) Limited Range RGB 16-235 -> (TV) Output as RGB 16-235

madVR expands the source 16-235 signal to full range RGB leaving the conversion back to 16-235 to the graphics card. Expanding the source prevents the GPU from clipping the image during conversion to 16-235. Desktop levels remain accurate. However, it is possible to introduce banding if the GPU does not use dithering when stretching 0-255 to 16-235. The range is converted twice: by madVR and the GPU.

This may be the only option for graphics cards that do not allow full range RGB (0-255) output over HDMI like many older Intel iGPUs and Nvidia cards. Although, any video driver can be configured to output 0-255 by running madLevelsTweaker.exe in the madVR installation folder.

Option 2:

If your PC is a dedicated HTPC, an alternative approach is possible:

(madVR) TV levels (16-235) -> (Kodi) Use limited color range (16-235) -> (GPU) Full Range RGB 0-255 -> (TV) Output as RGB 16-235

In this configuration, the signal remains 16-235 until it reaches the TV. A GPU set to 0-255 will allow passthrough without clipping the levels output by madVR. Kodi must be configured under System -> Video output to match madVR — using a limited color range for both Kodi and DVDPlayer.

When set to 16-235, madVR will not alter the source levels. This means it is possible to pass 0-15 and 236-255 if the source includes these values. The display will clip to 16-235. Clipping patterns such as these MP4 test patterns (http://www.avsforum.com/forum/139-display-calibration/948496-avs-hd-709-blu-ray-mp4-calibration.html) should be used to adjust brightness and contrast until bars 16-235 are visible.

This can be the best option for GPUs that output full range to a display that only accepts limited RGB. Banding is unlikely as madVR handles the single range conversion (Y'CbCr to RGB) and the GPU is bypassed. However, the desktop and other applications will output incorrect levels. PC applications render black at 0,0,0 while the display expects 16,16,16. The result is crushed blacks. This sacrifice is made to improve the quality of the video player at the expense of other computing.

Option 3:

A final option involves setting all sources to full range:

(madVR) PC levels (0-255) -> (GPU) Full Range RGB 0-255 -> (TV) Output as RGB 0-255

madVR expands the source to 0-255 and displays it full range on your television. The TV's HDMI black level must be set to display full range RGB (HDMI Normal vs. HDMI Low). When converting Y'CbCr 16-235 to RGB 0-255, madVR will clip 0-15 and 236-255. Clipping below 16 and above 235 is acceptable as long as a correct grayscale is maintained. Use of these MP4 test patterns (http://www.avsforum.com/forum/139-display-calibration/948496-avs-hd-709-blu-ray-mp4-calibration.html) for black and white clipping should be used to confirm video levels (16-235) are displayed correctly.

This should be the optimal setting for TVs and GPUs with a full range setting. The desktop maintains correct PC levels and banding is unlikely as madVR handles the lone range conversion.

I would recommend trying all three options. In my experience, the result of each setting can vary depending on the GPU and display, and this will not always conform with the theory of the ideal presentation path.

For testing, start with the referenced AVS Forum Calibration Patterns (http://www.avsforum.com/forum/139-display-calibration/948496-avs-hd-709-blu-ray-mp4-calibration.html) to confirm the output of 16-25 and 230-235, and move on to these videos (https://drive.google.com/file/d/0B2LAr9InPMjtcmt0Y0VHTExXSk0/view?usp=sharing), which can be used to fine-tune "black 16" and "white 235."

huhn
3rd May 2016, 07:47
there is a tool in the madVR folder that allows full range output on old intel GPUs and older nvidia driver.

madLevelsTweaker.exe

James Freeman
3rd May 2016, 07:51
The most accurate (IMO):
(madVR) TV levels (16-235) -> (GPU) Full Range RGB 0-255 -> (TV) Output as RGB 16-235
That way you don't lose BTB and WTW signal and actually the closest setting to a top notch quality blu-ray player.
It also has no range conversions.
But as said, you can't play PC games or play any full range signal from your PC because it will be clipped.

huhn
3rd May 2016, 08:32
chroma has a range of 16-240 not 16-235.

so you are always range converting when RGB is used.

Uoppi
3rd May 2016, 09:27
Reading Warner's description, can someone confirm if on Samsung TVs (at least as long as the HDMI input is not deliberately specified as "PC" by the user):

HDMI black level on "Normal" = full range
HDMI black level on "Low" = limited range

(I'm not at my TV at the moment but I remember if the input is named "PC", the black level setting is greyed out and fixed to either one of the options. Not much sense in using "PC" though because many other options are also greyed out then and become unconfigurable.)

nevcairiel
3rd May 2016, 10:00
It also has no range conversions.

This is a common claim, keep the range "the same", but this is not how it works.
The YUV and RGB ranges are not strictly related. Converting from YUV to RGB changes the values either way, slightly adjusting the coeffecients to adjust their output to 0-255 or 16-235 is not an extra range conversion step, it just targets a different output range. The quality is not higher when you use 16-235.

Even your players UI will be clipped in such a mode, which is imho not acceptable. If your TV support full-range input, and you don't need it to be compatible with other source devices that output 16-235, using 0-255/full range is the better choice, in my opinion.
No matter what people claim, but BTB/WTW are not meant to be visible. A properly calibrated screen should have absolute black as absolute black. There is no room to show any blacker values. Would you sacrifice the black level or the white level of "normal" content to be able to show those? You certainly would not.

iSeries
3rd May 2016, 10:38
Seeing as how any TV is going to be converting your RGB signal into YCbCr again for it's own processing (unless in some kind of restricted 'PC' mode) before converting to RGB once more for display, isn't sending full vs limited kinda moot?

huhn
3rd May 2016, 10:41
converting full range RGB to high bit deep YCbCr is better than converting limited range RGB to high bit YCbCr.

and nearly every TV theses is at least not sub sampling in some kind of mode.

newer sony TV can do ->everything<- without subsampling and maybe even in RGB.

oddball
3rd May 2016, 11:34
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).

SweetLow
3rd May 2016, 11:38
Reading Warner's description, can someone confirm if on Samsung TVs (at least as long as the HDMI input is not deliberately specified as "PC" by the user):

HDMI black level on "Normal" = full range
HDMI black level on "Low" = limited range

Yes, it's true. Very strange names (inversed, i can say).

Uoppi
3rd May 2016, 12:56
So what I take from this is there's no consensus on whether
1) limited -> full -> limited ("Option 2" on Warner's list)
is any more optimal than
2) everything full range

(Assuming exclusive HTPC use and disregarding desktop use.)

Anyhow, I guess it's "safe" for me to keep using limited -> full -> limited. I doubt I could detect any difference either way (other than desktop looking off). Naturally I'd like to set it the best way possible and just stop obsessing about it.