Legend : "*" = New "+" = Change "-" = FixWhat's new in Zoom Player v19 release candidate 3:
New : * Added MPC Audio Decoder Smart Play profiles for many supported audio Codecs. * The media library YouTube plugins can now detect Live and Upcoming videos and display this information on the thumbnail. * The media library YouTube plugins now filter out private videos. * In order to clear up some screen real estate, I added a new setting (Adv. Options / Playback / IPTV) that hides the EPG program end time. This setting is enabled by default, but can be disabled to restore the previous program listing style. Change : + Double clicking on a media library category in the media library category editor no longer tries to configure the category, instead Zoom Player now opens the media library within the clicked category, allowing the category editor dialog to be used as a navigation hack to quickly switch between categories. + Trying to open the media library category editor when the dialog was already open but obscured now brings the editor window to the top. + Made a small user experience update to the IPTV advanced options dialog page. You can see me reworking the UI in this video: https://youtu.be/BvRb6spGuN8 + Playing a media from the play history without clearing the playlist now shifts the playlist track listing to make sure the newly played item is visible. + You can now configure the media library's YouTube plugins to select the number of entries to download at one time, either 25 or 50. 25 being the default value to preserve YouTube's API quota limitations. Fixes : - Fixed a freeze when trying to close the IPTV window while logos were still being downloaded. - The playlist's "Move to Top" and "Move to Bottom" functions did not function well, clearing the currently playing media index and introducing cosmetic glitches. - Fixed MPC-VR rotation (Shift+"R") and debug info (Ctrl+"J") so it now works with videos that do not contain subtitles. You can see me live fixing the issue in this video: https://youtu.be/BvRb6spGuN8 - Wrote a work-around for a bug in the MPC Audio Renderer and MPC Audio Decoder filters where their property pages appeared in windows that did not show all the available controls. You can see me live fixing the issue in this video: https://youtu.be/BvRb6spGuN8 - Under very rare conditions, the media library's highlight on the active entry would not show for the right-most column. - Loading an ".M3U" playlist would not always get the track's title correctly. - Rotating the video using MPC-VR resulted in a distorted aspect ratio when Zoom Player was set to the Derived (Automatic) aspect ratio. - Adding the multi-playlist feature actually broke the previously active track from being restored with regular playlists. - Using the media library category editor to add a broken link as a YouTube playlist based category would create an "unknown" category that didn't work. Now an error is returned in such cases. - Fixed a bug that prevented the newly played playlist from entering into view in the playlist editor window under some circumstances. - Fixed a rare case that could have caused the skinned right-click context menu to appear twice on screen with one of the menus remaining stuck on screen. - Enabling the stop button to close the playing media (local file or stream) would not update the taskbar button hover controls. - Even when fullscreen navigation safe mode was enabled, the Trash icon was still visible in the playlist and file browser interfaces. - Zoom Player behaved badly when trying to use libVLC to play streams that are no longer available. - Configuring the various media library YouTube plugins could cause old setting to appear when trying to configure two different YouTube plugins (e.g. "Channel" and "Trending") within the same session.What's new in Zoom Player v19 release candidate 2:
New : * The hint pop-up that appears when hovering with the mouse cursor over a skinned user interface button now includes the keyboard macro used to activate the button. * You can now rotate the playing video by 90 degree increments using MPC-VR as the video renderer by pressing Shift+"R". * Subtitle synchronization adjustments now works when using the MPC-VR video renderer. * New "fnMPCVRinfo" Zoom Player function to toggle MPC-VR's video rendering information overlay. The new function is assigned by default to the Ctrl+"J" keyboard macro. * New Setting (Adv. Options / Playback / libVLC) to enable SHOUTcast playback using the libVLC media engine. I do not recommend enabling this setting, the way libVLC handles SHOUTcast playback is sub-par compared to the default DirectShow media engine. Watch me code this feature live: https://www.youtube.com/watch?v=zav2jFDmmjs * You can now press Ctrl+"C" with an IPTV EPG program selected to copy the program name to the Windows Clipboard. * New "Configure" button in the Advanced Options' Audio Renderer selection dialog. Mainly useful when using the MPC Audio Renderer option. Change : + The IPTV window's active stream list is now restored when re-opening. + The Open-Source media library YouTube plugins will notify you when Zoom Player's YouTube API key quota has been reached. Since YouTube is limiting API calls, you can work-around this issue by creating a personal API key using the instructions in Zoom Player's blog: https://www.inmatrix.com/blog/a_guide_to_creating_a_personal_youtube_api_key.shtml + The download tracking home theater interface keyboard macro has been moved from Ctrl+"J" to Ctrl+"X". + The keyboard editor dialog now appears faster, resizes faster and you can press a key combination to instantly find its current assignment or use the search box to search by the feature description assigned to a key. Watch me code this feature live: https://www.youtube.com/watch?v=zav2jFDmmjs + The information dialog ("I" keyboard macro) now displays real-time video rendering information when MPC-VR is used as the video renderer. + The information dialog ("I" keyboard macro) now prefixes a "~" symbol before the frame rate (FPS) value when the frame rate is not properly detected in the media file (can happen quite often with formats that use variable frame rate). Fixes : - Adding new Chapters (bookmarks) for existing media files would add a second "No title" ghost entry that did not function properly. - When an IPTV playlist contained multiple streams using the exact same name and ID, but with a different URL or Archive Catch-up source, playing such a stream would highlight all the streams as "playing". - Filenames with special characters did not open correctly when using libVLC as the media engine. - Setting the timeline to display the media's remaining time would result in displaying odd values when streaming live content that doesn't update the stream's duration. Now "??:??" is displayed instead. - Fixed an issue that prevented the last play position being restored when using libVLC as the media engine. - Media Chapters were not loaded correctly in regions where the decimal separator character is ",". Watch me fix this feature live: https://www.youtube.com/watch?v=zav2jFDmmjs - Trying to play a bad file or URL using the libVLC media engine would not fail properly, instead leaving the player in a sort of limbo state. - When using the libVLC media engine with the "On Playlist Complete" setting set to "Auto-Rewind", the media would start playing and did not pause at the media's start as expected. - The information dialog ("I" keyboard macro) did not show the correct resolution with some clips when using MadVR or MPCV-VR as the video renderers. - Fixed a case were closing and re-opening the IPTV dialog after playing a channel would not highlight the correct channel if there were multiple channels with the same name. - Fixed a glitch that showed new an IPTV EPG/Playlist are ready to refresh message and enabling the refresh button after initiating and completing an update download from the options dialog. - If two IPTV channels share the same channel name and EPG entry, playing one of the entries could later highlight the identical program entry on another channel as playing. - Fixed a few cosmetic glitches in the default Charcoal skin.What's new in Zoom Player v19 release candidate 1:
New : * MPC-VR can now be selected as a Video Renderer for media playback. Some of this video renderer's features are not yet supported (e.g. pixel-shaders). But subtitles and Dolby Vision support do work thanks to the help of Chetan Ullal and his work on the MPC-VR Subtitle Helper component: https://github.com/Chetan-Ullal/MPC-BE-SubtitleHelper/releases * Added support for 2 more IPTV archive playback modes. * The IPTV EPG (Electroic Program Guide) will now add EPG "No Info" entries for missing time blocks, allowing archived playback for these time blocks. You can see me live coding this feature here: https://www.youtube.com/watch?v=mQldufSuJfU * Enabling IPTV's "Safe Mode" now hides the IPTV settings button shortcut from the IPTV interface. * New "exSetAudioBalance" extended function (not assigned to any key) that can be used to specify an exact balance percent value from "-100" (left) to "100" (right). A value of "0" resets the balance changes. Please note that using this function will not update the balance widget in the user interface, only the actual audio balance on the output device. * New setting on the media library's YouTube plugins (disabled by default) to filter videos shorter than a specified number of seconds with a default value of 62 seconds (to hide shorts). You can see me live coding this feature here: https://www.youtube.com/watch?v=r7V_F62j4C4 * New "Activities" search strategy option on the media library's YouTube plugins. I was hopeful the "Activities" entry point into YouTube's DATA v3 API would provide more reliable results, but it seems limited to uploads in the last 2 months and some uploads will simply not show up. Change : + The media library's YouTube Playlist plugin now retrieves the playlist, channel name and thumbnail automatically. Since the playlist image usually reflects the last uploaded video, the plugin will use the channel's thumbnail for the playlist instead, but you can disable this behavior in the plugin's configuration dialog. Previously you had to manually specify the playlist name and a generic thumbnail was used. You can see me live coding a portion of this feature here: https://www.youtube.com/watch?v=r7V_F62j4C4 + The options window's search feature does a better job at highlighting the selected element from the search result. + Opening the play history dialog (Alt+"H") for the very first time now uses reasonable initial values for the columns. + The default mouse wheel function on new install is now set to volume adjustments instead of the previous default that Zoomed in/out. + The "Please upgrade" dialog now shows the current Zoom Player version. Fixes : - Fixed a bug introduced in one of the v19 betas that prevented a URL from being replayed through the play history interfaces. - When creating a media library YouTube channel with an "@" channel name prefix, for example "https://www.youtube.com/@zptechnology", YouTube can return multiple channels if they share the same name. The fix now checks all the channel to make sure their customURL field matches the name in the specified URL. - The Setting (Adv. Options / Interface / On Screen Display / Actions) that allows to force the OSD Actions (Play, Pause, Volume, etc) to appear on a monitor of your choice did not work correctly, showing the OSD on the same monitor as the player window instead. - Using Shift+"/" to Cast a video using libVLC accidentally forced all the next videos to play using the libVLC media engine until Zoom Player was restarted. - Fixed a few cases where changing the current play position was not shown correctly in the active playlist entry. - When playing media of unknown video resolution, the timeline will no longer display "0x0" if you enabled resolution display on the timeline. - Playing audio-only media files using the libVLC engine did not show the audio mode TAG display. Please note that audio-only media detection using the libVLC engine is based on the media file's extension, for example ".mp3" or ".wav".What's new in Zoom Player v19 beta 6:
New : * Added support for the new H.266 VVC (Versatile Video Codec) format. LAV Filters v0.79 is required for decoding. Please note that VCC support is experimental and not fully optimized. To properly support VCC in resolutions above 1080p would require hardware accelerated decoding which is not currently supported by any GPU or CPU. * Added Equalizer and Pre-Amp support for the libVLC media engine, please note that the values work a bit differently when compared to the DirectShow Equalizer values. * Preferred Audio Device switching (Shift+"A") now works with libVLC. You can define you preferred devices in the advanced options dialog's libVLC section. * New Setting (Adv. Options / Interface / Playlist) that allows you to play the next media file in the same folder when using the Del key to erase the currently playing media (or using the home theater delete option). You can see me code this feature here: https://www.youtube.com/watch?v=bs2QS5gd4VU * New Setting (Adv. Options / Interface / On Screen Display / Actions) that allows to force the OSD Actions (Play, Pause, Volume, etc) to appear on a monitor of your choice. You can see me code this feature here: https://www.youtube.com/watch?v=bs2QS5gd4VU * To support IPTV providers that require a specific user agent text to access automated downloads, you can now set a custom User Agent for each IPTV auto update entry (for both playlists and EPGs downloads). * New "Configure" button next to the Video Renderer selection drop-down list (Adv. Options / Playback / Video). * New "exMediaVidRender" extended function that allows you to switch the media video renderer at any point. As an extended function, this functionality can be accessed through the command line or TCP/IP APIs. You can see me code this feature here: https://www.youtube.com/watch?v=hr3FmIi8crI * Selecting a URL based IPTV playlist or EPG entry in the options dialog, now displays the full text in a hover-hint. Change : + Using Zoom Player to browse the web (for example, using the "/browse" command line parameter) now uses Microsoft's Chromium based WebView2 browser engine and only falls back to the old Chakra engine is WebView2 is not installed (available on the install center, comes preinstalled in Windows 11). You can see me code this feature here: https://www.youtube.com/watch?v=bs2QS5gd4VU Fixes : - The Play History editor and fullscreen navigation interface can now re-play files with a path longer than 255 characters. - The playlist entries in the IPTV stream list drop-down would get duplicated after updated playlists were downloaded in the background. - Pressing Alt+S to bring up the subtitle component's configuration dialog did not show the correct window title in some cases. - Pressing Shift+"B" to disable the subtitles caused the subtitles to remain enabled when reloading the media, even if the setting to restore the previous subtitle track was enabled in the advanced options dialog. You can see me fix this code here: https://www.youtube.com/watch?v=bs2QS5gd4VU - Fixed a really weird stability issue with the IPTV window that could have caused a freeze when trying to close the window and stream logos to never appear. - Detaching the control bar, moving it to another monitor and then hovering with the mouse pointer over the timeline area would show the current position indicator window on the wrong monitor. - With the "Show all filters in Stream Selection sub-menu" setting enabled, the right-click's "Stream Selection" section would show a small cosmetic glitch (an empty section). - Setting the YouTube Channel media library plugin's "channel list strategy" to "Use 'upload' playlist" did not list the videos returned by YouTube in the correct air date order and the air date was not displayed at all.What's new in Zoom Player v19 beta 5:
New : * The IPTV dialog now allows you to filter the stream list by playlist name. You can see me code most of this feature on this live-stream: https://www.youtube.com/watch?v=nSjr8ExbZmM * You can now define custom names for IPTV playlists and Electronic Program Guide sources (Adv. Options / Playback / IPTV). You can see me code this feature on this live-stream: https://www.youtube.com/watch?v=nSjr8ExbZmM * New Setting (Adv. Options / Playback / History) that allows you to hide the "Recent" items section from the Windows taskbar button's right-click menu. * New Setting (Adv. Options / Interface / Mouse / Settings) that allows you to specify the number of seconds to seek when using the mouse wheel while hovering over the timeline area. The default seek distance is 5 seconds. * New label for the skin selection dialog to make it clearer that you can scale the skin resolution by a factor of 100% - 800%. Fixes : - Zoom Player's "Export Settings" function did not include 4 setting files: 1. Media Favorites (files and URLs). 2. Media Library TAGs. 3. Media Library Collections. 4. IPTV Favorites. - Fixed a bug introduced in v19 beta 3 that prevented the mouse wheel from scrolling through the timeline.What's new in Zoom Player v19 beta 4:
New : * The playlist editor has received support for multiple playlists that you can instantly switch between. Multiple playlists are loaded in a background thread so even if you use massive playlists with 1000's of items, it should not have much of an impact Zoom Player's load and close time performance. Press the new multi-playlist button on the playlist editor (top left corner) to add the current playlist, a playlist from a file or manage the multiple playlists (remove, rename, reorder). You can see me develop this feature live here: Part 1 : https://www.youtube.com/watch?v=6hhQoJ0kkoA Part 2 : https://www.youtube.com/watch?v=2GLUuymiz_Y * New "Cast to Device" feature on the main right-click menu and available as a keyboard shortcut (Shift+"/") that allows you to Cast the currently playing media to a Chromecast compatible device. This feature does requires libVLC is installed but does not require you to play the current media with libVLC (the playback engines automatically switch as the media is casted). You can see me develop this feature live here: https://www.youtube.com/watch?v=A3eDBtunqZc * New "1510" Zoom Player API message that is triggered when using next/previous chapter. Returns the chapter's position in seconds Fixes : - Fixed a bug that caused the background image to show for a split- second when dragging & dropping a media file on top of the player window.What's new in Zoom Player v19 beta 3:
New : * You can now use libVLC to cast the playing video to supported ChromeCast devices. All you need to do is open "Adv. Options / Playback / libVLC" and scan for the ChromeCast device. Any content played through the libVLC engine will now display on the selected device. Please consider that it can take a few seconds longer to open media files for casting. * MPC-VR can now be selected as a Video Renderer for media playback. It is not fully supported (subtitles, pixel-shaders and other unique features for the video renderer will not work presently. * New Setting (Adv. Options / Playback / Control) that allows you to rollback the current play position when resuming playback from the Pause state. This feature is useful if you have an external receiver that requires a few seconds to restore the audio when playback resumes. Change : + If you previously used as Custom Video Renderer for media playback, you must re-select the custom option (Adv. Options / Playback / Video). + Using the Next/Previous Track features now ensures the newly loaded track is visible in the playlist editor. + Cleaned up some dialogs that had elements that were too close together, especially under Windows 11. Fixes : - Scraping TheMusicDB should work once again. - When Zoom Player's DSP filter is unable to connect to the audio renderer, the DSP filter is now removed so Smart Play will not fail (fallback to Microsoft's method of choosing components can be unstable), increasing overall stability for badly authored media files. - Fixed a bug that caused the media library background image to be overlaid twice with a slight offset, slowing down opening a folder in the media library a little bit and causing visual ghosting effects (was really hard to see with the default background image).What's new in Zoom Player v19 beta 2:
New : * Running Zoom Player on a fresh install will now asks if you would like to enable "Performance Mode". Choosing "Yes" does two things: 1. Enables D3D11 hardware accelerated video decoding in LAV Filters, a requirement for smooth 4K video playback. 2. Sets the Video Renderer to MadVR, enabling HDR video support, high quality video scaling, hardware accelerated subtitle rendering and smoother motion. Both settings can be modified in the advanced options dialog: Adv. Options / Playback / Video * A new "Help" section has been added to the right-click menu. The new help section can quickly bring up the keyboard shortcut list or quick usage guides for many of Zoom Player's popular interfaces. * New keyboard macros to toggle libVLC playback: Alt+"6" - Toggle libVLC IPTV playback (enabled/disabled) Alt+"7" - Toggle libVLC BluRay playback (enabled/disabled) Alt+"8" - Toggle libVLC Media file playback (enabled/disabled) Alt+"9" - Toggle libVLC Streaming playback (enabled/disabled) These toggles still require that you re-open the playing media to take affect. * The right-click menu has been extended with a new "Help" section. The help section provides quick access to the keyboard shortcut list and quick usage guides for most of Zoom Player's interfaces. * The Play History dialog (Alt+"H") has gotten a face-lift, an option whether to clear the playlist when playing from history, a button that automatically sets the column sizes based on the current window size and you can drag the play history window with the mouse by clicking in any empty space. * New "/infojson" command line parameter that can be used to query a running instance of Zoom Player for information. The results are returned in the windows clipboard as a UTF8 encoded JSON string. This feature can be used in combination with Window's Powershell to monitor and control Zoom Player entirely through the command line, without requiring a TCP/IP connection to access the more advanced API. Special characters are encoding using standard JSON character encoding. If no additional parameters are specified, all fields are returned. To get specific results, you can use a combination of one or more of the following: PlayState - A number representing the current play state where 0 : Closed 1 : Stopped 2 : Paused 3 : Playing MediaName - UTF8 string containing the playing file name or URL. Title - UTF8 string containing the playing media's title. Position - The playing position in seconds. Duration - The playing duration in seconds. PlayIndex - The current playlist play index. Playlist - UTF8 string containing the current playlist, each media entry is specified as a part of a JSON array. AudTrack - The current audio track number. SubTrack - The current subtitle track number. Example to get the playing media name, title, duration and position: zplayer.exe /infojson:MediaName,Title,Duration,Position Change : + The keyboard shortcuts list (F1 keyboard shortcut) is now a single dialog which opens much faster and is no longer a part of the options dialog which takes longer to open. + The "Toggle Control Bar" right-click menu option has been re-located to the menu's root level. + If the playing media has only one audio track, it will no longer be listed in the Stream Selection section of the right-click menu. + If MadVR is selected as the Video Renderer without being installed, Zoom Player now notifies you and falls back to the EVR renderer. Fixes : - A bug caused some information dialogs to show the information in the window's title and the actual title in the windows body. - Fixed several libVLC related bugs, if you're still seeing issues, please let me know on Zoom Player's Community: https://reddit.com/r/zoomplayerWhat's new in Zoom Player v19 beta 1:
New : * Zoom Player has integrated libVLC, the media engine used by the VLC media player. This integrating means that several new features that were unique to VLC are now available in Zoom Player, leveraging the reliability of VLC with Zoom Player's powerful and customizable user interface. In theory, Zoom Player's default choice of Microsoft's DirectShow media engine is superior to libVLC in a lot of ways. DirectShow is a lower-level, allowing me to develop unique features that are impossible to do with libVLC. At the same time and due to it's complexity, there may be cases where libVLC can be more reliable than DirectShow. By default only BluRay discs play using libVLC due to libVLC's support for playing BluRay discs with menus. However, since this is Zoom Player you're reading about, the ultimate choice of which engine to use is up to you! You can enable libVLC specifically for BluRay discs, IPTV streaming, media playback (by file extension) and open-ended streaming (by URL, for example "youtube") under the new advanced options section (Adv. Options / Playback / libVLC). To use libVLC you must either install the latest version of the 32bit VLC player or install libVLC from the install center (it does not conflict with existing VLC installations). Most Zoom Player features are compatible with the new media engine: - BluRay Playback with Menus! Enabled by default, opening a drive, folder or the "index.bdmv" file begins BluRay playback. Menus are navigated using the standard navigation keys (up/down/left/right Arrows + Enter keys). The same limitation that apply to playing BluRay discs in VLC applies when using the libVLC media engine in Zoom Player, along with any glitches. This means that you must have Java installed for the BluRay menus to work and that playing encrypted discs will not work by default. As for the glitches, I encountered cases where 4K BluRay videos can freeze and verified that the same issue happens in the original VLC player. - Aspect Ratio Controls: Zoom Player's powerful aspect ratio controls are fully supported. - Subtitle Display: Other than re-positioning the subtitles on-screen, most of Zoom Player subtitle features should work great with libVLC. - Add Subtitle Track on Drag & Drop / Add Sub file: You can easily add subtitle files by drag & dropping files on Zoom Player's window or by opening a subtitle file after the video is loaded. - Subtitle Synchronization Adjustments: You can adjust subtitle synchronization through the standard keyboard macros (Alt+Ctrl+"+" and Alt+Ctrl+"-" on the keypad). - Color Controls: Brightness, Contrast, Saturation and Hue color controls are available. - Audio Framework Device Selection: libVLC is pretty flexible in it's audio device selection offering three different frameworks (MMDevice, DirectSound and WaveOut). Zoom Player makes it easy to choose the framework that works best for your PC. - Audio Track Selection & Cycle: Easily select and cycle between multiple audio tracks. - Audio Synchronization Adjustments: You can adjust audio synchronization using the standard keyboard macros (Shift+"+" and Shift+"-" on the keypad). - Virtual Video Editing with BluRay Movies with Menus: The scene cut feature that allows you to virtually edit videos should now be compatible with BluRay titles with Menus when using libVLC. However, this feature has not been heavily tested so please let me know on reddit if it's not working as expected. - Play History (position, audio track, subtitle track): Zoom Player's play history feature which can save and restore the last play position, active audio, subtitle tracks and more is fully compatible. - Play Rates (fast play, slow motion): Fast Play and Slow Motion might even work on more media formats than supported by DirectShow, give it a try. - Load Embedded Chapters (Bookmarks): Using libVLC, Zoom Player can read embedded chapters or bookmarks from both media files and BluRay titles. - Load External Audio Tracks for playing video: Full support for one or more external audio tracks. - Play Next Frame: The next frame feature is fully supported. - Screenshot: The screenshot keyboard macro (Alt+"F") is fully compatible with libVLC with the exception that the screenshot file format is limited to ".png". + And since this is just a beta, there's more to come! * New "Pause closes unseekable live stream (otherwise ignored)" setting that controls if Zoom Player closes a live stream when pausing or if the pause is ignored. Previously the hard-coded default was to close the stream, the new (configurable) default is to ignore the pause command. * New button on the IPTV interface to quickly open the IPTV settings page in the advanced options dialog. Change : + To support chapters (bookmarks) using the VLC Media Engine, I had to rewrite nearly all of Zoom Player's code related to managing chapters. Please let me know if something broke. As a bonus, you can now use emojis and other special Unicode characters in the chapter names. + Media chapters with no titles will now show a "no title" title. + The IPTV stream list group layout (open/close) is now saved and restored even after closing Zoom Player. + The Custom Action button's hint when hovering with the mouse now lists the assigned function and not just a general "Custom Action". + Cleaned up a few of the advanced options dialog pages. Fixes : - Trying to switch to the next audio track no longer tries to set an audio track if there is only one track present (caused muted audio for a second or two). - Failing to play an IPTV stream will no longer highlight that stream as the active stream. - You should no longer be able to erase embedded chapter entries (it didn't really do anything). - Fixed all sorts of goofs that were possible through the chapter editor.