Log in

View Full Version : Media Player Classic Home Cinema (MPC-HC) - DXVA!


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

Stephen R. Savage
19th January 2011, 05:43
Video layout:
video bitstream -> decoder -> mixer -> renderer -> presenter -> video card output
video bitstream: contains binary data
decoder: Converts to the native 4:4:4, 4:2:2, 4:2:0 structures and with 8 to 16 bits per component per pixel, then lines that data up into a suitable surface format, such as NV12, YUY2 or AYUV.
mixer: Convert one format to another format that the renderer can use. Ideally it should provide deinterlacing, chroma up-sampling, level expansion, color conversion to RGB, and output bit depths of up to fp32 per component.
renderer: Take the raw image from the mixer, scale and position it relative to the screenspace, adapt other image characteristics to the display output and possibly do some special effects.
presenter: Stacks the layers from the different renderers (main video, subtitle, OSD) on top of each other, times the images to the presentation time and exports the image to the correctly initiated video card to output.

The main renderer and presenter have been improved far beyond the previous 8-bit limitations.
The decoders should simply be ready to write images on a surface format that matches the layout in the video bitstream.
The mixer handling is very weak at the moment. It's completely stuck in 8-bit, that causes big rounding errors when doing deinterlacing, chroma up-sampling, level expansion or color conversion to RGB. The deinterlacing and chroma up-sampling functions don't even work properly at all.
On top of those problems, the internal software codecs will always select YUY2, even on input of 4:2:0 or 4:4:4 format video. That's just wrong, so I disabled YUY2 as a mixer format in favor of RGB32/X8R8G8B8 (slightly less wrong, as it still has bad rounding issues).
At this moment I can only advise to use limited range (Y' at <16,235>, Cb and Cr at <16,240>) NV12 as a format for 4:2:0, 8-bit encoded video, and let three pixel shaders handle chroma up-sampling and level expansion in the renderer stage.
The DXVA decoders will already correctly select NV12 as far as I know.
Try one of my builds to test it.

http://img832.imageshack.us/img832/883/mixeroutput.png (http://img832.imageshack.us/i/mixeroutput.png/)

Your information is interesting and all, but could you explain what's going on in this screenshot? The image has clearly never been in YUY2 at any point of the pipeline, since that would destroy the alternating columns of red/blue lines. In MPC-HC, where are the color conversion routines occurring? If EVR-CP has, as its name suggests, only a custom presenter, shouldn't it share RGB conversion with the regular EVR renderer? That is clearly not the case on my system, where normal EVR has completely broken YV12 handling.

On an unrelated note, how will all these display-related updates mentioned recently in this thread impact performance? I see discussion of performing 10-bit, floating point, etc. calculations, and I'm concerned that future versions of MPC-HC will be incompatible with my budget hardware (several generations old process, Intel graphics).

Edit: Several pages ago on this thread, I asked the same question, and a gentleman informed me that MPC-HC always uses RGB surfaces for everything, regardless of what the "mixer output" field states. However, I would appreciate it if someone more familiar with the code could explain what exactly is going on, so I can finally put this concern to rest.

zaoan
19th January 2011, 06:30
First of all, i would like to salute all of you, i'm new around here and hope to have an enjoyable staying.

Second of all, i used to have a problem, which is the reason why i joined this forum few days ago. In the mean time, it seems like i've managed to solve my problem. So here it goes, long story short: my system specs are athlon 1800 Mhz, 1.8GB DDR and HD4650 AGP gpu. Bought this card to enjoy watching full hd movies, with this great DXVA option. And so i did, every movie played very well, until i've found some files, while i was looking to test my new video card, files that were full hd, 720p or 1080p, which mpc-hc could not play using dxva(pot player neither, i also use that one too). After some searches, it seemed like those files were some kind of Level 5 or 5.1 encoding, which indeed they are, and because i'm using windows XP, could not get DXVA2 with my gpu. Also checked with DXVA checker and no DXVA2 listed there. After some searching, i discovered that someone was saying something about .net framework 4, and that this could enable EVR option in MPC-HC, but also that this option will not change anything in my system, because it's only used for Vista or win7.
So i took the liberty to install framework 4 and now, also using dxva checker, my system can run dxva2. MPC-HC can also run level5 or 5.1 encoded files flawlessly(pot player still can't play them), no other codecs installed.

I'm using catalyst 10.12 agp hotfix driver, mpc-hc 1.4.1.2860 version, and i'm happy that my old system can run most(i hope all) full hd files out there, thanks to my gpu.
Probably this isn't something new, but it bothered me quite a few days and, while i was waiting for the "at least 5 day" rule to post here, i'm glad i've found a solution that works, and i must say i did try quite a lot :)
Maybe there are other people having a similar problem and i thought sharing wouldn't be a problem.

JanWillem32
19th January 2011, 08:41
@Stephen R. Savage That's not one of my builds from yesterday in the picture, I used v1.4.1.2862 as a base.
Color conversions can be done anywhere, but it should be done in the mixer, and it should create the first surface for the renderer to work on. So, the mixer should output in the same surface format as the renderer uses (8-, 10-, 16-, or 32-bit RGB). The interface with the mixer is bad. We are trying to fix things, but as long as it's stuck to 4 working formats it will never gain quality nor compatibility.
I also found out that the mixer will always convert to RGB internally, and fails at creating proper "16-235" limited range outputs. That makes the 0-255 range X8R8G8B8 the only working format, that's really not ideal at all.
By the way, in case of a custom presenter, It's an obligation to transmit settings to the standard mixer to be able to send to the (also custom) renderer.

Don't worry about the quality options, they can be enabled or disabled at "Renderer Settings". We made quite a few fixes that made playback on all settings actually lighter recently. By the way, the calculations are done in fp24 or fp32 for graphics in any case, only the transfer surfaces in the memory change with the surface options. With the 10-bit out option, it's also possible to create 10-bit images for the video card to transfer over DP/HDMI/DVI/analog in the D3D Full Screen Mode. VSync modes, dithering and color management have also proven to be very valuable.


@zaoan That's good to hear, maybe we should start advising others to install .Net framework 4, too. I think It isn't an automatic Windows update.

chros
19th January 2011, 08:49
The file association code in MPC is very buggy.

What MPC should do is:
1) Create private file association GUIDs (HKCR\mplayerc.extension) for each file extension. Preferably also a different one for the x64 build.
2) Register player capabilities (HKLM\Software\Clients\Media\Media Player Classic\Capabilities\FileAssociations). This allows creating file associations through the "Default Programs" functionality of Windows Vista/7. Those apply to individual user accounts and it works for limited accounts as well. It creates references in HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\
3) Optionally create a global file association (HKCR\extension, pointing to the private GUID), with backup of previous association.

