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

Casimir666
5th May 2008, 21:03
Let me please get some clarification on this recent change in support for dxva...

"ATI Radeon HD,..." that means all Radeon HD models? If so, why is HD3850/3870 singled out? The first time I saw the change I did not see the comma and thought that only the 3850/3870 models were supported.

And has all the problems with nvidia cards (including my own) led to the reason that nvidia is not in the list of dxva supported cards?

The homepage for the project still lists nvidia cards...

All ATI HD are supported as far as i know. For nVidia and video cards from other manufactuers it "should" (may?) works as long as they support bitstream acceleration, but there is more compatibility issues with mpc buildin dxva decoder.

Casimir666
5th May 2008, 21:19
Because I am am not the only one having problems with seeking with mkv/H264 files in DXVA mode, I thought I should post a bit more details about this problem

When I do this while debuging, I get an "Debug assertation failure" at line 224 in DXVADecoderH264.cpp
This is the code at this line:

CHECK_HR (BeginFrame(nSurfaceIndex, pSampleToDeliver));

The problem seems to be, that pSampleToDevlier turns negative due to the seeking; this is what I observe in the output window:

Negative reference time are not a problem on seek, because video decoder should also decode frames until previous IFrame (so before the seek point).

But assert failed on BeginFrame is a problem : can you tell me what is the value for hr variable when assertion occur ?

boyumeow
6th May 2008, 04:52
Was wondering any1 having the same problem as me.

I play a MTV.mp4(Video: MPEG4 Video (H264) 512x384 15.00fps Audio: AAC 22050Hz stereo 56Kbps) for awhile and stopped(did not close). Then I play it again, but this time the clip fail to play at all. I m using mpc-hc(r502), vista home 32, GT8600 (169.25), EVR custom, DXVA is enabled. No problem when DXVA is disable. Thanks.

Secondly, Filename contains unsupported characters (use only A-Z, 0-9) when I play any media (except .mp4) MPC-HC r502, not happen on r492.

Thanks.

Aleksoid1978
6th May 2008, 04:57
to Casimir666 and _xxl -
I am from Russia, that is my English is bad ...

Can you add select Monitor(if more than one) for FullScreen video(when change to FullScreen mode) - like it do in "The Kmplayer" http://www.kmplayer.com/forums/index.php, Because Nvidia 8xxx and 9xxx not support FullScreen Overlay and when see video on 2-n monitor no FullScreen Video ..

I am do it self - http://www.tosei.ru/isoft/MPC_HC_501.7Z - this is compiled already, for example.

See on Output Page in Setting

molitar
6th May 2008, 17:36
seems to play ok here with MPC r502 and ffdshow *shrug*


Ok I have tried with r502 and it failed also. So I tried EVR that worked.. tried DX7 and that worked.. But for ATI it's recommended for the fullscreen theatre mode to use Overlay mode.. I tried overlay mode and it failed. So the problem seems to be in overlay mode portion of MPCHC. I found D.Grayman episode 52 by Shinsen-Subs also failed to work in MPCHC.

Casimir666
6th May 2008, 20:11
to Casimir666 and _xxl -
I am from Russia, that is my English is bad ...

Can you add select Monitor(if more than one) for FullScreen video(when change to FullScreen mode) - like it do in "The Kmplayer" http://www.kmplayer.com/forums/index.php, Because Nvidia 8xxx and 9xxx not support FullScreen Overlay and when see video on 2-n monitor no FullScreen Video ..

I am do it self - http://www.tosei.ru/isoft/MPC_HC_501.7Z - this is compiled already, for example.

See on Output Page in Setting

Can you post a .patch file with Tortoise SVN with your modifications?

terence_13
6th May 2008, 21:04
But assert failed on BeginFrame is a problem : can you tell me what is the value for hr variable when assertion occur ?

If I did it correctly, then HR changes from S_Ok (=0x00000000) to E_Pending (=0x8000000a) when the Debug assertion occurs.

