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

madshi
26th August 2017, 20:06
I finally found something on youtube.
So from what i understand i am supposed to disable everything in internal filters and hevc-h264 in transform filters is that correct?
You need to make sure that you're using a recent LAV Video Decoder version. How you can achieve that with the media player of your choice is a question that should be addressed in the suitable media player thread, not here. But anyway, if HDR already activated for you then that part seems to be already working, so problem solved.

Hdr activates now when i launch an hdr movie but i expected more vibrant colors, not sure everything is working properly.
Did you do what I suggested, e.g. set your GPU to RGB Full (0-255)?

I asked a lot about the 576 to 1080p but not the 1080p to 1080p
It is more impotent color upscaling, on image upscaling the filters have no effect
When you watch 1080 video on a 1080 display in fullscreen, no image scaling is needed, only chroma upscaling, so just use a chroma upscaling option that looks best to you.
try NGU AA or super xbr for chroma. the depends a lot on your screen too.
^

Madshi if I use ffdshow raw I will never be able to use your hdr options? I love the denoise options of ffdshow.
The direct communication between LAV Video Decoder and madVR will be broken, which means that HDR specific information will not reach madVR because ffdshow doesn't forward them. It might still be possible to make HDR playback work somehow, I don't know. Haven't investigated that.

Hmm, for unknown reasons with ver. 0.92.1 i can get ONLY 8bit FSE - at least that's what is OSD showing (and no HDR content is automatically recognized by TV as HDR with "let madVR decide" (FYI - TV recognizes and announces HDR, HDR10, DolbyVision))...

With ver. 0.91.11 I can get 10bit FSE (but result is the same - no HDR content is automatically recognized by TV as HDR with "passthrough HDR content ... + send HDR metadata checked ...").
Oh well, yes, you're right, that's a bug in v0.92.1 in older OSs. Please retry with v0.92.2, thanks.

Thanks for confirming, unfortunately that's the behaviour to be expected from an HD7xxx GPU, which means no metadata makes it to the display.
It's not really confirmed yet, because of the bug that madVR only uses 8bit FSE mode in win8.1 atm, which means that dynamic HDR switching cannot work, regardless of which AMD GPU model is used, because AMD HDR switching only works with 10bit.

Given that it looks like I can't help with my old 7870, you might want to ask in the Linker, Integral (and 2015-2017 JVCs as many JVC users have purchased either of these) threads on AVS for MadVR users of the Linker/Integral with a recent AMD supporting HDR to provide the feedback you need. Although these older devices don't have an OSD like the Vertex, they have the same ability to capture the HDR metadata (from the Windows GUI), so they could provide the same information I did (just the raw HEX, not decoded). Off the top of my head, I think at least Javs and Zombie10K are MadVR users, but whether they use Nvidia or AMD I couldn't say. Most of them are probably on nVidia, but you could get lucky. If you find a candidate using MadVR+HDR capable AMD+Linker or Integral and if they don't know how to capture the HDR metadata, feel free to suggest they PM me at AVS and I'll tell them what to do, it's very straightforward. If you'd like me to ask on your behalf, I'm happy to do that too.
I don't know if it's worth the effort. Either it's working correctly or not. If it's not working correctly, I don't have an AMD contact to report the problem to, anyway. I've done my part. Whether or not the AMD drivers behave correctly is out of my hands.

Of course it would be nice to know, but I'm not really eager to go fishing for users to test this, only for informational purposes.

Switch HDR off in the OS, and don't use FSE unless you need to, it's not necessary anymore for HDR 10bits.
FWIW, this only works in win10. In older OSs fullscreen windowed mode is still limited to 8bit, and will always be.

About the display mode switcher, there's something wrong (to me), but it has nothing to do with new custom resolution tool, it was already here before 0.92.
Upload a debug log, then I can have a look.

madshi
26th August 2017, 20:08
madVR v0.92.2 released

http://madshi.net/madVR.zip

* fixed: possible crash when stopping playback or freeing the madVR instance
* fixed: DXVA2 decoding+downscaling produced wrong colors with HDR content
* fixed: D3D11 DXVA decoding: crash when moving window to another monitor
* fixed: D3D11 DXVA decoding: green screen with DX10 GPUs
* fixed: D3D11 DXVA decoding: problems if video unexpectedly changes size
* fixed: D3D11 DXVA decoding: detection for bad HDR metadata wasn't working
* fixed: custom modes tab didn't show for AVR devices
* fixed: custom modes tab didn't show when display modes was in a profile
* fixed: D3D11 FSE mode was sometimes limited to 8bit instead of 10bit
* fixed: HDR "let madVR decide" setting misbehaved for Intel GPUs
* fixed: HDR metadata sent to display wasn't always correct
* fixed: "HDR" profile bool was not set if HDR metadata was bad/unknown
* fixed: some settings windows appeared behind a "always on top" media player
* added support for sending MaxCLL/FALL HDR metadata (if available) to the TV
* added "enable nvidia 3d.reg" to enable 3D playback with newer Nvidia drivers
* if video HDR metadata is bad/missing, default HDR metadata is sent to TV now
* when custom mode is deleted, measurements are now also deleted
* Nvidia "try custom mode" timeout increased to 30 seconds
Nothing fancy, just many bug fixes and small improvements. Funny enough, DXVA2 decoding of HDR content suddenly works on my AMD RX 560, not sure why.

