Ensure the DirectShow graph is completely destroyed after CloseMediaPrivate().

Destroy all dynamic menus that can possibly hold a reference on an object of the graph.

This fixes a strange issue with the logo not being redrawn in some cases when MadVR was used.
Ensure the keyframe timings array is read/written only by the main thread.

Revert 02356359a23ded82585560fade11b9089d590734 and remove the other duplicate I initially kept. Even if we get that info from the DirectShow graph, the array is filled and used only by the main thread. It's safer and more consistent to have it cleared by the same thread.
PGS Subtitles: Fix subtitles not being removed from screen after d8deeda49e270d02e9eae795265494184f409b29

Since we drop empty segments we were trying to update the end time of segments that weren't in the queue and we ended up modifying the previous segment that was completely unrelated.

Fixes #3691.
Lite builds: Fix a minor inconsistency regarding the output directory.

Lite debug builds use "mpc-hc_x??_Debug Lite" while release builds always used "mpc-hc_x??" for both normal and lite builds.
Fix: x86 and x64 versions conflicted over file associations.

4f465cf8b81f1da800b1bfc57cc48e317d24fbb5 was incomplete for Vista+.

This commit fixes #4064.
Language menu: Ensure "Language" always appears in English in menu entry.

If "Language" doesn't appear in the translated string, "(Language)" will be appended automatically.