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

📄 avshow.c

📁 MTK portableDVD 采用mtk1389方案的代码
💻 C
📖 第 1 页 / 共 3 页
字号:
  else
#endif
#ifdef MPEG4_TXT_SP
  if (bSharedInfo(SI_DISC_TYPE) == SV_DATA) 			//guosong	
  {
     vOsdPosClear(OSD_POS_REMAIN_MSG);
     wPos = OSD_POS_KSCORE;		 	//guosong	
  }
  else
 #endif
  {
    wPos = OSD_POS_AUD_CTRL;
  }

  switch (bMode)
  {
    case OSD_MUTE_OFF:
    {
#ifdef PLAYER_FLMENU
      if (fgFlMenuOn)
      {
        vFlIpShowInfo(IP_INFO_VOLUME, bAdspCurrVol(), FLIP_VOLUME_MUTE_OFF | FLIP_VOLUME_REDRAW);
      }
      else  
#endif
      {
      #ifdef MPEG4_TXT_SP //Vincent @04-04-04
      #ifdef SUPPORT_OGG
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_OGG || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
       #else
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
       #endif 
                 if (bSharedInfo(SI_DISC_TYPE) == SV_DATA) 			//guosong	
                    {
                     vOsdPosClear(OSD_POS_REMAIN_MSG);
                     wPos = OSD_POS_KSCORE;//billy@040819		 	//guosong	
                    }
                 else
                   {
                      wPos = OSD_POS_AUD_CTRL;
                    }
      #endif      
        vOsdPosShow(wPos, OSD_MSG_MUTEOFF, OSD_TIMEOUT);
        vOsdCoreSetAudioStatus(OSD_AUDIO_SHOW_CLEAR, 0);
      }
      break;
    }

    case OSD_MUTE_ON:
    {
#ifdef PLAYER_FLMENU
      if (fgFlMenuOn)
        vFlIpShowInfo(IP_INFO_VOLUME, bAdspCurrVol(), FLIP_VOLUME_MUTE_ON);
      else  
#endif
      {
        #ifdef MPEG4_TXT_SP //Vincent @04-04-04
        #ifdef SUPPORT_OGG
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_OGG || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
               #else
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
               #endif
                   if (bSharedInfo(SI_DISC_TYPE) == SV_DATA) 			//guosong	
                    {
                    vOsdPosClear(OSD_POS_REMAIN_MSG);
                     wPos = OSD_POS_KSCORE;//billy@040819		 	//guosong	
                    }
                 else
                   {
                      wPos = OSD_POS_AUD_CTRL;
                    }
        #endif        	
        #ifdef TEMP_VERIFY_FOR_OSD_ERROR          
        vOsdPosClear(wPos);          //guosong 0805
        #endif              
        vOsdPosShow(wPos, OSD_MSG_MUTE, OSD_NO_DISAPPEAR);
        vOsdCoreSetAudioStatus(OSD_AUDIO_SHOW_MUTE, OSD_NO_DISAPPEAR);
      }
      break;
    }

    case OSD_MUTE_CLEAR:
    default:
    {
#ifdef PLAYER_FLMENU
      if (fgFlMenuOn)
        vFlIpShowInfo(IP_INFO_VOLUME, bAdspCurrVol(), FLIP_VOLUME_REDRAW);
      else
#endif
      {
        #ifdef MPEG4_TXT_SP //Vincent @04-04-04
        #ifdef SUPPORT_OGG
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_OGG))
        #else
          if(fgIsIsoPlay() && bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI )
        #endif
        wPos = OSD_POS_AUD_CTRL;
        #endif        	
        vOsdPosClear(wPos);
        vOsdCoreSetAudioStatus(OSD_AUDIO_SHOW_CLEAR, 0);
      }
      break;
    }
  }
}
#endif
// *********************************************************************
// Function : void vOsdShowZoom(BYTE bState)
// Description :
// Parameter :  bState
// Return    : None
// *********************************************************************
static code BYTE pbZoomMsg[SV_ZOOM_MODE_MAX - 1][3] = {
  { '1', '.', '1' }, /* 1:  SV_ZOOM_11  */
  { '1', '.', '2' }, /* 2:  SV_ZOOM_12  */
  { '1', '.', '3' }, /* 3:  SV_ZOOM_13  */
  { '1', '.', '5' }, /* 4:  SV_ZOOM_15  */
  { ' ', '2', ' ' }, /* 5:  SV_ZOOM_2   */
  { '2', '.', '5' }, /* 6:  SV_ZOOM_25  */
  { ' ', '3', ' ' }, /* 7:  SV_ZOOM_3   */
  { '3', '.', '5' }, /* 8:  SV_ZOOM_35  */
  { ' ', '4', ' ' }, /* 9:  SV_ZOOM_4   */
  { '1', '/', '2' }, /* 10:  SV_ZOOM_21  */
  { '1', '/', '3' }, /* 11: SV_ZOOM_31  */
  { '1', '/', '4' }  /* 12: SV_ZOOM_41  */
};