Next version will address some wishes asked by media player devs, and an HDR update for madTPG.

Manni
26th August 2017, 20:28
It's not really confirmed yet, because of the bug that madVR only uses 8bit FSE mode in win8.1 atm, which means that dynamic HDR switching cannot work, regardless of which AMD GPU model is used, because AMD HDR switching only works with 10bit.

Thanks, I wasn't aware of this bug as I haven't used 8.1 for ages. :o


I don't know if it's worth the effort. Either it's working correctly or not. If it's not working correctly, I don't have an AMD contact to report the problem to, anyway. I've done my part. Whether or not the AMD drivers behave correctly is out of my hands.

Of course it would be nice to know, but I'm not really eager to go fishing for users to test this, only for informational purposes.


Sorry, I misunderstood and was only trying to help, I thought you were keen to find out. Personally, I have absolutely zero interest in AMD now that I have my 1080 Ti, so happy to drop that one guilt-free. :)


FWIW, this only works in win10. In older OSs fullscreen windowed mode is still limited to 8bit, and will always be.


Thanks for clarifying, the part of my statement about FSE could indeed be read as if it was relevant for all OSes.

pirlouy
26th August 2017, 20:46
I don't understand. You said your list was "1080p30, 1080p60".
Cause I did not plan on detailing all the modes.

mogli
26th August 2017, 20:56
0.92.2 crashes when I open my image upscaling profiles settings. Message can be clicked away though and madVR plays just fine. Probably just need to delete and redo my settings but I'm too lazy doing that today.

madshi
26th August 2017, 21:10
0.92.2 crashes when I open my image upscaling profiles settings. Message can be clicked away though and madVR plays just fine. Probably just need to delete and redo my settings but I'm too lazy doing that today.
Does this one fix it?

http://madshi.net/madHcCtrl922.zip

Skwelcha
26th August 2017, 21:15
Does this one fix it?

http://madshi.net/madHcCtrl922.zip

I had the same issue, this fixed it for me.

Sarlaith
26th August 2017, 21:16
madVR v0.92.2 released

http://madshi.net/madVR.zip

* fixed: possible crash when stopping playback or freeing the madVR instance
* fixed: DXVA2 decoding+downscaling produced wrong colors with HDR content
* fixed: D3D11 DXVA decoding: crash when moving window to another monitor
* fixed: D3D11 DXVA decoding: green screen with DX10 GPUs
* fixed: D3D11 DXVA decoding: problems if video unexpectedly changes size
* fixed: D3D11 DXVA decoding: detection for bad HDR metadata wasn't working
* fixed: custom modes tab didn't show for AVR devices
* fixed: custom modes tab didn't show when display modes was in a profile
* fixed: D3D11 FSE mode was sometimes limited to 8bit instead of 10bit
* fixed: HDR "let madVR decide" setting misbehaved for Intel GPUs
* fixed: HDR metadata sent to display wasn't always correct
* fixed: "HDR" profile bool was not set if HDR metadata was bad/unknown
* fixed: some settings windows appeared behind a "always on top" media player
* added support for sending MaxCLL/FALL HDR metadata (if available) to the TV
* added "enable nvidia 3d.reg" to enable 3D playback with newer Nvidia drivers
* if video HDR metadata is bad/missing, default HDR metadata is sent to TV now
* when custom mode is deleted, measurements are now also deleted
* Nvidia "try custom mode" timeout increased to 30 seconds
Nothing fancy, just many bug fixes and small improvements. Funny enough, DXVA2 decoding of HDR content suddenly works on my AMD RX 560, not sure why.

Next version will address some wishes asked by media player devs, and an HDR update for madTPG.

Nice work!
I actually see the custom modes with my AVR set as AVR.
Quick question tho, my Samsung KS7000 has all modes as standard. (Timing details unknown)
How do I go about optimising it? I cant seem to click optimise. (Greyed out)

madshi
26th August 2017, 21:25
Nice work!
I actually see the custom modes with my AVR set as AVR.
Quick question tho, my Samsung KS7000 has all modes as standard. (Timing details unknown)
How do I go about optimising it? I cant seem to click optimise. (Greyed out)
You need to assign known timings first by pressing "edit".

Sarlaith
26th August 2017, 21:38
Ah I found it! Change pixel clock by 0.01 and then it shows up:)
Thanks! (Should have Just tested that-,-)

aufkrawall
26th August 2017, 21:38
I can confirm that the green screen issue for D3D11VA native on a GeForce 9600 GT is gone, and so is the problem with HEVC 10 bit + DXVA2 scaling on GTX 1070.
Somehow also my presentation glitches at playback start have disappeared completely (new driver, LAV Filters nightly and madVR version...).
All looking very stable and polished.

Can you give a raw estimate when D3D11VA scaling and deinterlacing might occur?

