Release Notes MC28

From JRiverWiki
Jump to: navigation, search

28.0.68 (9/23/2021)
1. Changed: After completing a rip using MakeMKV, it will run the TV and movie information lookup on the new files in the background.
2. Changed: Slovak translation updated (thanks Peter Lukac).

28.0.67 (9/21/2021)
1. Fixed: Lyrics lookup could be incomplete from
2. Changed: Updated the Korean translation (thanks Junghwan).
3. Fixed: Typing a space in the search box in Cloudplay would pause instead of enter the space.

28.0.66 (9/17/2021)
1. Changed: A little more tuning to tab creation to hopefully avoid some possible problems.

28.0.65 (9/16/2021)
1. Fixed: MC could hang if TV recording was started on a channel with no signal.
2. Changed: If an OpenCABLE or Sat>IP channel has no signal for 30 consecutive seconds, a notification is sent to TV engine and the tuner will be shutdown.
3. Changed: Made opening a new tab have no history.
4. Fixed: Locking a tab then navigating into an artist, genre, etc. and then going back would open a new tab.
5. Changed: Switched the icons in the MakeMKV title selection dialog tree.
6. Fixed: IPTV channels streaming HLS format might end up not playing if MC failed to get its MIME type during start up, even though the URL contains "m3u8" extension.

28.0.64 (9/14/2021)
1. NEW: Added a description field to custom database fields. 2. Changed: Added mime types "application/" and "application/x-mpegurl" to be associated with m3u playlist.
3. Fixed: Non-HLS IPTV streams in transport stream format could not be played in TV engine.
4. NEW: The field description is shown in the column header tooltip.
5. NEW: Updated to Monkey's Audio 7.02 for greatly increased performance (thanks to Robert Kausch).
6. Changed: Removed left-click handling from the text area of the program. Only right-click shows the menu now.
7. Changed: After successfully completing a rip using MakeMKV, eject the disc if requested.
8. Changed: Reverted the VST scaling support changes because reports are that it's not better.

28.0.63 (9/10/2021)
1. Changed: Added some auto-selection logic when checking titles or items in the MakeMKV title selection dialog.
2. Fixed: Transitioning between images and videos in a playlist would crash.
3. Changed: When ripping using MakeMKV, changed the open disc sequence to run in the background.

28.0.62 (9/7/2021)
1. Changed: When IPTV is automatically paused due to buffering, OSD "Buffering..." is shown briefly.
2. Fixed: Loading saved views was not always working properly.

28.0.61 (9/7/2021)
1. Fixed: Image Tags in Ogg and Opus files are saved in a more compatible manner.
2. Changed: Updated German translation file (thanks Bytestar).

28.0.60 (9/3/2021)
1. Fixed: Editing files could not work properly when none were selected (which should show as all selected).
2. Fixed: Improved the ordinal code because 11 would show 11st instead of 11th.
3. Fixed: Some date lookups would fail because a full date was returned and we were expecting only a year.
4. Changed: Improved error handling in IPTV playback.
5. Changed: IPTV playback will automatically pause if data downloading is slow and playback will resume if enough is buffered.
6. NEW: When ripping using MakeMKV, individual title items are now able to be selected as well.
7. Changed: Updated the MakeMKV title selection dialog to use a tree structure for better organization of titles and items.

28.0.59 (9/1/2021)
1. Fixed: TV recordings starting or stopping could cause Netflix to return to the start page.
2. Fixed: When flipping composer names between first and last, an extra space could stay at the front (might cause lookup problems).

28.0.58 (8/31/2021)
1. Fixed: Lyrics lookup could return results with empty newlines at the end.
2. Changed: Updated Greek translation (thanks Panagiotis).
3. Changed: Updated all language files to have the latest strings from the source code.
4. Changed: OPUS files are detected even if they're named OGG.
5. Changed: Added the 1x, 2x, etc. markers after the sample rate in the bitstreaming dialog for DSD.
6. Changed: Revised the tab lock image so it will show better on dark skins.
7. Fixed: Seeking of DMS TV channels did not work in version 28.0.57.
8. Changed: Updated German translation file (thanks Bytestar).
9. NEW: Made a dedicated "Set skin" choice in scheduler so the command line isn't needed.
10. Fixed: Returning from Cover View would not restore the window size and position properly.
11. Fixed: Playing a currently recording IPTV channel did not work correctly.
12. Changed: When saving recent searches, if only one character is changed (even in the middle of a string) it will replace the entry instead of add a new one.

