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

Mangix
18th October 2011, 12:50
nvidia is better i think. hd audio works flawlessly on my gts 450. lav cuvid is also a bonus :)

edit: wicked timing!

hi guys
i have to change my ati 4650 card to get hd audio so am looking for advice on the best compatability with MadVR
i am looking at either another ati 6xxx or an nvidia gt 430
i do get 23.977 at the moment with the ati but have been told the nvidia with cuda is better

advice appreciated before i pull the trigger

thanks

madshi
18th October 2011, 12:51
hi madshi, I remember you complaining about some buggy behaviors in the nvidia drivers..did you try to contact their tech support? As much as AMD doesn't give a damn about customers reports, I just contacted them to complain about buggy FLASH DXVA on XPSP3 that locks up any system w/ drivers >266.58 and GF8/9 series (http://forums.nvidia.com/index.php?showtopic=209205). I got an instant and very thorough reply...and even an ETA, all this under an hour :eek:
That may be, but I fear that's a different situation. I do plan to report the problem to NVidia, I just don't have much hope for a fix/reply. Anyway, I'll try...

Why is it that I see "movie 25.000 fps [says source filter]" in madVR's OSD but I see 29.970 fps in ffdshow's info tab? Is madVR using 29.970 fps from the source in spite of what it says on the OSD? This happens only with .flv files. Using internal MPC-HC flv splitter.
madVR simply reads the fps information from the upstream filter's media type information (see pin connection information in MPC-HC). That's it.

can you add 3D Vision support, please. There is no free Renderer that can shutter the 3d vision. The commercial software (Stereoscopic player, Powerdvd,..) does not work outside of their software. I want to use it with MPC OR Mediaportal (in future).
I plan to look into 3D sooner or later. But I'll work on making things work with HDMI 1.4 displays. Not sure if my solution will also work for 3D Vision special displays which don't have HDMI 1.4. Probably not, but I don't really know. FWIW, I don't plan to get any non-HDMI 1.4 3D Vision hardware, so I won't be able to test that.

i often use my own gui to config my video filter (some media files have differents config files ...) but i don't understand how the madvr setting works in the windows registry.
the only options of the madvr renderer i would like to enable/disable often is the decoding options because on some hd file on my low power computer i need to enable it.

so here is my question: is there any way to enable/disable the decoding options of madvr without launch madvr (with regedit or command line ?)
Currently settings can only be edited while madVR is running. The settings are stored in a private binary format, so you can't simply modify it by using regedit or a command line. However, if you write your own software to edit the settings, you could create a madVR instance, use QueryInterface to get access to the "IMadVRSettings" interface and from there you can edit all settings you want. More details see "mvrInterfaces.h", which is shipping with madVR.

is there any chance you could implement your optimized algorithm to provide Lanczos scaling without ringing into madVR?
Yeah, I'm planning to look into that sooner or later. But not too soon. So many other things to do first.

i uninstalled norton IS 2012 & installed 2011 version & everything went back to normal as it was before installing norton 2012.
Ouch.

Looks nice! (at least for a layman like me)
Wonder why isn't it included already, since its madshi's creation.
It's not included already since it's not so easy to implement in a pixel shader. It's certainly possible, but I have to put a specific priority on every thing I want to implement and implementing such a new scaling algorithm in madVR doesn't have the highest priority right now.

By the way what does nnedi3 mean. By searching around I only found a deinterlacer for avisynth as nnedi3, but I fail to see how that could be applied to scaling.
NNEDI3 was originally made for deinterlacing. But since it practically doubles the resolution in one direction, it can also be "mis"used to upscale by factor 2x. And it does it extremely well. You can see comparison screenshots at the end of the "non-ringing Lanczos" thread.

What I don't quite understand is why I would want exclusive mode. Does it offer me any advantages?

All it does it disadvantages: 1. Slower fullscreen switch time, 2. ugly status notification at the top left, 3. ugly seek bar, 4. unable to take screenshots easily.
How often do you switch fullscreen? I only do it once at the start of movie playback. There will be an option to disable the status notification in a future version. The seek bar looks is a matter of taste. And screenshot functionality is planned for a future version, too.

The benefits of the exclusive mode is:
- guaranteed no tearing (can still happen in windowed mode)
- more stability
- better performance
- ability to pre-present several frames in advance
- probably necessary for 3D presentation (in a future version)
- necessary for 10bit output (in a future version)

On my HTPC I can't get a smooth playback in windowed mode, so I have to use exclusive mode. If you get perfect playback in windowed mode then there's nobody stopping you from disabling exclusive mode.

