Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Hardware & Software > Software players

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 18th January 2011, 14:22   #15781  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
Quote:
Originally Posted by tetsuo55 View Post
All the disabled options where either fake or buggy.
I see. For the time being I use shaders as described in JanWillem32's post to upsample chroma and convert to 0-255 levels. 10 bit RGB would be nice, if it worked properly. If not, no point to keep the option indeed.
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit
cca is offline  
Old 18th January 2011, 15:35   #15782  |  Link
bobdynlan
Beyond the Corn Border
 
bobdynlan's Avatar
 
Join Date: Jul 2009
Location: 4th Roman Empire
Posts: 93
The before "Force 10-bit Input" GUI option enabled dithering, making 0-255 Output Range smoother. It did improve things, but it was not a 10-bit thing, just proper dithered 8-bit.
The now "Half/Full Floating Point Processing" includes the same dithering, resulting in the same output as before, making the former option redundant.
Just to clear things out.
bobdynlan is offline  
Old 18th January 2011, 16:18   #15783  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
Quote:
Originally Posted by bobdynlan View Post
The before "Force 10-bit Input" GUI option enabled dithering, making 0-255 Output Range smoother. It did improve things, but it was not a 10-bit thing, just proper dithered 8-bit.
The now "Half/Full Floating Point Processing" includes the same dithering, resulting in the same output as before, making the former option redundant.
Just to clear things out.
Thank you for the clear explanation.
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit
cca is offline  
Old 18th January 2011, 16:38   #15784  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
I have one question: My primary video watching display is my LCD TV, connected via VGA D-15 sub. Obviously doesn't support 10bit RGB. Will I benefit from checking the "10bit RGB output" or I should leave it unchecked?
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit
cca is offline  
Old 18th January 2011, 17:09   #15785  |  Link
janos666
Registered User
 
Join Date: Jan 2010
Posts: 479
Quote:
Originally Posted by cca View Post
I have one question: My primary video watching display is my LCD TV, connected via VGA D-15 sub. Obviously doesn't support 10bit RGB. Will I benefit from checking the "10bit RGB output" or I should leave it unchecked?
- D-sub theoretically supports infinite bit depth, as it carries analog signal. The "effective bit depth" depends on your DAC (digital-to-analog converter) quality which usually 10+ bit on modern VGA cards.
- The Radeon cards always apply dithering after the 16-bit VGA LUT and they can theoretically do it with any RGB input formats. [For example: 12-bit goes on, it becomes 16-bit after the 16-bit lookup (it always happens, even with linear LUT) and then it becomes dithered back to the display output bit depth. According to my experiences, it results in 10-bit effective precision with 8-bit digital output.)