These things are best handled in the installer, since that allows proper cleanup during uninstall. Doing it through command line should be fine as well, since then there also is a command for undoing.
If the above is done, then removing the file association stuff from the GUI is a good idea imho. Selecting of the playback framework (DS, QT, RM) could be moved to a new page, where those options are also less likely to be overlooked.

Maybe one day if I am really bored I will work on implementing the above.

If you are looking for an installer that works properly now, then I can suggest the K-Lite pack. It allows installing only MPC-HC if that is all you need.

Thanks for your suggestion and your time!
And I'm waiting for your rewrite ... :)

Mercury_22
19th January 2011, 09:55
Please revert Revision 2866 - Directory Listing
Modified Wed Jan 19 04:56:35 2011 UTC (3 hours, 55 minutes ago) by sansnom05

-changed: single click will pause/resume playback for compact mode(in fact, any mode with any bars visible)
-fixed simplified chinese resource file errors in r2865

Cause I can't move MPC-HC's window any more (I'm using just the seek bar)

P.S. I also have "Middle Down" for "Play/Pause" instead of "Left Down"

WonderCsabo
19th January 2011, 11:41
I'm not a dev, but yes. There was a hopeful fix which attempted to automatically open and close the options dialog box, but it did not have the same effect as intended as it didn't help the bug. I'm not sure where that issue is at, at the moment. (You're not that guy who came onto MPC-HC IRC channel, are you?)

No, i'm not. But i think i'll join the IRC channel. My comments seem to be lost here... Opening the Options windows all the time is not a too comfortable workaround.

