Jump to content


Photo

Announcing Zoom Player v4.50 release candidate 1


  • This topic is locked This topic is locked
66 replies to this topic

#1 bLight

bLight

    Lead Developer

  • Admin
  • PipPipPipPipPip
  • 9499 posts

Posted 26 May 2005 - 02:50 PM

As you can see from the change list below, there's been plenty of changes since beta 4.

Renderless mode is still not perfect, we're working on improving that and might release another special test build for it soon.

Download Zoom Player v4.50 release candidate 1.

Changes from v4.50 beta 4:
* With the Gracious help of Milenko Mitrovic, The Station Manager
   can now fetch the Top-500 SHOUTcast radio stations (Internet
   connection required) and let you add them to the Station Manager
   or play them directly.

 * Zoom Player now supports the PNG image format for Background Images,
   Folder images, Skinning Elements and the Internal Image Viewer
   (which now can also view Windows BMP files).

 * New Control file ("zplayer.regfilters") allowing you to automatically
   and dynamically register/unregister and set/remove registry settings
   when Zoom Player is opened/closed.  This is especially useful for
   USB Flash Drives (UFD Devices), See:
   http://www.inmatrix.com/zplayer/highlights/mobile.shtml

 * New Setting (Advanced Options / Settings / Other), enabling you to
   have Zoom Player save its configuration in a local file within the
   Zoom Player directory ("zplayer.local").

   The benefit of this feature is that it allows you to run Zoom Player
   from external devices such as USB Flash Drives (UFD devices) while
   maintaining your personal settings across multiple systems.  See:
   http://www.inmatrix.com/zplayer/highlights/mobile.shtml

 * New Setting (Advanced Options / Filter Control / Settings), allowing
   you to force VMR Video Renderers from trying to compensate for the
   Video Aspect Ratio.  This setting can help prevent resize artifacts
   with certain video formats (similar to the VMR9 Resize Fix).
   You need at least Windows XP Service Pack 2 for this feature to work.

 * New Setting (Advanced Options / DVD / DVD Tools) allowing you to
   have Zoom Player wait for "On NTSC/PAL/DVD Stop" executed programs
   to close prior to Playing/Stopping the DVD.

 * New Value (Advanced Options / Filter Control / Customized Media / 
   Settings) allowing you to disable Customized Media Playback for
   a list of specified extensions.

 * New Command Line Parameter "/CLOSE" allowing you to close a
   currently running instance of Zoom Player from the command line.

 * New Target Parameter on the CreateExButton and DrawExText skin
   commands allowing you to create Button and Text labels on the
   Control Bar (outside the Dynamic-Button area).

 * New functions "fnIncPreAmp" (Ctrl+Home) and "fnDecPreAmp" (Ctrl+End)
   allowing to Increase/Decrease the PreAmp volume.

 * New TCP/IP Messages 1010,1603,1703,1704,1753,5100,5110,5120.

 + MSVCR70.DLL should no longer be required for playing back
   WMV DRM content.

 + When Customized Media Playback fails to create a working graph
   for media files, standard mode will now retain the Audio and
   Video Renderer selection as used under Customized Media.

 + Improved the Magnetic Docking code so now when switching locations
   for the interface, it looks to see which area has more space to
   display the interface instead of just switching when the original
   location is touching the monitor's border. 

 + The DVD Next/Previous Chapter buttons now also act as Next/Previous
   titles when you're currently playing the last or first chapters.

 + Auto-Get of Media File Duration/Title should now work better with
   formats such as CD Audio, Monkey Audio, FLAC Audio and MPC.

 + Playing Radio Stations will now show the station name on the
   Play List Editor if "Use Media Title" is enabled under
   "Advanced Options / Values / Play List".

 + Another change to how Zoom Player is opened when an external program
   tells it to start maximized.  Now Zoom Player will just start in
   a regular maximized window.

 + Removed the white border on the gradients pattern, it was bleeding
   and making gradients harder to evaluate.

 - Fixed a possible cause for freezing when initially loading certain
   types of DVDs in VMR9 Renderless mode.

 - VMR9 Exclusive Fullscreen Renderless mode should now work on
   secondary monitors.

 - You should now be able to navigate DVD Menus in renderless
   mode using the mouse.

 - Pressing Enter/Play on the Advanced Play List Control would
   not play the right file.

 - Automatic Audio/Subtitle stream selection was not functioning
   properly if the Haali Media Splitter filter was not being used.

 - "DVD Auto-Execute" values should now properly pass parameters
   to the executed programs.

 - You can now use negative values on Text/Button skin positioning.

 - Fixed more cosmetic skinning issues related to the "Auto-Size User
   Interface to maintain Video Aspect Ratio" setting.

 - Sorting by "Date" was actually only sorting by "Day" and not the
   exact date.

 - Loading a QuickTime ".MOV" file using the ActiveX component with
   the Zoom Player user interface set to auto-resize to the content
   source size should no longer show a cropped initial image.
   Now try saying that fast 3 times.

 - Fixed a problem when Enqueue from external applications that
   could cause a ghost window to flash and possibly cause the
   Zoom Player skin to corrupt.

 - Loading "ASX" play lists that contain certain character tags
   should now work.

 - Having Auto-Size user interface to maintain video aspect ratio
   enabled would prevent resizing of the user interface in audio mode.

 - Auto-Segment loading should no longer add files to the play list
   if they already are in the play list.

 - Loading an ASX play list with non-UTF8 encoded non-english
   character sets should now work more reliably.

 - Fixed a bug in the SendMessage API that would report a wrong
   DVD/Media mode.

