/*---------------------------------------------------------------------------------------- 函数名: PlayService 参数: None 返回值: None 描述: 播音服务的主循环,负责按键检测,数据解码并填充缓冲区,电量检测等等 ----------------------------------------------------------------------------------------*/ void PlayService(void) { KEYMSG msg; LedFlashForCam(LED_ON); while(g_nState == PLAY_STATE) { if(KEY_MsgGet(&msg)){ // LOG(("KEY:Value:%d,TYPE:%d,HOLDTIME:%d\r\n",msg.Key_MsgValue,msg.Key_MsgType,msg.Key_HoldTime)); g_bHaveKeyAction = 1; if(msg.Key_MsgValue == KEY_ON_OFF){ if(msg.Key_MsgType == KEY_TYPE_SP){ if(!g_bStopPlay) StopPlayAudio(); else PlayResume(); }else if(msg.Key_MsgType == KEY_TYPE_LP){ g_nState = PWRDOWN_STATE; } }else if(msg.Key_MsgValue == KEY_RECORD){ if(msg.Key_MsgType == KEY_TYPE_LP){ g_nState = RECORD_STATE; }else if(msg.Key_MsgType == KEY_TYPE_SP){ PlayRecord(); } }else if(msg.Key_MsgValue == KEY_MACESR){ if(msg.Key_MsgType == KEY_TYPE_LP){ g_nState = MVREC_STATE; }else if(msg.Key_MsgType == KEY_TYPE_SP){ g_nState = ESR_STATE; } }else if(msg.Key_MsgValue == KEY_TOUCH){ if(msg.Key_MsgType == KEY_TYPE_SP){ ProcessHead(); } } } PlayWork(0,0,0); PlayList(); if(!PlayChange(GetCamCode())){ // cam_init(eDRVPDMA_CHANNEL_3); //笔头初始化参数 } CommonCheck(); } ClearPlayList(); StopPlayAudio(); LedFlashForCam(LED_OFF); }
void Process444Quarter(softidct* p,int x,int y) { ProcessHead(p,x,y); SetPtr444(p,x,y,2); ProcessTail(p,x,y); }
void Process444Half(softidct* p,int x,int y) { ProcessHead(p,x,y); SetPtr444(p,x,y,1); ProcessTail(p,x,y); }