madshi
26th August 2017, 21:39
Ah I found it! Change pixel clock by 0.01 and then it shows up:)
Thanks! (Should have Just tested that-,-)
You wouldn't have to change anything at all, just apply the EDID settings. Anyway, doesn't matter...

cyberscott
26th August 2017, 21:47
Does this one fix it?

http://madshi.net/madHcCtrl922.zip

I had the crash as well and this one fixed it for me, too. :thanks:

StinDaWg
26th August 2017, 21:51
I am using the latest version of madVR and MPC-HC nightly. When using D3D11 FSE on a 23.976 video, the vsync says 41.72ms instead of 41.71. This throws the render time off and there is a dropped frame every few minutes.

If I use D3D11 windowed mode then it goes back to 41.71ms with dropped frame after hours/days.

This just happened recently. Bug? I'm using GTX 960 on latest drivers.

Manni
26th August 2017, 22:15
madVR v0.92.2 released

http://madshi.net/madVR.zip


* fixed: custom modes tab didn't show for AVR devices
* fixed: HDR metadata sent to display wasn't always correct
* added support for sending MaxCLL/FALL HDR metadata (if available) to the TV
* when custom mode is deleted, measurements are now also deleted
* Nvidia "try custom mode" timeout increased to 30 seconds


Nice work! I can confirm that the above in bold are fixed here. :)

All the metadata (when present) is now correct, including MaxCLL/FALL and mastering display primaries/white point (at least on my rig, details in sig).

Thanks for increasing the timeout to 30 secs, that leaves about 10 secs on my JVC once it's synced to see the results, which is plenty.

I don't think that the reg file you've added for 3D on nVidia is enough. It might help, but it won't stick. Unfortunately, it looks like we need to use the nVidia utility before each 3D playback if we want to be sure the display switched to 1080pFP when needed. At least that's the behavior here. I tried to do it at every reboot, and that wasn't enough. That's why I enable both keys in the registry and launch the nVidia utility to enable 3D before playback (at the same time I switch my display to its 3D mode). Unless you've added something to MadVR's code beyond the registry file, 3D cannot be enabled in registry, you need the utility to do so. Otherwise most of the time you end up with 1080p2D on playback as the registry key have been reset. It's not because it works once that it will work every time, especially after a reboot or a change of (non-3D related) settings in the control panel.

I'm not sure that in passthrough mode we want MadVR to change any of the metadata, so I would personally suggest to leave bad metadata as it is (untouched) in that mode so that we can actually know what's in the source file, unless you display the actual data in the OSD. Of course in "Let MADVR decide" or any other mode, it's fine, but in pass through, I'd rather have true pass through, warts and all, or at least an option for "true pass-through" :). If we want a fix, we can always select "Let MadVR decide" and have the bad metadata corrected.


Next version will address some wishes asked by media player devs, and an HDR update for madTPG.

Looking forward to HDR support in MadTPG. :)

Sarlaith
26th August 2017, 22:22
You wouldn't have to change anything at all, just apply the EDID settings. Anyway, doesn't matter...

Actually I had to, the EDID settings gave me the Nvidia driver Did not accept the new resolution warning.
By offsetting the pixel clock by 0.01 it accepted the resolution :)

foozoor
26th August 2017, 22:45
@madshi
- Is madVR using compute shaders?
- Are you going to use them to make your algorithms faster?

zipeldiablo
26th August 2017, 22:56
You need to make sure that you're using a recent LAV Video Decoder version. How you can achieve that with the media player of your choice is a question that should be addressed in the suitable media player thread, not here. But anyway, if HDR already activated for you then that part seems to be already working, so problem solved.

Did you do what I suggested, e.g. set your GPU to RGB Full (0-255)?



That's silly mate, we are using three different tools, if they think like this on every topic no one is getting anywhere :D
Hdr solved indeed.

Yup it was already set to rgb full, but i am quite disappointed by the colors.
I don't know if it is supposed to be like this or if i expect too much.
Since i don't have any other hardware that can send hdr content to my tv screen i am stuck.
Subtitles are quite bright though, too much if you ask me :o

Is there a documentation on the different upscaling doubling methods of madvr?
Would like to know how to find out what is the best option.

madshi
26th August 2017, 23:03
I am using the latest version of madVR and MPC-HC nightly. When using D3D11 FSE on a 23.976 video, the vsync says 41.72ms instead of 41.71. This throws the render time off and there is a dropped frame every few minutes.

If I use D3D11 windowed mode then it goes back to 41.71ms with dropped frame after hours/days.

This just happened recently. Bug? I'm using GTX 960 on latest drivers.
Are you using the new custom mode feature? In any case, there's not too much I can do about this. You may need to try to find out what changed to cause this issue. I don't think it's madVR, unless activating the "hack Direct3D to make 24.000Hz and 60.000Hz work" option helps?

All the metadata (when present) is now correct, including MaxCLL/FALL and mastering display primaries/white point (at least on my rig, details in sig).
Good to hear!

