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

alex_3d42
13th September 2010, 19:11
Can't find any channels in DVB-T mode :confused:

tetsuo55
13th September 2010, 19:14
Does this include secondary displays too (that's what I use for video output)?maybe, but if so then only in clone mode, try it :D

Underground78
13th September 2010, 19:14
Can't find any channels in DVB-T mode :confused:

Have you correctly configure your device in the options panel for capture ?

Are you sure you have correctly set the frequency range and the bandwidth in the scan dialog ?

Dal
13th September 2010, 19:21
maybe, but if so then only in clone mode, try it :D
Why is this? Isn't extended desktop D3D accelerated? What effect does this has on DXVA and such? Will I never have DXVA on secondary, extended desktop?

shahed26
13th September 2010, 19:25
If I'm not wrong, a very simple recording option is already there. At some point we will have to take a look to what is currently existing in the application and check whether is working or not and how to fix it/improve it, but I believe this is not top of the list.

Regards



I don't even know it exists ... :eek:

There is a recording function, but for some reason its not working. I was fiddling about with the recording settings, but had no joy. Everytime i click the record button, and then stop record, there seems to be no output recorded file, although i did set the directory for recorded video. :confused:

As i fully understand the recordding option is not a top priority atm, but I would greatly appreciate if this can be fixed sometime soon.

Thank you

tetsuo55
13th September 2010, 19:33
Why is this? Isn't extended desktop D3D accelerated? What effect does this has on DXVA and such? Will I never have DXVA on secondary, extended desktop?10bit mode works in exclusive mode. afaik that means no 8bit surfaces(e.g regular desktop) can be renderered.

Dal
13th September 2010, 19:46
10bit mode works in exclusive mode. afaik that means no 8bit surfaces(e.g regular desktop) can be renderered.
Ok, thank you for answering.

alex_3d42
13th September 2010, 19:47
Have you correctly configure your device in the options panel for capture ?

Are you sure you have correctly set the frequency range and the bandwidth in the scan dialog ?

Yes I have set the frequency range for France.

And the device is correctly configured in the options.

Sorry for my poor english :(

omri09
13th September 2010, 20:02
Should I move to msvc2010 versions or stay with msvc2008?
Xhmikosr doesn't upload msvc2008 very often to his FTP folder(no offense buddy).

SamuriHL
13th September 2010, 20:07
Doesn't matter. If you have a CPU that can support SSE2, then use 2010 builds.

omri09
13th September 2010, 20:24
E8400.
According to Wikipedia, this CPU support SSE3 too. :)
Therefore, I'll go with msvc2010.

SamuriHL
13th September 2010, 20:25
Yup. You'll be fine with that. Trust me. ;)

yesgrey
13th September 2010, 21:10
The difference between 8bit with dithering and 10bit with/without dithering will be hard to spot, though.
If it's 8 bit with dithering from 16 bit / 32 bit FP processing, versus 10 bit with 10 bit processing, maybe it's not that hard... but when/if you add 10 bit output with dithering... ;)

cicciociccio2
13th September 2010, 22:42
Sorry for my bad english... :(

Is possible to include a basic and simple version of audio equalizer with audio normalization (like as ffdshow)?
I think it is a useful function for a multimedia player ;)

Tnx ;)

Alexander01
14th September 2010, 03:39
I did some comparsions again and I have to say i still prefer the 10-bit output in D3D over the 8bit color with dithering from madVR. In scenes where the sun is shining the sunshine is just a bit more lively and richer to me with 10-bit. I think because of the extra color shades.

It would be nice if I could use the renderer quality of madVR with the 10-bit color output in MPC-HC. Sometimes I see some blocky lines in red colors that I don't see with madVR.

v0lt
14th September 2010, 04:03
What is the file \src\filters\transform\MPCVideoDec\ffmpeg\libavcodec\allcodecs.c? Why is it needed?