28.0.57 (8/27/2021)
1. Changed: Slovak translation updated (thanks Peter Lukac).
2. Changed: The math evaluator accepts pluses in front of numbers to denote them being positive.
3. NEW: Added the MCWS function Settings/Skin to allow changing skins (allows scheduler to be used to schedule skin switches by running something like MC28.exe /MCWS/v1/Settings/Skin?Skin=Noire).
4. Fixed: IPTV channel could not be viewed if a recording had been started on the channel.
5. Changed: IPTV channels start up is significantly faster.
6. Changed: VST effects report to the system that they don't support scaling of the monitor independently so they are scaled by the system (feedback appreciated).

28.0.56 (8/26/2021)
1. Changed: Updated all language files to have the latest strings from the source code.
2. Changed: Made matches in suggestion boxes promote matches that start with what is typed.
3. Fixed: VST effects could cause a click when playback was restarted.
4. NEW: A tab lock image is shown when tabs are locked.
5. Changed: Tuned the search suggestion logic a little more so typing in the middle of a word won't trigger as much of a match.

28.0.55 (8/24/2021)
1. Changed: Moved the escapement for ListMix to after evaluating as a child expression.
2. Changed: ListMix takes parameter value of 8 which tells it to do no unescape after everything.

28.0.54 (8/24/2021)
1. Changed: TV Options > Advanced > Show status... dialog window is now scrollable so that the text will not be truncated.
2. Changed: Increased HLS playlist refreshing retry count, to reduce chances of IPTV stalling due to server being slow to update playlists.
3. Fixed: Starting playback with Playback/PlayByKey of a whole album would not start with the selected file.
4. Changed: ListMix checks for all functions and things in brackets to decide if it should re-evaluated the inner as an expression.
5. Changed: ListMix allows specifying flag value of 4 to not evaluate the inner portion as another expression.
6. Fixed: If a VST effect had a zero byte preset, it could cause a crash.

28.0.53 (8/19/2021)
1. NEW: Locked tabs are saved between program runs.
2. Changed: Loading a saved view will clear all the tab locks.
3. Changed: Tuned expression escapement for the ListMix functions so they only evaluate if certain functions are found in the new expression instead of anything with a parenthesis.
4. Changed: Added handling of encrypted HLS streams in IPTV. Still does not work for all such channels. For those channels that work fine, time-shifting and recording are available now.
5. Fixed: MC did not handle HLS files with finite size (i.e. not live TV, such as VOD) so that those IPTV channels could not run in time-shifting mode. 6. Fixed: IPTV URLs with redirect was not handled properly.
7. Fixed: Some IPTV channels with relative URLs were not handled properly.

28.0.52 (8/12/2021)
1. Fixed: When MC wrote to EXIF Datetime Original tag, afternoon time was messed up because 12-hour format was used, instead of 24-hour format.
2. Changed: Navigation history is now saved for each set of views in tabs separately.
3. Changed: Saving navigation history could cause problems in some cases.
4. NEW: Added the option to lock a tab (View > Split View) so opening another view will create a new tab instead of replacing the locked tab.
5. NEW: Clicking to close a locked tab will show a prompt to confirm.
6. NEW: Added tab locking to the main drop menu shown for the tab.
7. Changed: Updated libass for better ASS/SSA subtitle performance and conformance.

28.0.51 (8/10/2021)
1. Changed: Reverted the error free persistence changes from the last build.
2. Changed: Added the menu item "Exit Error Free Mode" to turn off error free mode (appears in the Help menu when in error free mode).
3. Changed: Loudness modes didn't take effect as you changed them right away.
4. Fixed: In some cases, thumbnail text would not draw with an ellipsis at the end to show it was cut off even if it was.
5. NEW: The navigation history is saved between runs (capped at 20 deep) so navigating back (or using the links in the link bar) will work.
6. Changed: The default background color for the Netflix browser is black to avoid a glaring white screen during startup.
7. Changed: Updated the Edge WebView integration for faster startup.
8. Changed: Series/Season Artwork filenames are no longer swapped around when the Series name contains a comma.

