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

Snowknight26
9th April 2010, 19:52
It's normal. Why should extra filters be added to the filter chain when you get a working result with just Source filter -> Decoder -> Renderer?

Keiyakusha
9th April 2010, 19:56
Because it allows you to use postprocessing and anything else ffdshow capable of. Or allows you to see subtitles without using internal subtitles rendering. And it is possible to configure it to load when you need it to be loaded, and in mpc-hc external filters it will be always loaded.

EDIT: Well, if few people say its normal, then I guess I can't do anything with this. Thanks.
EDIT2: oh, is it possible to disable MPC-HC's graph builder and use the one in windows (like in some other players)?

GrandeBoma
9th April 2010, 20:02
Is it normal that the internal source filter of mpc-hc won't work properly with any commercial audio codec? I have tried arcsoft audio decoder hd, cyberlink audio decoder, sonic cinemaster audio decoder and all have the same limitation: no audio gets to the rendered although the chain is loaded correctly.

I can solve the problem by using an external demuxer like cyberlink, but it will not work with mpls files (message: "cannot render file") so I can't see discs with seamless branching

I am desperate to find a working solution for dts-hd in mpc-hc and I need to get an external decoder in the chain

MPC-HTPC
9th April 2010, 22:29
I am desperate to find a working solution for dts-hd in mpc-hc and I need to get an external decoder in the chain

I found a tutorial in the MediaPortal-Forum explaining how to get DTS-HD and DolbyDigital-TrueHD working with MPC-HC. The tutorial is meant for use with an ASUS Xonar HDAV 1.3 but maybe it will work with other soundcards too (except bitstreaming respectively pass-through will not work --> so maybe the explanations in the section "other settings" of the tutorial are not necessary). Nevertheless I haven't tried it yet, but I hope this helps! :)

Tutorial for DTS-HD and DolbyDigital-TrueHD with MPC-HC (http://forum.team-mediaportal.com/codecs-external-players-55/dts-hd-truehd-pass-trough-xonar-hdav1-3-a-76344/)

clsid
9th April 2010, 22:48
Normal? Are you sure? I'm not talking about some DXVA, but about ordinary software playback. If some filter configured to be loaded, and it works in other players or graphstudio, I think it should work here too? no?
Yes, in theory it should get loaded. It works on XP/Vista, but not on Windows 7. That is kind of odd since MPC uses its own custom graph builder. The same problem happens with DirectVobSub.

GrandeBoma
10th April 2010, 00:00
Tutorial for DTS-HD and DolbyDigital-TrueHD with MPC-HC (http://forum.team-mediaportal.com/codecs-external-players-55/dts-hd-truehd-pass-trough-xonar-hdav1-3-a-76344/)

I appreciate your input, but that workaround does not address my problem. Currently I have two different ways to set my system for playback:

1) For most bd's: have cyberlink or sonic splitter do the demuxing of m2ts file and connect them with whichever filter I want. Works like a charm

2) For bd's that require seamless branching capability (e.g. wall-e, ratatouille): have mpc internal splitter open mpls file and connect it with audio decoder. This solution also works but since no commercial codec seem to work, I can not decode dts hd master audio, so I only get the dts core.

This leaves me with few bd that have both seamless branching AND dts-hd ma which I can't listen at the best. This is cool, it's no big deal as I am still getting full dts core, but I would solve all my problems if I could just get arcsoft audio decoder hd or sonic cinemaster audio decoder to work with internal mpc splitter, and they don't :mad:

This is why I am trying to understand how mpc internal splitter works to see why would it not connect to anything except decoders who DON'T have dts-hd capability

Mercury_22
10th April 2010, 00:09
I appreciate your input, but that workaround does not address my problem. Currently I have two different ways to set my system for playback:

1) For most bd's: have cyberlink or sonic splitter do the demuxing of m2ts file and connect them with whichever filter I want. Works like a charm

2) For bd's that require seamless branching capability (e.g. wall-e, ratatouille): have mpc internal splitter open mpls file and connect it with audio decoder. This solution also works but since no commercial codec seem to work, I can not decode dts hd master audio, so I only get the dts core.

