blob: dc51590cb5377a82c945dfb182ba852156376122
1 | #include "CTvHaierDtmb360.h" |
2 | #include <cutils/properties.h> |
3 | int audio_device_switch = 1; |
4 | CTvHaierDtmb360::CTvHaierDtmb360() |
5 | { |
6 | mHeadSet.setObserver(this); |
7 | } |
8 | |
9 | CTvHaierDtmb360::~CTvHaierDtmb360() |
10 | { |
11 | |
12 | } |
13 | |
14 | int CTvHaierDtmb360::OpenTv ( void ) |
15 | { |
16 | CTv::OpenTv(); |
17 | const char *value = config_get_str ( "TV", "tvin.set.N360backlight.en", "null" ); |
18 | //add only for haier |
19 | if ( strcmp ( value, "enable" ) == 0 ) { |
20 | Tv_FactorySet_FBC_Backlight_N360(Tv_FactoryGet_FBC_Backlight_N360()); |
21 | Tv_FactorySet_FBC_ELEC_MODE(Tv_FactoryGet_FBC_ELEC_MODE()); |
22 | Tv_FactorySet_FBC_ColorTemp_Mode_N360(Tv_FactoryGet_FBC_ColorTemp_Mode_N360()); |
23 | } |
24 | return 0; |
25 | } |
26 | |
27 | int CTvHaierDtmb360::StartTvLock () |
28 | { |
29 | CTv::StartTvLock(); |
30 | const char *value; |
31 | value = config_get_str ( "TV", "tvin.2d4G.headset.en", "null" ); |
32 | if ( strcmp ( value, "enable" ) == 0 ) { |
33 | StartHeadSetDetect(); |
34 | property_set("audio.tv_open.flg", "1"); |
35 | } |
36 | return 0; |
37 | } |
38 | |
39 | int CTvHaierDtmb360::SetSourceSwitchInput (tv_source_input_t source_input ) |
40 | { |
41 | CTv::SetSourceSwitchInput(source_input); |
42 | |
43 | const char *config_value; |
44 | config_value = config_get_str("TV", "audio.switch.karaok.av.enable", "null"); |
45 | if (strtoul(config_value, NULL, 10) == 1) { |
46 | if ( source_input == SOURCE_AV1 || source_input == SOURCE_AV2 ) { |
47 | mTvAudio.SetAudioSwitchIO(0); |
48 | } else { |
49 | mTvAudio.SetAudioSwitchIO(1); |
50 | } |
51 | } |
52 | return 0; |
53 | } |
54 | |
55 | void CTvHaierDtmb360::onHeadSetDetect(int state, int para) |
56 | { |
57 | TvEvent::HeadSetOf2d4GEvent ev; |
58 | char prop[256]; |
59 | char prop1[256]; |
60 | ev.state = state; |
61 | ev.para = para; |
62 | if (state == 1) |
63 | property_set("audio.headset_plug.enable", "1"); |
64 | else |
65 | property_set("audio.headset_plug.enable", "0"); |
66 | LOGD ( "%s, %d", __FUNCTION__, __LINE__); |
67 | sendTvEvent(ev); |
68 | property_get("audio.tv_open.flg", prop, "null"); |
69 | property_get("audio.output.double_output", prop1, "null"); |
70 | if (audio_device_switch == state && (strcmp(prop, "1") == 0) |
71 | && (strcmp(prop1, "0") == 0 || strcmp(prop1, "null") == 0) |
72 | && (SOURCE_DTV != m_source_input)) { |
73 | mTvAudio.openTvAudio(audio_sr); |
74 | } |
75 | } |
76 | |
77 | |
78 | int CTvHaierDtmb360::StartHeadSetDetect() |
79 | { |
80 | mHeadSet.startDetect(); |
81 | |
82 | return 0; |
83 | } |
84 |