28.0.50 (8/6/2021)
1. Changed: Log when a file doesn't exist as we build the filename (to help debug a Portable Library problem).
2. NEW: The field "Last Lyrics Lookup" is set during lyrics lookup and auto-import will no longer try again if the file has a lookup date.
3. Fixed: Theater View recorded TV show delete confirmation, and a whole lot of other confirmation or configuration dialogs related to TV in Theater View, were not showing if MC had been in error free mode.
4. Fixed: MC on windows couldn't find the paths of files from a portable library from a Mac if they contained accented characters.
5. Fixed: Theater View non-TV file deletion confirmation was not shown if MC was in error free mode.
6. Changed: Setting error free mode with MCWS would persist across runs.
7. Changed: Error free mode could save between runs in some cases. Now it's runtime only and always resets.

28.0.49 (8/5/2021)
1. Fixed: While a recording on a DMS channel or an IPTV channel was going on, watching the channel might not show the entire available video if the recording is longer than the default time-shifting window.
2. Changed: ListFilter(...) string comparison is no longer case sensitive.
3. Changed: Removed the space from the ListFilter(...) delimiter.
4. Changed: When launching to mini view, returning to standard view now shows the playing file in Playing Now.
5. Changed: The new 20 band equalizer uses narrower band settings so presets will more closely match their old behavior.
6. Changed: Date lookup from Google properly escapes the information so something like "Ashford & Simpson" won't cause problems.
7. Fixed: The new APE code could crash on computers with AVX but not AVX2 (the new code requires AVX2).

28.0.48 (8/4/2021)
1. NEW: Added the ListFilter(...) expression function.

28.0.47 (8/3/2021)
1. Fixed: Recording of a DMS or IPTV channel would be canceled if the user watches and stops watching the channel two times while recording was going on.
2. Fixed: The SetField expression could show the tooltip for the Field expression in some cases.
3. Changed: Updated Norwegian translation (thanks Øistein RIan).
4. NEW: Added the desktop resolution to the crop aspect ratios (so you can crop and then save as wallpaper).
5. NEW: Added the Google Pixel 4a to the list of image crop aspect ratios.
6. Changed: Picking ascpect ratios to crop by in image editor selects as much of the image as possible instead of an arbitrary rectangle.
7. NEW: Typing a custom field into the Fill Track Numbers From List Order tool will save the fields for future use (up to ten are saved).
8. NEW: Added mode 6 to the clean function which removes leading numbers (including spaces, decimals, and commas).
9. Changed: The between tracks mode "Use gapless for sequential album tracks" will only engage when reaching the end of the file (so manual transitions will not use it).
10. Changed: Updated to Monkey's Audio 6.50 -- uses AVX for better compress and decompress performance.

28.0.46 (7/29/2021)
1. NEW: Added the SetField(...) expression function.
2. NEW: Added an expression to be evaluated after playback to Options > Library & Folders.

28.0.45 (7/27/2021)
1. Fixed: Recording of an IPTV channel would fail if no IPTV channel had been watched previously since MC startup.
2. Fixed: could provide lyrics with UTF-8 encoding in them.
3. Changed: The UTF-8 decoder understands UTF-8 sequences with four bytes in them.
4. Changed: Audio analysis done by auto-import is done with the lowest thread priority now (so it will fight with the program less).
5. NEW: Made waveform analysis optional in Options > Library & Folders.
6. Changed: Reduced chance of TV recording filename conflicts.
7. NEW: Added a confirmation when switching the language out of English (to hopefully avoid some of the posts asking how to switch back).
8. Fixed: The Back/Forward buttons work properly with the Edge browser engine.
9. Changed: Query boxes like for the name of a saved DSP preset now show even in error free mode (before saving would not work in error free mode).
10. Fixed: When playback put the program in error free mode, it would not exit error free mode on stop.
11. Fixed: Certain global hotkeys will no longer fire when typing while using the Edge web engine.
12. Changed: The timing of recording file creation for DMS and ITPV channels is optimized to avoid recording file conflicts.
13. NEW: Added the number 4 to the TrimLines expression function to replace triple new lines with double.
14. Fixed: When IPTV or DMS channel recording failed to start, there was no notification sent (so the recording appeared to be going on but it was actually not).