This leaves me with few bd that have both seamless branching AND dts-hd ma which I can't listen at the best. This is cool, it's no big deal as I am still getting full dts core, but I would solve all my problems if I could just get arcsoft audio decoder hd or sonic cinemaster audio decoder to work with internal mpc splitter, and they don't :mad:

This is why I am trying to understand how mpc internal splitter works to see why would it not connect to anything except decoders who DON'T have dts-hd capability

Try Nero 9 for DTS-HD and VC-1 (i) (I'm using it with internal splitter) :)

GrandeBoma
10th April 2010, 00:13
Try Nero 9 for DTS-HD and VC-1 (i) (I'm using it with internal splitter) :)

may I ask you how to get nero 9 codecs? nero 9 does not allow any other program to use its codecs :confused:

Mercury_22
10th April 2010, 00:16
may I ask you how to get nero 9 codecs? nero 9 does not allow any other program to use its codecs :confused:
Yes it does! manually regsvr32... the filters

GrandeBoma
10th April 2010, 00:24
Yes it does! manually regsvr32... the filters

I do not have nero 9. Will it work with the trial version?

Mercury_22
10th April 2010, 00:36
I do not have nero 9. Will it work with the trial version?
AFAIK no

GrandeBoma
10th April 2010, 00:55
I am thankful for your help, but I don't think another decoder will solve the problem. As far as I know, also sonic and arcsoft will connect with mpc splitter, but I noticed that they do this when they are not necessary (e.g. with pcm or ddtruehd tracks). It is when they get called to decode a mpls structure with dts hd ma that they run away and I think nero decoder will do the same. it must be in the splitter, that I have to find a solution for this. If there is any. Any runours of a dts-hd-ma free codec yet?

mark0077
10th April 2010, 01:14
Hi,

I have found quite serious problems with evr-cp over recent months, one which I repeated lastnight. When playing 24fps content back at 24hz, I was about half way through the movie, and the image looked very juddery. I checked the graph and it was perfectly flat, until I noticed it was actually playing at 12fps. I could see from the information area of mpc-hc that mpc-hc was dropping every second frame.......

Why would it do this?

I have attached a screenshot of thebehaviour. Hopefully it'll spark something in one of the developers minds as to the cause of this.

http://img193.imageshack.us/img193/5334/87811411.th.jpg (http://img193.imageshack.us/i/87811411.jpg/)

Then from time to time, randomly some content won't give any video output. See below, I see no output, I hear audio but no output. This is from the 300 blu-ray. The window suggests only 3 frames get drawn, then nothing.
http://img684.imageshack.us/img684/5026/nooutput.th.jpg (http://img684.imageshack.us/i/nooutput.jpg/)

I have a hunch the last issue is caused by mpc-hc not closing correctly, ie processes staying in memory. I think this because when using the /close flag, when starting movies from xbmc, mpc-hc seems to shut down incorrectly, with reclock not closing gracefully. I know it doesn't close correctly as reclock doesn't get to send the quit signal to the vbs resolution changer script using the /close flag. Just clicking the close icon on the window does shut it down correctly.

This was using the non dxva mpeg2 decoder, and then non dxva wvc1 decoder in mpc-hc, core i7 at 3.6ghz, gtx 295, windows 7.

Polcius
10th April 2010, 01:39
How can I get multi-channel sound?

With "1. System Default" audio renderer the sound is stereo.

But when I play the same movie in VLC or PowerDvd, I get multi-channel sound.

Thanks

BTW: Using Windows 7 32-bit, Creative X-Fi XtremeMusic, and Logitech X-540 speakers (5.1)

MPC-HTPC
10th April 2010, 06:15
I appreciate your input, but that workaround does not address my problem.

It was worth a try. ;) Hopefully you manage to find a solution for your problem!


When playing 24fps content back at 24hz, I was about half way through the movie, and the image looked very juddery. I checked the graph and it was perfectly flat, until I noticed it was actually playing at 12fps.

I experienced the same problem as you some time ago everytime I paused a 24fps movie (TV at 24Hz) and then resumed.
If I got your setup right, then you are using MPC-HC in combination with ReClock. What I can see from the statistics on your first screenshot is, that you have enabled Vertical Sync in MPC-HC. After I have turned off VSync (View --> Renderer Settings --> VSync --> untick VSync / alternatively you can just hit "V" on your keyboard) in MPC-HC, playback stayed smooth thanks to ReClock and the dropping framerate problem was gone.

GrandeBoma
10th April 2010, 10:30
perhaps some developers can provide a list of audio or video decoders that can work with the internal splitter in vista 32 bit evr-cp and reclock? pretty please? ;)

