Log in

View Full Version : Media Player Classic - BE Win32/x64


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

clsid
11th March 2026, 14:16
Found some sample code to get EDID data:

void GetEDID() {
HDEVINFO hDevInfo = SetupDiGetClassDevsEx(NULL, "Monitor", NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE, NULL, NULL, NULL);
if (hDevInfo == INVALID_HANDLE_VALUE) return;

SP_DEVINFO_DATA DeviceInfoData;
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);

for (DWORD i = 0; SetupDiEnumDeviceInfo(hDevInfo, i, &DeviceInfoData); i++) {
HKEY hKey = SetupDiOpenDevRegKey(hDevInfo, &DeviceInfoData, DICS_FLAG_GLOBAL, 0, REG_NONE, KEY_READ);
if (hKey != INVALID_HANDLE_VALUE) {
BYTE EDIDdata[256];
DWORD dataSize = sizeof(EDIDdata);
if (RegQueryValueEx(hKey, "EDID", NULL, NULL, EDIDdata, &dataSize) == ERROR_SUCCESS) {
// Process EDID data
std::cout << "EDID data retrieved successfully." << std::endl;
}
RegCloseKey(hKey);
}
}
SetupDiDestroyDeviceInfoList(hDevInfo);
}

This could be used to extract "desired max luminance" and "desired max avg luminance" values from EDID and maybe show them in OSD. Since that other API we tried gave values that varied depending on screen brightness setting, EDID should be more reliable.

Then perhaps setting the local tonemap nits value to 0 could behave like an automatic choice, which uses those values to choose a good target nits value.
Just an idea for a possible future improvement.

Aleksoid1978
11th March 2026, 22:12
Can you split the tonemap algorithm choice into a separate dropdown and also use that algo for HDR->SDR?

HDR10: disabled/passthrough/local tonemap/ignore [...] Nits
Tonemapping: ACES/Reinhard/etc

It is planned, but I don’t know when.

Aleksoid1978
12th March 2026, 00:48
Found some sample code to get EDID data:

void GetEDID() {
HDEVINFO hDevInfo = SetupDiGetClassDevsEx(NULL, "Monitor", NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE, NULL, NULL, NULL);
if (hDevInfo == INVALID_HANDLE_VALUE) return;

SP_DEVINFO_DATA DeviceInfoData;
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);

for (DWORD i = 0; SetupDiEnumDeviceInfo(hDevInfo, i, &DeviceInfoData); i++) {
HKEY hKey = SetupDiOpenDevRegKey(hDevInfo, &DeviceInfoData, DICS_FLAG_GLOBAL, 0, REG_NONE, KEY_READ);
if (hKey != INVALID_HANDLE_VALUE) {
BYTE EDIDdata[256];
DWORD dataSize = sizeof(EDIDdata);
if (RegQueryValueEx(hKey, "EDID", NULL, NULL, EDIDdata, &dataSize) == ERROR_SUCCESS) {
// Process EDID data
std::cout << "EDID data retrieved successfully." << std::endl;
}
RegCloseKey(hKey);
}
}
SetupDiDestroyDeviceInfoList(hDevInfo);
}

This could be used to extract "desired max luminance" and "desired max avg luminance" values from EDID and maybe show them in OSD. Since that other API we tried gave values that varied depending on screen brightness setting, EDID should be more reliable.

Then perhaps setting the local tonemap nits value to 0 could behave like an automatic choice, which uses those values to choose a good target nits value.
Just an idea for a possible future improvement.

EDID does not always contain data on luminance. My monitor don't have it :)

v0lt
12th March 2026, 04:17
I don't think it's worth using EDID information when there are special Windows features.
As I understand it, EDID information is static, and we're interested in the current state of the display.

huhn
12th March 2026, 12:27
as a calibrator i can tell you displays do not know there current state just the variables set in them without the actual produced image by these settings. this is just a warning... they are not trust worthy at all.

if you want too i can read the TV without windows ACM and with it and share the "results" to share a sample size of one.

DailyLama72
12th March 2026, 15:24
Test version with HDR Tone map - https://disk.yandex.ru/d/1ID4GrXutRO7NA

Sadly same problem. Hamnet (HEVC, Dolby Vision, Version 1.0, Profile 5, dvhe.05.06, BL+RPU, no metadata compression) or Black Hawk Down (HEVC SMPTE ST 2086, HDR10 compatible) are much too dark, but with the same settings Finding Dory (HEVC, Dolby Vision, Version 1.0, Profile 8.1, dvhe.08.10, BL+RPU, no metadata compression, HDR10 compatible) is fine.

Amuat
14th March 2026, 15:43
Though the method is different, is there any overlap between possible errors resulting from using FP16 for dithering and using an internal debander TVs often provide?

