Media Center Core Commands: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
=MEDIA CENTER windows messages= |
|||
#pragma once |
#pragma once |
Revision as of 09:51, 22 May 2007
- pragma once
Media Core Commands (for Media Center 9.x and later)
Copyright (c) 2003-2006 J. River, Inc. -- All Rights Reserved.
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.
enum MC_COMMANDS
{
MCC_FIRST = 10000,
Playback (range 10,000 to 20,000)
windows messages
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 | [0: all files; 1: leave playing file] | |
25015 | MCC_COPY_LISTENING_TO, | [BOOL bPaste] |
25016 | [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 | [ignore] | |
31002 | [ignore] | |
31003 | [ignore] | |
31004 | MCC_IMAGE_RESIZE, | [ignore] |
31005 | MCC_IMAGE_EDIT, | [ignore] |
Query
32000 | MCC_QUERY_SECTION, |
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] |
Last
MCC_LAST = 40000
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
MORE WILL FOLOW
Customization specific (used internally)
- define MCC_CUSTOMIZATION_OFFSET 100000
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,
};