MPC-HC no longer crashes during quick seeks with PGS subpictures when the internal subtitle renderer was used. Did not affect CCCP defaults.

Anamorphic ASS is now handled correctly in the internal subtitle renderer. This is one of the oldest standing bugs there were regarding the ISR, and we all thank kasper93 for the effort he put into fixing this after Daemon404 successfully trolled people regarding it.

The Play?Filters filter listing can now be easily copied to the clipboard, there is now a button for that in the top of the listing.

UI language selection has been moved to the options in MPC-HC.

Minor fixes and improvements in general.

LAV

PGS subpicture parsing improved in LAV Splitter.

LAV Video now supports VP7 video (for the two of you out there with samples).

LAV Video can now use the Media Foundation WMV9 decoder instead of the old DMO decoder.

FFmpeg used in LAV now uses native win32 threads instead of a pthreads wrapper.

Various fixes included in the updated FFmpeg.

xy-VSFilter

VirtualDub library has been updated.

Various ASS parsing improvements by Plorkyeran. These also remove the A (ANSI/non-unicode code page) Windows API usage, which also breaks non-unicode subtitle parsing. As noted, MPC-HC's internal subtitle renderer should be used instead in case you play such files.

Loading of UUEncoded fonts from ASS files is fixed.

A possible out-of-bounds array access was fixed. This has been in the code for more than a year, and no-one noticed it. It seems that no-one has subtitle files with UTF-8 data that end up in this area of glyphs (or the rest of the code actually makes the bug impossible to happen).

Vobsub fixes that replace the old MPC-BE hackfix. Should lead to similar results as with the old hackfix, unfortunately. In MPC-HC these changes actually add proper fadein/-out.

Default source filter for OGM is now set to LAV Splitter. A half-year old FFmpeg bug has finally been squished regarding seeking in this container, enabling this change to go forward.

MPC-HC

MPC-HC's VSFilter/ISR code has been reworked, and the ISR is now quite a bit faster with complex styled subtitles.

MPC-HC now has XySubFilter support in its EVR and VMR9-based custom renderers. After XySubFilter has been registered in the system, blocking the "DirectVobSub (auto-loading version)" filter in external filters is the easiest way to get it used with the standard CCCP setup.

The mouse cursor will now hide in windowed mode as well in MPC-HC when it is not moved for a certain amount of time on top of the video surface.

The menu bar can now be shown when hidden in MPC-HC by pressing the Alt key.

The shaders feature has been reworked in MPC-HC. Now the feature has a full page in the Options.

DXVA2ExtendedFormat colorimetry is now disabled in LAV Video if the Overlay mixer is in the graph, except when LAV Video is connected to a VSFilter. This fixes a black screen problem that some XP users possibly encountered.

VC-1 and WMV decoding via DXVA2 is now specifically disabled with Intel GPUs in LAV Video. Latest Intel drivers contain the component which is used for this, but its usage leads to either a broken image or plain crashes.

OGM and "normal OGG" (OGG, OGV) have been separated from each other in the system settings app, and only OGM is now enabled with the Haali's splitter. This enables us to specifically target the one type of format that doesn't work with libavformat, minimizing the unneeded usage of Haali's splitter.

The installer and uninstaller no longer touch a long-unused HKLM MPC ExePath key.

Everything has been updated to the new MPC-HC registry key

The user level settings application now disables MPC-HC's settings migration from the old key in case of a settings reset. Migration does not remove the original key's contents and thus leaving it it to activate would lead to extra funkyness during each and every settings reset.

The installer no longer tries to touch the default value from the MPC-HC key.

MPC-HC

MPC-HC has switched the registry key it uses. This can break various old software that depended on the old location, including GTSdll. The recommended solution is to switch to something that can use the web interface instead.

A problem with MPC-HC incorrectly pushing things onto the clipboard with the button in the about window has been fixed. Data on the clipboard will now not get destroyed if you haven't pasted it before closing the app.

MPC-HC now handles files with a single random access point as files that have no known random access points. This makes the player fall back from the fast seeking mode, and lets the user seek in such files.

Random access point information is now reloaded when a splitter calls a length change. This should fix seeking problems when switching between editions, for example.

MPC-HC should now report a human-readable error in case it fails to hook certain system functionality (usually due to certain kind of security software).

Various fixes and tweaks.

MPC-HC is now built with Visual Studio 2012, Update 4.

LAV

HEVC decoding support is added. Colorimetry information is also parsed from the stream and passed along.

HEVC demuxing support is added for the following containers:

- Matroska and MP4, as both of these use a way of doing it based upon 14496-15, 3rd Edition.

- MPEG-TS

VP9 decoding support is added.

A problem with the LAV Video and Audio tray icons crashing when you click them to open the property windows has been fixed. U78's patch forgot to initialize some values so a random memory location would be executed (and not executable regions would just go boom and crash).