can anybody tell me which are MAdVR`s input luminance levels?
Black is expected at Y=16 and white is expected at Y=235. However, if the upstream filter properly reports what it's sending, madVR can also handle Y=0 for black and Y=255 for white.

On one of my machines, madVR will not go into exclusive mode. This particular machine has 4 monitors on two different video adapters and I suspect that may be the reason. If so, it's no big deal, but I'm interested in any comments.
A log of you trying to go to exclusive mode on that machine may help.

How can I send you money?
I'm not accepting donations yet. Please wait for madVR v1.0. Once I get there, I'll accept donations, or maybe make a "pro" version with added features for a small price.

Im currently having a issue where when i playback on my second monitor using D3D11 for presentation and i enter exclusive mode MPC-HC crashes with the below error: [...]
Unfortunately crash reports like this are hard for me to fix at this point in time. If there was a way for me to reproduce the crash, that would help greatly. Unfortunately these crashes don't seem to occur on my PC.

I noticed that once in a while the following lines fleetingly appears in the OSD:

Composition Rate: 23.976Hz
Clock Deviation: -.1xxx%

(where xxx is presumably the percentage difference between the actual display frequency [the top line of the OSD] and the composition rate (?) ])

Why does this appear and disappear at seemingly random intervals? (While it often displays when I do something like turn subtitles on or off or switch between exclusive and windowed mode. this does not need to be the case.)

I am especially confused since my display value is never exactly 23.976Hz.

I should note that I am using ReClock - with it I see a "1 frame drop" on the order of hours, if not days. In addition, from what I understand, the other values appear solid (once reset, I do not see any frame-drops nor delays and my queues are all full...)
The clock deviation is hard to measure properly. So don't put too much weight on it. If your eyes tell you that you have smooth playback and if there are no dropped or delayed frames or glitches listed in the madVR OSD then you're good.

I had my screen rotated and I wanted to check out something in on of the videos. But the player hung. After that I tried with other players and madVR hung all. (potplayer, kmplayer, mpc-hc)
All were fine with EVR.
Where/how can I rotate the display? Never tried that yet. Anyway, fixing this will be low priority for me.

My madVR is stuttering on my XPS 15 laptop.
It only stutters in D3D Fullscreen but it's fine in windowed mode.
My specs are:
i7 2630QM processor
Nvidia GT525M
If you get perfectly fine results in windowed mode then I'd suggest to disable exclusive mode in the madVR settings. No need to use it if you get perfect results with windowed mode. Not sure why you get problems with exclusive mode, though.

The LAV Decoder has a lot better performance than the madVR decoder
It does? That confuses me. Ok, my ffmpeg/libav dlls are a few weeks older than those from LAV Filters. Maybe that's where the difference is coming from? I'll update the ffmpeg/libav dlls with the next madVR release.

Like you already wrote in this thread, the D3D11 path also works best for me (23.976fps or 24fps@24Hz). However, it would be great if you could improve it to the point where going out of FSE mode to windowed draws the desktop each time.

Currently, after you start playback of a file, switching usually works 2-3 times but stops working for no reason and then starts to work again, etc. It is quite random. Switching works in every other mode or path I´ve tested, so there must be something weird going on specifically when you enable D3D11. A workaround is to pause the file and switch when in pause and then start playback again.
Can you describe in more detail what happens exactly? E.g. you say that switching sometimes doesn't work. What happens exactly in that situation? Also you're saying you want madVR to redraw the desktop. What does that mean exactly?

Internal calculations may be 16-bit, but the results are dithered to 8-bit. There is a very noticeable drop in quality when using 3DLUTs, even on digital displays, which don't do the best job of displaying 8-bit as it is.
Not sure what you mean. There should be no noticeable drop in quality when using 3DLUTs.

Does the 'Use D3D11 for presentation' need a DirectX 11 card?
DirectX 11 can handle DirectX 9 GPUs. So all you need is a DirectX 9 GPU. I'm not actually using any new DirectX 11 functionalities, I'm just using the DirectX 11 interfaces/APIs.

When the hesitation/stuttering starts;
MadVR status screen shows:
decoder queue is 1-/1/8
That means that the decoder is running too slow. There's nothing madVR can do in this situation.

noee
18th October 2011, 12:59
hi guys
i have to change my ati 4650 card to get hd audio so am looking for advice on the best compatability with MadVR
i am looking at either another ati 6xxx or an nvidia gt 430
i do get 23.977 at the moment with the ati but have been told the nvidia with cuda is better

advice appreciated before i pull the trigger

thanks

I have two (so far) HIS fanless 6570s. Flawless with madVR. I don't watch interlaced material. I also have a laptop 6520 that works great as a "portable" HTPC w/madVR/LAVFilters.

No resolution issues, rock-solid 24Hz or 23.976 depending on my config and no issues whatsoever with the drivers and output levels.

madshi
18th October 2011, 14:15
Oops, I forgot to mention that I also get the Avisynth stuttering right when playback starts sometimes, and I have to reseek to have it smooth. Maybe it's a problem in ffdshow, but if it's in mVR...this would be really great to have it fixed if any possible :)

Here are some logs when it starts to hiccup right away: mVR74 avisynth.rar (http://www.mediafire.com/?q4q8afs5vrairq7)

checking the option to delay playback until the queue is full fixes the problem completely, but it doesn't change anything to the stutter when I do realtime Avisynth script changes(like in the log I previously provided).
After looking at the logs, the situation is pretty clear: With the "delay playback until..." option disabled, the madVR decoder queue is never higher than 3/8 in your logs, often it stays at 1-2/8. Which means that madVR is not getting the frames fast enough from upstream. I guess that you're using so many post-processing AviSynth filters that your CPU is running near its capacity and as a result the madVR decoder queue doesn't fill up quickly enough. Unfortunately there's not much I can do about that. The "delay playback until..." option is the best I can offer for this specific problem. You may want to get a faster CPU or ease up on your AviSynth scripts a bit. The upstream filters must be fast enough to deliver video frames to madVR in time for rendering. Which currently isn't always happening.

I think it would be great to have a "only when playback starts" sub-option to the "delay playback until queue is full" feature if any possible please.
Why? I don't see how that would improve the problem seen in your logs.

Lot of dropped frames on any 60 (and 59.94) fps video at any resolution (even on 704x396 video at it native resolution).
That happens if madVR does any colorspace conversion (e.g. YV12 -> RGB32). The only way to avoid it - let ffdshow to convert video to RGB32.
And the only empty queue is backbuffer queue...
Yes, CPU and GPU load are less then 10%.
And with other renderers (overlay, EVR, Haali) everything is ok.
So bottleneck is somewhere in the GPU and not in the raw computing power... And it is related to chroma upsampling (YV12, NV12, YUY2, UYVY -> RGB32 conversion).
Tested b/w video - 0 framedrops.

And another strange thing - in exclusive mode even presentation queue is full (3-4/4).
Number of dropped frame is about the same (1000-1200 out from 9240) at any resolution (from native 1024x576 to desktop 1920x1080) and mode (windowed/exclusive).

internal and ffdshow.

everything is set to "use application settings"
http://www.mediafire.com/?8co2m4pls56xdnk
Errors are "00003434 Upload drop frame 153, no free vsync slot, plannedVSync: 185"
According to the log the display refresh rate is 59.950Hz while the movie frame rate is 60.000fps. As a result madVR has no choice than to drop frames regularly, to keep audio and video in sync.

nevcairiel
18th October 2011, 14:36
Can you describe in more detail what happens exactly? E.g. you say that switching sometimes doesn't work. What happens exactly in that situation? Also you're saying you want madVR to redraw the desktop. What does that mean exactly?

I can answer that, since i have the problem as well.
If i'm in DX11 FSE mode, and i try to exit it via hotkey to window mode (i have it bound to F, but MPC-HCs default double-clicking works as well), the video appears to stop rendering, and you see the last frame from DX11-FSE mode. If you then press your hotkey again, everything resumes. Fun fact: if you right-click first to bring up the context menu (and exit FSE), and then double-click/hotkey, it works fine.

It would appear that the DX11-FSE image for some reason does not get cleared off the screen properly, and still sits there, covering the desktop and the player itself.

Its not a important issue for me anymore, as i found some good settings that fix the glitches without DX11 mode. :)

Damien147
18th October 2011, 14:37
Is it placebo or PQ in general is different without catalyst control center installed?I installed display drivers only and picture seems more natural.With CCC just installed I think I get a slightly dark contrasty image in comparison.(not talking about ATI Color Control resetting my settings)

SamuriHL
18th October 2011, 14:51
Its not a important issue for me anymore, as i found some good settings that fix the glitches without DX11 mode. :)

Care to share? :) Cause I'm having problems again with my setup. Went to watch a tivo file last night that's 60 progressive and it was like a slideshow. I just recently upgraded to the latest beta driver which might have something to do with it, but, I'd love to try your magic settings. :)

madshi
18th October 2011, 14:53
Hi, here's my experience of the 10% increase bug. I first open windows task manager, then a 720p file in mpc-hc with ffdshow avisynth disabled .
Testing evr-cp and madvr 0.74 in that following order, both reported 0% cpu usage in manager when paused at roughly similar frame.

EVR-CP - 0%
madvr 0.74 - 0%

After closing both file and manager but not mpc-hc, I reopen the same file first then execute ctrl+alt+del to open manager. Interestingly, it reported 10% cpu usage.

I'm curious to know if you guys/gals can replicate something similar.
@madshi

I've just tried what you asked. Ctrl+Shift+ESC does not produce that 10% bug at all. The Ctrl+Alt+Del method does produce it 100% for me.
This is all very weird to me.
Doesn't seem to happen on my XP machine. Can anybody else reproduce this? On XP or any other OS?

nevcairiel
18th October 2011, 14:56
Care to share? :) Cause I'm having problems again with my setup. Went to watch a tivo file last night that's 60 progressive and it was like a slideshow. I just recently upgraded to the latest beta driver which might have something to do with it, but, I'd love to try your magic settings. :)

I posted them here before:
http://forum.doom9.org/showthread.php?p=1530093#post1530093

Its running with present queue 7-8/12 on matching material (24@24), with around 5-10/12(iirc, these could be wrong) on integer multiplies (25@50), and a somewhat lowish 3-4/12 on odd setups (24@60), but it doesn't drop a frame or glitch once.

Only the "Exclusive Mode Failed" problem left after watching multiple files .. i should probably create a log for that. ;)

jmonier
18th October 2011, 15:00
A log of you trying to go to exclusive mode on that machine may help.

Here are logs with and without trying to go into exclusive mode:

http://www.mediafire.com/?3u985k75va19k

madshi
18th October 2011, 15:01
Thanks.

It looks like the new rendering path from v0.50 seems to be responsible for the increased CPU load on my system:

Renderer: CPU load when paused:

madVR
v0.49 ~1-2%
v0.50 (old path) ~1-2%
v0.50 (new path) ~6-7%
v0.74 ~6-7%
EVR ~1%
EVR CP ~5%
Yeah, that seems kinda odd. Though, I just tested it again and it's 100% reproducible. In windowed mode with 'use old rendering path' enabled and everything else at default the CPU load is back to 'normal' with 1-2% when paused. Another strange thing is that when I disable the exclusive mode completely the load goes up to 6-7% again.
I've tried, but I can't get it reproduced here... :(

madshi
18th October 2011, 15:03
Here are logs with and without trying to go into exclusive mode:

http://www.mediafire.com/?3u985k75va19k
I only see one log in there?

SamuriHL
18th October 2011, 15:03
I posted them here before:
http://forum.doom9.org/showthread.php?p=1530093#post1530093

Its running with present queue 7-8/12 on matching material (24@24), with around 5-10/12(iirc, these could be wrong) on integer multiplies (25@50), and a somewhat lowish 3-4/12 on odd setups (24@60), but it doesn't drop a frame or glitch once.

Only the "Exclusive Mode Failed" problem left after watching multiple files .. i should probably create a log for that. ;)

Ah, right, ok, I remember that post. That's using the "old rendering path" if I'm not mistaken. (The use a separate device... setting uses the old path I believe). Interesting. I just reset madVR back to defaults and reset it up the way I like it and it's working now. Wondering if something got corrupt. Guess I'll stop touching it now that it's working again. :D

nevcairiel
18th October 2011, 15:06
That's using the "old rendering path" if I'm not mistaken. (The use a separate device... setting uses the old path I believe).

No. The option "Present several frames in advance" toggles the old path. If its on, its the new path. The OSD also lets you know about that.

SamuriHL
18th October 2011, 15:12
No. The option "Present several frames in advance" toggles the old path. If its on, its the new path. The OSD also lets you know about that.

Ah, ok. Very nice. Maybe I'll give that a try and see what happens. I didn't get a chance to the last time you posted it and I meant to. I'll back up my current settings first. :)

Brilliant. I just tested your settings. Flawless across the board. Thank you for that!

jmonier
18th October 2011, 15:14
You're probably using an NVidia card? Try activating the option "limit rendering times to avoid glitches". If that doesn't help, try also activating the DX11 presentation mode. The presentation glitches are a known problem with the newer NVidia drivers. I'm pretty sure it's a driver bug.

FWIW, I don't get ANY glitches (except at startup) with Nvidia drivers 280 and 285 on either a GTX465 or GTX 560.

madshi
18th October 2011, 15:16
i noticed a "strange" problem on my new media box, during playback in windowed/fullscreen windowed mode and even during pausing a file the CPU/GPU is still active at around 35%/20%?
I did some tests and even reinstalled windows and found one combination of setting that "fixes" this behavior, resulting in 0% CPU/GPU usage. Also the CPU usage in general is higher in all the "problematic" cases.

Here are my setting on Win7, madVR 0.74, MPC-HC (1.5.3.3734). I also tested other players, with the same result. Also process explorer shows the CPU usage in the "madvr.ax" process.

The first case is the "fixed" version which solves this problem only in this particular setting combination. Note how the "exclusive" mode changes directly also influences the windowed mode playback.

FIXED 1:
general: "enable automatic exclusive fullscreen mode" = ON
exclusive: "present several frames in advance" = OFF

FAIL 1:
general: "enable automatic exclusive fullscreen mode" = ON
exclusive: "present several frames in advance" = ON

FAIL 2:
general: "enable automatic exclusive fullscreen mode" = OFF
exclusive: "present several frames in advance" = ON/OFF

NOTE: All other settings scaling, presentation, thread, number backbuffers ... don't influence the outcome. I did not test all the sync options (flush, wait) and did leave those at default values.

Test-System Spec:
Win7 32bit (all updates + SP1)
Pentium T630 CPU + H67 chipset (Intel HD GPU not used, no driver installed)
nVidia GT 520 GPU (280.26 drivers)

I also tried to duplicate this problem on my main Core2Duo 775 system under WinXP and Win7, but could not do so.

In general all the "fail" settings also result in 30% higher additional cpu usage during playback, compared to the "fixed" case. As a side-note the playback is "smooth" in all tested cases, without any dropped frames. CPU and GPU usage is never above 70% in total.
This is exactly the same thing sToN3d reported, too. Unfortunately I can't seem to be able to reproduce it. Neither on my XP/AMD machine, nor on my win7/NVidia HTPC... :(

madshi
18th October 2011, 15:17
FWIW, I don't get ANY glitches (except at startup) with Nvidia drivers 280 and 285 on either a GTX465 or GTX 560.
The glitches usually only occur when playing back movies at a non 1:1 frame rate / refresh rate match. E.g. when playing 25fps movies @ 50Hz, or when playing 24fps movies @ 60Hz.

madshi
18th October 2011, 15:19
I can answer that, since i have the problem as well.
If i'm in DX11 FSE mode, and i try to exit it via hotkey to window mode (i have it bound to F, but MPC-HCs default double-clicking works as well), the video appears to stop rendering, and you see the last frame from DX11-FSE mode. If you then press your hotkey again, everything resumes. Fun fact: if you right-click first to bring up the context menu (and exit FSE), and then double-click/hotkey, it works fine.

It would appear that the DX11-FSE image for some reason does not get cleared off the screen properly, and still sits there, covering the desktop and the player itself.

Its not a important issue for me anymore, as i found some good settings that fix the glitches without DX11 mode. :)
Ok, thanks, I'll put that on my to do list. Might not fit into the next build, though.

iSunrise
18th October 2011, 15:26
Can you describe in more detail what happens exactly? E.g. you say that switching sometimes doesn't work. What happens exactly in that situation? Also you're saying you want madVR to redraw the desktop. What does that mean exactly?
@madshi (and FYI nevcairiel):
I´ve just tested it again with the newest release of PotPlayer after I realized that MPC-HC (1.5.2.3456) worked flawless. After I´ve installed the update now everything works as expected, the switching in the D3D11 path works just fine, even after doing it 10-12 times in a row. It´s weird though, since I´m pretty sure that at some point MPC-HC didn´t work and I´m still using the same drivers and settings for everything. I always file bug reports only after having them verified with at least 2 players.

Thanks for your support madshi, nice to see you back in action.

@nevcairiel:
Care to share your settings to prevent screen glitches without having to use the D3D11 path? I have an nvidia card, too, so they will probably work on my system, too. Thanks a lot!

jmonier
18th October 2011, 15:31
I only see one log in there?

I see two files when I just downloaded. Try it again or maybe try this link:

http://www.mediafire.com/?sjqq6d3a866a2d2

(I'm new to Mediafire so maybe I'm doing something wrong.)

jmonier
18th October 2011, 15:33
The glitches usually only occur when playing back movies at a non 1:1 frame rate / refresh rate match. E.g. when playing 25fps movies @ 50Hz, or when playing 24fps movies @ 60Hz.

I play 24fps at 60 (as reported by madVR) all the time with no glitches.

madshi
18th October 2011, 15:40
I see two files when I just downloaded. Try it again or maybe try this link
Oh, forgot to tell you: You need to turn the debug OSD (Ctrl+J) on, before going fullscreen. Only then madVR writes the needed information into the log file. Sorry, my fault. FWIW, I don't need a log with exclusive mode disabled.

I play 24fps at 60 (as reported by madVR) all the time with no glitches.
Well, then you're lucky.

nevcairiel
18th October 2011, 15:42
@nevcairiel:
Care to share your settings to prevent screen glitches without having to use the D3D11 path? I have an nvidia card, too, so they will probably work on my system, too. Thanks a lot!

It was just posted a few posts ago...
http://forum.doom9.org/showthread.php?p=1530093#post1530093

madshi
18th October 2011, 15:53
Little bug:
When using On2 VP7 VP70 video decoder (http://videoff7.free.fr/vp7dec.ax) along with madVR, the video (http://samples.mplayerhq.hu/V-codecs/VP7/) is upside down.
When using any other renderer, EVR, VMR9 etc, video is OK.
This is a bug in the VP7 decoder. But I've found a workaround which I'll implement in the next madVR build.

Nicola
18th October 2011, 15:54
mmm, since madshi is around i dare o ask to add something I from the haali renderer, which was my choice before madvr hitting the .7x release.
is it possible to, when res of the video is same as the desktop to half the video window size? Using auto-zoom on mpc-hc is not the samething. If possible, if too much work scrap that.

madshi
18th October 2011, 15:56
Hi!

I use madVR together with Zoom Player 8, and ZP has a feature to display seek position popup hint over control bar (control bar is called by pressing "space"). ZP can output this interface elements in madVR fullscreen exclusive mode.

There is a hang of the player if I call control bar and move mouse cursor over control bar for some time in fullscreen exclusive mode: video freezes, sound keeps playing, the player is not responding.
madVR debug log: http://www.mediafire.com/?c97ikazq946tb9g
Hmmmm... I can't seem to be able to reproduce this on my PC. Can you tell me how to exactly?

madshi
18th October 2011, 15:57
mmm, since madshi is around i dare o ask to add something I from the haali renderer, which was my choice before madvr hitting the .7x release.
is it possible to, when res of the video is same as the desktop to half the video window size? Using auto-zoom on mpc-hc is not the samething. If possible, if too much work scrap that.
Has been asked before. This is a feature that should be offered by the media player and not by the video renderer. The Haali Renderer achieves it by lying to the media player. I don't consider that a good idea.

SamuriHL
18th October 2011, 15:58
It was just posted a few posts ago...
http://forum.doom9.org/showthread.php?p=1530093#post1530093

And I can confirm they work well for my 450, as well. nVidia owners having trouble should give this a try.

madshi
18th October 2011, 16:24
I´ve reproduced a crash issue with PotPlayer and madVR 0.74 at first, but after careful testing, this seems to happen all the way back to and including madVR 0.67, when the internal madVR decoders were introduced.

This crash only happens when you first play a video where PotPlayer´s internal decoders are used and then you open another video, which is then using the madVR decoder (ffmpeg/libav) for h.264. It doesn´t matter if you either open the second video while the first one is still playing or you stopped playback after the first video before loading the second video.

These are the steps to reproduce:

1) Configure PotPlayer to use the internal decoders for everything except H.264 and AVC1
2) Configure PotPlayer to use madVR decoders for H.264 and AVC1
3) Configure madVR to use the ffmpeg/libav decoders for h.264
4) Play any video which is not using H.264 or AVC1 (e.x. WMV3 or XVID or DIVX)
5) While playing or after stopping playback, open another video which is using H.264 or AVC1 (so the madVR decoders need to be invoked)
6) PotPlayer now produces a crash popup which points to madVR.ax

This is 100% reproducible on my system and happens every time.

I´ve uploaded a log with madVR 0.67 and madVR 0.74 and a screenshot of the crash popup window here:
http://www.mediafire.com/?2vxxc79dct86jnf

FYI, I´ve let the first video run for about 9 seconds and opened the 2nd video right at the 10 second mark with both 0.67 and 0.74.
This is exactly the problem I reported a while ago http://forum.doom9.org/showthread.php?p=1520086#post1520086

I gave up using madVR as a decoder for just this reason.
IMHO this is a bug in PotPlayer. PotPlayer installs a callback for the internal subtitle renderer and never releases it, anymore. Anyway, I've added a workaround for this misbehaviour and the crash seems to be gone.

madshi
18th October 2011, 16:33
Hi madshi,
I sometimes experience a madVR bug that completely freezes ZP. I can't replicate it with the other renderers (VMR9/EVR).
It happens after a frequency switch while media playback is starting, using madVR's internal frequency switcher. (tried madVR switching, manual switching, ReClock switching, makes no difference..).

Using ZP8 prefinal 23 + latest madVR (v0.74), default settings.
XP SP3/ nVidia 285.38

What happens is: I open media, madVR detects framerate and changes frequency accordingly (from 720p60 to 720p24 with this test media). Now under 720p24, sometimes interacting with ZP's control bar (seeking media) will completely freeze the app.
Right before this happens, the ZP control bar (fullscreen) is drawn slowly onto the screen, it lags a lot.
It happens with any video stream/decoder. My test video is a simple XVID .avi file and I could reproduce the issue with ffdshow, LAV Video or even standalone Xvid decoder.

It seems to happen only when ZP's option "Display OSD through madVR's OSD API" is disabled.

How to reproduce:

1. In ZP settings, at "Playback" > "Video", disable "Display OSD through madVR's OSD API"
(Note: the "Video covers entire display area" option and madVR's FSE feature have NO impact on this bug, it happens regardless if FSE is totally disabled in madVR or not.)

2. Start playing a video, exemple: an XVID .avi file (decoded by ffdshow or LAV.. same results)

3. While the movie is playing, switch the frequency of the display. (exemple 720p60 to 720p50 or 24)

4. Now in ZP, go fullscreen and bring the control bar.

5. More often than not at this point the issue can be seen: the control bar is drawn slowly onto the screen, you can see its skin elements being drawn one by one (http://videoff7.free.fr/madvr_zp__bad.avi).
If you scroll the control bar at this point, for say 20 seconds, it will completely freeze ZP.
Killing the ZP process manually is needed.

If after going fullscreen the control bar is OK for you, please switch the frequency a couple times more [while movie is playing] to try and reproduce the issue, for exemple go back to 720p60 and then again to 720p50 or 24), then go in fullscreen and bring the control bar again to see.

It happens not _always_, but often enough to be really annoying. XD

A few things that I found while testing:
-It only happens with madVR, couldn't fault the other renderers.
-It seems to only happen when ZP's "Display OSD through madVR's OSD API" disabled.
-It happens regardless of video decoder.
-It happens regardless if ZP "resumes media playback from last point" or not.
-When the control bar/ZP is in this weird slow state, if I just close and restart media playback (not ZP !) or open another media, the bug disappears (no more laggy ZP/freeze due).
-It happens regardless if the frequency is switched manually (via shortcuts, nv control panel), or automatically (Reclock or madVR's internal frequency switcher).
-I tried down to madVR build 050, the issue is present too.

Sorry for the length, it's one of those annoying ones to reproduce :rolleyes:

I enclose a madVR DEBUG log.
For this log, I just open ZP, bring it fullscreen and start media playback. After madVR switches the frequency, I bring the ZP control bar and scroll for 3 few seconds. ZP freezes completely. The log stops after I killed ZP process manually. Total time around 8 seconds.

I hope you can look into it and hopefully it won't be hard to track down! :scared:
It sounds more like a ZP bug to me, but of course I can't be sure. Why are you disabling the option "Display OSD through madVR's OSD API"? Does it have any disadvantages?

3. While the movie is playing, switch the frequency of the display. (exemple 720p60 to 720p50 or 24)
Why do you switch the display refresh rate *while* the movie is playing? That's not a good idea, generally, IMHO. madVR generally doesn't like it much if you modify the refresh rate behind its back.

madshi
18th October 2011, 16:43
madshi, small cosmetic issue:

dual-mon, playback on second mon, FSE mode (Win7 x64), MPC-HC.

With the OSD turned on, if I then hover the mouse over the "Show Desktop" area of the toolbar (on the first mon), the seek bar then shows on the playback mon. Turning OSD off does not exhibit this behavior.
I've changed something for the next madVR version which might fix this, but I'm not 100% sure.

madshi
18th October 2011, 17:21
Yes, this is with v0.74. Looking into it further, it only seems to happen on first load when using the madVR refresh-rate changer.

1) Load MKV with cropping flags.
2) madVR changes refresh rate.
3) Video is distorted.
4) Reload video without closing MPC-HC or changing refresh.
5) Video is no longer distorted.

It happens with all cropped MKVs (just re-mux anything with mmg with cropping flags like 8,8,8,8), but if you still need a sample I could upload one.

Here is a log: http://www.mediafire.com/?tudseazrx074zw6
Opened Video
madVR Refresh Rate Changer activates.
10 seconds distorted playback.
Paused 10 seconds.
Reloaded Video.
10 seconds of normal playback.
Closed MPC-HC.

This is on WinXP SP3 x86 w/ an NVIDIA GPU.
Finally was able to reproduce and fix the problem, thanks for your help. FWIW, the problem only occurred with the Haali Media Splitter, but not with the LAV Splitter. And the Haali Media Splitter reported weird things. Anyway, fixed.

Budtz
18th October 2011, 17:24
I get glithes with 50hz playback of 25p material with madvr. this does not happen if run the same material at 24p in 60hz for instance. I reported it some time ago and some1 else reported it also. is this a bug in madvr? not being able to handle this configuration.

thx

madshi
18th October 2011, 17:39
I get glithes with 50hz playback of 25p material with madvr. this does not happen if run the same material at 24p in 60hz for instance. I reported it some time ago and some1 else reported it also. is this a bug in madvr? not being able to handle this configuration.
It seems to be a bug in the NVidia drivers. Read the last 2 pages of this thread to find some suggestions on how to work around the issue.

jmonier
18th October 2011, 17:48
Oh, forgot to tell you: You need to turn the debug OSD (Ctrl+J) on, before going fullscreen. Only then madVR writes the needed information into the log file. Sorry, my fault. FWIW, I don't need a log with exclusive mode disabled.


I'm always in full screen. For this log I already had the Ctrl-J OSD enabled (from a previous run) so it came up automatically as soon as I started. It that enough?

http://www.mediafire.com/?md2nxy7htx0qb50

madshi
18th October 2011, 18:07
I'm always in full screen. For this log I already had the Ctrl-J OSD enabled (from a previous run) so it came up automatically as soon as I started. It that enough?

http://www.mediafire.com/?md2nxy7htx0qb50
Yes, that's enough. The log says:

00001109 Render fullscreen windowed mode, covered by some windows
00001481 Render madVR window [madVR] "madVR" {-1920,120,0,1200}
00001491 Render covered by explorer.exe window [Shell_TrayWnd] {-2,1198,1922,1244}
As you can see, the madVR rendering window is overlapped by the Explorer's tray window. I'm not sure why the tray window seems to cover a different monitor, but that's the way it apparently looks to madVR. Can you move the monitor with the tray window a couple of pixels down? That would probably fix the problem.

Budtz
18th October 2011, 18:07
Yes I have also played lots of content over several months with different NVidia drivers at 60hz24p without glitches. It only happens with 50hz25p. Thou if I choose "overshoot max frame latency" it works. Just strange I guess what is causing it exactly. NVidia drivers I guess. ..

Software and hardware manufactures really do make it hard to get proper PQ. If I play at move with just windows 7 media player or something it’s just awful with crappy PQ and stuttering, dropped frames, no subtitles ect. Would be nice if I dint have to use reclock and other stuff just to watch a movie like on a blurry player. At least I got it to work but why do we have to work against the crappy software and hardware solutions of Microsoft, Intel, NVidia and whatnot. They don’t think users might watch a movie on their pc for entertainment. Only play games I guess. Nice that there are open source alternatives like Madvr thou to get things to work. Should be a simple thing to play a movie on a pc really.

flovv
18th October 2011, 18:08
-->madshi

Just want to say thanx for a fantastic renderer!! It really is the best I have tested!!
Keep up the good work.
/f

Budtz
18th October 2011, 18:14
Yes it is way more modern then the likes of Microsft Apple ect.

tschi
18th October 2011, 18:24
Nice that there are open source alternatives like Madvr thou to get things to work.
madVR is not opensource

jmonier
18th October 2011, 18:44
As you can see, the madVR rendering window is overlapped by the Explorer's tray window. I'm not sure why the tray window seems to cover a different monitor, but that's the way it apparently looks to madVR. Can you move the monitor with the tray window a couple of pixels down? That would probably fix the problem.

Yes, that's it. It's strange because there's absolutely no visible trace of the tray window in that monitor and there's no problem with any other window overlapping that monitor. I also have another 2 monitor setup where the monitors are adjacent in the same way and that has no problem. Maybe it's associated with the 4 monitor setup somehow.

In any case, it's not really a problem for me either way. I only mentioned it as a point of interest.

jmonier
18th October 2011, 18:48
At least I got it to work but why do we have to work against the crappy software and hardware solutions of Microsoft, Intel, NVidia and whatnot. They don’t think users might watch a movie on their pc for entertainment.

Not to mention a dedicated HTPC setup.

leeperry
18th October 2011, 20:12
After looking at the logs, the situation is pretty clear: With the "delay playback until..." option disabled, the madVR decoder queue is never higher than 3/8 in your logs, often it stays at 1-2/8. Which means that madVR is not getting the frames fast enough from upstream. I guess that you're using so many post-processing AviSynth filters that your CPU is running near its capacity and as a result the madVR decoder queue doesn't fill up quickly enough. Unfortunately there's not much I can do about that. The "delay playback until..." option is the best I can offer for this specific problem. You may want to get a faster CPU or ease up on your AviSynth scripts a bit. The upstream filters must be fast enough to deliver video frames to madVR in time for rendering. Which currently isn't always happening.
Well, my CPU is fast enough AFAICT and if I reseek, I instantly don't get any more dropped frames. But indeed, I guess the hicupping problem doesn't lie in mVR but more in the avisynth filter of ffdshow, which is merely a hack just like the MT() avisynth plugin I'm using. My problem seems like a core affinity matter :o

Why? I don't see how that would improve the problem seen in your logs.
I believe someone before me already requested this feature, and sometimes I've got movies that hiccup when playback starts and I'm forced to reseek...so as much as I don't like the mandatory delay when seeking while having the "wait for queue to be full" option, I would welcome a sub-option to only enable it when playback starts if any possible.

This said, the whining office has been closed for the past few weeks, I've made a dozen automatic ffdshow profiles that allow me to simply use my HTPC in a click'n'play fashion so I hardly ever play around w/ avisynth scripts in realtime anymore...the only feature I'd really like to see is the ability to disable the exclusive/windowed OSD, I believe I could remove them with an hex editor but the background would still show so that wouldn't really help :p

anyway, mVR works like a charm and it's been a real treat so far! :thanks:

Plutotype
18th October 2011, 21:01
Hi all,
If using madVR, is there any reason to upgrade my HD5670 to HD6670? Is there some boost in terms of picture quality ( not speed )?
Can I ignore this?
http://www.tomshardware.com/reviews/radeon-hd-6570-radeon-hd-6670-turks,2925-14.html
Thanks
Pluto

oddball
18th October 2011, 21:06
I sorely need screencap ability. Having to switch to another renderer in order to do so is highly frustrating. This is the last peice of the puzzle missing from MadVR for me.

kalston
18th October 2011, 21:25
I didn't know I could use the dx11 option with a dx9 card (that sounded silly to me), but someone dared to ask for me and now I know :)

It does fix the glitches (dx11+ limit rendering times) but not for everything. 29.9/59.9 playback still suffers from a lot of glitches but 23.976/71.92 is fine however.
nev's settings work too, but again not 100% of the time.

In the end I'm just using the old FSE mode, it seems fine to me. Anything wrong with it?
Could it be that it isn't affected by the same bugs (related to the nvidia drivers) as the new FSE? It doesn't monitor glitches (I think?) so I don't know if I have glitches or not but I don't feel them (while I do with the new FSE). Or maybe I haven't seen smooth playback in too long and I'm just used to it :p (unlikely, I'm a gamer and usually extremely sensitive about smoothness)

Windowed mode doesn't always work properly either for me (bad performance with some high bitrate/high framerate files) so I need FSE where I get excellent performance even with super-high framerates/bitrates.

irishrobbie
18th October 2011, 23:00
i have an ati 5670, i use madvr with lav splitter, video and audio filters. i have a profile in amd ccc which is set to 2d clocks 400mhz gpu clock and 900mhz memory clock.
runs very smooth and no dropped frames.but see if i dont use the profiles in my ccc madvr will push the clocks to there maximum.so aslong as things are running ok and no dropped frames i will stick with my 2d clock to keep temps and power abit lower

irishrobbie
18th October 2011, 23:07
can i disable automatic fullscreen exclusive mode, or will this affect video quality and what does full screen exclusive mode mean and do

Thunderbolt8
18th October 2011, 23:13
can i disable automatic fullscreen exclusive mode, or will this affect video quality and what does full screen exclusive mode mean and dohttp://forum.doom9.org/showthread.php?p=1532544#post1532544

scroll a bit down