I think you should use it if it seems to work. (If it doesn't cause any problems.)

Last edited by janos666; 18th January 2011 at 17:16.
janos666 is offline  
Old 18th January 2011, 18:07   #15786  |  Link
chros
Registered User
 
chros's Avatar
 
Join Date: Mar 2002
Posts: 2,323
Quote:
Originally Posted by chros View Post
I can't register file extensions with standard user (not admin) in Win 7 (x86, UAC is disabled):
only the Modify button is available, if i clkick on it the SAME window apears again with the Modify button and so on ... (no Video, Audio,All button)

Is it a bug?

Can someone post a regisrty tweak for all the video extensions for the current user?
Or where can I find it in the registry?

Thanks
I have tried in command line too:
mpc-hc /regvid
but the result is the same ... (with UAC disabled or UAC enabled)

There would be a good thing, if there will be an checkbox for "All users" in formats (like in Irfanview installer), which will create a HKLM association (of course, just in admin user mode).

Meanwhile I tried Winamp in standard user mode: it doesn't working too ...

Any Help? (I know I can manually click all the preferred types, but it's so painful ...)
Thanks
__________________
Ryzen 5 2600,Asus Prime b450-Plus,16GB,MSI GTX 1060 Gaming X 6GB(v398.18),Win10 LTSC 1809,MPC-BEx64+LAV+MadVR,Yamaha RX-A870,LG OLED77G2(2160p@23/24/25/29/30/50/59/60Hz) | madvr config
chros is offline  
Old 18th January 2011, 18:16   #15787  |  Link
janos666
Registered User
 
Join Date: Jan 2010
Posts: 479
@JanWillem32

Yes, the mixer can output NV12 again. (I just wanted to ask why it is limited to RGB anyway.)
But it doesn't accept YV12. Is EVR incompatible with this popular format or is it some kind of MPC-HC related limitation?

How lcms works now? Would it be possible to let lcms do the YCC->RGB conversion too? (It can accept YCC ; I am not sure if it can also do the level conversion because it's mainly developed for still image processing where YCC is encoded in full range too.)
What about the idea to move the color correction step before the level conversion happens (the level expansion shader applied)?

Did you consider to use bigger matrices for the color correction shader? 64x64x64 sounds small for 10-bit output (at least for me). It should be 8-bit, I think.

Good to hear that "Force 10-bit input" is disabled now. It was always a confusing thing for me. (How does it really help with level expansion...)
I will check how your level expansion shader works.

Quote:
gamma conversion of HD&SD video RGB to linear RGB
gamma conversion of linear RGB to wide gamut RGB
finalpass: color management with an ICC profile and dithering
This is a very bad idea! It breaks the CMS processing and changes the final gamma curve and also affects the precision of the gamut emulation (if it's necessary). lcms converts between source and device profiles and assumes a pure-power curve with an exponent between 2.2 and 2.4 as a source gamma but you change that. (Or do you use a custom source profile? But it's a bad idea to do things like this...)

Last edited by janos666; 18th January 2011 at 18:22.
janos666 is offline  
Old 18th January 2011, 20:23   #15788  |  Link
mindbomb
Registered User
 
Join Date: Aug 2010
Posts: 576
Quote:
Originally Posted by namaiki View Post
What bit is your music? For instance 16-bit, 24-bit? Also, are you doing any processing to your music or playing bit exact?
some is 24 bit, some is 16 bit. I'm not using wasapi, so im assuming windows will convert it to 24/48, since that was what was specified for shared mode.

my question is: 24 bit PCM and above are basically all going to be equal for me in this case?

Last edited by mindbomb; 19th January 2011 at 02:56.
mindbomb is offline  
Old 18th January 2011, 20:54   #15789  |  Link
WonderCsabo
Registered User
 
Join Date: May 2010
Posts: 28
Quote:
Originally Posted by WonderCsabo View Post
Hi guys!

Me and others are experiencing a very annoying bug with MPC-HC's screen refreshing frequency changer feature.
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.
WonderCsabo is offline  
Old 18th January 2011, 22:59   #15790  |  Link
Polcius
Registered User
 
Join Date: Aug 2009
Posts: 102
I have a huge problem with .mkv's.

I recently bought a Nvidia GT 430, and the x264 qualitys is awful. I get dropped frames now and then. Using EVR-CP, default renderer settings, DXVA with the internal MPC splitter.

I tried the recommended renderer settings but I hat a little bit of tearing.

Thanks in advance.
Polcius is offline  
Old 19th January 2011, 00:56   #15791  |  Link
clsid
*****
 
Join Date: Feb 2005
Posts: 5,647
Quote:
Originally Posted by chros View Post
I have tried in command line too:
mpc-hc /regvid
but the result is the same ... (with UAC disabled or UAC enabled)

There would be a good thing, if there will be an checkbox for "All users" in formats (like in Irfanview installer), which will create a HKLM association (of course, just in admin user mode).

Meanwhile I tried Winamp in standard user mode: it doesn't working too ...

Any Help? (I know I can manually click all the preferred types, but it's so painful ...)
Thanks
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.
__________________
MPC-HC 2.2.1
clsid is offline  
Old 19th January 2011, 01:45   #15792  |  Link
JanWillem32
Registered User
 
JanWillem32's Avatar
 
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
Quote:
Originally Posted by janos666 View Post
@JanWillem32

Yes, the mixer can output NV12 again. (I just wanted to ask why it is limited to RGB anyway.)
But it doesn't accept YV12. Is EVR incompatible with this popular format or is it some kind of MPC-HC related limitation?
The mixer annoys me, too. I can only force-enable X8R8G8B8, A8R8G8B8 (broken), NV12 and YUY2. I still don't know why it's so limited. I hope we can make it work, as writing a custom mixer would probably require recruiting a few new programmers.

Quote:
Originally Posted by janos666 View Post
How lcms works now? Would it be possible to let lcms do the YCC->RGB conversion too? (It can accept YCC ; I am not sure if it can also do the level conversion because it's mainly developed for still image processing where YCC is encoded in full range too.)
What about the idea to move the color correction step before the level conversion happens (the level expansion shader applied)?
The color correction should be in the final pass (just before dithering), as it adapts for the screen characteristics, the processing format should be as uniform and linear as possible.

Quote:
Originally Posted by janos666 View Post
Did you consider to use bigger matrices for the color correction shader? 64x64x64 sounds small for 10-bit output (at least for me). It should be 8-bit, I think.
I would have to ask an expert if it's usable, and then test the memory consumption.

Quote:
Originally Posted by janos666 View Post
Good to hear that "Force 10-bit input" is disabled now. It was always a confusing thing for me. (How does it really help with level expansion...)
I will check how your level expansion shader works.
In theory, we should be able to grab the entire fp32 output from the mixer, but it's stuck to 8-bit rounding.

Quote:
Originally Posted by janos666 View Post
This is a very bad idea! It breaks the CMS processing and changes the final gamma curve and also affects the precision of the gamut emulation (if it's necessary). lcms converts between source and device profiles and assumes a pure-power curve with an exponent between 2.2 and 2.4 as a source gamma but you change that. (Or do you use a custom source profile? But it's a bad idea to do things like this...)
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.
JanWillem32 is offline  
Old 19th January 2011, 02:34   #15793  |  Link
cyberbeing
Broadband Junkie
 
Join Date: Oct 2005
Posts: 1,859
Quote:
Originally Posted by JanWillem32 View Post
Another option could be to adapt the lcms input gamma to .9, 1.0, 1.1, et cetera.
This may be preferable, if setting to 1.0 would result in color correction only with untouched gamma (same gamma as without using lcms).
cyberbeing is offline  
Old 19th January 2011, 02:36   #15794  |  Link
JanWillem32
Registered User
 
JanWillem32's Avatar
 
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
Quote:
Originally Posted by cyberbeing View Post
This may be preferable, if setting to 1.0 would result in color correction only with untouched gamma (same gamma as without using lcms).
1 would simply convert the linear gamma to your display's native gamma.
JanWillem32 is offline  
Old 19th January 2011, 02:42   #15795  |  Link
namaiki
Registered User
 
Join Date: Sep 2009
Location: Sydney, Australia
Posts: 1,073
Quote:
Originally Posted by mindbomb View Post
some is 24 bit, some is 16 bit. I'm not using wasapi, so im assuming windows does some processing.
Yes, at least Windows will resample everything to what is set in Playback/Multimedia/Sound options in the Windows Control Panel. For my integrated sound card, it is default to 16 bit, 44100 Hz. However, MPC Audio Decoder is by default set to use WASAPI. Have you disabled that?

Quote:
Originally Posted by WonderCsabo View Post
Devs: are you aware of this isse? I forgot to mention that opening Options dialog stops the stutterings.
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?)


Quote:
Originally Posted by Polcius View Post
I have a huge problem with .mkv's.

I recently bought a Nvidia GT 430, and the x264 qualitys is awful. I get dropped frames now and then. Using EVR-CP, default renderer settings, DXVA with the internal MPC splitter.

I tried the recommended renderer settings but I hat a little bit of tearing.

Thanks in advance.
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.

Last edited by namaiki; 19th January 2011 at 03:01.
namaiki is offline  
Old 19th January 2011, 03:00   #15796  |  Link
Stephen R. Savage
Registered User
 
Stephen R. Savage's Avatar
 
Join Date: Nov 2009
Posts: 327
Quote:
Originally Posted by JanWillem32 View Post
The mixer annoys me, too. I can only force-enable X8R8G8B8, A8R8G8B8 (broken), NV12 and YUY2. I still don't know why it's so limited. I hope we can make it work, as writing a custom mixer would probably require recruiting a few new programmers.
Speaking of the mixer, I've noticed that the EVR OSD always reports "Mixer output: YUY2" on my system, while most screenshots show "Mixer output: RGB32". Can you explain what the "mixer" is and whether or not my videos are being converted to YUY2 somewhere? If this is the case, then it obviously makes no sense to do RGB conversion in ffdshow as a I currently do.
Stephen R. Savage is offline  
Old 19th January 2011, 04:18   #15797  |  Link
mindbomb
Registered User
 
Join Date: Aug 2010
Posts: 576
Quote:
Originally Posted by namaiki View Post
Yes, at least Windows will resample everything to what is set in Playback/Multimedia/Sound options in the Windows Control Panel. For my integrated sound card, it is default to 16 bit, 44100 Hz. However, MPC Audio Decoder is by default set to use WASAPI. Have you disabled that?
i dont believe mpc audio decoder uses wasapi by default, cause volume controls work by default, and that shouldn't work with wasapi on.
mindbomb is offline  
Old 19th January 2011, 04:19   #15798  |  Link
JanWillem32
Registered User
 
JanWillem32's Avatar
 
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
Quote:
Originally Posted by Stephen R. Savage View Post
Speaking of the mixer, I've noticed that the EVR OSD always reports "Mixer output: YUY2" on my system, while most screenshots show "Mixer output: RGB32". Can you explain what the "mixer" is and whether or not my videos are being converted to YUY2 somewhere? If this is the case, then it obviously makes no sense to do RGB conversion in ffdshow as a I currently do.
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.
JanWillem32 is offline  
Old 19th January 2011, 04:23   #15799  |  Link
namaiki
Registered User
 
Join Date: Sep 2009
Location: Sydney, Australia
Posts: 1,073
Quote:
Originally Posted by mindbomb View Post
i dont believe mpc audio decoder uses wasapi by default, cause volume controls work by default, and that shouldn't work with wasapi on.
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.

Last edited by namaiki; 19th January 2011 at 04:25.
namaiki is offline  
Old 19th January 2011, 04:44   #15800  |  Link
betaking
Fantasy Codecs writer
 
betaking's Avatar
 
Join Date: Nov 2007
Location: Yang Zhou,Jiang Su,China
Posts: 392
can not compiled mpcresources.sc.dll by last mpc-hc svn 2865
Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385
Copyright (C) Microsoft Corporation. All rights reserved.
.\mplayerc.sc.rc(1841) : error RC2104 : undefined keyword or key name:
PS:but compiled mpcresources.tc.dll is ok!
betaking is offline  
Closed Thread

Tags
dxva, h264, home cinema, media player classic, mpc-hc

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 21:43.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.