Each command has a "what command" (i.e. MCC_PLAY_PAUSE) and also an optional parameter,
which is explained by the comment following the command. If you don't use the parameter,
set it to '0'.
Note: Some commands may only work with the latest version of Media Center.
Playback
Enum | Command | parameter |
10000 | MCC_PLAY_PAUSE | ignore |
10001 | MCC_PLAY | ignore |
10002 | MCC_STOP | BOOL bDisplayWarning |
10003 | MCC_NEXT | BOOL bNotActualNext |
10004 | MCC_PREVIOUS | ignore |
10005 | MCC_SHUFFLE | 0: toggle shuffle; 1: shuffle, jump to PN; 2: shuffle, no jump |
10006 | MCC_CONTINUOUS | ignore |
10007 | MCC_UPDATE_VIS | ignore |
10008 | MCC_FAST_FORWARD | ignore |
10009 | MCC_REWIND | ignore |
10010 | MCC_STOP_CONDITIONAL | ignore |
10011 | MCC_SET_ZONE | int nZoneIndex (-1 toggles forward, -2 toggles backwards) |
10012 | MCC_TOGGLE_FULLSCREEN | BOOL bForceReturnFromFullScreen |
10013 | MCC_SHOW_WINDOW, | BOOL bJumpToPlayingNow |
10014 | MCC_MINIMIZE_WINDOW | ignore |
10015 | MCC_PLAY_CPLDB_INDEX | int nIndex |
10016 | MCC_SHOW_DSP_STUDIO | ignore |
10017 | MCC_VOLUME_MUTE | 0: toggle; 1: mute; 2: unmute |
10018 | MCC_VOLUME_UP | int nDeltaPercent |
10019 | MCC_VOLUME_DOWN | int nDeltaPercent |
10020 | MCC_VOLUME_SET | int nPercent |
10021 | MCC_SHOW_PLAYBACK_OPTIONS | ignore |
10022 | MCC_SET_PAUSE | BOOL bPause (-1 toggles) |
10023 | MCC_SET_CURRENTLY_PLAYING_RATING | int nRating (0 means ?) |
10024 | MCC_SHOW_PLAYBACK_ENGINE_MENU | screen point (loword: x, hiword: y) -- must send directly |
10025 | MCC_PLAY_NEXT_PLAYLIST | ignore |
10026 | MCC_PLAY_PREVIOUS_PLAYLIST | ignore |
10027 | MCC_MAXIMIZE_WINDOW | ignore |
10028 | MCC_RESTORE_WINDOW | ignore |
10029 | MCC_SET_PLAYERSTATUS | PLAYER_STATUS_CODES Code |
10030 | MCC_SET_ALTERNATE_PLAYBACK_SETTINGS | BOOL bAlternateSettings (-1 toggles) |
10031 | MCC_SET_PREVIEW_MODE_SETTINGS | low 12 bits: int nDurationSeconds, high 12 bits: int nStartSeconds |
10032 | MCC_SHOW_PLAYBACK_ENGINE_DISPLAY_PLUGIN_MENU | screen point (loword: x, hiword: y) -- must send directly |
10033 | MCC_DVD_MENU | ignore |
10034 | MCC_SEEK_FORWARD | int nMilliseconds (0 means default -- varies depending on playback type) |
10035 | MCC_SEEK_BACK | int nMilliseconds (0 means default -- varies depending on playback type) |
10037 | MCC_DETACH_DISPLAY, | BOOL bDetach (-1 toggles) |
File
20000 | MCC_OPEN_FILE = 20000, | [ignore] |
20001 | MCC_OPEN_URL, | [ignore] |
20002 | MCC_PRINT_LIST, | [ignore] |
20003 | MCC_EXPORT_PLAYLIST, | [ignore] |
20004 | MCC_EXPORT_ALL_PLAYLISTS, | [ignore] |
20005 | MCC_UPLOAD_FILES, | [ignore] |
20006 | MCC_EMAIL_FILES, | [ignore] |
20007 | MCC_EXIT, | [BOOL bForce] |
20008 | MCC_UPDATE_LIBRARY, | [ignore] |
20009 | MCC_CLEAR_LIBRARY, | [ignore] |
20010 | MCC_EXPORT_LIBRARY, | [ignore] |
20011 | MCC_BACKUP_LIBRARY, | [ignore] |
20012 | MCC_RESTORE_LIBRARY, | [ignore] |
20013 | MCC_LIBRARY_MANAGER, | [ignore] |
20014 | MCC_IMAGE_ACQUIRE, | [ignore] |
20015 | MCC_ORDER_PRINTS, | [ignore] |
20016 | MCC_PRINT_IMAGES, | [ignore] |
20017 | MCC_PRINT, | [ignore] |
20018 | MCC_PRINT_PAGESETUP, | [ignore] |
20019 | MCC_PERBCAST_PLAYLIST, | [ignore] |
Edit
21000 | MCC_COPY, | [ignore] |
21001 | MCC_PASTE, | [ignore] |
21002 | MCC_SELECT_ALL, | [ignore] |
21003 | MCC_SELECT_INVERT, | [ignore] |
21004 | MCC_DELETE, | [BOOL bAggressive] |
21005 | MCC_RENAME, | [ignore] |
21006 | MCC_UNDO, | [ignore] |
21007 | MCC_REDO, | [ignore] |
21008 | MCC_QUICK_SEARCH, | [BOOL bRepeatLastSearch] |
21009 | MCC_ADD_PLAYLIST, | [MEDIAFILE_INFO_ARRAY * paryFiles = NULL] |
21010 | MCC_ADD_SMARTLIST, | [ignore] |
21011 | MCC_ADD_PLAYLIST_GROUP, | [ignore] |
21012 | MCC_PROPERTIES, | [MEDIAFILE_INFO_ARRAY * paryFiles = NULL (-1 toggles) (note: never PostMessage(...) a pointer)] |
21013 | MCC_TOGGLE_TAGGING_MODE, | [ignore] |
21014 | MCC_CUT, | [ignore] |
21015 | MCC_DESELECT_ALL, | [ignore] |
21016 | MCC_DELETE_ALL, | [BOOL bAggressive] |
21017 | MCC_ADD_PODCAST_FEED, | [ignore] |
21018 | MCC_EDIT_PODCAST_FEED, | [ignore] |
21019 | MCC_ADD_PODCAST_DEFAULTS, | [ignore] |
21020 | MCC_CREATE_STOCK_SMARTLISTS, | [ignore] |
21021 | MCC_ENABLE_PODCAST_DOWNLOAD, | [ignore] |
21022 | MCC_DISABLE_PODCAST_DOWNLOAD, | [ignore] |
View
22000 | MCC_TOGGLE_MODE | -1: Next Mode, 0: Standard, 1: Mini, 2: Full Screen, 3: Theater View, 4: Windowed |
22001 | MCC_THEATER_VIEW, | SHOW_THEATER_VIEW_MODES Mode |
22002 | MCC_PARTY_MODE, | ignore |
22003 | MCC_SHOW_TREE_ROOT, | int nTreeRootIndex |
22004 | MCC_FIND_MUSIC, | wchar * pstrSearch (note: memory will be deleted by receiver) |
22005 | MCC_BACK, | int nLevels (0 does 1 level) |
22006 | MCC_FORWARD, | int nLevels (0 does 1 level) |
22007 | MCC_REFRESH, | ignore |
22008 | MCC_SET_LIST_STYLE, | int nListStyle (-1 toggles) |
22009 | MCC_SET_MODE, | -3: Current Mode (update settings), -2: Close Display, -1: Next Mode, 0: Standard, 1: Mini, 2: Full Screen, 3: Theater View, 4: Windowed |
22010 | MCC_SHOW_ARTISTINFO, | ignore |
22011 | MCC_SHOW_FINDCD, | ignore |
22012 | MCC_SHOW_RECENTLYIMPORTED, | ignore |
22013 | MCC_SHOW_TOPHITS, | ignore |
22014 | MCC_SHOW_RECENTLYPLAYED, | ignore |
22015 | MCC_SET_MEDIA_MODE, | int nMediaMode |
22016 | MCC_CONFIGURE_ACCESS_CONTROL, | ignore |
22017 | MCC_SET_SERVER_MODE, | BOOL bServerMode |
22018 | MCC_SET_MODE_FOR_EXTERNAL_PROGRAM_LAUNCH, | int nType (0: starting external app, 1: ending external app) |
Tools
23000 | MCC_IMPORT = 23000, | loword: bAutomatic, hiword: bDisableAlreadyRunningWarning |
23001 | MCC_RIP, | ignore |
23002 | MCC_BURN, | ignore |
23003 | MCC_RECORD, | ignore |
23004 | MCC_CONVERT, | ignore |
23005 | MCC_ANALYZE_AUDIO, | ignore |
23006 | MCC_MEDIA_EDITOR, | ignore |
23007 | MCC_CD_LABELER, | ignore |
23008 | MCC_DOWNLOAD_MANAGER, | ignore |
23009 | MCC_MEDIA_SERVER, | ignore |
23010 | MCC_MUSICEX_MANAGER, | ignore |
23011 | MCC_PLUGIN_MANAGER, | ignore |
23012 | MCC_SKIN_MANAGER, | ignore |
23013 | MCC_OPTIONS, | int nPageNo |
23014 | MCC_RENAME_CD_FILES, | ignore |
23015 | MCC_WMLICENSE_MANAGER, | ignore |
23016 | MCC_SERVICES_MANAGER, | ignore |
23017 | MCC_HH_UPLOAD, | loword: nDeviceSessionID (0 gets default), hiword: flags (1: sync only; 2: show warnings) |
23018 | MCC_HH_UPDATE_AFTER_UPLOAD_WORKER_FINISHED, | int nDeviceSessionID |
23019 | MCC_HH_CLOSE_DEVICE, | int nDeviceSessionID |
23020 | MCC_HH_SHOW_OPTIONS, | int nDeviceSessionID |
Help
24000 | MCC_HELP_CONTENTS, | ignore |
24001 | MCC_HELP_HOWTO_IMPORT_FILES, | ignore |
24002 | MCC_HELP_HOWTO_PLAY_FILES, | ignore |
24003 | MCC_HELP_HOWTO_RIP, | ignore |
24004 | MCC_HELP_HOWTO_BURN, | ignore |
24005 | MCC_HELP_HOWTO_ORGANIZE_FILES, | ignore |
24006 | MCC_HELP_HOWTO_VIEW_SCHEMES, | ignore |
24007 | MCC_HELP_HOWTO_MANAGE_PLAYLISTS, | ignore |
24008 | MCC_HELP_HOWTO_EDIT_PROPERTIES, | ignore |
24009 | MCC_HELP_HOWTO_FIND, | ignore |
24010 | MCC_HELP_HOWTO_CONFIGURE, | ignore |
24011 | MCC_CHECK_FOR_UPDATES, | ignore |
24012 | MCC_BUY, | ignore |
24013 | MCC_INSTALL_LICENSE, | ignore |
24014 | MCC_REGISTRATION_INFO, | ignore |
24015 | MCC_PLUS_FEATURES, | ignore |
24016 | MCC_INTERACT, | ignore |
24017 | MCC_SYSTEM_INFO, | ignore |
24018 | MCC_ABOUT, | ignore |
24019 | MCC_CONFIGURE_DEBUG_LOGGING, | ignore |
24020 | MCC_TEST, | ignore |
Tree
25000 | MCC_ADD_VIEW_SCHEME, | ignore |
25001 | MCC_EDIT_VIEW_SCHEME, | ignore |
25002 | MCC_OBSOLETE_25002, | ignore |
25003 | MCC_OBSOLETE_25003, | ignore |
25004 | MCC_OBSOLETE_25004, | ignore |
25005 | MCC_OBSOLETE_25005, | ignore |
25006 | MCC_TREE_PLAY, | ignore |
25007 | MCC_TREE_ADD_TO_PLAYING_NOW, | ignore |
25008 | MCC_TREE_ADD_DIRECTORY, | ignore |
25009 | MCC_TREE_IMPORT, | ignore |
25010 | MCC_TREE_ADD_CD_FOLDER, | ignore |
25011 | MCC_UPDATE_FROM_CD_DATABASE, | ignore |
25012 | MCC_SUBMIT_TO_CD_DATABASE, | ignore |
25013 | MCC_TREE_RIP, | ignore |
25014 | MCC_CLEAR_PLAYING_NOW, | 0: all files; 1: leave playing file |
25015 | MCC_COPY_LISTENING_TO, | BOOL bPaste |
25016 | MCC_TREE_SET_EXPANDED, | 0: collapsed; 1: expanded |
25017 | MCC_RESET_VIEW_SCHEMES, | ignore |
25018 | MCC_TREE_ERASE_CD_DVD, | ignore |
25019 | MCC_UPDATE_FROM_CDPLAYER_INI, | ignore |
25020 | MCC_TREE_EJECT, | ignore |
25021 | MCC_TREE_ADD_VIRTUAL_DEVICE, | ignore |
List
26000 |
MCC_LIST_UPDATE_ORDER, |
[ignore]
|
26001 |
MCC_LIST_SHUFFLE_ORDER, |
[ignore]
|
26002 |
MCC_LIST_IMPORT, |
[ignore]
|
26003 |
MCC_LIST_REMOVE_ORDER, |
[ignore]
|
26004 |
MCC_LOCATE_FILE, |
[int nLocation (-1: on disk (internal); -2: on disk (external); 0-n: library field index)
|
26005 |
MCC_LIST_MOVE_DISK_FILES, |
[ignore]
|
26006 |
MCC_LIST_INCREMENT_SELECTION, |
[int nDelta]
|
26007 |
MCC_LIST_REMOVE_DUPLICATES, |
[ignore]
|
26008 |
MCC_LIST_AUTO_SIZE_COLUMN, |
[int nColumn, zero-based column index (-1: all)]
|
26009 |
MCC_LIST_CUSTOMIZE_VIEW, |
[ignore]
|
26010 |
MCC_LIST_COPY_DISK_FILES, |
[ignore]
|
26011 |
MCC_LIST_SET_RIP_CHECK, |
[0: uncheck, 1: check, -1: toggle]
|
26012 |
MCC_LIST_DOWNLOAD, |
[ignore]
|
System
27000 |
MCC_KEYSTROKE = 27000, |
[int nKeyCode]
|
27001 |
MCC_SHUTDOWN, |
[ignore]
|
Other
30000 |
MCC_RELOAD_MC_VIEW = 30000, |
[ignore]
|
30001 |
MCC_CUSTOMIZE_TOOLBAR, |
[ignore]
|
30002 |
MCC_PLAY_TV, |
[ignore]
|
30003 |
MCC_UPDATE_WEBPAGES, |
[ignore]
|
30004 |
MCC_SHOW_RUNNING_MC, |
[BOOL bToggleVisibility]
|
30005 |
MCC_SHOW_MENU, |
[int nMenuID]
|
30006 |
MCC_TUNE_TV, |
[ignore]
|
30007 |
MCC_PLAY_PLAYLIST, |
[int nPlaylistID]
|
30008 |
MCC_SENDTO_TOOL, |
[0: labeler; 1: media editor; 2: default editor; 3: ftp upload; 4: email]
|
30009 |
MCC_SHOW_VIEW_INFO, |
[new CMCViewInfo * (for internal use only)]
|
30010 |
MCC_SERVICES_HOME, |
[ignore]
|
30011 |
MCC_DEVICE_CHANGED, |
[new DEVICE_CHANGE_INFO * (for internal use only)]
|
30012 |
MCC_HH_FINISHED_FUNCTION, |
|
30013 |
MCC_CONFIGURE_THEATER_VIEW, |
[ignore]
|
30014 |
MCC_SET_STATUSTEXT, |
[wchar * pstrText (note: memory will be deleted by receiver)]
|
30015 |
MCC_UPDATE_UI_SIZE_AFTER_MAXIMIZE, |
[ignore]
|
30016 |
MCC_REENUM_PORTABLE_DEVICES, |
[BOOL bDeviceConnected]
|
30017 |
MCC_PLAY_ADVANCED, |
[PLAY_COMMAND * pCommand (deleted by receiver)]
|
30018 |
MCC_UPDATE_STATUS_BAR, |
[ignore]
|
Image tools
31000 |
MCC_IMAGE_SET_DESKTOP_BACK, |
[ignore]
|
31001 |
MCC_IMAGE_ROTATE_LEFT, |
[ignore]
|
31002 |
MCC_IMAGE_ROTATE_RIGHT, |
[ignore]
|
31003 |
MCC_IMAGE_ROTATE_UPSIDEDOWN, |
[ignore]
|
31004 |
MCC_IMAGE_RESIZE, |
[ignore]
|
31005 |
MCC_IMAGE_EDIT, |
[ignore]
|
Query
Commands (used internally -- get routed standard way)
33000 |
MCC_GET_SELECTED_FILES = 33000, |
[loword: GET_SELECTION_MODES Mode, hiword: short nFlags (1: for playback)]
|
33001 |
MCC_PRINTVIEW, |
[ignore]
|
33002 |
MCC_OUTPUT, |
[ignore]
|
33003 |
MCC_SETFOCUS, |
[ignore]
|
33004 |
MCC_SELECT_FILES, |
[CMediaArray *]
|
33005 |
MCC_DOUBLE_CLICK, |
[ignore]
|
33006 |
MCC_PLAY_OR_SHOW, |
[ignore]
|
33007 |
MCC_SHOW_CURRENT_FILE, |
[int nFlags (1: force, 2: select)]
|
33008 |
MCC_UPDATE_SIZES, |
[ignore]
|
33009 |
MCC_BUY_SELECTED_TRACKS, |
[int nPurchaseFlags]
|
33010 |
MCC_BUY_ALL_TRACKS, |
[int nPurchaseFlags]
|
33011 |
MCC_BUY_ALBUM, |
[int nPurchaseFlags]
|
33012 |
MCC_UPDATE_AFTER_PLUGIN_INSTALLED, |
[ignore]
|
Notifications (used internally -- go to all view windows)
34000 |
MCC_NOTIFY_FONT_CHANGED, |
[ignore]
|
34001 |
MCC_NOTIFY_VIEW_CHANGED, |
[ignore]
|
34002 |
MCC_NOTIFY_PLAYER_INFO_CHANGED, |
[PLAYER_INFO_CHANGES nChange]
|
34003 |
MCC_NOTIFY_TOOLTIPS_CHANGED, |
[BOOL bEnabled]
|
34004 |
MCC_UPDATE, |
[int nFlags]
|
34005 |
MCC_NOTIFY_FOCUS_CHANGED, |
[ignore]
|
34006 |
MCC_SAVE_PROPERTIES, |
[ignore]
|
34007 |
MCC_NOTIFY_UI_MODE_CHANGED, |
[ignore]
|
34008 |
MCC_NOTIFY_SELECTION_CHANGED, |
[HWND hwndSource]
|
34009 |
MCC_NOTIFY_FILE_CHANGED, |
[int nMFKey (-1: invalidates all files)]
|
34010 |
MCC_NOTIFY_FILE_STATUS_CHANGED, |
[int nMFKey (-1: invalidates all files)]
|
34011 |
MCC_NOTIFY_FILE_ENSURE_VISIBLE, |
[int nMFKey]
|
34012 |
MCC_NOTIFY_GET_TAB_HWNDS, |
[ignore]
|
34013 |
MCC_NOTIFY_BURNER_QUEUE_CHANGED, |
[int nFlags (1: folder change)]
|
34014 |
MCC_NOTIFY_BURNER_PROGRESS_CHANGED, |
[int nPercentage]
|
34015 |
MCC_NOTIFY_BURNER_STATUS_CHANGED, |
[LPCTSTR pStatus]
|
34016 |
MCC_NOTIFY_BURNER_STARTED, |
[ignore]
|
34017 |
MCC_NOTIFY_BURNER_FINISHED, |
[ignore]
|
34018 |
MCC_NOTIFY_BURNER_FAILED, |
[LPCTSTR pError]
|
34019 |
MCC_NOTIFY_BURNER_CLOSE_UI, |
[ignore]
|
34020 |
MCC_NOTIFY_BURNER_PREPARE_FOR_NEXT_COPY, |
[LPCTSTR pStatus]
|
34021 |
MCC_NOTIFY_RIP_STARTED, |
[ignore]
|
34022 |
MCC_NOTIFY_RIP_FINISHED, |
[ignore]
|
34023 |
MCC_NOTIFY_RIP_FAILED, |
[LPCTSTR pError]
|
34024 |
MCC_NOTIFY_RIP_PROGRESS_CHANGED, |
[ignore]
|
34025 |
MCC_NOTIFY_RIP_QUEUE_CHANGED, |
[ignore]
|
34026 |
MCC_NOTIFY_DOWNLOAD_FINISHED, |
[int nMFKey (-1: unknown)]
|
34027 |
MCC_NOTIFY_DOWNLOAD_FAILED, |
[int nMFKey (-1: unknown)]
|
34028 |
MCC_NOTIFY_DOWNLOAD_STATUS_CHANGED, |
[LPCTSTR pStatus]
|
34029 |
MCC_NOTIFY_STATUS_CHECKER_COMPLETE, |
[ignore]
|
34030 |
MCC_NOTIFY_ZONE_CHANGED, |
[ignore]
|
34031 |
MCC_NOTIFY_DISPLAY_OWNER_CHANGED, |
[HWND hwndOwner]
|
34032 |
MCC_NOTIFY_AFTER_FIRST_UPDATE_LAYOUT_WINDOW, |
[ignore]
|
34033 |
MCC_NOTIFY_AFTER_FIRST_UPDATE_APPLY_VIEW_STATE, |
[ignore]
|
34034 |
MCC_NOTIFY_PROCESS_TIME_REMAINING, |
[int nSecondsRemaining]
|
34035 |
MCC_NOTIFY_UI_UPDATE_ENABLE_DISABLE_STATES, |
[ignore]
|
34036 |
MCC_NOTIFY_UI_SKIN_CHANGED, |
[ignore]
|
34037 |
MCC_UPDATE_WINDOW_LAYOUT, |
[ignore]
|
34038 |
MCC_NOTIFY_SAVE_UI_BEFORE_SHUTDOWN, |
[ignore]
|
34039 |
MCC_NOTIFY_UPDATE_CONTROL_BARS, |
[ignore]
|
34040 |
MCC_NOTIFY_PLAYLIST_FILES_CHANGED, |
[int nPlaylistID]
|
34041 |
MCC_NOTIFY_PLAYLIST_INFO_CHANGED, |
[int nPlaylistID]
|
34042 |
MCC_NOTIFY_PLAYLIST_ADDED, |
[int nPlaylistID]
|
34043 |
MCC_NOTIFY_PLAYLIST_REMOVED, |
[int nPlaylistID]
|
34044 |
MCC_NOTIFY_PLAYLIST_COLLECTION_CHANGED, |
[ignore]
|
34045 |
MCC_NOTIFY_HANDHELD_OPTIONS_CHANGED, |
[ignore]
|
34046 |
MCC_NOTIFY_HANDHELD_PROGRESS_CHANGED, |
[int nPercent]
|
34047 |
MCC_NOTIFY_HANDHELD_UPLOAD_STARTED, |
[int nDeviceSessionID (0 gets default)]
|
34048 |
MCC_NOTIFY_HANDHELD_NEW_DEVICE_ARRIVED, |
[ing nDeviceSessionID]
|
34049 |
MCC_NOTIFY_HANDHELD_AFTER_DEVICE_CHANGED, |
[ignore]
|
34050 |
MCC_NOTIFY_HANDHELD_QUEUE_CHANGED, |
[ignore]
|
34051 |
MCC_NOTIFY_HANDHELD_INFO_COMPLETE, |
[ignore]
|
34052 |
MCC_NOTIFY_HANDHELD_AFTER_UPLOAD_FINISHED, |
[ignore]
|
34053 |
MCC_NOTIFY_COMPACT_MEMORY, |
[ignore]
|
34054 |
MCC_NOTIFY_SEARCH_CHANGED, |
[ignore]
|
Zones
To issue playback commands to a specific zone, mask these values with the parameter:
Current Zone: 0
Zone 0: 16777216 (or 0x1000000 hex)
Zone 1: 33554432 (or 0x2000000 hex)
Zone 2: 50331648 (or 0x3000000 hex)
Zone 3: 67108864 (or 0x4000000 hex)
Zone 4: 83886080 (or 0x5000000 hex)
Zone 5: 100663296 (or 0x6000000 hex)
etc... (keep adding 16777216 (or 2^24)) (up to Zone 31)
for the geeks, this is the top 6 bits of the 32-bit parameter
the lower 24 bits are used for the rest of the parameter (see the C++ macros below if you like)
if bit 32 is set, we assume someone passed in a simple negative number, so discard the zone portion
for parameters >= 0: zone number + parameter
for parameters < 0: zone number + (16777216 + parameter)
example: parameter -1 to zone 3: 67108864 + (16777216 + -1) = 83886079
ZONE PARAM | Zone Number | Wparam | Lparam | zone |
Z0: Play/Pause | MCC_PLAY_PAUSE | 10000 | 16777216 | 0 |
Z0: Play Track from Beginning | MCC_PLAY | 10001 | 16777216 | 0 |
Z0: Stop | MCC_STOP | 10002 | 16777216 | 0 |
Z0: Next | MCC_NEXT | 10003 | 16777216 | 0 |
Z0: Previous | MCC_PREVIOUS | 10004 | 16777216 | 0 |
Z0: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 16777216 | 0 |
Z0: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 16777217 | 0 |
Z0: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 16777218 | 0 |
Z0: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 16777216 | 0 |
Z0: FF | MCC_FAST_FORWARD | 10008 | 16777216 | 0 |
Z0: Rew | MCC_REWIND | 10009 | 16777216 | 0 |
Z0: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 16777216 | 0 |
Z0: Mute | MCC_VOLUME_MUTE | 10017 | 16777216 | 0 |
Z0: Vol +5 | MCC_VOLUME_UP | 10018 | 16777221 | 0 |
Z0: Vol -5 | MCC_VOLUME_DOWN | 10019 | 16777221 | 0 |
Z0: Vol 0 | MCC_VOLUME_SET | 10020 | 16777216 | 0 |
Z0: Vol 25 | MCC_VOLUME_SET | 10020 | 16777241 | 0 |
Z0: Vol 50 | MCC_VOLUME_SET | 10020 | 16777266 | 0 |
Z0: Vol 75 | MCC_VOLUME_SET | 10020 | 16777291 | 0 |
Z0: Vol 100 | MCC_VOLUME_SET | 10020 | 16777316 | 0 |
Z0: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777216 | 0 |
Z0: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777217 | 0 |
Z0: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777218 | 0 |
Z0: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777219 | 0 |
Z0: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777220 | 0 |
Z0: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 16777221 | 0 |
Z1: Play/Pause | MCC_PLAY_PAUSE | 10000 | 33554432 | 1 |
Z1: Play Track from Beginning | MCC_PLAY | 10001 | 33554432 | 1 |
Z1: Stop | MCC_STOP | 10002 | 33554432 | 1 |
Z1: Next | MCC_NEXT | 10003 | 33554432 | 1 |
Z1: Previous | MCC_PREVIOUS | 10004 | 33554432 | 1 |
Z1: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 33554432 | 1 |
Z1: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 33554433 | 1 |
Z1: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 33554434 | 1 |
Z1: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 33554432 | 1 |
Z1: FF | MCC_FAST_FORWARD | 10008 | 33554432 | 1 |
Z1: Rew | MCC_REWIND | 10009 | 33554432 | 1 |
Z1: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 33554432 | 1 |
Z1: Mute | MCC_VOLUME_MUTE | 10017 | 33554432 | 1 |
Z1: Vol +5 | MCC_VOLUME_UP | 10018 | 33554437 | 1 |
Z1: Vol -5 | MCC_VOLUME_DOWN | 10019 | 33554437 | 1 |
Z1: Vol 0 | MCC_VOLUME_SET | 10020 | 33554432 | 1 |
Z1: Vol 25 | MCC_VOLUME_SET | 10020 | 33554457 | 1 |
Z1: Vol 50 | MCC_VOLUME_SET | 10020 | 33554482 | 1 |
Z1: Vol 75 | MCC_VOLUME_SET | 10020 | 33554507 | 1 |
Z1: Vol 100 | MCC_VOLUME_SET | 10020 | 33554532 | 1 |
Z1: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554432 | 1 |
Z1: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554433 | 1 |
Z1: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554434 | 1 |
Z1: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554435 | 1 |
Z1: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554436 | 1 |
Z1: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 33554437 | 1 |
Z2: Play/Pause | MCC_PLAY_PAUSE | 10000 | 50331648 | 2 |
Z2: Play Track from Beginning | MCC_PLAY | 10001 | 50331648 | 2 |
Z2: Stop | MCC_STOP | 10002 | 50331648 | 2 |
Z2: Next | MCC_NEXT | 10003 | 50331648 | 2 |
Z2: Previous | MCC_PREVIOUS | 10004 | 50331648 | 2 |
Z2: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 50331648 | 2 |
Z2: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 50331649 | 2 |
Z2: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 50331650 | 2 |
Z2: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 50331648 | 2 |
Z2: FF | MCC_FAST_FORWARD | 10008 | 50331648 | 2 |
Z2: Rew | MCC_REWIND | 10009 | 50331648 | 2 |
Z2: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 50331648 | 2 |
Z2: Mute | MCC_VOLUME_MUTE | 10017 | 50331648 | 2 |
Z2: Vol +5 | MCC_VOLUME_UP | 10018 | 50331653 | 2 |
Z2: Vol -5 | MCC_VOLUME_DOWN | 10019 | 50331653 | 2 |
Z2: Vol 0 | MCC_VOLUME_SET | 10020 | 50331648 | 2 |
Z2: Vol 25 | MCC_VOLUME_SET | 10020 | 50331673 | 2 |
Z2: Vol 50 | MCC_VOLUME_SET | 10020 | 50331698 | 2 |
Z2: Vol 75 | MCC_VOLUME_SET | 10020 | 50331723 | 2 |
Z2: Vol 100 | MCC_VOLUME_SET | 10020 | 50331748 | 2 |
Z2: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331648 | 2 |
Z2: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331649 | 2 |
Z2: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331650 | 2 |
Z2: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331651 | 2 |
Z2: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331652 | 2 |
Z2: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 50331653 | 2 |
Z3: Play/Pause | MCC_PLAY_PAUSE | 10000 | 67108864 | 3 |
Z3: Play Track from Beginning | MCC_PLAY | 10001 | 67108864 | 3 |
Z3: Stop | MCC_STOP | 10002 | 67108864 | 3 |
Z3: Next | MCC_NEXT | 10003 | 67108864 | 3 |
Z3: Previous | MCC_PREVIOUS | 10004 | 67108864 | 3 |
Z3: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 67108864 | 3 |
Z3: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 67108865 | 3 |
Z3: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 67108866 | 3 |
Z3: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 67108864 | 3 |
Z3: FF | MCC_FAST_FORWARD | 10008 | 67108864 | 3 |
Z3: Rew | MCC_REWIND | 10009 | 67108864 | 3 |
Z3: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 67108864 | 3 |
Z3: Mute | MCC_VOLUME_MUTE | 10017 | 67108864 | 3 |
Z3: Vol +5 | MCC_VOLUME_UP | 10018 | 67108869 | 3 |
Z3: Vol -5 | MCC_VOLUME_DOWN | 10019 | 67108869 | 3 |
Z3: Vol 0 | MCC_VOLUME_SET | 10020 |
67108864 | 3 |
Z3: Vol 25 | MCC_VOLUME_SET | 10020 | 67108889 | 3 |
Z3: Vol 50 | MCC_VOLUME_SET | 10020 | 67108914 | 3 |
Z3: Vol 75 | MCC_VOLUME_SET | 10020 | 67108939 | 3 |
Z3: Vol 100 | MCC_VOLUME_SET | 10020 | 67108964 | 3 |
Z3: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108864 | 3 |
Z3: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108865 | 3 |
Z3: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108866 | 3 |
Z3: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108867 | 3 |
Z3: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108868 | 3 |
Z3: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 67108869 | 3 |
Z4: Play/Pause | MCC_PLAY_PAUSE | 10000 | 83886080 | 4 |
Z4: Play Track from Beginning | MCC_PLAY | 10001 | 83886080 | 4 |
Z4: Stop | MCC_STOP | 10002 | 83886080 | 4 |
Z4: Next | MCC_NEXT | 10003 | 83886080 | 4 |
Z4: Previous | MCC_PREVIOUS | 10004 | 83886080 | 4 |
Z4: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 83886080 | 4 |
Z4: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 83886081 | 4 |
Z4: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 83886082 | 4 |
Z4: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 83886080 | 4 |
Z4: FF | MCC_FAST_FORWARD | 10008 | 83886080 | 4 |
Z4: Rew | MCC_REWIND | 10009 | 83886080 | 4 |
Z4: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 83886080 | 4 |
Z4: Mute | MCC_VOLUME_MUTE | 10017 | 83886080 | 4 |
Z4: Vol +5 | MCC_VOLUME_UP | 10018 | 83886085 | 4 |
Z4: Vol -5 | MCC_VOLUME_DOWN | 10019 | 83886085 | 4 |
Z4: Vol 0 | MCC_VOLUME_SET | 10020 | 83886080 | 4 |
Z4: Vol 25 | MCC_VOLUME_SET | 10020 | 83886105 | 4 |
Z4: Vol 50 | MCC_VOLUME_SET | 10020 | 83886130 | 4 |
Z4: Vol 75 | MCC_VOLUME_SET | 10020 | 83886155 | 4 |
Z4: Vol 100 | MCC_VOLUME_SET | 10020 | 83886180 | 4 |
Z4: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886080 | 4 |
Z4: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886081 | 4 |
Z4: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886082 | 4 |
Z4: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886083 | 4 |
Z4: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886084 | 4 |
Z4: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 83886085 | 4 |
Z5: Play/Pause | MCC_PLAY_PAUSE | 10000 | 100663296 | 5 |
Z5: Play Track from Beginning | MCC_PLAY | 10001 | 100663296 | 5 |
Z5: Stop | MCC_STOP | 10002 | 100663296 | 5 |
Z5: Next | MCC_NEXT | 10003 | 100663296 | 5 |
Z5: Previous | MCC_PREVIOUS | 10004 | 100663296 | 5 |
Z5: Shuffle Mode-Toggle | MCC_SHUFFLE | 10005 | 100663296 | 5 |
Z5: ReShuffle-Jump to PN | MCC_SHUFFLE | 10005 | 100663297 | 5 |
Z5: ReShuffle-No Jump to PN | MCC_SHUFFLE | 10005 | 100663298 | 5 |
Z5: Continuous Mode-Toggle | MCC_CONTINUOUS | 10006 | 100663296 | 5 |
Z5: FF | MCC_FAST_FORWARD | 10008 | 100663296 | 5 |
Z5: Rew | MCC_REWIND | 10009 | 100663296 | 5 |
Z5: Play Seq. # | MCC_PLAY_CPLDB_INDEX | 10015 | 100663296 | 5 |
Z5: Mute | MCC_VOLUME_MUTE | 10017 | 100663296 | 5 |
Z5: Vol +5 | MCC_VOLUME_UP | 10018 | 100663301 | 5 |
Z5: Vol -5 | MCC_VOLUME_DOWN | 10019 | 100663301 | 5 |
Z5: Vol 0 | MCC_VOLUME_SET | 10020 | 100663296 | 5 |
Z5: Vol 25 | MCC_VOLUME_SET | 10020 | 100663321 | 5 |
Z5: Vol 50 | MCC_VOLUME_SET | 10020 | 100663346 | 5 |
Z5: Vol 75 | MCC_VOLUME_SET | 10020 | 100663371 | 5 |
Z5: Vol 100 | MCC_VOLUME_SET | 10020 | 100663396 | 5 |
Z5: Rating-? | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663296 | 5 |
Z5: Rating-1 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663297 | 5 |
Z5: Rating-2 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663298 | 5 |
Z5: Rating-3 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663299 | 5 |
Z5: Rating-4 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663300 | 5 |
Z5: Rating-5 | MCC_SET_CURRENTLY_PLAYING_RATING | 10023 | 100663301 | 5 |
How to issue Media Core commands
a) Post a WM_MC_COMMAND based message to the MC frame
Example (C++ source code):
HWND hwndMC = FindWindow(_T("MJFrame"), NULL);
PostMessage(hwndMC, WM_MC_COMMAND, MCC_PLAY_PAUSE, 0);
b) Fire the same command through the launcher (i.e. 'MC11.exe') in the system directory
Example (command-line program):
'MC11.exe' /MCC 10000, 0
// the WM_APP based message (WM_APP = 32768, so WM_MC_COMMAND = 33768)
#define WM_MC_COMMAND (WM_APP + 1000)
// extended MC_COMMAND message that takes a structure with extra information (internal use only)
#define WM_MC_COMMAND_EX (WM_APP + 1001)
// return value for unhandled MCC commands
#define MCC_UNHANDLED 0
// flags for command enable, disable, and check
enum MCC_UPDATEUI_FLAGS
{
MCC_UPDATEUI_ENABLE = 1,
MCC_UPDATEUI_DISABLE = 2,
MCC_UPDATEUI_PRESSED = 4,
};
Helper macros
#define IS_MCC_COMMAND_IN_RANGE(INDEX, FIRST, LAST) (((abs((int)INDEX)) >= FIRST) && ((abs((int)INDEX)) < LAST) || ((abs((int)INDEX)) >= FIRST + MCC_CUSTOMIZATION_OFFSET) && ((abs((int)INDEX)) < LAST + MCC_CUSTOMIZATION_OFFSET))
#define IS_MCC_COMMAND_IN_SECTION(INDEX, FIRST) IS_MCC_COMMAND_IN_RANGE(INDEX, FIRST, FIRST + 1000)
#define IS_VALID_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_RANGE(INDEX, MCC_FIRST, MCC_LAST)
#define IS_PLAYBACK_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_PLAYBACK_SECTION)
#define IS_FILE_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_FILE_SECTION)
#define IS_EDIT_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_EDIT_SECTION)
#define IS_VIEW_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_VIEW_SECTION)
#define IS_TOOL_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_TOOLS_SECTION)
#define IS_HELP_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_HELP_SECTION)
#define IS_TREE_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_TREE_SECTION)
#define IS_LIST_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_LIST_SECTION)
#define IS_SYSTEM_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_SYSTEM_SECTION)
#define IS_IMAGE_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_IMAGE_SECTION)
#define IS_INTERNAL_COMMAND_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_COMMANDS_SECTION)
#define IS_NOTIFY_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_SECTION(INDEX, MCC_NOTIFICATIONS_SECTION)
#define IS_CUSTOMIZATION_MCC_COMMAND(INDEX) IS_MCC_COMMAND_IN_RANGE(INDEX, MCC_FIRST + MCC_CUSTOMIZATION_OFFSET, MCC_LAST + MCC_CUSTOMIZATION_OFFSET)
#define MAKE_MCC_PLAYBACK_PARAM(PARAM, ZONE) (((ZONE) == -1) ? ((PARAM) & 0x00FFFFFF) : ((((ZONE) + 1) << 24) & 0xFF000000) | ((PARAM) & 0x00FFFFFF))
#define GET_MCC_PLAYBACK_PARAM(PARAM) (((PARAM) & 0x400000) ? ((PARAM) & 0xFFFFFF) - 0x1000000 : ((PARAM) & 0xFFFFFF))
#define GET_MCC_PLAYBACK_ZONE(PARAM) (((PARAM) & 0x80000000) ? -1 : (((PARAM) >> 24) - 1))
Defines for internal use
// update flags
#define MCC_UPDATE_FLAG_THUMBNAILS (1 << 0)
#define MCC_UPDATE_FLAG_FILE_PROPERTIES (1 << 1)
#define MCC_UPDATE_FLAG_FILE_ADDED_OR_REMOVED (1 << 2)
#define MCC_UPDATE_FLAG_TREE_STRUCTURE (1 << 3)
#define MCC_UPDATE_FLAG_REFILL_LIST (1 << 4)
#define MCC_UPDATE_FLAG_ITEM_DELETED (1 << 5)
#define MCC_UPDATE_FLAG_NO_PRESERVE_VIEW_STATE (1 << 6)
// update all
#define MCC_UPDATE_FLAG_ALL (0x7FFFFFFF & ~(MCC_UPDATE_FLAG_NO_PRESERVE_VIEW_STATE))
// UI modes
enum UI_MODES
{
UI_MODE_UNKNOWN = -2000,
UI_MODE_NO_UI = -1000,
UI_MODE_CURRENT = -3,
UI_MODE_CLOSE_DISPLAY = -2,
UI_MODE_NEXT = -1,
UI_MODE_STANDARD = 0,
UI_MODE_MINI,
UI_MODE_FULLSCREEN,
UI_MODE_THEATER,
UI_MODE_WINDOWED,
UI_MODE_STACK,
UI_MODE_SLIM,
UI_MODE_COUNT,
};
// player changes
#define PLAYER_INFO_CHANGE_ALL 0xFFFF
#define PLAYER_INFO_CHANGE_PLAYERSTATE (1 << 0)
#define PLAYER_INFO_CHANGE_VOLUME (1 << 1)
#define PLAYER_INFO_CHANGE_FILEINFO (1 << 2)
#define PLAYER_INFO_CHANGE_PLAYLISTSTATE (1 << 3)
#define PLAYER_INFO_CHANGE_EQCHANGE (1 << 4)
#define PLAYER_INFO_CHANGE_IMAGE (1 << 5)
#define PLAYER_INFO_CHANGE_PLAYING_FILE (1 << 6)
// player status codes
enum PLAYER_STATUS_CODES
{
PLAYER_STATUS_CODE_BUFFERING,
PLAYER_STATUS_CODE_LOCATING,
PLAYER_STATUS_CODE_CONNECTING,
PLAYER_STATUS_CODE_DOWNLOADING_CODEC,
PLAYER_STATUS_CODE_ACQUIRING_LICENSE,
PLAYER_STATUS_CODE_INDIVIDUALIZE_STARTING,
PLAYER_STATUS_CODE_INDIVIDUALIZE_CONNECTING,
PLAYER_STATUS_CODE_INDIVIDUALIZE_REQUESTING,
PLAYER_STATUS_CODE_INDIVIDUALIZE_RECEIVING,
PLAYER_STATUS_CODE_INDIVIDUALIZE_COMPLETED,
};
// theater view modes
enum SHOW_THEATER_VIEW_MODES
{
SHOW_THEATER_VIEW_MODE_TOGGLE_THEATER_VIEW,
SHOW_THEATER_VIEW_MODE_HOME,
SHOW_THEATER_VIEW_MODE_PLAYING_NOW,
SHOW_THEATER_VIEW_MODE_AUDIO,
SHOW_THEATER_VIEW_MODE_IMAGES,
SHOW_THEATER_VIEW_MODE_VIDEOS,
SHOW_THEATER_VIEW_MODE_PLAYLISTS,
SHOW_THEATER_VIEW_MODE_CD_DVD,
SHOW_THEATER_VIEW_MODE_TV,
};
// get selection modes
enum GET_SELECTION_MODES
{
GET_SELECTION_EXACT,
GET_SELECTION_ALL_ON_NONE,
GET_SELECTION_ALL_ON_ONE_OR_NONE,
GET_SELECTION_ALL,
};