JanWillem32
19th January 2011, 11:42
For those that are wondering why I keep posting with downloads, we need a lot more people to help us.
At the most basic level, alpha- and beta-testing to see if things work, is taking too much time from regular programmers. At a more advanced level, I'm currently the only DirectX programmer, and I don't have anyone working under me to help with the new functions. The few main programmers on the team that usually work on other parts of the program also don't have a development team.
It's quite a shame that we do have a lot of potential new functions, fixes and ideas for MPC-HC, but lack the human resources to integrate all of it.
Recruiting new members is very hard it seems. We couldn't even find anyone with English skill to re-write the text on the main website, let alone a HTML programmer and a graphics designer for the other parts.
If anyone is interested: we need a full scale development team, from button-pusher beta-testers to high-end programmers and from concept gatherers to moderators to graphics designers. Pretty much everything. :p
At a low level, many people idle on the IRC channel to keep track of the status messages of the recent builds and the bug tracker: irc://irc.freenode.net/MPC-HC.
There's usually a helpful person or developer available to talk to, as well.
For those that don't find my techno-babble too scary and have the social skills required to interact with programmers ;), there's the main development channel: irc://irc.freenode.net/MPC-HC-DEV.
:thanks: For anything you can contribute, even if it's just adding a bug report, small fix or translation on Trac: http://sourceforge.net/apps/trac/mpc-hc/report.

For the new downloads:
As the mixer can't do any better than <0,255> range X8R8G8B8 anyway, It's the preferred working format in these binary's.
D3D Fullscreen GUI Support - inactive
Force 10-bit RGB Input - inactive
Alternative VSync - only available in windowed mode
There's still no deinterlacing or chroma up-sampling without external filtering or pixel shaders.
Descriptions of the various renderer settings: http://sourceforge.net/apps/trac/mpc-hc/wiki/New_Renderer_Settings

I updated my shaders today: http://forum.doom9.org/showthread.php?t=157634
Renderer settings I use:
0-255 Output Range, D3D Full Screen Mode, 10-bit RGB Output, Full Floating Point Processing, Disable desktop composition (Aero), VSync, Accurate VSync, Flush GPU before VSync, Flush GPU after Present

Shader chain:
4÷2÷0 to 4÷2÷2 intermediate Catmull-Rom spline5 chroma up-sampling for SD&HD video input
4÷2÷2 Catmull-Rom spline5 chroma up-sampling for SD&HD video input
gamma conversion of HD&SD video RGB to linear RGB

Screenspace shaders:
Catmull-Rom spline6 height resizer (with correct scaling preset)
Catmull-Rom spline6 width resizer (with correct scaling preset)
sharpen complex v3 + deband + medium denoise
gamma conversion of linear RGB to wide gamut RGB
finalpass: color management with an ICC profile and dithering