This is what I did:

In the function "DXVADecoder::BeginFrame..." under "case ENGINE_DXVA2 :" I have added the second of the following two lines:
if (SUCCEEDED (hr)) hr = m_pDirectXVideoDec->BeginFrame(pDecoderRenderTarget, NULL);
TRACE ("Hr is: (hr=0x%08x)\n", hr);<--this is the line I have added

This is what I see during a failed seek (or after openeing an mkv file that apparently does not play):

Hr is: (hr=0x00000000)
Deliver : 31149625 - 31569625 (Dur = 420000) {Delta prev = 420000} Ind = 1

---------------------------------------------------
everything OK until here, the the seeking occurs:
---------------------------------------------------

CAudioSwitcherFilter:: DeliverEndFlush
CDXVADecoder::Flush
CAudioSwitcherFilter:: DeliverNewSegment
Receive : -26565896 - -24895896 ( 1670000) Size=178587
GetFreeSurfaceIndex : 15
Hr is: (hr=0x00000000)
Receive : -24895896 - -24895895 ( 1) Size=68989
GetFreeSurfaceIndex : 6
Hr is: (hr=0x00000000)
Receive : -25725896 - -25725895 ( 1) Size=31858
GetFreeSurfaceIndex : 5
Hr is: (hr=0x00000000)
Receive : -26145896 - -25315896 ( 830000) Size=13210
GetFreeSurfaceIndex : 0
Hr is: (hr=0x00000000)
Receive : -25315896 - -23225896 ( 2090000) Size=28051
GetFreeSurfaceIndex : 1
Hr is: (hr=0x8000000a)
...(18 more times the same line)
Hr is: (hr=0x8000000a)
Error : 0x8000000a