#ifndef CUSTOMER_REQUEST	
void vOsdShowZoom(BYTE bState) large
{
  BYTE pbStr[4];
  BYTE bIdx;

  if (fgIsIsoPlay())
  {
    vOsdPosClear(OSD_POS_ISO_ZOOM);
  }
  else
  {
    vOsdPosClear(OSD_POS_ZOOM);
  }

#ifdef ENABLE_ZOOM_USER_MODE
  if (bState == SV_ZOOM_USR)
  {
    pbStr[0] = 3;
    pbStr[1] = 'F';
    pbStr[2] = 'I';
    pbStr[3] = 'T';
  }
  else
#endif /* ENABLE_ZOOM_USER_MODE */
  if ((bState == SV_ZOOM_1) || (bState >= SV_ZOOM_MODE_MAX))
  {
    pbStr[0] = 0;
  }
  else
  {
    bState--;

    for (pbStr[0] = 0; pbStr[0] < 3; pbStr[0] += 1)
    {
      pbStr[pbStr[0] + 1] = pbZoomMsg[bState][pbStr[0]];
    }
    
    //pbStr[0] = 3;
  }

  if (pbStr[0] > 0)
  {
    if (fgIsIsoPlay())
    {
      vOsdPosShowArg(OSD_POS_ISO_ZOOM, OSD_MSG_ICON_ZOOM, OSD_TIMEOUT, pbStr);//10/08
    }
    else
    {
      vOsdPosShowArg(OSD_POS_ZOOM, OSD_MSG_ICON_ZOOM, OSD_TIMEOUT, pbStr);//10/08
    }
  }
}
#endif

#ifdef PLAYER_ZOOMIN_INDICATOR
#define BOARD_COL_BLACK      4
#define BOARD_COL_WHITE     3
#define BOARD_COL_RED          2
#define FILL_COL_WHITE0       1
#define BOARD_WIDTH             4

#define vZoomRectangle(bWbIdx, bOutPix, bOutCol, fgFill, bFillCol, wStartX, wStartY, wEndX, wEndY) \
{ \
  _wStartX = wStartX;  \
  _wStartY = wStartY;  \
  _wEndX = wEndX;  \
  _wEndY = wEndY;  \
  vRectangle(bWbIdx, bOutPix, bOutCol, fgFill, bFillCol); \
}

// Modify by Bright_liu 2005.10.05
static code BYTE pbZoomBr[SV_ZOOM_IN_MAX - SV_ZOOM_IN_MIN + 1][2] = {
  {116,77}, /* SV_ZOOM_11 */
  {112,74}, /* SV_ZOOM_12 */
  {109,72}, /* SV_ZOOM_13 */
  {103,68}, /* SV_ZOOM_15 */
  {94, 62}, /* SV_ZOOM_2  */
  {87, 57}, /* SV_ZOOM_25 */
  {82, 54}, /* SV_ZOOM_3  */
  {78, 52}, /* SV_ZOOM_35 */
  {75, 49}  /* SV_ZOOM_4  */
};

