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

📄 playback.c

📁 dz3000_51.0.0.4.rar
💻 C
📖 第 1 页 / 共 5 页
字号:
               //#endif
          }
     }

     if (fileExist)
     {
          G_playObject.mediaType = mediaType;
          //G_playObject.FileIDRank = ID;
          G_playObject.FileIndex = FileIndex;
          //printf("file index = %d\n",FileIndex);
          //printf("mediaType = %bd\n",mediaType);
          return TRUE;
     }
     else
     {
          return FALSE;
     }
}
//=============================================================================
//void CopyAudioIcon(UCHAR scaling)
//=============================================================================
void CopyAudioIcon(UCHAR scaling)
{
	//patch4.2@yichang@0520 for changing image playback buffer address
	if(scaling)
	{
	      L2_SetBFBSize(G_DSPHsize,G_DSPVsize);
          L2_SetDisplaySrcImgSize(G_DSPHsize,G_DSPVsize,G_DisplayType);

		  //patch5.0@richie@sdram mapping begin
          L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 0, 30, 100, 72, K_SDRAM_ImagePlaybackBufAddr, 100, 72, 0, 0);
          L2_ScaleUpImage(K_SDRAM_ImagePlaybackBufAddr, 100, 72, K_SDRAM_ImagePlaybackDisplayBufAddr, G_DSPHsize, G_DSPVsize, K_SDRAM_ImagePlaybackGeneralBufAddr);
          L2_SetBFBAddr(K_SDRAM_ImagePlaybackDisplayBufAddr);
          //L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 0, 30, 100, 72, K_SDRAM_FrameBufAAddr, 100, 72, 0, 0);
          //L2_ScaleUpImage(K_SDRAM_FrameBufAAddr, 100, 72, K_SDRAM_DisplayBufAAddr, G_DSPHsize, G_DSPVsize, K_SDRAM_PlaybackImageBufAddr);
          //L2_SetBFBAddr(K_SDRAM_DisplayBufAAddr);
		  //patch5.0@richie@sdram mapping end
	}
	else
	{
	//patch4.2@yichang@0520 for changing image playback buffer address
		  //patch5.0@richie@sdram mapping begin
	      if(G_TmbWidth == 72)
          {
               L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 0,205, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          }
          else
          {
               L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 0, 205, 72, 48, K_SDRAM_ImagePlaybackBufAddr, 72, 48, 0, 0);

               if((G_TmbWidth > 72) && (G_TmbHeight > 48) )
               {
                    L2_ScaleUpImage(K_SDRAM_ImagePlaybackBufAddr, 72, 48, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackGeneralBufAddr);
               }
               else
               {
                    L2_ScaleDownImage(K_SDRAM_ImagePlaybackBufAddr, 72, 48, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackGeneralBufAddr);
               }

                //L2_CopyImage(K_SDRAM_FrameBufBAddr, G_TmbWidth , G_TmbHeight, 0,0, G_TmbWidth , G_TmbHeight, K_SDRAM_FrameBufAAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          }

		  //patch5.0@richie@sdram mapping end
}
}
//=============================================================================
//void CopyVidioIcon(UCHAR scaling)
//=============================================================================
void CopyVideoIcon(void)

{
		  //patch5.0@richie@sdram mapping begin
	      if(G_TmbWidth == 72)
          {
               L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 100,30, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          }
          else
          {
               L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 100, 30, 72, 48, K_SDRAM_ImagePlaybackBufAddr, 72, 48, 0, 0);

               if((G_TmbWidth > 72) && (G_TmbHeight > 48) )
               {
                    L2_ScaleUpImage(K_SDRAM_ImagePlaybackBufAddr, 72, 48, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackGeneralBufAddr);
               }
               else
               {
                    L2_ScaleDownImage(K_SDRAM_ImagePlaybackBufAddr, 72, 48, K_SDRAM_ImagePlaybackBufAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_ImagePlaybackGeneralBufAddr);
               }

                //L2_CopyImage(K_SDRAM_FrameBufBAddr, G_TmbWidth , G_TmbHeight, 0,0, G_TmbWidth , G_TmbHeight, K_SDRAM_FrameBufAAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          }
	      //if(G_TmbWidth == 72)
          //{
          //     L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 100,30, G_TmbWidth , G_TmbHeight, K_SDRAM_FrameBufAAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          //}
          //else
          //{
          //     L2_CopyImage(K_SDRAM_GrafFontBufAddr, K_GRAFFONT_Width, K_GRAFFONT_Height, 100, 30, 72, 48, K_SDRAM_FrameBufAAddr, 72, 48, 0, 0);

          //     if((G_TmbWidth > 72) && (G_TmbHeight > 48) )
          //     {
          //          L2_ScaleUpImage(K_SDRAM_FrameBufAAddr, 72, 48, K_SDRAM_FrameBufAAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_PlaybackImageBufAddr);
          //     }
          //     else
          //     {
          //          L2_ScaleDownImage(K_SDRAM_FrameBufAAddr, 72, 48, K_SDRAM_FrameBufAAddr, G_TmbWidth , G_TmbHeight, K_SDRAM_PlaybackImageBufAddr);
          //     }

          //      //L2_CopyImage(K_SDRAM_FrameBufBAddr, G_TmbWidth , G_TmbHeight, 0,0, G_TmbWidth , G_TmbHeight, K_SDRAM_FrameBufAAddr, G_TmbWidth, G_TmbHeight, 0, 0);
          //}
		  //patch5.0@richie@sdram mapping end
	}