Does that help you? My feeling is, if you find the reason for this bug, this could make some people happy currently complaining that files apparently do not play. (In fact I manage to play those files by seeking in debug mode many times until the file starts to play.

Casimir666
6th May 2008, 22:56
If I did it correctly, then HR changes from S_Ok (=0x00000000) to E_Pending (=0x8000000a) when the Debug assertion occurs.

This is what I did:

In the function "DXVADecoder::BeginFrame..." under "case ENGINE_DXVA2 :" I have added the second of the following two lines:
if (SUCCEEDED (hr)) hr = m_pDirectXVideoDec->BeginFrame(pDecoderRenderTarget, NULL);
TRACE ("Hr is: (hr=0x%08x)\n", hr);<--this is the line I have added

This is what I see during a failed seek (or after openeing an mkv file that apparently does not play):

Hr is: (hr=0x00000000)
Deliver : 31149625 - 31569625 (Dur = 420000) {Delta prev = 420000} Ind = 1

---------------------------------------------------
everything OK until here, the the seeking occurs:
---------------------------------------------------

CAudioSwitcherFilter:: DeliverEndFlush
CDXVADecoder::Flush
CAudioSwitcherFilter:: DeliverNewSegment
Receive : -26565896 - -24895896 ( 1670000) Size=178587
GetFreeSurfaceIndex : 15
Hr is: (hr=0x00000000)
Receive : -24895896 - -24895895 ( 1) Size=68989
GetFreeSurfaceIndex : 6
Hr is: (hr=0x00000000)
Receive : -25725896 - -25725895 ( 1) Size=31858
GetFreeSurfaceIndex : 5
Hr is: (hr=0x00000000)
Receive : -26145896 - -25315896 ( 830000) Size=13210
GetFreeSurfaceIndex : 0
Hr is: (hr=0x00000000)
Receive : -25315896 - -23225896 ( 2090000) Size=28051
GetFreeSurfaceIndex : 1
Hr is: (hr=0x8000000a)
...(18 more times the same line)
Hr is: (hr=0x8000000a)
Error : 0x8000000a

Does that help you? My feeling is, if you find the reason for this bug, this could make some people happy currently complaining that files apparently do not play. (In fact I manage to play those files by seeking in debug mode many times until the file starts to play.

Ok the DirectX surface is not ready :
http://msdn.microsoft.com/en-us/library/ms778817(VS.85).aspx

The HRESULT that is returned by IAMVideoAccelerator::BeginFrame shall be:
S_OK if the uncompressed surface is available and ready for use.
E_PENDING if the uncompressed surface is not yet available for use but will become available soon (if the uncompressed surface is being read for display and the reading/display of the surface has not yet been completed).
E_FAIL or E_INVALIDARG some other error indication only if a data format or protocol error is detected (such as an incorrect value of dwSizeInputData or a non-NULL pOutputData).

Could you try this quick fix in function CDXVADecoder::BeginFrame : put a loop around call to BeginFrame (be carefull there is 2 possibility wether you are using DXVA1 (Win XP) or DXVA2 (Vista) :

for (int nTry=0; nTry<5; nTry++)
{
hr = m_pAMVideoAccelerator->BeginFrame(&BeginFrameInfo);
if (SUCCEEDED (hr)) return hr;
TRACE ("QueryRenderStatus FAILED : %d - %d (hr=0x%08x)\n", dwTypeIndex, dwBufferIndex, hr);

Sleep(10);
}

It's a quick fix i'll see later if it could be improved.

Aleksoid1978
7th May 2008, 00:33
Can you post a .patch file with Tortoise SVN with your modifications?

Here - http://www.tosei.ru/isoft/mpc_hc_501rev_diff.7z

I have some error do patch for Resource file, AND include mplayerc.rc, mplayerc.ru.rc, resource.h in archive

I in them have added only change for new combobox

Sulik
7th May 2008, 02:38
This is actually a special case for BeginFrame from the original DXVA 1.01 spec (also applies to GetBuffer).

BeginFrame (and GetBuffer in DXVA1) may return E_PENDING if the HW is not able to accept more data at this time.
The correct code should be:

while (E_PENDING == (hr = m_pAMVideoAccelerator->BeginFrame(...)))
{
Sleep(1); // wait a bit
}

Aleksoid1978
7th May 2008, 05:21
To Casimir666 -

I have this error on link:

3>PPageFormats.obj : error LNK2001: unresolved external symbol _CLSID_ApplicationAssociationRegistration
3>Release Unicode\mplayerc.exe : fatal error LNK1120: 1 unresolved externals
3>Build log was saved at "file://d:\Distrib\Development\C++\Source\mpc-hc\trunk\src\apps\mplayerc\Release Unicode\BuildLog.htm"
3>mplayerc - 2 error(s), 7 warning(s)

error show on this source code in PPageFormats.cpp:

...
HRESULT hr = CoCreateInstance(CLSID_ApplicationAssociationRegistration,
NULL,
CLSCTX_INPROC,
__uuidof(IApplicationAssociationRegistration),
(void**)&m_pAAR);
...

on CLSID_ApplicationAssociationRegistration.

on Compiling this PPageFormats.cpp no error

if I comment this - no error and i got working .exe

Casimir666
7th May 2008, 07:16
To Casimir666 -

I have this error on link:

3>PPageFormats.obj : error LNK2001: unresolved external symbol _CLSID_ApplicationAssociationRegistration
3>Release Unicode\mplayerc.exe : fatal error LNK1120: 1 unresolved externals
3>Build log was saved at "file://d:\Distrib\Development\C++\Source\mpc-hc\trunk\src\apps\mplayerc\Release Unicode\BuildLog.htm"
3>mplayerc - 2 error(s), 7 warning(s)

error show on this source code in PPageFormats.cpp:

...
HRESULT hr = CoCreateInstance(CLSID_ApplicationAssociationRegistration,
NULL,
CLSCTX_INPROC,
__uuidof(IApplicationAssociationRegistration),
(void**)&m_pAAR);
...

on CLSID_ApplicationAssociationRegistration.

on Compiling this PPageFormats.cpp no error

if I comment this - no error and i got working .exe

I suppose you are using VS2005, so you need to install "Windows SDK" (link on first post) and configure visual studio to use Windows SDK path for include / lib

Leak
7th May 2008, 09:46
This is actually a special case for BeginFrame from the original DXVA 1.01 spec (also applies to GetBuffer).

BeginFrame (and GetBuffer in DXVA1) may return E_PENDING if the HW is not able to accept more data at this time.
The correct code should be:

while (E_PENDING == (hr = m_pAMVideoAccelerator->BeginFrame(...)))
{
Sleep(1); // wait a bit
}
Maybe it's just me, but I'd throw a timeout in there instead of just hoping that it's going to stop being E_PENDING at some time in the future...

Aleksoid1978
7th May 2008, 12:44
I suppose you are using VS2005, so you need to install "Windows SDK" (link on first post) and configure visual studio to use Windows SDK path for include / lib

Already install SDK from link on first post and add path for include/lib ...

~bT~
7th May 2008, 18:00
hello ppl!

can someone tell me if its poss to take screenshots of DVD's while keeping A/R intact pls?

if it is poss, how to do it?

cheers!

unskinnyboy
7th May 2008, 18:30
hello ppl!

can someone tell me if its poss to take screenshots of DVD's while keeping A/R intact pls?

if it is poss, how to do it?

cheers!

In MPC, go to View -> Options -> Playback -> Output.

Set DirectShow Video to VMR9 (windowed). Now, if you do a Save Image..., then the resultant screenshot should have the correct AR.

terence_13
7th May 2008, 19:31
Could you try this quick fix in function CDXVADecoder::BeginFrame : put a loop around call to BeginFrame (be carefull there is 2 possibility wether you are using DXVA1 (Win XP) or DXVA2 (Vista) :

for (int nTry=0; nTry<5; nTry++)
{
hr = m_pAMVideoAccelerator->BeginFrame(&BeginFrameInfo);
if (SUCCEEDED (hr)) return hr;
TRACE ("QueryRenderStatus FAILED : %d - %d (hr=0x%08x)\n", dwTypeIndex, dwBufferIndex, hr);

Sleep(10);
}
It's a quick fix i'll see later if it could be improved.


while (E_PENDING == (hr = m_pAMVideoAccelerator->BeginFrame(...)))
{
Sleep(1); // wait a bit
}

SPLENDID! Both methods worked fine: I can play now all files and seek in them at will-->no random Debug Assertion anymore. This is the code I have now at CDXVADecoder::BeginFrame under the ENGINE_DXVA2 (I have Vista):

if (SUCCEEDED (hr))
{
while (E_PENDING == (hr = m_pDirectXVideoDec->BeginFrame(pDecoderRenderTarget, NULL)))
{
Sleep(10); // wait a bit
TRACE ("Waiting for hr=S_OK (hr=0x%08x)\n", hr);
}
}
Now instead of a Debug Assertion the loop is entered 2 two 3 times for about 24 frames (coincidence?), then it works without entering the loop...like it needs some time to swing in...

There is another Debug Assertion poping up when I stop the playbak of files: It happens at line 220 in DXVADecoderH264.cpp: CHECK_HR (GetFreeSurfaceIndex (nSurfaceIndex, &pSampleToDeliver, rtStart, rtStop));

The return code 0x80040211..no idea what this stands for.

Thanks for your help!

kintantee
7th May 2008, 20:54
Got my Radeon HD3450 in the mail yesterday and installed it on my XP Media Center.

I am finally happy with x264 DXVA playback in mpc-hc. However, I need to use the Overlay renderer to get good picture quality. The VMR's don't look good. My goal is to watch x264 files with the media center app which uses WMP. However, I can't seem to get WMP to use a renderer other than VMR. I have given the overlay renderer the highest merit possible but that doesn't work.

Also, I feel like I have taken a step back in MPEG decode quality from my Nvidia 7600GS.

My questions are as follows:

1) Can I force a different renderer in WMP some other way than the merit system?

2) Should I try to install EVR for XP? Can I get hardware acceleration with that renderer and does it look good?

3) Will MPEG decode quality improve if I get a better ATI card or is ATI simply inferior to nvidia when it comes to MPEG playback?

I thank you for reading this far and I thank you even more for replying.

~bT~
7th May 2008, 23:26
In MPC, go to View -> Options -> Playback -> Output.

Set DirectShow Video to VMR9 (windowed). Now, if you do a Save Image..., then the resultant screenshot should have the correct AR.

:thanks:

ADude
8th May 2008, 00:48
My questions are as follows:

1) Can I force a different renderer in WMP some other way than the merit system?