LAV Video now handles Annex B H.264 in MP4. Such files are technically broken, but since various things can still handle them, it is good to have them work with LAV as well. This fixes the last remaining regression with decoding we had compared to the releases based on FFDShow-tryouts.

LAV Video now tries to detect from the pin info if the renderer "understands" (or "can handle") the DXVA2ExtendedFormat colorimetry information. This is less safe than the white list approach done with the last release, but it seems to generally work.

DTS parsing in LAV has been improved, certain cases of data being read incorrectly as DTS-HD markers should now be fixed.

LAV Video should now not try to decode in case the internal decoder context is missing.

LAV Filters are now built with Visual Studio 2012, Update 4.

Haali Package

A change that broke Haali's renderer under certain circumstances has been reverted. This was an additional change on top of the top-down RGB preference, and thus does not affect the slowness fix for LAV Video + Haali's renderer with RGB output.

Added a Samsung H.264 decoder with an irrationally high merit that seems to come with a piece of software called Intelli-studio to the black list.

MPC-HC

The transition from the Navigate menu to the Play menu regarding audio/video/subtitle track selection is now more or less complete. The bug with MPC-HC overriding the splitter's choice with audio tracks is now also fixed.

MPC-HC now defaults to "fast seek" that only seeks to random access points if those are available to the player. You may disable it in the Tweaks tab in the options.

Subtitle renderer sanity checks removed as they ended up being too strict in some cases. The crashing sample reported will still work as there is some additional memory allocation checking included now.

Enabled the CCCP LAV Filters as "internal" for MPC-HC, and enabled certain formats within it for better playback of certain formats:

Various miscellaneous fixes resulting from the update of MPC-HC to the 1.7 stable release, with some fixes cherry-picked after that.

LAV

Enabled colorimetry information (color matrix, range) output in LAV Video via dwControlFlags with a white list. Mainline LAV only enables this if MadVR is somewhere in the chain, while this will enable it as long as the next filter in chain is one of the following:

VSFilter (auto-loading or the non-autoloading one)

VMR7/9

EVR (includes everything that uses the same CLSID, including all of the MPC-HC custom EVR-based renderers)

madVR

Various miscellaneous fixes resulting from the update of LAV Filters to the current git HEAD (42306ee).

xy-VSFilter

xy-VSFilter is now generally colorimetry-enabled as well. It will use the colorimetry information, such as the color matrix or range, that it gets from an upstream filter (say, LAV Video) and pass it forward if the next filter in chain is one of the following:

VMR7/9

EVR (includes everything that uses the same CLSID, including all of the MPC-HC custom EVR-based renderers)

Re-introduced a patch for the Kasumi I420/YUY2 to RGB colorspace conversion routines as Lord was somehow able to reproduce the problem it fixes. Should not happen in general usage.

Subtitle renderer sanity checks removed as they ended up being too strict in some cases. Instead tried to make xy-VSFilter handle failed memory allocations in a more correct manner. The VSFilter subtitle rendering engine is old and rather memory-inefficient, so the only real fix for this would be to either rewrite it completely, or create a proper Windows port of libass (primarily without fontconfig).

Haali Package

Now built with the same toolchain as the rest of the CCCP package, namely VS2010 SP1.

Debug symbols are now available! Yes, this means we can now debug Haali's things.

Haali's renderer should now try and enforce top-down RGB. This should fix some slowness problems when feeding RGB to the renderer.

Generic Matroska splitting set to LAV Splitter by default. This change makes Haali be the fallback for all formats it can split, instead of being the primary splitter for any one of them.

Haali Splitter

Media sub types for TrueHD and MLP have been switched to the ones that LAV Audio understands. Fixes TrueHD and MLP audio being detected as AC3 by LAV Audio.

Added MIME types application/vnd.ms-opentype as well as application/x-font-ttf to the list of MIME types of loadable fonts. As only one of these is generally used in the wild, this fixes loading of OpenType fonts muxed by newer versions of MKVMerge.

General fixes. Exact change log is unknown, but there are reports of seeking becoming better with certain samples.

MPC-HC

The MPC-HC internal subtitle filter (ISR) will from now show all the DVD subtitles of certain DVD re-encodes created by Handbrake correctly, without skipping any subpictures that overlap by their timing.

'On top' behavior has been fixed to be in general the same as before the last release.

The name of the source filter used is now shown at all times possible, instead of just showing the file name.

The media sub type is now given more priority in properties when showing the audio type. This fixes, among other things, properties showing TrueHD as AC3 with Haali.

The go to dialog now has the frame rate set in a more correct way for certain DVDs.

LAV

Switched to a GCC 4.7.3 / MinGW-w64 2.0.8 based toolchain for ffmpeg compilation.

LAV Splitter now supports segment linking, ordered chapters as well as multiple editions with Matroska. This makes it generally on par with Haali as far as support for Matroska features goes. As it generally supports more formats, it is in many ways superior to Haali now, and thus set to be the default Matroska parser in the CCCP.