Those without ICC profiles can sill use "brightness, contrast and gamma control" and "hue and saturation control for SD&HD video input" to fine-tune the image output a bit.
Dithering is triggered automatically with the 10-bit RGB Output, Full Floating Point Processing and Half Floating Point Processing settings. Later on, when temporal dithering is tested, the option for dithering modes can be added to the settings.
This chain of settings is rather high-end and will require a recent video card, often even on full 3D GPU clock speeds. Feel free to experiment with various shaders, and cater the view to your tastes and available GPU processing power.
r
@Mercury_22 No fixes for that, yet. Custom key mapping is an end-user responsibility, too. (I'm glad to have those options with my remote control, though.)

Mercury_22
19th January 2011, 12:53
...

@Mercury_22 No fixes for that, yet. Custom key mapping is an end-user responsibility, too. (I'm glad to have those options with my remote control, though.)

I don't see the point of Revision 2866 - Directory Listing
Modified Wed Jan 19 04:56:35 2011 UTC (3 hours, 55 minutes ago) by sansnom05

-changed: single click will pause/resume playback for compact mode(in fact, any mode with any bars visible)... Cause just by changing the key from "Left down" to something else it solves the problem ! e.g. I'm using "Middle Down"
And since this come out I want to propose to change the default Play/Pause from "left down" to something else like "Middle Down" cause it's very inconvenient

cca
19th January 2011, 13:26
A few observations regarding JanWillem32's latest build, specific to my hardware perhaps.

In order to use "10bit RGB Output", D3D fullscreen must used and most important: Aero needs to be disabled or weird colors will be produced, video unwatchable. That has the unfortunate side effect than when the video is closed I get a completely blank screen, I cannot see my Desktop. Show stopper for me, I won't be bothered to use "CTRL+ALT+DEL" every time a video ends to get my desktop back. I believe it is a known bug too.

EDIT: possible workaround is to edit the compatibility options of mpc-hc.exe and disable Aero from there. The Desktop recovers in this case.

JanWillem32
19th January 2011, 13:42
A few observations regarding JanWillem32's latest build, specific to my hardware perhaps.

In order to use "10bit RGB Output", D3D fullscreen must used and most important: Aero needs to be disabled or weird colors will be produced, video unwatchable. That has the unfortunate side effect than when the video is closed I get a completely blank screen, I cannot see my Desktop. Show stopper for me, I won't be bothered to use "CTRL+ALT+DEL" every time a video ends to get my desktop back. I believe it is a known bug too.

EDIT: possible workaround is to edit the compatibility options of mpc-hc.exe and disable Aero from there. The Desktop recovers in this case.
Forgot that indeed. I made a hotkey in my video card's control panel so I can execute "reload display driver" after exiting. That's a lot faster than switching with "CTRL+ALT+DEL".
It's a known bug, but I don't know how to deal with it otherwise, yet.

Polcius
19th January 2011, 15:42
What version of Windows? If on Windows Vista or newer, is Aero enabled or disabled? How many monitors and if there is more than one, what is the resolution and refresh rate of each? Which build of MPC-HC? Also, open an affected video in MPC-HC and tell me all that is listed in the menu: Play-> Filters.


Windows 7 32bit; Aero enabled; one monitor (1360x768 @60Hz); MPC-HC 1.4.2825.0 (MSVC 2010 SP1 (SSE)).

In Play---Filters, I have (top to bottom): EVR-CP, Default DirectSound Device, MPC Video Decoder, Audio Switcher, DTS Decoder.

Using default renderer settings, the problem is that I get hiccups, I assume they're dropped frames.

This happens with every mkv.

namaiki
19th January 2011, 15:59
Could you post a Ctrl+J graph? (open the video in MPC-HC, press Ctrl+J and make sure that the window is large enough to read all statistics and play the video until you see a few hiccups, pause the video and upload a screenshot of what you see)

Polcius
19th January 2011, 16:20
Could you post a Ctrl+J graph? (open the video in MPC-HC, press Ctrl+J and make sure that the window is large enough to read all statistics and play the video until you see a few hiccups, pause the video and upload a screenshot of what you see)


http://dl.dropbox.com/u/8304445/CTRLJ.jpg

Polcius
19th January 2011, 16:21
PD: If it helps, I have the same problems using VLC's DXVA. I have a log from VLC: http://dl.dropbox.com/u/8304445/VLClog.log

WonderCsabo
19th January 2011, 16:22
If i choose the exact multiple frequency for the fps (for example 59.97Hz for 59.97fps, or 50Hz for 25fps) and change to full screen with automatic frequency changing the playing stutters.
The stuttering are not always present, for a time it's ok, and stuttering again, then ok, then stuttering, etc.
But not just the video stutters, the refreshing of the Ctrl+J statistics, too.
Toggling DXVA does not make a difference.

If i change the appropriate frequency with Windows, this issue does not exist.
If i change a not exactly appropriate frequency with MPC-HC (eg: 75Hz for 30fps) this issue does not exist.

Devs: are you aware of this isse? I forgot to mention that opening Options dialog stops the stutterings.

After discussing with JanWillem32, i opened bug #1087 (https://sourceforge.net/apps/trac/mpc-hc/ticket/1087).

Polcius: Please use thumbnails!

namaiki
19th January 2011, 16:25
http://dl.dropbox.com/u/8304445/CTRLJ.jpg
Well, that looks normal as far as I can tell. Is the issue gone if you disable DXVA? (View-> Options-> Internal Filters-> Right-click the right column and click Disable DXVA filters)

Polcius
19th January 2011, 16:32
Well, that looks normal as far as I can tell. Is the issue gone if you disable DXVA? (View-> Options-> Internal Filters-> Right-click the right column and click Disable DXVA filters)

Well, I don't see hiccups, but the video is choppy as hell.

If I enable DXVA and enable "recommended renderer settings" (disable desktop composition, alternative vsync, FFP processing) the hiccups don't appear and the video quality is good. The problem is that I get occasional tearing; and a lot of tearing in fast moving scenes.

WonderCsabo
19th January 2011, 16:35
Are you sure that you don't see the judder and the low-fps stutter?

Polcius
19th January 2011, 16:38
Are you sure that you don't see the judder and the low-fps stutter?

What's the low-fps-stutter?

What I see are more like "interruptions" in the judder. :confused:

Peekstra
19th January 2011, 16:53
Polcius, there's a mismatch between your display's refresh rate and the source material (23.976 vs 60hz).

WonderCsabo
19th January 2011, 16:54
What's the low-fps-stutter?

What I see are more like "interruptions" in the judder. :confused:

Because of the low fps, the movements are not smooth, fast movements can jam, and the contrast borders can vibrate.

mariner
19th January 2011, 17:14
Anyone who had problems described under using recent svn builds, please try this test build: http://www.mediafire.com/?rwdmy93u83q84nf

2. EVR/CP cause black screen(no video), ....

:thanks:



Greetings sansnom05.

Black screen using EVR/CP with w7x86/HD5670/cat 10.6, not using 10bit.

Last build that works: 2833.

Polcius
19th January 2011, 17:16
Because of the low fps, the movements are not smooth, fast movements can jam, and the contrast borders can vibrate.

Well Ok... And how can I fix this?

@Peekstra: Yes I know, but my display doesn't have 24hz support (it's a crappy Samsung LB350).

mariner
19th January 2011, 17:28
EVR/CP still causes black screen. MPC HC x86 on Win 7 x64, ATI 5970, Catalyst 10.9. Everything up to 2808 works, 2848 does not, the test version on mediafire does not... do not know about the in between versions.

It is not limited to any of the 10 bit options. Without any of the 10bit options i get the black screen (i never used them anyhow). It is also regardless of decoder. Newer catalysts (>10.9) have unfortunate other problems (unrelated to mpc hc, related to crossfire configurations, fan control, resolutions above 2536 horizontal), which make them unusable (at least for me). It is also unlikely that the "black screen" issue is related to the catalyst driver. My system: 980X, 5970 (which is a dual GPU board and works in crossfire mode), 12GB RAM, Windows 7 x64 professional, Cat 10.9. A friend with with an almost identical configuration (albeit cat 10.10 and a 920i7) has the exact same problem. All decoders are effected (internal and external, DXVA and non DXVA) and renderer settings do not make any difference (color management on/off, Input 10bit on/off, output 10bit on/off) etc. Also MPC HC 2808 works!

You are in error here. The black screen issue has nothing to do with D3D Fullscreen mode. It affects both normal modes and D3D Fullscreen mode of MPC HCs custom presenter. A revert or bugfix is needed - also i know of no case where the upgrade to cat 10.12 fixed this. You are talking about other issues. Please also note Peekstras comment. He tried cat 10.12a (not even "official") and that did not work with DXVA enabled. It also did not work with other renderer settings enabled. Clearly something was broken. This is a bug and not a problem of the cat driver!


Thanks to Casshern for giving a good summary of EVR/CP black screen problem.

WonderCsabo
19th January 2011, 17:36
Well Ok... And how can I fix this?

You cant. This is the behaviour of low fps material. But maybe that your problem is not low-fps-stutter or judder. How long are the stoppages?

Polcius
19th January 2011, 17:42
You cant. This is the behaviour of low fps material. But maybe that your problem is not low-fps-stutter or judder. How much time long are the stoppages?

Very fast, like a millisecond or something like that XD.

It's like, when an object is travelling from point A to B, the motion is not smooth in its whole; there's a millisecond where the frame "skips".

I'll try to record a video for you to see it. Maybe I'm turning insane XD.

WonderCsabo
19th January 2011, 17:46
Very fast, like a millisecond or something like that XD.

It's like, when an object is travelling from point A to B, the motion is not smooth in its whole; there's a millisecond where the frame "skips".

I'll try to record a video for you to see it. Maybe I'm turning insane XD.

Then it's likely judder and/or low-fps-stutter. You can only help the first by buying a 24*n Hz capable display.

v0lt
19th January 2011, 17:47
Revision 2863
...
-changed OSD color scheme to make sharp text look better, by bobdynlan

@bobdynlan
Is it possible to make the OSD bit transparent?
Example:
http://img46.imageshack.us/img46/4558/osdf.th.jpg (http://img46.imageshack.us/img46/4558/osdf.jpg)

cca
19th January 2011, 17:48
Forgot that indeed. I made a hotkey in my video card's control panel so I can execute "reload display driver" after exiting. That's a lot faster than switching with "CTRL+ALT+DEL".
It's a known bug, but I don't know how to deal with it otherwise, yet.

Some additional observations when I test-used D3D fullscreen mode. The video was jerky, while the same video was OK in windowed mode and Aero On. After some fiddling with the settings, it seems that using Alternate Vsync with a negative offset improves things a lot, in my case the problem vanished.

I'll keep using it with those settings to see if any other problems will appear.

janos666
19th January 2011, 18:13
That shader just bends the linear gamma to almost 2.2 (256/563). I could also have used "brightness, contrast and gamma control" to set a gamma value. Another option could be to adapt the lcms input gamma to .9, 1.0, 1.1, et cetera.

I believe that you should use the same math function when you apply the gamma weighting on the linear data which you used to linearize the original RGB data and let lcms to convert between the source profile (the assumed profile for Rec709 materials) and your display profile.
If you do the gamma weighting with a different curve you used to linearize the wighted data then you have to use a different source profile for lcms. But why would you do that? It only makes things more complicated. (And I am not sure about the results of the custom post-process filters if you linearize that data incorrectly.)

for(int i = 0; i < 3; i++) s1[i] = (s1[i] > .081)? pow((s1[i]+.099)/1.099,1/.45) : s1[i]/4.5;// R, G and B processing
return pow(tex2D(s0,tex),256/563.);// wide gamut RGB output

I think this will cause a serious mess. It basically inverts the Rec709 encode curve which shouldn't be done.

for(int i = 0; i < 3; i++) s1[i] = (s1[i] > .081)? pow((s1[i]+.099)/1.099,1/.45) : s1[i]/4.5;// R, G and B processing
for(int i = 0; i < 3; i++) s1[i] = (s1[i] > .018)? 1.099*pow(s1[i],.45)-.099 : s1[i]*4.5;// R, G and B processing

It can work. But I would recommend:
return pow(tex2D(s0,tex),100/235.);
return pow(tex2D(s0,tex),235/100.);

JanWillem32
19th January 2011, 19:01
@janos666 To multiply internally and have linear shifts in brightness when manipulating the color values, an absolute 0 to 1 linear internal scale is needed. Many rendering engines work that way, and then convert the picture to a gamma of about 2.2 as one of the screenspace end stages.
The only reason why I don't convert back with the video gamma function is the ghastly bad black values it produces, usually including banding. (Calibrated CRT and 3LCD projector, both the same result. I will calibrate from 2.2 to 2.6 gamma, depending on what I'm working on.)
I know that many videos don't actually use the specified gamma transfer function to begin with, but it's the best assumption I can make when processing DVD and blu-ray media. I do switch the output gamma setting of the final pass color management a lot. The color management uses a single-power gamma function of 2.2, 2.35 or 2.4 to build the LUT, it doesn't receive a gamma transfer function.