I don't think that the reg file you've added for 3D on nVidia is enough. It might help, but it won't stick. Unfortunately, it looks like we need to use the nVidia utility before each 3D playback if we want to be sure the display switched to 1080pFP when needed. At least that's the behavior here. I tried to do it at every reboot, and that wasn't enough. That's why I enable both keys in the registry and launch the nVidia utility to enable 3D before playback (at the same time I switch my display to its 3D mode). Unless you've added something to MadVR's code beyond the registry file, 3D cannot be enabled in registry, you need the utility to do so. Otherwise most of the time you end up with 1080p2D on playback as the registry key have been reset. It's not because it works once that it will work every time, especially after a reboot or a change of (non-3D related) settings in the control panel.
I haven't tried rebooting, but after executing that reg file, 3D playback works for me just fine, by enabling 3D support via the OS control panel 3D control. If I enable/disable 3D support via OS control panel, this also enables/disables 3D support in the Nvidia control panel, and vice versa. And 3D works fine if it's activated. So everything seems to work great here, after having executed that reg file.

Anyway, the reg file needs to change HKLM, and madVR normally doesn't have write access to it, so it's not something that madVR can automatically do for you. So offering the reg file is the best I can do, short of installing a service which does nothing but change these registry keys on PC boot, which sounds like overkill to me.

I'm not sure that in passthrough mode we want MadVR to change any of the metadata, so I would personally suggest to leave bad metadata as it is (untouched) in that mode so that we can actually know what's in the source file, unless you display the actual data in the OSD.
This is not as easy as it sounds. When LAV reports "bad" metadata, I don't even know if the metadata is bad or missing, and I also don't know if the GPU will output such metadata untouched or if it would try to repair it somehow. Furthermore I don't know how an UHD Blu-Ray player would handle the situation. Different players might even handle it differently. This is much too complex for my taste. I don't think we need to go to extreme lengths to try to passthrough bad information. I think sending some sort of default metadata instead is the better solution.

Actually I had to, the EDID settings gave me the Nvidia driver Did not accept the new resolution warning.
By offsetting the pixel clock by 0.01 it accepted the resolution :)
Interesting!!

- Is madVR using compute shaders?
- Are you going to use them to make your algorithms faster?
Yes, I'm using compute shaders, but currently only very very few of them, and not mainly for speed reasons. I will probably work on speed improvements at some point in the future. But my first priority is to make madVR feature complete. Making everything prettier and faster is a secondary priority atm.

nevcairiel
26th August 2017, 23:07
This is not as easy as it sounds. When LAV reports "bad" metadata, I don't even know if the metadata is bad or missing, and I also don't know if the GPU will output such metadata untouched or if it would try to repair it somehow. Furthermore I don't know how an UHD Blu-Ray player would handle the situation. Different players might even handle it differently. This is much too complex for my taste. I don't think we need to go to extreme lengths to try to passthrough bad information. I think sending some sort of default metadata instead is the better solution.

To add to that, the "bad" metadata isn't "maybe bad", its quite obviously bad and under no circumstances or interpretation would it be valid. There is literally no value to use that data.

More often this would likely be "missing metadata" anyway, I still don't know of any other file then the Sony HDR Camp thing which had this broken metadata.

Manni
26th August 2017, 23:07
@Madshi, I tried the three files I had initially tested for the HDR Metadata (Exodus, Neo Fire and RM Brightness), and for some reason the RM Brightness file doesn't play (black screen or whatever the last frame was in window) in full screen. It only plays in a window. Both the MP4 and the MKV versions do the same. It does the same in my default windowed full screen mode or in FSE.

All the others files play fine, and display the correct metadata. Do you have any idea if a recent change in the code could have caused that? I tried to install the latest LAV nightly and that doesn't make a difference. I also tried to install the two files from the test build, same results (but I had only played Exodus with these files). If you have access to the RM Calibration files you might want to test and make sure it's not only here.

Manni
26th August 2017, 23:16
This is not as easy as it sounds. When LAV reports "bad" metadata, I don't even know if the metadata is bad or missing, and I also don't know if the GPU will output such metadata untouched or if it would try to repair it somehow. Furthermore I don't know how an UHD Blu-Ray player would handle the situation. Different players might even handle it differently. This is much too complex for my taste. I don't think we need to go to extreme lengths to try to passthrough bad information. I think sending some sort of default metadata instead is the better solution.


To add to that, the "bad" metadata isn't "maybe bad", its quite obviously bad and under no circumstances or interpretation would it be valid. There is literally no value to use that data.

More often this would likely be "missing metadata" anyway, I still don't know of any other file then the Sony HDR Camp thing which had this broken metadata.

It depends what you call bad metadata. For example, when playing UHD Bluray, a few of them report no metadata such as Life of Pi, which has all metadata set to zero. When I want to know what's on the source, I want to know what's on the source. If some metadata says "zero", I want to know it says "zero". I don't want a software to replace these values with defaults values, and then me having no idea whether what the GPU reports are true values, or default values that do not in any way give an idea about the way content was mastered.

If you're talking about different "bad metadata", then let us know what you have in mind.

As far as I'm concerned, I want to know exactly what's reported by the source so that I can make the best decision regarding calibration and playback. If I want someone else to make these decisions for me, then I ask "Let MadVR decide".