2) Should I try to install EVR for XP? Can I get hardware acceleration with that renderer and does it look good?

3) Will MPEG decode quality improve if I get a better ATI card or is ATI simply inferior to nvidia when it comes to MPEG playback?

I thank you for reading this far and I thank you even more for replying.

1) Don't Know.

2) Yes. Don't Know (but answer is earlier in this thread, I believe).

3) No. No.

Jackie
8th May 2008, 07:39
Hi,

there is a thing I do not understand: I use mplayerhc on my 780G chipset, and want to use the internal decoders of mplayer only. However, I have also installed ffdshow. When I watch a video supported by mphc, ffdshow is additionally enabled, i.e. when I right-click on my Mediaplayerwindow and select "Filter", I can see that the MPC-Videodecoder is used, but in that chain also ffdshow, so both seem to be used.

I have now solved the problem by entering mplayerhc.exe in ffdshows-excludelist, but I simply would liek to understand why this happens, i.e. why does ffdshow "jump in", although I use mplayerhc's internal decoders?

Thanks alot.

thuan
8th May 2008, 09:29
Likely you have enabled raw processing inside ffdshow video decoder. That setting is in ffdshow video decoder configuration -> codecs -> the last entry "raw video" there. Just disable it.

Casimir666
8th May 2008, 09:51
SPLENDID! Both methods worked fine: I can play now all files and seek in them at will-->no random Debug Assertion anymore. This is the code I have now at CDXVADecoder::BeginFrame under the ENGINE_DXVA2 (I have Vista):