mark0077
10th April 2010, 14:52
It was worth a try. ;) Hopefully you manage to find a solution for your problem!




I experienced the same problem as you some time ago everytime I paused a 24fps movie (TV at 24Hz) and then resumed.
If I got your setup right, then you are using MPC-HC in combination with ReClock. What I can see from the statistics on your first screenshot is, that you have enabled Vertical Sync in MPC-HC. After I have turned off VSync (View --> Renderer Settings --> VSync --> untick VSync / alternatively you can just hit "V" on your keyboard) in MPC-HC, playback stayed smooth thanks to ReClock and the dropping framerate problem was gone.

So basically you use reclocks vsync rather than mpc-hcs? Ill try that. Pity that mpc-hcs behaves like this sometimes though, ie half frame rate.

namaiki
10th April 2010, 14:57
Please don't disable MPC-HC's EVR-Custom V-Sync. It's bad for your health and you might as well use Overlay or something that doesn't have it's own frame handling. For me, using only Reclock's v-sync with MPC-HC's off, I get massive stuttering every so often.

Of course, the above might not apply to you.

mark0077
10th April 2010, 15:17
But mpc-hc's own vsync is dropping half of my frames from time to time..... 24fps -> 12fps.

I wish there was a debug version of mpc-hc where reasons for dropped frames could be viewed. That would be fantastic.

namaiki
10th April 2010, 15:19
Could this be an nVidia driver issue? Try roll back to an older driver. Well, if you're willing to try. :p

mark0077
10th April 2010, 15:26
Its so hard to reproduce. It might happen once a month, so its really hard to test. I am using an nvidia driver that doesn't have that new bug where video is all stuttery. Who knows it could be nvidias fault, but mpc-hc actually shows the dropped frames number. I wonder what reasons could there be for it dropping exactly half of the 24 frames....

Scoty
10th April 2010, 16:13
I have a USB DVB-T Tuner and i can select this in the Option from MPC HC but i can not see TV. How can i use MPC HC with DVB-T?

Zero3K
11th April 2010, 00:04
Could someone please try implementing my request at https://sourceforge.net/apps/phpbb/mpc-hc/viewtopic.php?f=3&t=38 into it?

Dark Eiri
11th April 2010, 03:51
How can I get multi-channel sound?

With "1. System Default" audio renderer the sound is stereo.

But when I play the same movie in VLC or PowerDvd, I get multi-channel sound.

Thanks

BTW: Using Windows 7 32-bit, Creative X-Fi XtremeMusic, and Logitech X-540 speakers (5.1)

Did you set the audio codec to output in 5.1? It outputs in Stereo, by default.

odditory
11th April 2010, 04:13
I'd like to request a batch thumbnailing option, ideally from the cmdline. Call it from within a batch file and run it against a list of subfolders- presto. Even better would be the ability to point it at a root folder and have it parse all the subfolders, going through and video thumbnailing everything it encounters.

DMD
11th April 2010, 09:32
I can not understand whether the management of forced subtitles (Blu-Ray) only if he resides in splitter Blu-ray playlist files

I did a comparison MPCHC vs PWDVD10, anyone has any idea?

THANKS

example of Van Helsing (Italian) MPCHC
http://www.allfreeportal.com/imghost2/thumbs/571413graph MPCHC.png ('http://www.allfreeportal.com/imghost2/images/571413graph MPCHC.png')

http://www.allfreeportal.com/imghost2/images/86395Senza titulo-1.PNG (http://allfreeportal.com)



example of Van Helsing (Italian) PWDVD10
http://www.allfreeportal.com/imghost2/thumbs/829771graph PWDVD.png ('http://www.allfreeportal.com/imghost2/images/829771graph PWDVD.png')