If you don't want to have a passthrough mode, that's fine, but then don't call it pass through, or provide a proper passthrough mode, or provide the raw metadata in the OSD.

I can confirm that when the metadata is as above, or when some fields such as MaxCLL/MaxFALL are not populated while the others are, a standalone player doesn't make any attempt to "fix" it or improve it. It just passes it through as it is. This is GOOD because I know I can't rely on the metadata. Many displays are not reading metadata anyway, so until they all do their job properly, we have to know what the data is (preferably).

Again, this would be fine if there was a way to access the actual metadata, for example on the OSD, but that's not the case at the moment.

Of course, if the OS/GPU changes that metadata behind your back, then there is nothing you can do, but it doesn't seem to be the case at the moment (at least for MaxCLL/MaxFALL).

nevcairiel
26th August 2017, 23:18
As far as I'm concerned, I want to know exactly what's reported by the source so that I can make the best decision regarding calibration and playback. If I want someone else to make these decisions for me, then I ask "Let MadVR decide".

If you don't want to have a passthrough mode, that's fine, but then don't call it passthrough, or provide a proper passthrough mode.

It makes no sense to passthrough obviously invalid data, though, because there is no value to be gained from this. Worst case you need a special button to "disable" that on the fly so it plays properly on a picky device, which is a terrible user-experience.

If you want to know what exactly is in the file, you should get a stream analyzer, not a player.

PS:
If you just want to know if the data from the file is "valid", madVR should say "unknown properties" in the OSD if its discarding invalid data, so you can know if its sending defaults instead of actual file data, anyway.

Manni
26th August 2017, 23:35
It makes no sense to passthrough obviously invalid data, though, because there is no value to be gained from this. Worst case you need a special button to "disable" that on the fly so it plays properly, which is a terrible user-experience.

If you want to know what exactly is in the file, you should get a stream analyzer, not a player.

PS:
If you just want to know if the data from the file is "valid", madVR should say "unknown properties" in the OSD if its discarding invalid data, so you can know if its sending defaults instead of actual file data, anyway.

What do you call invalid data? Data that's out of range? Or data that's only zero?

Again, if all displays were interpreting and reacting to metadata properly, it would be different, but many displays don't.

The minimum would be indeed to have an indicator saying which data is changed.

You don't need a stream analyser to get this information, the Vertex or the Linker/Integral do that fine, but there is nothing they can do if the software replaces data as it sees fit.

Anyway, all this doesn't really matter as we can't yet play our UHD Blurays with LAV/MadVR, but until displays properly handle metadata (and again, many of them don't, they simply detect HDR metadata is sent and they switch to a fixed HDR mode that doesn't take into account the provided metadata), then it's not helpful to have no way to know the actual metadata of the content, especially if it's not clear that it's been manipulated.

Sebastiii
26th August 2017, 23:36
Thanks :)

nevcairiel
26th August 2017, 23:40
What do you call invalid data? Data that's out of range? Or data that's only zero?

It can't really go out of range, the values in the bitstream have a fixed size of bits they can fill, there just isn't any more room.
Mostly this is zero metadata, or invalid values very close to zero (I believe the Sony HDR thing has a value of 0.5 Nits in the metadata, on top of having zeros for the whitepoint)

madshi posted his invalid check a few pages back, it mostly just checks for zeros in some of the fields - in which case he discards all of it.


You don't need a stream analyser to get this information, the Vertex or the Linker/Integral do that fine, but there is nothing they can do if the software replaces data as it sees fit.


A stream analyzer is the only way to be sure you get the real data, though, and its (potentially free) software, not some expensive hardware thing that 99.9% of all people won't have.

Manni
26th August 2017, 23:56
It can't really go out of range, the values in the bitstream have a fixed size of bits they can fill, there just isn't any more room.
Mostly this is zero metadata, or invalid values very close to zero (I believe the Sony HDR thing has a value of 0.5 Nits in the metadata, on top of having zeros for the whitepoint)

madshi posted his invalid check a few pages back, it mostly just checks for zeros in some of the fields - in which case he discards all of it.



A stream analyzer is the only way to be sure you get the real data, though, and its (potentially free) software, not some expensive hardware thing that 99.9% of all people won't have.

I am talking about a tool that tells you what the metadata is in real-time, on-the-fly, when the file plays.

If MadVR was displaying this information in the OSD, we wouldn't be having this discussion.

Because it doesn't, the only way to see the metadata as it's playing - and make for example decisions regarding which calibration preset to use - is to rely on the metadata sent out by the GPU.

As it stands, there is no way to get to this information if the software manipulates it for whatever reason it sees fit.

Discarding all the information because a few fields are not correctly populated isn't ideal either (I can't find Madshi's post so don't know his method).

Anyway, I guess you don't calibrate, or don't have a display that doesn't care about the metadata (i.e. behaves the same way irrespective of what the metadata actually is), otherwise you'd see my point.