//=============================================================================
//PlaybackOne
//=============================================================================
 //patch3.2@ada@0401 For Multi-Frame Play Back
//version4.0@ada@0513 for Play Back
UCHAR PlaybackOne(UCHAR pageChange) USING_0
{
     UCHAR i;
     USHORT startCluster;
     BYTE name[12];
     BYTE date[20];
     UCHAR sts;
     UCHAR FileType;

     //version4.0@ada@0513 for Multi-Directory
     #if (SINGLE_DIRECTORY == 0)
     USHORT TempCountIndex;
     USHORT TempCount;
     #endif

     UCHAR tmp1,tmp2;
     UCHAR dspOff;
     //patch4.2@yichang@0517 for rotation function
     ULONG tmp;
     USHORT tmpWidth;
     //patch4.2@yichang@0520 for recording image width/height
     USHORT ImgWidth, ImgHeight;

     //patch4.4@yichang@0624 for OSD, begin
     UCHAR FOSD_H_num, FOSD_V_num;
     //patch4.4@yichang@0624 for OSD, end

	 //patch4.5@ada@Record DCF file name begin
     USHORT TempFileIndex;
	 UCHAR ch;
	 //patch4.5@ada@Record DCF file name end
     //Joe@2003.2.27 10:21 modify begin
     /*if(G_DisplayType <= 7) //TV
     {
          FOSD_H_num = (K_DISPLAY_StnLcdWidth/16)+5;
          FOSD_V_num = (K_DISPLAY_StnLcdHeight/32);
     }
     else
     {
          FOSD_H_num = (G_DSPHsize/16);
          FOSD_V_num = (G_DSPVsize/32);
     }
     */
     UI_GetFOSDSize(&FOSD_H_num, &FOSD_V_num);
     //Joe@2003.2.27 10:21 modify end

     dspOff = 0;

     //patch5.04@Joe@2003.5.14 13:40 mask begin
     /*
     if(G_playObject.mediaType == K_PLAYBACK_TYPE_AVI)
     {
	 	  //patch4.5.2@ada@Fix display bug when switch back from play back AVI begin
          //if(G_UIAction == K_UI_ACTION_PLAYONE_MOVE)
	 	  //patch4.5.2@ada@Fix display bug when switch back from play back AVI end
     	  {
               L2_SetDisplayType(G_DisplayType);
               L2_SetDisplaySrcImgSize(G_DSPHsize, G_DSPVsize, G_DisplayType);
               L2_SetAFBSize(G_DSPHsize,G_DSPVsize);
	           L2_SetBFBSize(G_DSPHsize,G_DSPVsize);

			   //patch5.0@richie@sdram mapping begin
               L2_SetBFBAddr(K_SDRAM_ImagePlaybackDisplayBufAddr); //yichang@0510
               //L2_SetBFBAddr(K_SDRAM_DisplayBufAAddr); //yichang@0510
			   //patch5.0@richie@sdram mapping end

               //L2_TurnOnOffDisplay(0);    //AVI_DEBUG	//dlchiou - 2002-12-11 11:32
               //dspOff = 1;				//AVI_DEBUG	//dlchiou - 2002-12-11 11:32
          }

     }
     */
     //patch5.04@Joe@2003.5.14 13:40 mask end

     //patch4.3@yichang@0612 for zoom/pan

     //patch5.04@Joe@2003.5.13 20:35 mask begin
     //UI_PrintOSDString("   ", 1, 0,  0x00);
     //patch5.04@Joe@2003.5.13 20:35 mask end

     G_PanXoffset = 0;
     G_PanYoffset = 0;

     if(G_PBZFactor != 10)
     {
          PlaybackZoom(10);
     }

     //patch4.3@yichang@0611 for version B/C chip co-exist
     tmp1 = MemStretch;
     MemStretch = 0x01;
     //Turn off select window
     XBYTE[0x2D18] = 0x00;
     MemStretch = tmp1;

     switch(pageChange)
     {
          case K_PageInitialize:
               //printf("K_PageInitialize\n");
               G_NowPlayFileIndex = Play9_NowFileIndexBuf[G_SelCell];
               break;

          case K_PageKeepSame:
               //printf("Initialize this page\n");
               G_NowPlayFileIndex = Play9_NowFileIndexBuf[G_SelCell];
               break;

          case K_PageRefresh:
               //printf("Refresh this page\n");
               if (G_SelCell == 8)
               {
                    if (G_USR_FileCount >= 9)
                    {
                         Playback_GetMediaInfo(Play9_NowFileIndexBuf[7]);
                         Play9_NowFileIndexBuf[8] = G_USR_SearchNextFileIndex;

                         //patch4.1@ada@0515 for Play Back
                         if (Play9_NowFileIndexBuf[8] == 0)
                         {
                              G_SelCell--;
                         }
                    }
                    else
                    {
                         Play9_NowFileIndexBuf[8] = 0;
                         G_SelCell--;
                    }
               }
               else //G_SelCell < 8
               {
                    if (Play9_NowFileIndexBuf[G_SelCell + 1] > 0)
                    {
                         for (i = G_SelCell; i < 8; i++)
                         {
                              Play9_NowFileIndexBuf[i] = Play9_NowFileIndexBuf[i + 1];
                         }

                         if (Play9_NowFileIndexBuf[7] > 0)
                         {
                              Playback_GetMediaInfo(Play9_NowFileIndexBuf[7]);
                              Play9_NowFileIndexBuf[8] = G_USR_SearchNextFileIndex;
                         }
                         else
                         {
                              Play9_NowFileIndexBuf[8] = 0;
                         }
                    }
                    else
                    {
                         if (G_SelCell > 0)
                         {
                              G_SelCell--;

                              Play9_NowFileIndexBuf[G_SelCell] = G_USR_LastFileIndex;

                              for (i = G_SelCell + 1; i < 9; i++)
                              {
                                   Play9_NowFileIndexBuf[i] = 0;
                              }
                         }
                         else
                         {
                              Play9_NowFileIndexBuf[G_SelCell] = G_USR_LastFileIndex;

                              for (i = G_SelCell; i < 9; i++)
                              {
                                   Play9_NowFileIndexBuf[i] = 0;
                              }
                         }
                    }
               }

               G_NowPlayFileIndex = Play9_NowFileIndexBuf[G_SelCell];
               break;

          case K_PageForward:
               //printf("Change to next page\n");
               Playback_GetMediaInfo(Play9_NowFileIndexBuf[8]);
               G_USR_SearchNowFileIndex = G_USR_SearchNextFileIndex;

               if (G_USR_SearchNowFileIndex > 0)
               {
                    for (i = 0; i < 9; i++)
                    {
                         Play9_NowFileIndexBuf[i] = 0;
                    }

                    for (i = 0; i < 9 ; i++)
                    {
                         Play9_NowFileIndexBuf[i] = G_USR_SearchNowFileIndex;
                         Playback_GetMediaInfo(G_USR_SearchNowFileIndex);

                         if (G_USR_SearchNextFileIndex > 0)
                         {
                              G_USR_SearchNowFileIndex = G_USR_SearchNextFileIndex;
                         }
                         else //File stops here
                         {
                              //printf("File stops here\n");
                              break;
                         }
                    }

                    G_NowPlayFileIndex = Play9_NowFileIndexBuf[G_SelCell];
                    G_PlayBackPageCount++;
               }

               break;

          case K_PageBackward:
               Playback_GetMediaInfo(Play9_NowFileIndexBuf[0]);
               G_USR_SearchNowFileIndex = G_USR_SearchPreFileIndex;

               if (G_USR_SearchNowFileIndex > 0)
               {
                    for (i = 0; i < 9; i++)
                    {
                         Play9_NowFileIndexBuf[i] = 0;
                    }

                    for (i = 8; i >= 0; i--)
                    {

⌨️ 快捷键说明

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