if (SUCCEEDED (hr))
{
while (E_PENDING == (hr = m_pDirectXVideoDec->BeginFrame(pDecoderRenderTarget, NULL)))
{
Sleep(10); // wait a bit
TRACE ("Waiting for hr=S_OK (hr=0x%08x)\n", hr);
}
}
Now instead of a Debug Assertion the loop is entered 2 two 3 times for about 24 frames (coincidence?), then it works without entering the loop...like it needs some time to swing in...

There is another Debug Assertion poping up when I stop the playbak of files: It happens at line 220 in DXVADecoderH264.cpp: CHECK_HR (GetFreeSurfaceIndex (nSurfaceIndex, &pSampleToDeliver, rtStart, rtStop));

The return code 0x80040211..no idea what this stands for.

Thanks for your help!

Could you try once again with this :
http://www.zshare.net/download/11709923c4c554cc/

If it's ok I'll keep it as final patch.

The other assertion is not a problem when it's happen on stop of the video, because in this case error code return by GetFreeSurfaceIndex means "stop playing"

3ngel
8th May 2008, 10:03
Can i suggest 2 options?

1) "Play DVD directly" on "Open DVD" or at least permit to choose a default drive in order not to choose everytime the drive wich contains the DVD. I remember in some version of MPC, the playing started directly upon auto-detecting an inserted dvd

2) Please can you add .ac3, .dts, .avs to the filter when choosing "Open files..."? At the moment they are not listed (and so not viewed) when open the dialog box even if they are supported. You have to choose "view all", that is quite complex on repeated tests.

Thanks