Bink, Smacker as well as MXF are now enabled by default in LAV Splitter, and Bink as well as Smacker are enabled in LAV Video. This completes the request of a user for support of Bink video in CCCP.

Lots of general fixes.

xy-VSFilter

Backported the fix for DVD subtitles that overlap by their timing from MPC-HC.

Backported a change in vobsub index file parsing from MPC-HC that makes playback possible even with a nonstandard idx file next to the video file.

xy-VSFilter 3.0.0."215" (211 with this patch, this patch, this patch and this patch)

General changelog:

Installer and settings applications

Added DiAVC to the "merit sanification" list in the installer. This makes sure that the CCCP's default decoder comes up as used in case this filter was installed before hand. Similar merit sanification was already done to DivX's H.264 decoder as well as CoreAVC.

Added MPC Video Decoder filter to the bad filters list of the installer. Many applications abuse old versions of this filter, and it does not really contain any features or capabilities that aren't already available in the preferred decoder in this pack.

MPC-HC

Switched back to a "normal" build of MPC-HC instead of a "lite" one as that actually ends up being both smaller as well as more useful in the end. Splitters built into the binary are still limited, but this should help people having certain kinds of trouble.

Currently built in splitter filters are as follows: AVI, DSM, DTSAC3, FLAC, MPEGAUDIO (raw MP3/AAC), SHOUTCAST, UDP and RFS.

VSync in the custom MPC-HC video renderers now defaults to off. This should enable better performance with and generally enhance the viewing experience with filters and files that would not give well usable frame duration values to upstream.

Dragging and dropping files onto the MPC-HC playlist should now bring up the playlist and work somewhat more intuitively.

The MPC-HC internal subtitle filter (ISR) will from now on block rendering surfaces bigger than 4000 pixels in width or height. This will stop most badly written ASS subtitle scripts from causing the subtitle renderer to crash because of lack of memory address space.

LAV

Updated LAV Filters to a development version that has a The Evil Plan-enabled ffmpeg. In other words, keeping buffers and having them work nicely in a multithreaded environment just became nicely simpler. This is a relatively big change, but it has gotten quite some testing by various people by now, so we decided to include it in this release. Speed-wise improvement in f.ex. yadif deinterlacing can be seen (~10%), and normal decoding probably is a percent or two faster, depending on the format.

Certain kinds of mpeg-ts files no longer cause LAV Splitter to try and load the whole file into memory in order to probe a stream.

Implemented a check similar to MPC-HC's commits 2c597d9 and a0d3a13 to block rendering surfaces bigger than 4000 pixels in width or height. This will stop most badly written ASS subtitle scripts from causing the subtitle renderer to crash because of lack of memory address space.

Support for our beloved 10-bit stuff (hi10p support) in FFDShow-tryouts has been added.

Color space matching priorities have been switched for 420P ("YV12"), to prefer YUV formats before RGB in order to minimize the possibility of libswscale RGB conversion with hi10p material.

Playback of certain matroska clips, that incorrectly used to play at 25fps, has been fixed with FFDShow-tryouts.

CCCP Settings and VSFilter have been adjusted for the new pre-buffering changes. Default is still no buffer, and the checkbox sets it to 10 when enabled (buffering set to other values made subtitles blink for users). The settings application currently, in case of the buffering value being non-zero, will reset the value to 10.

All components built for CCCP show in file resource under "Special Build Description".

Updated components:

FFDShow r3065

MPC-HC r1264

Haali 2009-01-11

Removed Zoom Player

Added licenses which install to Legal folder if any such license exists for the project.

Use EVR-CP renderer on Vista+ if D3X* DLLs available, otherwise VMR7. Use Overlay for older OSes.

Added prompt on install if user has no D3X* dll's on Vista or greater (this check is identical to MPC-HC's) and lets them know they will need to install the DX End-User Runtime binaries in order to make full use of MPC-HC. Important for using EVR-CP without nagging message.

CCCP Settings: Added options for H.264 MT (Multithreading with ffmpegmt, still experimental), Theora, EAC3, and TrueHD. Only one option for DRC now (used by AC3 and EAC3). Added checkboxes next to Filetype Associations to use the icons in mpciconlib.

MPC-HC Options: Enabled MPEG2 decoder in MPC-HC by default, it causes less issues for the most part using Gabest's decoder in MPC than other commercial decoders. "Keep history of files" enabled by defualt, used by GTSdll. Disable Animation is disabled, and sub buffering returned to value of 3.

Switched MPC, Gabest filters, and VSFilter to Media Player Classic Homecinema project. All at r796.

Bug: "Out of string range" fixed.

Number of physical cores detected at install (not logical processors because the patch does not properly support HT). Must use Reset Settings to automatically set this option in ffdshow, otherwise set it manually.

Updated Default Programs (Vista only) for MPC-HC and Zoom Player when installed with CCCP.

Settings app File Association should also now properly work on Vista (may have not before depending on environment).