that there is not one:
\src\filters\transform\MPCVideoDec\ffmpeg\config.h
\src\filters\transform\MPCVideoDec\ffmpeg\ffcodecs.h
:confused:

Snowknight26
14th September 2010, 04:17
It would be nice if I could use the renderer quality of madVR with the 10-bit color output in MPC-HC. Sometimes I see some blocky lines in red colors that I don't see with madVR.

Could try the chroma upsampling shader.

hoborg
14th September 2010, 08:21
update code for QT PCM:
cleaned and optimized;
added support for 'in24', 'fl64' and 8-bit 'sowt';
small corrections in MP4Splitter.

QT_PCM.patch - http://www.mediafire.com/?a93i8u7itou5d7i
mpc-hc_x86_QT_PCM_patch.7z - http://www.mediafire.com/?2yp53bq5pi3u44a

Hi.
Thanks for your update.
There are still some *.MOV samples (http://hobring.esero.net/saf/samples/qt_pcm.zip) with PCM audio inside that doesnot work - there is no audio pin output.

Ticket (https://sourceforge.net/apps/trac/mpc-hc/ticket/763)

pankov
14th September 2010, 08:58
Alexander01,
can you upload a small sample showing this "better 10bit vs. madVR" behavior?
(you can use mediaFire for hosting it)

tetsuo55
14th September 2010, 09:00
We need help from the community.

MPC-HC has very few developers and we need many more to fix all the bugs and reach the 2.0 milestones on the to-do list.

What was not shown in the 1.4 changelog is that 100's of commits where made to simplify compiling and to make the source easier to read. In other words Maintainability has improved considerably (and we're still improving it every day)

So we would like to ask all of you to help out fixing Bugs by providing us with patches, or better yet join the team and work on bugs.

We also need devs that want to work on some dedicated changes

* Implement libavcodec as a clean vanilla library, using the correct API (following the general direction of LAVFsplitter)

* Clean up and unify EVR-CP, VMR9-r and EVR-Sync into 1 (standalone) renderer

* Merge VSfilter/Directvobsub and the internal subtitle renderer and/or Rewrite the subtitle renderer as the windows port of a platform indepentend one(help is available).

* Fix the threading issues, by re-implementing sane threading.


Please let us know if you are interested and willing to take on any task needed.

We are trying to put everything on the tracker so there is 1 point where people can look for "fun" bugs to fix or features to implement.

Let me know how you feel about it, and if you want to keep it in the dark just attach a patch to the ticket your worked on, or open a new ticket with you patch for a non-bug item.
:thanks:

nevcairiel
14th September 2010, 09:44
* Clean up and unify EVR-CP, VMR9-r and EVR-Sync into 1 (standalone) renderer

Thats a bad idea.
First of, EVR is a Media Foundation renderer, which MS ported onto DirectShow. Mixing it with a pure DirectShow renderer like VMR9 would require quite some hacks all around.

Second, you should create one EVR to rule them all. When the future EVR can do all the nice things, including the features that EVR-CP got, and the sync things from the others, there is no need to split them anylonger -- Or was that your intention anyway?

tetsuo55
14th September 2010, 10:09
The intention is to have 1 .ax that has it all.

VMR9 would be implemented as a backup, 2nd rendering path, only used when the caps fail for EVR itself. It would be a minimalistic module of the renderer.

v0lt
14th September 2010, 15:24
Question on programming:
How to get the name of the current splitter from MpaDecFilter.cpp?

clsid
14th September 2010, 15:27
* Implement libavcodec as a clean vanilla library, using the correct API (following the general direction of LAVFsplitter)
That is not entirely possible. There is currently custom code for MSVC compatibility, which MPC uses for debug builds. There is also some custom code for some H.264 workarounds. The only thing that should be updated is the API calls to the library. And libswscale is also outdated.
* Clean up and unify EVR-CP, VMR9-r and EVR-Sync into 1 (standalone) rendererWhy in one .ax? I think it is a bad idea to combine distinct renderers, even when they might share a little bit of code. People should be able to install only the specific renderer(s) they need. Smaller files also means faster loading.
* Merge VSfilter/Directvobsub and the internal subtitle renderer and/or Rewrite the subtitle renderer as the windows port of a platform indepentend one(help is available).They already share their code. How subtitles are merged with the video differs between the two and that is by design. I think you mean to make the underlying code more modular? It could indeed use a major architectural redesign. That could hopefully fix the performance problems with subtitle animation.
* Fix the threading issues, by re-implementing sane threading.This should be top priority. Stability is currently one of MPC's biggest weaknesses.

----------------------

What do you think about the idea of moving the internal filters outside of mpc-hc.exe? The size of the binary could be greatly reduced by using the internal filters as external files.
Then there can be too situations:
1) The external filter is registered on the system. This allows usage by other applications as well. The external filter can be set as preferred with the corresponding checkbox on the Internal Filters page. (External Filters settings should be used only for third party filters as it requires more actions from a user).
2) The external filter is placed in the same directory as MPC (or for example a specific subdir called 'Filters'), but is not registered on the system. MPC will detect the presence filter and use it if enabled on the Internal Filters page.