Latest Communication 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
 1310 - TV/PC Mode                    | 0  - PC Mode
                                        1  - TV Mode (unused)
 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)
 3200 - Screen Saver Mode             | The ZP Screen Saver has:
                                        0 - Started
                                        1 - Ended
 5100 - ZP Function Called            | Value contains name of function
 5110 - ZP ExFunction Called          | Value contains name of function
 5120 - ZP ScanCode Called            | Value contains ScanCode.

 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
 1010 - Get Fullscreen State          | Returns 0 = Windowed
                                                1 = Fullscreen
 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
 1401 - Request DVD Title Count       | Returns 1401 message
 1420 - Request DVD Menu Mode         | Returns 1420 message
 1500 - Request DVD Chapter           | Returns 1500 message
 1501 - Request DVD Chapter Count     | Returns 1501 message
 1600 - Request DVD Audio             | Returns 1600 message
 1601 - Request DVD Audio Count       | Returns 1601 message
 1602 - Request DVD Audio Names       | Returns 1602 message
 1603 - Set DVD Audio Track           | Set the DVD's Audio Track
                                        Valid values 0-7 or 15 for default track
 1700 - Request DVD Subtitle          | Returns 1700 message
 1701 - Request DVD Subtitle Count    | Returns 1701 message
 1702 - Request DVD Subtitle Names    | Returns 1702 message
 1703 - Set DVD Subtitle Track        | Set the DVD's Subtitle Track
                                        Valid values 0-31, also enables subtitle
 1704 - Hide DVD Subtitle             | Disable DVD Subtitles from showing
 1750 - Request DVD Angle             | Returns 1750 message
 1751 - Request DVD Angle Count       | Returns 1751 message
 1753 - Set DVD Angle                 | Set the DVD's Angle
                                        Valid Values 1-9
 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
 1940 - Select Play List Item         | Select an Item in the Play List
 1941 - DeSelect Play List Item       | Remove selection of a Play List item
 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                | 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)
                                        Format "exFunctionName,Value"
 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.


#2 Linkintones

Linkintones

    Newbie

  • Members
  • Pip
  • 12 posts

Posted 26 May 2005 - 05:02 PM

This new release works great! There are many new options that are useful and the changes that were made fixed several issues that I had before.

Thank you! :)

#3 Bartman

Bartman

    Adept

  • Members
  • PipPipPip
  • 56 posts

Posted 26 May 2005 - 05:09 PM

Should the DefaultSettings.exe delete the zplayer.local?
I would appreciate a setting to put these files (zplayer.local, zplayer.playcache, dvd bookmarks ) in an user definded directory.

#4 bitmonster

bitmonster

    Adept

  • Members
  • PipPipPip
  • 66 posts

Posted 26 May 2005 - 06:18 PM

Nice to see the command acknowledgment for TCP/IP implemented. :)

But it seems, that every command is echoed twice.
Is this a bug or is there a special meaning? (Like one echo before the command is executed and the second after it has finished?)

#5 bLight

bLight

    Lead Developer

  • Admin
  • PipPipPipPipPip
  • 9499 posts

Posted 26 May 2005 - 06:30 PM

bitmonster:
on which command? The current ZP function ack code just throws the command you send it back to you after it's executed.