@cca Do you have the latest one I compiled (2866)? The one I compiled before that had VSync failures. That problem has also been solved in the main branch.

mindbomb
19th January 2011, 19:01
What version of Windows and what sound card? The volume controls don't work as such on my PC.
I'm on Windows 7 with one of those integrated Intel High Definition Audio things.

Does MPC Audio Renderer appear in the menu: Play-> Filters? If you click that, there is an option to enable/disable WASAPI in newer builds of MPC-HC.

oh, you're talking about the audio renderer, im was talking about the ac3/dts/mpeg audio decoder.

but anyway, that brings up something else, the arcsoft audio decoder hd and mpc audio renderer don't work together. the video will just refuse to play and stay at 00:00

dansrfe
19th January 2011, 19:05
I can't seem to enable WASAPI in MPC-HC even when I select MPC Audio Renderer it defaults to the Default DirectSound Renderer.

cca
19th January 2011, 19:07
@cca Do you have the latest one I compiled (2866)? The one I compiled before that had VSync failures. That problem has also been solved in the main branch.

Yes, I have the 2866 from your post. Only happens in D3D fullscreen, regardless of 10bit output and shaders used.
In the main changelog I see some tearing fix, I experience stutter not tearing. Fixed by setting -100 negative offset to vsync. Tried a few videos so far, works fine with that setup.