I'm only saying that with a standalone player, we can get this metadata as it is and make our own decisions, while with MadVR/LAV we can't unless a proper passthrough mode ("real passthrough" or "native passthrough") is offered or the native metadata (before manipulation) is displayed on the OSD.

I'm not going to fight about this if you feel so strongly about not providing the original information, I just hope that by the time we can play legitimate HDR content on a HTPC the displays will always react to metadata appropriately and provide an accurate/optimal picture. It is NOT the case today with HDR10, far from it. It is the case with Dolby Vision, and might be the case with HDR10+, but we're not there yet.

So I would share your position in theory, in an ideal world where everyone would know what the standard is, would implement it properly and would respect it (which is what happens with Dolby Vision), but in practice, as the market is today with many of the HDR displays in use (especially projectors) and the way content is mastered, having no way to know the actual HDR10 metadata in passthrough mode is not really helpful for those who can do better than the manufacturer's (often poor at this stage) implementation.

FDisk80
27th August 2017, 00:46
Nothing fancy.

Yes it is. :) Hope this fixes the refresh rate change crashes with D3D11 DXVA. Will test tomorrow.

el Filou
27th August 2017, 02:36
I've never heard of native 30 fps content. The only thing I know is 29.97 NTSC, which is interlaced or telecined, so either 24p or 60p. What content would be native 30p?
Interlacing is a key problem here, with at least most "30p" content being interlaced, using a 30p mode would not allow proper deinterlacing, as that would result in 60 fps.A lot of YouTube content is 30p, for example.
I admit most YouTube content isn't of very high video quality, but there is also the case where broadcast providers have gotten used to converting their 50/59 i/p material to 30p (example: IndyCar posts full races on YouTube in 30p).

jeryll
27th August 2017, 06:31
Oh well, yes, you're right, that's a bug in v0.92.1 in older OSs. Please retry with v0.92.2, thanks.

Thanks for the new version! Now I can get 10bit FSE with newest madVR. But the result is the same, no HDR content is automatically recognized by TV as HDR with "let madVR decide"...

70MM
27th August 2017, 07:08
first of disabling deinterlancing (unticking it) is generally not a good idea.
.
huhn I hope the two images work for you...
Ive ticked deinterlacing for both 480 DVD and 576 DVD, below is the results. Massive repeated frames for 480 material, 576 looks ok. 1080Ti card everything upscaled to 4K. BD is perfect, my issues are just with DVD...

480 DVD USA
https://snag.gy/IqAokC.jpg

576 DVD UK
https://snag.gy/trQBKf.jpg

Anleck
27th August 2017, 07:31
Tried a 59.940 fps profile?

mogli
27th August 2017, 07:40
@70MM
Your settings are too taxing for 480p@29i. Lower them.

Just add up the numbers for average stats (or max stats) and compare them with the frame number above. Average stats should be generally quite a bit lower than this number (max stats are fine to exceed it only in rare cases).

That's true for your PAL example but not for NTSC.

70MM
27th August 2017, 08:15
Im not sure which settings to lower sorry..

I removed doubling to image upscaling bilinear and chroma upscaling to bicubic60 and still in in the thousands of repeated frames for 480 DVD.
Average states dxva 2.50
rendering 7.26
present 0.25

Asmodian
27th August 2017, 09:21
That's sad to hear. Your TV seems to be very picky. What model is that? It should at least accept changes to the pixel clock, right? Does it dislike both horizontal and vertical back porch changes, or is just one of those problematic? What happens if you change front porch or sync width?

I was finally able to test this. It is LG's 2017 OLED TV, the 55" C7P.

I can change the pixel clock as expected as well as the horizontal sync width, the vertical front porch, sync width, and back porch. It is only the horizontal porches that cause my TV to freak out, I get bad colors or no image. The bad colors looks similar to what happens when I manage to get the TV to enable Dolby Vision mode while sending it 8-bit data (HDR video games at 60Hz).

I think this was only caused by being in 12-bit RGB, changing to 8-bit allows me to adjust everything without any issues. Oddly the custom modes do not let me set them to 12-bit in the control panel but if I am already in a 12-bit mode the GPU does output 12-bit (or at least 10-bit) when madVR switches to it. However, I am usually in an 8-bit mode before the switch in which case it stays 8-bit.

I am really enjoying the new version, HDR seems fully functional on my system (not that I have any HDR content) and the custom modes are great fun. :)

While testing DX11 native decoding I did encounter an issue with DXVA2 native decoding in general (both DX11 and DX9) when used with refresh rate changing. When madVR changes the refresh rate LAV falls back to software decoding. I use software or copyback anyway but I found it odd.

:thanks:

david555
27th August 2017, 09:33
Big thanks Madshi! With the customs mode, bye bye drop frame in bitstream.

You're the best!!!

Again, many thanks.

(No need exclusive mode to have 10bit with nightly lav d3d11, is it normal?)

madshi
27th August 2017, 10:15
@Madshi, I tried the three files I had initially tested for the HDR Metadata (Exodus, Neo Fire and RM Brightness), and for some reason the RM Brightness file doesn't play (black screen or whatever the last frame was in window) in full screen. It only plays in a window.
Is this behaviour different depending on which decoder you're using (native DXVA2 vs native D3D11 DXVA vs software or DXVA copyback)? Did this ever work correctly?

