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

pankov
4th July 2010, 20:51
madVR lets the decoder run faster than it normally does. So the decoder might be confused. Not sure exactly if that influences the graph's "playback position". If so, there's not much I can do about it, or else the whole queue logic would not work.

How do you know that ZP does not create a 2nd EVR instance, as well?

So the problem only occurs when using seamless playback with playlists?
I found what's causing the problem. It's an option "seamless playback" which is supposed to work only in VMR9 but obviously is used on madVR too ... but not on EVR and that made me think it's madVR's fault.
Sorry!
I knew that ZP didn't create a second EVR instance because it didn't open the second file while playing the first when using EVR. I used Porcess Explorer's lower pane view and watched the opened file handles. With EVR it closes the handle to the first file and then opens a handle to the second one. With madVR ... and VMR9 ... it is opening the second handle a few seconds before closing the first one.
I've reported the problem at the ZP's forum and I hope it will be fixed on their side ... at least they should make it clear that it's not only VMR9 that get's this behavior. In the meantime it will be nice if you can fix it on your side even though it's not a big issue right now that I know how to turn it off.


It's only for informational purposes. madVR strictly only uses the self-calculated display refresh rate information (first line in the OSD).
OK, that's a relieve.

Now I found another incompatibility/issue with ZoomPlayer:
As you can see in the attached screenshots there are a few missing values in the Media info window when madVR is used. If I use EVR, VMR9, Haali or Overlay mixer everything is OK. I'm sure madVR has the values for these fields but it simply doesn't expose them in the way other renderers do.
It's not a big issue but I think it needs only a small fix and we'll have all the info in ZP.
http://img818.imageshack.us/img818/7466/mediainfoevr.th.png (http://img818.imageshack.us/i/mediainfoevr.png/)http://img171.imageshack.us/img171/115/mediainfomadvr.th.png (http://img171.imageshack.us/i/mediainfomadvr.png/)

janos666
5th July 2010, 00:46
There are more demanding algorithms I'm planning for future versions (don't ask me what kind of algorithms and when)

This would be a suggestion (or more like an idea), not a question. :rolleyes:

Did you ever consider to implement some kind of motion analysis based frame interpolation for 60Hz displays with 23,976 fps movies?

I have played with MVTools and I found it useless but I have to use the simplest methods with a Q6600@3.6Ghz and a GPU is ~10 times faster than a CPU (with parallel operations). And I want to do some smarter thing than making a lot of interpolated frames.
I would like to make six interpolated frames only, spaced equally between the original frames. As much as it can be equable when you have 6 frames to place them in 23 gaps but the choice gaps can float.

It is only an idea. I could never test it. I can't predict the positive or negative effects either...

pankov
5th July 2010, 01:11
madshi,
this night I've been watching some episodes of 24 (I know I'm late, but I was saving it for good weekend marathon ;) ) and I had a lot of stutter which was not indicated as dropped or delayed frames in the OSD. Just as when I was about to give up on madVR for the night I noticed something strange in the OSD - my present times were through the roof while I was sure I've seen them in <1ms range. As you can see from the attached screenshots I get totally different results for the same file with the same madVR settings and the one with >20ms present times is the one that stutters every 10 or so seconds.
This made me do some testing and I found a way to reproduce it and a way to fix it. If start the playback and continue watching I get bad times but if I quickly reload the same file everything is fine
:confused:
I made some log files and I hope you'll be able to find the reason in them. If not I'm pretty sure I can reproduce it so if you want me I can do more tests.

two log files:
http://www.mediafire.com/?nmejgjajkjo

screnshots:
http://img171.imageshack.us/img171/559/settingsn.th.png (http://img171.imageshack.us/i/settingsn.png/) http://img101.imageshack.us/img101/1711/badtimes.th.png (http://img101.imageshack.us/i/badtimes.png/) http://img641.imageshack.us/img641/4427/goodtimesj.th.png (http://img641.imageshack.us/i/goodtimesj.png/)

Edit:
After I posted the problem I remembered that someone here in the forum said that those <1ms times are fake reports from Aero which made me think what if I stop using "aero" timing mode and go back to "normal". I'm happy to report that this fixed it ... or at least I'm not able to reproduce those high present time values. Now I get ~6ms present times which lead to a perfectly smooth 40 minutes of playback.
So the question now is: what does "aero" mode do different from "normal" mode and that's not working every time?

namaiki
5th July 2010, 04:30
Re:I'm not quite sure what to say. I think that for MadVR 0.18 and newer, ~24fps on ~60Hz seems a lot more juddery than before (0.17).

Weird. Then I don't know for sure why v0.17 would work better for you than newer builds. Maybe it's the frame drop/delay logic. I plan to improve that a bit in a future version. So there is still some hope to get playback smoothness back to v0.17 levels for you. Seems that you are the only one having best results with v0.17, though. Most other people seem to prefer v0.18 or v0.21.

Yeah, I noticed that I was the only one who seems to prefer v0.17, but v0.18 is certainly more juddery for me. This is only for ~24fps@60Hz. ~30fps@60Hz is perfectly smooth on the newer releases on Aero timing for Intel card (screen is ~61.8Hz) and normal/high for the nvidia card (screen is ~59.6Hz). Both report Aero as 60Hz, as far as I can tell.

Porsche_fan
5th July 2010, 09:24
Madshi, I have been wanting to use your renderer for a while but my HTPC wouldn’t support it. I was hoping maybe to get yours and possibly other forum member’s advice on how to best allocate my limited budget for a new HTPC.

I have been upscaling dvd’s using MPC HC and ffdshow through VGA (1280x1024) to my 50” plasma. I want to upgrade my current HP core 2 duo with integrated graphics to either a i5 or i7 with a dedicated video card, allowing 1920x1080 resolutions through HDMI.

I tend to use 3 ffdshow filters, resize lanczos2 to naïve screen resolution, unsharp mask on the resized image, and occasionally avisynth filters in realtime like SeeSaw too. I will be using these filters on DVD’s, 720p/1080p website based VC-1/h.264 content and Blu-ray eventually…I won’t use the computer for gaming btw.

As far as I can tell ffdshow filters and decoding aren’t done on the graphics card unless through DXVA. If I understand correctly, DXVA allows the video card to decode but wouldn’t allow my other ffdshow to be used. Therefore, I wouldn’t be interested in using DXVA.

I am interested in obtaining the highest quality video image. However, I’m not really sure how a dedicated graphics card would function with my video decoding and filters by ffdshow or how a dedicated graphics card would affect the video’s image quality.

It seems to me, most of the work is done by the CPU and very little by a GPU. Therefore, I see little benefit spending a lot of my budget on an expensive graphics card and should instead spend it on a better CPU.

I realize however, I may be missing some important information about how all these components work together. So I was wondering if I understand this correctly and have come to the right decision…to buy a basic graphics card with HDMI out and put the rest towards a better CPU and memory.