28.0.44 (7/22/2021)
1. Changed: Improved handling of MCE remote controls in Theater View Netflix mode.

28.0.43 (7/20/2021)
1. Fixed: The Opus Input plugin was not getting installed properly.
2. NEW: There to there diversion works now.
3. Changed: The library backup message boxes show even when the program is in error free mode.

28.0.42 (7/16/2021)
1. NEW: Track transitions of any length are supported (previously it would be capped by the buffer size).
2. Changed: When editing the track transition duration, it will empty if you are in gapless or no mode.
3. Changed: Switching the track transition mode to gapless will empty the duration.
4. Changed: The new transition method and duration are saved to the tags.
5. Fixed: IPTV time-shifting buffering file could grow indefinitely because the buffering size limit was not honored.
6. Fixed: Certain streaming audio / video playback might run up disk space usage indefinitely until playback stopped.
7. Changed: Gapless transitions no longer suppress silence (even if the option is enabled).
8. NEW: Recording is enabled on IPTV channels. Works only if time-shifting works.

28.0.41 (7/15/2021)
1. NEW: Per File Track transitions can be selected for each file by editing the "Track Transition" and "Track Transition Duration" fields.
2. Changed: Library fields are reloaded on language changes so translated strings get recalculated.
3. Fixed: Some IPTV channels would not have duration info during time-shifting. We fixed this by changing how we collect time stamp info.

28.0.40 (7/13/2021)
1. Fixed: When MC fell back to non-time-shifting mode during IPTV playback, the position counter still advanced (instead of staying at 0).

28.0.39 (7/10/2021)
1. Fixed: Build 38 could crash during lyrics lookup.

28.0.38 (7/9/2021)
1. Fixed: Returning from Theater View could make the window fill the screen instead of snapping back to the old size.
2. Changed: Slovak translation updated (thanks Peter Lukac).
3. Fixed: Various Theater View message box prompts could be hidden in error-free playback mode.
4. Changed: Made double-click to play and drag and drop into the player always reanalyze the file even if it's already been analyzed.
5. NEW: IPTV channels will be played in time-shifting mode. Does not work for all URLs. If time-shifting fails, MC automatically falls back to non-time-shifting mode.

28.0.37 (7/8/2021)
1. Fixed: Sat>IP channels with DVBS modulation would not play while those with DVBS2 did play (an old bug crept back).
2. Changed: Made W64 file opening a little more forgiving of the headers.

28.0.36 (7/6/2021)
1. Changed: Moved the high resolution checkbox in Analyzer to the right of the top line.
2. Fixed: Google lyrics lookup could contain extra stuff at the end.
3. Fixed: Genius lyric lookup was not working.
4. Changed: Pressing OK out of options on the DLNA page only switches the zone if a DLNA zone is selected (instead of always).
5. Changed: The thread that loads output plugins pumps the message loop to handle any window events (previously some ASIO plugins could hang).
6. Changed: Improved remote control "Back" key handling in Netflix for better navigation.

28.0.35 (7/2/2021)
1. Fixed: The ListMath expression could crash if an empty string was passed in.
2. Changed: Tuned the equalizer size so the text should fit below the sliders better in normal configurations.
3. Changed: Made the EQ up / down increment less (0.1 dB now).

28.0.34 (7/1/2021)
1. Fixed: Jumping to and from display view was not always working in recent builds.
2. Fixed: A corrupt wav format file (or aiff) with bad metadata could have caused a crash on import.
3. Fixed: The Cloudplay filter would not apply when playing from the Play Doctor search box.
4. NEW: Made the VST sample size optional in Options > Audio > Advanced (takes a restart for the change to take effect).