MPC remains portable because of (2). Redundancy is reduced by (1) in cases where people use both MPC and some of its standalone filters.
This scheme also allows updating individual components and mixing different versions, which could be useful for (regression) testing.

Implementing this should be fairly straightforward. One difficulty however would be to make a distinction with regards to the settings for the filters. The filter should somehow know whether it is being loaded as a regular filter, or as an internal one. That way different settings can be used for the two use cases, and settings could also be stored in the MPC INI when needed. Having different settings is important, as one for example might want to activate DXVA in MPC, but not in other apps.
Perhaps one of the devs has a design idea on how to signal a filter to instruct it to store its settings in a different way?

tetsuo55
14th September 2010, 15:52
Codecs:
We can live for some patches to libavcodec, as long as their purpose is completely clear and well documented.
Renderer:
Supporting VMR9-R surfaces in the standalone renderer hardly adds any size, from what i understand 80-90% of the code is shared.
Subtitles:
Yes i was talking about the physical seperatedness in the code and the performance issues. For example vsfilter has a bunch of options that cannot be selected in the internal one
threading:
Yeah highest possible prio, as it blocks developement of the renderers too
Seperate out codecs:
This will be possible once the above is done, but i doubt Casimir will go for it.

nevcairiel
14th September 2010, 17:28
That is not entirely possible. There is currently custom code for MSVC compatibility, which MPC uses for debug builds.

While that kind of debugging is useful sometimes, its not really required. IMHO that patching of ffmpeg for the msvc compat is more trouble then worth. There are other ways to debug it without needing a JIT Debugger in the avcodec code.

