blob: 7d75e0c095ab17b276625c85a6bd684cbcc2a476
1 | |
2 | // amlogic 2013 |
3 | // |
4 | // @ Project : tv |
5 | // @ File Name : CDtv.h |
6 | // @ Date : 2013-11 |
7 | // @ Author : |
8 | |
9 | #if !defined(_CDTV_H) |
10 | #define _CDTV_H |
11 | #include <stdint.h> |
12 | #include <sys/time.h> |
13 | #include <am_epg.h> |
14 | #include <am_mem.h> |
15 | #include <utils/threads.h> |
16 | #include "CTvProgram.h" |
17 | #include "CTvEpg.h" |
18 | #include "CTvScanner.h" |
19 | #include "CTvLog.h" |
20 | #include "CTvTime.h" |
21 | #include "CTvEvent.h" |
22 | #include "CTvEv.h" |
23 | #include "CTvBooking.h" |
24 | #include "CFrontEnd.h" |
25 | #include "../vpp/CVpp.h" |
26 | #include "../vpp/CPQdb.h" |
27 | #include "../tvin/CTvin.h" |
28 | #include "../tvin/CHDMIRxCEC.h" |
29 | #include "../tvutils/CMsgQueue.h" |
30 | #include "../tvutils/CSerialCommunication.h" |
31 | #include "../tvutils/serial_operate.h" |
32 | #include "CTvRecord.h" |
33 | #include "CTvSubtitle.h" |
34 | #include "CUpgradeFBC.h" |
35 | #include "CAv.h" |
36 | #include "CTvDmx.h" |
37 | #include "../audio/CTvAudio.h" |
38 | #include "AutoBackLight.h" |
39 | #include "CAutoPQparam.h" |
40 | #include "tvin/CSourceConnectDetect.h" |
41 | using namespace android; |
42 | |
43 | static const char *TV_CONFIG_FILE_PATH = "/param/tvconfig.conf"; |
44 | static const char *TV_DB_PATH = "/param/dtv.db"; |
45 | static const char *TV_CONFIG_FILE_SYSTEM_PATH = "/system/etc/tvconfig.conf"; |
46 | static const char *TV_CONFIG_FILE_PARAM_PATH = "/param/tvconfig.conf"; |
47 | static const char *TV_CHANNEL_LIST_SYSTEM_PATH = "/system/etc/tv_default.xml"; |
48 | static const char *TV_CHANNEL_LIST_PARAM_PATH = "/param/tv_default.xml"; |
49 | static const char *TV_SSM_DATA_SYSTEM_PATH = "/system/etc/ssm_data"; |
50 | static const char *TV_SSM_DATA_PARAM_PATH = "/param/ssm_data"; |
51 | |
52 | #define DEVICE_CLASS_TSYNC_AV_THRESHOLD_MIN "/sys/class/tsync/av_threshold_min" |
53 | #define AV_THRESHOLD_MIN_MS "540000" //6S = 6*90000 |
54 | |
55 | |
56 | |
57 | |
58 | typedef enum tv_fmt_ratio_e { |
59 | RATIO_43, |
60 | RATIO_169, |
61 | RATIO_MAX, |
62 | } tv_fmt_ratio_t; |
63 | |
64 | typedef enum tv_color_fmt_e { |
65 | COLOR_RGB444, |
66 | COLOR_YUV422, |
67 | COLOR_YUV444, |
68 | COLOR_MAX, |
69 | } tv_color_fmt_t; |
70 | |
71 | |
72 | |
73 | typedef enum tv_window_mode_e { |
74 | NORMAL_WONDOW, |
75 | PREVIEW_WONDOW, |
76 | } tv_window_mode_t; |
77 | |
78 | typedef enum tv_dtv_scan_running_status_e { |
79 | DTV_SCAN_RUNNING_NORMAL, |
80 | DTV_SCAN_RUNNING_ANALYZE_CHANNEL, |
81 | } tv_dtv_scan_running_status_t; |
82 | |
83 | typedef struct tv_config_s { |
84 | bool kernelpet_disable; |
85 | unsigned int kernelpet_timeout; |
86 | bool userpet; |
87 | unsigned int userpet_timeout; |
88 | unsigned int userpet_reset; |
89 | bool memory512m; |
90 | } tv_config_t; |
91 | |
92 | typedef enum TvRunStatus_s { |
93 | TV_INIT_ED = -1, |
94 | TV_OPEN_ED = 0, |
95 | TV_START_ED , |
96 | TV_RESUME_ED, |
97 | TV_PAUSE_ED, |
98 | TV_STOP_ED, |
99 | TV_CLOSE_ED, |
100 | } TvRunStatus_t; |
101 | |
102 | class CTv : public CTvin::CTvinSigDetect::ISigDetectObserver, public CSourceConnectDetect::ISourceConnectObserver, public CHDMIRxCEC::IHDMIRxCECObserver, public CUpgradeFBC::IUpgradeFBCObserver, public CSerialCommunication::ISerialCommunicationObserver, public CTvSubtitle::IObserver, public CTv2d4GHeadSetDetect::IHeadSetObserver { |
103 | public: |
104 | static const int TV_ACTION_NULL = 0x0000; |
105 | static const int TV_ACTION_STARTING = 0x0001; |
106 | static const int TV_ACTION_STOPING = 0x0002; |
107 | static const int TV_ACTION_SCANNING = 0x0004; |
108 | static const int TV_ACTION_PLAYING = 0x0008; |
109 | static const int TV_ACTION_RECORDING = 0x0010; |
110 | static const int TV_ACTION_SOURCE_SWITCHING = 0x0020; |
111 | public: |
112 | class TvIObserver { |
113 | public: |
114 | TvIObserver() {}; |
115 | virtual ~TvIObserver() {}; |
116 | virtual void onTvEvent ( const CTvEv &ev ) = 0; |
117 | }; |
118 | //main |
119 | CTv(); |
120 | virtual ~CTv(); |
121 | virtual int OpenTv ( void ); |
122 | virtual int CloseTv ( void ); |
123 | virtual int StartTvLock (); |
124 | virtual int StopTvLock ( void ); |
125 | virtual int DoSuspend(int type); |
126 | virtual int DoResume(int type); |
127 | virtual int DoInstabootSuspend(); |
128 | virtual int DoInstabootResume(); |
129 | virtual TvRunStatus_t GetTvStatus(); |
130 | virtual int ClearAnalogFrontEnd(); |
131 | virtual tv_source_input_t GetLastSourceInput (void); |
132 | virtual int SetSourceSwitchInput (tv_source_input_t source_input ); |
133 | virtual tv_source_input_t GetCurrentSourceInputLock ( void ); |
134 | virtual tvin_info_t GetCurrentSignalInfo ( void ); |
135 | virtual int SetPreviewWindow ( tvin_window_pos_t pos ); |
136 | virtual int dtvAutoScan(); |
137 | virtual int dtvManualScan (int beginFreq, int endFreq, int modulation = -1); |
138 | virtual int atvAutoScan(int videoStd, int audioStd, int searchType); |
139 | virtual int clearAllProgram(int arg0); |
140 | virtual int clearDbAllProgramInfoTable(); |
141 | virtual void setSourceSwitchAndPlay(); |
142 | virtual int GetDisplayResolutionConfig(); |
143 | virtual int GetDisplayResolutionInfo(); |
144 | virtual int atvMunualScan ( int startFreq, int endFreq, int videoStd, int audioStd, int store_Type = 0, int channel_num = 0 ); |
145 | virtual int stopScanLock(); |
146 | virtual int dtvAutoScanAtscLock(int attenna, int videoStd, int audioStd); |
147 | virtual void SetRecordFileName ( char *name ); |
148 | virtual void StartToRecord(); |
149 | virtual void StopRecording(); |
150 | virtual void SetRecCurTsOrCurProgram ( int sel ); |
151 | virtual int startCC(int country, int src, int channel, int service); |
152 | virtual int stopCC(); |
153 | virtual void printDebugInfo(); |
154 | virtual int playProgramLock ( int progId ); |
155 | virtual int playDvbcProgram ( int progId ); |
156 | virtual int playDtmbProgram ( int progId ); |
157 | virtual int playAtvProgram ( int, int, int, int, int); |
158 | virtual int playDtvProgram ( int, int, int, int, int, int, int, int, int, int); |
159 | virtual int stopPlayingLock(); |
160 | virtual int resetFrontEndPara ( frontend_para_set_t feParms ); |
161 | virtual int SetDisplayMode ( vpp_display_mode_t display_mode, tv_source_input_type_t source_type, tvin_sig_fmt_t sig_fmt ); |
162 | virtual void startAutoBackLight(); |
163 | virtual void stopAutoBackLight(); |
164 | virtual const char *getPqDbPath(); |
165 | virtual void onHdmiSrChanged(int sr, bool bInit); |
166 | virtual void onHMDIAudioStatusChanged(int status); |
167 | virtual int GetATVAFCType(); |
168 | virtual int GetATVSourceTimerSwitch(); |
169 | int SetCurProgramAudioVolumeCompensationVal ( int tmpVal ); |
170 | int GetAudioVolumeCompensationVal(int progDbId); |
171 | //dtv audio track info |
172 | int getAudioTrackNum ( int progId ); |
173 | int getAudioInfoByIndex ( int progId, int idx, int *pAFmt, String8 &lang ); |
174 | int switchAudioTrack ( int progId, int idx ); |
175 | int switchAudioTrack ( int aPid, int aFmt, int aParam ); |
176 | int getVideoFormatInfo ( int *pWidth, int *pHeight, int *pFPS, int *pInterlace ); |
177 | int ResetAudioDecoderForPCMOutput(); |
178 | int setAudioChannel ( int channelIdx ); |
179 | int getAudioChannel(); |
180 | int setTvObserver (TvIObserver *ob); |
181 | int getAtscAttenna(); |
182 | long getTvTime() |
183 | { |
184 | return mTvTime.getTime(); |
185 | }; |
186 | void getFrontendStatus(); |
187 | int getFrontendSignalStrength(); |
188 | int getFrontendSNR(); |
189 | int getFrontendBER(); |
190 | int getChannelInfoBydbID ( int dbID, channel_info_t &chan_info ); |
191 | int setBlackoutEnable(int enable); |
192 | int getSaveBlackoutEnable(); |
193 | int getAutoBackLight_on_off(); |
194 | int saveATVProgramID ( int dbID ); |
195 | int getATVProgramID ( void ); |
196 | int saveDTVProgramID ( int dbID ); |
197 | int getDTVProgramID ( void ); |
198 | int getCurPlayProgId(); |
199 | int getATVMinMaxFreq ( int *scanMinFreq, int *scanMaxFreq ); |
200 | int getAverageLuma(); |
201 | int setAutobacklightData(const char *value); |
202 | int getAutoBacklightData(int *data); |
203 | |
204 | virtual int Tv_SSMRestoreDefaultSetting(); |
205 | |
206 | // |
207 | int GetSourceConnectStatus(tv_source_input_t source_input); |
208 | int IsDVISignal(); |
209 | int isVgaFmtInHdmi(); |
210 | int isSDFmtInHdmi ( void ); |
211 | // |
212 | int getHDMIFrameRate ( void ); |
213 | void RefreshAudioMasterVolume ( tv_source_input_t source_input ); |
214 | |
215 | int Tv_Set3DMode ( VIDEO_3D_MODE_T mode ); |
216 | VIDEO_3D_MODE_T Tv_Get3DMode ( void ); |
217 | int Tv_Set3DLRSwith ( int on_off); |
218 | int Tv_Get3DLRSwith ( void ); |
219 | int Tv_Set3DTo2DMode ( int mode); |
220 | int Tv_Get3DTo2DMode ( void ); |
221 | int Tv_Set3DDepth ( int value ); |
222 | int GetSave3DDepth ( void ); |
223 | is_3d_type_t Check2Dor3D ( VIDEO_3D_MODE_T mode3d, tvin_trans_fmt_t trans_fmt ); |
224 | int Tvin_SetPLLValues (); |
225 | int SetCVD2Values (); |
226 | unsigned int Vpp_GetDisplayResolutionInfo(tvin_window_pos_t *win_pos); |
227 | int get_hdmi_sampling_rate(); |
228 | //SSM |
229 | virtual int Tv_SSMFacRestoreDefaultSetting(); |
230 | int Tv_GetHistgram(int *histgram_buf); |
231 | int StartHeadSetDetect(); |
232 | virtual void onHeadSetDetect(int state, int para); |
233 | |
234 | CTvin::CTvinSigDetect mSigDetectThread; |
235 | CSourceConnectDetect mSourceConnectDetectThread; |
236 | CHDMIRxCEC mHDMIRxCEC; |
237 | CUpgradeFBC *mpUpgradeFBC; |
238 | CSerialCommunication mSerialA; |
239 | CSerialCommunication mSerialB; |
240 | CSerialCommunication mSerialC; |
241 | CTvSubtitle mSubtitle; |
242 | CTv2d4GHeadSetDetect mHeadSet; |
243 | |
244 | int SendHDMIRxCECCustomMessage(unsigned char data_buf[]); |
245 | int SendHDMIRxCECCustomMessageAndWaitReply(unsigned char data_buf[], unsigned char reply_buf[], int WaitCmd, int timeout); |
246 | int SendHDMIRxCECBoradcastStandbyMessage(); |
247 | int SendHDMIRxCECGiveCECVersionMessage(tv_source_input_t source_input, unsigned char data_buf[]); |
248 | int SendHDMIRxCECGiveDeviceVendorIDMessage(tv_source_input_t source_input, unsigned char data_buf[]); |
249 | int SendHDMIRxCECGiveOSDNameMessage(tv_source_input_t source_input, unsigned char data_buf[]); |
250 | |
251 | int GetHdmiHdcpKeyKsvInfo(int data_buf[]); |
252 | virtual bool hdmiOutWithFbc(); |
253 | int StartUpgradeFBC(char *file_name, int mode, int upgrade_blk_size); |
254 | int SetSerialSwitch(int dev_id, int switch_val); |
255 | int SendSerialData(int dev_id, int data_len, unsigned char data_buf[]); |
256 | int SetDebugSerialOnOff(int on_off); |
257 | int GetDebugSerialOnOff(); |
258 | int ChannelExport(const char *destPath); |
259 | int ChannelImport(const char *srcPath); |
260 | int Tv_GetProjectInfo(project_info_t *ptrInfo); |
261 | int Tv_GetPlatformType(); |
262 | int Tv_HandeHDMIEDIDFilePathConfig(); |
263 | int Tv_SetDDDRCMode(tv_source_input_t source_input); |
264 | int Tv_SetAudioSourceType (tv_source_input_t source_input); |
265 | |
266 | //PQ |
267 | virtual int Tv_SetBrightness ( int brightness, tv_source_input_type_t source_type, int is_save ); |
268 | virtual int Tv_GetBrightness ( tv_source_input_type_t source_type ); |
269 | virtual int Tv_SaveBrightness ( int brightness, tv_source_input_type_t source_type ); |
270 | virtual int Tv_SetContrast ( int contrast, tv_source_input_type_t source_type, int is_save ); |
271 | virtual int Tv_GetContrast ( tv_source_input_type_t source_type ); |
272 | virtual int Tv_SaveContrast ( int contrast, tv_source_input_type_t source_type ); |
273 | virtual int Tv_SetSaturation ( int satuation, tv_source_input_type_t source_type, tvin_sig_fmt_t sig_fmt, int is_save ); |
274 | virtual int Tv_GetSaturation ( tv_source_input_type_t source_type ); |
275 | virtual int Tv_SaveSaturation ( int satuation, tv_source_input_type_t source_type ); |
276 | virtual int Tv_SetHue ( int hue, tv_source_input_type_t source_type, tvin_sig_fmt_t sig_fmt, int is_save ); |
277 | virtual int Tv_GetHue ( tv_source_input_type_t source_type ); |
278 | virtual int Tv_SaveHue ( int hue, tv_source_input_type_t source_type ); |
279 | virtual int Tv_SetPQMode ( vpp_picture_mode_t mode, tv_source_input_type_t source_type, int is_save ); |
280 | virtual vpp_picture_mode_t Tv_GetPQMode ( tv_source_input_type_t source_type ); |
281 | virtual int Tv_SavePQMode ( vpp_picture_mode_t mode, tv_source_input_type_t source_type ); |
282 | virtual int Tv_SetSharpness ( int value, tv_source_input_type_t source_type, int en, int is_save ); |
283 | virtual int Tv_GetSharpness ( tv_source_input_type_t source_type ); |
284 | virtual int Tv_SaveSharpness ( int value, tv_source_input_type_t source_type ); |
285 | virtual int Tv_SetBacklight ( int value, tv_source_input_type_t source_type, int is_save ); |
286 | virtual int Tv_GetBacklight ( tv_source_input_type_t source_type ); |
287 | virtual int Tv_SaveBacklight ( int value, tv_source_input_type_t source_type ); |
288 | int Tv_SetBacklight_Switch ( int value ); |
289 | int Tv_GetBacklight_Switch ( void ); |
290 | int Tv_SetColorTemperature ( vpp_color_temperature_mode_t mode, tv_source_input_type_t source_type, int is_save ); |
291 | vpp_color_temperature_mode_t Tv_GetColorTemperature ( tv_source_input_type_t source_type ); |
292 | virtual int Tv_SetDisplayMode ( vpp_display_mode_t mode, tv_source_input_type_t source_type, tvin_sig_fmt_t fmt, int is_save ); |
293 | virtual int Tv_SaveDisplayMode ( vpp_display_mode_t mode, tv_source_input_type_t source_type ); |
294 | virtual int Tv_SaveColorTemperature ( vpp_color_temperature_mode_t mode, tv_source_input_type_t source_type ); |
295 | virtual vpp_display_mode_t Tv_GetDisplayMode ( tv_source_input_type_t source_type ); |
296 | virtual int Tv_SetNoiseReductionMode ( vpp_noise_reduction_mode_t mode, tv_source_input_type_t source_type, int is_save ); |
297 | virtual vpp_noise_reduction_mode_t Tv_GetNoiseReductionMode ( tv_source_input_type_t source_type ); |
298 | virtual int Tv_SaveNoiseReductionMode ( vpp_noise_reduction_mode_t mode, tv_source_input_type_t source_type ); |
299 | int Tv_SetSplitScreenDemoStatus(tv_source_input_type_t source_type, int onoff_status); |
300 | int Tv_GetSplitScreenDemoStatus(tv_source_input_type_t source_type); |
301 | int Tv_SplitScreenEffect(int mode, int width, int reverse = 0); |
302 | // |
303 | int Tv_FactorySetPQMode_Brightness ( int source_type, int pq_mode, int brightness ); |
304 | int Tv_FactoryGetPQMode_Brightness ( int source_type, int pq_mode ); |
305 | int Tv_FactorySetPQMode_Contrast ( int source_type, int pq_mode, int contrast ); |
306 | int Tv_FactoryGetPQMode_Contrast ( int source_type, int pq_mode ); |
307 | int Tv_FactorySetPQMode_Saturation ( int source_type, int pq_mode, int saturation ); |
308 | int Tv_FactoryGetPQMode_Saturation ( int source_type, int pq_mode ); |
309 | int Tv_FactorySetPQMode_Hue ( int source_type, int pq_mode, int hue ); |
310 | int Tv_FactoryGetPQMode_Hue ( int source_type, int pq_mode ); |
311 | int Tv_FactorySetPQMode_Sharpness ( int source_type, int pq_mode, int sharpness ); |
312 | int Tv_FactoryGetPQMode_Sharpness ( int source_type, int pq_mode ); |
313 | |
314 | int GetColorTemperatureParams ( vpp_color_temperature_mode_t Tempmode, tcon_rgb_ogo_t *params ); |
315 | int Tv_FactorySetTestPattern ( int pattern ); |
316 | int Tv_FactoryGetTestPattern ( void ); |
317 | int Tv_FactorySetScreenColor ( int vdin_blending_mask, int y, int u, int v ); |
318 | int Tv_FactoryResetPQMode ( void ); |
319 | int Tv_FactoryResetColorTemp ( void ); |
320 | int Tv_FactorySetParamsDefault ( void ); |
321 | int Tv_FactorySetDDRSSC ( int step ); |
322 | int Tv_FactoryGetDDRSSC ( void ); |
323 | int Tv_FactorySetLVDSSSC ( int step ); |
324 | int Tv_FactoryGetLVDSSSC ( void ); |
325 | void Tv_Spread_Spectrum(void); |
326 | int Tv_FactorySetNolineParams ( int noline_params_type, int source_type, noline_params_t noline_params ); |
327 | noline_params_t Tv_FactoryGetNolineParams ( int noline_params_type, int source_type ); |
328 | int Tv_FactorySetOverscan ( int source_type, int fmt, int status_3d, int trans_fmt, tvin_cutwin_t cutwin_t ); |
329 | tvin_cutwin_t Tv_FactoryGetOverscan ( int source_type, int fmt, int status_3d, int trans_fmt ); |
330 | int Tv_ReplacePqDb(const char *newFilePath = NULL); |
331 | //end PQ |
332 | |
333 | //TV TO FBC |
334 | int Tv_FactorySet_FBC_Brightness ( int value ); |
335 | int Tv_FactoryGet_FBC_Brightness ( void ); |
336 | int Tv_FactorySet_FBC_Contrast( int value ); |
337 | int Tv_FactoryGet_FBC_Contrast ( void ); |
338 | int Tv_FactorySet_FBC_Saturation( int value ); |
339 | int Tv_FactoryGet_FBC_Saturation ( void ); |
340 | int Tv_FactorySet_FBC_HueColorTint( int value ); |
341 | int Tv_FactoryGet_FBC_HueColorTint ( void ); |
342 | virtual int Tv_FactorySet_FBC_Backlight ( int value ); |
343 | virtual int Tv_FactoryGet_FBC_Backlight ( void ); |
344 | int Tv_FactorySet_FBC_Backlight_N360 ( int value ); |
345 | int Tv_FactoryGet_FBC_Backlight_N360 ( void ); |
346 | int Tv_FactorySet_FBC_ELEC_MODE( int value ); |
347 | int Tv_FactoryGet_FBC_ELEC_MODE( void ); |
348 | int Tv_FactorySet_FBC_BACKLIGHT_N360( int value ); |
349 | int Tv_FactoryGet_FBC_BACKLIGHT_N360( void ); |
350 | int Tv_FactorySet_FBC_Picture_Mode ( int mode ); |
351 | int Tv_FactoryGet_FBC_Picture_Mode ( void ); |
352 | int Tv_FactorySet_FBC_Set_Test_Pattern ( int mode ); |
353 | int Tv_FactoryGet_FBC_Get_Test_Pattern ( void ); |
354 | int Tv_FactorySet_FBC_Gain_Red( int value ); |
355 | int Tv_FactoryGet_FBC_Gain_Red ( void ); |
356 | int Tv_FactorySet_FBC_Gain_Green( int value ); |
357 | int Tv_FactoryGet_FBC_Gain_Green( void ); |
358 | int Tv_FactorySet_FBC_Gain_Blue( int value ); |
359 | int Tv_FactoryGet_FBC_Gain_Blue ( void ); |
360 | int Tv_FactorySet_FBC_Offset_Red( int value ); |
361 | int Tv_FactoryGet_FBC_Offset_Red ( void ); |
362 | int Tv_FactorySet_FBC_Offset_Green( int value ); |
363 | int Tv_FactoryGet_FBC_Offset_Green( void ); |
364 | int Tv_FactorySet_FBC_Offset_Blue( int value ); |
365 | int Tv_FactoryGet_FBC_Offset_Blue ( void ); |
366 | int Tv_FactoryGetWhiteBalanceRedGain(int source_type, int colortemp_mode); |
367 | int Tv_FactoryGetWhiteBalanceGreenGain(int source_type, int colortemp_mode); |
368 | int Tv_FactoryGetWhiteBalanceBlueGain(int source_type, int colortemp_mode); |
369 | int Tv_FactoryGetWhiteBalanceRedOffset(int source_type, int colortemp_mode); |
370 | int Tv_FactoryGetWhiteBalanceGreenOffset(int source_type, int colortemp_mode); |
371 | int Tv_FactoryGetWhiteBalanceBlueOffset(int source_type, int colortemp_mode); |
372 | int Tv_FactorySetWhiteBalanceRedGain(int source_type, int colortemp_mode, int value); |
373 | int Tv_FactorySetWhiteBalanceGreenGain(int source_type, int colortemp_mode, int value); |
374 | int Tv_FactorySetWhiteBalanceBlueGain(int source_type, int colortemp_mode, int value); |
375 | int Tv_FactorySetWhiteBalanceRedOffset(int source_type, int colortemp_mode, int value); |
376 | int Tv_FactorySetWhiteBalanceGreenOffset(int source_type, int colortemp_mode, int value); |
377 | int Tv_FactorySetWhiteBalanceBlueOffset(int source_type, int colortemp_mode, int value); |
378 | int Tv_FactorySetWhiteBalanceColorTempMode(int source_type, int colortemp_mode, int is_save); |
379 | int Tv_FactoryGetWhiteBalanceColorTempMode(int source_type ); |
380 | int Tv_FactoryWhiteBalanceFormatInputFbcGainParams(int value); |
381 | int Tv_FactoryWhiteBalanceFormatInputFbcOffsetParams(int value); |
382 | int Tv_FactoryWhiteBalanceFormatOutputFbcOffsetParams(int value); |
383 | int Tv_FactoryWhiteBalanceFormatOutputFbcGainParams(int value); |
384 | int Tv_FactorySaveWhiteBalancePramas(int source_type, int tempmode, int r_gain, int g_gain, int b_gain, int r_offset, int g_offset, int b_offset); |
385 | int Tv_FactoryCloseWhiteBalanceGrayPattern(); |
386 | int Tv_FactoryOpenWhiteBalanceGrayPattern(); |
387 | int Tv_FactorySetWhiteBalanceGrayPattern(int value); |
388 | int Tv_FactoryGetWhiteBalanceGrayPattern(); |
389 | int Tv_FactoryWhiteBalanceColorTempMappingG92Fbc(int Tempmode); |
390 | int Tv_FactoryWhiteBalanceColorTempMappingFbc2G9(int Tempmode); |
391 | int Tv_FactorySet_FBC_GrayPattern(int value); |
392 | int Tv_FactoryOpen_FBC_GrayPattern(); |
393 | int Tv_FactoryClose_FBC_GrayPattern(); |
394 | int Tv_FactorySet_FBC_ColorTemp_Mode( int mode ); |
395 | int Tv_FactoryGet_FBC_ColorTemp_Mode ( void ); |
396 | int Tv_FactorySet_FBC_ColorTemp_Mode_N360( int mode ); |
397 | int Tv_FactoryGet_FBC_ColorTemp_Mode_N360 ( void ); |
398 | int Tv_FactorySet_FBC_LockN_state(int value); |
399 | int Tv_FactorySet_FBC_WB_Initial( int status ); |
400 | int Tv_FactoryGet_FBC_WB_Initial ( void ); |
401 | virtual int Tv_FactorySet_FBC_ColorTemp_Batch(vpp_color_temperature_mode_t Tempmode, tcon_rgb_ogo_t params); |
402 | virtual int Tv_FactoryGet_FBC_ColorTemp_Batch ( vpp_color_temperature_mode_t Tempmode, tcon_rgb_ogo_t *params ); |
403 | int Tv_FactorySet_WB_G9_To_FBC( vpp_color_temperature_mode_t Tempmode, tcon_rgb_ogo_t params ); |
404 | int Tv_FactoryGet_WB_G9_To_FBC ( vpp_color_temperature_mode_t Tempmode, tcon_rgb_ogo_t *params ); |
405 | int Tv_FactoryGetItemFromBatch(vpp_color_temperature_mode_t colortemp_mode, int item); |
406 | int Tv_FactorySet_FBC_CM_OnOff( unsigned char status ); |
407 | int Tv_FactoryGet_FBC_CM_OnOff (void); |
408 | int Tv_FactorySet_FBC_DNLP_OnOff( unsigned char status ); |
409 | int Tv_FactoryGet_FBC_DNLP_OnOff (void); |
410 | int Tv_FactorySet_FBC_Gamma_OnOff( unsigned char status ); |
411 | int Tv_FactoryGet_FBC_Gamma_OnOff (void); |
412 | int Tv_FactorySet_FBC_WhiteBalance_OnOff( unsigned char status ); |
413 | int Tv_FactoryGet_FBC_WhiteBalance_OnOff (void); |
414 | int Tv_FactorySet_FBC_Thermal_State( int value ); |
415 | int Tv_FactorySet_FBC_backlight_onoff(int value); |
416 | int Tv_FactoryGet_FBC_backlight_onoff ( void ); |
417 | int Tv_FactorySet_FBC_Auto_Backlight_OnOff(unsigned char status); |
418 | int Tv_FactoryGet_FBC_Auto_Backlight_OnOff ( void ); |
419 | int Tv_FactoryGet_FBC_VIDEO_MUTE ( void ); |
420 | int Tv_FactorySet_FBC_LVDS_SSG_Set( int value ); |
421 | int Tv_FactorySet_FBC_LightSensor_Status_N310 ( int value ); |
422 | int Tv_FactoryGet_FBC_LightSensor_Status_N310 ( void ); |
423 | int Tv_FactorySet_FBC_Dream_Panel_Status_N310 ( int value ); |
424 | int Tv_FactoryGet_FBC_Dream_Panel_Status_N310 ( void ); |
425 | int Tv_FactorySet_FBC_MULT_PQ_Status_N310 ( int value ); |
426 | int Tv_FactoryGet_FBC_MULT_PQ_Status_N310 ( void ); |
427 | int Tv_FactorySet_FBC_MEMC_Status_N310 ( int value ); |
428 | int Tv_FactoryGet_FBC_MEMC_Status_N310 ( void ); |
429 | int Tv_FactorySet_FBC_ColorTemp_Mode_N310( int mode ); |
430 | int Tv_FactoryGet_FBC_ColorTemp_Mode_N310 ( void ); |
431 | virtual int Tv_FactorySet_FBC_Backlight_N310 ( int value ); |
432 | virtual int Tv_FactoryGet_FBC_Backlight_N310 ( void ); |
433 | int Tv_FactorySet_FBC_Bluetooth_IIS_N310 ( int value ); |
434 | int Tv_FactoryGet_FBC_Bluetooth_IIS_N310 ( void ); |
435 | int Tv_FactorySet_FBC_Led_N310 ( int val_1, int val_2, int val_3 ); |
436 | int Tv_FactorySet_VbyOne_Spread_Spectrum_N311 ( int value ); |
437 | int Tv_FactoryGet_VbyOne_Spread_Spectrum_N311 ( void ); |
438 | int Tv_FactorySet_FBC_AP_STANDBY_N310 ( int value ); |
439 | int Tv_FactoryGet_FBC_AP_STANDBY_N310( void ); |
440 | int Tv_FactorySet_Uboot_Stage(int value); |
441 | //end TV TO FBC |
442 | |
443 | int Tv_SetTestPattern(int value); |
444 | int Tv_Set2k4k_ScalerUp_Mode ( int value ); |
445 | int Tv_Get2k4k_ScalerUp_Mode ( void ); |
446 | //audio |
447 | virtual int Tv_SetDRC_OnOff(int on_off); |
448 | virtual int Tv_GetDRC_OnOff(void); |
449 | virtual void updateSubtitle(int, int); |
450 | int setSubtitleBuffer(char *); |
451 | int initSubtitle(int, int) ; |
452 | int lockSubtitle(); |
453 | int unlockSubtitle(); |
454 | int getSubSwitchStatus(); |
455 | int startSubtitle(int dmx_id, int pid, int page_id, int anc_page_id) ; |
456 | int stopSubtitle() ; |
457 | |
458 | //audio |
459 | virtual void TvAudioOpen(); |
460 | virtual void AudioCtlUninit(); |
461 | virtual int SetAudioMuteForSystem(int muteOrUnmute); |
462 | virtual int GetAudioMuteForSystem(); |
463 | virtual int SetAudioMuteForTv(int muteOrUnmute); |
464 | virtual int GetAudioMuteForTv(); |
465 | virtual char *GetMainVolLutTableExtraName(); |
466 | virtual int SetDbxTvMode(int mode, int son_value, int vol_value, int sur_value); |
467 | virtual int GetDbxTvMode(int *mode, int *son_value, int *vol_value, int *sur_value); |
468 | int AudioHandleHeadsetPlugIn(); |
469 | int AudioHandleHeadsetPullOut(); |
470 | int SetAudioAVOutMute(int muteStatus); |
471 | int GetAudioAVOutMute(); |
472 | int SetAudioSPDIFMute(int muteStatus); |
473 | int GetAudioSPDIFMute(); |
474 | int SetDacMute(int muteStatus, int mute_type); |
475 | int SetAudioI2sMute(int); |
476 | int SetAudioMasterVolume(int tmp_vol); |
477 | int GetAudioMasterVolume(); |
478 | int SaveCurAudioMasterVolume(int tmp_vol); |
479 | int GetCurAudioMasterVolume(); |
480 | int SetAudioBalance(int tmp_val); |
481 | int GetAudioBalance(); |
482 | int SaveCurAudioBalance(int tmp_val); |
483 | int GetCurAudioBalance(); |
484 | int SetAudioSupperBassVolume(int tmp_vol); |
485 | int GetAudioSupperBassVolume(); |
486 | int SaveCurAudioSupperBassVolume(int tmp_vol); |
487 | int GetCurAudioSupperBassVolume(); |
488 | int SetAudioSupperBassSwitch(int tmp_val); |
489 | int GetAudioSupperBassSwitch(); |
490 | int SaveCurAudioSupperBassSwitch(int tmp_val); |
491 | int GetCurAudioSupperBassSwitch(); |
492 | int SetAudioSRSSurround(int tmp_val); |
493 | int GetAudioSRSSurround(); |
494 | int SaveCurAudioSrsSurround(int tmp_val); |
495 | int GetCurAudioSRSSurround(); |
496 | int SetAudioSrsDialogClarity(int tmp_val); |
497 | int GetAudioSrsDialogClarity(); |
498 | int SaveCurAudioSrsDialogClarity(int tmp_val); |
499 | int GetCurAudioSrsDialogClarity(); |
500 | int SetAudioSrsTruBass(int tmp_val); |
501 | int GetAudioSrsTruBass(); |
502 | int SaveCurAudioSrsTruBass(int tmp_val); |
503 | int GetCurAudioSrsTruBass(); |
504 | int SetAudioSPDIFSwitch(int tmp_val); |
505 | int GetCurAudioSPDIFSwitch(); |
506 | int SaveCurAudioSPDIFSwitch(int tmp_val); |
507 | |
508 | //Audio SPDIF Mode |
509 | int SetAudioSPDIFMode(int tmp_val); |
510 | int GetCurAudioSPDIFMode(); |
511 | int SaveCurAudioSPDIFMode(int tmp_val); |
512 | int SetAudioBassVolume(int tmp_vol); |
513 | int GetAudioBassVolume(); |
514 | int SaveCurAudioBassVolume(int tmp_vol); |
515 | int GetCurAudioBassVolume(); |
516 | int SetAudioTrebleVolume(int tmp_vol); |
517 | int GetAudioTrebleVolume(); |
518 | int SaveCurAudioTrebleVolume(int tmp_vol); |
519 | int GetCurAudioTrebleVolume(); |
520 | int SetAudioSoundMode(int tmp_val); |
521 | int GetAudioSoundMode(); |
522 | int SaveCurAudioSoundMode(int tmp_val); |
523 | int GetCurAudioSoundMode(); |
524 | int SetAudioWallEffect(int tmp_val); |
525 | int GetAudioWallEffect(); |
526 | int SaveCurAudioWallEffect(int tmp_val); |
527 | int GetCurAudioWallEffect(); |
528 | int SetAudioEQMode(int tmp_val); |
529 | int GetAudioEQMode(); |
530 | int SaveCurAudioEQMode(int tmp_val); |
531 | int GetCurAudioEQMode(); |
532 | int GetAudioEQRange(int range_buf[]); |
533 | int GetAudioEQBandCount(); |
534 | int SetAudioEQGain(int gain_buf[]); |
535 | int GetAudioEQGain(int gain_buf[]); |
536 | int GetCurAudioEQGain(int gain_buf[]); |
537 | int SaveCurAudioEQGain(int gain_buf[]); |
538 | int SetAudioEQSwitch(int switch_val); |
539 | int OpenAmAudio(unsigned int sr, int input_device, int output_device); |
540 | int CloseAmAudio(void); |
541 | int SetAmAudioInputSr(unsigned int sr, int output_device); |
542 | int SetAmAudioOutputMode(int mode); |
543 | int SetAmAudioMusicGain(int gain); |
544 | int SetAmAudioLeftGain(int gain); |
545 | int SetAmAudioRightGain(int gain); |
546 | int SetAudioVolumeCompensationVal(int tmp_vol_comp_val); |
547 | int AudioLineInSelectChannel(int audio_channel); |
548 | int AudioSetLineInCaptureVolume(int l_vol, int r_vol); |
549 | int SetKalaokIO(int level); |
550 | int setAudioPcmPlaybackVolume(int val); |
551 | |
552 | int openTvAudio(); |
553 | int closeTvAudio(); |
554 | |
555 | int InitTvAudio(int sr, int input_device); |
556 | int UnInitTvAudio(); |
557 | int AudioChangeSampleRate(int sr); |
558 | int AudioSetAudioInSource(int audio_src_in_type); |
559 | int AudioSetAudioSourceType(int source_type); |
560 | int AudioSSMRestoreDefaultSetting(); |
561 | int SetAudioDumpDataFlag(int tmp_flag); |
562 | int GetAudioDumpDataFlag(); |
563 | int SetAudioLeftRightMode(unsigned int mode); |
564 | unsigned int GetAudioLeftRightMode(); |
565 | int SwitchAVOutBypass (int); |
566 | int SetAudioSwitchIO(int value); |
567 | int SetOutput_Swap(int value); |
568 | int HanldeAudioInputSr(unsigned int); |
569 | void AudioSetVolumeDigitLUTBuf(int lut_sel_flag, int *MainVolLutBuf); |
570 | int SetADC_Digital_Capture_Volume(int value); |
571 | int SetPGA_IN_Value(int value); |
572 | int SetDAC_Digital_PlayBack_Volume(int value); |
573 | int InitSetTvAudioCard(); |
574 | int UnInitSetTvAudioCard(); |
575 | void RefreshSrsEffectAndDacGain(); |
576 | int SetCustomEQGain(); |
577 | int SetAtvInGain(int gain_val); |
578 | int GetHdmiAvHotplugDetectOnoff(); |
579 | private: |
580 | int SendCmdToOffBoardFBCExternalDac(int, int); |
581 | int LoadCurAudioSPDIFMode(); |
582 | int LoadCurAudioMasterVolume(); |
583 | int LoadCurAudioBalance(); |
584 | int LoadCurAudioSupperBassVolume(); |
585 | int LoadCurAudioSupperBassSwitch(); |
586 | int LoadCurAudioSrsSurround(); |
587 | int LoadCurAudioSrsDialogClarity(); |
588 | int LoadCurAudioSPDIFSwitch(); |
589 | void SetSupperBassSRSSpeakerSize(); |
590 | int LoadCurAudioSoundMode(); |
591 | int LoadCurAudioEQMode(); |
592 | int LoadCurAudioSrsTruBass(); |
593 | int RealSaveCurAudioBassVolume(int, int); |
594 | int LoadCurAudioBassVolume(); |
595 | int RealSaveCurAudioTrebleVolume(int, int); |
596 | int LoadCurAudioTrebleVolume(); |
597 | int HandleTrebleBassVolume(); |
598 | int LoadCurAudioWallEffect(); |
599 | int RealReadCurAudioEQGain(int *); |
600 | int RealSaveCurAudioEQGain(int *, int); |
601 | int LoadCurAudioEQGain(); |
602 | int MappingEQGain(int *, int *, int); |
603 | int RestoreToAudioDefEQGain(int *); |
604 | int GetCustomEQGain(int *); |
605 | int AudioSetEQGain(int *); |
606 | int handleEQGainBeforeSet(int *, int *); |
607 | int RealSetEQGain(int *); |
608 | int SetSpecialModeEQGain(int); |
609 | int SetSpecialIndexEQGain(int, int); |
610 | int SaveSpecialIndexEQGain(int, int); |
611 | void LoadAudioCtl(); |
612 | void InitSetAudioCtl(); |
613 | int GetBassUIMinGainVal(); |
614 | int GetBassUIMaxGainVal(); |
615 | int GetTrebleUIMinGainVal(); |
616 | int GetTrebleUIMaxGainVal(); |
617 | int MappingLine(int, int, int, int, int); |
618 | int MappingTrebleBassAndEqualizer(int, int, int, int); |
619 | int SetSPDIFMode(int mode_val); |
620 | |
621 | CAudioAlsa mAudioAlsa; |
622 | CAudioEffect mAudioEffect; |
623 | |
624 | CAudioCustomerCtrl mCustomerCtrl; |
625 | int mCurAudioMasterVolume; |
626 | int mCurAudioBalance; |
627 | int mCurAudioSupperBassVolume; |
628 | int mCurAudioSupperBassSwitch; |
629 | int mCurAudioSRSSurround; |
630 | int mCurAudioSrsDialogClarity; |
631 | int mCurAudioSrsTruBass; |
632 | int mCurAudioSPDIFSwitch; |
633 | int mCurAudioSPDIFMode; |
634 | int mCurAudioBassVolume; |
635 | int mCurAudioTrebleVolume; |
636 | int mCurAudioSoundMode; |
637 | int mCurAudioWallEffect; |
638 | int mCurAudioEQMode; |
639 | int mCustomAudioMasterVolume; |
640 | int mCustomAudioBalance; |
641 | int mCustomAudioSupperBassVolume; |
642 | int mCustomAudioSupperBassSwitch; |
643 | int mCustomAudioSRSSurround; |
644 | int mCustomAudioSrsDialogClarity; |
645 | int mCustomAudioSrsTruBass; |
646 | int mCustomAudioBassVolume; |
647 | int mCustomAudioTrebleVolume; |
648 | int mCustomAudioSoundMode; |
649 | int mCustomAudioWallEffect; |
650 | int mCustomAudioEQMode; |
651 | int mCustomAudioSoundEnhancementSwitch; |
652 | int mCustomEQGainBuf[CC_BAND_ITEM_CNT]; |
653 | int mCurEQGainBuf[CC_BAND_ITEM_CNT] ; |
654 | int8_t mCurEQGainChBuf[CC_BAND_ITEM_CNT]; |
655 | int mWallEffectValueBuf[CC_BAND_ITEM_CNT]; |
656 | int mVolumeCompensationVal; |
657 | int mMainVolumeBalanceVal; |
658 | //end audio |
659 | |
660 | protected: |
661 | class CTvMsgQueue: public CMsgQueueThread, public CAv::IObserver, public CTvScanner::IObserver , public CTvEpg::IObserver, public CFrontEnd::IObserver { |
662 | public: |
663 | static const int TV_MSG_COMMON = 0; |
664 | static const int TV_MSG_STOP_ANALYZE_TS = 1; |
665 | static const int TV_MSG_START_ANALYZE_TS = 2; |
666 | static const int TV_MSG_CHECK_FE_DELAY = 3; |
667 | static const int TV_MSG_AV_EVENT = 4; |
668 | static const int TV_MSG_FE_EVENT = 5; |
669 | static const int TV_MSG_SCAN_EVENT = 6; |
670 | static const int TV_MSG_EPG_EVENT = 7; |
671 | static const int TV_MSG_HDMI_SR_CHANGED = 8; |
672 | static const int TV_MSG_ENABLE_VIDEO_LATER = 9; |
673 | CTvMsgQueue(CTv *tv); |
674 | ~CTvMsgQueue(); |
675 | //scan observer |
676 | void onEvent ( const CTvScanner::ScannerEvent &ev ); |
677 | //epg observer |
678 | void onEvent ( const CTvEpg::EpgEvent &ev ); |
679 | //FE observer |
680 | void onEvent ( const CFrontEnd::FEEvent &ev ); |
681 | //AV |
682 | void onEvent(const CAv::AVEvent &ev); |
683 | private: |
684 | virtual void handleMessage ( CMessage &msg ); |
685 | CTv *mpTv; |
686 | }; |
687 | |
688 | class CTvDetectObserverForScanner: public CTvin::CTvinSigDetect::ISigDetectObserver { |
689 | public: |
690 | CTvDetectObserverForScanner(CTv *); |
691 | ~CTvDetectObserverForScanner() {}; |
692 | virtual void onSigToStable(); |
693 | virtual void onSigStableToUnstable(); |
694 | virtual void onSigStableToNoSig(); |
695 | virtual void onSigUnStableToNoSig(); |
696 | virtual void onSigStillStable(); |
697 | private: |
698 | CTv *mpTv; |
699 | int m_sig_stable_nums; |
700 | }; |
701 | void onEnableVideoLater(int framecount); |
702 | int resetDmxAndAvSource(); |
703 | int stopScan(); |
704 | int stopPlaying(); |
705 | void sendTvEvent ( const CTvEv &ev ); |
706 | int startPlayTv ( int source, int vid, int aid, int vfat, int afat ); |
707 | //scan observer |
708 | void onEvent ( const CTvScanner::ScannerEvent &ev ); |
709 | //epg observer |
710 | void onEvent ( const CTvEpg::EpgEvent &ev ); |
711 | //FE observer |
712 | void onEvent ( const CFrontEnd::FEEvent &ev ); |
713 | //AV |
714 | void onEvent(const CAv::AVEvent &ev); |
715 | bool Tv_Start_Analyze_Ts ( int channelID ); |
716 | bool Tv_Stop_Analyze_Ts(); |
717 | int Tvin_Stop ( void ); |
718 | int Tvin_GetTvinConfig(); |
719 | int Tv_init_audio(); |
720 | int Tv_MiscSetBySource ( tv_source_input_t ); |
721 | void print_version_info ( void ); |
722 | int dtvCleanProgramByFreq ( int freq ); |
723 | /*********************** Audio start **********************/ |
724 | int SetAudioVolDigitLUTTable ( tv_source_input_t source_input ); |
725 | virtual int Tv_SetAudioInSource (tv_source_input_t source_input); |
726 | void Tv_SetAudioOutputSwap_Type (tv_source_input_t source_input); |
727 | void Tv_ADCDigitalCapture_Volume (void); |
728 | void Tv_SetPGAIn_Gain (void); |
729 | void Tv_SetDACDigitalPlayBack_Volume (int audio_src_in_type); |
730 | void Tv_SetAVOutPut_Input_gain(tv_source_input_t source_input); |
731 | /*********************** Audio end **********************/ |
732 | |
733 | // |
734 | virtual void onSigToStable(); |
735 | virtual void onSigStableToUnstable(); |
736 | virtual void onSigStableToUnSupport(); |
737 | virtual void onSigStableToNoSig(); |
738 | virtual void onSigUnStableToUnSupport(); |
739 | virtual void onSigUnStableToNoSig(); |
740 | virtual void onSigNullToNoSig(); |
741 | virtual void onSigNoSigToUnstable(); |
742 | virtual void onSigStillStable(); |
743 | virtual void onSigStillUnstable(); |
744 | virtual void onSigStillNosig(); |
745 | virtual void onSigStillNoSupport(); |
746 | virtual void onSigStillNull(); |
747 | virtual void onStableSigFmtChange(); |
748 | virtual void onStableTransFmtChange(); |
749 | virtual void onSigDetectEnter(); |
750 | virtual void onSigDetectLoop(); |
751 | |
752 | virtual void onSourceConnect(int source_type, int connect_status); |
753 | virtual void onHDMIRxCECMessage(int msg_len, unsigned char msg_buf[]); |
754 | virtual void onUpgradeStatus(int status, int progress); |
755 | virtual void onSerialCommunication(int dev_id, int rd_len, unsigned char data_buf[]); |
756 | virtual void onThermalDetect(int state); |
757 | virtual void onVframeSizeChange(); |
758 | |
759 | CTvEpg mTvEpg; |
760 | CTvScanner mTvScanner; |
761 | mutable Mutex mLock; |
762 | CTvTime mTvTime; |
763 | CTvRecord mTvRec; |
764 | CFrontEnd mFrontDev; |
765 | CTvDimension mTvVchip; |
766 | CTvSubtitle mTvSub; |
767 | CAv mAv; |
768 | CTvDmx mTvDmx; |
769 | CTvMsgQueue mTvMsgQueue; |
770 | AutoBackLight mAutoBackLight; |
771 | CAutoPQparam mAutoPQparam; |
772 | CTvDetectObserverForScanner mTvScannerDetectObserver; |
773 | // |
774 | volatile int mTvAction; |
775 | volatile TvRunStatus_t mTvStatus; |
776 | volatile tv_source_input_t m_source_input; |
777 | volatile tv_source_input_t m_last_source_input; |
778 | /* for tvin window mode and pos*/ |
779 | tvin_window_pos_t m_win_pos; |
780 | tv_window_mode_t m_win_mode; |
781 | int m_blackout_enable;//1 enable 0 disable |
782 | int m_cur_playing_prog_id; |
783 | bool mHdmiOutFbc; |
784 | CFbcCommunication *fbcIns; |
785 | |
786 | |
787 | bool mlastlockstatus; |
788 | String8 mlastdm; |
789 | String8 mlastabbrev; |
790 | String8 mlastabbtext; |
791 | pthread_t vchipthread; |
792 | int mvchip_running; |
793 | friend class CTvMsgQueue; |
794 | int mCurAnalyzeTsChannelID; |
795 | TvIObserver *mpObserver; |
796 | tv_dtv_scan_running_status_t mDtvScanRunningStatus; |
797 | volatile tv_config_t gTvinConfig; |
798 | int dtv_auto_3d_flag; |
799 | bool mAutoSetDisplayFreq; |
800 | int m_sig_stable_nums; |
801 | bool mSetHdmiEdid; |
802 | /** for L/R or B/T 3d mode overscan **/ |
803 | /** for 3D **/ |
804 | VIDEO_3D_MODE_T m_mode_3d; |
805 | /** for HDMI-in sampling detection. **/ |
806 | int m_hdmi_sampling_rate; |
807 | int m_hdmi_audio_data; |
808 | /** for display mode to bottom **/ |
809 | int screen_mode; |
810 | |
811 | //audio mute |
812 | int mAudioMuteStatusForTv; |
813 | int mAudioMuteStatusForSystem; |
814 | char mMainVolLutTableExtraName[16]; |
815 | }; |
816 | |
817 | #endif //_CDTV_H |
818 |