⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mediaplayeroutlook.h

📁 M3355的源代码
💻 H
字号:

#ifndef __MEDIAPLAYEROUTLOOK_H__
#define __MEDIAPLAYEROUTLOOK_H__


/**********************************************************************/
// begin of common things -->

#define BUF_MAX 256
typedef enum {HIGHLIGHT_NORMAL=0, HIGHLIGHT_UNFOCUS, HIGHLIGHT_FOCUS, HIGHLIGHT_GRAY} tHighlightType;

// <-- end of common things


/************************MediaPlayerOutlook.h****************************
*
*  Copyright (C) 2003 by ALi Corporation.  All Rights Reserved.
*
*  File:  MediaPlayerOutlook.h
*
*  Contents:
*   To draw Media Player's Outlook -- Interface
* 
*  History:
*  Date     By                      Reason      Ver.
*  ====================================
*  2003/07  Gordon J.H. CHEN        Create      v2.6
*
***********************************************************************/

#include "GUIControl.h"
#include "MediaPlayerFunc.h"        // MPLIST_INFO


/**********************************************************************/
// Data interface between MPO and AP

typedef enum{RT_INIT=0, 			    	// Initial Media Player
#if (MP3WMA_LASTPLAY_FUNC==MP3WMA_LASTPLAY_ENABLE)
             RT_INIT_NOSHOW, 				// Initial Media Player,but not to show
             RT_LASTPALY,					// Initial gPosInfo when last play
#endif      
             RT_ACTIVE, 					// Active/Reshow Media Player
             RT_CLOSE, 						// Close Media Player

             RT_MEDIATYPE_CHG,		    	// eg: from mp3/wma to jpeg

             RT_FEEDBACK,					// change to playing state update content, highlight, and playing sign, after call RT_FEEDBACK, pls call RT_PLAYMODE_CHG
             RT_PLAYMODE_CHG,				// play mode change update core state icon, path, track time and track no.

             RT_PLAYTIME_CHG,				// update track time
             RT_TRACKNO_CHG,                // update track no, it is kept just for show transition number when number play
             
             RT_SURMODE_CHG,
             RT_PLAYBACK_CHG,				// repeat mode & random mode

             RT_HIGHLIGHT_UP,			    // V_KEY_UP move highlight, need not change page
             RT_HIGHLIGHT_DOWN, 		    // V_KEY_DOWN

             RT_REFRESH_PAGEUP,             // HL need not move(at 0) (1 item), display new page
             RT_REFRESH_PAGEDOWN,
             
             RT_TO_FIRSTITEM,               // V_KEY_DOWN: display new page, HL move to 0,
             RT_TO_LASTITEM,
             
             RT_PAGEUP,                     // turn page up ( 8 items)
             RT_PAGEDOWN,
             
             RT_HIGHLIGHT_LEFT,		    	// V_KEY_LEFT to next focus when LEFT input
             RT_HIGHLIGHT_RIGHT,			// V_KEY_RIGHT to next focus when RIGHT input
             
             RT_HIGHLIGHT_PREVIOUS,		    // move highlight to previous focused object
             RT_HIGHLIGHT_INOUT, 			// swith highlight between karaoke and media player

             RT_ENTER_DIR,                  // change dir
             RT_EXIT_DIR,
             
             RT_JPEGSIZE_CHG,               // update jpeg no / total no

             RT_SLIDESHOWSPEED_CHG,
             RT_MIXPLAY_CHG,

             RT_ADD_FILE,					// redraw program list when add file
             RT_DELETE_FILE,				// redraw program list when delete file
             RT_DELETE_ALL,					// redraw program list when add all files
             RT_ADD_ALL,					// redraw program list when delete all files

             RT_REMOVED_PLAY,               // playing song and highlight song not in the same directory, move to next song

             RT_RESET_POSITION,

			 RT_PROGRAM_ONOFF,
  			 RT_PROGPLAY_ONOFF,
} 
tRefreshType;