bartman:
It's funny how these things work, I actually changed the ZP code to move quite a bit of the configuration code to a different variable so that it can indeed be supported outside of the ZP directory. The question is, how to integrate something like that...

#6 Bartman

Bartman

    Adept

  • Members
  • PipPipPip
  • 56 posts

Posted 26 May 2005 - 06:40 PM

It's funny how these things work, I actually changed the ZP code to move quite a bit of the configuration code to a different variable so that it can indeed be supported outside of the ZP directory.  The question is, how to integrate something like that...

Just another input field in the options :)
blank or . would mean the ZP dir
../ZP Config a folder parallel to the ZP directory
%APPDATA%\Zoom Player would support per user config.

#7 bitmonster

bitmonster

    Adept

  • Members
  • PipPipPip
  • 66 posts

Posted 26 May 2005 - 07:15 PM

bitmonster:
on which command?  The current ZP function ack code just throws the command you send it back to you after it's executed.

Don't mind, it was my fault. :)
My code showed events twice by fault if they are not known and since these ack codes are new...
I didn't realized it at first, since all other codes worked as expected.

#8 bLight

bLight

    Lead Developer

  • Admin
  • PipPipPipPipPip
  • 9499 posts

Posted 26 May 2005 - 07:43 PM

bartman:
it's not that simple as if you save the settings in a different directory, it wouldn't know where that is if it has to load the settings from a different dir... see the logic.

#9 Bartman

Bartman

    Adept

  • Members
  • PipPipPip
  • 56 posts

Posted 26 May 2005 - 07:53 PM

If the config directory is some kind of a "global" setting it should work.
btw. how is it handled, whether the settings are read from the registry or from the local file? Is just checked if the file exists?

#10 OV2

OV2

    Master

  • Members
  • PipPipPipPipPip
  • 965 posts

Posted 26 May 2005 - 09:08 PM

Yay auto-sizing works nicely ^^
Thanks!

#11 bLight

bLight

    Lead Developer

  • Admin
  • PipPipPipPipPip
  • 9499 posts

Posted 26 May 2005 - 10:10 PM

bart:
The file is loaded into the registry and removed from the registry when ZP is closed. I'm not sure if it will be any faster reading directly from the file as the registry is a semi-advanced database, and I don't want to put any heavy database code into ZP (memory use concerns).

On my system the slowdown of using an external file is well under 1 second.

#12 Mastiff

Mastiff

    Guru

  • Members
  • PipPipPipPip
  • 214 posts

Posted 27 May 2005 - 06:53 AM

* New Setting (Advanced Options / DVD / DVD Tools) allowing you to
  have Zoom Player wait for "On NTSC/PAL/DVD Stop" executed programs
  to close prior to Playing/Stopping the DVD.

Thanks, Blight! Appreciate it! Weird thing, though: When playing DivX with FFDShow resize (which was one of the reasons for my request for this one - the other one was PowerStrip to set the correct refresh for PAL/NTSC) it seems I have to set aspect ratio to "Disabled (Fit to Window)" to get it right. If not, the image has room on both sides and seems slightly to high. With "Disabled" the AR is totally correct. Is this possible to send as a command line switch?

Would a function like this for media files be difficult/a lot of work to implement?

btw did you decide not to include any finished 3D UI in this one, or isn't anything finished yet?

#13 lar282

lar282

    Adept

  • Members
  • PipPipPip
  • 73 posts

Posted 27 May 2005 - 07:13 AM

the bug about DVD AutoExecute is still there. I cannot use for example
C:\SetDisplayFrequency.exe 75
It wont accept anything with parameters in it.

EDIT:I am soooo sorry. It works.Delete this. thank u for the fix:DS


//Lasse

#14 Mastiff

Mastiff

    Guru

  • Members
  • PipPipPipPip
  • 214 posts

Posted 27 May 2005 - 07:20 AM

Also, when running renderless, a change from full screen to windowes makes it pop. I suppose that's to be expected since the movie is stopped and restarted, but is there a way around that? And I think it doesn't work on shortcuts (lnk), only exe and bat.

#15 ehathgepiurhe

ehathgepiurhe

    Lead QA

  • Members
  • PipPipPipPipPip
  • 6710 posts

Posted 27 May 2005 - 10:08 AM

+ Another change to how Zoom Player is opened when an external program
  tells it to start maximized.  Now Zoom Player will just start in
  a regular maximized window.

Hi Blight,