One other thing...the latest ATI cards support DirectX 11. How important would this be to renderering in the future and to my HTPC's functions?

I was thinking of buying another HP but any recommendations on manufacturer, CPU, memory or video cards, I would greatly appreciate as well.

Btw, these are the HP graphic cards available listed from least to most expensive. If you have any advice as to which might be best, that would be extremely helpful…

512MB ATI Radeon HD 5450 [DVI, HDMI, VGA adapter]

512MB NVIDIA GeForce 315 [DVI, HDMI, VGA]

1GB ATI Radeon HD 5450 [DVI, HDMI, VGA]

1GB ATI Radeon HD 5570 [DVI,HDMI, DP, VGA adapter]

1GB NVIDIA GeForce GT 220 [DVI, HDMI, VGA]

1GB NVIDIA GeForce GT 320 [DVI, HDMI, VGA]


Thanks in advance for any info and help.

namaiki
5th July 2010, 09:28
Porsche_fan: part of the point of MadVR is to allow the GPU to do the resizing of the video. It has support for a number of resizing algorithms, ie softcubic, lanczos, spline.

Perhaps you could go for:
1GB NVIDIA GeForce GT 320 [DVI, HDMI, VGA]
or
1GB ATI Radeon HD 5570 [DVI,HDMI, DP, VGA adapter]

If you want to be able to drive 1080p with ease.

You will still need a half decent CPU if you want to do post processing, though honestly, postprocessing is something I try to avoid.

ryrynz
5th July 2010, 09:49
Colors are messed up on this vid, link to sample provided.
Colors are fine with EVR.

http://www.fileden.com/files/2006/10/26/319696//sample.wmv

namaiki
5th July 2010, 09:57
http://www.fileden.com/files/2006/10/26/319696/ff7053500k (3).wmv

Seems fine for me even using all MPC-HC's internal filters. What filters are you using, and what are the rest of your system's specs?

cyberbeing
6th July 2010, 00:31
I see the same problem as ryrynz with his sample when using the Windows 7 built-in WMVideo Decoder DMO.

Using FFDshow instead doesn't exhibit the problem.

It appears to be yet another madVR problem with aspect ratio signaling.

Crazy diagonal shifted chroma:
- Connection media type:

Video: YV12 852x480 29.97fps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_YV12 {32315659-0000-0010-8000-00AA00389B71}
formattype: FORMAT_VideoInfo2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 613440
cbFormat: 112

VIDEOINFOHEADER:
rcSource: (0,0)-(852,480)
rcTarget: (0,0)-(852,480)
dwBitRate: 0
dwBitErrorRate: 0
AvgTimePerFrame: 333667

VIDEOINFOHEADER2:
dwInterlaceFlags: 0x00000000
dwCopyProtectFlags: 0x00000000
dwPictAspectRatioX: 852
dwPictAspectRatioY: 480
dwControlFlags: 0x00000000
dwReserved2: 0x00000000

BITMAPINFOHEADER:
biSize: 40
biWidth: 852
biHeight: 480
biPlanes: 1
biBitCount: 12
biCompression: YV12
biSizeImage: 613440
biXPelsPerMeter: 0
biYPelsPerMeter: 0
biClrUsed: 0
biClrImportant: 0