Miryan
8th May 2008, 12:24
Can i suggest 2 options?

2) Please can you add .ac3, .dts, .avs to the filter when choosing "Open files..."? At the moment they are not listed (and so not viewed) when open the dialog box even if they are supported. You have to choose "view all", that is quite complex on repeated tests.

Thanks

You can associate .ac3 and .dts in the options > player > formats menu in the dvd audio file section.

3ngel
8th May 2008, 12:48
No, that's not what i mean.

I mean here

http://img170.imageshack.us/img170/8093/clipboard01tc1.png

Miryan
8th May 2008, 16:56
No, that's not what i mean.

I mean here

You can choose all files (*.*) at the bottom.

3ngel
8th May 2008, 17:21
As i've said

You have to choose "view all", that is quite complex on repeated tests.

View all = *.*
It's quite unnerving on repeated tests.

Moreover, it's quite strange, why a supported format is not included in the filter list? :)

fitbrit
8th May 2008, 17:56
The MPC-HC project site provides stand-alone DirectShow filters, the H.264 decoder being MPCVideoDec. Place MPCVideoDec.ax in the System32 folder and register it using regsvr32 MPCVideoDec.ax
The filter that will be used by default is the one with the highest Merit Value.

http://sourceforge.net/projects/mpc-hc/


Thanks a lot for the answer. Sorry, I was away a few days, otherwise I would have thanked you before.

clsid
8th May 2008, 19:03
@3ngel

"Media files (all types)" in the Open dialog uses all the file extensions from "options > player > formats". So adding those three extensions there should do what you want.

terence_13
8th May 2008, 22:25
Could you try once again with this :
http://www.zshare.net/download/11709923c4c554cc/

If it's ok I'll keep it as final patch.

The other assertion is not a problem when it's happen on stop of the video, because in this case error code return by GetFreeSurfaceIndex means "stop playing"

THe patch works! BTW, the bigger the vertical resolution (1920x1040 vs 1920x800 vs..), the more pending cycles are made-->so it really seems the 8800 GT can not keep up with decoding for the first few frames. Those were the files were playback did not even (or seldom) start.

Thanks again!