sansnom05
19th January 2011, 19:12
Thanks to Casshern for giving a good summary of EVR/CP black screen problem.

Do you want to try the latest svn builds see it's fixed for you? Since xvidvideo.ru & XhmikosR didn't build it for now, I've uploaded the vanilla r2870 builds here, x86/x64 both included, only .exe.

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

MSVS2010 SP1Beta + Cross-mingw GCC 4.5.2 stable from xvidvideo.ru

mindbomb
19th January 2011, 19:39
I can't seem to enable WASAPI in MPC-HC even when I select MPC Audio Renderer it defaults to the Default DirectSound Renderer.

It works for me when i use ffdshow for truehd and ac3 and such, but output has to be 16 bit integer

it seems to only work with the internal dts/ac3 decoders if they are set to output 16 bit pcm

and it doesn't seem to work at all with arcsoft audio decoder hd, which is 24 bit output.

im using a realtek 882 on windows 7 64 bit. ill see if updating the drivers makes any difference
i get similar behavior on my laptop with IDT high definition audio and my htpc with a realtek 883

on my audigy, i can get 32 bit sorta working from ffdshow, but there is a persistant crackling sound.
arcsoft won't work at all on the audigy either.


so can mpc audio renderer only accept 16 bit audio, or is this because of hardware limitations on my end?