http://www.allfreeportal.com/imghost2/images/524920Senza titulo-2.PNG (http://allfreeportal.com)

Virtual_ManPL
11th April 2010, 11:31
It's know, that CoreAVC decoder with Gabest splitter will give wrong ratio with some files ?

so
CoreAVC decoder + Gabest splitter = wrong
http://img59.imageshack.us/img59/7762/wrongm.th.jpg (http://img59.imageshack.us/i/wrongm.jpg/)


CoreAVC decoder + Haali splitter = good
MPC-HC/DivX decoder + Gabest splitter = good
http://img339.imageshack.us/img339/2985/goodu.th.jpg (http://img339.imageshack.us/i/goodu.jpg/)


example file
General
Format : Matroska
File size : 340 MiB
Duration : 22mn 51s
Overall bit rate : 2 081 Kbps
Encoded date : UTC 2008-10-08 22:24:02
Writing application : mkvmerge v2.2.0 ('Turn It On Again') built on Mar 4 2008 12:58:26
Writing library : libebml v0.7.7 + libmatroska v0.8.1

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L3.1
Format settings, CABAC : Yes
Format settings, ReFrames : 7 frames
Muxing mode : Container profile=Unknown@3.1
Codec ID : V_MPEG4/ISO/AVC
Duration : 22mn 49s
Bit rate : 1 847 Kbps
Nominal bit rate : 1 884 Kbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 16:9
Original display aspect ratio : 3:2
Frame rate : 23.976 fps
Standard : NTSC
Resolution : 8 bits
Colorimetry : 4:2:0
Scan type : Progressive
Bits/(Pixel*Frame) : 0.223
Stream size : 302 MiB (89%)
Writing library : x264 core 65 r998M 6768543
Encoding settings : cabac=1 / ref=7 / deblock=1:0:0 / analyse=0x3:0x133 / me=umh / subme=7 / psy_rd=1.0:0.0 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=6 / nr=0 / decimate=1 / mbaff=0 / bframes=16 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / keyint=240 / keyint_min=25 / scenecut=40(pre) / rc=2pass / bitrate=1884 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=0

Audio
ID : 2
Format : AC-3
Format/Info : Audio Coding 3
Codec ID : A_AC3
Duration : 22mn 51s
Bit rate mode : Constant
Bit rate : 192 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Stream size : 31.4 MiB (9%)
Title : Japanese 2.0
Language : Japanese

Text
ID : 3
Format : ASS
Codec ID : S_TEXT/ASS
Codec ID/Info : Advanced Sub Station Alpha
Title : English Subs
Language : English

Menu
00:00:00.000 : :OP / :Part 1 / :ED
00:10:28.962 : :Part 2
00:22:34.937 : :Preview