I don't have the RM Brightness file.

If MadVR was displaying this information in the OSD, we wouldn't be having this discussion.
madVR shows the important parts of the metadata in the OSD, if they're "good", most importantly the video's max luminance and the gamut (usually DCI-P3). madVR *also* tells you if the metadata is bad or missing (I don't know how to detect the difference). In that case madVR shows "HDR, unknown properties", as nevcairiel already mentioned. So from what I can see, all important information is already available in the OSD right now.

Thanks for the new version! Now I can get 10bit FSE with newest madVR. But the result is the same, no HDR content is automatically recognized by TV as HDR with "let madVR decide"...
So that most probably means only Polaris (and newer) will support HDR passthrough. It was probably to be expected, but a bit sad...

I was finally able to test this. It is LG's 2017 OLED TV, the 55" C7P.

I can change the pixel clock as expected as well as the horizontal sync width, the vertical front porch, sync width, and back porch. It is only the horizontal porches that cause my TV to freak out, I get bad colors or no image. The bad colors looks similar to what happens when I manage to get the TV to enable Dolby Vision mode while sending it 8-bit data (HDR video games at 60Hz).

I think this was only caused by being in 12-bit RGB, changing to 8-bit allows me to adjust everything without any issues.
Interesting! Did you also try editing the horizontal porches in such a way that they're dividable by 2, 4 or even 8? Maybe it works that way?

Oddly the custom modes do not let me set them to 12-bit in the control panel but if I am already in a 12-bit mode the GPU does output 12-bit (or at least 10-bit) when madVR switches to it. However, I am usually in an 8-bit mode before the switch in which case it stays 8-bit.
Strange. Please feel free to report this to Nvidia customer support. There's nothing I can do about it.

While testing DX11 native decoding I did encounter an issue with DXVA2 native decoding in general (both DX11 and DX9) when used with refresh rate changing. When madVR changes the refresh rate LAV falls back to software decoding. I use software or copyback anyway but I found it odd.
Can you provide more information on how to reproduce this?

No need exclusive mode to have 10bit with nightly lav d3d11, is it normal?
Not sure what you mean.

petran79
27th August 2017, 12:07
For quite a while I get this issue with Madvr. The OK button seems out of window border
Does it have to do with resolution?


https://abload.de/img/madvri9ruw.jpg

FDisk80
27th August 2017, 12:25
For quite a while I get this issue with Madvr. The OK button seems out of window border
Does it have to do with resolution?


I don't understand why this window needed at all, why not just open "Edit Settings" directly. The "Show Tray Icon" can be enabled and disabled from there.
Or am I missing something? :confused:

Edit: Oh, to check the "Pin Info" tab? I guess that's why. Maybe all that info can be moved to "Edit Settings" for quick easy access? The same as it's done in LAV.
Clicks can be saved :D

el Filou
27th August 2017, 12:46
Massive repeated frames for 480 material, 576 looks ok.
480 DVD USA
https://snag.gy/IqAokC.jpg
576 DVD UK
https://snag.gy/trQBKf.jpgThose are film, right? Film on DVD - if properly encoded - is supposed to be IVTC'd, not deinterlaced as with video.
With EVR, the GPU can do that ("Use inverse telecine"/"Pulldown detection" option in video settings) but I think madVR cannot use the GPU's IVTC (at least it doesn't work on my NVIDIA).

The easiest way to make sure your film DVDs - both NTSC and PAL -
are handled properly is to manually enable film mode:
1. Make sure to use copy-back or software decoding
2. Use Ctrl+Alt+Shift+T to cycle through deinterlace modes and set it to Film: https://snag.gy/U7bW2L.jpg

Edit: I can't test this with NTSC DVDs as I don't own any, sorry.

a8213711
27th August 2017, 13:10
Hey madshi can you check your PM? :o

Jasch
27th August 2017, 16:11
madVR v0.92.2 released

Nothing fancy, just many bug fixes and small improvements. Funny enough, DXVA2 decoding of HDR content suddenly works on my AMD RX 560, not sure why.


Hi Madshi can you plz share some info on your settings running RX460 with Hdr.
IŽam trying since yesterday but not TV will not switch to HDR.

Info screen shows playback is fine.

austinminton
27th August 2017, 17:05
Autoswitching to HDR has stopped working in FSE with the latest madvr (0.92.2). This was working fine with the previous release (0.92.1). I have tried updating to the latest LAV nightly and nvidia drivers but no change. It works fine in non FSE mode.

Windows 10 creators update
GTX 1080 (385.41)
mpc-hc x64 (1.7.13)
Lav nightly 0.72.2-66(DXVA2 copyback)
madvr (0.92.2)

Please note that deleting 0.92.2 and going back to 0.92.1 instantly fixes the problem

Edit: I have tried both passthrough HDR and let madvr decide. Both work fine for 0.92.1 and neither works for 0.92.2.