Sadly, you still don't have this quite right. ZP now starts full screen. This is no better than how ZP behaved before. If the ZP window only covers 320x240 (or whatever) of the screen when you open the file via ZP, it should only cover the same portion of the screen when the movie is opened in ZP by any application. I honestly don't see what is so hard about getting this right - ZP is the only application that has this problem. As I have stated before, neither MPC nor Windows Media Player have this problem. When the movies are set to open in either of these 2 players, and the program calls them, they open at the same size as the movie (which would indicate to me that either the program is not calling them maximised like you think it is and thus the bug is in ZP, or they are ignoring the maximise command like they should do in which case you need to code ZP to ignore a maximise command - I think it is the former option though). Change movie associations back to ZP though, and you get this damned huge window on your screen, with really grainy video (cause it is trying to size a less than full screen movie to full screen). :unsure:

CM

#16 Mastiff

Mastiff

    Guru

  • Members
  • PipPipPipPip
  • 214 posts

Posted 27 May 2005 - 11:15 AM

There's a bug when exporting a Girder GML that causes Girder not to open or import the file:

<Command Name="OSD-Popup of the current Date & Time"

should be

[code=auto:0]<Command Name="OSD-Popup of the current Date &amp; Time" [QUOTE]

#17 bLight

bLight

    Lead Developer

  • Admin
  • PipPipPipPipPip
  • 9499 posts

Posted 27 May 2005 - 05:51 PM

Mastiff
Argh, damn this "&" bug, I was sure I fixed it once already. Nevermind, fixed for sure now.

3D UI is problematic... it's on hold for this version, renderless mode will remain as experimental.

I'm not sure I get the relationship between aspect ratio and the wait for stop feature.

And the change from fullscreen to window makes what pop? the background image? Yes, that will happen as the video is reloaded. And I'm not sure what you mean by the shortcut reference.


ehathgepiurhe:
I don't get what you mean... when these external applications start ZP, they start ZP maximized... I know that for sure, so that what ZP will do, start maximized. I checked how it works with WMP and it starts the same way.

#18 johnnawrocki

johnnawrocki

    Greenhorn

  • Members
  • PipPip
  • 38 posts

Posted 27 May 2005 - 07:16 PM

Thx for FullScreen State. :unsure:

#19 moshmothma

moshmothma

    Newbie

  • Members
  • Pip
  • 11 posts

Posted 27 May 2005 - 10:08 PM

Blight, I don't get it. With each release the same problem persists for me. Pleeeeeaasse help me. I desperately would like this to work. Ok, enough whining.

Using the reg entry OPRSVSync = 2, I can only playback in fullscreen exclusive mode. If I minimize zoom player errors out "Unable to create the "Video Mixing Renderer 9" filter." If I don't use the entry then zoom player behaves normally but playback is very stuttery. Additionally, I cannot use the context menu option even in fullscreen mode with vmr9 renderless mode. Interestingly, I use VNC to access that host then I can see the context menu. Is there some output I can send to you for troubleshooting? It looks like I am the only one suffering from this but I don't get it. I am able to reproduce the same behaivor on another host with a different OS and video card. I have tried every conceivable option and defaulted my video card settings and had rebuilt my OS. No combination of options lets me use renderless in anything other than fullscreen with oprsvsync. Currently my box looks like this

Windows XP MCE 2005
AThlon 64
Nvidia 6600GT with 72.45 drivers
16x AA
16x AF

latest zoom player
latest Descaler (thought the problem persists with every video driver)

Thanks

#20 ehathgepiurhe

ehathgepiurhe

    Lead QA

  • Members
  • PipPipPipPipPip
  • 6710 posts

Posted 28 May 2005 - 03:17 AM

ehathgepiurhe:
I don't get what you mean... when these external applications start ZP, they start ZP maximized... I know that for sure, so that what ZP will do, start maximized. I checked how it works with WMP and it starts the same way.

Hi Blight.

Yes, they start ZP maximised...but only because ZP is faulty. As I stated, MPC and WMP do not exhibit this behaviour, and as I've stated before in my other posts on this, I can't contact the authors of each and every movie database to ask them to change their code because ZP is the only player that doesn't work properly. I just can't see the problem for you - if you contend that ZP starts maximised because the databse programs make it so (which I don't believe), thsn simply change the ZP code so that ZP starts in a normal window (not maximised, not full screen, just a normal window like it does when you double click on the movie file in Explorer), and then we will see who is right.

CM