28.0.33 (6/29/2021)
1. Changed: Play/Pause Media Center remote keys now properly interact with Netflix.
2. Changed: When opening Netflix in Theater View, playback in the active zone is stopped.
3. NEW: Added 8x to the DSD encoding options.
4. NEW: Made the DSD to DSD conversion more direct when outputting at a lower rate to support bitstreaming.
5. Changed: Added sorting to the view extras menu instead of just sorting using the file system.
6. Changed: Disabled the stop after choices for DLNA devices (may return later).
7. Changed: WASAPI lists the default device as a choice now.
8. Fixed: Ripping a DVD or Blu-Ray could cause a crash if MakeMKV was not found.
9. Changed: Cloudplay server calls happen in a loop so a sporadic failure will try again.
10. NEW: Added a zone diversion MCWS (MCWS/v1/Playback/Divert).

28.0.32 (6/25/2021)
1. Fixed: Ripping using MakeMKV would fail if the destination folder didn't exist.

28.0.31 (6/25/2021)
1. Changed: Made the VST buffer a little bigger because the Dirac VST could report no signal with the current size.
2. Fixed: Switching from Display View to Standard View didn't change the size back because of a change a couple builds back.
3. Fixed: The (newline) in expressions was going into the wrong part so the expression itself could be changed.
4. Changed: Slovak translation updated (thanks Peter Lukac).

28.0.30 (6/24/2021)
1. Fixed: The TreeNode() expression is more reliable when used in the main navigation tree.
2. Changed: DSD encoding now asks the output whether it wants DSD or DoP (instead of assuming DSD).
3. Changed: Made the EQ resize nicely with the window (so you can size it taller).

28.0.29 (6/23/2021)
1. Fixed: The Edge Web component was not being properly installed on Windows 7.
2. NEW: Added the new S-Curve cross-fade modes.
3. Fixed: When playing videos, the player could return to the previous size and position as it advanced tracks.

28.0.28 (6/22/2021)
1. Fixed: Equalizer presets would not fully upgrade to the new 20 band approach.
2. NEW: When bitstreaming DSD at a higher rate than bitstreaming supports, it will just down convert the DSD so it will still be a DSD bitstream.
3. Changed: Using a smaller VST block size to avoid latency that could happen with some visualizers.
4. Fixed: DLNA Conversion to DSF was setting the header of the DSF file to an incorrect number of samples (2x the real amount) resulting in odd or no playback on some devices.

28.0.27 (6/21/2021)
1. Changed: Updated LAV Filters to 0.75.1, used in video playback, many fixes and much improved AV1 video support.
2. NEW: Track Info plugins are copied during an upgrade install.
3. NEW: Added s-curve modes to the cross-fade options (instead of piggy backing). You can pick standard (in and out) or aggressive (which only fades out).
4. Fixed: The 20 band equalizer wasn't applying all 20 bands yet.

28.0.26 (6/20/2021)
1. Changed: Multiple lines are accepted in expression editors again.
2. Changed: When outputting a newline for the rename tool, the string "(newline)" will replace the actual line breaks.

28.0.25 (6/18/2021)
1. Changed: Made the 20-band equalizer less wide.
2. Changed: Multiline is turned off in the expression editor only in the rename tool instead of everywhere.

28.0.24 (6/17/2021)
1. Fixed: Playing a track from Cloudplay with no matching artists in the library to Cloudplay again would not find Cloudplay files.
2. Changed: The smooth cross-fade is now an S-curve (feedback appreciated).
3. Changed: Spaces are trimmed from the head and tail of the filename and directory rule in the rename tool. Newlines are also trimmed.
4. Changed: If the audio analyzer tool is set to auto-start, it now closes automatically when it finishes.
5. Changed: The expression editor used by the rename tool (and other tools) no longer accepts carriage return.