draden
19th January 2011, 20:56
Do you want to try the latest svn builds see it's fixed for you? Since xvidvideo.ru & XhmikosR didn't build it for now, I've uploaded the vanilla r2870 builds here, x86/x64 both included, only .exe.

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

MSVS2010 SP1Beta + Cross-mingw GCC 4.5.2 stable from xvidvideo.ru

I will answer also if I may, waiting for mariner: no, nothing changed with this build, still a nice black screen for all videos.

Compared to Casshern's summary, diffs are I'm using MPC-HC x64 and ATI 4780.

Nothing that can be set in Renderer Settings menu has any effect. Only solution is not using EVR Custom Pres. Other renderers are working (EVR, VMR-9, Haali etc...)

moonrak
19th January 2011, 22:04
I will answer also if I may, waiting for mariner: no, nothing changed with this build, still a nice black screen for all videos.

Compared to Casshern's summary, diffs are I'm using MPC-HC x64 and ATI 4780.

Nothing that can be set in Renderer Settings menu has any effect. Only solution is not using EVR Custom Pres. Other renderers are working (EVR, VMR-9, Haali etc...)

Same solution down here. Switched to regular "EVR" and no more black screen.
ATI 5770 with Catalyst 10.10's (10.12 would freeze my PC after a while).
No problems at all with "EVR Custom preset" in my notebook with ATI mobility 10.12 and integrated 4250 video.
No problems at all with "EVR Custom preset" in my media center PC with ATI 10.12 and 4350 video.
Operating system in all 3 PC's: Windows 7 x64

Moonrak

tetsuo55
19th January 2011, 22:51
@everyone with the black screen in EVR-CP problems:

* Please only test with Catalyst 10.12, we know it doesnt work in older versions because ati fixed a bug with mixing that makes all the changes we added possible in 10.12 (older versions before ati regressed might work too, not sure how far back one would need to go)