// *********************************************************************
// Function : void vZoomBrDraw(void)
// Description :
// Parameter :  
// Return    : 
// *********************************************************************
void vOsdShowZoomBr(BYTE bX, BYTE bY, BYTE bMode) large
{
  BYTE bNewX;
  BYTE bNewY;

  // outer rectangle
  vZoomRectangle(WB_ZOOM_BR, 2, BOARD_COL_BLACK, 1, FILL_COL_WHITE0, 0, 0, ZOOM_BR_WIDTH, ZOOM_BR_HEIGHT); 
  vZoomRectangle(WB_ZOOM_BR, 2, BOARD_COL_WHITE, 1, FILL_COL_WHITE0, 2, 2, (ZOOM_BR_WIDTH -2), (ZOOM_BR_HEIGHT -2)); 	
  
  bMode -= SV_ZOOM_IN_MIN;

  bX += BOARD_WIDTH;
  bY += BOARD_WIDTH;
  
  bNewX =  bX + pbZoomBr[bMode][0];
  //2005 Eden
  //Add the check of width
  if(bNewX > ZOOM_BR_WIDTH)
  {
    bNewX = ZOOM_BR_WIDTH;
  }

  // Modify by Bright_liu 2005/10/05
  bNewY = bY + pbZoomBr[bMode][1];
  if(bNewY > ZOOM_BR_HEIGHT)
  {
    bNewY = ZOOM_BR_HEIGHT;
  }

  // inner rectangle
  vZoomRectangle(WB_ZOOM_BR, 5, BOARD_COL_RED, 1, FILL_COL_WHITE0, bX, bY, bNewX, bNewY); 
	_bZoomTimer = ZOOM_TIMER_CNT;
}
#endif /* PLAYER_ZOOMIN_INDICATOR */

#ifdef DDISC_FTYPE_JPEG_SUPPORT
// *********************************************************************
// Function : void vOsdShowZoomPct(BYTE bPercent)
// Description :
// Parameter :  bState
// Return    : None
// *********************************************************************
void vOsdShowZoomPct(BYTE bPercent) large
{
  BYTE pbStr[4];

  if (bPercent <= 100)
  {
    vOsdPosClear(OSD_POS_ERROR);   // clear "PAN xx" message
  }
    
  if (bPercent == 0)
  {
    vOsdPosClear(OSD_POS_ZOOM_PCT);
  }
  else
  {
    pbStr[0] = 3;

    if (bPercent >= 200)
    {
      pbStr[1] = '2';
      bPercent -= 200;
    }
    else if (bPercent >= 100)
    {
      pbStr[1] = '1';
      bPercent -= 100;
    }
    else
    {
      pbStr[1] = ' ';
    }

    bPercent = bHEXToBCD(bPercent);

    pbStr[2] = BCD_HI(bPercent) + '0';
    pbStr[3] = BCD_LO(bPercent) + '0';

    if ((pbStr[1] == ' ') && (pbStr[2] == '0'))
    {
      pbStr[2] = ' ';
    }

    vOsdPosShowArg(OSD_POS_ZOOM_PCT, OSD_MSG_ZOOM_PERCENT, OSD_NO_DISAPPEAR, pbStr);
  }
}
#endif /* DDISC_FTYPE_JPEG_SUPPORT */