typedef struct
{
    WORD *iDiscMediaType;				// Media Type from DT, eg: C_MP3FILE | C_JPGFILE |  C_MPGFILE

    WORD *wPlayMode;					// Core state
    BOOL *bIsSecondStop;
    BYTE *bActionCtl;

    DWORD *dwPlayTime;					// Msg.Input
    WORD *wListFileCount, *wListItemCount, *wProgFileCount;	// total count instead of display count

    WORD *wRepeatMode, *wRandomMode;	// g_UiPlaybackRepeatRange,  g_UiPlaybackMethod
    WORD *wSurMode;						// surround mode
    BOOL *bIntroMode;

    BYTE *wSlideShowSpeed;
    BYTE *bMixPlay;

    BYTE *szPathName;					// g_szCurDisPath


    MPLIST_INFO *diListTable;   		// CD use this table, too
    MPLIST_INFO *diProgTable; 			// CD use this table, too

    // As for RT_FEEDBACK, all the media player outlook are determined by media player ap
    tMediaPlayerObj *iFocusObj;			// only for RT_FEEDBACK
    tMediaPlayerObj *iPlayingObj;		// only for RT_FEEDBACK
    WORD *wTransCurTrack;               // only for showing transition track when number play
    WORD *wListBeginIndex; 				// 0 .. n, for RT_FEEDBACK and for Exit Dir!!!
    WORD *wListHighlightIndex;			// 0 .. n, only for RT_FEEDBACK
    WORD *wListPlayingIndex;			// 0 .. n, only for RT_FEEDBACK
#if(MediaPlayer_ProgramPlayMode == MediaPlayer_ProgramPlay_Enable)
    WORD *wPicWidth, *wPicHeight;		// jpeg preview
    WORD *wProgBeginIndex; 				// 0 .. n, only for RT_FEEDBACK
    WORD *wProgHighlightIndex;			// 0 .. n, only for RT_FEEDBACK
    WORD *wProgPlayingIndex;			// 0 .. n, only for RT_FEEDBACK
#endif
    // As for RT_REMOVED_PLAY, playing index have to be remembered to back to playing directory, and Filename have to be remember to show playing pathname
    WORD *wListPlayingIndex_xDir;
    char *szFileName_xDir;
}
tRefreshParam;

typedef struct
{
    tPlayerType iPlayerFocused;             // eg: MPLR_PHOTO
    
    tMediaPlayerObj iFocusObj;
    
    WORD wListHighlightIndex;				// 0 .. n		-1: NO HIGHLIGHT
    int iListHighlightIndex;				// -n .. n		if not in [0..7], invisible

    WORD wListPlayingIndex;		    		// 0 .. n		-1: NO PLAYING (if not in highlight page, it will be MPO_NOTHING)
    int iListPlayingIndex;					// -n .. n		if not in [0..7], invisible

    WORD wListPlayingIndex_xDir;            // 0..n         if playing, it is index even not in highlight page, else MPO_NOTHING

#if(MediaPlayer_ProgramPlayMode == MediaPlayer_ProgramPlay_Enable)
    WORD wEditBtnSelected;                  // 0 .. n
    WORD wProgHighlightIndex;		       	// 0 .. n		-1: NO HIGHLIGHT
    int iProgHighlightIndex;				// -n .. n		if not in [0..7], invisible

    WORD wProgPlayingIndex;			    	// 0 .. n		-1: NO PLAYING
    int iProgPlayingIndex;					// -n .. n		if not in [0..7], invisible
#endif
}
tPositionInfo;


/**********************************************************************/
// Function interface between MPO and AP

void MPO_GetPositionInfo(tPositionInfo *iPositionInfo);
void MPO_RefreshOutlook(tRefreshType iRefreshType, tRefreshParam *iRefreshParam);







/************************MediaPlayerAuxiliary.h****************************
*
*  Copyright (C) 2003 by ALi Corporation.  All Rights Reserved.
*
*  File:  MediaPlayerAuxiliary.h
*
*  Contents:
*   To draw auxiliary part of Media Player's Outlook -- Interface
*   It is mainly for slide show
* 
*  History:
*  Date     By                      Reason      Ver.
*  ====================================
*  2003/10  Gordon J.H. CHEN        Create      v2.6
*
***********************************************************************/

/**********************************************************************/
// Data interface between MPA and AP

typedef enum{AT_INIT=0,          
             AT_CLOSE, 

             AT_PLAYMODE_CHG,
             AT_PLAYMODE_CLR,
             
             AT_PROGRESSBAR_INIT,
             AT_PROGRESSBAR_CLOSE,
             AT_PROGRESSBAR_INC,
             
             AT_SLIDESHOWHELP_INIT,
             AT_SLIDESHOWHELP_CLOSE,
             AT_SLIDESHOWHELP_CHG_HINT,
             AT_SLIDESHOWHELP_CHG_NUM
} 
tAuxliaryType;

typedef struct
{
    WORD *iPlayMode;       

    BOOL *bDrawSlideShowHelp;
    WORD *iCurPic;
    WORD *iTotalPic;
}
tAuxliaryParam;


/**********************************************************************/
// Function interface between MPA and AP

void MPA_RefreshAuxiliary(tAuxliaryType iAuxType, tAuxliaryParam *iAuxParam);

#define MediaPlayer_RadomPlay_Enable 1
#define MediaPlayer_RadomPlay_Disable 0
#define MediaPlayer_RadomPlayMode MediaPlayer_RadomPlay_Disable

#define MediaPlayer_ProgramPlay_Enable 1
#define MediaPlayer_ProgramPlay_Disable 0
#define MediaPlayer_ProgramPlayMode MediaPlayer_ProgramPlay_Disable

#define Direction_UP	0
#define Direction_DOWN	1

#endif //__MEDIAPLAYEROUTLOOK_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -