123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884 |
- /*! \addtogroup playback
- * @{
- */
- /******************************************************************************/
- /**
- *
- * \file mid_playback.h
- *
- * \brief middle-ware of digital TV playback.
- *
- * \note Copyright (c) 2008 Sunplus Technology Co., Ltd. \n
- * All rights reserved.
- *
- * \author EMI
- */
- /******************************************************************************/
- #ifndef _MID_PLAYBACK_H_
- #define _MID_PLAYBACK_H_
- #include "types.h"
- //#include "config_sys.h"
- #include "cdbi.h"
- #include "mid_common.h"
- #ifdef CONFIG_DVB_SYSTEM_DVBS_SUPPORT
- #include "middleware/dtv/dtvdvbs/mid_sat_antenna.h"
- #endif
- /******************************************************************************/
- /**
- * \brief Playback Programe State
- */
- typedef enum _mid_playback_prog_state
- {
- MID_PLAYBK_PROG_STATE_NORMAL = 0, /*!< \brief program state is NORMAL */
- MID_PLAYBK_PROG_STATE_AUDIO_VIDEO_SCRAMBLED, /*!< \brief program state is SCRAMBLED */
- MID_PLAYBK_PROG_STATE_ONLY_VIDEO_SCRAMBLED, /*!< \brief program state is SCRAMBLED */
- MID_PLAYBK_PROG_STATE_ONLY_AUDIO_SCRAMBLED, /*!< \brief program state is SCRAMBLED */
- MID_PLAYBK_PROG_STATE_LOCKED, /*!< \brief program state is LOCKED */
- MID_PLAYBK_PROG_STATE_TEMP_SERVICE, /*!< \brief program state is TEMP SERVICE */
- MID_PLAYBK_PROG_STATE_VIDEO_AVC, /*!< \brief program state is VIDEO AVC */
- MID_PLAYBK_PROG_STATE_VIDEO_MPEG4, /*!< \brief program state is VIDEO MPEG4 */
- MID_PLAYBK_PROG_STATE_NOT_RUNNING, /*!< \brief program state is service not running */
- MID_PLAYBK_PROG_STATE_REPLACE, /*!< \brief program state is replace service */
- }MID_PlaybackProgState_t; /*!<program status */
- /**
- * \brief Playback Change Pid
- */
- typedef enum _mid_playback_change_pid
- {
- MID_PLAYBK_CHANGE_VIDPID = 0, /*!< \brief change video PID */
- MID_PLAYBK_CHANGE_AUDPID, /*!< \brief change audio PID */
- MID_PLAYBK_CHANGE_SECAUDPID, /*!< \brief change second audio PID */ // ifdef SUPPORT_DUAL_DSP
- MID_PLAYBK_CHANGE_PCRPID, /*!< \brief change PCR PID */
- }MID_PlaybackChangePid_t; /*!<program pid change */
- /**
- * \brief Playback Elementary Stream Info Structure
- */
- typedef struct _mid_playback_elementary_stream_info
- {
- UINT8 bHasData; /*!< \brief If elementary stream has data */
- UINT8 bIsScrambled; /*!< \brief If elementary stream scrambled */
- // for video attribute +
- UINT8 bIsMpeg2; /*!< \brief is mpeg2 video? */
- UINT8 bIsDecoded; /*!< \brief has video frame decoded? */
- UINT16 usWidth; /*!< \brief width*/
- UINT16 usHeight; /*!< \brief height*/
- UINT32 dFrameRate; /*!< \brief frame-rate, defined in viddec.h MPEG_FRAME_RATE_2997, MPEG_FRAME_RATE_XXX....*/
- UINT8 ucAspectRatio; /*!< \brief aspect ratio of video frame*/
- UINT8 ucAfd; /*!< \brief active format*/
- // -
- UINT8 copyright; /*!< \brief PES copyright flag*/
- //add arthur_20110809
- UINT8 ucProgressive; /*!< \brief Video Progressive Sequence*/
- //arthur end
- }MID_PlaybackStreamInfo_t; /*!< stream information for playback*/
- /******************************************************************************/
- /*! \defgroup playback_Initialize Initialize
- * \brief Init and Uninit playback
- * @{ */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackInit(void)
- *
- * \param none.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * Initialization presentation engine for playback module using.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackInit(void);
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackUninit(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description: \n
- * Uninit presentation engine.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- void MID_PlaybackUninit(void);
- /******************************************************************************/
- /*! @} end of defgroup Initialize */
- /******************************************************************************/
- /*! \defgroup playback_Operation Operation
- * \brief operation ( e.g. play, pause, stop ) functions
- * @{ */
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackConnectTp(CDBIHandle_t hTPHandle)
- *
- * \param hTPHandle: CDBIHandle_t of TP
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description:
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_PlaybackConnectTp(CDBIHandle_t hTPHandle, CDBIHandle_t hSrvHandle);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackPlay(CDBIHandle_t hProgramHandle, MID_PlaybackProgState_t ePlayProgState)
- *
- * \param hProgramHandle: CDBIHandle_t of program
- * \param ePlayProgState : the state of the program wanted to playback
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * 1.Get NIM parameter from data base by CDBIHandle_t from application. \n
- * 2.Set all NIM parameter to NIM drivers. \n
- * 3.Get program detials information from data base by CDBIHandle_t from application. \n
- * 4.Set program parameter to demux and A/V drivers.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- #ifdef CONFIG_SUPPORT_BISS
- MID_Status_t MID_PlaybackPlay(CDBIHandle_t hProgramHandle, MID_PlaybackProgState_t ePlayProgState, UINT64 bBissKey);
- #else
- MID_Status_t MID_PlaybackPlay(CDBIHandle_t hProgramHandle, MID_PlaybackProgState_t ePlayProgState);
- #endif
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStopEx(int bFifoStop, CDBIHandle_t hNextProg)
- *
- * \param bFifoStop if need to stop demux FIFO
- * \param hNextProg Next program which needs pre-connect
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Support Pre-connect next program.
- *
- * \note Description: \n
- * 1. Stop demux fifo \n
- * 2. Pre-connect next program \n
- * 3. close video/audio/pcr channel \n
- * 4. close demux \n
- * 5. flush AV \n
- * if hNextProg = 0 will not pre-connect next program \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStopEx(CDBIHandle_t hNextProg);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStop(int bFifoStop)
- *
- * \param bFifoStop Doesn't need to stop demux FIFO?
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * 1. Stop demux fifo \n
- * 2. close video/audio/pcr channel \n
- * 3. flush AV \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStop(int bFifoStop);
- /******************************************************************************/
- /*! \defgroup playback_Operation_AV AV
- * \brief audio and video related operation
- * @{ */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStartAVOnly(void)
- *
- * \param none.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * DTV playback start av channel only. \n
- * for dynamic detecting scrambled or locked channel transits to normal channel.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStartAVOnly(void);
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStopAVOnly(void)
- *
- * \param none.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description:
- * DTV playback stop av channel only.
- * for dynamic detecting normal channel transits to scrambled & locked channel.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStopAVOnly(void);
- /******************************************************************************/
- /*! @} end of defgroup AV */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStreamPause(UINT8 bVideo)
- *
- * \param bVideo: 1 for streaming pause video, 0 for streaming pause audio
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * DTV playback resume to normal playback video or audio only.
- * The streaming pause means video or audio enter frozen status but background is still decoding
- * video or audio data.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStreamPause(UINT8 bVideo);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStreamResume(UINT8 bVideo)
- *
- * \param bVideo: 1 for streaming resume video, 0 for streaming resum audio
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * DTV playback resume to normal playback video or audio only.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStreamResume(UINT8 bVideo);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackPause(void)
- *
- * \param none.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * DTV playback Pause.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackPause(void);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackResume(void)
- *
- * \param none.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * DTV playback resume to normal playback.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackResume(void);
- /******************************************************************************/
- /*! @} end of defgroup Operation */
- /******************************************************************************/
- /*! \defgroup playback_Get_Handle Get CDBIHandle_t
- * \brief Get program CDBIHandle_t
- * @{ */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackGetCurProgHandle(UINT32 *pu32TvRadioType, CDBIHandle_t *phProg)
- *
- * \param pu32TvRadioType : Pointer to the service type of current playback program \n
- * \param phProg : Pointer to the CDBIHandle_t of current playback program
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description: \n
- * To get the current playback program index
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackGetCurProgHandle(UINT32 *pu32TvRadioType, CDBIHandle_t *phProg);
- MID_Status_t MID_PlaybackSetCurProgHandle(UINT32 *pu32TvRadioType, CDBIHandle_t *phProg);
- /******************************************************************************/
- /*! @} end of defgroup Get CDBIHandle_t */
- /******************************************************************************/
- /*! \defgroup playback_Clear_screan Clear Screan
- * \brief clear screen related function
- * @{ */
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackSetClearScreen(Boolean bAutoClear)
- *
- * \param bAutoClear: auto clear video frame after stop program.
- *
- * \return none.
- *
- * \note Description: \n
- * Set auto clear flag for playback stop.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- void MID_PlaybackSetClearScreen(bool bAutoClear);
- /******************************************************************************/
- /*! @} end of defgroup Clear Screan */
- /******************************************************************************/
- /*! \defgroup playback_Setting_Function Setting Functions
- * \brief setting frequency, PID ,and so on.
- * @{ */
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackResetPreFrequency(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description: \n
- * Reset the recently frequency stored in playback module.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- void MID_PlaybackResetPreFrequency(void);
- #ifdef CONFIG_DVB_SYSTEM_DVBT2_SUPPORT
- /*******************************************************************************************/
- /**
- * \fn void MID_PlaybackResetPrePLPId(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description:
- * Reset the recently plp id stored in playback module.
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- void MID_PlaybackResetPrePLPId(void);
- #endif
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackChangePid(MID_PlaybackChangePid_t eChangeType, UINT32 u32Param)
- *
- * \param eChangeType: The pid type changed.
- * \param u32Param : The related parameter about the pid changed.
- *
- * \return none.
- *
- * \note Description: \n
- * CDBIHandle_t the pid changing about playback related.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackChangePid(MID_PlaybackChangePid_t eChangeType, UINT32 u32Param);
- /******************************************************************************/
- /*! @} end of defgroup Setting Function */
- /******************************************************************************/
- /*! \defgroup playback_Query_Info Query Info
- * \brief query playback related Info.
- * @{ */
- /******************************************************************************/
- /**
- * \fn Boolean MID_PlaybackHasInit(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description:
- * Does Playback has initialize?
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- bool MID_PlaybackHasInit(void);
- /******************************************************************************/
- /**
- * \fn Boolean MID_PlaybackIsPlaying(void)
- *
- * \param none.
- *
- * \return TRUE : Playback is playing
- * FALSE : Playback is not playing
- *
- * \note Description: \n
- * Is current playing?
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- bool MID_PlaybackIsPlaying(void);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackGetVideoStreamInfo(MID_PlaybackStreamInfo_t *pstStreamInfo, int nTimeout)
- *
- * \param pstStreamInfo : pointer of return info.
- * \param nTimeout : timeout count.
- *
- * \return DTV_DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * Get current playing video stream info.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackGetVideoStreamInfo(MID_PlaybackStreamInfo_t *pstStreamInfo, int nTimeout);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackGetAudioStreamInfo(MID_PlaybackStreamInfo_t *pstStreamInfo, int nTimeout)
- *
- * \param pstStreamInfo : pointer of return info.
- * \param nTimeout : timeout count.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * Get current playing audio stream info.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackGetAudioStreamInfo(MID_PlaybackStreamInfo_t *pstStreamInfo, int nTimeout);
- /******************************************************************************/
- /*! @} end of defgroup Query Info */
- /******************************************************************************/
- /*! \defgroup playback_Operation Operation
- * @{ */
- /******************************************************************************/
- /*! \defgroup playback_Operation_Video Video
- * \brief video only related operation
- * @{ */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStartVideo(UINT16 usPID, UINT16 usPCR, unsigned short usCodec)
- *
- * \param usPID : video PID.
- * \param usPCR : related PCR PID.
- * \param usCodec : video codec.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * DTV playback start video channel only. \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStartVideo(UINT16 usPID, UINT16 usPCR, unsigned short usCodec);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStopVideo(UINT8 bClearFrame)
- *
- * \param bClearFrame : 1: needs to clear frame, 0: DOESN'T need to clear frame
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * DTV playback stop video channel only. \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStopVideo(UINT8 bClearFrame);
- /******************************************************************************/
- /*! @} end of defgroup Video */
- /******************************************************************************/
- /*! \defgroup playback_Operation_Audio Audio
- * \brief audio only related operation
- * @{ */
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStartAudio(UINT16 usPID, UINT16 usPCR, unsigned short usCodec)
- *
- * \param usPID : video PID.
- * \param usPCR : related PCR PID.
- * \param usCodec : video codec.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * DTV playback start audio channel only. \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStartAudio(UINT16 usPID, UINT16 usPCR, unsigned short usCodec);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStopAudio(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description:
- * Is current playing?
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStopAudio(void);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStartSecondAudio(UINT16 usPID, UINT16 usPCR, unsigned short usCodec)
- *
- * \param usPID : video PID.
- * \param usPCR : related PCR PID.
- * \param usCodec : video codec.
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * DTV playback start audio channel only. \n
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStartSecondAudio(UINT16 usPID, UINT16 usPCR, unsigned short usCodec);
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackStopSecondAudio(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description:
- * Is current playing?
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- MID_Status_t MID_PlaybackStopSecondAudio(void);
- MID_Status_t MID_PlaybackSetADPidToMainPath(UINT16 uADPid);
- /******************************************************************************/
- /*! @} end of defgroup Audio */
- /******************************************************************************/
- /******************************************************************************/
- /*! @} end of defgroup AV */
- /******************************************************************************/
- /*! @} end of defgroup Operation */
- /******************************************************************************/
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackInitCallback(void)
- *
- * \param none.
- *
- * \return none.
- *
- * \note Description: \n
- * This interface will set if middleware playback init for a/v playback or for logo display
- *
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- extern void (*MID_PlaybackInitCallback)(void); //qiuwei20100506 add for mains 0086556
- /******************************************************************************/
- /**
- * \fn MID_Status_t MID_PlaybackReplaceService(CDBIHandle_t hOriginalProg, CDBIHandle_t hReplacementProg)
- *
- * \param hOriginalProg original program.
- * \param hReplacementProg the program to replace the original one
- *
- * \return DRV_SUCCESS if successful, warning or error code if function failed.
- *
- * \note Description: \n
- * This interface will replace service from hOriginalProg to hReplacementProg
- *
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- #ifdef CONFIG_SUPPORT_BISS
- MID_Status_t MID_PlaybackReplaceService(CDBIHandle_t hOriginalProg, CDBIHandle_t hReplacementProg, UINT64 ulBissKey);
- #else
- MID_Status_t MID_PlaybackReplaceService(CDBIHandle_t hOriginalProg, CDBIHandle_t hReplacementProg);
- #endif
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackGetActiveVidPid(unsigned short *pid)
- *
- * \param none.
- *
- * \return hdl : get active video demux chan CDBIHandle_t.
- *
- * \note Description: \n
- * Uninit presentation engine.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- UINT16 MID_PlaybackGetActiveVidHandle(void);
- /******************************************************************************/
- /**
- * \fn void MID_PlaybackGetActiveAudPid(unsigned short *pid)
- *
- * \param none.
- *
- * \return hdl : get active audio demux chan CDBIHandle_t.
- *
- * \note Description: \n
- * Uninit presentation engine.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- UINT16 MID_PlaybackGetActiveAudHandle(bool bPid);
- /******************************************************************************/
- /**
- * \fn UINT16 MID_PlaybackGetActiveSecAudHandle
- *
- * \param none.
- *
- * \return hdl : get active audio demux chan CDBIHandle_t.
- *
- * \note Description: \n
- * Uninit presentation engine.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- UINT16 MID_PlaybackGetActiveSecAudHandle(bool bPid);
- /******************************************************************************/
- /**
- * \fn UINT16 MID_PlaybackGetActiveAudCodec
- *
- * \param none.
- *
- * \return hdl : get active audio codec.
- *
- * \note Description: \n
- * Uninit presentation engine.
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- UINT16 MID_PlaybackGetActiveAudCodec(void);
- /******************************************************************************/
- /*! @} end of defgroup PE Connetion */
- /******************************************************************************/
- /******************************************************************************/
- /*! @} end of defgroup Debug */
- /******************************************************************************/
- //pingchi 20100825 added for mantis 101993 ++
- /******************************************************************************/
- /**
- * \fn UINT8 MID_PlaybackIsPauseState
- *
- * \return 1 if pause
- * 0 if play
- *
- * \note Restrictions: none.
- */
- /******************************************************************************/
- UINT8 MID_PlaybackIsPauseState(void);
- /*******************************************************************************************/
- /**
- * \fn void MID_PlaybackSetFreqChange(UINT32 Freq)
- *
- * \param Freq: current play service frequency
- *
- * \return None
- *
- * \note Description:
- * if other module(example CI+) change frequency notify playback frequency changed,
- * then change to other service judge need to link tuner.
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- void MID_PlaybackSetFreqChange(UINT32 Freq);
- #ifdef CONFIG_SUPPORT_MHEG5
- /*******************************************************************************************/
- /**
- * \fn MID_PlaybackStartVideoIFrame
- *
- * \param pVideoData: Pointer to video data block to start I-frame decoding
- *
- * \param nLength: Length of video data block.
- *
- * \param stream_type: stream type, which is defined in mpeg spec
- *
- * \return MID_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description:
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_PlaybackStartVideoIFrame(UINT8 *pVideoData, int nLength, UINT8 stream_type);
- /*******************************************************************************************/
- /**
- * \fn MID_PlaybackStopVideoIFrame
- *
- * \return MID_SUCCESS if successful, warning or error code if function failed
- *
- * \note Description:
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_PlaybackStopVideoIFrame(void);
- #endif
- #ifdef CONFIG_DVB_SYSTEM_DVBS_SUPPORT
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_Playback_DVBSConnectTp(CDBIHandle_t hTPHandle, UINT8 ForceMotor)
- *
- * \param hTPHandle: TP handle
- * ForceMotor: force run Motor(TRUE or FALSE)
- *
- * \return MID_SUCCESS
- *
- * \note Description:
- * use TP handler to connect dvb-s/s2 frontend.
- *
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_Playback_DVBSConnectTp(CDBIHandle_t hTPHandle, UINT8 ForceMotor);
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_Playback_DVBSTune(Ant_TRANSPONDER_st TpInfo, UINT8 ForceMotor, UINT8 bConnectFE)
- *
- * \param TpInfo: TP information
- * ForceMotor: force run Motor(TRUE or FALSE)
- * bConnectFE: connect to FE
- *
- * \return MID_SUCCESS
- *
- * \note Description:
- * dvb-s/s2 set params to frontend.
- *
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_Playback_DVBSTune(Ant_TRANSPONDER_st TpInfo, UINT8 ForceMotor, UINT8 bConnectFE);
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_Playback_ConnectSatellite(UINT8 ForceMotor)
- *
- * \param ForceMotor: force run Motor(TRUE or FALSE)
- *
- *
- *
- * \return MID_SUCCESS
- *
- * \note Description:
- * dvb-s/s2 connect to satellite.
- *
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_Playback_ConnectSatellite(UINT8 ForceMotor);
- /*******************************************************************************************/
- /**
- * \fn MID_Status_t MID_Playback_DVBSTuneInit(void)
- *
- * \param None
- *
- * \return MID_SUCCESS
- *
- * \note Description:
- * dvb-s/s2 initial api
- *
- *
- * \note Restrictions: none.
- *
- ********************************************************************************************/
- MID_Status_t MID_Playback_DVBSTuneInit(void);
- #endif
- #ifdef CONFIG_SUPPORT_INDONESIA_EWS
- MID_Status_t MID_PlaybackStartEWSFile(void);
- MID_Status_t MID_PlaybackStopEWSFile(void);
- #endif
- #ifdef DEMUX_CONTROL_TEST
- MID_Status_t Mid_PlaybackStartDemux(void);
- UINT8 MID_PlaybackGetState(void);
- UINT8 MID_PlaybackGetStateForPSI(void);
- void MID_PlaybackSetStateForPSI(UINT8 State);
- #endif
- #ifdef CONFIG_SUPPORT_AUDIO_CODEC_OVERLAY
- void MID_PlaybackResetPrevAudioCodec(void);
- #endif
- void MID_PlaybackClearPcrPid(void);
- #ifdef CONFIG_MOD_PACK_DTV
- void MID_PlaybackClearPreNetType(void);
- #endif
- #endif /*_DVB_PLAYBACK_H_*/
- /*! @} end of addtogroup playback*/
|