sbtvd_app.h 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469
  1. /********************************************************************
  2. ** File Name: system_app_dvb.h
  3. **
  4. ** File Description: The header file of dvb mainmenu gui object
  5. **
  6. ** Copyright(c) 2009 Sunplus Technologies - All Rights Reserved
  7. **
  8. ** History Information Description
  9. ** Date Author Modification
  10. ** 2009/03/13 James Create
  11. ********************************************************************/
  12. #ifndef _SYSTEM_APPLICATION_DVB_H_
  13. #define _SYSTEM_APPLICATION_DVB_H_
  14. /*header file*/
  15. #include "app_guiobj_popmsg.h"
  16. #include "al_fw.h"
  17. /*macro define*/
  18. #define MON_LISTENER_ID_CODE_FINAL 0xFFFF
  19. #ifdef CONFIG_SUPPORT_PVR
  20. #define PVR_BGTIMESHIFT_START_INTERVAL (100) // 10sec
  21. #endif
  22. /*Type definitions*/
  23. typedef enum
  24. {
  25. DVB_APP_POP_MSG_NONE = 0,
  26. DVB_APP_POP_MSG_DATABASE_EMPTY,
  27. DVB_APP_POP_MSG_CHECK_ANTENNA_INPUT,
  28. DVB_APP_POP_MSG_INVALID_INPUT,
  29. DVB_APP_POP_MSG_NOT_AVAILABLE,
  30. DVB_APP_POP_MSG_NO_RADIO,
  31. DVB_APP_POP_MSG_NO_DTVORDATA,
  32. DVB_APP_POP_MSG_CHECKPWD,
  33. DVB_APP_POP_MSG_TEMPSERVICE,
  34. DVB_APP_POP_MSG_NO_SIGNAL,
  35. DVB_APP_POP_MSG_PARENTAL_LOCK,
  36. DVB_APP_POP_MSG_SCRAMBLE,
  37. DVB_APP_POP_MSG_SERVICE_NOT_AVAILABLE,
  38. DVB_APP_POP_MSG_CI_CAM_INIT,
  39. DVB_APP_POP_MSG_CI_CAM_INIT_OK,
  40. #ifndef CONFIG_TV_NEW_UI
  41. DVB_APP_POP_MSG_CI_CAM_ERROR,
  42. #endif
  43. DVB_APP_POP_MSG_CI_CAM_REMOVED,
  44. DVB_APP_POP_MSG_CI_AUTH_PROGRESS,
  45. #ifdef SUPPORT_CICAM_NEW_MESSAGE //When "using external Demod" and "No SwitchIC to separate TS between bypass and through pass mode", then this define need be enable to inform user remove CICAM card
  46. DVB_APP_POP_MSG_CI_INFORM_USER_REMOVE_CAM,
  47. #endif
  48. DVB_APP_POP_MSG_NEW_SERVICE,
  49. DVB_APP_POP_MSG_OTH_TP_NEW_SERVICE,
  50. DVB_APP_POP_MSG_SERVICE_REMOVE,
  51. DVB_APP_POP_MSG_DB_SAVE_IN_PROGRESS,
  52. #ifdef CONFIG_SUPPORT_PVR
  53. DVB_APP_POP_MSG_REC_INIT,
  54. DVB_APP_POP_MSG_REC_ENTER_NOT_VALID,
  55. DVB_APP_POP_MSG_REC_WRITE_ERROR,
  56. DVB_APP_POP_MSG_REC_SPEED_NOT_ENOUGH,
  57. DVB_APP_POP_MSG_REC_START,
  58. DVB_APP_POP_MSG_REC_STOP,
  59. DVB_APP_POP_MSG_REC_STOP_CHANNEL_CHANGE,
  60. DVB_APP_POP_MSG_REC_STOP_FOR_RECALL,
  61. DVB_APP_POP_MSG_REC_STOP_SOURCE_CHANGE,
  62. DVB_APP_POP_MSG_REC_STOP_FOR_USBKEY,
  63. DVB_APP_POP_MSG_REC_STOP_FOR_TVRADIOKEY,
  64. DVB_APP_POP_MSG_TIMESHIFT_INIT,
  65. DVB_APP_POP_MSG_AUTOTIMESHIFT_INIT,
  66. DVB_APP_POP_MSG_TIMESHIFT_ENTER_NOT_VALID,
  67. DVB_APP_POP_MSG_TIMESHIFT_SPEED_NOT_ENOUGH,
  68. DVB_APP_POP_MSG_TIMESHIFT_START,
  69. DVB_APP_POP_MSG_TIMESHIFT_STOP,
  70. DVB_APP_POP_MSG_TIMESHIFT_STOP_CHANNEL_CHANGE,
  71. DVB_APP_POP_MSG_TIMESHIFT_STOP_FOR_RECALL,
  72. DVB_APP_POP_MSG_TIMESHIFT_STOP_SOURCE_CHANGE,
  73. DVB_APP_POP_MSG_TIMESHIFT_STOP_FOR_USBKEY,
  74. DVB_APP_POP_MSG_TIMESHIFT_STOP_FOR_TVRADIOKEY,
  75. DVB_APP_POP_MSG_PVR_DISK_CHECKING,
  76. DVB_APP_POP_MSG_PVR_DISK_FULL,
  77. DVB_APP_POP_MSG_PVR_NO_STORAGE,
  78. DVB_APP_POP_MSG_PVR_TIMERLIST_DELETE_ONE,
  79. DVB_APP_POP_MSG_PVR_REMIDER,
  80. DVB_APP_POP_MSG_PVR_REMIDER_CONFIRM,
  81. DVB_APP_POP_MSG_PVR_ASKFORSTANDBY,
  82. DVB_APP_POP_MSG_PVR_TIMESHIFT_STANDBY,
  83. DVB_APP_POP_MSG_REC_NTFS_DIRTY,
  84. DVB_APP_POP_MSG_REC_SCRAMBLE_CHANNEL,
  85. DVB_APP_POP_MSG_REC_REQUIRE_FORMAT,
  86. DVB_APP_POP_MSG_REC_PARTITION_NOT_SET,
  87. DVB_APP_POP_MSG_STOP_MHEG_FOR_REC,
  88. DVB_APP_POP_MSG_STOP_MHEG_FOR_TIMESHIFT,
  89. DVB_APP_POP_MSG_STOP_REC_FOR_MHEG,
  90. DVB_APP_POP_MSG_STOP_TIMESHIFT_FOR_MHEG,
  91. DVB_APP_POP_MSG_PVR_SYSTEM_TIME_CHANGED,
  92. DVB_APP_POP_MSG_PVR_PARTITION_SET_SUCCESSFUL,
  93. DVB_APP_POP_MSG_PVR_ENABLE,
  94. DVB_APP_POP_MSG_PVR_DISABLE,
  95. DVB_APP_POP_MSG_STOP_TSHIFT_TO_REC,
  96. DVB_APP_POP_MSG_STOP_REC_FOR_REMINDER,
  97. DVB_APP_POP_MSG_STOP_TSHIFT_FOR_REMINDER,
  98. DVB_APP_POP_MSG_STOP_REC_FOR_TIMER_REC,
  99. DVB_APP_POP_MSG_STOP_TSHIFT_FOR_TIMER_REC,
  100. DVB_APP_POP_MSG_TIMER_OUT_OF_DATE,
  101. DVB_APP_POP_MSG_INSERT_USB,
  102. DVB_APP_POP_MSG_INSERT_USB_CONFIRM,
  103. DVB_APP_POP_MSG_INVALID_USB,
  104. DVB_APP_POP_MSG_INVALID_USB_CONFIRM,
  105. #endif
  106. DVB_APP_POP_MSG_VIDEO_NOT_SUPPORT,
  107. DVB_APP_POP_MSG_CHANNEL_DELETED,
  108. DVB_APP_POP_MSG_FOUNDDEVICE,
  109. DVB_APP_POP_MSG_KEYLOCK,
  110. DVB_APP_POP_MSG_OVERMAXVOLUME,
  111. #ifdef SUPPORT_CONAX_CAS
  112. DVB_APP_POP_MSG_NO_CARD_INSERTERD,
  113. DVB_APP_POP_MSG_INCORRECT_CONAX_CARD,
  114. DVB_APP_POP_MSG_INCORRECT_CARD,
  115. DVB_APP_POP_MSG_CARD_PROBIEM_CHEAKCAED,
  116. DVB_APP_POP_MSG_NO_ACCESS,
  117. DVB_APP_POP_MSG_NO_ACCESS_GEOGRAPHICAL_BLACKOUT,
  118. DVB_APP_POP_MSG_NO_ACCESS_NETWORK_BLOCK,
  119. #endif
  120. DVB_APP_POP_MSG_RADIO_CHANNEL,
  121. DVB_APP_POP_MSG_EPG_ENABLE,
  122. DVB_APP_POP_MSG_EPG_DISABLE,
  123. #ifdef CONFIG_SUPPORT_MHEG5
  124. DVB_APP_POP_MSG_STOP_SUBTITLE_TO_OPEN_MHEG5,
  125. #endif
  126. #ifdef N32_GAME_SUPPORT
  127. DVB_APP_POP_MSG_IMPORTING_GAME,
  128. DVB_APP_POP_MSG_NO_SIZE_FOR_GAME,
  129. #endif
  130. DVB_APP_POP_MSG_UPDATE_TSID,
  131. DVB_APP_POP_MSG_CIPLUSE_UPGRADE_SUCC,
  132. DVB_APP_POP_MSG_CIPLUSE_UPGRADE_FAILE,
  133. DVB_APP_POP_MSG_HDCP_UPGRADE_SUCC,
  134. DVB_APP_POP_MSG_HDCP_UPGRADE_FAILE,
  135. DVB_APP_POP_MSG_CI_PASS_HDCP_PASS,
  136. DVB_APP_POP_MSG_CI_PASS_HDCP_FAIL,
  137. DVB_APP_POP_MSG_CI_FAIL_HDCP_PASS,
  138. DVB_APP_POP_MSG_CI_FAIL_HDCP_FAIL,
  139. } DVB_DVBAppPopMsgType_t;
  140. typedef enum
  141. {
  142. PROG_STATUS_SCRAMBLE_CLEAR = 0,
  143. PROG_STATUS_AUDIO_VIDEO_SCRAMBLED,
  144. PROG_STATUS_ONLY_VIDEO_SCRAMBLED,
  145. PROG_STATUS_ONLY_AUDIO_SCRAMBLED,
  146. PROG_STATUS_SCRAMBLE_UNKNOW
  147. } Prog_ScrambleStatus_t;
  148. /*Extern Global Functions*/
  149. /*****************************************************************************
  150. ** FUNCTION : DVBApp_CheckProgramType
  151. **
  152. ** DESCRIPTION :
  153. ** Check program lock or temp sevice or vedio mpeg4 and so on
  154. **
  155. ** PARAMETERS :
  156. ** bInit - program state dispose
  157. **
  158. ** RETURN VALUES:
  159. ** SP_ERR_FAILURE - can not playback
  160. ** SP_SUCCESS - playback
  161. *****************************************************************************/
  162. INT32 DVBApp_CheckProgramType(Boolean bPopFlag);
  163. /*****************************************************************************
  164. ** FUNCTION : DVBApp_IsPopupExist
  165. **
  166. ** DESCRIPTION :
  167. ** Judge one pop up exist
  168. **
  169. ** PARAMETERS :
  170. ** u32TargetPopup - pop up type
  171. **
  172. ** RETURN VALUES:
  173. ** None
  174. *****************************************************************************/
  175. UINT8 DVBApp_IsPopupExist(UINT32 u32TargetPopup);
  176. /*****************************************************************************
  177. ** FUNCTION : DVBApp_SchedulePopup
  178. **
  179. ** DESCRIPTION :
  180. ** Schedule dvb popmsg
  181. **
  182. ** PARAMETERS :
  183. ** Popup - popmsg type
  184. **
  185. ** RETURN VALUES:
  186. ** None
  187. *****************************************************************************/
  188. INT32 DVBApp_SchedulePopup(PopmsgParam_t Popup);
  189. /*****************************************************************************
  190. ** FUNCTION : DVBApp_ClosePopup
  191. **
  192. ** DESCRIPTION :
  193. ** Close dvb popmsg
  194. **
  195. ** PARAMETERS :
  196. ** u32ClosePopup - popmsg type
  197. ** dMessage - send message type when close popmsg
  198. **
  199. ** RETURN VALUES:
  200. ** None
  201. *****************************************************************************/
  202. INT32 DVBApp_ClosePopup(UINT32 u32ClosePopup,UINT32 dMessage);
  203. /*****************************************************************************
  204. ** FUNCTION : DVBApp_ResetPopup_Channel
  205. **
  206. ** DESCRIPTION :
  207. ** Reset all popup state
  208. **
  209. ** PARAMETERS :
  210. ** None
  211. **
  212. ** RETURN VALUES:
  213. ** None
  214. *****************************************************************************/
  215. INT32 DVBApp_ResetPopup_Channel(void);
  216. /*****************************************************************************
  217. ** FUNCTION : DVBApp_HideMsgPopupDisplay
  218. **
  219. ** DESCRIPTION :
  220. ** Hide popup display
  221. **
  222. ** PARAMETERS :
  223. ** None
  224. **
  225. ** RETURN VALUES:
  226. ** None
  227. *****************************************************************************/
  228. INT32 DVBApp_HideMsgPopupDisplay(void);
  229. /*****************************************************************************
  230. ** FUNCTION : DVBApp_WkTimer_SetGuiObjects
  231. **
  232. ** DESCRIPTION :
  233. **
  234. **
  235. ** PARAMETERS :
  236. ** dMessage -
  237. ** pValue -
  238. **
  239. ** RETURN VALUES:
  240. ** None
  241. *****************************************************************************/
  242. INT32 DVBApp_WkTimer_SetGuiObjects(UINT32 dMessage, void *pValue);
  243. /*****************************************************************************
  244. ** FUNCTION : DVBApp_RestoreOnStandby
  245. **
  246. ** DESCRIPTION :
  247. ** dvb restore when standby
  248. **
  249. ** PARAMETERS :
  250. ** None
  251. **
  252. ** RETURN VALUES:
  253. ** None
  254. *****************************************************************************/
  255. void DVBApp_RestoreOnStandby(void);
  256. /*****************************************************************************
  257. ** FUNCTION : DVBApp_DataApplicationSwitch
  258. **
  259. ** DESCRIPTION :
  260. ** OSD layer 2 switch
  261. **
  262. ** PARAMETERS :
  263. ** u32flag - switch flag
  264. **
  265. ** RETURN VALUES:
  266. ** None
  267. *****************************************************************************/
  268. INT32 DVBApp_DataApplicationSwitch(UINT32 u32flag);
  269. /*****************************************************************************
  270. ** FUNCTION : DVBApp_ClearStatus
  271. **
  272. ** DESCRIPTION :
  273. ** clear flag status when change source
  274. **
  275. ** PARAMETERS :
  276. ** None
  277. **
  278. ** RETURN VALUES:
  279. ** None
  280. *****************************************************************************/
  281. void DVBApp_ClearStatus(void);
  282. /*****************************************************************************
  283. ** FUNCTION : DVBApp_NoSignal_TimerReset
  284. **
  285. ** DESCRIPTION :
  286. **
  287. **
  288. ** PARAMETERS :
  289. **
  290. ** RETURN VALUES:
  291. **
  292. *****************************************************************************/
  293. void DVBApp_NoSignal_TimerReset(void);
  294. void DVBApp_NoSignal_StandbyTimerReset(void);
  295. /*****************************************************************************
  296. ** FUNCTION : DVBApp_GetScrambleStatus
  297. **
  298. ** DESCRIPTION :
  299. ** clear flag status when change source
  300. **
  301. ** PARAMETERS :
  302. ** None
  303. **
  304. ** RETURN VALUES:
  305. ** None
  306. *****************************************************************************/
  307. Boolean DVBApp_GetScrambleStatus(void);
  308. #ifdef CONFIG_SUPPORT_OTA_UPGRADE
  309. /*****************************************************************************
  310. ** FUNCTION : DVBApp_GetOTAStatus
  311. **
  312. ** DESCRIPTION :
  313. ** clear flag status when cancel or finish OTA upgrade
  314. **
  315. ** PARAMETERS :
  316. ** None
  317. **
  318. ** RETURN VALUES:
  319. ** None
  320. *****************************************************************************/
  321. Boolean DVBApp_GetOTAStatus(void);
  322. /*****************************************************************************
  323. ** FUNCTION : DVBApp_SetOTAStatus
  324. **
  325. ** DESCRIPTION :
  326. ** set flag status
  327. **
  328. ** PARAMETERS :
  329. ** None
  330. **
  331. ** RETURN VALUES:
  332. ** None
  333. *****************************************************************************/
  334. void DVBApp_SetOTAStatus(Boolean b_flag);
  335. #endif
  336. /*****************************************************************************
  337. ** FUNCTION : DVBApp_GetScrambleAttrib
  338. **
  339. ** DESCRIPTION :
  340. ** get current program scramnle attrib
  341. **
  342. ** PARAMETERS :
  343. ** none
  344. **
  345. ** RETURN VALUES:
  346. ** TRUE - SCRAMBLE ATTRIB
  347. ** FALSE - UN SCRAMBLE ATTRIB
  348. *****************************************************************************/
  349. Boolean DVBApp_GetScrambleAttrib(void);
  350. /*****************************************************************************
  351. ** FUNCTION : DVBApp_CheckServiceNotAvailable
  352. **
  353. ** DESCRIPTION :
  354. ** Check current program state is not available or not
  355. **
  356. ** PARAMETERS :
  357. ** none
  358. **
  359. ** RETURN VALUES:
  360. ** TRUE - service not available
  361. ** FALSE - not service not available
  362. *****************************************************************************/
  363. Boolean DVBApp_CheckServiceNotAvailable(void);
  364. UINT8 APP_GetPlaybackPauseState(void);
  365. void APP_SetPlaybackPauseState(UINT8 state);
  366. UINT8 APP_GetPlaybackVideoState(void);
  367. void DVBApp_RemoveUnstableService(void);
  368. void DVBApp_ResetDvbSpecRule(UINT8 u8Area);
  369. #ifdef CONFIG_SUPPORT_PVR
  370. void DVBAPP_Pvr_fileplay_Setflag(Boolean flag);
  371. void DVBApp_SetBGTimeshift(UINT8 u8StartInterval);
  372. INT32 DVBApp_StopTimeshift(Boolean bIsStopRec);
  373. INT32 DVBApp_StopRecord(void);
  374. UINT32 DVBAPP_Pvr_GetStopTimer_id(void);
  375. void DVBApp_Pvr_SetStopTimer_id(void);
  376. void DVBApp_SetPVRSwitchSRC(Boolean Switch);
  377. UINT32 DVBApp_GetTimerRECStartTime(void);
  378. UINT32 DVBApp_GetReminderTime2Show(void);
  379. UINT32 DVBApp_PVRRec_SetTimerCancle(void);
  380. void DVBApp_SetRemType(AL_PR_type_t remtype);
  381. AL_PR_type_t DVBApp_GetRemType(void);
  382. AL_RecHandle_t DVBApp_GetSCHProgHandle(void);
  383. Boolean DVBApp_GetTVRadioSwap(void);
  384. void DVBApp_PVRDEMUX_SetTimerRECFLag(Boolean bFlag);
  385. #endif
  386. #ifdef CONFIG_SUPPORT_SSU_UPGRADE
  387. typedef enum AU_Timer_state
  388. {
  389. AU_GetTime =1,/*system setting have time(ssu's schedule time - Current time).*/
  390. AU_TimeCom, /*ssu's schedule time is coming*/
  391. AU_GoToUpgrade,/* go to upgrade*/
  392. AU_MAX,
  393. }AU_Timer_state_e;
  394. /* True: yes, we need auto upgrade. False: Sorry, we don't need now.*/
  395. void DVBApp_SetAutoUpgrade(Boolean state);
  396. /* you can check whether auto upgrade or not.*/
  397. Boolean DVBApp_IsAutoUpgrade(void);
  398. /*AU: auto upgrade*/
  399. void DVBApp_SetAU_Sate(AU_Timer_state_e state);
  400. #endif
  401. #ifdef SUPPORT_DYNAMIC_MULTIPLEXES
  402. UINT8 DVBApp_IsUserConfimed_SrvList(void);
  403. #endif
  404. Boolean DVBApp_GetForceProcessEventState(void);
  405. /*****************************************************************************
  406. ** FUNCTION : DVBApp_fw_callback
  407. **
  408. ** DESCRIPTION :
  409. **
  410. **
  411. ** PARAMETERS :
  412. ** None
  413. **
  414. ** RETURN VALUES:
  415. ** None
  416. *****************************************************************************/
  417. INT32 DVBApp_fw_callback(AFW_event_t event, void *param);
  418. void DVBApp_VolumeKeyHandler(UINT32 dMessage, UINT8 IsCECKey);
  419. #ifdef CONFIG_DVB_SYSTEM_DVBS_SUPPORT
  420. void DVBApp_LoadCustomerDB(AL_DB_EDBType_t eDBType);
  421. void DVBApp_LoaddefaultDB(AL_DB_EDBType_t eDBType);
  422. void DVBApp_RemoveAllService(AL_DB_EDBType_t eDBType);
  423. #endif
  424. void DVBApp_CheckSrvType(al_uint8 SdtSrvType, al_uint8 SrvType, al_uint8 VideoCount, al_uint8 AudioCount, AL_DB_ERecordType_t *RetSrvType);
  425. void DVBApp_CheckNotVisibleBySrvType(al_uint8 SdtSrvType, al_uint8 bTempSrv, al_uint8 *bNotVisible, al_uint8 *bNotNeedSave);
  426. INT32 _DVBApp_DataApplicationStatus(UINT32 u32module);
  427. void DVBApp_SetBootAutoUpGrade(Boolean flag);
  428. Boolean DVBApp_IsBootUpGrade(void);
  429. Boolean DVBApp_GetUnstableState(void);
  430. void DVBApp_SetUnstableState(Boolean bstate);
  431. #if defined(CONFIG_CIPLUS_SUPPORT) && defined(CONFIG_SUPPORT_MHEG5)
  432. void DVBApp_ApplyAppMMIDisplay(void);
  433. #endif
  434. #ifdef CONFIG_SUPPORT_EWS
  435. al_uint8 DVBApp_GetEWSMode(void);
  436. void DVBApp_ResetEWS(void);
  437. #endif
  438. #endif
  439. Boolean DVBApp_CheckHasVideo(void);