#if (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
// *********************************************************************
// Function : void vOsdShowKeyShift(char cLevel) large
// Description :
// Parameter :  cLevel
// Return    : None
// *********************************************************************
void vOsdShowKeyShift(char cLevel, BYTE bTime) large
{
  BYTE pbKey[4];

  if (cLevel >= MAX_KEY_LEVEL)
  {
    cLevel = MAX_KEY_LEVEL;
  }

  if (cLevel <= MIN_KEY_LEVEL)
  {
    cLevel = MIN_KEY_LEVEL;
  }


  if (cLevel < 0)
  {
    pbKey[1] = '-';
    cLevel = - cLevel;
  }
  else
  {
    pbKey[1] = '+';
  }

  pbKey[0] = bHEXToBCD(cLevel);

  pbKey[2] = BCD_HI(pbKey[0]) + '0';
  pbKey[3] = BCD_LO(pbKey[0]) + '0';

  pbKey[0] = 3;

#ifdef PLAYER_FLMENU
  if (fgFlCheckStatus(FL_STATUS_IN_MENU))
    vFlIpShowInfo(IP_INFO_KEY_SHIFT, cLevel, 0);
  else
#endif
  {
   #ifdef MPEG4_TXT_SP //Vincent @04-04-04
    #ifdef SUPPORT_OGG
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_OGG || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
    #else
        if(fgIsIsoPlay() && (bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_AVI || bSharedInfo(SI_ISO_ITEM_TYPE) == SV_ISO_MPG))
    #endif
     { 
      vOsdPosClear(OSD_POS_LAYER2_LINE4); 
      vOsdPosShowArg(OSD_POS_LAYER2_LINE4, OSD_MSG_SET_KEY, bTime, pbKey);
      }
  else  
    #endif   	
   {
    vOsdPosClear(OSD_POS_AUD_CTRL); 
    vOsdPosShowArg(OSD_POS_AUD_CTRL, OSD_MSG_SET_KEY, bTime, pbKey);
    }
    vOsdCoreSetAudioStatus(OSD_AUDIO_SHOW_NORMAL, bTime);
  }  
}
#endif /* PLAYER_KARAOKE || USE_EXTERNAL_KARAOKE */

#ifdef PLAYER_KARAOKE
 #if defined(KARAOKE_SIMPLE_ECHO)  && !defined(BBK_INTERNAL_KARA)
// *********************************************************************
// Function : void vOsdShowEchoLevel(BYTE bLevel)
// Description :
// Parameter :  cLevel
// Return    : None
// *********************************************************************
void vOsdShowEchoLevel(BYTE bLevel) large
{
  BYTE pbStr[3];
  {
    bLevel = bHEXToBCD(bLevel);

    pbStr[0] = 2;
    pbStr[1] = BCD_HI(bLevel) + '0';
    pbStr[2] = BCD_LO(bLevel) + '0';
  }

  vOsdCoreSetAudioStatus(OSD_AUDIO_SHOW_NORMAL, OSD_NO_DISAPPEAR);
}
  #endif /* KARAOKE_SIMPLE_ECHO */
#endif /* PLAYER_KARAOKE */

#if  defined(INTERNAL_KARA)&&!defined(KARA_IN_SETUP)

static code WORD pwMICTypeMsg[2] = 
{
  /* 01 */       OSD_MSG_ON_MIC,
  /* 00 */       OSD_MSG_OFF_MIC
} ;

//show in the OSD_POS_REMAIN_MSG
//and OSD_POS_PLAY_INFO
extern  code  BYTE  _pbType2ItemCol[];

void vOsdShowMicMenuIni() large
{
  BYTE temp1;

  for(temp1=0; temp1 < WB_INDEX_MAX; temp1++)
     {
       vDisableWB(temp1);
      }

    
  vOsdPosShow(OSD_POS_STOP_MSG2,OSD_MSG_MIC1_ALL11,OSD_NO_DISAPPEAR);
  
  vOsdPosShow(OSD_POS_NORMAL,OSD_MSG_MIC1_ALL21,OSD_NO_DISAPPEAR);
  

  vEnableWB(WB_OVERLAY_MSG1); 	
  vEnableWB(WB_OVERLAY_MSG2); 	
}

void vOsdShowMicLine1(BYTE  bLIdx)  large
{
  if(bLIdx == 1)
  	{
         vSetMsgCol4(WB_OVERLAY_MSG1, 0, 1, 1, 3);//leguo	

⌨️ 快捷键说明

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