HomeZoom Player Advanced Options › Smart Play



Introduction to Smart Play
Smart Play is a powerful feature that controls how Zoom Player reads and decodes media files. When Zoom Player runs for the very first time, it scans your system, determining which currently installed components (on your computer) are best suited to play media files (there can be multiple components on your computer, each telling the system that it should be used to decode media files, causing conflicts).

By knowing in advance which components are best suited and scanning your system for matches, Zoom Player can automatically build an advanced play-profile helping files play better and loads faster.

Enable Smart Play (Overrides the Windows Decoder / Filter selection)
Enabling Smart Play lets Zoom Player pick best of class (or user selected) components to decode media files. When disabled, Zoom Player lets Windows (DirectShow) choose the components. Under some system configurations, letting Windows chose the components can lead to instability, glitches during playback or outright failure to play. It is highly recommended to keep Smart Play enabled.

Auto-Configure
Pressing the Auto-Configure button makes Zoom Player re-scan your system for any changes (such as newly installed components) and automatically configure itself to use the best components. Using this function will wipe user-defined changes to Smart Play profiles (see below).

Settings & Black List: When Smart Play fails to create a graph, fall-back to DirectShow graph creation
Smart Play supports all popular media formats (and some of the not so popular), but with some files, it may fail to create a working playback graph (usually due to corrupted files or unknown file format). With this setting enabled, when a Smart Play graph can't be created, Zoom Player falls back to the DirectShow method of graph creation which may play the affected file. However, take note that the DirectShow method is not always reliable.

Settings & Black List: Assume audio streaming (SHOUTcast, ICEcast) if no file extension is specified in the URL (link)
When opening a streaming media URL that does not contain any file extension (e.g. "http://10.0.0.1/", there is no way of knowing in advance which media format is being streamed. With this setting enabled, audio streaming is assumed, otherwise video streaming is assumed.

Settings & Black List: Auto-Configure new Smart Play profiles after detecting a player version change
This setting controls whether new profiles are automatically configured after a new version of Zoom Player is installed. Older user-customized profiles are left untouched.

Settings & Black List: Show Smart Play graph creation errors (useful for debugging)
When enabled, Zoom Player displays enhanced error dialogs resulting from the connection between components required to play a media file using Smart Play. The error messages are a useful debugging tool when introducing and testing new components or figuring why an existing component fails to work.

Settings & Black List: Save Smart Play graph creation errors to an error log file
Similar to the "Show Smart Play graph creation errors" setting, this setting saves the error messages to a log file instead of displaying an error dialog. Enabling this setting, prompts you to select the log file name and path.

Settings & Black List: Use Indirect Connection when Connecting Filters
This is a debug setting, it tells Zoom Player that the playback components (splitter/decoders/etc) can connect indirectly. This setting should not be used for day to day playback.

Settings & Black List: Disable Smart Play for files with the following extensions (separate with ";")
Any file extension specified in this field will not use Smart Play and instead fall back to the Microsoft DirectShow method of reading/parsing media files. The only reason to use this feature is for specific media types that require the ability to dynamically change decoding components without Zoom Player interaction. For example, DVB TV viewing, where the DVB component requires a very specific connection between components that it builds itself.

Settings & Black List: Prevent the following filters/decoders from being used
If Smart Play fails to load a media file, Zoom Player tries to let windows (DirectShow) load the components required for playback itself. In such cases, there are known components that cause instability. This feature instructs Zoom Player to prevent windows from using the specified components when loading media files. As such, it gives an additional layer of stability, even in cases where Smart Play is unable to load a file.

Source Filters:
Source filters are the components Zoom Player uses to read media file and gather more information on the encoded media within. Each entry represent a different file format (AVI, WMV, MPG, MP4, FLV, etc).
Please note that source filters can include the functionality of both a Source and a Splitter.

Source Filter Configuration Dialog
The source configuration dialog is used to configure the components (filters) Zoom Player uses to initially load a media file. In its simple mode, the dialog displays a list of pre-existing component profiles and a list of components used by the selected profile. Simply click on any profile in the list to activate, if a component in the profile is not installed on your system, a notification dialog will appear.

In its advanced mode, you can modify a profile's priority (used by the Auto-Configure button), remove/edit/create profiles and specify file extensions to link with the profile.

If the source filter used in a profile contains the functionality of a splitter, enable the "This filter is also a splitter" check box.

The "Force Sub-Type" setting is used in rare cases where a source filter doesn't specify the media format it detected within a file. This setting can be used to force a specific identification when a connection is later made to a splitter filter.

Audio / Video Splitters
After the initial media data is read by the source filter, Zoom Player connects the source filter an appropriate Splitter filter based on information gathered from the source filter. Once connected, Zoom Player queries the Splitter filters to acquire the data streams encoded into the media (Audio/Video/Subtitle/etc).

Splitter Filter Configuration Dialog
The splitter configuration dialog is used to configure the components (filters) Zoom Player uses to determine media data streams. In its simple mode, the dialog displays a list of pre-existing component profiles and a list of components used by the selected profile. Simply click on any profile in the list to activate, if a component in the profile is not installed on your system, a notification dialog will appear.

In its advanced mode, you can modify a profile's priority (used by the Auto-Configure button), remove/edit/create profiles, specify file extension white/black lists and sub-types (Sub-Type is a unique media format identifier) used by the profile.

Audio & Video Decoders
The Audio and Video decoders connect to a splitter filter, reading encoded data from the splitter and outputting decoded and viewable information (Audio/Video/Subtitle/etc) which is then rendered to the screen or audio device.

Each profile in the list represents a codec name (encoded media format).

Audio/Video Filter Configuration Dialog
The audio and video configuration dialogs are used to configure the components (filters) Zoom Player uses to decode media streams into data that can be rendered to the screen or audio device. In its simple mode, the dialog displays a list of pre-existing component profiles and a list of components used by the selected profile. Simply click on any profile in the list to activate, if a component in the profile is not installed on your system, a notification dialog will appear.

In its advanced mode, you can modify a profile's priority (used by the Auto-Configure button), remove/edit/create profiles, override the default audio/video rendering device, specify file extension white/black lists and sub-types (Sub-Type is a unique media format identifier) used by the profile.

DLL Paths
By default, Zoom Player uses DirectShow filters that are registered with the operating system (windows). The DLL path feature lets you use DirectShow filters without having to register the filters with the operating system, allowing you to create a portable version of Zoom Player.

Each specified path is relative to Zoom Player's EXE's folder. For example, if Zoom Player's EXE resides under "H:\ZP\zplayer.exe" and you install the LAV Filters package under "H:\ZP\LAV", all you need is to specify "LAV" as a DLL path. If you install LAV under "H:\LAV", you can specify "..\LAV" as the DLL path.

Zoom Player's Smart Play profiles automatically find the DLL file name associated with each filter when a filter is added to a smart play configuration dialogs.

Please note that using a filter without registering it with the operating system has a few limitations:
1. The filter's property page will not be accessible.
2. Not all filters work without being registered with the operating system.