pbFormat:
0000: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0010: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0020: 00 00 00 00 00 00 00 00 63 17 05 00 00 00 00 00 ........c.......
0030: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0040: 00 00 00 00 00 00 00 00 28 00 00 00 54 03 00 00 ........(...T...
0050: e0 01 00 00 01 00 0c 00 59 56 31 32 40 5c 09 00 à.......YV12@\..
0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................



Correct chroma:
- Connection media type:

Video: YV12 864x480 (71:40) 29.97fps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_YV12 {32315659-0000-0010-8000-00AA00389B71}
formattype: FORMAT_VideoInfo2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 622080
cbFormat: 112

VIDEOINFOHEADER:
rcSource: (0,0)-(852,480)
rcTarget: (0,0)-(852,480)
dwBitRate: 0
dwBitErrorRate: 0
AvgTimePerFrame: 333667

VIDEOINFOHEADER2:
dwInterlaceFlags: 0x00000000
dwCopyProtectFlags: 0x00000000
dwPictAspectRatioX: 71
dwPictAspectRatioY: 40
dwControlFlags: 0x00000000
dwReserved2: 0x00000000

BITMAPINFOHEADER:
biSize: 40
biWidth: 864
biHeight: 480
biPlanes: 1
biBitCount: 12
biCompression: YV12
biSizeImage: 622080
biXPelsPerMeter: 0
biYPelsPerMeter: 0
biClrUsed: 0
biClrImportant: 0

pbFormat:
0000: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0010: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0020: 00 00 00 00 00 00 00 00 63 17 05 00 00 00 00 00 ........c.......
0030: 00 00 00 00 00 00 00 00 47 00 00 00 28 00 00 00 ........G...(...
0040: 00 00 00 00 00 00 00 00 28 00 00 00 60 03 00 00 ........(...`...
0050: e0 01 00 00 01 00 0c 00 59 56 31 32 00 7e 09 00 à.......YV12.~..
0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

Mark_A_W
6th July 2010, 03:52
I see the same problem as ryrynz with his sample when using the Windows 7 built-in WMVideo Decoder DMO.

Using FFDshow instead doesn't exhibit the problem.

It appears to be yet another madVR problem with aspect ratio signaling.

Crazy diagonal shifted chroma:
- Connection media type:

Video: YV12 852x480 29.97fps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_YV12 {32315659-0000-0010-8000-00AA00389B71}
formattype: FORMAT_VideoInfo2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 613440
cbFormat: 112

VIDEOINFOHEADER:
rcSource: (0,0)-(852,480)
rcTarget: (0,0)-(852,480)
dwBitRate: 0
dwBitErrorRate: 0
AvgTimePerFrame: 333667

VIDEOINFOHEADER2:
dwInterlaceFlags: 0x00000000
dwCopyProtectFlags: 0x00000000
dwPictAspectRatioX: 852
dwPictAspectRatioY: 480
dwControlFlags: 0x00000000
dwReserved2: 0x00000000

BITMAPINFOHEADER:
biSize: 40
biWidth: 852
biHeight: 480
biPlanes: 1
biBitCount: 12
biCompression: YV12
biSizeImage: 613440
biXPelsPerMeter: 0
biYPelsPerMeter: 0
biClrUsed: 0
biClrImportant: 0

pbFormat:
0000: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0010: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0020: 00 00 00 00 00 00 00 00 63 17 05 00 00 00 00 00 ........c.......
0030: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0040: 00 00 00 00 00 00 00 00 28 00 00 00 54 03 00 00 ........(...T...
0050: e0 01 00 00 01 00 0c 00 59 56 31 32 40 5c 09 00 à.......YV12@\..
0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................



Correct chroma:
- Connection media type:

Video: YV12 864x480 (71:40) 29.97fps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Video {73646976-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_YV12 {32315659-0000-0010-8000-00AA00389B71}
formattype: FORMAT_VideoInfo2 {F72A76A0-EB0A-11D0-ACE4-0000C0CC16BA}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 622080
cbFormat: 112

VIDEOINFOHEADER:
rcSource: (0,0)-(852,480)
rcTarget: (0,0)-(852,480)
dwBitRate: 0
dwBitErrorRate: 0
AvgTimePerFrame: 333667

VIDEOINFOHEADER2:
dwInterlaceFlags: 0x00000000
dwCopyProtectFlags: 0x00000000
dwPictAspectRatioX: 71
dwPictAspectRatioY: 40
dwControlFlags: 0x00000000
dwReserved2: 0x00000000

BITMAPINFOHEADER:
biSize: 40
biWidth: 864
biHeight: 480
biPlanes: 1
biBitCount: 12
biCompression: YV12
biSizeImage: 622080
biXPelsPerMeter: 0
biYPelsPerMeter: 0
biClrUsed: 0
biClrImportant: 0

pbFormat:
0000: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0010: 00 00 00 00 00 00 00 00 54 03 00 00 e0 01 00 00 ........T...à...
0020: 00 00 00 00 00 00 00 00 63 17 05 00 00 00 00 00 ........c.......
0030: 00 00 00 00 00 00 00 00 47 00 00 00 28 00 00 00 ........G...(...
0040: 00 00 00 00 00 00 00 00 28 00 00 00 60 03 00 00 ........(...`...
0050: e0 01 00 00 01 00 0c 00 59 56 31 32 00 7e 09 00 à.......YV12.~..
0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................


Does it happen when you use the wmv decoder called though the ffdshow codecs section?

Porsche_fan
6th July 2010, 04:26
Thanks namaiki for your response and the information regarding madVR...really appreciate it.


Perhaps you could go for:
1GB NVIDIA GeForce GT 320 [DVI, HDMI, VGA]
or
1GB ATI Radeon HD 5570 [DVI,HDMI, DP, VGA adapter]

If you want to be able to drive 1080p with ease.

You will still need a half decent CPU if you want to do post processing, though honestly, postprocessing is something I try to avoid.


I am a little confused about this…why would I need a beefier graphic’s card for 1080p content? If I understand correctly, ffdshow doesn’t use the gpu unless it offloads decoding through DXVA. So if I don’t use the gpu to decode, and I can’t use it to postprocess…then the only function I can see that uses the gpu is madVR to resize.

However, all most all 1080p content I've seen is already at 1920x1080 and therefore wouldn’t the graphics card just pass the image along untouched? The only exception I can think of is if the 1080p content was anamorphic 1440x1080.

It could be that most if not all 1080p Blu-ray content is anamorphic but even if it were, from a purely resizing issue (which is all madVR would be using the gpu for) wouldn’t it be more computationally taxing to upscale 480p dvd or 720p content? I realize that bitrates are higher for 1080p vs. 720/420p but isn’t that more a decoding issue?

Also does nVidia or ATI have superior technology when it comes to just video display and not 3D renderering...for example anti-aliasing? All the reviews I have seen seem to suggest ATI over nVidia but mainly they are talking to a gaming audience and don't really address their relative strengths from a video display prospective.

Mark_A_W
6th July 2010, 04:33
Thanks namaiki for your response and the information regarding madVR...really appreciate it.




I am a little confused about this…why would I need a beefier graphic’s card for 1080p content? If I understand correctly, ffdshow doesn’t use the gpu unless it offloads decoding through DXVA. So if I don’t use the gpu to decode, and I can’t use it to postprocess…then the only function I can see that uses the gpu is madVR to resize.

However, all most all 1080p content I've seen is already at 1920x1080 and therefore wouldn’t the graphics card just pass the image along untouched? The only exception I can think of is if the 1080p content was anamorphic 1440x1080.

It could be that most if not all 1080p Blu-ray content is anamorphic but even if it were, from a purely resizing issue (which is all madVR would be using the gpu for) wouldn’t it be more computationally taxing to upscale 480p dvd or 720p content? I realize that bitrates are higher for 1080p vs. 720/420p but isn’t that more a decoding issue?

Also does nVidia or ATI have superior technology when it comes to just video display and not 3D renderering...for example anti-aliasing? All the reviews I have seen seem to suggest ATI over nVidia but mainly they are talking to a gaming audience and don't really address their relative strengths from a video display prospective.


Can you start a new thread on this guys?


(But even with 1920x1080 at 1920x1080 you still need to upscale the chroma.)

madshi
6th July 2010, 08:11
I planned on double-checking at the end but it seems that CTRL+R doesn't work if you don't have the OSD enabled...could you please allow it to reset the rejected frames numbers even if the OSD isn't being currently shown?
Can do.

Try this: http://www.multiupload.com/HJ5JISVUJB

Are you saying that the sample displayed incorrect AR on your system, even with EVR/EVR-Custom?
And you do have the "Keep Aspect Ratio" option enabled? Perhaps this is specific to Win7 if you're not seeing the problem on XP?
Thanks for the detailed information. Downloads work now. I can't reproduce the problem on my XPSP3 machine, I think it's probably win7 specific. Will try that with win7 later...

I'm not sure, but I think it's the decoder, not the splitter. What I mean is the filter that can be enabled/disabled in the options->internal filters setting dialog of MPC-HC. In the right pane of that window, there's a option named "VC1 (FFmpeg)", but if I enable it, MPC-HC just doesn't play any VC1 video with madVR, although it do with any other renderer. If I disable it, then it works with madVR too. Why?
Which OS are you on? Which splitter are you using?

I found what's causing the problem. It's an option "seamless playback" which is supposed to work only in VMR9 but obviously is used on madVR too ... but not on EVR and that made me think it's madVR's fault.
Sorry!
No problem, good to know.

Now I found another incompatibility/issue with ZoomPlayer:
As you can see in the attached screenshots there are a few missing values in the Media info window when madVR is used.
Probably a missing interface. That doesn't bother me for now. I plan to implement all VMR/EVR interfaces sooner or later, then this should be fixed, as well. Might take a while, though.

After I posted the problem I remembered that someone here in the forum said that those <1ms times are fake reports from Aero which made me think what if I stop using "aero" timing mode and go back to "normal". I'm happy to report that this fixed it ... or at least I'm not able to reproduce those high present time values. Now I get ~6ms present times which lead to a perfectly smooth 40 minutes of playback.
So the question now is: what does "aero" mode do different from "normal" mode and that's not working every time?
Hmmmmm... "aero" timing mode always presents at scanline 1, while the "normal" timing mode presents at a later scanline (varying, depending on the queue fullness). Maybe scanline 1 is too early? Maybe it should make it screenHeight / 10 or something like that...

Madshi, I have been wanting to use your renderer for a while but my HTPC wouldn’t support it. I was hoping maybe to get yours and possibly other forum member’s advice on how to best allocate my limited budget for a new HTPC.
That depends very much on which filter combination you ultimately want to end up with. If you plan to use madVR, you need a powerful GPU and a reasonably powerful CPU (powerful enough to do software h264 + VC-1 decoding). If you plan to use ffdshow video processing and not madVR, you need a very powerful CPU and almost any GPU will do. If you want to combine ffdshow video processing with madVR, you will need a reasonably powerful GPU and a very powerful CPU.

My general advice is that if you plan to use madVR, you should get the highest power GPU that you can afford and which fits your thermal requirements. Of course if you're on a budget and plan to use ffdshow's post processing (at least for a while), too, then you may need to compromise somewhere, to get a faster CPU.

I tend to use 3 ffdshow filters, resize lanczos2 to naïve screen resolution, unsharp mask on the resized image, and occasionally avisynth filters in realtime like SeeSaw too. I will be using these filters on DVD’s, 720p/1080p website based VC-1/h.264 content and Blu-ray eventually…
You need to decide...

(1) ... what you plan to use right now.
(2) ... what you plan to use in the future.

Currently madVR does not support unsharp masking, SeeSaw etc. So if you want such algorithms, you'll have to use ffdshow for video processing for now. Maybe madVR will some day do sharpening, too, in that case you can switch to using madVR only. That would lessen the requirements on the CPU power and increase the requirements on the GPU.

As far as I can tell ffdshow filters and decoding aren’t done on the graphics card unless through DXVA. If I understand correctly, DXVA allows the video card to decode but wouldn’t allow my other ffdshow to be used. Therefore, I wouldn’t be interested in using DXVA.
There is a way to use DXVA decoding and still use ffdshow's post processing - but it's a rather bad solution IMHO. So if you want to use ffdshow's post processing, I'd forget about DXVA.

One other thing...the latest ATI cards support DirectX 11. How important would this be to renderering in the future and to my HTPC's functions?
For normal HTPC use, DirectX 11 does not seem to have any use, as far as I can tell. Of course things can always change in the future. However, maybe you want a GPU which can bitstream HD audio formats (e.g. TrueHD)? In that case you can rule out quite a number of older NVidia cards.

I am a little confused about this…why would I need a beefier graphic’s card for 1080p content? If I understand correctly, ffdshow doesn’t use the gpu unless it offloads decoding through DXVA. So if I don’t use the gpu to decode, and I can’t use it to postprocess…then the only function I can see that uses the gpu is madVR to resize.
The higher the movie/display resolution, the more GPU resources madVR needs. And if you want to use potential future madVR algorithms (not implemented yet), you will need a high power GPU, anyway.

It could be that most if not all 1080p Blu-ray content is anamorphic but even if it were, from a purely resizing issue (which is all madVR would be using the gpu for) wouldn’t it be more computationally taxing to upscale 480p dvd or 720p content? I realize that bitrates are higher for 1080p vs. 720/420p but isn’t that more a decoding issue?
Bitrates don't matter for the GPU. But the higher the movie resolution is, the higher the scaling cost for the GPU. And the higher the display resolution is, the higher cost all madVR's processing has. Of course, if you don't scale at all, that reduces GPU power a lot. Blu-Ray HD is never anamorphic, IIRC.

Also does nVidia or ATI have superior technology when it comes to just video display and not 3D renderering...for example anti-aliasing? All the reviews I have seen seem to suggest ATI over nVidia but mainly they are talking to a gaming audience and don't really address their relative strengths from a video display prospective.
All ATI 5xxx cards can do HD audio bitstreaming, while most current NVidia cards can't.

Colors are messed up on this vid, link to sample provided.
Colors are fine with EVR.
Thanks, will have a look at that.

cyberbeing
6th July 2010, 10:10
Does it happen when you use the wmv decoder called though the ffdshow codecs section?

No, it doesn't. Hence why I suspected it was a problem with how madVR was handling the different aspect ratio signaling in the output pins.

__________

Before I forget, I was having a lot of trouble getting anything to playback even somewhat smooth with the ATI 5750 and NEC 20WMGX2 LCD @59.95Hz on Win7. I'm sure it is partly because of me being way to use to my CRT @96Hz and 120Hz, but it still seems like madVR could do much better in this area. Pretty much everything produces horrible stuttering without madVR showing dropped or delayed frames. EVR Cust, even without D3D Fullscreen is much smoother.

The only settings I found somewhat watchable, yet still with little stutters all the time, are the following:

Timing model: Aero
After render: Don't Flush
After last: Don't Flush
After backbuffer: Don't Flush
After present: Flush & Wait Loop

Core i5-750
ATI 5750
Single Monitor 59.95Hz
Win7 x64
Aero ON

cyberlolo
6th July 2010, 11:25
Which OS are you on? Which splitter are you using?

Windows 7 x64, and Haali Media Splitter.

That depends very much on which filter combination you ultimately want to end up with. If you plan to use madVR, you need a powerful GPU and a reasonably powerful CPU (powerful enough to do software h264 + VC-1 decoding). If you plan to use ffdshow video processing and not madVR, you need a very powerful CPU and almost any GPU will do. If you want to combine ffdshow video processing with madVR, you will need a reasonably powerful GPU and a very powerful CPU.

That confuses me a bit. I've got an ATI HD4850 and an i7. I don't use any ffdshow video processing (ffdshow video isn't listed in the filter list of MPC-HC when playing a video), but when watching h264 videos (720p and 1080p with Lanczos4), GPU usage is 0% (says GPU-Z) and CPU is 6-7%.

In the other hand, when I watch VC-1 videos (using Windows decoder, because as I told you, MPC-HC internal VC-1 decoder doesn't work), the GPU usage is about 30%.

Of course, I'm using madVR in both cases (and CoreAVC to decode h264 files). So why my GPU usage is 0% when using madVR without ffdshow video filter in h264 files?

namaiki
6th July 2010, 11:46
^On my 9600M GT, 1280x720x24@1280x800x60, GPU load/memory controller load is ~45%/20%. ~12%/5% GPU usage if no resizing. Aero is ~4/8%.

leeperry
6th July 2010, 12:34
Can do.
OK great! I always execute the following procedure when watching a movie:
-go FS
-seek back to catch the VSYNC fliptime properly(some old superstition, not sure if it's REALLY needed?)
-CTRL+J / CTRL+R / CTRL+J

and be amazed by the über-smoothness for 90/120 mins straight :eek:

I always check back the number of dropped frames at the end, and these days they're always 0/0. I guess polishing my timings to 96.000Hz and resetting Reclock's timings have really allowed to unleash mVR's true potential :cool:

I'm kinda scared to reboot at this point as this might mess w/ Reclock's timings...but it'll happen soon enough, and nothing a timings reset couldn't fix anyway. I don't have anymore excuse to not try 48Hz on the pj :p

Mark_A_W
6th July 2010, 13:28
I guess polishing my timings to 96.000Hz and resetting Reclock's timings have really allowed to unleash mVR's true potential


No, because you should be using 95.904hz. The framerate on the disc, for better or worse, is 23.976.

Or, as James says, it doesn't really matter with Reclock - you only have to be close enough, reclock takes care of the rest.

leeperry
6th July 2010, 15:50
James has always been clear that there's only one resampling pass taking place, but 2 adaptations happening in Reclock for 23.976 material: the first speeds up to 24.000fps(as the Reclock panel says "CINEMA adaptation: media speed changed to 24.000 fps", 24fps being the genuine "cinema" frame rate), and the second makes it match a perfect multiple of the refresh rate.

Anyway, maybe the GPU pixel clock frequency I was using was the problem, or maybe I should have reset Reclock's timings after rolling audio interfaces/players/mVR builds...all that matters is that mVR+PotP haven't dropped a single frame in the last half-dozen movies I've watched...and I really would love it to stay like that http://forum-images.hardware.fr/images/perso/ayuluna.gif
That's mVR's OSD after 100 mins: http://thumbnails32.imagebam.com/8742/a6a7c987415008.jpg (http://www.imagebam.com/image/a6a7c987415008) using those setttings: http://thumbnails16.imagebam.com/8742/ae2fa687415010.jpg (http://www.imagebam.com/image/ae2fa687415010)

buletti
6th July 2010, 19:00
Currently madVR does not support unsharp masking, SeeSaw etc. So if you want such algorithms, you'll have to use ffdshow for video processing for now. Maybe madVR will some day do sharpening, too, in that case you can switch to using madVR only. That would lessen the requirements on the CPU power and increase the requirements on the GPU.


I'm really looking forward to the day MadVR can do sharpening via Didee's avisynth functions (i.e. limitedsharpenfaster and/or seesaw).
Then after scaling, dithering and sharpening the only postporessing missing would be denoising. Maybe we can make Madshi squish Fizick's MvDegrain into MadVR too... :D

leeperry
6th July 2010, 19:34
Maybe we can make Madshi squish Fizick's MvDegrain into MadVR too
I'd rather have GrainFactory3() tbh, especially w/ the recent bugfix from foxyshadis that allows fixed grain sequences..but humm, having a GPU accelerated Avisynth compiler sounds a bit optimistic :D

but yes, LSF is the best sharpener you can find IMHO...having it in mVR would be really neat. Its nicest feature is that it sharpens up motion blur http://forum.slysoft.com/images/smilies/agreed.gif

Mark_A_W
6th July 2010, 23:09
""CINEMA adaptation: media speed changed to 24.000 fps""

That is purely cosmetic. Look at the actual audio clock number, mine says something very close to 192,000hz, not 192,192hz, which would be expected if it was forcing it to 24fps.

DigitalLF
7th July 2010, 21:46
MadShi for your future use you said that a 5750 might be the one.. is there a reason why you prefer ATI before NVIDIA? because i am in need of a new card and its mostly for future versions of MadVR.. and yes i know you said that buy the one that gives the most performance that my wallet can take..

sorry for my english..

madshi
7th July 2010, 22:31
I was having a lot of trouble getting anything to playback even somewhat smooth with the ATI 5750 and NEC 20WMGX2 LCD @59.95Hz on Win7. I'm sure it is partly because of me being way to use to my CRT @96Hz and 120Hz, but it still seems like madVR could do much better in this area. Pretty much everything produces horrible stuttering without madVR showing dropped or delayed frames. EVR Cust, even without D3D Fullscreen is much smoother.

The only settings I found somewhat watchable, yet still with little stutters all the time, are the following:

Timing model: Aero
After render: Don't Flush
After last: Don't Flush
After backbuffer: Don't Flush
After present: Flush & Wait Loop
Hmmmm... I guess we're talking about 24Hz content on 60Hz monitor, right? So you should see the typical 3:2 judder. But if EVR-Custom is smoother then it seems that madVR produces more judder than just that. What does the madVR OSD say about the composition rate and display refresh rate? Are both correct?

A log file may help.

BTW, again you're using funny flush settings. Nobody else is using settings like that. I mean it's possible that these settings really work best for you, but it's weird that nobody else is sharing your impressions in this area. So far I thought it would be due to your special setup with high refresh rates and all. But win7 Aero with 60Hz is pretty normal. Are you sure that the default flush settings don't work better? I've had several cases where people reported stuttering when using Aero, and got rid of it by using flushing (either with or without waiting) after the last render step.

That confuses me a bit. I've got an ATI HD4850 and an i7. I don't use any ffdshow video processing (ffdshow video isn't listed in the filter list of MPC-HC when playing a video), but when watching h264 videos (720p and 1080p with Lanczos4), GPU usage is 0% (says GPU-Z) and CPU is 6-7%.

In the other hand, when I watch VC-1 videos (using Windows decoder, because as I told you, MPC-HC internal VC-1 decoder doesn't work), the GPU usage is about 30%.

Of course, I'm using madVR in both cases (and CoreAVC to decode h264 files). So why my GPU usage is 0% when using madVR without ffdshow video filter in h264 files?
Don't know, sounds weird to me. GPU usage of 0% is not normal when using madVR. Maybe the measurement doesn't work in this situation for whatever weird reason? Or maybe madVR isn't used at all with that filter setup? Sometimes MPC HC changes renderers behind our back, e.g. if the decoder doesn't output YV12.

MadShi for your future use you said that a 5750 might be the one.. is there a reason why you prefer ATI before NVIDIA? because i am in need of a new card and its mostly for future versions of MadVR.. and yes i know you said that buy the one that gives the most performance that my wallet can take..
I prefer ATI right now because:

(1) The "power per watt" ratio is clearly better, which is very important for me (because HTPCs are usually thermally limited).

(2) All 5xxx ATI cards can do HD audio bitstreaming. Only the high-end NVidia cards can do that, which are running very hot.

(3) Unlike most games madVR uses *unfiltered* texture reads. According to Anandtech, ATI cards are twice as fast with unfiltered texture reads compared to filtered texture reads. With older NVidia cards unfiltered texture reads are not any faster than filtered texture reads. Only with the new Fermi cards NVidia has cought up with ATI in this department. That should give ATI cards quite an advantage over NVidia cards, when using madVR.

I like the 5750 because it has a very good performance per watt ratio. Much better than anything NVidia currently has to offer.

DigitalLF
7th July 2010, 22:59
I prefer ATI right now because:

(1) The "power per watt" ratio is clearly better, which is very important for me (because HTPCs are usually thermally limited).

(2) All 5xxx ATI cards can do HD audio bitstreaming. Only the high-end NVidia cards can do that, which are running very hot.

(3) Unlike most games madVR uses *unfiltered* texture reads. According to Anandtech, ATI cards are twice as fast with unfiltered texture reads compared to filtered texture reads. With older NVidia cards unfiltered texture reads are not any faster than filtered texture reads. Only with the new Fermi cards NVidia has cought up with ATI in this department. That should give ATI cards quite an advantage over NVidia cards, when using madVR.

I like the 5750 because it has a very good performance per watt ratio. Much better than anything NVidia currently has to offer.

"power per watt" is importent to me to. so il think i will buy a 5750 tomorrow.. but hd audio bitstreaming does not interest me for at least a few years... (got a perfectly good high-end 2.2 (L, R, L_sub, R_sub) amplifyer.


is there any disadvantage with a ATI card?


thank you for your help.

LloydA
7th July 2010, 23:03
I like the 5750 because it has a very good performance per watt ratio.

You mentioned before that your GPU is heatpipe-cooled. How exactly did you accomplish that?

cyberlolo
7th July 2010, 23:18
Don't know, sounds weird to me. GPU usage of 0% is not normal when using madVR. Maybe the measurement doesn't work in this situation for whatever weird reason? Or maybe madVR isn't used at all with that filter setup? Sometimes MPC HC changes renderers behind our back, e.g. if the decoder doesn't output YV12.

Nope, I think madVR is running. If I press Ctrl+J, it shows madVR's OSD, and if I change TV Levels to PC Levels in madVR settings dialog, I can pefectly see the change in the video black level. This does mean that madVR is running, doesn't it?

Example:

http://www.gandario.com/cal_img/madVR-GPU0.jpg

LloydA
7th July 2010, 23:29
Same here, 0% even though madVR is running. But I fiddled with PowerPlay settings (via Radeon BIOS Editor), reverting to stock settings shows proper GPU utilization.

cyberbeing
7th July 2010, 23:37
Hmmmm... I guess we're talking about 24Hz content on 60Hz monitor, right? So you should see the typical 3:2 judder. But if EVR-Custom is smoother then it seems that madVR produces more judder than just that. What does the madVR OSD say about the composition rate and display refresh rate? Are both correct?

A log file may help.

BTW, again you're using funny flush settings. Nobody else is using settings like that. I mean it's possible that these settings really work best for you, but it's weird that nobody else is sharing your impressions in this area. So far I thought it would be due to your special setup with high refresh rates and all. But win7 Aero with 60Hz is pretty normal. Are you sure that the default flush settings don't work better? I've had several cases where people reported stuttering when using Aero, and got rid of it by using flushing (either with or without waiting) after the last render step.
Yes, 24000/1001 content on LCD monitor @59.95Hz.

With 'Reset to optimal renderer settings" set in MPC-HC, EVR-Custom (aero disabled) seemed to do better than madVR (aero enabled), while EVR-Sync 'present at nearest' (aero disabled) was about the same as madVR (aero enabled). As I mentioned previously, the ATI 5750 does better with Aero enabled with madVR. When Aero is disabled with madVR, stuttering gets much worse, with no combination of settings helping. It was the exact opposite with NVIDIA cards I tested with Aero disabled always being better.

Composition Rate: 60Hz
Refresh Rate: 59.95Hz

I'll try to get you a log file later.

As for the funny flush settings, I suspect some people aren't really testing smoothness by watching panning scenes very closely (I sit at 6 inches away when examining scenes with my computer monitor) over and over watching for stutters with various settings. Many settings feel smooth, until you get to panning scenes which show obvious stutters. You really have to focus on a single high contrast edge to detect any tiny stutters. Watching the entire frame at once only allows you to easily see large stutters.

The first 60 seconds of Avatar has a vertical (forward moving) panning scene which makes stuttering quite obvious with poor settings. The scene with the moving spaceship and slow pan in space from 00:02:10 to 00:02:40 is also helpful for detecting stuttering. I've also been using the Evangelion 2.22 horizontal pan from 00:05:52 to 00:06:11 and random pans from 11:20 to 12:10 to help detect stuttering.

As for GPU usage reporting, GPU-Z seems broken in detecting GPU usage with Cat 10.6. I fired up Everest Ultimate and it was still able to detect GPU usage just fine.

cyberlolo
7th July 2010, 23:38
Same here, 0% even though madVR is running. But I fiddled with PowerPlay settings (via Radeon BIOS Editor), reverting to stock settings shows proper GPU utilization.

I didn't do anything with PowerPlay, so why I get 0% with madVR and h264/AVC files, and about 25-30% GPU usage with VC1 files? Maybe is a decoder issue, and CoreAVC manages evrything on the CPU? :confused:

dansrfe
8th July 2010, 00:47
Slight n00b question but even though everything is processed and shown as in the original file, isn't it eventually converted to 8-bit RGB by the Graphics Card driver? Also I don't quite understand the use of 3DLUT. Thanks madshi! :)

Mark_A_W
8th July 2010, 01:11
As for the funny flush settings, I suspect some people aren't really testing smoothness by watching panning scenes very closely (I sit at 6 inches away when examining scenes with my computer monitor) over and over watching for stutters with various settings. Many settings feel smooth, until you get to panning scenes which show obvious stutters. You really have to focus on a single high contrast edge to detect any tiny stutters. Watching the entire frame at once only allows you to easily see large stutters.

The first 60 seconds of Avatar has a vertical (forward moving) panning scene which makes stuttering quite obvious with poor settings. The scene with the moving spaceship and slow pan in space from 00:02:10 to 00:02:40 is also helpful for detecting stuttering. I've also been using the Evangelion 2.22 horizontal pan from 00:05:52 to 00:06:11 and random pans from 11:20 to 12:10 to help detect stuttering.




This is basically what I do. Stare endlessly at panning scenes at close range with my 24" CRT monitor.

However I also have the reclock tearing test active, which really shows any little jumps. (Although background motion behind the tearing test can confuse your mind.)


And as an aside, I noticed two distinct glitches in the Avatar opening scene pan, on two separate viewings AT THE CINEMA (on digital 3D projectors). That scene is smoother at home for me.


And you really need to get a multisync display!! :)

Mark_A_W
8th July 2010, 01:16
is there any disadvantage with a ATI card?



With a 5xxx series ATi card it is difficult to create a custom resolution.


With a 4xxx ATI card you can use Powerstrip.


Nvidia has custom res's in the drivers.


If you use a standard digital display (like my Plasma) this doesn't matter.

But if you have a non-standard display, like my CRT projector, it is critical (run 1080i at 95.904hz for smooth pans, no flicker, and the full 1080p frame is shown (twice actually)).

foxyshadis
8th July 2010, 07:41
Nvidia has custom res's in the drivers.

It can be difficult to keep the custom res from resetting if your monitor/TV claims it doesn't support it, though, especially over DVI. I went to ATI when I upgraded my HTPC after that experience, DVI and HDMI both worked out of the box on my off-brand TV.


Back on topic, madshi, I investigated that message about macrovision a bit. It seems to happen on certain DVD menus (always if you leave the FBI warning in), but if you use another renderer to skip it and get to the movie, it works. Something in MPC's DVD parsing includes code to detect macrovision that only executes for external renderers, like Haali and MadVR. I suspect that it's more of a MPC bug, but it's been around for years and no one is inclined to fix it.

madshi
8th July 2010, 08:09
is there any disadvantage with a ATI card?
I remember some things:

(1) Some people say ATI driver quality is lower compared to NVidia.
(2) On some OSs ATI doesn't always offer a 23.976 mode, but only 24.000. I'm not sure if that applies to new GPUs, too, or just to my old HD 3850.
(3) A year ago I found that when using ATI's 24.000 mode, my old Sony projector didn't resolve a line test pattern properly. It looked like ATI would output interlaced, but the projector did say 24p, IIRC. Switching the card to 1080p60 and then using PowerStrip to change that to 1080p24 fixed that problem for me. It's possible that this problem was fixed with a newer driver version, don't know.
(4) Some people (leeperry, IIRC) report that the image is sharper for them when using an NVidia card. Don't know why. Maybe it's the same as (3).

:(

You mentioned before that your GPU is heatpipe-cooled. How exactly did you accomplish that?
I'm using this (rather expensive) case which has a quite clever heatpipe system:

http://www.hfx.at/index.php?option=com_content&view=article&id=135:hfxr-mini-home-server-&catid=51:heatsink-cases&Itemid=1

Look at the monstruous external coolers at the sides. The CPU, northbrige and GPU are all connected to these external coolers via heatpipes. You need to do a lot of manual work to connect this all properly etc.

Nope, I think madVR is running. If I press Ctrl+J, it shows madVR's OSD
Yes, then madVR is definitely running.

With 'Reset to optimal renderer settings" set in MPC-HC, EVR-Custom (aero disabled) seemed to do better than madVR (aero enabled), while EVR-Sync 'present at nearest' (aero disabled) was about the same as madVR (aero enabled). As I mentioned previously, the ATI 5750 does better with Aero enabled with madVR. When Aero is disabled with madVR, stuttering gets much worse, with no combination of settings helping. It was the exact opposite with NVIDIA cards I tested with Aero disabled always being better.
That's really weird. I would love to check out the situation myself on your PC. Unfortunately it's not possible remotely... :( No delayed/dropped frames with Aero disabled, either?

Let's wait until I get fullscreen exclusive mode implemented. If the problem then still exists, I may have to revisit/improve the frame presentation logic. If the problem goes away when using fullscreen exclusive mode, then it's caused by problems with windowed rendering.

Slight n00b question but even though everything is processed and shown as in the original file, isn't it eventually converted to 8-bit RGB by the Graphics Card driver?
madVR itself converts everything to 8bit RGB. This way I can make sure that all processing is done properly. The GPU driver does not know that madVR is a video renderer. The GPU driver thinks a game is running, which renders in 8bit RGB. The GPU driver does not even know that some of the data is actually YCbCr 4:2:0.

Also I don't quite understand the use of 3DLUT.
The 3DLUT feature is mainly for people who have their own meter, so they can do a "perfect" display calibration (gamma and gamut correction).

madshi
8th July 2010, 08:11
I investigated that message about macrovision a bit. It seems to happen on certain DVD menus (always if you leave the FBI warning in), but if you use another renderer to skip it and get to the movie, it works. Something in MPC's DVD parsing includes code to detect macrovision that only executes for external renderers, like Haali and MadVR. I suspect that it's more of a MPC bug, but it's been around for years and no one is inclined to fix it.
Thanks.

I'm not sure if it's a bug in MPC HC, though. I rather think that the Microsoft DVD menu navigator filter is responsible. It checks some things. I've been able to make it work in XP (it didn't work there, initially, either). But in Vista and Windows 7 it still doesn't work. Once you started movie playback, the situation is different because then the Microsoft DVD menu navigator is probably not running, anymore.

droc
8th July 2010, 09:32
Hi, Madshi maybe stupid question.
Why MadVR not working with DXVA (Ati), like mpc-hc dxva with EVR?
Why Cyberlink decoder also not working with madvr(green screen)

cyberlolo
8th July 2010, 10:00
Yes, then madVR is definitely running.

If that's so, how is it possible that my GPU usage is 0%? Maybe some of the madVR's features just aren't working but others do? Is that possible? Maybe this is happening to more people but they don't know it because they aren't measuring GPU usage while using madVR... :confused::confused:

cyberbeing
8th July 2010, 10:01
Let's wait until I get fullscreen exclusive mode implemented. If the problem then still exists, I may have to revisit/improve the frame presentation logic. If the problem goes away when using fullscreen exclusive mode, then it's caused by problems with windowed rendering.
Yeah, I hope fullscreen exclusive mode fixes it as well. Though it does seems like you may need to eventually code something more exotic for non-multiple refresh rates. Just please keep in mind that your current timing and present logic works excellent with exact-multiple refresh rates, so I wouldn't want that get worse, just to improve non-multiple refresh rates.

Once you start working on fullscreen exclusive mode, how long do you expect it will take to complete? Do you think we'll have something by December this year or is that too soon?

Also, is all this free time you found to work on madVR recently going to last, or do you expect to once again become really busy in near future? Is your busy time a seasonal thing?

Neeto
8th July 2010, 11:39
Originally Posted by dansrfe
Slight n00b question but even though everything is processed and shown as in the original file, isn't it eventually converted to 8-bit RGB by the Graphics Card driver?
madVR itself converts everything to 8bit RGB. This way I can make sure that all processing is done properly. The GPU driver does not know that madVR is a video renderer. The GPU driver thinks a game is running, which renders in 8bit RGB. The GPU driver does not even know that some of the data is actually YCbCr 4:2:0.


The 3DLUT feature is mainly for people who have their own meter, so they can do a "perfect" display calibration (gamma and gamut correction).

The ATI 5000 "evergreen" series GPUs "Display pipeline supports xvYCC gamut and 12-bit per component output via HDMI" according to
http://en.wikipedia.org/wiki/Evergreen_(GPU_family)

Is this useful to us? most likely not as BluRay etc done't support the wider gamut - right?

fps
8th July 2010, 13:01
Hi, Madshi maybe stupid question.
Why MadVR not working with DXVA (Ati), like mpc-hc dxva with EVR?
Why Cyberlink decoder also not working with madvr(green screen)
From the first post of the topic:
- hardware accelerated video decoding (DXVA) is currently not supported

IIRC it is also not a priority of madshi to support DXVA, if it is even possible. In addition to that you would need a pretty powerfull GPU, way faster than currently needed for madVR.

Mark_A_W
8th July 2010, 14:17
madshi

The "no MMCMMS" version seems pretty good with "v0.18" settings.

The "no present stats" version I'm not so sure about.


I checked again, and v0.18 = good, and v0.21 = not good (no matter what settings I think).

droc
8th July 2010, 14:19
From the first post of the topic:
- hardware accelerated video decoding (DXVA) is currently not supported

IIRC it is also not a priority of madshi to support DXVA, if it is even possible. In addition to that you would need a pretty powerfull GPU, way faster than currently needed for madVR.

Thanks :)

Mark_A_W
8th July 2010, 14:23
Arrgh, no, just had a crappy patch with "no MMSMMS".

madshi
8th July 2010, 14:38
If that's so, how is it possible that my GPU usage is 0%?
cyberbeing said: "As for GPU usage reporting, GPU-Z seems broken in detecting GPU usage with Cat 10.6. I fired up Everest Ultimate and it was still able to detect GPU usage just fine."

Once you start working on fullscreen exclusive mode, how long do you expect it will take to complete? Do you think we'll have something by December this year or is that too soon?
Should be sooner than that.

Also, is all this free time you found to work on madVR recently going to last, or do you expect to once again become really busy in near future? Is your busy time a seasonal thing?
It's not a seasonal thing. Can't say any more than that. I can't look into the future, sadly.

The ATI 5000 "evergreen" series GPUs "Display pipeline supports xvYCC gamut and 12-bit per component output via HDMI" according to
http://en.wikipedia.org/wiki/Evergreen_(GPU_family)

Is this useful to us? most likely not as BluRay etc done't support the wider gamut - right?
xvYCC is not useful, because there's no content available with such a wide gamut. 12-bit per component could be slightly beneficial, but Microsoft has this implement in a bad way. madVR is only ever going to use 8bit (per component) RGB output, or maybe 10bit RGB output, but not more. Unless Microsoft improves DirectX in a future Windows version.

The "no MMCMMS" version seems pretty good with "v0.18" settings.

The "no present stats" version I'm not so sure about.

I checked again, and v0.18 = good, and v0.21 = not good (no matter what settings I think).
Arrgh, no, just had a crappy patch with "no MMSMMS".
Well, you once had a crappy patch with v0.18, too. Could you please double check? This is really important: If the MM... version works as well as v0.18, then I can implement that change for v0.22. So here is your chance to get v0.22 back to v0.18 smoothness levels with your setup!

Mark_A_W
8th July 2010, 14:43
Hang on I'll test once more before I go to bed...

leeperry
8th July 2010, 14:54
Unlike most games madVR uses *unfiltered* texture reads. According to Anandtech, ATI cards are twice as fast with unfiltered texture reads compared to filtered texture reads. With older NVidia cards unfiltered texture reads are not any faster than filtered texture reads. Only with the new Fermi cards NVidia has caught up with ATI in this department. That should give ATI cards quite an advantage over NVidia cards, when using madVR.
interesting! but we're talking about extremely large figures here...I think I read that in a game like Crysis every single pixel would get through at least 100 PS scripts...a far cry(pun intended) from mVR?

my 8800GS can provide 25.2 GTexel/s, apparently the more TMU the higher the texture fillrate: http://www.google.com/search?hl=en&source=hp&q=GTexel%2Fs
HD4850 has 20.8 GTexel/s [..] the 8800GTS G92 has 41.6 GTexel/s
if you don't plan on adding CSI super-resolution in realtime(as discussed here: http://www.nvidia.com/object/io_1237892916378.html), I think my 8800GS is already way overkill for video playback :o
Some people (leeperry, IIRC) report that the image is sharper for them when using an NVidia card.
It's a complicated matter...when I got my HC3100 pj, the picture was so blurry w/ my 8600GT that I thought the pj was faulty?! I upgraded to an HD2600XT, and the blacks seemed much deeper(levels conversion were fine at all times) and the picture had a much more pronounced "pop effect" on the pj, also the picture on my CRT was much clearer than on the 8600GT :eek:

I then upgraded to an HD3850, and the PQ remained unchanged..but at some point I got so sick and tired of their worthless drivers and buggy pstrip that I decided to run a test on a GF9500 and wow, oh wow! the picture on my CRT was far clearer and the projector was also much sharper and vivid(I'm using an 8ft THX Ultra800 Monster DVI/HDMI cable)...maybe due to their TMDS transmitters? there's been a long review here, all TMDS transmitters are not born equal: http://translate.google.com/translate?u=http%3A%2F%2Fwww.erenumerique.fr%2Fqualite_des_connexions_dvi_nvidia_et_ati_assurent_ils_-art-820-9.html&sl=fr&tl=en&hl=&ie=UTF-8

I then advised friends who were using HD3850/70 cards on HC1100/HC3100 pj's and DLP RPTV to get a Gainward 9600GSO(rebadged 8800GS) that was available locally for cheap, and they all confirmed that the PQ cleared up by quite a bit....as usual, there's no hard rule but nvidia and ati cards don't output the same PQ IMHO, depending on their generations as well apparently.

One thing I can definitely confirm is that the jitter in HR was much tighter on the 9600GSO than it's ever been on the 2600XT/3850...I'd even dare saying twice better, but it might have been due to pstrip not using use the proper PLL coeffs(being a dirty hack at heart).
It can be difficult to keep the custom res from resetting if your monitor/TV claims it doesn't support it, though, especially over DVI.
It's a bug in the nvidia drivers I think, after each new drivers update the custom res will vanish after the first reboot...but afterwards they're always remembered IME.

The problem I see w/ pstrip is that it's a dirty hack that's been reverse engineered and adds more bloat onto your system, nvidia provides native support(w/o having any resident apps running)...and it can be as accurate as pstrip if you spend enough time on it, I currently use 96.000Hz and 89.910Hz.

Mark_A_W
8th July 2010, 14:57
madshi

"madVR (no MMCSS).ax" with v0.18 just played for 10 mins with no delayed or dropped frames.

Seems good. I'll do a longer test tomorrow night.


Do you want me to test "no present stats" more thoroughly as well?

Mark_A_W
8th July 2010, 14:59
I'm sure the Monster DVI cable is what really makes the difference leeperry.

madshi
8th July 2010, 15:03
"madVR (no MMCSS).ax" with v0.18 just played for 10 mins with no delayed or dropped frames.

Seems good. I'll do a longer test tomorrow night.

Do you want me to test "no present stats" more thoroughly as well?
If the MMCSS version works for you as well as v0.18 does, and if the normal v0.21 definitely runs worse, then there's no need to test the "no present stats" build.