Kado
8th May 2008, 22:28
Since I got a 9800GTX I wanted to try the DXVA2 stuff from MPC HC (because my older 6800GS was DXVA1 only it wasn't possible) but evr displays a washed out picture that's just annoying.
After some talk with Casimir I've done some tests and to fix the problem you just have to replace the sp1 evr with the pre-sp1 evr and the picture is again proper with evr custom presenter and washed out with evr standard!

File with instructions here (http://rapidshare.com/files/113537090/evr.rar.html), if you don't like or can't get the file because of the provider say it so I can put it elsewhere.

Now about DXVA in MPC HC.
With this file (http://rapidshare.com/files/113536801/Suzumiya_Haruhi_no_Yuuutsu_-_C4_-_Special_Ending_-__Hitsuji__e569a2b7_.mkv.html) the internal MPC HC DVXA does not work but the Cyberlink h264 decoder from Power DVD 8 can use DXVA with it using evr.
I also have a file that with the internal decoder is played with video corruption and with cyberlink's is displayed just fine but is quite large to store online.

terence_13
8th May 2008, 22:39
Now about DXVA in MPC HC.
With this file (http://rapidshare.com/files/113536801/Suzumiya_Haruhi_no_Yuuutsu_-_C4_-_Special_Ending_-__Hitsuji__e569a2b7_.mkv.html) the internal MPC HC DVXA does not work but the Cyberlink h264 decoder from Power DVD 8 can use DXVA with it using evr.


This seems to be the same problem I had - Casimir fixed it with the recent patch he uploaded: This file plays fine, just at the beginning a few (of the newly introduced) pending loops are made. The only thing that surprises me are that these loops are made despite the low resolution - this does not really support my theory from above...

Kado
8th May 2008, 23:10
@terence_13
Can you provide an updated/patched build for testing?

3ngel
9th May 2008, 10:41
@3ngel

"Media files (all types)" in the Open dialog uses all the file extensions from "options > player > formats". So adding those three extensions there should do what you want.

Really? For me it's a "new" way of adding filters to a dialog box (can be interesting eheh), and in this case i can add that to "only add" without "managing" (MPC opens on DoubleClick) the file types, they can be added in the textbox, then "set" and then uncheck the corresponding row. It does work anyway (i speak for those in the same situation like me).

So very thank clsid (quite unusual but it works) :)

azulazules
9th May 2008, 12:43
Just started to use MPC-HC. Very nice piece of software for DXVA h264/vc1!

Maybe this option could be added? =>
MPC-HC automatically switches to the best refresh rate on the current display it starts playing a video according to the video refresh rate property and available refresh rates from screen that the user specified in "View/Options..."

For example, say monitor is declared by user capable of 50hz and 60hz at a user-given resolution for full-screen, then:
- if film rate is 24000/1000hz => monitor rate switched to 50hz
- if film rate is 25000/1001hz => monitor rate switched to 50hz
- if film rate is 25000/1000hz => monitor rate switched to 50hz
- if film rate is 30000/1001hz => monitor rate switched to 60hz
- if film rate is 30000/1000hz => monitor rate switched to 60hz

As a side effect, ReClock filter would then be able to fix the video refresh rate to the screen's.
And maybe with PowerStrip would we be able to have perfect sync' for xx000/1001hz videos.

bonanza
9th May 2008, 17:29
Hi,

i'm using Vista 32bit ultimate and your latest MPC-HC build.
Renderer: EVR Custom (have a look at attachments)
videodecoder: CoreAVC Pro 1.6
audiodecoder: AC3Filter

movie: x264 coded

but DXVA is disabled (have a look at the 2. picture at attechments)


how to enable this very nice feature?

azulazules
9th May 2008, 21:20
Hi bonanza...

Even though your PC could be capable of h264 (x264) DX Hardware Video Acceleration, not all h264 Videos can be accelerated. Some are just too "complex" for that sort to say.

First, check your video encoding features with, for example:
http://mediainfo.sourceforge.net/en
(use html view).

Then check:
codec profile and level
width and height of video
number of ref frames (ref=?)
bframes and bpyramid
x264 version used
and:
http://forum.doom9.org/showpost.php?p=1078122&postcount=1

Nice day 2U :-)

ADude
9th May 2008, 23:25
Hi,

i'm using Vista 32bit ultimate and your latest MPC-HC build.
Renderer: EVR Custom (have a look at attachments)
videodecoder: CoreAVC Pro 1.6
audiodecoder: AC3Filter

movie: x264 coded

but DXVA is disabled (have a look at the 2. picture at attechments)


how to enable this very nice feature?

CoreAVC Pro does not support DXVA.

( There was a commercial where Jessica Simpson said "1080i - I don't know what it is, but I want it."
It seems that a commercial for Doom9 would instead need the line " DXVA - I don't know what it is, but I want it". )

chros
10th May 2008, 09:33
You can disconnect the playlist window from the player. Just drag&drop. But I agree that the playlist is pretty much useless in its current condition.
I am reminding this project:
http://www.geocities.com/projectcowbell/

The source is also available, (it's based upon MPC v6.4.7.3, I think), so if it's not much work, you can apply these to the current MPC forks (you may want to make contact with the author for the patches, if he is available :) )

Thanks

sjwoo
10th May 2008, 17:38
I just wanted to thank the creators of this software -- you've given my Athlon XP 2800+ and ATI Radeon HD2400 Pro the ability to play back 720p MKV files! To see the CPU usage go from 100% to 15% is just unreal -- thank you, thank you, thank you.

Trahald
10th May 2008, 18:15
Attn: All
Please be cordial to the coders working on this project. Working with GPU is no easy task (illustrated by the fact noone else has been brave enough to try w/mpc)

Inflammatory statements against the coders can be possible violations of rules 4 and/or 9(caps).

Using free beta/alpha software implies you are a guinea pig and if that is an issue dont install it. (yes, even if other beta software has worked more consistently for you.) Points can be made without being insulting and/or demanding.

Moondust
10th May 2008, 23:10
COOL!!!

Revision 506 - Directory Listing
Modified Sun May 4 11:33:32 2008 UTC (7 hours, 39 minutes ago) by casimir666
Added : Ukrainian translation
Added : Evo & M2TS media format (for mpc file association)

now all we need is a built in splitter :D
I can only find revisions up to r502. r506 is nowhere to be found. Can you tell me where to find any builds above r502?

Aleksoid1978
11th May 2008, 01:58
I can only find revisions up to r502. r506 is nowhere to be found. Can you tell me where to find any builds above r502?


http://www.tosei.ru/isoft/MPC_HC_508.7Z

Compiled myself ...

kintantee
11th May 2008, 02:11
I can only find revisions up to r502. r506 is nowhere to be found. Can you tell me where to find any builds above r502?

Ya, users like you and gods like OP provide the builds. Go the changelog and you can download the source code and compile yourself using utilities listed on the first page.

speaking of the first page, r510 is posted!

neoufo51
11th May 2008, 08:42
I just got r510 and I love it.

These builds are making smplayer and mplayer in general feel ancient by comparison.

avivahl
11th May 2008, 10:47
Just finished testing MPC-HC r510 (32bits) from the first page... Video seeking is completely fixed for both DXVA and the internal (Software) Video Decoder. Best build so far.

When using DXVA, I still have the blockiness problem on some x264 videos.

Shinigami-Sama
11th May 2008, 10:52
When using DXVA, I still have the blockiness problem on some x264 videos.
I believe thats inherent to dxva on some cards skipping the inloop deblocking

glad to see the seeking is fixed
looks like its time for me update

Kado
11th May 2008, 13:23
I believe thats inherent to dxva on some cards skipping the inloop deblocking

Well I get some blockiness/corruption if using internal DXVA but with cyberlink's H264 decoder (using DXVA) I get a perfect picture, I'm using a 9800gtx by the way. I guess there must be some issues with the nvidia cards because it seems it works fine with ATI Radeon HD cards.

Anyway MPC HC just gets better and better! Thanks to the developers for their efforts and support! :thanks:

baadnewz
11th May 2008, 13:39
Hi im using MPC-HC x64 v 1.1.0.0.
Most of x264 encodes are working just fine and w/ hw acceleration via dxva. But i have some encodes especially anime encodes that not only that i have no hw accelearation, but i have no video image although the audio and subtitles are displayed

Here is a screenshot from mpc:
http://i25.tinypic.com/4q1r0y.jpg
And here is a sample from that encode:
http://www.filebox.ro/download.php?key=d5711c0f98f91a19bdeb8b4d2669b70e

Some info about encode via Mediainfo

Codec/Family : AVC
Codec/Info : Advanced Video Codec
Codec profile : High@L5.1
Codec settings, CABAC : Yes
Codec_Settings_RefFrames : 10
PlayTime : 1mn 19s
Bit rate : 2327 Kbps
Width : 1280 pixels
Height : 720 pixels
Display Aspect ratio : 16/9
Frame rate : 23.976 fps
Chroma : 4:2:0
Interlacement : Progressive

The video works fine in mpc-hc x32 with coreavc / ffdshow

Maybe in later builds of mpc-hc x64 the problem is fixed(meaning i can have video without hw acceleration) but I didnt managed to compile a new build.

P.S. Great work with DXVA and on top of all things you offer it FREE (unlike other h264 decoders).

One more question. For my curiosity mostly. Why on 64bit version i have 0-1% cpu load and on 32bit version with same video encode and settings in mpc, i have 5-10% cpu load.