28.0.23 (6/15/2021)
1. NEW: The equalizer is 20 band instead of 10 band.
2. Fixed: Cancel in a library backup would still ask about saving thumbnails.
3. Fixed: Lyrics lookup could contain extra HTML markers in some cases.
4. NEW: Added a "Last Played (album)" field that is set album wide for plays.
5. Fixed: The MCWS call Control/AnalyzeAudio would not work reliably due to threading.
6. Changed: Added the ability to call Control/AnalyzeAudio with a list of file keys.
7. Changed: The web browser place holder in Theater View is now black, instead of gray, resulting in less jaring transitions when the browser is loading.
8. Fixed: Keyboard shortcuts function once again on Playing Now Track Info when using the Edge browser engine.
9. Fixed: The scrollbar in Netflix Web is hidden, for a better fullscreen experience.
10. Fixed: The "Billboard"-style main suggestion on the Netflix home page can be selected.
11. Changed: Pressing the Select/OK/Enter button after playback of a title in Netflix ended will select the "Next Episode" button.

28.0.22 (6/10/2021)
1. NEW: Opus input plugin, with full tag reading/writing support.
2. Changed: Deleting an image would stop playback instead of just going to the next image.
3. Fixed: Potential fix for the Media Center shell extension blocking certain other shell commands from working.
4. Changed: Using a little smaller VST buffer size.

28.0.21 (6/8/2021)
1. Changed: VST plugins could cause latency because of the new buffer delivery system. Now it uses smaller buffers.
2. Fixed: Library backups could not include thumbnails because some code was commented out in release.
3. Fixed: The example for the Extract function was not right.
4. NEW: Tag() expression function will return image XMP tags that are not JRiver database fields, for example, Tag(XMP: Label). Also, Tag(EXIF: Make) and Tag(EXIF: Model) will return make and mode of the camera, individually (whereas [Camera] returns a combination of the two as before).
5. Changed: Diverting to a DLNA zone will issue a seek (since bookmarking is not supported) to retain the playback position.

