Defines in config.h

Preprocessor macro definitions for the config.h header file in the mmsyncclient library..


#include <mmsync/config.h>

General configuration settings

#define CONFIG_DEFAULT_DEVICE_PATH "/dev/mmsync"

The default mountpoint of the mm-sync resource manager API. All control contexts are created under this path.


The default verbosity level for mm-sync initialization log messages.

Event settings


The maximum number of event notifications that can be queued at a time.


The default emission control of folder synchronization events, which is trimonly.

Thread resource management settings


The default maximum number of synchronization records that can be stored in the buffers shared between the foreground and background synchronization threads.


The default maximum number of foreground synchronization threads permitted to run at a time.


The default synchronization thread priority (0 means the priority is inherited from the main mm-sync thread).


The default synchronization merge thread priority adjustment. This value is added to the original synchronization thread priority, so it's a relative value.

Limits on files that get synchronized


The default maximum directory depth to recursively visit when synchronizing a mediastore. This setting also applies to priority folders.


The maximum number of items that can be read from a mediastore. This limit excludes "." and ".." filesystem entries but includes any items whose filenames match the pattern of names for files to skip for synchronization.


The default number of media items allowed in a folder before the folder is determined to not contain media items (0 means unlimited).


The default number of nonmedia items allowed in a folder before the folder is determined to not contain media items (0 means unlimited).


The default number of items to pre-scan for nonmedia items when a maximum number of acceptable items is set (0 means unlimited).

Limits on lengths of string parameters

#define CONFIG_MAX_PATH 4000 

The maximum allowable length of any filename (including the path) given to mm-sync as a synchronization parameter.

#define CONFIG_MAX_SQL 8000 

The maximum size of a message that can be sent to the database resource manager; the message could be an SQL statement or something else.


The maximum length of a file extension that can be specified in any filename given to mm-sync.


The maximum number of distinct file extensions that can be synchronized. This setting is applied separately for the extensions of media files and for the extensions of playlists.

#define CONFIG_MAX_MS_NAME_LEN (128)

The maximum allowable length for a volume name referring to an attached mediastore. The length of the volume name passed in to mm-sync by the client can't exceed the configured length limit, or the synchronization operation fails.


The maximum length of a mediastore synchronizer name that can be given to mm-sync in the extended options for mm_sync_start().

Limits on external artwork filenames


The maximum length of a filename extension that an image file can have for it to be recognized as a source of external artwork. Used by the external art metadata plugin for retrieving cover art from Gracenote.

Database settings


The default maximum size for the database, in kilobytes. If the database exceeds this size, the synchronization aborts. If 0, there is no maximum database size.


After synchronizing this many files, mm-sync will check the database size. Larger values mean faster synchronizations but also that the maximum database size can be exceeded by a greater margin before the synchronization aborts. If 0, mm-sync won't check the database size during a synchronization.


The default timeout value for database accesses, in milliseconds.


Maximum metadata string lengths are specified in 4-byte characters. This constant is used by mm-sync for copying metadata to the database.


The mm-sync limit on the maximum size of metadata strings that get written to the database. This maximum size is the number of characters in the metadata strings copied from metadata providers into database fields.