v0lt
14th September 2010, 17:58
Hi.
Thanks for your update.
There are still some *.MOV samples (http://hobring.esero.net/saf/samples/qt_pcm.zip) with PCM audio inside that doesnot work - there is no audio pin output.

Ticket (https://sourceforge.net/apps/trac/mpc-hc/ticket/763)
added support for 'NONE' audio (old QuickTime PCM)

mpc-hc_x86_qt_pcm_NONE.7z (http://www.mediafire.com/?sbwnokvc2a5hnls)


qt_pcm_NONE.patch (http://www.mediafire.com/?2nuaadjc0t4mjat)

hoborg
14th September 2010, 19:11
@v0lt:
Thanks!

Mercury_22
15th September 2010, 13:21
I think there's an undeclared identifier in revision 2552 cause when I'm trying to buid the x64 version I'm geting this error 1> PinInfoWnd.cpp
1>PinInfoWnd.cpp(97): error C2065: 'GWL_WNDPROC' : undeclared identifier
1>
1>Build FAILED.

Just for the x64 (VS2010)

fastplayer
15th September 2010, 14:00
@Di Luo/sasnom05:
In rev2552, line 97 of PinInfoWnd.cpp (http://mpc-hc.svn.sourceforge.net/viewvc/mpc-hc/trunk/src/filters/PinInfoWnd.cpp?revision=2552&view=markup&pathrev=2552), according to the API, you need to use SetWindowLongPtr (http://msdn.microsoft.com/en-us/library/ms644898%28v=VS.85%29.aspx) instead of SetWindowLong if you want to run the app in 64-bit.

patch1
15th September 2010, 14:15
How can I reset parameters to default for none administrator users?

My computers are set up with one administrator account and multiple user accounts. After updates to MPC-HC during the last week it works fine in the administrator account but in user accounts MPC-HC always opens in full screen and only shows a larger movie progress bar with no other controls. Movies restart at the end of playing. The only way to quite MPC-HC is to logout.
Un-installing MPC-HC then re-installing MPC-HC does not help. Either does deleting
/users/<usr>/AppData/Roaming/Media Player Classic


btw
Windows 7, 32 bit
Catalyst 10.8
ATI Radeon HD 4600 Series
MPC-HomeCinema.1.4.2550.0.x86.MSVC2010

Edit
Never mind. Found answer.
Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\Software\Gabest]

btw.
Has anyone thought of adding this functionality to MPC-HC. It is not really that intuitive. Alternatively the installer could reset to default all users settings, not just the user installing MPC-HC.

Superb
15th September 2010, 14:18
@patch1: delete HKEY_CURRENT_USER\Software\Gabest\Media Player Classic from the registry.

Mercury_22
15th September 2010, 15:23
@Di Luo/sasnom05:
In rev2552, line 97 of PinInfoWnd.cpp (http://mpc-hc.svn.sourceforge.net/viewvc/mpc-hc/trunk/src/filters/PinInfoWnd.cpp?revision=2552&view=markup&pathrev=2552), according to the API, you need to use SetWindowLongPtr (http://msdn.microsoft.com/en-us/library/ms644898%28v=VS.85%29.aspx) instead of SetWindowLong if you want to run the app in 64-bit.

You also need GWLP_WNDPROC instead of GWL_WNDPROC

Maybe someone will add this to svn :)

Edit never mind it's already fixed in 2558 by xhmikosr

jos99
15th September 2010, 16:36
Using latest stable MPC-HC on default settings, 1080i HD H264 .ts TV recordings do not show in the correct aspect ratio (4:3 instead of 16:9), is this fixed in later svns or is there some setting I need to modify?

Mercury_22
15th September 2010, 18:25
Why the internal audio filters's settings (SampleFormat, SpeakerConfig, ...) can't be saved in the ini file and they are always saved in the registry (HKEY_CURRENT_USER\Software\Gabest\Filters\MPEG Audio Decoder) ?
Can someone fix this ?

clsid
15th September 2010, 18:45
It is because the internal filters are basically just separate (but embedded) filters that act independently of MPC. This issue is already on the bugtracker.

jos99
15th September 2010, 20:28
Using latest stable MPC-HC on default settings, 1080i HD H264 .ts TV recordings do not show in the correct aspect ratio (4:3 instead of 16:9), is this fixed in later svns or is there some setting I need to modify?
OK, this seems to be something to do with audio, recordings from an HD channel with only one MP2 audio track do not have the problem, if recording from a channel with an AC3 and MP2 audio channel, even if only one audio channel is recorded, the video shows as 4:3 in MPC-HC.

Aleksoid1978
15th September 2010, 22:55
OK, this seems to be something to do with audio, recordings from an HD channel with only one MP2 audio track do not have the problem, if recording from a channel with an AC3 and MP2 audio channel, even if only one audio channel is recorded, the video shows as 4:3 in MPC-HC.

Upload a sample.

jos99
15th September 2010, 23:33
Upload a sample.
Here it is Luxe TV HD AC3 (16MB) (http://www.mediafire.com/file/sz8a2sr7n0f9ibb/Luxe%20TV%20HD%20%28AC3%29.ts).

EDIT..doh, I just realised it is more likely a resolution issue- all the channels with the problem are 1440 x 1080, the 1920 x 1080 channels do not have a problem.

Aleksoid1978
15th September 2010, 23:44
Here it is Luxe TV HD AC3 (16MB) (http://www.mediafire.com/file/sz8a2sr7n0f9ibb/Luxe%20TV%20HD%20%28AC3%29.ts).

it's happen because AR 4:3 store in file header, but true AR - 16:9 store in video stream.
You need check - "Read AR from stream" in MPCVideoDec settings

http://s42.radikal.ru/i098/1009/50/22a3a521649dt.jpg (http://radikal.ru/F/s42.radikal.ru/i098/1009/50/22a3a521649d.png.html)

Superb
16th September 2010, 00:04
ATI Catalyst 10.9 is out...
http://sites.amd.com/us/game/downloads/Pages/downloads.aspx
Release notes (http://www2.ati.com/relnotes/catalyst_109_release_notes.pdf)

jos99
16th September 2010, 00:13
it's happen because AR 4:3 store in file header, but true AR - 16:9 store in video stream.
You need check - "Read AR from stream" in MPCVideoDec settings

Thanks! All files work perfectly now- any reason why the "Read AR from stream" setting is not in the main MPC-HC Options and why it is not on by default? Presumably all 1440 x 1080 video should always be 16:9 ratio as the HD spec does not allow for any other AR.

XhmikosR
16th September 2010, 00:57
It is enabled by default.

sarastro
16th September 2010, 09:12
ATI Catalyst 10.9 is out...
http://sites.amd.com/us/game/downloads/Pages/downloads.aspx
Release notes (http://www2.ati.com/relnotes/catalyst_109_release_notes.pdf)

From the releasenotes:
Resolved Issues for the Windows 7 Operating System

This section provides information on resolved issues in this release of the ATI Catalyst™ Software Suite for Windows 7. These include:
UVD clocks will now return to normal speeds after switching from HD to SD content

Did anyone experience difficulty with switching HD to SD content?

Mixer73
16th September 2010, 11:56
Seems download links of 2499 on Sourceforge are borked? I keep getting bounced back to the file list, tried all files and some mirrors, anybody else able to download?

Underground78
16th September 2010, 12:02
It works here (tested with the free.fr mirror).

Mixer73
16th September 2010, 13:15
I ended up grabbing 2561, and I see the bug with dragging and dropping DVR-MS files that results in MPC-HC trying to play 2 files at once is still alive and well.

Can someone else verify, if you have one DVR-MS file playing and drag another into MPC-HC window you get both audio and flashes between video of both clips?

I'm sure I put this on the Trac.

Polcius
16th September 2010, 17:24
I still get 50% CPU usage with the latest versions, no matter wich file I play. With VLC media player the usage is normal.

The high CPU occurs when I use EVR-CP. With any other renderer, the usage is low.

Superb
16th September 2010, 17:56
I still get 50% CPU usage with the latest versions, no matter wich file I play. With VLC media player the usage is normal.

The high CPU occurs when I use EVR-CP. With any other renderer, the usage is low.Cannot reproduce. Using Win 7 x86 and MPC-HC rev2561 (from xvidvideo.ru; vs2010). I have all internal filters disabled (including the audio switcher) and am using the latest ffdshow (also from xvidvideo.ru) to decode the audio. Video is decoded by MSFT H.264 DXVA decoder. Using EVR-CP, of course. Played back a 720p mkv file at ~5% cpu (E6750; 8800GT).

a. Try resetting MPC-HC's settings.
b. Give us more details regarding the issue. (environment, decoders, file type)

nuhkka
16th September 2010, 19:50
why doesnt mpc-hc come with the mediainfo.dll anymore