As you can see from the list below, there are A LOT of changes which cover pretty much everything, new features, changes and improvements of current features and of course fixes.
You'll notice that that VMR9 Renderless mode doesn't support Direct3D exclusive mode yet (it works in windowed mode). A test version will be released later on.
Here is the change list since v4.10 beta 2:
* IMPORTANT! All VMR7/9 settings have changed. If you have previously selected VMR7/9 as your video renderer, make sure to re-select. * IMPORTANT! Several key Microsoft features that involve the playback of WMV/WMA files have changed. It is required that you to re-install Windows Media Player 10. Even if you already have it installed or are not planning to use it as a player (Windows Media Player contains component that effect playback of all other players). You need at least version "10.00.00.3802" installed. * New "White Wash" Pattern (Shift+"P"). White Wash is a mechanism that allows you to wash out the burn-in effect of Plasma Televisions. Prolonged use of Plasma televisions can sometime burn a signal onto the screen if left on for too long. Popular examples of this is when watching a lot of the same TV Channel and having the Station's Logo burned into the screen. When enabling white-wash, a white bar will move very slowly across your screen (one pixel every 10 seconds) which over a few hours should wash away any of the burn-in effects. * New "Gradients" Pattern (Shift+"P"). Useful for seeing the color range of your display device. * New Customized Media Profiles for Nero Digital filters, including H264 playback (using nero file-reader with FFDShow as the decoder). * New Customized Media Profile for ".ms-dvr" files. For it to work, you must download the MS-DVR patch from the Microsoft Windows Update web site. * New Setting (Advanced Options / DVD / DVD Setup / Customized) allowing you to specify the Video ColorSpace that the video renderer should try to connect at. This should be a relatively safe option as Zoom Player will try to fall back to the default ColorSpace connection if the specified mode doesn't connect. * New Setting (Advanced Options / Aspect Ratio) allowing you to Enable/Disable support for Anamorphic Matroska files. This is optional as when DirectVobSub (VSFilter) is enabled with the option to extend the video to a different aspect ratio, it will corrupt the aspect ratio on such files. * New Setting (Advanced Options / Settings / Interface) that controls whether the options dialog is forced to appear on the active monitor (default to on). When disabled, the Options Dialog position is remembered across multiple monitors. * Zoom Player now supports CUE Chapter files (".cue" extension). The support is optional (Advanced Options / Settings / Playback) as doing file searches when opening files causes a slight slowdown (probably not noticeable, but it accumulates). * New Value (Advanced Options / DVD / DVD Tools) allowing you to automatically execute an external application/script when a PAL disc is identified. * New Value (Advanced Options / DVD / DVD Tools) allowing you to automatically execute an external application/script when an NTSC disc is identified. * New Value (Advanced Options / DVD / DVD Tools) allowing you to automatically execute an external application/script when a DVD is stopped. * New Value (Advanced Options / Values / Play List) allowing the Title extracted from Media Tags (ID3v1/ID3v2/APE Tag/WMA Tag/Etc...) to be used instead of the file name. Media Tags are only extracted when a file is opened, Scanned by the "Get Media Duration" function on the Play List Right-Click context menu or Automatically scanned by specifying the file extension under: "Advanced Options / Values / Extensions -> Auto-Get Duration/Title". * New Value (Advanced Options / Values / Other) allowing you to specify a default file to open in the web navigator if no specific file exists for the currently opened Media/DVD. * New Functions (Alt+Shift+"+" and Alt+Shift+"-") allowing you to reposition the Subtitle vertical position in media files (when the DirectVobSub filter is used to display subtitles). * New Functions (Alt+Ctrl+"+" and Alt+Ctrl+"-") allowing you to resync Subtitles in media files (when the DirectVobSub filter is used to display subtitles). * New Function (Alt+Ctrl+"D") that pops an OSD with the current date and time. * New Function allowing you to open the directory of the currently highlighted file in the play list within Explorer. This function is now accessible on the right-click Play List context menu. * New Extended Function "exEjectDrive" allowing you to Eject/Insert a specified removable drive. * New Extended Function "exEnableTCP" allowing you to enable the TCP/IP interface on a specific port. * New File Definition function allowing you to set the Audio Synchronization offset value. * New "zplayer.zdf" Definition function allowing you to automatically save the Audio Synchronization offset value. * Zoom Player now supports internet based playlists. This should help some MMS streams which are linked to by an ASX file. * New "NoTintSource" Skin script command enabling you to exclude sections of the skin bitmap from being tinted by the skin selection dialog's tinting controls. * New "ToggleInterface" Skin script command that can be used to show or hide some of the Zoom Player user interfaces as the skin loads. * Extended the "PlayListData" Skinning script command to enable specifying the font used by the play list. You can still override the font through the Advanced Options dialog. Furthermore, the "PlayListData" command now included extended documentation for additional functionality. * Extended the "DrawExText" Skinning script command to support all function modes previously only supported by "CreateExButton". * New "/CPR" command line parameter allowing you to set a color present. For example: "c:\program files\zoom player\zplayer.exe" /CPR:2 * New "/TCP:[port]" command line parameter which enables the Zoom Player TCP/IP interface. Using just the "/TCP" parameter will enable the interface on the current port, using "/TCP:4096" will enable the interface on port 4096. + Using the Next/Previous Track function while in Fast Forward or Rewind will do a Time Seek (default 2 minutes). + Using the Next/Previous Chapter function while in Fast Forward or Rewind will do a Time Jump (default 20 seconds). + The Pattern Images (Shift+"P") now respect the current Aspect Ratio and the Pixel Aspect Ratio (Source Relative Stretch) which makes them better suited for manually aligning the Aspect Ratio. + The Windows Media settings have been moved under the Filter Control section of the Advanced Options Dialog. + When deleting items using the Navigator interfaces, the deleted item name will now appear as part of the confirmation dialog. + The Media Library navigator will now open to the location of the currently open file if the file resides anywhere within the media library paths (previously it would only open the root locations). + Expanded Communication Interface (Messages 1501/1601/1602/1701/1702/1750/1751/1850/2400/2500/5010/ 5020/5030). + Communication messages 1600 and 1700 have changed. They now give an audio/subtitle track index instead of the name (which is now delivered for all available streams in a new message). + Context Navigator now supports the Tab (Ascii #9) Character for use in right-alignment of text as used in the regular Context Menu. + Shoutcasted currently playing audio track will now be listed in the tray icon tool tip and on the application task bar (if the setting to show the currently playing file in the task bar is enabled). + You can now specify a Down Active bitmap using the CreateExButton Skin script function. + Any RGB value entered as part of the skin script can now contain an "NT" suffix to specify that the color shouldn't be tinted. For example: FillRect(4,4,<VidWidth>,<VidHeight>,000000NT) + The FillRectNT skin function has become obsolete as you can now specify which RGB values should not be tinted. + The "AddBarButton" skinning function has become obsolete. It is now replaced with the CreateExButton with a target value of "CBar". This allows access for a few more settings for the buttons. There are some limitations, read the function documentation (within brownish.skn) for more information regarding the limitations. + The "DrawExText" skinning function can now show a hint label. + Using Next/Previous frame while playing will now pause the video (instead of doing nothing). + The Filter selector interface is now resizable. + The "Dock Play list to Main user interface" setting has been dropped as it has been replaced by the screen snapping feature. - Zoom Player "may" function again on Windows NT4, not fully tested. - Fixed a "Divide by Zero" problem with some decoders that returned invalid aspect ratio information. - While in Audio Mode, the Audio Bar will not be resized when a new file is loaded and Auto Set user interface to Source Resolution is enabled. - Fixed "List Index out of Bounds" error when trying to play Shoutcast streams that contained no actual audio streams. - Fixed a cosmetic navigator display issue where the width of unicode strings was not calculated properly. - Fixed a problem with the TimeLine seek position OSD could remain visible on screen. - Fixed a small memory leak when playing Shoutcasted streams. - Fixed a problem with WMA/APE tags containing unicode characters. - Fixed a problem with Zoom Player's Next/Previous Chapter commands not working properly with certain media files. - Fix for error "10054" in the TCP/IP communication interface. - Skinning for the Play List, Equalizer and OSD was broken in the previous beta. - Switching Audio Mode skins (or skin modes) would wrongly accept a skin width below the minimal skin width specified by the skin author. - The mouse wheel video positioning functions should now work regardless of what the keyboard arrow functions are set to. - When Remember Last Media Position and Stop closes media files are enabled, the last media position will be remembered properly. - Enabling/Disabling Button Hints on the Basic Options dialog wouldn't have had an effect until you restarted. - Couldn't toggle Button Hints for the Equalizer dialog. - Comm Message #1930 wasn't updating the play list properly.
Download v4.10 beta 3 here
Latest communication interface protocol:
When the SendMessage interface is used, the message number is returned on the "WParam" value and the message content is returned on the "LParam" value. If the LParam contain a string, it is stored as an ATOM String. When the TCP interface is used, the message number is always returned/sent as a 4-digit code. The message content is seperated by a space character following the message number. All content is string based and UTF-8 encoded to preserve country specific text codes. When sending Zoom Player TCP commands, make sure to terminate each command with CRLF (Ascii #13#10).. The default TCP/IP port is 4769, but a user can change it under Advanced Options / Values / Interface. External Messages (ZP -> Program, TCP/IP or SendMessage): [WParam] | [LParam] -----------------------------+---------------------------------------------- 0000 - Application Name | String describing the Application 0001 - Application Version | String with the version text 1000 - State Change | 0 - Closed 1 - Stopped (doesn't apply to DVD, DVD Stop = Closed) 2 - Paused 3 - Playing 1100 - TimeLine update | String containing timeline data 1110 - Current Duration | Current Duration in milliseconds 1120 - Current Position | Current Position in milliseconds 1200 - OSD Message | String containing the OSD message 1201 - OSD Message Off | No value, message just tells that the OSD has disappeared 1300 - Current Play Mode | 0 - DVD Mode 1 - Media Mode 2 - Audio Mode 1400 - DVD Title Change | Current Title 1401 - DVD Title Count | Number of Titles 1410 - DVD Domain Change | See EC_DVD_DOMAIN_CHANGE in DirectX SDK 1420 - DVD Menu Mode | 0 - Not in a Menu | 1 - In a Menu 1450 - DVD Unique String | Returns a unique DVD indentifer 1500 - DVD Chapter Change | Current Chapter 1501 - DVD Chapter Count | Number of Chapters 1600 - DVD Audio Change | Current Audio Track 1601 - DVD Audio Count | Number of Audio Tracks 1602 - DVD Audio Name | Contains the name of the Audio track and a padded number for example "001 5.1 AC3" 1700 - DVD Sub Change | Current Subtitle Track 1701 - DVD Sub Count | Number of Subtitle Tracks 1702 - DVD Audio Name | Contains the name of the Subtitle track and a padded number for example "001 5.1 AC3" 1750 - DVD Angle Change | Current Angle 1751 - DVD Angle Count | Number of Angles in the DVD Title 1800 - Currently Loaded File | String containing file name 1810 - Current Play List | String containing the Zoom Player Play List structure. Each entry is separated by the ">" character. Each entry is sub-divided into additional information: |N .. |n - Name |E .. |e - Extension |D .. |d - Date |S .. |s - Size |P .. |p - Path |R .. |r - Duration |F .. |f - Forced Duration It is possible addtional tags will be used in future version, so code safely. 1855 - End of File | End of file has been reached 1900 - File PlayList Pos | String containing file position in play list 2000 - Video Resolution | String containing the video resolution (if there is one) 2100 - Video Frame Rate | String containing the video frame rate (if there is one) 2200 - AR Change | String containing the AR String (same as OSD message) 2210 - DVD AR Mode Change | 0 - Unknown 1 - Full-Frame 2 - Letterbox 3 - Anamorphic 2300 - Current Audio Volume | The current Audio Volume 2400 - Media Content Tags | Returns Media Content Strings (ID3/APE/WMA/Etc... Tags) 2500 - A CD/DVD Was Inserted | Returns path to drive the disc was inserted to 3000 - ZP Error Message | String of error messsage Note that there can be multiple errors appearing in sequence, only the last error may be visible by the user. 3100 - Nav Dialog Opened | A Navigator Dialog has opened 0 - Blanking Navigator 1 - Chapter Navigator 2 - Context Navigator 3 - File Navigator 4 - GoTo Navigator 5 - Media Library Navigator 6 - MouseWheel Navigator 7 - Color Control Navigator 8 - Play List Navigator 9 - Resize Navigator 10 - Station Navigator 11 - Web URL Navigator 3110 - Nav Dialog Closed | A Navigator Dialog has closed (Values are the same as #3100) External Messages (Program -> ZP, TCP/IP only) Messages that contain parameters should be space seperated, for example: "5100 fnPlay" and a comma used to seperate multiple parameters, for example: "5110 exSetAR,1". 0000 - Get Application Name | Returns 0000 message 0001 - Get Version | Returns 0001 message 1000 - Get Play State | Returns 1000 message 1110 - Get Current Duration | Returns 1110 message 1120 - Get Current Position | Returns 1120 message 1200 - Show a PopUp OSD Text | Parameter is a UTF8 encoded text to be shown as a PopUp OSD 1201 - Temp Disable PopUp OSD| Temporarily Disables the PopUp OSD 1202 - Re-Enable PopUp OSD | Re-Enables the PopUp OSD 1300 - Get Play Mode | Returns 1300 message 1400 - Request DVD Title : Returns 1400 message 1420 - Request DVD Menu Mode | Returns 1420 message 1500 - Request DVD Chapter | Returns 1500 message 1600 - Request DVD Audio | Returns 1600 message 1700 - Request DVD Subtitle | Returns 1700 message 1800 - Request File Name | Returns 1800 message 1810 - Request Play List | Returns 1810 message 1850 - Play File | Play a Media File, Value is a UTF8 encoded string containing the file name. 1900 - Get Play List Index | Returns 1900 message 1910 - Set Play List Index | Value from 0 to Number items in the play list-1 (plays the file in index). 1920 - Clear Play List | Clears the Current Play List (will close any playing file) 1930 - Add Play List File | Add a file to the Play List 2200 - Request AR Mode | Request the current ZP AR Mode 2210 - Request DVD AR Mode | Request the DVD AR Mode (see outgoing #2210) 2300 - Request Audio Volume | Request the Audio Volume Level 3000 - Dismiss ZP Error | Close the ZP Error message (if visible). 5000 - Set Current Position | Sets the Current Play Position (in seconds) 5010 - Play DVD Title,Chapter| Plays a DVD Title (depends on DVD Navigation accepting the title). 5020 - Play DVD Title,Chapter| Same as 5010, Plays a DVD Title at a specific chapter, value of "1,5" plays Title #1, Chapter #5 (without the "" of course). 5030 - Play DVD Chapter | Same as 5010, Plays a DVD Chapter in the current Title. 5100 - Call ZP Function | Calls a Zoom Player function by name (see skinning tutorial for list) 5110 - Call ZP ExFunction | Calls a Zoom Player extended function by name (see skinning tutorial for list) 5120 - Call ZP ScanCode | Pass a keyboard scancode number to the Zoom Player Interperter (such as VK_DOWN), this can be used to access the Navigator interfaces, pass the scancode as a parameter.