* Make sure you are using the latest build posted by sansnom and that your settings have been reset by deleting the registry key.

* When reporting a black screen problem with above settings please add information about the file, the video pin out data from the splitter properties and if possible a CTRL+J screenshot.

EDIT: there might be a relation with CCC, so make sure you install that too!

namaiki
19th January 2011, 23:19
it doesn't seem to work at all with...24 bit output.

i can get 32 bit sorta working...but there is a persistant crackling sound.

so can mpc audio renderer only accept 16 bit audio, or is this because of hardware limitations on my end?

What about ReClock (or other) with 24-bit and 32-bit output?

oh, you're talking about the audio renderer, im was talking about the ac3/dts/mpeg audio decoder.Well, if you're talking about just the decoders, then I'm not sure since everything will be resampled anyway... but some people prefer to output bit exact (using WASAPI or bitstreaming), and some prefer to output ieee float for more accurate rounding.

moonrak
19th January 2011, 23:53
@everyone with the black screen in EVR-CP problems:

* Please only test with Catalyst 10.12, we know it doesnt work in older versions because ati fixed a bug with mixing that makes all the changes we added possible in 10.12 (older versions before ati regressed might work too, not sure how far back one would need to go)

* Make sure you are using the latest build posted by sansnom and that your settings have been reset by deleting the registry key.

* When reporting a black screen problem with above settings please add information about the file, the video pin out data from the splitter properties and if possible a CTRL+J screenshot.

EDIT: there might be a relation with CCC, so make sure you install that too!

So this would explain also why I only have this issue in my PC and not the other two at home. My PC is the only one with 10.10's. I had to revert to those from 10.12's because they would freeeze my PC after some time of inactivity. This was a wide spread issue and I hope the January release will fix it.
I am using the newer Catalyst Preview in the three of them so that is not the problem, because it works fine in two PCs with 10.12's. Moorak

janos666
20th January 2011, 00:02
There is a new 11.1a catalyst version. It is newer than the 10.1 WHQL which is currently waiting for the WHQL stamp. You should try that.

moonrak
20th January 2011, 00:16
There is a new 11.1a catalyst version. It is newer than the 10.1 WHQL which is currently waiting for the WHQL stamp. You should try that.

Download link, please?
:)
Moonrak

clsid
20th January 2011, 00:38
http://lmgtfy.com/?q=11.1a+catalyst

ajp_anton
20th January 2011, 01:11
When playing "very wide" movies, encoded in 16:9 with black bars, played back on a 16:10 monitor, the encoded black bars are gray compared to the ones further out. Yes, I'm using the correct levels, the wrong levels look even worse. I'm using EVR-CP.
When switching to madVR with the exact same decoding settings, the black bars are completely black.

What can I do to fix this?
Win 7 x64, HD4850.

namaiki
20th January 2011, 01:20
When playing "very wide" movies, encoded in 16:9 with black bars, played back on a 16:10 monitor, the encoded black bars are gray compared to the ones further out. Yes, I'm using the correct levels, the wrong levels look even worse. I'm using EVR-CP.
When switching to madVR with the exact same decoding settings, the black bars are completely black.

What can I do to fix this?
Win 7 x64, HD4850.

Are you using any of the EVR Custom Pres. colour management options? If so, what about with those disabled?

Polcius
20th January 2011, 01:27
To Nvidia users: what are your video settings? (in the control panel) Do you have "inverse telecine" checked?

Thanks

moonrak
20th January 2011, 01:33
There is a new 11.1a catalyst version. It is newer than the 10.1 WHQL which is currently waiting for the WHQL stamp. You should try that.

Hi,
Installed new 11.1a's coming from 10.10.
WMP-HC works fine now, no black screen with EVR Custom preset.
Computer is (still) not freezing after inactivity as it used to do with 10.12's.
Moonrak

Mixer73
20th January 2011, 01:37
To Nvidia users: what are your video settings? (in the control panel) Do you have "inverse telecine" checked?

I don't play DVDs on my PC so this option is always off for me.

Polcius
20th January 2011, 01:38
I don't play DVDs on my PC so this option is always off for me.

I do, but I live in Europe so my DVDs are mostly PAL.