Amuat
25th March 2026, 15:16
Is there a filter somewhere that gives a slightly blueish tint that I could use in turns with the sepia one? I find it hard to stand B&W, a misleading moniker as a much more accurate one even with very good contrast would be 'mostly just varying shades of gray', and have thus far changed between customized TV profiles based on changing content (yes, I'm really that crazy), but realized that it would be much easier to just make a shader profile for sepia and another for the blueish one and just hotkey between them.

(As a side note, most of the content I watch is actually B&W and I love it, just not a fan of the grays though many people appreciate the "purity" of it. Many silent films got it right by toning and tinting is how I personally see it.)

Sunspark
25th March 2026, 15:52
Easy way would be to just use your monitor's preset to change the colour temperature. You can even do it manually.. R,G,B sliders in custom. You won't be able to change the LCD backlight itself which is fixed, only to block/allow amounts.

Amuat
25th March 2026, 17:31
Easy way would be to just use your monitor's preset to change the colour temperature. You can even do it manually.. R,G,B sliders in custom. You won't be able to change the LCD backlight itself which is fixed, only to block/allow amounts.

That is actually what I meant with using customized TV profiles, I've created custom color schemes for them, but I have Philips 810 and it's way more cumbersome than it would be by using hotkeys to apply filters. It's not like you can map numbers on the remote for different profiles, sadly. Also there are too few profiles available for use and full customization, and I'm wasting two for B&W content. Without the custom colors could easily use same ones I use for color content and free up room for environmental considerations which I would like to have for my current watching habits.

Sunspark
25th March 2026, 20:02
Maybe you can use DDC/CI software on the PC to switch between presets.

hirahi
29th March 2026, 06:18
Are there any plans to support WAVE64 (extension .w64)?

Since MPC-HC supports it, it would be greatly appreciated if MPC-BE could also support it.

v0lt
29th March 2026, 07:48
Are there any plans to support WAVE64 (extension .w64)?
Wave64 (https://wiki.multimedia.cx/index.php/Sony_Wave64) (.w64) support has been present in the player for 12 years.

You may have confused it with the RF64 (https://en.wikipedia.org/wiki/RF64) format, which is supported since version 1.8.9.13 (https://github.com/Aleksoid1978/MPC-BE/issues/1042).

hirahi
30th March 2026, 00:16
I understand, so the w64 format is supported.
However, when I drag and drop a w64 file, it displays 「Cannot render the file」 and I can't play it.

w64 file was generated using foobar2000.

Aleksoid1978
30th March 2026, 02:10
I understand, so the w64 format is supported.
However, when I drag and drop a w64 file, it displays 「Cannot render the file」 and I can't play it.

w64 file was generated using foobar2000.

Upload file.

hirahi
30th March 2026, 02:37
uploaded the file to the following address.
http://hirahi.cloudfree.jp/archive/test.7z

v0lt
30th March 2026, 05:03
uploaded the file to the following address.
http://hirahi.cloudfree.jp/archive/test.7z
Thanks. Fixed in MPC-BE.1.8.9.126.

Sunspark
30th March 2026, 05:52
Bug: The mpcvr stats screen reports 1360x765 when downscaling to the display resolution of 1360x768.

PS. I'm impressed at how well this renderer works. Currently testing exclusive mode on Windows 7. Very smooth frames.

huhn
30th March 2026, 06:27
1920/1080=1.7777777
1360/768= 1,77083333

they don't have the same AR.

hirahi
30th March 2026, 09:57
Thanks. Fixed in MPC-BE.1.8.9.126.

I confirmed that it can be played with version 1.8.9.127.

Thank you very much.

Amuat
30th March 2026, 12:56
I'm impressed at how well this renderer works. Currently testing exclusive mode on Windows 7. Very smooth frames.

I'm impressed how well exclusive works even on Win 11. Barring any update breaking it, can pretty much already confirm at this point that 23.978 is finally fixed. And like you said, it is smooth, more so than windowed at any refresh rate, at least for me.

Sunspark
30th March 2026, 17:22
Yes, and it's a power-sipper too. On gpu-z there were gaps in the chart where the gpu load was effectively 0% on h.264 instead of continuous load when using quicksync copyback decoding with dxva scaling. I often use shaders, but for a dual-core of that age it's impressive.

It's a shame Microsoft quality is taking a dive these days with all their vibe-coded slop and "designers" working on Windows who don't use it as their own desktop. I'm typing this on my Linux Plasma desktop atm and while it's obviously not perfect, it's pretty nice that I don't have to worry about sloppers or middle-managers breaking something in it.

Sunspark
31st March 2026, 15:35
Maybe check into what people who fly in airplanes use.

That said, if the noise where you are is that bad that even over the ear headphones isn't enough, you should probably think about moving. That much long-term noise is not good for you.

Amuat
31st March 2026, 17:13
Maybe check into what people who fly in airplanes use.

That said, if the noise where you are is that bad that even over the ear headphones isn't enough, you should probably think about moving. That much long-term noise is not good for you.

Deleted the post as it was rendered moot by something that dawned on me, sorry that you already managed to use your time to answer. But as for the noise, it's not that it's really that bad, I'm just bothered quite easily when watching a movie.

v0lt
1st April 2026, 04:57
MPC Video Renderer 0.10.1.2531 (https://github.com/Aleksoid1978/VideoRenderer/releases/tag/0.10.1)

Сhanges:
Added support for 'UYVY' format.
Improved handling of the D3DERR_DEVICEHUNG error for Direct3D 9.
Fixed conversion of 'AYUV' format using shaders for Direct3D 9.
Added a local tone mapping for HDR output (ACES, Reinhard, Habel, Mobius, BT2390, ST 2094-10). ST 2094-10 only applies to Dolby Vision.
Added Dovi Extension Level 1/2 processing for the local tone mapping, Level 2 for HDR to SDR conversion when using D3D11.

PS: MPC Video Renderer 0.10.1 are included in the MPC-BE 1.8.9.132 installer.

Sunspark
2nd April 2026, 17:19
The stats graph in mpcvr is useful as a diagnostic tool with (older?) hardware that might not be recognizing a refresh rate correctly.

Last night I turned on the old TV and PC which had been left at 23 Hz. I noticed after watching and thinking it perhaps was not quite as smooth as it should have been that the graph was showing a sawtooth jagged line graph. Changing it to 24 Hz and back to 23 Hz again corrected the issue and the line was smooth again. Will see later if this applies also when waking the system up from sleep too, or only from power-on (since that one starts with the BIOS screen, etc.)

Only this renderer and evr-cp have a graph.

v0lt
3rd April 2026, 11:36
MPC Script Source 0.2.17.241 (https://github.com/v0lt/ScriptSourceFilter/releases/tag/0.2.17)
Fixed a player crash when PClip::GetFrame throws an AvisynthError exception.
Fixed display of the "BGR48" and "BGRA64" formats (it was upside down). AviSynth+ outputs these formats as bottom-up bitmaps.

PS: MPC Script Source 0.2.17 are included in the MPC-BE 1.8.9.136 installer.

hirahi
4th April 2026, 06:28
MPC-BE 1.8.9.13 is supposed to support RF64, but when I tried playing it with 1.8.9.136, I got the message "Cannot render the file" and it seems it won't play.

Klaus1189
4th April 2026, 10:26
Upload your sample file

hirahi
4th April 2026, 10:36
I uploaded the file to the following address.

http://hirahi.cloudfree.jp/archive/test3.7z

v0lt
4th April 2026, 10:59
I uploaded the file to the following address.
Fixed in MPC-BE 1.8.9.138.

s0meone_new
4th April 2026, 22:36
Hungarian translation updated:
https://limewire.com/d/UTwdl#dcAWQfvrUv

hirahi
4th April 2026, 22:45
Fixed in MPC-BE 1.8.9.138.

Playback was confirmed using MPC-BE 1.8.9.145.
Thank you.

Klaus1189
5th April 2026, 09:29
Updated german translation (https://drive.google.com/file/d/1NwBzp70DqbsN-NeKUsrorOgUedPyb_nu/view?usp=drive_link) :)

Zulithe
6th April 2026, 00:09
About yt-dlp support in the latest test builds, what additional dependencies apart from yt-dlp.exe are needed. I put deno and ffmpeg binaries (with yt-dlp patches) in the mpc-be directory and I can't get videos above 720p to load up in higher resolutions. Is yt-dlp-ejs utilized? If so I'm not sure how to install it for use with MPC-BE

https://github.com/yt-dlp/yt-dlp?tab=readme-ov-file#dependencies

v0lt
7th April 2026, 20:15
MPC Image Source 0.3.4.193 (https://github.com/v0lt/ImageSourceFilter/releases/tag/0.3.4)
Added information field to the settings window.

PS: MPC Image Source 0.3.4 are included in the MPC-BE 1.8.9.166 installer.

Sunspark
7th April 2026, 21:05
@Zulithe It also depends on the video. Some of them require you to copy the youtube cookies over from the web browser. There is a command line switch for that. Test in the command line window to see what you can get manually by linking the cookies.

wushantao
11th April 2026, 13:40
update simplified chinese :)
https://files.catbox.moe/nqkl2j.7z
https://seyarabata.com/69da41000bbf9
https://limewire.com/d/rU9gn#3orrcEPf4r

hajj_3
11th April 2026, 20:44
I was wondering what your thoughts are about possibly integrated Symphonia in the future? https://github.com/pdeljanov/Symphonia

It is a rust-based audio decoding library like ffmpeg

UPDATE: Google is adding Symphonia to chromium for both desktop and android - https://github.com/pdeljanov/Symphonia/issues/461

Sunspark
12th April 2026, 03:29
You need to make your argument as to why you think it matters in this project. The existing audio framework isn't broken.

AngelGraves13
28th April 2026, 17:46
MPC Video Renderer 0.10.1.2531 (https://github.com/Aleksoid1978/VideoRenderer/releases/tag/0.10.1)

Сhanges:
Added support for 'UYVY' format.
Improved handling of the D3DERR_DEVICEHUNG error for Direct3D 9.
Fixed conversion of 'AYUV' format using shaders for Direct3D 9.
Added a local tone mapping for HDR output (ACES, Reinhard, Habel, Mobius, BT2390, ST 2094-10). ST 2094-10 only applies to Dolby Vision.
Added Dovi Extension Level 1/2 processing for the local tone mapping, Level 2 for HDR to SDR conversion when using D3D11.

PS: MPC Video Renderer 0.10.1 are included in the MPC-BE 1.8.9.132 installer.

Using local tone mapping, if I leave DV on I get terrible clipping artifacts in Alien Romulus in the early part of the film where they're walking through the colony before Rain is told she won't be getting her travel papers and has to work in the mines. It's mostly the red colored signs and lights that have a zebra pattern on them with DV on using any of the local tone mapping modes where I can enter a nits value. It seems to not happen as much if nits are over 1000. Is the purpose of the custom nits to map it to my panel? For example a TrueBlack 400 panel.

Also I noticed some films get very dark with local tone mapping. Passthrough seems to be 1000 nits and isn't great but it's not that dark.

v0lt
28th April 2026, 18:52
... Is the purpose of the custom nits to map it to my panel? For example a TrueBlack 400 panel.
The developers have not tested it on your display.

Aleksoid1978
29th April 2026, 12:26
Using local tone mapping, if I leave DV on I get terrible clipping artifacts in Alien Romulus in the early part of the film where they're walking through the colony before Rain is told she won't be getting her travel papers and has to work in the mines. It's mostly the red colored signs and lights that have a zebra pattern on them with DV on using any of the local tone mapping modes where I can enter a nits value. It seems to not happen as much if nits are over 1000. Is the purpose of the custom nits to map it to my panel? For example a TrueBlack 400 panel.

Also I noticed some films get very dark with local tone mapping. Passthrough seems to be 1000 nits and isn't great but it's not that dark.

Where is screenshot with artifacts, better compare with HDR passthrough.
Also enable Statistics (Ctrl + J).

AngelGraves13
29th April 2026, 15:36
Where is screenshot with artifacts, better compare with HDR passthrough.
Also enable Statistics (Ctrl + J).

With Passthrough there is no issue. It's if I pick any other setting.

This also turns up when converting to SDR. The BAR sign and other red lights exhibit this behavior. I can't capture it in screenshots as the screenshots come out fine. I can capture it with my phone though.

Should there be a minimum hard limit of 1000 nits? It only causes the banding and artifacting if I try to set it to 500 nits.

szgames456721
1st May 2026, 20:56
Thanks for the continuous updates on MPC-BE, (https://minecraftoptifines.com) really appreciate the work. The player feels lightweight and smooth compared to other media players. I especially like the improvements in subtitle handling and performance. (https://drawingideas-net.com/) Looking forward to more updates and maybe enhanced streaming support in future versions.

hajj_3
2nd May 2026, 08:24
Dav2d decoder has been released: https://code.videolan.org/videolan/dav2d

This decodes the upcoming AV2 video codec. Hopefully you can add support for it.

Aleksoid1978
3rd May 2026, 07:31
Dav2d decoder has been released: https://code.videolan.org/videolan/dav2d

This decodes the upcoming AV2 video codec. Hopefully you can add support for it.

Why? The world is already flooded with videos of this format, and everyone's started using it? Or is it just a "itch" in one place...

hajj_3
3rd May 2026, 08:51
Why? The world is already flooded with videos of this format, and everyone's started using it? Or is it just a "itch" in one place...

it will make it easier to test sample videos if it is built into MPC-BE.

huhn
3rd May 2026, 08:59
current videos may not even work with the final draft. the spec is not finished yet. should be finished in the next month and worst case years.
this as far as i can see is not a real release yet.

v0lt
3rd May 2026, 13:37
I don't see the point of adding an AV2 decoder to MPC-BE until it's officially added to FFmpeg.
And even after it's added to FFmpeg, there might be no point in supporting the codec. There have been some well-debated codecs before, but no real video has been released.

Wait for updates to FFmpeg and LAV Filters. :p