huhn
27th August 2017, 17:27
Those are film, right? Film on DVD - if properly encoded - is supposed to be IVTC'd, not deinterlaced as with video.
With EVR, the GPU can do that ("Use inverse telecine"/"Pulldown detection" option in video settings) but I think madVR cannot use the GPU's IVTC (at least it doesn't work on my NVIDIA).

The easiest way to make sure your film DVDs - both NTSC and PAL -
are handled properly is to manually enable film mode:
1. Make sure to use copy-back or software decoding
2. Use Ctrl+Alt+Shift+T to cycle through deinterlace modes and set it to Film: https://snag.gy/U7bW2L.jpg

Edit: I can't test this with NTSC DVDs as I don't own any, sorry.

madVR is using the same deinterlancer as EVR if the GPU IVTC option is active madVR will use it too but it is not really doing an IVTC it is just going addional field matching and still outputting 60/50 hz

I don't understand why this window needed at all, why not just open "Edit Settings" directly. The "Show Tray Icon" can be enabled and disabled from there.
Or am I missing something? :confused:

Edit: Oh, to check the "Pin Info" tab? I guess that's why. Maybe all that info can be moved to "Edit Settings" for quick easy access? The same as it's done in LAV.
Clicks can be saved :D

the setting dialog is general the pin info is not it is for the currently running madVR instance/player.

madshi
27th August 2017, 18:33
For quite a while I get this issue with Madvr. The OK button seems out of window border
Does it have to do with resolution?
The window itself is coming from the media player, madVR just draws the "inside". On my PC the media player shows no "Help" button which means all buttons are visible. In any case, I think it's the media player's job to make sure that all the buttons drawn by the media player fit into the window, so I don't think it's my problem to fix.

Hey madshi can you check your PM? :o
Please use this thread to report problems. You can send me links via PM if that's really necessary, but I'm not providing support via PM. So unless you report your problem in this thread, I'm not going to do anything about it.

Hi Madshi can you plz share some info on your settings running RX460 with Hdr.
IŽam trying since yesterday but not TV will not switch to HDR.
What is your OS? Do you have D3D11 presentation active? And your display set to 10bit? Please post a screenshot of the OSD (Ctrl+J) in fullscreen view. If you're using FSE mode, you probably will have to use your digicam to make a screenshot. Don't attach the image to this thread, please upload it somewhere else and then just link to it here.

Autoswitching to HDR has stopped working in FSE with the latest madvr (0.92.2). This was working fine with the previous release (0.92.1). I have tried updating to the latest LAV nightly and nvidia drivers but no change. It works fine in non FSE mode.
Oh well, my workaround for FSE mode with the latest Nvidia drivers has stopped working. I'll make it work again in the next build.

oddball
27th August 2017, 18:37
Auto switching to HDR on my AMD RX 480 has never ever worked. I have to manually switch to HDR mode in Windows 10 display properties for the display, make sure FSE is disabled and click on the MadVR systray icon. If I hover over the MadVR systray icon it works for 10 seconds then goes back to washed out colors/brightness. Maybe I should make a video demonstrating this. BTW the LG OLED is display 3 in a 3 monitor setup. I will try making it the main display and disabling the other two to see if it makes any difference. I'll get back to you on that.

EDIT: Nope! Made no difference. I disconnected the two non-HDR capable displays and set the LG OLED as default display 1. Same problem. HDR does not auto switch. I have to toggle it in display properties. But when playing back HDR videos they are washed out. I have discovered that this is only in full screen mode though (Note: I don't mean full screen exclusive). If I make it fullscreen it goes washed out again. But if I move the mouse cursor to the bottom of the display so the playback controls appear it pops back into correct HDR mode again. Likewise if I make the player windowed it also plays HDR correctly.

Madshi. does this clue you in at all?

har3inger
27th August 2017, 18:47
Hmm. As of latest update, 10 bit videos on the laptop now have very large spikes in render time every 2-5 seconds. Reverting to the one a couple weeks ago fixes this. This is the one with an HD 8870 slaved onto an intel hd4000.

Oddly enough, the desktop playing the same file is fine. This one has an RX480, with no intel CPU enabled.

FDisk80
27th August 2017, 19:00
Ok, thanks. Both crash reports are basically identical. Will see what I can do with them.


D3D11 DXVA doesn't crash anymore with v0.92.2
But now the video freezes for about 3 seconds each time there is a switch between full screen and windowed mode with refresh rate change. Than the video continues normally.

This freeze only happens with D3D11 Native mode.
If I select a hardware device and use D3D11 Copy Back the 3 second freeze goes away.

Or does it just kicks out of D3D11 DXVA mode when I manually select a hardware device?

LAV does say "d3d11 cb direct" but OSD doesn't say it.
Native mode does show (DXVA11) in OSD.

AngelGraves13
27th August 2017, 19:04
Thanks for the quick bug fix release. Everything is working fine on my end now. No more crashes or lockups of the media player with DX11 decoding.

mickeekung
27th August 2017, 19:09
Can't play video when chroma upscaling NNEDI3 activated. Error detected also when try to change to NNEDI3.

https://www.youtube.com/watch?v=hILLamChO8I