sample - DOWNLOAD (http://www.mediafire.com/?fmonjgjzzmm)

XPC
11th April 2010, 11:55
I have a USB DVB-T Tuner and i can select this in the Option from MPC HC but i can not see TV. How can i use MPC HC with DVB-T?

Find below some guidelines:

1- Make sure you have the right options (View->Options->Playback->Capture):
Default device: Digital
Digital settings (BDA):
Network Provider: Microsoft Network Provider (if present)
Tuner and Receiver: choose your device from the list

2- Open device (File->Open device)

3- Open the DVB services navigation bar (View->Navigation). The first time will be empty.

4- Only the first time, scan for channels by pressing button "Scan". Then you will get the Tuner scan dialog. Press
"start" for start searching. After some minutes you will get a list of chanels. Then press "save".

5- (temporary step) Re-open the device (file->Open device) to refresh the navigation bar with the list of services (Tv
channels). This will be fixed very soon.

Notes:
--------
If you don't get any channel in step 4:

1- Check that all required filters have been loaded. At least you need:
- Network Provider
- Tuner device
- Capture device
- MPEG-2 demultiplexer
- MPEG-2 sections and Tables
- Audio decoders
- Video decoders (for both MPEG-2 and H.264)
- Video and audio renderers

2- Doublecheck your antena connection and scan parameters (frequencies and bandwidth)

3- Make sure your device and drivers are BDA compatibles

I hope this helps.

XPC

Polcius
11th April 2010, 12:48
Did you set the audio codec to output in 5.1? It outputs in Stereo, by default.

Oops... No XD

Thanks, working fine now.

sneaker_ger
11th April 2010, 13:08
It's know, that CoreAVC decoder with Gabest splitter will give wrong ratio with some files ?

so
CoreAVC decoder + Gabest splitter = wrong
http://img59.imageshack.us/img59/7762/wrongm.th.jpg (http://img59.imageshack.us/i/wrongm.jpg/)


CoreAVC decoder + Haali splitter = good
MPC-HC/DivX decoder + Gabest splitter = good
http://img339.imageshack.us/img339/2985/goodu.th.jpg (http://img339.imageshack.us/i/goodu.jpg/)


example file
General
Format : Matroska
File size : 340 MiB
Duration : 22mn 51s
Overall bit rate : 2 081 Kbps
Encoded date : UTC 2008-10-08 22:24:02
Writing application : mkvmerge v2.2.0 ('Turn It On Again') built on Mar 4 2008 12:58:26
Writing library : libebml v0.7.7 + libmatroska v0.8.1

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L3.1
Format settings, CABAC : Yes
Format settings, ReFrames : 7 frames
Muxing mode : Container profile=Unknown@3.1
Codec ID : V_MPEG4/ISO/AVC
Duration : 22mn 49s
Bit rate : 1 847 Kbps
Nominal bit rate : 1 884 Kbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 16:9
Original display aspect ratio : 3:2
Frame rate : 23.976 fps
Standard : NTSC
Resolution : 8 bits
Colorimetry : 4:2:0
Scan type : Progressive
Bits/(Pixel*Frame) : 0.223
Stream size : 302 MiB (89%)
Writing library : x264 core 65 r998M 6768543
Encoding settings : cabac=1 / ref=7 / deblock=1:0:0 / analyse=0x3:0x133 / me=umh / subme=7 / psy_rd=1.0:0.0 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=6 / nr=0 / decimate=1 / mbaff=0 / bframes=16 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / keyint=240 / keyint_min=25 / scenecut=40(pre) / rc=2pass / bitrate=1884 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=0

Audio
ID : 2
Format : AC-3
Format/Info : Audio Coding 3
Codec ID : A_AC3
Duration : 22mn 51s
Bit rate mode : Constant
Bit rate : 192 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Stream size : 31.4 MiB (9%)
Title : Japanese 2.0
Language : Japanese

Text
ID : 3
Format : ASS
Codec ID : S_TEXT/ASS
Codec ID/Info : Advanced Sub Station Alpha
Title : English Subs
Language : English

Menu
00:00:00.000 : :OP / :Part 1 / :ED
00:10:28.962 : :Part 2
00:22:34.937 : :Preview

sample - DOWNLOAD (http://www.mediafire.com/?fmonjgjzzmm)

It's the fault of CoreAVC AFAIK. It totally ignores any AR set in the container. Haali's splitter works around that by modifying the H.264 bitstream in realtime.

madshi
11th April 2010, 14:03
It's the fault of CoreAVC AFAIK. It totally ignores any AR set in the container. Haali's splitter works around that by modifying the H.264 bitstream in realtime.
IMHO it's the decoder's duty to decode the bitstream as it is. If the container asks for a different aspect ratio, the media player should apply scaling after the decoder. Otherwise the decoder will scale and the media player may eventually scale another time. Double scaling is a bad idea if it can be avoided.

Generally, if there's conflicting information in the bitstream vs. the container, you have to decide which information the decoder should trust. Just imagine the container claimed the video format would be 720p60 while in reality it's 1080i60. Would you expect the decoder to somehow output 720p60 now?

Just my 2 cents, though...

sneaker_ger
11th April 2010, 14:20
Good point. But what happens when subtitles are involved and there's a subtitle renderer between the decoder and the renderer? Should the player put another filter between decoder and subtitle filter?
But in general I think that the player should trust the container, not the bitstream. In Matroska you can set the output resolution without leaving any room for doubts.

Obveron
11th April 2010, 14:27
As promised here are the documentation for the new settings.

Output RangeThis setting is used for specifying the OUTPUT range of the YUV to RGB transfrom.

0 - 255The output from the YUV transfrom is 0 to 255 in 8 bit or 0 to 1023 in 10 bit. This is the default and normally the best option for computer monitors and most TVs.

16 - 235The output from the YUV transfrom is 16 to 235 in 8 bit or 64 to 940 in 10 bit. This is the best option for some TV:s that expect the input signal at 16 to 235 levels.


Presentation
D3D Fullscreen ModeThis causes the player to create a fullscreen D3D device. This can be useful to remove tearing in cases when neither normal nor alternative vsync is able to do so. This is also the only mode where it's possible to use a 10 bit output for the display device.

D3D Fullscreen GUI SupportThis option enables support for the right click menus and setting on the monitor that is in fullscreen mode. The draback enabling this is that the backbuffer of the D3D device must be lockable, which can cause compatibility issues and possibly tearing even when in D3D fullscreen mode.

10 bit RGBThis enables 10 bit processing in the whole pipeline after the YUV transform. Backbuffer, temporary buffers and video frames are always in 10 bit. To enable 10 bit for the display buffer D3D fullscreen mode and Vista or later is required.

Video drivers have been known to be buggy with the 10 bit pipeline. For example: Deinterlacing crashes the player and 16-235 levels isn't availeble on ATI drivers.

Disable desktop compositionUsed to disable desktop composition in Vista or later while the player is running. This can solve some stuttering issues, and will decrease the video latency by one frame.

Enable Frame Time CorrectionEnable only when you experiency stuttering video because of a buggy decoder or splitter. For example VC-1 content in m2ts container currently needs this.


VSync
VSyncCan be used to disable VSync. This is not recommended normally as disabling VSync will remove many stuttering and threading fixes. Should only used for debugging purposes.

Accurate VSyncCan be used to disable accurate VSync. If accurate VSync is disabled CPU usage is slightly decreased, especially when alternative VSync is also disabled.

Alternative VSyncEnabling alternative VSync will bypass the default VSync built into D3D. This can often get rid of tearing issues and is the preferred mode of VSync if your hardware/drivers are compatible with it.

Decrease vsync offsetUsed to move the VSync position upwards. Only available with alternative VSync enabled and desktop composition disabled. Use the shortcut Ctrl+Alt+UP

Increase vsync offsetUsed to move the VSync position downwards. Only available with alternative VSync enabled and desktop composition disabled. Use the shortcut Ctrl+Alt+UP


GPU Control
Flush GPU before VSyncFlushing the GPU before VSync will decrease the probability of tearing as it forces the GPU to render the frame as soon as possible so the frame will be ready to be presented at the VSync.

Flush GPU after PresentFlushing the GPU after VSync will decrease the probability of tearing as it forces the driver to actualize the Present as soon as possible.

Wait for flushesThis will cause the renderer to spin, waiting for the GPU flushes. This can be useful if the driver for some reason will ignore single flushes and will also enable the GPU time statistic.


Reset
Reset to default renderer settingsResets all above settings to the default.

Reset to optimal renderer settingsSets the settings to the recommended optimal settings:
Alternative VSync = On
Accurate VSync = On
VSync = On
Disable Desktop Composition = On
Flush GPU Before VSync = On
Flush GPU After Present = On
Flush GPU Wait = Off

The rest of the settings are left unchanged. It might therefore be good to reset to default settings before selecting optimal settings.



Hey, I'm a bit confused by the above description of the VSync options. I wonder if it is a case of confusing grammar and negatives by perhaps a non-english speaker?

For one, If Vsync is disabled it will remove stuttering? Then why is it not recommended? I'm assuming the opposite meaning is intended. Also "can be used to disable vsync" seems to imply that the checking the box disables vsync. Is that the case, or is it opposite?

Now accurate vsync, has some english problems as well. Also it has no description of what accurate vsync actually is.

Also there is no inidcation as to how theses setting work with each other.
For instance if i want accurate vysnc, should i disable alternate vsync and regular vsync? if they are all checked which vsync applies? or do they all apply at the same time? optimal settings is to have all 3 enabled?

and with the time frame correction, apparently only recommended when having problems... when I click for optimal renderer settings, it enables time frame correction, should it do this? is that optimal?


Please some clarification is needed.

namaiki
11th April 2010, 14:46
For one, If Vsync is disabled it will remove stuttering?
.....
"disabling VSync will remove many stuttering and threading fixes."

Now accurate vsync, has some english problems as well.
.....
not really

Also it has no description of what accurate vsync actually is.
....
true, but accurate vsync is simply more precise, and requires more cpu usage. I can't see the difference, but at least the jitter graph looks less crooked.

For instance if i want accurate vysnc, should i disable alternate vsync and regular vsync? if they are all checked which vsync applies? or do they all apply at the same time?
.....
for accurate and/or alternative vsync to work, the basic vsync option must be enabled as well

optimal settings is to have all 3 enabled?
....
the optimal setting in my opinion is the default, which is vsync + accurate

and with the time frame correction, apparently only recommended when having problems
.....
my opinion is the same. it has only caused problems for me.

when I click for optimal renderer settings, it enables time frame correction, should it do this?
.....
it doesn't do that on my mpc-hc 1782

is that optimal?
.....
If it works, it works. If it doesn't then it doesn't.

Thunderbolt8
11th April 2010, 16:03
anyone able to explain to me how I can switch audio tracks inside a .mkv file when using the mpc-hc internal matroska splitter? its easy when using haali, but I cant seem to find an option to choose with the internal splitter.

fastplayer
11th April 2010, 16:26
anyone able to explain to me how I can switch audio tracks inside a .mkv file when using the mpc-hc internal matroska splitter? its easy when using haali, but I cant seem to find an option to choose with the internal splitter.
Play --> Audio --> <choose track>
Audio switcher must be enabled for it to work which it is by default.

Thunderbolt8
11th April 2010, 16:45
the problem is that the field "audi"o and "subtitles" are always greyed out for me, even though there are multiple audio and at least 1 subtitle track inside the .mkv. has always been for me that way with the internal splitter (with the built-in audio switcher being enabled all the time as well).

fastplayer
11th April 2010, 16:59
Weird. It has always worked for me.
Maybe there's something in your filter chain that is preventing switching audio/subtitle tracks. Maybe the settings are just messed up. Maybe... :confused:
Try with a clean profile and using only MPC's internal decoders.

madshi
11th April 2010, 17:21
Good point. But what happens when subtitles are involved and there's a subtitle renderer between the decoder and the renderer? Should the player put another filter between decoder and subtitle filter?
I don't really know how and where exactly subtitles are combined with the video frames, but I would guess that the video renderer is responsible for that? If so, I'd expect the renderer to scale the video frames to the correct size (and aspect ratio) first and only afterwards draw the subtitles over the video frames. That should solve the problem.

I'm right now wondering: Which kind of scaling algorithms do decoders use, anyway? Simple Bilinear scaling? Probably nothing like multi-tap Lanczos or Spline, I'd guess. So that means:

(1) scaling in the decoder has probably suboptimal quality
(2) scaling in the decoder costs additional CPU power

If you do the scaling in the video renderer instead, you'll probably end up with higher image quality and less CPU consumption.

Thunderbolt8
11th April 2010, 17:25
Weird. It has always worked for me.
Maybe there's something in your filter chain that is preventing switching audio/subtitle tracks. Maybe the settings are just messed up. Maybe... :confused:
Try with a clean profile and using only MPC's internal decoders.

I uninstalled and reinstalled mpc-hc and now it worked. but it seems that its reclocks fault why I cannot switch audio tracks. as soon as its activated that audio option is greyed out. whys that? any way to fix this?

sneaker_ger
11th April 2010, 21:38
I don't really know how and where exactly subtitles are combined with the video frames, but I would guess that the video renderer is responsible for that? If so, I'd expect the renderer to scale the video frames to the correct size (and aspect ratio) first and only afterwards draw the subtitles over the video frames. That should solve the problem.

I'm right now wondering: Which kind of scaling algorithms do decoders use, anyway? Simple Bilinear scaling? Probably nothing like multi-tap Lanczos or Spline, I'd guess. So that means:

(1) scaling in the decoder has probably suboptimal quality
(2) scaling in the decoder costs additional CPU power

If you do the scaling in the video renderer instead, you'll probably end up with higher image quality and less CPU consumption.

At least using DirectVobSub the subtitle filter comes in between video decoder and renderer, overlaying the subtitles over the decoded video:

http://www.abload.de/img/subtitlegraphnaka.png
("0002" is DirectVobSub)

GrandeBoma
11th April 2010, 23:47
I am sorry if I am stressing this again, but is there really no other splitter filter able to open mpls files other than mpc-hc internal? If haali is installed it will automatically take over and therefore when I choose "open dvd" I get an error because it adresses the mpls structures

Abradoks
12th April 2010, 00:03
It's know, that CoreAVC decoder with Gabest splitter will give wrong ratio with some files ?
I've already asked (http://forum.doom9.org/showthread.php?p=1367251#post1367251) the same question in CoreAVC thread, but there was no answer.

madshi
AFAIK decoder doesn't resize picture. The only thing it should do is to passthrough dwPictAspectRatioX and dwPictAspectRatioY to the next filter, which CoreAVC fails.

Zero3K
12th April 2010, 04:34
Could someone please try implementing my request at https://sourceforge.net/apps/phpbb/mpc-hc/viewtopic.php?f=3&t=38 into it?

Well?

Snowknight26
12th April 2010, 06:21
When the FLAC decoder spits out the error FLAC__STREAM_DECODER_ERROR_STATUS_FRAME_CRC_MISMATCH or FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER or FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC, MPC-HC x64 crashes with something similar to
Unhandled exception at 0x000007fefde2aa7d in mpc-hc64.exe: Microsoft C++ exception: CFileException * __ptr64 at memory location 0x05dafa68..
while the 32-bit build seems to simply skip over the bad frame.

namaiki
12th April 2010, 07:10
I've got a question about a feature request and what others think about it. :p

The feature would be an option to 'pause media playing before mpc-hc is closed.' I'll just take a second to explain what I mean and why.

I use MadVR on a daily basis and if I close MPC-HC with a video playing/moving, my whole computer freezes up for a number of minutes. If I pause the video first and then close MPC-HC, there is no freeze. I don't know why, though I guess you could put the blame right on MadVR.

I thought I would post this here first as I don't think too many people would find such an option useful. Or even, the above issue could be occurring on my PC alone.

madshi
12th April 2010, 07:21
AFAIK decoder doesn't resize picture. The only thing it should do is to passthrough dwPictAspectRatioX and dwPictAspectRatioY to the next filter, which CoreAVC fails.
That makes a lot of sense. Has anyone reported this bug to BetaBoy yet?

clsid
12th April 2010, 13:31
I am sorry if I am stressing this again, but is there really no other splitter filter able to open mpls files other than mpc-hc internal? If haali is installed it will automatically take over and therefore when I choose "open dvd" I get an error because it adresses the mpls structures
Use the standalone version of the internal splitter. Then set it as preferred for MPLS. The K-Lite Codec Pack does that automatically in case you need an easy way to do it.

MPC-HTPC
12th April 2010, 13:58
So basically you use reclocks vsync rather than mpc-hcs? Ill try that. Pity that mpc-hcs behaves like this sometimes though, ie half frame rate.

I just tried some different configurations in order to use MPC-HC's VSync and ReClock without getting only half of the frames after pausing the video. The only configuration that did the job for me was to enable MPC-HC's "VSync" and "Alternative VSync". With those two VSync options ticked (and no "VSync Correction" activated in ReClock) I have smooth playback and was not able to reproduce the error with half of the frames dropped anymore.

Maybe this will do the trick for you also as I can see from your screenshot, that you have "VSync" and "Accurate VSync" activated in your MPC-HC configuration.

EDIT: I have to correct myself I guess. The solution mentioned above does only works when I play a H264-Video using CoreAVC. When playing DivX videos the same issue is happening again. I would guess this happens when the internal filters are used.

namaiki
12th April 2010, 14:18
Do you guys have Aero enabled or disabled? (or Windows XP :p)