28.0.20 (6/4/2021)
1. NEW: Tabs support dragging to re-order (and dragging also takes the views so you can drag a tab to Playing Now to play, etc.).
2. Changed: Made restoring a library and settings a little faster (doesn't decompress twice any longer).
3. NEW: Added the ability to include thumbnails in a library backup.
4. Changed: The expression engine is better about evaluation strings in brackets and not always assuming something after a comma is a parameter.
5. Changed: Renamed the Diversion feature.
6. NEW: Added a menu option "Divert Here" to divert from playing zones.

28.0.19 (6/2/2021)
1. Changed: Made the size of audio block delivered to a VST plug-in always match the maximum size we told the plug-in (wasn't checking previously).
2. NEW: Added the feature "Stop, Move, and Play" to zone right-click to move playback to a different zone.
3. Changed: Made the MCWS function Playback/LoadDSPPreset able to load DLNA zones (like the save added recently).

28.0.18 (5/26/2021)
1. Changed: The new folder selection dialog shows and hides nicer.

28.0.17 (5/25/2021)
1. NEW: Added a filter box to the toolbar customization dialog to filter the list of choices.
2. Fixed: The check for whether a file already existed wasn't working properly when ripping using MakeMKV.
3. Fixed: MP4 files could crash if there was an error that we didn't find a good frame after.
4. Changed: The MCWS to save a DSP preset works with DLNA zones (and save's the associated DLNA server's settings).
5. NEW: Netflix Web: Added an option (Services -> Netflix Web) to automatically skip the intro/credits.
6. Changed: A newer path selection method is used that supports typing paths and looks more like Explorer.

28.0.16 (5/20/2021)
1. Changed: Updated Greek translation (thanks Panagiotis).
2. NEW: A new field "Secure Rip" is filled after a secure rip with details about the rip.
3. Changed: The Audio CRC field is filled when ripping.

28.0.15 (5/18/2021)
1. NEW: Added the option to loudness to be full spectrum (default), bass only, or treble only.
2. Changed: When serving a DSP preset, the filename in the browser will be the zone name.

28.0.14 (5/13/2021)
1. Changed: Netflix in Theater View now offers various player augmentations to enable 5.1 audio and more (check Options -> Services -> Netflix Web)
2. Changed: Playback/SaveDSPPreset just returns the saved DSP file instead of an encoded blob.
3. NEW: The option to remove played files from Playing Now can remove files as they are played or leave the last five files.
4. Changed: Updated Czech translation (thanks Jan Boháč!).
5. Fixed: The tree node function could crash if there was no tree selection.
6. Fixed: When you'd edit an expression, resizing the dialog would discard the changes.
7. NEW: The Mid(...) expression function takes a mode so that you can pass the end as an index instead of a count of characters.
8. Changed: Updated German translation file (thanks Bytestar).
9. NEW: Added the ability to set the output filename of titles when ripping using MakeMKV.

28.0.13 (5/7/2021)
1. Fixed: Opening Netflix from Theater View could result in not giving focus to the website.
2. Changed: Netflix in Theater View can now be closed with Backspace from the main navigation page.
3. NEW: Added the TreeNode(...) expression. Mode 0 (the default) returns the full path. Mode 1 returns the current item. Mode 2 returns the parent item.

28.0.12 (5/5/2021)
1. Fixed: The Netflix website integration can now handle season/episode select properly.
2. Fixed: Many style fixes and improvements for the Netflix website integration.
3. NEW: The Playback/LoadDSPPreset function accepts a saved DSP preset file (remember to URL escape).
4. NEW: Added Playback/SaveDSPPreset to return a saved preset.

28.0.11 (5/4/2021)
1. Fixed: Ripping a CD could fail in the last few builds.

28.0.10 (5/3/2021)
1. Changed: Made the new / improved this version menu item link to v28.
2. Fixed: If playback was set to include no files from Cloudplay, doing a right-click Play (with Play Doctor and Cloudplay) would not work.
3. Changed: Slovak translation updated (thanks Peter Lukac).
4. Fixed: MC cleared time component of "Date/Time Original" in EXIF erroneously.
5. Fixed: MC could not load EXIF "Date/Time Original" tag if it has no time component.
6. Fixed: FLAC radio playback could fail.

28.0.9 (4/29/2021)
1. Fixed: HDCD analysis would corrupt beats per minute detection.
2. NEW: Added an audio CRC field to the audio analyzer that calculates the CRC32 of the audio data (only calculated for 16-bit and 24-bit stereo currently).
3. NEW: Access Netflix through Theater View. (early preview)

28.0.8 (4/27/2021)
1. Changed: TPDF dither is no longer applied during format conversion with no DSP (since it would change the bits).
2. NEW: Added the 1x, 2x, etc. to the compression field for DSD files.
3. Changed: The list of libraries is no longer removed during an upgrade install.
4. Changed: Made the Value box of the Tag Action Window customization taller.
5. NEW: Added select all and unselect all buttons to the MakeMKV title selection dialog.
6. NEW: Added expanded title information tooltips to the MakeMKV title selection dialog when the cursor is hovering over titles.

28.0.7 (4/23/2021)
1. NEW: Skins are copied during upgrade from the old install to the new install.
2. Changed: JRiver time-shifting DirectShow filter will re-check connection media types when the graph starts running, because some video capture devices change media format (for example audio sample rate) without sending a notification to the graph.
3. NEW: IPTV Support in TV engine. Live streaming now, no time-shifting or recording yet. May not work for all URLs.
4. NEW: Support for Canon .CR3 raw image format.

28.0.6 (4/21/2021)
1. Fixed: The context menu on Playing Now "Track Info" was not accessible with the Edge integrated browser.
2. Fixed: FLAC file playback could crash in 28.0.5.
3. Fixed: Opening CloudPlay with the Edge integrated browser could prompt for additional login details.
4. Changed: Removed unintended double-buffering in mp4 plugin.
5. Fixed: In WMA plugin if "Disable audio buffering to disk" option (Linux only) was used, a file buffer was still created.
6. Changed: The file type is passed along with Radio Paradise files so it no longer needs to hit the server for it.
7. NEW: The custom folders (resources, art, skin items, webpages) are copied during an upgrade to the new version.

28.0.5 (4/16/2021)
1. NEW: Added the PlaylistTime(...) expression to get the time of a track in the current playlist (a sum of all previous durations) in mode 0, mode 1 adds the current track as well, the remaining time of the playlist in mode 2 and 3 (2 excludes the current track), and mode 4 for the total playlist duration.
2. Fixed: WASAPI loopback was not working.
3. Fixed: MakeMKV ripping would create processes over and over instead of using the same one.
4. Changed: When making relative paths, if nothing is in common, it doesn't convert to relative (previously would still output something -- but it wouldn't work).
5. NEW: The export all playlists tool shows a dialog to allow picking the format, whether to use relative paths, and the output path.
6. Fixed: With memory playback enabled, playing some streaming stations with ICY metadata could fail after a while.
7. Fixed: When playing URLs, two layers of ICY parsing could happen causing hiccups in the audio.
8. Fixed: MakeMKV processes were not always getting cleaned up when finished.
9. NEW: Files ripped using MakeMKV are imported after ripping.
10. Changed: Removed unintended double-buffering in mp3 plugin.

28.0.4 (4/9/2021)
1. NEW: Added the token "Bitdepth" to the player window to show the bitdepth of the file playing.
2. Changed: Made the Compare(...) expression look for the <,>,etc. operators and ignore everything else (so spaces or letters won't mess it up).
3. NEW: Setting the date of a picture also updates the EXIF date to match.
4. Fixed: Media Center could create test files for if a directory is writable and leave them in certain cases.
5. Fixed: MC could read ID3v2.2 PIC frame incorrectly causing the JPEG image to lose "start of image" marker.
6. Changed: The new Edge Browser is now the default internal browser, and the browser selection has been reset.
7. Fixed: YouTube playback was not working for many videos.
8. NEW: When scrolling in a list, if shift is held down it will scroll horizontally.
9. Fixed: Convolution did not work properly with channels 10 and higher.
10. Fixed: Filenames that were exactly the MAX_PATH length would not work.
11. NEW: Rip using MakeMKV. Users who have MakeMKV installed will now have an option to rip DVD and Blu-Ray using MakeMKV from Media Center. Note: This requires MakeMKV version 1.16.0 or later.

28.0.3 (4/1/2021)
1. Changed: Slovak translation updated (thanks Peter Lukac).
2. Changed: Added a done button to the about box.
3. Changed: When getting a sharing URL, a playlist is only grabbed if the tree is highlighted (so picking files in a playlist will only file share).
5. Changed: In Television Setup, service type "Streaming from a network tuner" is renamed "Streaming (from a network tuner or from the Internet)". The service type will now include "IPTV" in addition to "Tuner Stream".
6. Fixed: Several WavPack bitrates did not work.
7. Changed: Ripping to CUE did not work nicely unless concurrent ripping and encoding was selected.
8. Fixed: The password shown in Options > Media Network would be incorrect characters.
9. Fixed: DSD playback would incorrectly report an increase of 6 dB when bitstreaming.
10. Changed: When writing APE tags (APE, WV, etc.) the replaygain_track_gain is written in higher resolution.
11. NEW: New integrated browser for Windows based on Microsoft Edge, which fixes YouTube login and allows DRM video playback.
12. Fixed: The system volume would not always work properly due to a recent change.

1. Fixed: The mouse cursor over the bottom toolbar would show the size arrows instead of the proper toolbar cursor.
2. Changed: The play command in Theater View no longer simulates an enter key if there is nothing selected to play.
3. Changed: The program now requires a v28 license.
4. NEW: Standard view Television view status text will include "next refresh time" for EPG.
5. Fixed: TV channel sorting "by channel name without regard to the channel number in front of the name" (i.e. mode "ABC") did not work if the channel numbers for ATSC (including DMS version) channels were in the form major.minor (e.g 5.1), instead of major-minor (e.g. 5-1).
6. Fixed: MC could crash when playing a DMS TV channel if downloading of AV codec failed.

1. NEW: Added the expression function Extract to pull strings out of other strings (see notes here:,124543.msg894801.html#msg894801).
2. NEW: The Fill Track Numbers From List Order tool is more powerful allowing any fields to be typed in.
3. NEW: Added the option "Use small filters to reduce latency" to the Convolution DSP.
4. Changed: Clarified the ListMix vs ListMix2 functions in the tooltip (one escapes, the other doesn't).
5. Changed: Updated all language files to have the latest strings from the source code.
6. Changed: Updated German translation file (thanks Bytestar).
7. Changed: Added a sanity check to the Repeat(...) expression so it will only repeat 100 times then output "... (x more)".