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

📄 mp4playdemo.c

📁 凌阳SPCE3200多媒体开发板自带源程序。共安排了32个子目录
💻 C
字号:
/******************************************************************************
 *
 *     The information contained herein is the exclusive property of
 *   Sunplus Technology Co. And shall not be distributed, reproduced,
 *   or disclosed in whole in part without prior written permission.
 *
 *         (C) COPYRIGHT 2005   SUNPLUS TECHNOLOGY CO.
 *                        ALL RIGHTS RESERVED
 *
 * The entire notice above must be reproduced on all authorized copies.
 *
 *****************************************************************************/

/******************************************************************************
 *  Filename:   	GameMP4.c
 *  Author:     	
 *  Tel:        	
 *  Date:       	
 *  Description:	
 *  Reference:
 *  Version history:
 *-----------------------------------------------------------------------------
 *	Version   YYYY-MM-DD-INDEX   Modified By         Description
 *	1.0.0     
 *
 *****************************************************************************/
#include ".\UserDemo\MP4Demo\MP4PlayDemo\MP4PlayDemo.h"
#include ".\Function\FunctionHeader.h"

extern	int	MP3_Status;

U16 nMP4State;
#define   MP4_Init          0x0000
#define   MP4_Loop          0x0001
#define   MP4_End           0x0002

const LOAD_INFO LoadMP4Info[] =
{
	{".\\001.sp4"				, TEXT1_PGT_ADDR			, O_CREAT | O_RDONLY, MP4_Buffer_Size}
};

extern KEY_FRAME_INFO *pKFAddress;
extern S32	g_nfp1, g_nfp2;
int more = 0;

GAMESTATE BW_PlayMP4(void)
{	
    U32 *pAddr, ulFrameRate, ultemp;
    S32	status; //test
	
    nMP4State = MP4_Init;	
    while(1)
    {
        switch(nMP4State)
        {
            case MP4_Init:
                //InitTimer();
                //status = MP4_Open_File_SDCard(&gl_fp, &LoadMP4Info);
             #ifdef SD_CARD_DEVICE
                  status = MP4_Open_File_SDCard(&g_nfp1, &g_nfp2, &LoadMP4Info);
                  if (status == -1)
                  {
                    while (1);
                  }
             #endif   
             
             #ifdef CDROM_DEVICE
                  status = MP4_Open_File_CD(&g_nfp1, &LoadMP4Info);
                  if (status == -1)
                  {
                    while (1);
                  }
             #endif
                  
                
  #ifdef TEST_FOR_ALIGN
         status = lseek(gl_fp, (5)*4, SEEK_SET);	
         status = read(gl_fp, (void *) pKFOffset1, 100*4);	 
         status = lseek(gl_fp, (5)*4+3, SEEK_SET);	
         status = read(gl_fp, (void *) pKFOffset2, 100*4);	   
  #endif
                nMP4State = MP4_Loop;
                break;			
            case MP4_Loop:
                vidSP4Play(g_nfp1, (U32 *)LoadMP4Info->nLoadAddress);
                
                #ifdef SD_CARD_DEVICE
                MP4_Close_File_SDCard(&g_nfp1);
                MP4_Close_File_SDCard(&g_nfp2);
                #endif
                
                #ifdef CDROM_DEVICE                
                MP4_Close_File_CD(&g_nfp1);
                #endif
                
                nMP4State = MP4_Init;
                more = more+1;
                break;
            case MP4_End:
                SP4_Stop_MP3();
                return BW_INIT;//reload data
                break;			
		    }				
    }
}

⌨️ 快捷键说明

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