commit 9b57c5dd3e4d279982ccb7ae652f04011adfc467 Author: mygit Date: Mon Jan 20 12:04:20 2025 +0900 Initial Files diff --git a/config/.ash_history b/config/.ash_history new file mode 100644 index 0000000..8ad7234 --- /dev/null +++ b/config/.ash_history @@ -0,0 +1,35 @@ +tv_grab_file +vi tv_grab_file +vi tv_grab_file.sh +tv_grab_file.sh +ls -al tv_grab_file.sh +chmod 777 tv_grab_file.sh +ls -al tv_grab_file* +tv_grab_file.sh +vi tv_grab_file.sh +tv_grab_file.sh +/epg2xml/epg2xml.json run +ls -al tv_grab_file* +rm tv_grab_file.sh +cd /epg2xml +ls +epg2xml.json run +epg2xml run +ls +vi epg2xml.sh +epg2xml.sh +ls +ls -al +./epg2xml.sh +bash epg2xml.sh +vi epg2xml.sh +epg2xml.sh +./epg2xml.sh +cd /usr/bin +ls +ls tv_grab_* +tv_grab_file +ls +vi tv_grab_file +r v +vi tv_grab_file diff --git a/config/.bash_history b/config/.bash_history new file mode 100644 index 0000000..fbd3609 --- /dev/null +++ b/config/.bash_history @@ -0,0 +1,11 @@ +ls +cd / +ls +cd /recordings +ls +cd .. +ls +cd lib +cd /recordings/ +ls +exit diff --git a/config/.cache/pip/http/1/8/e/e/a/18eea207de73c88bb45229bed4bcc74fbcbddadf2aa9f49e4df1f66a b/config/.cache/pip/http/1/8/e/e/a/18eea207de73c88bb45229bed4bcc74fbcbddadf2aa9f49e4df1f66a new file mode 100644 index 0000000..35b4381 Binary files /dev/null and b/config/.cache/pip/http/1/8/e/e/a/18eea207de73c88bb45229bed4bcc74fbcbddadf2aa9f49e4df1f66a differ diff --git a/config/.cache/pip/http/a/1/9/5/3/a19537d3cf37c122db841d6fe4cd322bc10d1a558bb00d146b85cb9a b/config/.cache/pip/http/a/1/9/5/3/a19537d3cf37c122db841d6fe4cd322bc10d1a558bb00d146b85cb9a new file mode 100644 index 0000000..f575e13 Binary files /dev/null and b/config/.cache/pip/http/a/1/9/5/3/a19537d3cf37c122db841d6fe4cd322bc10d1a558bb00d146b85cb9a differ diff --git a/config/.cache/pip/http/d/3/3/a/b/d33abf9ad709d023fff05902f39da682c1afb233bcd9f2c479487586 b/config/.cache/pip/http/d/3/3/a/b/d33abf9ad709d023fff05902f39da682c1afb233bcd9f2c479487586 new file mode 100644 index 0000000..a986f12 Binary files /dev/null and b/config/.cache/pip/http/d/3/3/a/b/d33abf9ad709d023fff05902f39da682c1afb233bcd9f2c479487586 differ diff --git a/config/.cache/pip/selfcheck/241e69162522ccf5846a2f42ebc24b17464915a155679666b89a9f31 b/config/.cache/pip/selfcheck/241e69162522ccf5846a2f42ebc24b17464915a155679666b89a9f31 new file mode 100644 index 0000000..ac94a57 --- /dev/null +++ b/config/.cache/pip/selfcheck/241e69162522ccf5846a2f42ebc24b17464915a155679666b89a9f31 @@ -0,0 +1 @@ +{"key":"/usr","last_check":"2024-04-07T10:42:38Z","pypi_version":"24.0"} \ No newline at end of file diff --git a/config/.gitconfig b/config/.gitconfig new file mode 100644 index 0000000..f726513 --- /dev/null +++ b/config/.gitconfig @@ -0,0 +1,2 @@ +[safe] + directory = /gitData diff --git a/config/.lesshst b/config/.lesshst new file mode 100644 index 0000000..4d1c30b --- /dev/null +++ b/config/.lesshst @@ -0,0 +1 @@ +.less-history-file: diff --git a/config/.lock b/config/.lock new file mode 100644 index 0000000..11d10b1 --- /dev/null +++ b/config/.lock @@ -0,0 +1,2 @@ + 138 + diff --git a/config/.python_history b/config/.python_history new file mode 100644 index 0000000..bca70f3 --- /dev/null +++ b/config/.python_history @@ -0,0 +1 @@ +q diff --git a/config/accesscontrol/5bc885b33eef9fc9071e9db3a6e3daf8 b/config/accesscontrol/5bc885b33eef9fc9071e9db3a6e3daf8 new file mode 100644 index 0000000..e656e8f --- /dev/null +++ b/config/accesscontrol/5bc885b33eef9fc9071e9db3a6e3daf8 @@ -0,0 +1,46 @@ +{ + "index": 1, + "enabled": true, + "username": "tvuser01", + "prefix": "0.0.0.0/0,::/0", + "change": [ + "change_rights", + "change_chrange", + "change_chtags", + "change_dvr_configs", + "change_profiles", + "change_conn_limit", + "change_lang", + "change_lang_ui", + "change_theme", + "change_uilevel" + ], + "uilevel": 0, + "uilevel_nochange": 0, + "lang": "kor", + "langui": "kor", + "streaming": [ + "htsp" + ], + "profile": [ + ], + "dvr": [ + "htsp", + "all", + "failed" + ], + "htsp_anonymize": false, + "dvr_config": [ + ], + "webui": true, + "admin": false, + "conn_limit_type": 0, + "conn_limit": 0, + "channel_min": 0, + "channel_max": 0, + "channel_tag_exclude": false, + "channel_tag": [ + ], + "comment": "New entry", + "wizard": false +} diff --git a/config/accesscontrol/6f75e7a27847b55d0cee705765c91546 b/config/accesscontrol/6f75e7a27847b55d0cee705765c91546 new file mode 100644 index 0000000..bc831f9 --- /dev/null +++ b/config/accesscontrol/6f75e7a27847b55d0cee705765c91546 @@ -0,0 +1,51 @@ +{ + "index": 2, + "enabled": true, + "username": "myadmin", + "prefix": "0.0.0.0/0,::/0", + "change": [ + "change_rights", + "change_chrange", + "change_chtags", + "change_dvr_configs", + "change_profiles", + "change_conn_limit", + "change_lang", + "change_lang_ui", + "change_theme", + "change_uilevel" + ], + "uilevel": 2, + "uilevel_nochange": -1, + "lang": "kor", + "langui": "kor", + "streaming": [ + "basic", + "advanced", + "htsp" + ], + "profile": [ + ], + "dvr": [ + "basic", + "htsp", + "all", + "all_rw", + "failed" + ], + "htsp_anonymize": false, + "dvr_config": [ + "7a5edfbe189851e5b1d1df19c93962f0" + ], + "webui": true, + "admin": true, + "conn_limit_type": 0, + "conn_limit": 0, + "channel_min": 0, + "channel_max": 0, + "channel_tag_exclude": false, + "channel_tag": [ + ], + "comment": "New entry", + "wizard": false +} diff --git a/config/accesscontrol/d3a0a72b02ddcbf25a184d46359ded52 b/config/accesscontrol/d3a0a72b02ddcbf25a184d46359ded52 new file mode 100644 index 0000000..d46b9d2 --- /dev/null +++ b/config/accesscontrol/d3a0a72b02ddcbf25a184d46359ded52 @@ -0,0 +1,39 @@ +{ + "index": 3, + "enabled": false, + "username": "*", + "prefix": "0.0.0.0/0,::/0", + "change": [ + "change_rights" + ], + "uilevel": -1, + "uilevel_nochange": -1, + "streaming": [ + "basic", + "advanced", + "htsp" + ], + "profile": [ + ], + "dvr": [ + "basic", + "htsp", + "all", + "all_rw", + "failed" + ], + "htsp_anonymize": false, + "dvr_config": [ + ], + "webui": true, + "admin": true, + "conn_limit_type": 0, + "conn_limit": 0, + "channel_min": 0, + "channel_max": 0, + "channel_tag_exclude": false, + "channel_tag": [ + ], + "comment": "Default access entry", + "wizard": false +} diff --git a/config/backup/unknown.tar.bz2 b/config/backup/unknown.tar.bz2 new file mode 100644 index 0000000..bfe7154 Binary files /dev/null and b/config/backup/unknown.tar.bz2 differ diff --git a/config/bouquet/05e489ac717dba61f48aac572e94e4e9 b/config/bouquet/05e489ac717dba61f48aac572e94e4e9 new file mode 100644 index 0000000..c189b68 --- /dev/null +++ b/config/bouquet/05e489ac717dba61f48aac572e94e4e9 @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TéléSAT SD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,920", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/1920b4240828feb52901d0d0aeff6cee b/config/bouquet/1920b4240828feb52901d0d0aeff6cee new file mode 100644 index 0000000..a448f60 --- /dev/null +++ b/config/bouquet/1920b4240828feb52901d0d0aeff6cee @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "AustriaSat Astra1", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,950", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/25f85e7c66bd3382a2a6625ce429d9dd b/config/bouquet/25f85e7c66bd3382a2a6625ce429d9dd new file mode 100644 index 0000000..89204b2 --- /dev/null +++ b/config/bouquet/25f85e7c66bd3382a2a6625ce429d9dd @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TéléSAT HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S2,23.5E,12187000,H,27500000,921", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/6324b9c1a98b628b6d034148bc31230f b/config/bouquet/6324b9c1a98b628b6d034148bc31230f new file mode 100644 index 0000000..819cd7f --- /dev/null +++ b/config/bouquet/6324b9c1a98b628b6d034148bc31230f @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "Skylink: Slovak Republic", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,23.5E,12070000,H,27500000,31", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/7c5e52edafedbff03db7bda11ae89fd6 b/config/bouquet/7c5e52edafedbff03db7bda11ae89fd6 new file mode 100644 index 0000000..60fd9e2 --- /dev/null +++ b/config/bouquet/7c5e52edafedbff03db7bda11ae89fd6 @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "AustriaSat Astra3", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S2,23.5E,12187000,H,27500000,950", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/7cc90bd59e67c2b53c0819bb5c416a01 b/config/bouquet/7cc90bd59e67c2b53c0819bb5c416a01 new file mode 100644 index 0000000..9d67382 --- /dev/null +++ b/config/bouquet/7cc90bd59e67c2b53c0819bb5c416a01 @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TV Vlaanderen SD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,910", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/a9739043d393e324edae9f6fcb20c60a b/config/bouquet/a9739043d393e324edae9f6fcb20c60a new file mode 100644 index 0000000..e4d0ffa --- /dev/null +++ b/config/bouquet/a9739043d393e324edae9f6fcb20c60a @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "Skylink: Czech Republic", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,23.5E,12070000,H,27500000,30", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/b550f36c3cb6d229725fb1091ccaaf2d b/config/bouquet/b550f36c3cb6d229725fb1091ccaaf2d new file mode 100644 index 0000000..9f38baa --- /dev/null +++ b/config/bouquet/b550f36c3cb6d229725fb1091ccaaf2d @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "Canal Digitaal HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,23.5E,12070000,H,27500000,901", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/b9b6ec95a576038b7446b6f8fd472fe0 b/config/bouquet/b9b6ec95a576038b7446b6f8fd472fe0 new file mode 100644 index 0000000..1dae227 --- /dev/null +++ b/config/bouquet/b9b6ec95a576038b7446b6f8fd472fe0 @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TéléSAT HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,921", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/c01c3206cbaf283f0ed44be2586d188b b/config/bouquet/c01c3206cbaf283f0ed44be2586d188b new file mode 100644 index 0000000..8ad1c0e --- /dev/null +++ b/config/bouquet/c01c3206cbaf283f0ed44be2586d188b @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TV Vlaanderen HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,911", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/dac945b6e4ec5a79f044f7b2d831ba0d b/config/bouquet/dac945b6e4ec5a79f044f7b2d831ba0d new file mode 100644 index 0000000..22c843d --- /dev/null +++ b/config/bouquet/dac945b6e4ec5a79f044f7b2d831ba0d @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "TV Vlaanderen HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,23.5E,12070000,H,27500000,911", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/de068cf2dd1e505ea625dcbd4e7622fc b/config/bouquet/de068cf2dd1e505ea625dcbd4e7622fc new file mode 100644 index 0000000..f9f38cc --- /dev/null +++ b/config/bouquet/de068cf2dd1e505ea625dcbd4e7622fc @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "Canal Digitaal SD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,900", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/bouquet/ed1bf9d25ec8d7d0fc78dfb31c3cc09a b/config/bouquet/ed1bf9d25ec8d7d0fc78dfb31c3cc09a new file mode 100644 index 0000000..abfe32f --- /dev/null +++ b/config/bouquet/ed1bf9d25ec8d7d0fc78dfb31c3cc09a @@ -0,0 +1,21 @@ +{ + "enabled": false, + "maptoch": true, + "mapopt": [ + "mapradio", + "encrypted" + ], + "chtag": [ + "bouquet_tag" + ], + "chtag_ref": "", + "name": "Canal Digitaal HD", + "ssl_peer_verify": false, + "ext_url_period": 60, + "source": "dvb-fastscan://DVB-S,19.2E,12515000,H,22000000,901", + "services": { + }, + "services_seen": 0, + "lcn_off": 0, + "shield": true +} diff --git a/config/channel/config/01863416c0c6ed6aa93839fcef87dc3c b/config/channel/config/01863416c0c6ed6aa93839fcef87dc3c new file mode 100644 index 0000000..b86a17a --- /dev/null +++ b/config/channel/config/01863416c0c6ed6aa93839fcef87dc3c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "STORYTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e751a928a9839e1859d2fee8707fd828" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/020dc2626311486a8319ab4879e50b64 b/config/channel/config/020dc2626311486a8319ab4879e50b64 new file mode 100644 index 0000000..fda37f2 --- /dev/null +++ b/config/channel/config/020dc2626311486a8319ab4879e50b64 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "IB SPORTS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "450c9f6083e5a384e9e296042423f12d" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/0362214a5c86921a5478fc27c1dfef11 b/config/channel/config/0362214a5c86921a5478fc27c1dfef11 new file mode 100644 index 0000000..71ad2e8 --- /dev/null +++ b/config/channel/config/0362214a5c86921a5478fc27c1dfef11 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널차이나", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c38fe6bc081dac839561521b0b621340" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/04d6f07bd33f0d4918fcabbfa329050c b/config/channel/config/04d6f07bd33f0d4918fcabbfa329050c new file mode 100644 index 0000000..7468e32 --- /dev/null +++ b/config/channel/config/04d6f07bd33f0d4918fcabbfa329050c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "YTN 사이언스", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "88df9a6366f59a03b1d8dae44d671552" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/0748bdd2a3029ddc8416de1f3a16180d b/config/channel/config/0748bdd2a3029ddc8416de1f3a16180d new file mode 100644 index 0000000..f00ce97 --- /dev/null +++ b/config/channel/config/0748bdd2a3029ddc8416de1f3a16180d @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC M", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d6760cddd4e5b4ee717fc07f28dad7a6" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/07e58c81c94cdbe000b6e1b209086943 b/config/channel/config/07e58c81c94cdbe000b6e1b209086943 new file mode 100644 index 0000000..42fe2d3 --- /dev/null +++ b/config/channel/config/07e58c81c94cdbe000b6e1b209086943 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "BTN불교TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c5b9e3b657695fcc848ee2534202988e" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/08bf9908cf1e328ec745f2629eee08f5 b/config/channel/config/08bf9908cf1e328ec745f2629eee08f5 new file mode 100644 index 0000000..1a5663b --- /dev/null +++ b/config/channel/config/08bf9908cf1e328ec745f2629eee08f5 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CJ ONSTYLE+", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "51e34d7cc00040b259d7f595865be963" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/0a9e50dee0a0df834fe5d465c1f25ace b/config/channel/config/0a9e50dee0a0df834fe5d465c1f25ace new file mode 100644 index 0000000..e467e42 --- /dev/null +++ b/config/channel/config/0a9e50dee0a0df834fe5d465c1f25ace @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "리빙TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "2a1a1273653ff276b3faa3843661be6b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/0f2e27aaa37f05c085cd669a4c5e573b b/config/channel/config/0f2e27aaa37f05c085cd669a4c5e573b new file mode 100644 index 0000000..8cebcf9 --- /dev/null +++ b/config/channel/config/0f2e27aaa37f05c085cd669a4c5e573b @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "7f7ee6f3937bfdc9f07ec24eb782f5ea" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "3606e82f0ac1adb388bc5449147357a2", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/11d2171b1abf4edb90f7d9948e0363f7 b/config/channel/config/11d2171b1abf4edb90f7d9948e0363f7 new file mode 100644 index 0000000..5872d02 --- /dev/null +++ b/config/channel/config/11d2171b1abf4edb90f7d9948e0363f7 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "NS Shop+", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "5c157e238b8e1448ccce490f304f3f59" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/14776221f3eac0ef32596a196df9837d b/config/channel/config/14776221f3eac0ef32596a196df9837d new file mode 100644 index 0000000..502b87c --- /dev/null +++ b/config/channel/config/14776221f3eac0ef32596a196df9837d @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "국회방송", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "f483437be8ac40044c97f6f876732fd5" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/17c47a4a21bea0be80d5b94802b077a2 b/config/channel/config/17c47a4a21bea0be80d5b94802b077a2 new file mode 100644 index 0000000..00274b4 --- /dev/null +++ b/config/channel/config/17c47a4a21bea0be80d5b94802b077a2 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "981e24e0eae846db64df6bf557924f27" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "3606e82f0ac1adb388bc5449147357a2", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/17ec2b1e66dffea6052fdd985a51370a b/config/channel/config/17ec2b1e66dffea6052fdd985a51370a new file mode 100644 index 0000000..ed63967 --- /dev/null +++ b/config/channel/config/17ec2b1e66dffea6052fdd985a51370a @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "FUN TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d60f302503c244edc97252689fb411d4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/184efc46acb81b9241c134cd367d6fa2 b/config/channel/config/184efc46acb81b9241c134cd367d6fa2 new file mode 100644 index 0000000..1f46208 --- /dev/null +++ b/config/channel/config/184efc46acb81b9241c134cd367d6fa2 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "중화TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "584fc84be01e0ef6bd6b0e7bd5787ebd" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/194d1550978e646d73f57f8fb11501f3 b/config/channel/config/194d1550978e646d73f57f8fb11501f3 new file mode 100644 index 0000000..79e88b1 --- /dev/null +++ b/config/channel/config/194d1550978e646d73f57f8fb11501f3 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CMCTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "54f9cc4a247bcce67fde1c243f68f144" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/1ef969431a1fe2907b253d4ebafae048 b/config/channel/config/1ef969431a1fe2907b253d4ebafae048 new file mode 100644 index 0000000..4155cc1 --- /dev/null +++ b/config/channel/config/1ef969431a1fe2907b253d4ebafae048 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "쇼핑엔티", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "7d915914ff7cad43732acfcf2c4e7302" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/21f0a2be06d297795978ce04e44e0834 b/config/channel/config/21f0a2be06d297795978ce04e44e0834 new file mode 100644 index 0000000..4badca4 --- /dev/null +++ b/config/channel/config/21f0a2be06d297795978ce04e44e0834 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "Dramax", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e12c540ec05586e54e1a7c2659766418" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/29943faff11e1b9b03cec87c3db3257b b/config/channel/config/29943faff11e1b9b03cec87c3db3257b new file mode 100644 index 0000000..3718fcf --- /dev/null +++ b/config/channel/config/29943faff11e1b9b03cec87c3db3257b @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC ON", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "0a759ae2c93cc866ba4081b4ad0fe63c" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/2b41c20f215fa135905a94b07a206762 b/config/channel/config/2b41c20f215fa135905a94b07a206762 new file mode 100644 index 0000000..a2b637d --- /dev/null +++ b/config/channel/config/2b41c20f215fa135905a94b07a206762 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "엑스원", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "0f670a8895ea73fc17eb0bba9cae8498" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/2b683c6f123f893cd4ba50e90eead057 b/config/channel/config/2b683c6f123f893cd4ba50e90eead057 new file mode 100644 index 0000000..f87a9c5 --- /dev/null +++ b/config/channel/config/2b683c6f123f893cd4ba50e90eead057 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "AXN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "9b37bc09273d2fbeeb745776f27154ee" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/2ed2d30a2ab682f07a9c3923946dfbed b/config/channel/config/2ed2d30a2ab682f07a9c3923946dfbed new file mode 100644 index 0000000..629b506 --- /dev/null +++ b/config/channel/config/2ed2d30a2ab682f07a9c3923946dfbed @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "mplex", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "a0835b34d0193f378318e8f0e6dea792" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/32634fc85b5e2c9906f49a29b651e61e b/config/channel/config/32634fc85b5e2c9906f49a29b651e61e new file mode 100644 index 0000000..f5ccda9 --- /dev/null +++ b/config/channel/config/32634fc85b5e2c9906f49a29b651e61e @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "ENA PLAY", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e0adc263bac08ffe5f6b01204c588d6a" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/33f9cd156b74e3dd8f5bb41abc329781 b/config/channel/config/33f9cd156b74e3dd8f5bb41abc329781 new file mode 100644 index 0000000..6436ce9 --- /dev/null +++ b/config/channel/config/33f9cd156b74e3dd8f5bb41abc329781 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS N Sports", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "1a11d2b3ce96f184c0d5aaac1570508e" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/3523848f94eac40f3edd7088ce0de684 b/config/channel/config/3523848f94eac40f3edd7088ce0de684 new file mode 100644 index 0000000..2b38c81 --- /dev/null +++ b/config/channel/config/3523848f94eac40f3edd7088ce0de684 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SK stoa", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "648624ab0e49b3f6dee7dc4bd5ffc509" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/363bdf6f2867dd7eb6d9af5b62581d97 b/config/channel/config/363bdf6f2867dd7eb6d9af5b62581d97 new file mode 100644 index 0000000..1215d72 --- /dev/null +++ b/config/channel/config/363bdf6f2867dd7eb6d9af5b62581d97 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SBS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "ea69fa47b615ae4c35afe447b3c63918" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/39b0b4b702211b8eea20103e4f692666 b/config/channel/config/39b0b4b702211b8eea20103e4f692666 new file mode 100644 index 0000000..c892877 --- /dev/null +++ b/config/channel/config/39b0b4b702211b8eea20103e4f692666 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "ENA DRAMA", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "ae825b65f7b0d8bd1fa6de85ccb052a8" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/3a10972ca19c5da68a54ea2a2948c5af b/config/channel/config/3a10972ca19c5da68a54ea2a2948c5af new file mode 100644 index 0000000..a98ef56 --- /dev/null +++ b/config/channel/config/3a10972ca19c5da68a54ea2a2948c5af @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "EBS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "3e2a6470cbea7c56e03f943610a3a032" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/3bc545adc242d8d81402c46da95d2b94 b/config/channel/config/3bc545adc242d8d81402c46da95d2b94 new file mode 100644 index 0000000..215fb01 --- /dev/null +++ b/config/channel/config/3bc545adc242d8d81402c46da95d2b94 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d5740429fc50b14cac8dd280c5af8e9a" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/3d68c678afe638605a91913dbaf6bacc b/config/channel/config/3d68c678afe638605a91913dbaf6bacc new file mode 100644 index 0000000..427e6a8 --- /dev/null +++ b/config/channel/config/3d68c678afe638605a91913dbaf6bacc @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "연합뉴스TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "5b09848341942c7a980a3c1a56772846" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/409bd9620a8448b5e4441fd33196fcc0 b/config/channel/config/409bd9620a8448b5e4441fd33196fcc0 new file mode 100644 index 0000000..93ee28b --- /dev/null +++ b/config/channel/config/409bd9620a8448b5e4441fd33196fcc0 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "EBS2", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d50ee84f728eb3f2f2f7bcddd7abeb89" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/46cdb0e952f81b94da49d19cc387f6ca b/config/channel/config/46cdb0e952f81b94da49d19cc387f6ca new file mode 100644 index 0000000..c7eb328 --- /dev/null +++ b/config/channel/config/46cdb0e952f81b94da49d19cc387f6ca @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "NS홈쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "9210d03208901c6895911fa114c4fd8c" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/47248ca05f2307d05a7827913e4a67ba b/config/channel/config/47248ca05f2307d05a7827913e4a67ba new file mode 100644 index 0000000..751f22e --- /dev/null +++ b/config/channel/config/47248ca05f2307d05a7827913e4a67ba @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS Kids", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "bd68da5070d9610db49116e553869f84" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/4b820008140aecd9d865d850c2efe2fb b/config/channel/config/4b820008140aecd9d865d850c2efe2fb new file mode 100644 index 0000000..6a61d27 --- /dev/null +++ b/config/channel/config/4b820008140aecd9d865d850c2efe2fb @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "tvN DRAMA", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "9c4b99bb7788dda2cd0cf01da64ac622" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/4f20ddc1c7690198d0083ad4fc2846a3 b/config/channel/config/4f20ddc1c7690198d0083ad4fc2846a3 new file mode 100644 index 0000000..d78aecd --- /dev/null +++ b/config/channel/config/4f20ddc1c7690198d0083ad4fc2846a3 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SBS funE", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d8a24b09b77380e719b836515b1dd92c" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/521a0f10676c95418bf2f4f43dda5c2d b/config/channel/config/521a0f10676c95418bf2f4f43dda5c2d new file mode 100644 index 0000000..d03eeaa --- /dev/null +++ b/config/channel/config/521a0f10676c95418bf2f4f43dda5c2d @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널나우", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "93a7a271523b02b82e89a0549f47a378" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/56652486d16770606d7aced49566bc93 b/config/channel/config/56652486d16770606d7aced49566bc93 new file mode 100644 index 0000000..0fb4bc6 --- /dev/null +++ b/config/channel/config/56652486d16770606d7aced49566bc93 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBN Plus", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c2e4a1d9ae47880583ae8cad5c4b0b05" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/5a47e2ed1a542230f86cca25e3290cc7 b/config/channel/config/5a47e2ed1a542230f86cca25e3290cc7 new file mode 100644 index 0000000..e295f55 --- /dev/null +++ b/config/channel/config/5a47e2ed1a542230f86cca25e3290cc7 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "스마일티브이플러스", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "38dad8fdbec24f28f4e27532e23944a1" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/5bf2392e1effd6b651082730d491987e b/config/channel/config/5bf2392e1effd6b651082730d491987e new file mode 100644 index 0000000..f0cc620 --- /dev/null +++ b/config/channel/config/5bf2392e1effd6b651082730d491987e @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "현대홈쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "07092ed4200ea24d0f649f36b8df19f4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/5e0a4ccfb7a83c79d87c0ce1554ebbb6 b/config/channel/config/5e0a4ccfb7a83c79d87c0ce1554ebbb6 new file mode 100644 index 0000000..76885dc --- /dev/null +++ b/config/channel/config/5e0a4ccfb7a83c79d87c0ce1554ebbb6 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CJ ONSTYLE", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "240ecc3c1e3ddf3983476b1aa93e1919" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/6119b8dfdab0ac99abae5b7a1e70d22c b/config/channel/config/6119b8dfdab0ac99abae5b7a1e70d22c new file mode 100644 index 0000000..ae4572f --- /dev/null +++ b/config/channel/config/6119b8dfdab0ac99abae5b7a1e70d22c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "홈&쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "ba1074029e9d3022d8c8c8e386b7549a" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/67883947d2d2b106c77e823f3edf1f42 b/config/channel/config/67883947d2d2b106c77e823f3edf1f42 new file mode 100644 index 0000000..a70a5ee --- /dev/null +++ b/config/channel/config/67883947d2d2b106c77e823f3edf1f42 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "신세계쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "757abb8e1967dcc53978dadaa0293739" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/679b87518bf8ebd3cb1a95f64e49dceb b/config/channel/config/679b87518bf8ebd3cb1a95f64e49dceb new file mode 100644 index 0000000..24eb1e5 --- /dev/null +++ b/config/channel/config/679b87518bf8ebd3cb1a95f64e49dceb @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "ENA", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "5593d5dd3cbde48de81be49c1abb023b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/68c6621339bc98ee027ffa8e6d54efe1 b/config/channel/config/68c6621339bc98ee027ffa8e6d54efe1 new file mode 100644 index 0000000..2cd0b50 --- /dev/null +++ b/config/channel/config/68c6621339bc98ee027ffa8e6d54efe1 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "애니박스", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "79ae5cac97c7132da9d408d56e5ed116" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/6e3a8ce185d298f86ac11a661fa02537 b/config/channel/config/6e3a8ce185d298f86ac11a661fa02537 new file mode 100644 index 0000000..5d99a47 --- /dev/null +++ b/config/channel/config/6e3a8ce185d298f86ac11a661fa02537 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "아이넷라이프", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "f61beafbdfbdd41faed1fceb68c02039" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/6f148b7cf294ad76830cbce001c18d68 b/config/channel/config/6f148b7cf294ad76830cbce001c18d68 new file mode 100644 index 0000000..3c1e778 --- /dev/null +++ b/config/channel/config/6f148b7cf294ad76830cbce001c18d68 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "700d47cb1cacfd4088fb58ee184d9c3e" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "8d5c762518a855c7e872929cfad4fcbd", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/71865f90c68f3c07e8d1586ace979276 b/config/channel/config/71865f90c68f3c07e8d1586ace979276 new file mode 100644 index 0000000..759d3a5 --- /dev/null +++ b/config/channel/config/71865f90c68f3c07e8d1586ace979276 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SBS Biz", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e9a5311d5ca83cd96fae1e69e8df3ac4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/72fab9ae79a993f18bd6b23a5054c0af b/config/channel/config/72fab9ae79a993f18bd6b23a5054c0af new file mode 100644 index 0000000..25d6cf7 --- /dev/null +++ b/config/channel/config/72fab9ae79a993f18bd6b23a5054c0af @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "복지TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "4c798f22e05e8601f3b241b8b469538d" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/734ba51135b4bc72f3ea44a3c55ab83c b/config/channel/config/734ba51135b4bc72f3ea44a3c55ab83c new file mode 100644 index 0000000..33ebce6 --- /dev/null +++ b/config/channel/config/734ba51135b4bc72f3ea44a3c55ab83c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CTS기독교TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "59838fedba6e090a7a79fd515221c8eb" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/74efd1df55fe97c5d23b4923e973370a b/config/channel/config/74efd1df55fe97c5d23b4923e973370a new file mode 100644 index 0000000..b86db36 --- /dev/null +++ b/config/channel/config/74efd1df55fe97c5d23b4923e973370a @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "TVasiaPlus", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "11d43e4fe9ee7ae3846cfc7b0f07b537" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/7524f5fda910408ceb38138c08f947d6 b/config/channel/config/7524f5fda910408ceb38138c08f947d6 new file mode 100644 index 0000000..afbbabf --- /dev/null +++ b/config/channel/config/7524f5fda910408ceb38138c08f947d6 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "GTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "1290bf57966924089afaca80197b55fe" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/7ca088c8a17ec7907c0ef4e0c9da2ab1 b/config/channel/config/7ca088c8a17ec7907c0ef4e0c9da2ab1 new file mode 100644 index 0000000..2a09d3c --- /dev/null +++ b/config/channel/config/7ca088c8a17ec7907c0ef4e0c9da2ab1 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "롯데홈쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "eb35b721e845075a30a21d6ed3b88598" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/7d2c7871d8782830b02e46abb9b59916 b/config/channel/config/7d2c7871d8782830b02e46abb9b59916 new file mode 100644 index 0000000..e72cf01 --- /dev/null +++ b/config/channel/config/7d2c7871d8782830b02e46abb9b59916 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "디원", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "59cb55e5f72a535ca1afa4fe1530178b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/7fc098439bb3cd2c5d0be207c491a0a0 b/config/channel/config/7fc098439bb3cd2c5d0be207c491a0a0 new file mode 100644 index 0000000..8921c46 --- /dev/null +++ b/config/channel/config/7fc098439bb3cd2c5d0be207c491a0a0 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "OCN Movies", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b53018f6982897846490de8a9373c51b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/80e14092fd0c90acfd648f83f979ca06 b/config/channel/config/80e14092fd0c90acfd648f83f979ca06 new file mode 100644 index 0000000..9ec1368 --- /dev/null +++ b/config/channel/config/80e14092fd0c90acfd648f83f979ca06 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "현대홈쇼핑+샵", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b010aae9798f6404485facc26f857be1" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/827c0ddf6d7922fdd9e26ea0c5c7f7ed b/config/channel/config/827c0ddf6d7922fdd9e26ea0c5c7f7ed new file mode 100644 index 0000000..f82fa8a --- /dev/null +++ b/config/channel/config/827c0ddf6d7922fdd9e26ea0c5c7f7ed @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC SPORTS+", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "8e5b0ced48515c9312342f6b07f2d9b5" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/82bfadadf1dd6611030f90d71764cbb1 b/config/channel/config/82bfadadf1dd6611030f90d71764cbb1 new file mode 100644 index 0000000..b719960 --- /dev/null +++ b/config/channel/config/82bfadadf1dd6611030f90d71764cbb1 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "TV조선", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "2e4a95b9d6d38910d377726b84720cc1" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/835d17c88af6a88ae869546d19940584 b/config/channel/config/835d17c88af6a88ae869546d19940584 new file mode 100644 index 0000000..755e6b8 --- /dev/null +++ b/config/channel/config/835d17c88af6a88ae869546d19940584 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "ENA STORY", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b919192ed13040f4b38187dda4cc2cff" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/83801d93e444b41265b6dc0f40f3eff9 b/config/channel/config/83801d93e444b41265b6dc0f40f3eff9 new file mode 100644 index 0000000..fa71a71 --- /dev/null +++ b/config/channel/config/83801d93e444b41265b6dc0f40f3eff9 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "OUN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "50bfb5b1467923d0ddb0386178cbd955" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/85f33c6596766c7ae7e46da4286aeceb b/config/channel/config/85f33c6596766c7ae7e46da4286aeceb new file mode 100644 index 0000000..9261237 --- /dev/null +++ b/config/channel/config/85f33c6596766c7ae7e46da4286aeceb @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "JTBC2", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "90700b8d7d771c7fc9a295b3c3513893" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/8958b8b9154643bcb80d40cea379777d b/config/channel/config/8958b8b9154643bcb80d40cea379777d new file mode 100644 index 0000000..e20ecda --- /dev/null +++ b/config/channel/config/8958b8b9154643bcb80d40cea379777d @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "공영쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "ca16d0b6dc23adbb85eb6b4051eee82f" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/8e3c711f8543b6852280a2df95b88354 b/config/channel/config/8e3c711f8543b6852280a2df95b88354 new file mode 100644 index 0000000..4ccbd62 --- /dev/null +++ b/config/channel/config/8e3c711f8543b6852280a2df95b88354 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS1", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "4131794f35a674ca46c635b46bd6c3ba" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/8eb43c6489491a6a7c20680aa109f48f b/config/channel/config/8eb43c6489491a6a7c20680aa109f48f new file mode 100644 index 0000000..3ad0dfa --- /dev/null +++ b/config/channel/config/8eb43c6489491a6a7c20680aa109f48f @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "GS SHOP", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c51e80c71da56c5642fe5463e1915c6e" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/8f02ac6b570d9d5201e8facfd9b0a05a b/config/channel/config/8f02ac6b570d9d5201e8facfd9b0a05a new file mode 100644 index 0000000..88382f6 --- /dev/null +++ b/config/channel/config/8f02ac6b570d9d5201e8facfd9b0a05a @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "JTBC GOLF&SPORTS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "9e0918eaefee41789784a33c0aa7c592" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/9038f0e2a2f90a4f59146c16ee8d699d b/config/channel/config/9038f0e2a2f90a4f59146c16ee8d699d new file mode 100644 index 0000000..2bb1375 --- /dev/null +++ b/config/channel/config/9038f0e2a2f90a4f59146c16ee8d699d @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널뷰", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "0a2fc32a1db9058ec80d8a7c83bff151" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/91eff9b62623c70e174c7cda2008d042 b/config/channel/config/91eff9b62623c70e174c7cda2008d042 new file mode 100644 index 0000000..9424592 --- /dev/null +++ b/config/channel/config/91eff9b62623c70e174c7cda2008d042 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "tvN SHOW", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "49f25808ad4dce7c3ca7ac51bcab4d51" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/92a37bff18cd4e87ed13516e6ca835ee b/config/channel/config/92a37bff18cd4e87ed13516e6ca835ee new file mode 100644 index 0000000..5d49990 --- /dev/null +++ b/config/channel/config/92a37bff18cd4e87ed13516e6ca835ee @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "아이넷TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "737dd2a3046549fb2f62a4f8839dc8fc" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/955bb583a03c7ee0d06cbc13494409a5 b/config/channel/config/955bb583a03c7ee0d06cbc13494409a5 new file mode 100644 index 0000000..4a23b8c --- /dev/null +++ b/config/channel/config/955bb583a03c7ee0d06cbc13494409a5 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "735f98fe9ab73a907b9001c24bc58535" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "8d5c762518a855c7e872929cfad4fcbd", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/9b37b5849fe51eb6b0dc26bd48bc664b b/config/channel/config/9b37b5849fe51eb6b0dc26bd48bc664b new file mode 100644 index 0000000..c327fdd --- /dev/null +++ b/config/channel/config/9b37b5849fe51eb6b0dc26bd48bc664b @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "TVCHOSUN2", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b01672f3f58af117eb7cb39aad7a1b2a" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/9c2a5e4125dbf5b7a3031ad4bced4d14 b/config/channel/config/9c2a5e4125dbf5b7a3031ad4bced4d14 new file mode 100644 index 0000000..e193fbe --- /dev/null +++ b/config/channel/config/9c2a5e4125dbf5b7a3031ad4bced4d14 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "32fe27c8c38d7d88cf2b0b496cd4dc79" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "3606e82f0ac1adb388bc5449147357a2", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/a11e81997ba247049cec9892f7dae731 b/config/channel/config/a11e81997ba247049cec9892f7dae731 new file mode 100644 index 0000000..2bb31d1 --- /dev/null +++ b/config/channel/config/a11e81997ba247049cec9892f7dae731 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널이엠", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "8a99719dec2429431f2f3b81bfe758eb" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/a59c5c1d3974e5da8130b1e36b4174c0 b/config/channel/config/a59c5c1d3974e5da8130b1e36b4174c0 new file mode 100644 index 0000000..05d5d29 --- /dev/null +++ b/config/channel/config/a59c5c1d3974e5da8130b1e36b4174c0 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "인디필름", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "0810bd8d447b7fe52de3abb53b27db2a" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/a70f58f74b6aa10b71aad94a77eaf67c b/config/channel/config/a70f58f74b6aa10b71aad94a77eaf67c new file mode 100644 index 0000000..9dc2567 --- /dev/null +++ b/config/channel/config/a70f58f74b6aa10b71aad94a77eaf67c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "HQ+", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "dafc87b31794a3bded3bff36d904f663" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/a8eeb09ad3d04db8c796dc9f95de9c4e b/config/channel/config/a8eeb09ad3d04db8c796dc9f95de9c4e new file mode 100644 index 0000000..8224f85 --- /dev/null +++ b/config/channel/config/a8eeb09ad3d04db8c796dc9f95de9c4e @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "K STAR", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "0717a444fd3841c1aa4e1796a214dc21" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/a9804d0f264382cb08ffffb96d092207 b/config/channel/config/a9804d0f264382cb08ffffb96d092207 new file mode 100644 index 0000000..ae4e8f6 --- /dev/null +++ b/config/channel/config/a9804d0f264382cb08ffffb96d092207 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS Drama", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "686fffc420fe39a00f228285963aac1e" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ab838030ad36fdfc9152167d7cc1776f b/config/channel/config/ab838030ad36fdfc9152167d7cc1776f new file mode 100644 index 0000000..2c898ed --- /dev/null +++ b/config/channel/config/ab838030ad36fdfc9152167d7cc1776f @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "YTN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b724886fa52be65750e81a1fd7ee0a56" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ad3622eb30bedcf3abc4267f2382b511 b/config/channel/config/ad3622eb30bedcf3abc4267f2382b511 new file mode 100644 index 0000000..656d35f --- /dev/null +++ b/config/channel/config/ad3622eb30bedcf3abc4267f2382b511 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널A 플러스", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "73181349d3df0a763ca7d230f0a6ec31" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ae9da1906cdb201f3cf26ab2ea55f592 b/config/channel/config/ae9da1906cdb201f3cf26ab2ea55f592 new file mode 100644 index 0000000..751cbe0 --- /dev/null +++ b/config/channel/config/ae9da1906cdb201f3cf26ab2ea55f592 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC Every1", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "f344e93c2d005864368ca4c50d6c380e" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/b17ea8d45bb3c8e47f3b6be04000183a b/config/channel/config/b17ea8d45bb3c8e47f3b6be04000183a new file mode 100644 index 0000000..43d5a90 --- /dev/null +++ b/config/channel/config/b17ea8d45bb3c8e47f3b6be04000183a @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "ANIMAX", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "d34d3beaa796f6675d61f9e1fbe6a193" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/b25433c7be8de5ee7da36bb4ab8be99a b/config/channel/config/b25433c7be8de5ee7da36bb4ab8be99a new file mode 100644 index 0000000..5c65545 --- /dev/null +++ b/config/channel/config/b25433c7be8de5ee7da36bb4ab8be99a @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "OBS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "781c2b88b86022458f0c3fe7701035b4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/b283a67af7f2039b1110ee49c2fda0dd b/config/channel/config/b283a67af7f2039b1110ee49c2fda0dd new file mode 100644 index 0000000..68f7018 --- /dev/null +++ b/config/channel/config/b283a67af7f2039b1110ee49c2fda0dd @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "EBS PLUS1", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "76f09ed40aee911ea9e61bb0ff1c36df" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/b5044588c9d0099978247847f6212011 b/config/channel/config/b5044588c9d0099978247847f6212011 new file mode 100644 index 0000000..e4f76e6 --- /dev/null +++ b/config/channel/config/b5044588c9d0099978247847f6212011 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "실버아이TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "f23286930d1812121d66f15837b6b61f" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/b998610ab08ab06a90b10310385aa9db b/config/channel/config/b998610ab08ab06a90b10310385aa9db new file mode 100644 index 0000000..84dc3ae --- /dev/null +++ b/config/channel/config/b998610ab08ab06a90b10310385aa9db @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널 J", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "baca96994e20f1c56be77fcc5dadd5f2" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/bb0d9ba2402b23d5753c65555e6758ac b/config/channel/config/bb0d9ba2402b23d5753c65555e6758ac new file mode 100644 index 0000000..eb67775 --- /dev/null +++ b/config/channel/config/bb0d9ba2402b23d5753c65555e6758ac @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CNTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "521d7bcf3d6ba210fda998353763c37b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c01c52ee0a80a9e9853c39dd857ef5f1 b/config/channel/config/c01c52ee0a80a9e9853c39dd857ef5f1 new file mode 100644 index 0000000..1de1f30 --- /dev/null +++ b/config/channel/config/c01c52ee0a80a9e9853c39dd857ef5f1 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "kt알파쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "62a44658d620789701923545cb06c3b2" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c0bbcfc518e91f598343d66dc4dd22de b/config/channel/config/c0bbcfc518e91f598343d66dc4dd22de new file mode 100644 index 0000000..2515d1a --- /dev/null +++ b/config/channel/config/c0bbcfc518e91f598343d66dc4dd22de @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "가톨릭평화방송", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "82ad2b6e769ad6ce87025ee10f3b0613" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c0cba8ac0be958708d2742709f4ea7fb b/config/channel/config/c0cba8ac0be958708d2742709f4ea7fb new file mode 100644 index 0000000..05f94ab --- /dev/null +++ b/config/channel/config/c0cba8ac0be958708d2742709f4ea7fb @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "E채널", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "2ea6a19e3bbe8b8e8cc55179471fae8c" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c121d2acfba6b8115fd81029c38d22f3 b/config/channel/config/c121d2acfba6b8115fd81029c38d22f3 new file mode 100644 index 0000000..1dec22b --- /dev/null +++ b/config/channel/config/c121d2acfba6b8115fd81029c38d22f3 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "Edge TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "8599bda06f866d7ed2926d71e3830528" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c12461de5260000c8d111ea3e9bda24b b/config/channel/config/c12461de5260000c8d111ea3e9bda24b new file mode 100644 index 0000000..9961ba4 --- /dev/null +++ b/config/channel/config/c12461de5260000c8d111ea3e9bda24b @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SBS Sports", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c0de5512a5297339f24bfe1ed601338b" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c31810802fc6cdf63d3638ac767fe03b b/config/channel/config/c31810802fc6cdf63d3638ac767fe03b new file mode 100644 index 0000000..66ab028 --- /dev/null +++ b/config/channel/config/c31810802fc6cdf63d3638ac767fe03b @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "GMTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "850cc84f1cfa62cff81146ccdffb6a40" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c4a15572fb9044d1af453f4426885ea7 b/config/channel/config/c4a15572fb9044d1af453f4426885ea7 new file mode 100644 index 0000000..fe9400a --- /dev/null +++ b/config/channel/config/c4a15572fb9044d1af453f4426885ea7 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "JTBC4", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "24c9a9fb34e808f3adb6681563e83438" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/c88ee7830d38375db2bfe6c1a6a6b585 b/config/channel/config/c88ee7830d38375db2bfe6c1a6a6b585 new file mode 100644 index 0000000..d8881d3 --- /dev/null +++ b/config/channel/config/c88ee7830d38375db2bfe6c1a6a6b585 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "2c8b40b9ed02dcf1e8cb3e0340b0ea19" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "8d5c762518a855c7e872929cfad4fcbd", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/c9782a02ee6f212d0649055c8fc9459e b/config/channel/config/c9782a02ee6f212d0649055c8fc9459e new file mode 100644 index 0000000..0e2779b --- /dev/null +++ b/config/channel/config/c9782a02ee6f212d0649055c8fc9459e @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "한국경제TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "50c0842a88c96e95fefcdb844190db84" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ca54f7a6fcc5ccea5e6b1c6db9405b01 b/config/channel/config/ca54f7a6fcc5ccea5e6b1c6db9405b01 new file mode 100644 index 0000000..619b0eb --- /dev/null +++ b/config/channel/config/ca54f7a6fcc5ccea5e6b1c6db9405b01 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "SBS Plus", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "7a1115674fc3ac89008198f2b98825c8" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/cacb6bd3d5e8868e82dcbde443d7a61c b/config/channel/config/cacb6bd3d5e8868e82dcbde443d7a61c new file mode 100644 index 0000000..16b4202 --- /dev/null +++ b/config/channel/config/cacb6bd3d5e8868e82dcbde443d7a61c @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS2", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "c1b8b157d6a6c83c1554745d7eecba83" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ccc1c54bb2d8f12f8cce84272448021b b/config/channel/config/ccc1c54bb2d8f12f8cce84272448021b new file mode 100644 index 0000000..3382e44 --- /dev/null +++ b/config/channel/config/ccc1c54bb2d8f12f8cce84272448021b @@ -0,0 +1,17 @@ +{ + "enabled": true, + "number": 0, + "epgauto": false, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b407835f8e9c32a2c123f155e762f5ef" + ], + "tags": [ + "9c7ee998329170b2f891db43afe646b0", + "3606e82f0ac1adb388bc5449147357a2", + "a75a119f9dabe35a210295017049415f" + ], + "bouquet": "" +} diff --git a/config/channel/config/cf72d1e44b5a112d099af086324e0813 b/config/channel/config/cf72d1e44b5a112d099af086324e0813 new file mode 100644 index 0000000..48032b2 --- /dev/null +++ b/config/channel/config/cf72d1e44b5a112d099af086324e0813 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBC Dramanet", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "b640dbb1be642813a22ffba915487fe4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/cfee8eb44b51c858616a71a2a33cd382 b/config/channel/config/cfee8eb44b51c858616a71a2a33cd382 new file mode 100644 index 0000000..8d585da --- /dev/null +++ b/config/channel/config/cfee8eb44b51c858616a71a2a33cd382 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "CBS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "ca966478dccc8271949da2a146550531" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d16848a7523b13bdf6d813beaf86be23 b/config/channel/config/d16848a7523b13bdf6d813beaf86be23 new file mode 100644 index 0000000..233f42f --- /dev/null +++ b/config/channel/config/d16848a7523b13bdf6d813beaf86be23 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KBS Joy", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "279c6583f12099582469c27413b24b76" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d1a09ca9b09e3ed58a50d1fede34a448 b/config/channel/config/d1a09ca9b09e3ed58a50d1fede34a448 new file mode 100644 index 0000000..c9cc471 --- /dev/null +++ b/config/channel/config/d1a09ca9b09e3ed58a50d1fede34a448 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "KTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "4e98c081fcb5282be9f3c7a005a737b8" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d2e935e1d7a60eb799d5cd5aee1f5a30 b/config/channel/config/d2e935e1d7a60eb799d5cd5aee1f5a30 new file mode 100644 index 0000000..9a33cac --- /dev/null +++ b/config/channel/config/d2e935e1d7a60eb799d5cd5aee1f5a30 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "MBN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "411905fbcc47cfe62f51e17424eca55d" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d31d240785e94502552e0ee3c9cc8490 b/config/channel/config/d31d240785e94502552e0ee3c9cc8490 new file mode 100644 index 0000000..028741a --- /dev/null +++ b/config/channel/config/d31d240785e94502552e0ee3c9cc8490 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "tvN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e0e6bd2463aac4dfa06d28ffaf7a0517" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d3873362d16de086cd9e609db2b80dbe b/config/channel/config/d3873362d16de086cd9e609db2b80dbe new file mode 100644 index 0000000..920fdda --- /dev/null +++ b/config/channel/config/d3873362d16de086cd9e609db2b80dbe @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "코미디TV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "8b0bb00f943fa8e0945514241ec660ca" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d4c41c6d8d7cd6f825e8158c9c8b58da b/config/channel/config/d4c41c6d8d7cd6f825e8158c9c8b58da new file mode 100644 index 0000000..5dba412 --- /dev/null +++ b/config/channel/config/d4c41c6d8d7cd6f825e8158c9c8b58da @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "스크린", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "7b60ac4c6c593f30e0e6ad6f8b3137bf" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d588fc5111906dbb9e86bb2c913e3355 b/config/channel/config/d588fc5111906dbb9e86bb2c913e3355 new file mode 100644 index 0000000..5d6bb90 --- /dev/null +++ b/config/channel/config/d588fc5111906dbb9e86bb2c913e3355 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "JTBC", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "645e7b158b1dd466aa61c83e56b4f1f4" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/d78768c0906cede9ac1a9ad26d0691e3 b/config/channel/config/d78768c0906cede9ac1a9ad26d0691e3 new file mode 100644 index 0000000..13d896c --- /dev/null +++ b/config/channel/config/d78768c0906cede9ac1a9ad26d0691e3 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "Mnet", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "1c02bfb97ffe0f06c66e2a4182259566" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/e014cc47d6c8a40f7a3a21537582b307 b/config/channel/config/e014cc47d6c8a40f7a3a21537582b307 new file mode 100644 index 0000000..8acbd8b --- /dev/null +++ b/config/channel/config/e014cc47d6c8a40f7a3a21537582b307 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "OCN", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "fed6a1a2363553e2e132b6b7f2fddaaa" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/e3e944f04143020929268973fb7a09ea b/config/channel/config/e3e944f04143020929268973fb7a09ea new file mode 100644 index 0000000..176a382 --- /dev/null +++ b/config/channel/config/e3e944f04143020929268973fb7a09ea @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "Tooniverse", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "238bdeddbb071ec98696780d13d3c2e1" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/e7a2a08e7d25069475aaa01d73c745e8 b/config/channel/config/e7a2a08e7d25069475aaa01d73c745e8 new file mode 100644 index 0000000..62ccb3a --- /dev/null +++ b/config/channel/config/e7a2a08e7d25069475aaa01d73c745e8 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "GS MY SHOP", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "7d085451db72c46b60e51b36ca694612" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/e99736d757e7a01b986e86896649c451 b/config/channel/config/e99736d757e7a01b986e86896649c451 new file mode 100644 index 0000000..c143ec2 --- /dev/null +++ b/config/channel/config/e99736d757e7a01b986e86896649c451 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "카툰네트워크", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "16ed1b3a52093e1eb6586d89525d0922" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/ec0350a3c3b1160b055555acf5902a5f b/config/channel/config/ec0350a3c3b1160b055555acf5902a5f new file mode 100644 index 0000000..b34c5f7 --- /dev/null +++ b/config/channel/config/ec0350a3c3b1160b055555acf5902a5f @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "tvN SPORTS", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "6d902e3b5f97e24049401009efaf140f" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/f096ade94fb78a0dc76756c40cb70256 b/config/channel/config/f096ade94fb78a0dc76756c40cb70256 new file mode 100644 index 0000000..3762d56 --- /dev/null +++ b/config/channel/config/f096ade94fb78a0dc76756c40cb70256 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "tvN STORY", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "76c2af825935de343b19df69db84c15f" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/f16ffaba0421b27550f23181d4bddbb9 b/config/channel/config/f16ffaba0421b27550f23181d4bddbb9 new file mode 100644 index 0000000..77eaba4 --- /dev/null +++ b/config/channel/config/f16ffaba0421b27550f23181d4bddbb9 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "채널A", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "1450789a2dd5026e7ef65ebc0b6dbfff" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "3606e82f0ac1adb388bc5449147357a2", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/f30aefb22ea670a33e7f9be7c05e38d5 b/config/channel/config/f30aefb22ea670a33e7f9be7c05e38d5 new file mode 100644 index 0000000..e52029a --- /dev/null +++ b/config/channel/config/f30aefb22ea670a33e7f9be7c05e38d5 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "드라마큐브", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "e121b3d547d82bf3b2e0f1e26b8efdc7" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/f38bdf33229debeb2ca34b5930326155 b/config/channel/config/f38bdf33229debeb2ca34b5930326155 new file mode 100644 index 0000000..7d8b129 --- /dev/null +++ b/config/channel/config/f38bdf33229debeb2ca34b5930326155 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "LOTTE OneTV", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "f7a1eb0974791dd402d6ad22e8a8d5eb" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/config/f56ce3b59ed15df9ffb77a18659c25d8 b/config/channel/config/f56ce3b59ed15df9ffb77a18659c25d8 new file mode 100644 index 0000000..230ad2d --- /dev/null +++ b/config/channel/config/f56ce3b59ed15df9ffb77a18659c25d8 @@ -0,0 +1,18 @@ +{ + "enabled": true, + "name": "W쇼핑", + "number": 0, + "epgauto": true, + "dvr_pre_time": 0, + "dvr_pst_time": 0, + "epg_running": 1, + "services": [ + "6983350c09a37c645cb96ec9185a0487" + ], + "tags": [ + "a75a119f9dabe35a210295017049415f", + "8d5c762518a855c7e872929cfad4fcbd", + "9c7ee998329170b2f891db43afe646b0" + ], + "bouquet": "" +} diff --git a/config/channel/tag/3606e82f0ac1adb388bc5449147357a2 b/config/channel/tag/3606e82f0ac1adb388bc5449147357a2 new file mode 100644 index 0000000..f9cc5d6 --- /dev/null +++ b/config/channel/tag/3606e82f0ac1adb388bc5449147357a2 @@ -0,0 +1,10 @@ +{ + "enabled": true, + "index": 0, + "name": "HDTV", + "internal": false, + "private": false, + "icon": "", + "titled_icon": false, + "comment": "" +} diff --git a/config/channel/tag/8d5c762518a855c7e872929cfad4fcbd b/config/channel/tag/8d5c762518a855c7e872929cfad4fcbd new file mode 100644 index 0000000..8f44d40 --- /dev/null +++ b/config/channel/tag/8d5c762518a855c7e872929cfad4fcbd @@ -0,0 +1,10 @@ +{ + "enabled": true, + "index": 0, + "name": "SDTV", + "internal": false, + "private": false, + "icon": "", + "titled_icon": false, + "comment": "" +} diff --git a/config/channel/tag/9c7ee998329170b2f891db43afe646b0 b/config/channel/tag/9c7ee998329170b2f891db43afe646b0 new file mode 100644 index 0000000..e49a381 --- /dev/null +++ b/config/channel/tag/9c7ee998329170b2f891db43afe646b0 @@ -0,0 +1,10 @@ +{ + "enabled": true, + "index": 0, + "name": "QAM256", + "internal": false, + "private": false, + "icon": "", + "titled_icon": false, + "comment": "" +} diff --git a/config/channel/tag/a75a119f9dabe35a210295017049415f b/config/channel/tag/a75a119f9dabe35a210295017049415f new file mode 100644 index 0000000..fef82ed --- /dev/null +++ b/config/channel/tag/a75a119f9dabe35a210295017049415f @@ -0,0 +1,10 @@ +{ + "enabled": true, + "index": 0, + "name": "TV channels", + "internal": false, + "private": false, + "icon": "", + "titled_icon": false, + "comment": "" +} diff --git a/config/comskip/comskip.ini b/config/comskip/comskip.ini new file mode 100644 index 0000000..1ba6046 --- /dev/null +++ b/config/comskip/comskip.ini @@ -0,0 +1,81 @@ +; See comskip.txt in the distribution zip file for many settable parameters, read manual.html, tuning.html and debugwindow.html for how to tune and debug comskip +edl_mode=3 ; the mode specified in the generated edl file, 0=cut, 3=commercial break +mkv_time_offset=30.0 ; offset in seconds, to work around what appears to be an xbmc or ffmpeg bug +always_keep_first_seconds=2 ; xbmc/vdpau has a bug that causes a segfault if we don't keep the start of the stream, I'll fix that when I get a chance +detect_method=255 ;1=black frame, 2=logo, 4=scene change, 8=fuzzy logic, 16=closed captions, 32=aspect ration, 64=silence, 128=cutscenes, 255=all +validate_silence=1 ; Default, set to 0 to force using this clues if selected above. +validate_uniform=1 ; Default, set to 0 to force using this clues (like pure white frames) if blackframe is selected above. +validate_scenechange=1 ; Default, set to 0 to force using this clues if selected above. +verbose=10 ;show a lot of extra info, level 5 is also OK, set to 0 to disable +max_brightness=60 ;frame not black if any pixels checked are greater than this (scale 0 to 255) +test_brightness=40 ;frame not pure black if any pixels checked are greater than this, will check average brightness (scale 0 to 255) +max_avg_brightness=25 ;maximum average brightness for a dim frame to be considered black (scale 0 to 255) 0 means autosetting +max_commercialbreak=600 ;maximum length in seconds to consider a segment a commercial break +min_commercialbreak=25 ;minimum length in seconds to consider a segment a commercial break +max_commercial_size=125 ;maximum time in seconds for a single commercial or multiple commercials if no breaks in between +min_commercial_size=4 ;mimimum time in seconds for a single commercial +min_show_segment_length=250 ; any segment longer than this will be scored towards show. +non_uniformity=500 ; Set to 0 to disable cutpoints based on uniform frames +max_volume=500 ; any frame with sound volume larger than this will not be regarded as black frame +min_silence=12 ; Any deep silence longer than this amount of frames is a possible cutpoint +ticker_tape=0 ; Amount of pixels from bottom to ignore in all processing +logo_at_bottom=0 ; Set to 1 to search only for logo at the lower half of the video, do not combine with subtitle setting +punish=0 ; Compare to average for sum of 1=brightness, 2=uniform 4=volume, 8=silence, 16=schange, set to 0 to disable +punish_threshold=1.3 ; Multiply when amount is above average * punish_threshold +punish_modifier=2 ; When above average * threshold multiply score by this value +intelligent_brightness=0 ; Set to 1 to use a USA specific algorithm to tune some of the settings, not adviced outside the USA +logo_percentile=0.92 ; if more then this amount of logo is found then logo detection will be disabled +logo_threshold=0.775 +punish_no_logo=1 ; Default, set to 0 to avoid show segments without logo to be scored towards commercial +aggressive_logo_rejection=0 +connect_blocks_with_logo=0 ; set to 1 if you want successive blocks with logo on the transition to be regarded as connected, set to 0 to disable +logo_filter=0 ; set the size of the filter to apply to bad logo detection, 4 seems to be a good value. +logo_max_percentage_of_screen=0.9 +subtitles=1 +cut_on_ar_change=1 ; set to 1 if you want to cut also on aspect ratio changes when logo is present, set to 2 to force cuts on aspect ratio changes. set to 0 to disable +delete_show_after_last_commercial=0 ; set to 1 if you want to delete the last block if its a show and after a commercial +delete_show_before_or_after_current=0 ; set to 1 if you want to delete the previous and the next show in the recording, this can lead to the deletion of trailers of next show +delete_block_after_commercial=0 ;set to max size of block in seconds to be discarded, set to 0 to disable +remove_before=0 ; amount of seconds of show to be removed before ALL commercials +remove_after=0 ; amount of seconds of show to be removed after ALL commercials +shrink_logo=0 ; Reduce the duration of the logo with this amount of seconds +after_logo=0 ; set to number of seconds after logo disappears comskip should start to search for silence to insert an additional cutpoint +padding=0 +ms_audio_delay=5 +volume_slip=40 +skip_b_frames=0 ; Set to 1 to force Comskip to skip frames for higher processing speed. +max_repair_size=200 ; Will repair maximum 200 missing MPEG frames in the timeline, set to 0 to disable repairing for players that don't use PTS. +disable_heuristics=4 bit pattern for disabling heuristics, adding 1 disables heristics 1, adding 2 disables heristics 2, adding 4 disables heristics 3, 255 disables all heuristics +delete_logo_file=0 ; set to 1 if you want comskip to tidy up after finishing +output_framearray=0 ; create a big excel file for detailed analysis, set to 0 to disable +output_data=0 ; create a dump of the user data channel, used for CC and XDS (such as V-Chip info). Can be use together with output_framearray to remote debug CC decoding +output_videoredo=0 +output_womble=0 +output_mls=0 ; set to 1 if you want MPeg Video Wizard bookmark file output +output_cuttermaran=0 +output_mpeg2schnitt=0 +output_mpgtx=0 +output_dvrcut=0 +output_zoomplayer_chapter=0 +output_zoomplayer_cutlist=0 +output_edl=0 +output_dvrmstb=0 ; Set to 1 if you're running DVRMS-Toolbox +output_edlx=0 +output_vcf=0 +output_bsplayer=0 +output_btv=0 ; set to 1 if you want Beyond TV chapter cutlist output +output_projectx=0 ; set to 1 if you want ProjectX cutlist output (Xcl) +output_avisynth=0 +output_vdr=1 ; set to 1 if you want XBMC to skipping commercials +output_demux=0 ; set to 1 if you want comskip to demux the mpeg file while scanning +sage_framenumber_bug=0 +sage_minute_bug=0 +live_tv=0 ; set to 1 if you use parallelprocessing and need the output while recording +live_tv_retries=4 ; change to 16 when using live_tv in BTV, used for mpeg PS and TS +dvrms_live_tv_retries=300 ; only used for dvr_ms +standoff=0 ; change to 8000000 when using live_tv in BTV +cuttermaran_options="cut=\"true\" unattended=\"true\" muxResult=\"false\" snapToCutPoints=\"true\" closeApp=\"true\"" +mpeg2schnitt_options="mpeg2schnitt.exe /S /E /R25 /Z %2 %1" +avisynth_options="LoadPlugin(\"MPEG2Dec3.dll\") \nMPEG2Source(\"%s\")\n" +dvrcut_options="dvrcut \"%s.dvr-ms\" \"%s_clean.dvr-ms\" " +windowtitle="Comskip - %s" diff --git a/config/config b/config/config new file mode 100644 index 0000000..2eb11f2 --- /dev/null +++ b/config/config @@ -0,0 +1,59 @@ +{ + "version": 24, + "full_version": "4.2.8-36~g5bdcfd8ac-dirty", + "server_name": "Tvheadend", + "uilevel": 2, + "uilevel_nochange": false, + "ui_quicktips": true, + "digest": true, + "proxy": false, + "cookie_expires": 7, + "dscp": -1, + "caclient_ui": false, + "descrambler_buffer": 9000, + "parser_backlog": false, + "language": [ + "eng", + "kor" + ], + "epg_compress": true, + "epg_cutwindow": 300, + "info_area": [ + "login", + "storage", + "time" + ], + "language_ui": "kor", + "theme_ui": "blue", + "muxconfpath": "/usr/share/tvheadend/data/dvb-scan/", + "tvhtime_update_enabled": true, + "tvhtime_ntp_enabled": false, + "tvhtime_tolerance": 5000, + "prefer_picon": false, + "chiconscheme": 0, + "piconscheme": 0, + "satip_rtsp": 0, + "satip_anonymize": false, + "satip_noupnp": false, + "satip_restrict_pids_all": false, + "satip_weight": 100, + "satip_remote_weight": true, + "satip_descramble": 1, + "satip_rewrite_pmt": false, + "satip_drop_fe": false, + "satip_muxcnf": 0, + "satip_rtptcpsize": 42, + "satip_nat_rtsp": 0, + "satip_nom3u": false, + "satip_notcp_mode": false, + "satip_iptv_sig_level": 220, + "force_sig_level": 0, + "satip_dvbs": 0, + "satip_dvbs2": 0, + "satip_dvbt": 0, + "satip_dvbt2": 0, + "satip_dvbc": 0, + "satip_dvbc2": 0, + "satip_atsct": 0, + "satip_atscc": 0 +} diff --git a/config/dvr/config/7a5edfbe189851e5b1d1df19c93962f0 b/config/dvr/config/7a5edfbe189851e5b1d1df19c93962f0 new file mode 100644 index 0000000..fe646c9 --- /dev/null +++ b/config/dvr/config/7a5edfbe189851e5b1d1df19c93962f0 @@ -0,0 +1,39 @@ +{ + "enabled": true, + "name": "", + "profile": "1149949f16a37840cebbe1ce767996ee", + "cache": 2, + "retention-days": 2147483646, + "removal-days": 2147483647, + "clone": true, + "rerecord-errors": 10, + "warm-time": 30, + "pre-extra-time": 1, + "post-extra-time": 0, + "epg-update-window": 86400, + "epg-running": true, + "autorec-maxcount": 0, + "autorec-maxsched": 0, + "postproc": "", + "storage": "/recordings/", + "storage-mfree": 1000, + "storage-mused": 0, + "file-permissions": "0755", + "charset": "UTF-8", + "tag-files": true, + "skip-commercials": true, + "pathname": "$t.$x", + "directory-permissions": "0775", + "day-dir": false, + "channel-dir": false, + "title-dir": false, + "channel-in-title": false, + "date-in-title": false, + "time-in-title": false, + "episode-in-title": false, + "subtitle-in-title": false, + "omit-title": false, + "clean-title": false, + "whitespace-in-title": false, + "windows-compatible-filenames": true +} diff --git a/config/dvr/config/bfbe8d50f9dcd5bda4f9ac3605957c8f b/config/dvr/config/bfbe8d50f9dcd5bda4f9ac3605957c8f new file mode 100644 index 0000000..7dbb6d0 --- /dev/null +++ b/config/dvr/config/bfbe8d50f9dcd5bda4f9ac3605957c8f @@ -0,0 +1,39 @@ +{ + "enabled": true, + "name": "DefaultBackUp", + "profile": "1149949f16a37840cebbe1ce767996ee", + "cache": 2, + "retention-days": 2147483646, + "removal-days": 2147483647, + "clone": true, + "rerecord-errors": 10, + "warm-time": 30, + "pre-extra-time": 1, + "post-extra-time": 0, + "epg-update-window": 86400, + "epg-running": true, + "autorec-maxcount": 0, + "autorec-maxsched": 0, + "postproc": "/recordings/autoencoding.sh \"%t\" \"%b\"", + "storage": "/recordings/", + "storage-mfree": 1000, + "storage-mused": 0, + "file-permissions": "0755", + "charset": "UTF-8", + "tag-files": true, + "skip-commercials": true, + "pathname": "$t.$x", + "directory-permissions": "0775", + "day-dir": false, + "channel-dir": false, + "title-dir": false, + "channel-in-title": false, + "date-in-title": false, + "time-in-title": false, + "episode-in-title": false, + "subtitle-in-title": false, + "omit-title": false, + "clean-title": false, + "whitespace-in-title": false, + "windows-compatible-filenames": false +} diff --git a/config/dvr/config/c694ce9eec463114694074f1b132f9fb b/config/dvr/config/c694ce9eec463114694074f1b132f9fb new file mode 100644 index 0000000..bf8f277 --- /dev/null +++ b/config/dvr/config/c694ce9eec463114694074f1b132f9fb @@ -0,0 +1,38 @@ +{ + "enabled": true, + "name": "Transcording", + "profile": "5600844c86009915e9e11942613de601", + "cache": 2, + "retention-days": 2147483646, + "removal-days": 2147483647, + "clone": true, + "rerecord-errors": 10, + "warm-time": 30, + "pre-extra-time": 1, + "post-extra-time": 0, + "epg-update-window": 86400, + "epg-running": true, + "autorec-maxcount": 0, + "autorec-maxsched": 0, + "storage": "/recordings/", + "storage-mfree": 1000, + "storage-mused": 0, + "file-permissions": "0755", + "charset": "UTF-8", + "tag-files": true, + "skip-commercials": true, + "pathname": "$t -$ e -$ s$n.$x", + "directory-permissions": "0775", + "day-dir": false, + "channel-dir": false, + "title-dir": false, + "channel-in-title": false, + "date-in-title": false, + "time-in-title": false, + "episode-in-title": false, + "subtitle-in-title": false, + "omit-title": false, + "clean-title": false, + "whitespace-in-title": false, + "windows-compatible-filenames": true +} diff --git a/config/dvr/log/05f586302a882fd27c82da336b2af987 b/config/dvr/log/05f586302a882fd27c82da336b2af987 new file mode 100644 index 0000000..6d92c96 --- /dev/null +++ b/config/dvr/log/05f586302a882fd27c82da336b2af987 @@ -0,0 +1,60 @@ +{ + "enabled": true, + "start": 1712772000, + "start_extra": 0, + "stop": 1712779200, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "한문철의 블랙박스 리뷰" + }, + "description": { + "kor": "한문철의 블랙박스 리뷰\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "c694ce9eec463114694074f1b132f9fb", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 1, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/JTBC/한문철의 블랙박스 리뷰 - --JTBC-2.mkv", + "info": [ + { + "type": "H264", + "width": 960, + "height": 540, + "duration": 3003, + "aspect_num": 16, + "aspect_den": 9 + }, + { + "type": "AAC", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1712772000, + "stop": 1712779200 + } + ] +} diff --git a/config/dvr/log/09bc2ac2351db3359b1ad5ad10b65289 b/config/dvr/log/09bc2ac2351db3359b1ad5ad10b65289 new file mode 100644 index 0000000..585bc0a --- /dev/null +++ b/config/dvr/log/09bc2ac2351db3359b1ad5ad10b65289 @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714108800, + "start_extra": 0, + "stop": 1714113600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "하이드 스페셜" + }, + "description": { + "kor": "하이드 스페셜\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/1cbd92efe086d74e4672d062534ec62a b/config/dvr/log/1cbd92efe086d74e4672d062534ec62a new file mode 100644 index 0000000..4ddbcc6 --- /dev/null +++ b/config/dvr/log/1cbd92efe086d74e4672d062534ec62a @@ -0,0 +1,63 @@ +{ + "enabled": true, + "start": 1713010800, + "start_extra": 0, + "stop": 1713016800, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "눈물의 여왕" + }, + "description": { + "kor": "눈물의 여왕\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/tvN/눈물의-여왕-----tvN.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713010800, + "stop": 1713016800 + } + ] +} diff --git a/config/dvr/log/1f6c0a4ce756f74dbb06a47b23d6cf7e b/config/dvr/log/1f6c0a4ce756f74dbb06a47b23d6cf7e new file mode 100644 index 0000000..ebb3682 --- /dev/null +++ b/config/dvr/log/1f6c0a4ce756f74dbb06a47b23d6cf7e @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1713960000, + "start_extra": 0, + "stop": 1713966000, + "stop_extra": 0, + "channel": "363bdf6f2867dd7eb6d9af5b62581d97", + "channelname": "SBS", + "title": { + "kor": "골 때리는 그녀들" + }, + "description": { + "kor": "골 때리는 그녀들\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 7341, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/31ce1dc33816501320de2d0b1edf8780 b/config/dvr/log/31ce1dc33816501320de2d0b1edf8780 new file mode 100644 index 0000000..3ddc3ed --- /dev/null +++ b/config/dvr/log/31ce1dc33816501320de2d0b1edf8780 @@ -0,0 +1,65 @@ +{ + "enabled": true, + "start": 1713600600, + "start_extra": 0, + "stop": 1713606600, + "stop_extra": 0, + "channel": "363bdf6f2867dd7eb6d9af5b62581d97", + "channelname": "SBS", + "title": { + "kor": "골 때리는 그녀들" + }, + "description": { + "kor": "골 때리는 그녀들\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 2147483646, + "removal": 1, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 107, + "errors": 0, + "data_errors": 25559, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/골 때리는 그녀들 - -.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 0, + "audio_version": 1 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 3 + } + ], + "start": 1713600540, + "stop": 1713606600 + } + ] +} diff --git a/config/dvr/log/31f4463434c778e0c70f1e4488732817 b/config/dvr/log/31f4463434c778e0c70f1e4488732817 new file mode 100644 index 0000000..1a9eb15 --- /dev/null +++ b/config/dvr/log/31f4463434c778e0c70f1e4488732817 @@ -0,0 +1,58 @@ +{ + "enabled": true, + "start": 1714109400, + "start_extra": 0, + "stop": 1714113000, + "stop_extra": 0, + "channel": "ec0350a3c3b1160b055555acf5902a5f", + "channelname": "tvN SPORTS", + "title": { + "kor": "23-24 AFC 챔피언스리그 하이라이트" + }, + "description": { + "kor": "23-24 AFC 챔피언스리그 하이라이트\n장르 : 스포츠\n등급 : 전체 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 4, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/23-24 AFC 챔피언스리그 하이라이트.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 0, + "height": 0, + "duration": 0, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1714112628, + "stop": 1714112633 + } + ] +} diff --git a/config/dvr/log/3397ce6bfcd195df86e1533773839aae b/config/dvr/log/3397ce6bfcd195df86e1533773839aae new file mode 100644 index 0000000..585bc0a --- /dev/null +++ b/config/dvr/log/3397ce6bfcd195df86e1533773839aae @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714108800, + "start_extra": 0, + "stop": 1714113600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "하이드 스페셜" + }, + "description": { + "kor": "하이드 스페셜\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/4977d30148e01aac7b1366ed4b4e0aaa b/config/dvr/log/4977d30148e01aac7b1366ed4b4e0aaa new file mode 100644 index 0000000..e031116 --- /dev/null +++ b/config/dvr/log/4977d30148e01aac7b1366ed4b4e0aaa @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714109400, + "start_extra": 0, + "stop": 1714113000, + "stop_extra": 0, + "channel": "ec0350a3c3b1160b055555acf5902a5f", + "channelname": "tvN SPORTS", + "title": { + "kor": "23-24 AFC 챔피언스리그 하이라이트" + }, + "description": { + "kor": "23-24 AFC 챔피언스리그 하이라이트\n장르 : 스포츠\n등급 : 전체 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 4, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/5a12501782146421248bc1eb45d80eb5 b/config/dvr/log/5a12501782146421248bc1eb45d80eb5 new file mode 100644 index 0000000..268494a --- /dev/null +++ b/config/dvr/log/5a12501782146421248bc1eb45d80eb5 @@ -0,0 +1,60 @@ +{ + "enabled": true, + "start": 1713792600, + "start_extra": 0, + "stop": 1713801000, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "최강야구" + }, + "description": { + "kor": "최강야구\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "c694ce9eec463114694074f1b132f9fb", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 1975, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/최강야구 - -.mkv", + "info": [ + { + "type": "H264", + "width": 960, + "height": 540, + "duration": 3003, + "aspect_num": 16, + "aspect_den": 9 + }, + { + "type": "AAC", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1713792540, + "stop": 1713801000 + } + ] +} diff --git a/config/dvr/log/5ab1b7a6d1da6978710967cb21c339bc b/config/dvr/log/5ab1b7a6d1da6978710967cb21c339bc new file mode 100644 index 0000000..59b89a1 --- /dev/null +++ b/config/dvr/log/5ab1b7a6d1da6978710967cb21c339bc @@ -0,0 +1,63 @@ +{ + "enabled": true, + "start": 1713615600, + "start_extra": 0, + "stop": 1713621600, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "눈물의 여왕" + }, + "description": { + "kor": "눈물의 여왕\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 6, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/눈물의 여왕 - -.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713615540, + "stop": 1713621600 + } + ] +} diff --git a/config/dvr/log/5d72fcfc9f7805e041dec596a1f325c8 b/config/dvr/log/5d72fcfc9f7805e041dec596a1f325c8 new file mode 100644 index 0000000..31cd5a1 --- /dev/null +++ b/config/dvr/log/5d72fcfc9f7805e041dec596a1f325c8 @@ -0,0 +1,66 @@ +{ + "enabled": true, + "start": 1713288600, + "start_extra": 0, + "stop": 1713294000, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "한문철의 블랙박스 리뷰" + }, + "description": { + "kor": "한문철의 블랙박스 리뷰\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 2612, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/한문철의 블랙박스 리뷰 - --1.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1713288540, + "stop": 1713294000 + } + ] +} diff --git a/config/dvr/log/64c6e41acdf316b114e195a3d7ab082c b/config/dvr/log/64c6e41acdf316b114e195a3d7ab082c new file mode 100644 index 0000000..fd4df9d --- /dev/null +++ b/config/dvr/log/64c6e41acdf316b114e195a3d7ab082c @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714107120, + "start_extra": 0, + "stop": 1714114200, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "김창옥 쇼 2" + }, + "description": { + "kor": "김창옥 쇼 2\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/65e76c3023ec82ab29a30552c72b1678 b/config/dvr/log/65e76c3023ec82ab29a30552c72b1678 new file mode 100644 index 0000000..bcfcee4 --- /dev/null +++ b/config/dvr/log/65e76c3023ec82ab29a30552c72b1678 @@ -0,0 +1,60 @@ +{ + "enabled": true, + "start": 1713589800, + "start_extra": 0, + "stop": 1713595200, + "stop_extra": 0, + "channel": "363bdf6f2867dd7eb6d9af5b62581d97", + "channelname": "SBS", + "title": { + "kor": "꼬리에 꼬리를 무는 그날 이야기" + }, + "description": { + "kor": "꼬리에 꼬리를 무는 그날 이야기\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 7424, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/꼬리에 꼬리를 무는 그날 이야기 - -.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713589740, + "stop": 1713595200 + } + ] +} diff --git a/config/dvr/log/8284f53e26c2b9d97070d410c9171392 b/config/dvr/log/8284f53e26c2b9d97070d410c9171392 new file mode 100644 index 0000000..16a1385 --- /dev/null +++ b/config/dvr/log/8284f53e26c2b9d97070d410c9171392 @@ -0,0 +1,60 @@ +{ + "enabled": true, + "start": 1712725200, + "start_extra": 0, + "stop": 1712732400, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "한문철의 블랙박스 리뷰" + }, + "description": { + "kor": "한문철의 블랙박스 리뷰\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 2147483646, + "removal": 1, + "playposition": 0, + "playcount": 0, + "config_name": "c694ce9eec463114694074f1b132f9fb", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 107, + "errors": 0, + "data_errors": 1211, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "comment": "Re-record", + "files": [ + { + "filename": "/recordings/JTBC/한문철의 블랙박스 리뷰 - --JTBC-1.mkv", + "info": [ + { + "type": "H264", + "width": 960, + "height": 540, + "duration": 3003, + "aspect_num": 16, + "aspect_den": 9 + }, + { + "type": "AAC", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1712725200, + "stop": 1712732400 + } + ] +} diff --git a/config/dvr/log/8e80065115471077c4944f16da49de5f b/config/dvr/log/8e80065115471077c4944f16da49de5f new file mode 100644 index 0000000..915a7d5 --- /dev/null +++ b/config/dvr/log/8e80065115471077c4944f16da49de5f @@ -0,0 +1,36 @@ +{ + "enabled": true, + "start": 1714397400, + "start_extra": 0, + "stop": 1714406400, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "최강야구" + }, + "description": { + "kor": "최강야구\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 200, + "errors": 1, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0 +} diff --git a/config/dvr/log/9166b4dbd29e483a1a9d0b16ec497461 b/config/dvr/log/9166b4dbd29e483a1a9d0b16ec497461 new file mode 100644 index 0000000..1b9b6ac --- /dev/null +++ b/config/dvr/log/9166b4dbd29e483a1a9d0b16ec497461 @@ -0,0 +1,65 @@ +{ + "enabled": true, + "start": 1715232000, + "start_extra": 0, + "stop": 1715238600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "한문철의 블랙박스 리뷰" + }, + "description": { + "kor": "한문철의 블랙박스 리뷰\n장르 : 교양/정보\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 11, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/한문철의 블랙박스 리뷰.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1715231940, + "stop": 1715238600 + } + ] +} diff --git a/config/dvr/log/b3b659d5b6fcf4397f93d5c40f4a922b b/config/dvr/log/b3b659d5b6fcf4397f93d5c40f4a922b new file mode 100644 index 0000000..5e90c54 --- /dev/null +++ b/config/dvr/log/b3b659d5b6fcf4397f93d5c40f4a922b @@ -0,0 +1,59 @@ +{ + "enabled": true, + "start": 1713158340, + "start_extra": 0, + "stop": 1713164460, + "stop_extra": 0, + "channel": "c4a15572fb9044d1af453f4426885ea7", + "channelname": "JTBC4", + "title": { + "kor": "아는 형님" + }, + "description": { + "kor": "아는 형님\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "c694ce9eec463114694074f1b132f9fb", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 1, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/아는 형님 - -.mkv", + "info": [ + { + "type": "H264", + "width": 960, + "height": 540, + "duration": 3003, + "aspect_num": 16, + "aspect_den": 9 + }, + { + "type": "AAC", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1713158280, + "stop": 1713164460 + } + ] +} diff --git a/config/dvr/log/b59c83928062fd9ad0005ec22337182e b/config/dvr/log/b59c83928062fd9ad0005ec22337182e new file mode 100644 index 0000000..e031116 --- /dev/null +++ b/config/dvr/log/b59c83928062fd9ad0005ec22337182e @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714109400, + "start_extra": 0, + "stop": 1714113000, + "stop_extra": 0, + "channel": "ec0350a3c3b1160b055555acf5902a5f", + "channelname": "tvN SPORTS", + "title": { + "kor": "23-24 AFC 챔피언스리그 하이라이트" + }, + "description": { + "kor": "23-24 AFC 챔피언스리그 하이라이트\n장르 : 스포츠\n등급 : 전체 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 4, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/b77de96a99dd10632f6548879161ebee b/config/dvr/log/b77de96a99dd10632f6548879161ebee new file mode 100644 index 0000000..585bc0a --- /dev/null +++ b/config/dvr/log/b77de96a99dd10632f6548879161ebee @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714108800, + "start_extra": 0, + "stop": 1714113600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "하이드 스페셜" + }, + "description": { + "kor": "하이드 스페셜\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/c9cdc80217502a80b90ddcd1fb18c542 b/config/dvr/log/c9cdc80217502a80b90ddcd1fb18c542 new file mode 100644 index 0000000..4423b5e --- /dev/null +++ b/config/dvr/log/c9cdc80217502a80b90ddcd1fb18c542 @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714111200, + "start_extra": 0, + "stop": 1714116600, + "stop_extra": 0, + "channel": "b998610ab08ab06a90b10310385aa9db", + "channelname": "채널 J", + "title": { + "kor": "고독한 미식가 스페셜~교토.나고야 출장편~" + }, + "description": { + "kor": "고독한 미식가 스페셜~교토.나고야 출장편~\n장르 : 드라마\n등급 : 12세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/ca6ea995eaf834cc2a683fb7e88547c3 b/config/dvr/log/ca6ea995eaf834cc2a683fb7e88547c3 new file mode 100644 index 0000000..356464f --- /dev/null +++ b/config/dvr/log/ca6ea995eaf834cc2a683fb7e88547c3 @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1713355200, + "start_extra": 0, + "stop": 1713361200, + "stop_extra": 0, + "channel": "363bdf6f2867dd7eb6d9af5b62581d97", + "channelname": "SBS", + "title": { + "kor": "골 때리는 그녀들" + }, + "description": { + "kor": "골 때리는 그녀들\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 7402, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/cedb36c06cb894822a11a2c7dacea5cd b/config/dvr/log/cedb36c06cb894822a11a2c7dacea5cd new file mode 100644 index 0000000..aba5d75 --- /dev/null +++ b/config/dvr/log/cedb36c06cb894822a11a2c7dacea5cd @@ -0,0 +1,63 @@ +{ + "enabled": true, + "start": 1713702000, + "start_extra": 0, + "stop": 1713708000, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "눈물의 여왕" + }, + "description": { + "kor": "눈물의 여왕\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 24514, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/queenOfTears.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713701940, + "stop": 1713708000 + } + ] +} diff --git a/config/dvr/log/d0443967771b3a2ce2ef4f583efa0233 b/config/dvr/log/d0443967771b3a2ce2ef4f583efa0233 new file mode 100644 index 0000000..56b1a52 --- /dev/null +++ b/config/dvr/log/d0443967771b3a2ce2ef4f583efa0233 @@ -0,0 +1,58 @@ +{ + "enabled": true, + "start": 1714109400, + "start_extra": 0, + "stop": 1714113000, + "stop_extra": 0, + "channel": "ec0350a3c3b1160b055555acf5902a5f", + "channelname": "tvN SPORTS", + "title": { + "kor": "23-24 AFC 챔피언스리그 하이라이트" + }, + "description": { + "kor": "23-24 AFC 챔피언스리그 하이라이트\n장르 : 스포츠\n등급 : 전체 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 4, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/23-24 AFC 챔피언스리그 하이라이트.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 0, + "height": 0, + "duration": 0, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1714112847, + "stop": 1714112853 + } + ] +} diff --git a/config/dvr/log/d992e40734e06e568d5887c3eecee26e b/config/dvr/log/d992e40734e06e568d5887c3eecee26e new file mode 100644 index 0000000..6dc50cc --- /dev/null +++ b/config/dvr/log/d992e40734e06e568d5887c3eecee26e @@ -0,0 +1,39 @@ +{ + "enabled": true, + "start": 1713136200, + "start_extra": 0, + "stop": 1713142200, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "눈물의 여왕" + }, + "description": { + "kor": "눈물의 여왕\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "comment": "Re-record", + "files": [ + ] +} diff --git a/config/dvr/log/dd81ea88ed733341e69961c966f29425 b/config/dvr/log/dd81ea88ed733341e69961c966f29425 new file mode 100644 index 0000000..06cc9af --- /dev/null +++ b/config/dvr/log/dd81ea88ed733341e69961c966f29425 @@ -0,0 +1,59 @@ +{ + "enabled": true, + "start": 1713965400, + "start_extra": 0, + "stop": 1713971700, + "stop_extra": 0, + "channel": "3bc545adc242d8d81402c46da95d2b94", + "channelname": "MBC", + "title": { + "kor": "라디오스타" + }, + "description": { + "kor": "라디오스타\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 17624, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/라디오스타 - -.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713965340, + "stop": 1713971700 + } + ] +} diff --git a/config/dvr/log/eaccda4e339e8a7c0533fe8907d8d75e b/config/dvr/log/eaccda4e339e8a7c0533fe8907d8d75e new file mode 100644 index 0000000..585bc0a --- /dev/null +++ b/config/dvr/log/eaccda4e339e8a7c0533fe8907d8d75e @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714108800, + "start_extra": 0, + "stop": 1714113600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "하이드 스페셜" + }, + "description": { + "kor": "하이드 스페셜\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/ef46083975b7302127abc85d18a96a55 b/config/dvr/log/ef46083975b7302127abc85d18a96a55 new file mode 100644 index 0000000..5c66197 --- /dev/null +++ b/config/dvr/log/ef46083975b7302127abc85d18a96a55 @@ -0,0 +1,65 @@ +{ + "enabled": true, + "start": 1713091200, + "start_extra": 0, + "stop": 1713099600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "뭉쳐야 찬다 3" + }, + "description": { + "kor": "뭉쳐야 찬다 3\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 16662, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/JTBC/뭉쳐야 찬다 3 - --JTBC.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 1, + "audio_version": 1 + } + ], + "start": 1713091140, + "stop": 1713099600 + } + ] +} diff --git a/config/dvr/log/f01e543e4a17d4993e102b3c7fb9a5aa b/config/dvr/log/f01e543e4a17d4993e102b3c7fb9a5aa new file mode 100644 index 0000000..f1e2ac8 --- /dev/null +++ b/config/dvr/log/f01e543e4a17d4993e102b3c7fb9a5aa @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714106760, + "start_extra": 0, + "stop": 1714112280, + "stop_extra": 0, + "channel": "cf72d1e44b5a112d099af086324e0813", + "channelname": "MBC Dramanet", + "title": { + "kor": "놀면 뭐하니?" + }, + "description": { + "kor": "놀면 뭐하니?\n장르 : 연예/오락\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 0, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/f35e6d727ae93854888fc64528c30944 b/config/dvr/log/f35e6d727ae93854888fc64528c30944 new file mode 100644 index 0000000..585bc0a --- /dev/null +++ b/config/dvr/log/f35e6d727ae93854888fc64528c30944 @@ -0,0 +1,38 @@ +{ + "enabled": true, + "start": 1714108800, + "start_extra": 0, + "stop": 1714113600, + "stop_extra": 0, + "channel": "d588fc5111906dbb9e86bb2c913e3355", + "channelname": "JTBC", + "title": { + "kor": "하이드 스페셜" + }, + "description": { + "kor": "하이드 스페셜\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 0, + "dvb_eid": 0, + "noresched": true, + "norerecord": false, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + ] +} diff --git a/config/dvr/log/f91d4d9cd5d3bcf0acfba0de4caf244e b/config/dvr/log/f91d4d9cd5d3bcf0acfba0de4caf244e new file mode 100644 index 0000000..7c15554 --- /dev/null +++ b/config/dvr/log/f91d4d9cd5d3bcf0acfba0de4caf244e @@ -0,0 +1,63 @@ +{ + "enabled": true, + "start": 1714219800, + "start_extra": 0, + "stop": 1714226400, + "stop_extra": 0, + "channel": "d31d240785e94502552e0ee3c9cc8490", + "channelname": "tvN", + "title": { + "kor": "눈물의 여왕" + }, + "description": { + "kor": "눈물의 여왕\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 7353, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/눈물의 여왕.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + }, + { + "type": "AC3", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1714219740, + "stop": 1714226400 + } + ] +} diff --git a/config/dvr/log/fe40672cf649df8ce1d5b97fc0920830 b/config/dvr/log/fe40672cf649df8ce1d5b97fc0920830 new file mode 100644 index 0000000..b4942d1 --- /dev/null +++ b/config/dvr/log/fe40672cf649df8ce1d5b97fc0920830 @@ -0,0 +1,59 @@ +{ + "enabled": true, + "start": 1713960000, + "start_extra": 0, + "stop": 1713965400, + "stop_extra": 0, + "channel": "3bc545adc242d8d81402c46da95d2b94", + "channelname": "MBC", + "title": { + "kor": "수사반장 1958" + }, + "description": { + "kor": "수사반장 1958\n장르 : 드라마\n등급 : 15세 이상 관람가" + }, + "pri": 2, + "retention": 0, + "removal": 0, + "playposition": 0, + "playcount": 0, + "config_name": "7a5edfbe189851e5b1d1df19c93962f0", + "owner": "myadmin", + "creator": "myadmin", + "errorcode": 0, + "errors": 0, + "data_errors": 9111, + "dvb_eid": 0, + "noresched": true, + "norerecord": true, + "fileremoved": 0, + "autorec": "", + "timerec": "", + "parent": "", + "child": "", + "content_type": 1, + "broadcast": 0, + "files": [ + { + "filename": "/recordings/수사반장 1958 - -.ts", + "info": [ + { + "type": "MPEG2VIDEO", + "width": 1920, + "height": 1080, + "duration": 3003, + "aspect_num": 0, + "aspect_den": 0 + }, + { + "type": "AC3", + "language": "kor", + "audio_type": 0, + "audio_version": 1 + } + ], + "start": 1713959940, + "stop": 1713965400 + } + ] +} diff --git a/config/epgdb.v2 b/config/epgdb.v2 new file mode 100644 index 0000000..76ea9f8 Binary files /dev/null and b/config/epgdb.v2 differ diff --git a/config/epggrab/config b/config/epggrab/config new file mode 100644 index 0000000..478c6a2 --- /dev/null +++ b/config/epggrab/config @@ -0,0 +1,161 @@ +{ + "channel_rename": true, + "channel_renumber": true, + "channel_reicon": true, + "epgdb_periodicsave": 6, + "epgdb_saveafterimport": true, + "cron": "# Default config (00:04 and 12:04 everyday)\n4 */12 * * *", + "ota_initial": true, + "ota_cron": "# Default config (01:04 and 13:04 everyday)\n4 1 * * *\n4 13 * * *", + "ota_timeout": 600, + "modules": { + "/usr/bin/tv_grab_wg": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: WebGrab+Plus XML file grabber", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "/usr/bin/tv_grab_kr_sk": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: Korea (SK)", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "/usr/bin/tv_grab_kr_lg": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: Korea (LG)", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "/usr/bin/tv_grab_kr_kt": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: Korea (KT)", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "/usr/bin/tv_grab_klive": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: KLIVE EPG GRABBER", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "/usr/bin/tv_grab_file": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: XML file grabber", + "type": "Internal", + "enabled": true, + "priority": 1 + }, + "/usr/bin/tv_grab_combiner": { + "class": "epggrab_mod_int_xmltv", + "dn_chnum": 0, + "name": "XMLTV: Combine data from several other grabbers", + "type": "Internal", + "enabled": false, + "priority": 3 + }, + "xmltv": { + "class": "epggrab_mod_ext_xmltv", + "dn_chnum": false, + "name": "XMLTV", + "type": "External", + "enabled": false, + "priority": 3 + }, + "pyepg": { + "class": "epggrab_mod_ext_pyepg", + "name": "PyEPG", + "type": "External", + "enabled": false, + "priority": 4 + }, + "opentv-skyuk": { + "class": "epggrab_mod_ota", + "name": "OpenTV: Sky UK", + "type": "Over-the-air", + "enabled": false, + "priority": 2 + }, + "opentv-skynz": { + "class": "epggrab_mod_ota", + "name": "OpenTV: Sky NZ", + "type": "Over-the-air", + "enabled": false, + "priority": 2 + }, + "opentv-skyit": { + "class": "epggrab_mod_ota", + "name": "OpenTV: Sky Italia", + "type": "Over-the-air", + "enabled": false, + "priority": 2 + }, + "opentv-ausat": { + "class": "epggrab_mod_ota", + "name": "OpenTV: Ausat", + "type": "Over-the-air", + "enabled": false, + "priority": 2 + }, + "psip": { + "class": "epggrab_mod_ota", + "name": "PSIP: ATSC Grabber", + "type": "Over-the-air", + "enabled": false, + "priority": 1 + }, + "Bulsatcom_39E": { + "class": "epggrab_mod_ota", + "name": "Bulsatcom: Bula 39E", + "type": "Over-the-air", + "enabled": false, + "priority": 5 + }, + "viasat_baltic": { + "class": "epggrab_mod_ota", + "name": "VIASAT: Baltic", + "type": "Over-the-air", + "enabled": false, + "priority": 5 + }, + "nz_freeview": { + "class": "epggrab_mod_ota", + "name": "New Zealand: Freeview", + "type": "Over-the-air", + "enabled": false, + "priority": 5 + }, + "uk_freeview": { + "class": "epggrab_mod_ota", + "name": "UK: Freeview", + "type": "Over-the-air", + "enabled": false, + "priority": 5 + }, + "uk_freesat": { + "class": "epggrab_mod_ota", + "name": "UK: Freesat", + "type": "Over-the-air", + "enabled": false, + "priority": 5 + }, + "eit": { + "class": "epggrab_mod_ota", + "name": "EIT: DVB Grabber", + "type": "Over-the-air", + "enabled": false, + "priority": 1 + } + } +} diff --git a/config/epggrab/xmltv/channels/008e3fe6b95717ec14fbd44b36eb421d b/config/epggrab/xmltv/channels/008e3fe6b95717ec14fbd44b36eb421d new file mode 100644 index 0000000..12bc294 --- /dev/null +++ b/config/epggrab/xmltv/channels/008e3fe6b95717ec14fbd44b36eb421d @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "195.kt", + "name": "Fox News", + "names": "\"Fox News\",\"KT\",\"195\",\"195 Fox News\",\"195 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/009d2dd16696d4891c0c498a656d37a0 b/config/epggrab/xmltv/channels/009d2dd16696d4891c0c498a656d37a0 new file mode 100644 index 0000000..997f260 --- /dev/null +++ b/config/epggrab/xmltv/channels/009d2dd16696d4891c0c498a656d37a0 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "94.kt", + "name": "CMCTV", + "names": "\"CMCTV\",\"KT\",\"94\",\"94 CMCTV\",\"94 KT\"", + "number": 0, + "channels": [ + "194d1550978e646d73f57f8fb11501f3" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/037cd4c725af33ef1a73047746fab740 b/config/epggrab/xmltv/channels/037cd4c725af33ef1a73047746fab740 new file mode 100644 index 0000000..e454b76 --- /dev/null +++ b/config/epggrab/xmltv/channels/037cd4c725af33ef1a73047746fab740 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "87.kt", + "name": "K STAR", + "names": "\"K STAR\",\"KT\",\"87\",\"87 K STAR\",\"87 KT\"", + "number": 0, + "channels": [ + "a8eeb09ad3d04db8c796dc9f95de9c4e" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/039ae2fbbeb484526a723e315ae757d0 b/config/epggrab/xmltv/channels/039ae2fbbeb484526a723e315ae757d0 new file mode 100644 index 0000000..092fdb5 --- /dev/null +++ b/config/epggrab/xmltv/channels/039ae2fbbeb484526a723e315ae757d0 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "0.kt", + "name": "MBC Every1", + "names": "\"MBC Every1\",\"KT\",\"0\",\"0 MBC Every1\",\"0 KT\"", + "number": 0, + "channels": [ + "ae9da1906cdb201f3cf26ab2ea55f592" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/04bd3681c82442daee49a4e0bdf8a856 b/config/epggrab/xmltv/channels/04bd3681c82442daee49a4e0bdf8a856 new file mode 100644 index 0000000..ea1916a --- /dev/null +++ b/config/epggrab/xmltv/channels/04bd3681c82442daee49a4e0bdf8a856 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "189.kt", + "name": "NHK WP", + "names": "\"NHK WP\",\"KT\",\"189\",\"189 NHK WP\",\"189 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/071ba385c6837b1234259744aa1e418a b/config/epggrab/xmltv/channels/071ba385c6837b1234259744aa1e418a new file mode 100644 index 0000000..f295a8e --- /dev/null +++ b/config/epggrab/xmltv/channels/071ba385c6837b1234259744aa1e418a @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "103.kt", + "name": "mplex", + "names": "\"mplex\",\"KT\",\"103\",\"103 mplex\",\"103 KT\"", + "number": 0, + "channels": [ + "2ed2d30a2ab682f07a9c3923946dfbed" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0776e2333c13e54234e59aa98dbfdad4 b/config/epggrab/xmltv/channels/0776e2333c13e54234e59aa98dbfdad4 new file mode 100644 index 0000000..cd0cb07 --- /dev/null +++ b/config/epggrab/xmltv/channels/0776e2333c13e54234e59aa98dbfdad4 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "26.kt", + "name": "OBS", + "names": "\"OBS\",\"KT\",\"26\",\"26 OBS\",\"26 KT\"", + "number": 0, + "channels": [ + "b25433c7be8de5ee7da36bb4ab8be99a" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/07bdf134874426aaa988086c2a2dd4d0 b/config/epggrab/xmltv/channels/07bdf134874426aaa988086c2a2dd4d0 new file mode 100644 index 0000000..0bc4401 --- /dev/null +++ b/config/epggrab/xmltv/channels/07bdf134874426aaa988086c2a2dd4d0 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "85.kt", + "name": "코미디TV", + "names": "\"코미디TV\",\"KT\",\"85\",\"85 코미디TV\",\"85 KT\"", + "number": 0, + "channels": [ + "d3873362d16de086cd9e609db2b80dbe" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/089373c0541670f0a512a35f394c6eec b/config/epggrab/xmltv/channels/089373c0541670f0a512a35f394c6eec new file mode 100644 index 0000000..c2c56d1 --- /dev/null +++ b/config/epggrab/xmltv/channels/089373c0541670f0a512a35f394c6eec @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "278.kt", + "name": "사회안전방송", + "names": "\"사회안전방송\",\"KT\",\"278\",\"278 사회안전방송\",\"278 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/08ed041037f25d185f913059f1134105 b/config/epggrab/xmltv/channels/08ed041037f25d185f913059f1134105 new file mode 100644 index 0000000..055497f --- /dev/null +++ b/config/epggrab/xmltv/channels/08ed041037f25d185f913059f1134105 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "15.kt", + "name": "JTBC", + "names": "\"JTBC\",\"KT\",\"15\",\"15 JTBC\",\"15 KT\"", + "number": 0, + "channels": [ + "d588fc5111906dbb9e86bb2c913e3355" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/091952e72d70732552f55082d5aa5081 b/config/epggrab/xmltv/channels/091952e72d70732552f55082d5aa5081 new file mode 100644 index 0000000..9eabdae --- /dev/null +++ b/config/epggrab/xmltv/channels/091952e72d70732552f55082d5aa5081 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "31.kt", + "name": "MBC Dramanet", + "names": "\"MBC Dramanet\",\"KT\",\"31\",\"31 MBC Dramanet\",\"31 KT\"", + "number": 0, + "channels": [ + "cf72d1e44b5a112d099af086324e0813" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/09508879a6a31ff3951798326a201e0a b/config/epggrab/xmltv/channels/09508879a6a31ff3951798326a201e0a new file mode 100644 index 0000000..c0feb32 --- /dev/null +++ b/config/epggrab/xmltv/channels/09508879a6a31ff3951798326a201e0a @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "34.kt", + "name": "W쇼핑", + "names": "\"W쇼핑\",\"KT\",\"34\",\"34 W쇼핑\",\"34 KT\"", + "number": 0, + "channels": [ + "f56ce3b59ed15df9ffb77a18659c25d8" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0b54b9d91307a3b9a83a0e7ece994a31 b/config/epggrab/xmltv/channels/0b54b9d91307a3b9a83a0e7ece994a31 new file mode 100644 index 0000000..aacd283 --- /dev/null +++ b/config/epggrab/xmltv/channels/0b54b9d91307a3b9a83a0e7ece994a31 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "145.kt", + "name": "이벤트TV", + "names": "\"이벤트TV\",\"KT\",\"145\",\"145 이벤트TV\",\"145 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0b9d7b0b26a47c002531da10c40300c7 b/config/epggrab/xmltv/channels/0b9d7b0b26a47c002531da10c40300c7 new file mode 100644 index 0000000..0436f8b --- /dev/null +++ b/config/epggrab/xmltv/channels/0b9d7b0b26a47c002531da10c40300c7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "240.kt", + "name": "YCN유림방송", + "names": "\"YCN유림방송\",\"KT\",\"240\",\"240 YCN유림방송\",\"240 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0c028b51a5fc4cfc4f35bc0e67ac3a10 b/config/epggrab/xmltv/channels/0c028b51a5fc4cfc4f35bc0e67ac3a10 new file mode 100644 index 0000000..6d5c1db --- /dev/null +++ b/config/epggrab/xmltv/channels/0c028b51a5fc4cfc4f35bc0e67ac3a10 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "23.kt", + "name": "연합뉴스TV", + "names": "\"연합뉴스TV\",\"KT\",\"23\",\"23 연합뉴스TV\",\"23 KT\"", + "number": 0, + "channels": [ + "3d68c678afe638605a91913dbaf6bacc" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0e05da8955c1547ce6bfd77a9612217e b/config/epggrab/xmltv/channels/0e05da8955c1547ce6bfd77a9612217e new file mode 100644 index 0000000..8b71725 --- /dev/null +++ b/config/epggrab/xmltv/channels/0e05da8955c1547ce6bfd77a9612217e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "258.kt", + "name": "채널칭", + "names": "\"채널칭\",\"KT\",\"258\",\"258 채널칭\",\"258 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0e2afb979d2e387956411826a72fc0f9 b/config/epggrab/xmltv/channels/0e2afb979d2e387956411826a72fc0f9 new file mode 100644 index 0000000..e49c0c9 --- /dev/null +++ b/config/epggrab/xmltv/channels/0e2afb979d2e387956411826a72fc0f9 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "995.kt", + "name": "ANIMAX", + "names": "\"ANIMAX\",\"KT\",\"995\",\"995 ANIMAX\",\"995 KT\"", + "number": 0, + "channels": [ + "b17ea8d45bb3c8e47f3b6be04000183a" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/0f7d9b607416505c2a39e76fb715ce5a b/config/epggrab/xmltv/channels/0f7d9b607416505c2a39e76fb715ce5a new file mode 100644 index 0000000..7d98eb9 --- /dev/null +++ b/config/epggrab/xmltv/channels/0f7d9b607416505c2a39e76fb715ce5a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "234.kt", + "name": "Good TV", + "names": "\"Good TV\",\"KT\",\"234\",\"234 Good TV\",\"234 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1019bbec1e80480c3b0fd9631f3b4faa b/config/epggrab/xmltv/channels/1019bbec1e80480c3b0fd9631f3b4faa new file mode 100644 index 0000000..9f173ac --- /dev/null +++ b/config/epggrab/xmltv/channels/1019bbec1e80480c3b0fd9631f3b4faa @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "3.kt", + "name": "tvN", + "names": "\"tvN\",\"KT\",\"3\",\"3 tvN\",\"3 KT\"", + "number": 0, + "channels": [ + "d31d240785e94502552e0ee3c9cc8490" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1063444d39c308cb9aa219d3e1f40bfc b/config/epggrab/xmltv/channels/1063444d39c308cb9aa219d3e1f40bfc new file mode 100644 index 0000000..1f582f1 --- /dev/null +++ b/config/epggrab/xmltv/channels/1063444d39c308cb9aa219d3e1f40bfc @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "241.kt", + "name": "STB상생방송", + "names": "\"STB상생방송\",\"KT\",\"241\",\"241 STB상생방송\",\"241 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1137dc3b243a627f81c0e72a20237caf b/config/epggrab/xmltv/channels/1137dc3b243a627f81c0e72a20237caf new file mode 100644 index 0000000..2ea95ed --- /dev/null +++ b/config/epggrab/xmltv/channels/1137dc3b243a627f81c0e72a20237caf @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "36.kt", + "name": "현대홈쇼핑+샵", + "names": "\"현대홈쇼핑+샵\",\"KT\",\"36\",\"36 현대홈쇼핑+샵\",\"36 KT\"", + "number": 0, + "channels": [ + "80e14092fd0c90acfd648f83f979ca06" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/125ec43da0488f7bdddca81ed188d4e8 b/config/epggrab/xmltv/channels/125ec43da0488f7bdddca81ed188d4e8 new file mode 100644 index 0000000..584a09f --- /dev/null +++ b/config/epggrab/xmltv/channels/125ec43da0488f7bdddca81ed188d4e8 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "60.kt", + "name": "MBC SPORTS+", + "names": "\"MBC SPORTS+\",\"KT\",\"60\",\"60 MBC SPORTS+\",\"60 KT\"", + "number": 0, + "channels": [ + "827c0ddf6d7922fdd9e26ea0c5c7f7ed" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/14ef127521668a809cb774702917ab32 b/config/epggrab/xmltv/channels/14ef127521668a809cb774702917ab32 new file mode 100644 index 0000000..6fd72f2 --- /dev/null +++ b/config/epggrab/xmltv/channels/14ef127521668a809cb774702917ab32 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "171.kt", + "name": "메디컬TV", + "names": "\"메디컬TV\",\"KT\",\"171\",\"171 메디컬TV\",\"171 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/15e453464693a9341a1ba0ac8b4f90a1 b/config/epggrab/xmltv/channels/15e453464693a9341a1ba0ac8b4f90a1 new file mode 100644 index 0000000..32088aa --- /dev/null +++ b/config/epggrab/xmltv/channels/15e453464693a9341a1ba0ac8b4f90a1 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "108.kt", + "name": "채널 J", + "names": "\"채널 J\",\"KT\",\"108\",\"108 채널 J\",\"108 KT\"", + "number": 0, + "channels": [ + "b998610ab08ab06a90b10310385aa9db" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/177b9bcb2d7c431bd62ae9e524218fd4 b/config/epggrab/xmltv/channels/177b9bcb2d7c431bd62ae9e524218fd4 new file mode 100644 index 0000000..0328fba --- /dev/null +++ b/config/epggrab/xmltv/channels/177b9bcb2d7c431bd62ae9e524218fd4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "190.kt", + "name": "ABC Australia", + "names": "\"ABC Australia\",\"KT\",\"190\",\"190 ABC Australia\",\"190 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1810d77cf2831daf820b725add8a707f b/config/epggrab/xmltv/channels/1810d77cf2831daf820b725add8a707f new file mode 100644 index 0000000..e6b2f89 --- /dev/null +++ b/config/epggrab/xmltv/channels/1810d77cf2831daf820b725add8a707f @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "57.kt", + "name": "SBSGOLF", + "names": "\"SBSGOLF\",\"KT\",\"57\",\"57 SBSGOLF\",\"57 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/18a9956cef44cd5faca7fdf8e5ec7dca b/config/epggrab/xmltv/channels/18a9956cef44cd5faca7fdf8e5ec7dca new file mode 100644 index 0000000..93bab66 --- /dev/null +++ b/config/epggrab/xmltv/channels/18a9956cef44cd5faca7fdf8e5ec7dca @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "40.kt", + "name": "tvN SHOW", + "names": "\"tvN SHOW\",\"KT\",\"40\",\"40 tvN SHOW\",\"40 KT\"", + "number": 0, + "channels": [ + "91eff9b62623c70e174c7cda2008d042" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/18cc7ec710f12e4d50a30d2dad0f16ad b/config/epggrab/xmltv/channels/18cc7ec710f12e4d50a30d2dad0f16ad new file mode 100644 index 0000000..c57097a --- /dev/null +++ b/config/epggrab/xmltv/channels/18cc7ec710f12e4d50a30d2dad0f16ad @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "47.kt", + "name": "Dramax", + "names": "\"Dramax\",\"KT\",\"47\",\"47 Dramax\",\"47 KT\"", + "number": 0, + "channels": [ + "21f0a2be06d297795978ce04e44e0834" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/18d1781873836ab587f14b8363e0f18a b/config/epggrab/xmltv/channels/18d1781873836ab587f14b8363e0f18a new file mode 100644 index 0000000..87b2536 --- /dev/null +++ b/config/epggrab/xmltv/channels/18d1781873836ab587f14b8363e0f18a @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "1.kt", + "name": "ENA", + "names": "\"ENA\",\"KT\",\"1\",\"1 ENA\",\"1 KT\"", + "number": 0, + "channels": [ + "679b87518bf8ebd3cb1a95f64e49dceb" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/18e2bc36cf936d1ab76395e51a2f9240 b/config/epggrab/xmltv/channels/18e2bc36cf936d1ab76395e51a2f9240 new file mode 100644 index 0000000..0fe053d --- /dev/null +++ b/config/epggrab/xmltv/channels/18e2bc36cf936d1ab76395e51a2f9240 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "987.kt", + "name": "대교 어린이TV", + "names": "\"대교 어린이TV\",\"KT\",\"987\",\"987 대교 어린이TV\",\"987 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1a933c8c0598a010802be3461b1674ab b/config/epggrab/xmltv/channels/1a933c8c0598a010802be3461b1674ab new file mode 100644 index 0000000..3d72560 --- /dev/null +++ b/config/epggrab/xmltv/channels/1a933c8c0598a010802be3461b1674ab @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "146.kt", + "name": "WeLike", + "names": "\"WeLike\",\"KT\",\"146\",\"146 WeLike\",\"146 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1b414992a992b7f2d13325cdb7490416 b/config/epggrab/xmltv/channels/1b414992a992b7f2d13325cdb7490416 new file mode 100644 index 0000000..b2b98d7 --- /dev/null +++ b/config/epggrab/xmltv/channels/1b414992a992b7f2d13325cdb7490416 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "977.kt", + "name": "Cbeebies", + "names": "\"Cbeebies\",\"KT\",\"977\",\"977 Cbeebies\",\"977 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1c8856057d28df56c9f9ed4dc289637d b/config/epggrab/xmltv/channels/1c8856057d28df56c9f9ed4dc289637d new file mode 100644 index 0000000..b7ac669 --- /dev/null +++ b/config/epggrab/xmltv/channels/1c8856057d28df56c9f9ed4dc289637d @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "239.kt", + "name": "원음방송", + "names": "\"원음방송\",\"KT\",\"239\",\"239 원음방송\",\"239 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1d84f4b0f4224f6dc44bec2810b599c7 b/config/epggrab/xmltv/channels/1d84f4b0f4224f6dc44bec2810b599c7 new file mode 100644 index 0000000..860433a --- /dev/null +++ b/config/epggrab/xmltv/channels/1d84f4b0f4224f6dc44bec2810b599c7 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "101.kt", + "name": "스크린", + "names": "\"스크린\",\"KT\",\"101\",\"101 스크린\",\"101 KT\"", + "number": 0, + "channels": [ + "d4c41c6d8d7cd6f825e8158c9c8b58da" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1f3bdccd973c2086e7097f452da0ecd9 b/config/epggrab/xmltv/channels/1f3bdccd973c2086e7097f452da0ecd9 new file mode 100644 index 0000000..1815002 --- /dev/null +++ b/config/epggrab/xmltv/channels/1f3bdccd973c2086e7097f452da0ecd9 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "102.kt", + "name": "채널차이나", + "names": "\"채널차이나\",\"KT\",\"102\",\"102 채널차이나\",\"102 KT\"", + "number": 0, + "channels": [ + "0362214a5c86921a5478fc27c1dfef11" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/1f65b32fff8777822f74a58bc56647a3 b/config/epggrab/xmltv/channels/1f65b32fff8777822f74a58bc56647a3 new file mode 100644 index 0000000..da75f64 --- /dev/null +++ b/config/epggrab/xmltv/channels/1f65b32fff8777822f74a58bc56647a3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "988.kt", + "name": "핑크퐁채널", + "names": "\"핑크퐁채널\",\"KT\",\"988\",\"988 핑크퐁채널\",\"988 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/201c9ec10301316454d57210b1c7b0f0 b/config/epggrab/xmltv/channels/201c9ec10301316454d57210b1c7b0f0 new file mode 100644 index 0000000..7acc5d6 --- /dev/null +++ b/config/epggrab/xmltv/channels/201c9ec10301316454d57210b1c7b0f0 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "187.kt", + "name": "연합뉴스경제TV", + "names": "\"연합뉴스경제TV\",\"KT\",\"187\",\"187 연합뉴스경제TV\",\"187 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/207018f662f32fcd5d408046cb70dbf3 b/config/epggrab/xmltv/channels/207018f662f32fcd5d408046cb70dbf3 new file mode 100644 index 0000000..3507df0 --- /dev/null +++ b/config/epggrab/xmltv/channels/207018f662f32fcd5d408046cb70dbf3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "181.kt", + "name": "MTN 머니투데이방송", + "names": "\"MTN 머니투데이방송\",\"KT\",\"181\",\"181 MTN 머니투데이방송\",\"181 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/207e18e2b3ad0124e9e23c8d3b984e9c b/config/epggrab/xmltv/channels/207e18e2b3ad0124e9e23c8d3b984e9c new file mode 100644 index 0000000..6f781f6 --- /dev/null +++ b/config/epggrab/xmltv/channels/207e18e2b3ad0124e9e23c8d3b984e9c @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "99.kt", + "name": "MBN Plus", + "names": "\"MBN Plus\",\"KT\",\"99\",\"99 MBN Plus\",\"99 KT\"", + "number": 0, + "channels": [ + "56652486d16770606d7aced49566bc93" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2142370e1f7f29c165cbf6d201b5d2d6 b/config/epggrab/xmltv/channels/2142370e1f7f29c165cbf6d201b5d2d6 new file mode 100644 index 0000000..91c3841 --- /dev/null +++ b/config/epggrab/xmltv/channels/2142370e1f7f29c165cbf6d201b5d2d6 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "28.kt", + "name": "GS MY SHOP", + "names": "\"GS MY SHOP\",\"KT\",\"28\",\"28 GS MY SHOP\",\"28 KT\"", + "number": 0, + "channels": [ + "e7a2a08e7d25069475aaa01d73c745e8" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2149f3bb7b771890393a9260ce1a83e4 b/config/epggrab/xmltv/channels/2149f3bb7b771890393a9260ce1a83e4 new file mode 100644 index 0000000..c21ef86 --- /dev/null +++ b/config/epggrab/xmltv/channels/2149f3bb7b771890393a9260ce1a83e4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "104.kt", + "name": "THE MOVIE", + "names": "\"THE MOVIE\",\"KT\",\"104\",\"104 THE MOVIE\",\"104 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2158f84e689fc1f6f3620540774f5623 b/config/epggrab/xmltv/channels/2158f84e689fc1f6f3620540774f5623 new file mode 100644 index 0000000..f6089e3 --- /dev/null +++ b/config/epggrab/xmltv/channels/2158f84e689fc1f6f3620540774f5623 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "128.kt", + "name": "마운틴TV", + "names": "\"마운틴TV\",\"KT\",\"128\",\"128 마운틴TV\",\"128 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/21fd68ff256130b9a5b565a406a5e49c b/config/epggrab/xmltv/channels/21fd68ff256130b9a5b565a406a5e49c new file mode 100644 index 0000000..bf5c34f --- /dev/null +++ b/config/epggrab/xmltv/channels/21fd68ff256130b9a5b565a406a5e49c @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "141.kt", + "name": "History", + "names": "\"History\",\"KT\",\"141\",\"141 History\",\"141 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/247f001e4bdf9bae1bd09e9bdf062615 b/config/epggrab/xmltv/channels/247f001e4bdf9bae1bd09e9bdf062615 new file mode 100644 index 0000000..2dda79c --- /dev/null +++ b/config/epggrab/xmltv/channels/247f001e4bdf9bae1bd09e9bdf062615 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "7.kt", + "name": "KBS2", + "names": "\"KBS2\",\"KT\",\"7\",\"7 KBS2\",\"7 KT\"", + "number": 0, + "channels": [ + "cacb6bd3d5e8868e82dcbde443d7a61c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/24e67ada5cf370a1ced5111960fb0046 b/config/epggrab/xmltv/channels/24e67ada5cf370a1ced5111960fb0046 new file mode 100644 index 0000000..56e6ace --- /dev/null +++ b/config/epggrab/xmltv/channels/24e67ada5cf370a1ced5111960fb0046 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "225.kt", + "name": "디마티비", + "names": "\"디마티비\",\"KT\",\"225\",\"225 디마티비\",\"225 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/27eaa41ee32420a10d6a8d4ef88ade5b b/config/epggrab/xmltv/channels/27eaa41ee32420a10d6a8d4ef88ade5b new file mode 100644 index 0000000..24cd336 --- /dev/null +++ b/config/epggrab/xmltv/channels/27eaa41ee32420a10d6a8d4ef88ade5b @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "86.kt", + "name": "OLIFE", + "names": "\"OLIFE\",\"KT\",\"86\",\"86 OLIFE\",\"86 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/28954372dd410575df9ec08fb3f19ac3 b/config/epggrab/xmltv/channels/28954372dd410575df9ec08fb3f19ac3 new file mode 100644 index 0000000..d16a6d5 --- /dev/null +++ b/config/epggrab/xmltv/channels/28954372dd410575df9ec08fb3f19ac3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "217.kt", + "name": "육아방송", + "names": "\"육아방송\",\"KT\",\"217\",\"217 육아방송\",\"217 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2a868c4cdb1fcaed8dd4792047cf4104 b/config/epggrab/xmltv/channels/2a868c4cdb1fcaed8dd4792047cf4104 new file mode 100644 index 0000000..b1ee45a --- /dev/null +++ b/config/epggrab/xmltv/channels/2a868c4cdb1fcaed8dd4792047cf4104 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "75.kt", + "name": "JTBC4", + "names": "\"JTBC4\",\"KT\",\"75\",\"75 JTBC4\",\"75 KT\"", + "number": 0, + "channels": [ + "c4a15572fb9044d1af453f4426885ea7" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2ababde933e47801a4e3492a88a09075 b/config/epggrab/xmltv/channels/2ababde933e47801a4e3492a88a09075 new file mode 100644 index 0000000..a1cfd9d --- /dev/null +++ b/config/epggrab/xmltv/channels/2ababde933e47801a4e3492a88a09075 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "197.kt", + "name": "CNBC", + "names": "\"CNBC\",\"KT\",\"197\",\"197 CNBC\",\"197 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2b1781242a7e5f32e0c9e52b0af1215e b/config/epggrab/xmltv/channels/2b1781242a7e5f32e0c9e52b0af1215e new file mode 100644 index 0000000..03ce30d --- /dev/null +++ b/config/epggrab/xmltv/channels/2b1781242a7e5f32e0c9e52b0af1215e @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "41.kt", + "name": "KBS Joy", + "names": "\"KBS Joy\",\"KT\",\"41\",\"41 KBS Joy\",\"41 KT\"", + "number": 0, + "channels": [ + "d16848a7523b13bdf6d813beaf86be23" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2bc45790b850f1ff93179ce3605e2ad1 b/config/epggrab/xmltv/channels/2bc45790b850f1ff93179ce3605e2ad1 new file mode 100644 index 0000000..c29f86e --- /dev/null +++ b/config/epggrab/xmltv/channels/2bc45790b850f1ff93179ce3605e2ad1 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "82.kt", + "name": "동아TV", + "names": "\"동아TV\",\"KT\",\"82\",\"82 동아TV\",\"82 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2cbdd1400130e1b25e108c8f474cd917 b/config/epggrab/xmltv/channels/2cbdd1400130e1b25e108c8f474cd917 new file mode 100644 index 0000000..0496663 --- /dev/null +++ b/config/epggrab/xmltv/channels/2cbdd1400130e1b25e108c8f474cd917 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "30.kt", + "name": "쇼핑엔티", + "names": "\"쇼핑엔티\",\"KT\",\"30\",\"30 쇼핑엔티\",\"30 KT\"", + "number": 0, + "channels": [ + "1ef969431a1fe2907b253d4ebafae048" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/2f8924af9cf4dc0309a28024c1bff943 b/config/epggrab/xmltv/channels/2f8924af9cf4dc0309a28024c1bff943 new file mode 100644 index 0000000..ec234c1 --- /dev/null +++ b/config/epggrab/xmltv/channels/2f8924af9cf4dc0309a28024c1bff943 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "222.kt", + "name": "시니어TV", + "names": "\"시니어TV\",\"KT\",\"222\",\"222 시니어TV\",\"222 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/30ae104ed5d15d50d8689f770cba635c b/config/epggrab/xmltv/channels/30ae104ed5d15d50d8689f770cba635c new file mode 100644 index 0000000..be71495 --- /dev/null +++ b/config/epggrab/xmltv/channels/30ae104ed5d15d50d8689f770cba635c @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "39.kt", + "name": "JTBC2", + "names": "\"JTBC2\",\"KT\",\"39\",\"39 JTBC2\",\"39 KT\"", + "number": 0, + "channels": [ + "85f33c6596766c7ae7e46da4286aeceb" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/316b639d22ea8f3e9a9d93fead210044 b/config/epggrab/xmltv/channels/316b639d22ea8f3e9a9d93fead210044 new file mode 100644 index 0000000..66c1daf --- /dev/null +++ b/config/epggrab/xmltv/channels/316b639d22ea8f3e9a9d93fead210044 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "121.kt", + "name": "한국낚시방송", + "names": "\"한국낚시방송\",\"KT\",\"121\",\"121 한국낚시방송\",\"121 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/31bad2c86744a8a38e5f2dc0029a6c66 b/config/epggrab/xmltv/channels/31bad2c86744a8a38e5f2dc0029a6c66 new file mode 100644 index 0000000..27ca44f --- /dev/null +++ b/config/epggrab/xmltv/channels/31bad2c86744a8a38e5f2dc0029a6c66 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "968.kt", + "name": "Miao Mi", + "names": "\"Miao Mi\",\"KT\",\"968\",\"968 Miao Mi\",\"968 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/35852ac9e97bbaacef24f210309ac103 b/config/epggrab/xmltv/channels/35852ac9e97bbaacef24f210309ac103 new file mode 100644 index 0000000..e496d17 --- /dev/null +++ b/config/epggrab/xmltv/channels/35852ac9e97bbaacef24f210309ac103 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "159.kt", + "name": "YTN2", + "names": "\"YTN2\",\"KT\",\"159\",\"159 YTN2\",\"159 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/35e0a444ab3410c15b8c55493b34231e b/config/epggrab/xmltv/channels/35e0a444ab3410c15b8c55493b34231e new file mode 100644 index 0000000..94ff574 --- /dev/null +++ b/config/epggrab/xmltv/channels/35e0a444ab3410c15b8c55493b34231e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "173.kt", + "name": "HGTV", + "names": "\"HGTV\",\"KT\",\"173\",\"173 HGTV\",\"173 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/36c70584fd6b9e0bc9200bb4dca8f23b b/config/epggrab/xmltv/channels/36c70584fd6b9e0bc9200bb4dca8f23b new file mode 100644 index 0000000..fa07651 --- /dev/null +++ b/config/epggrab/xmltv/channels/36c70584fd6b9e0bc9200bb4dca8f23b @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "21.kt", + "name": "tvN STORY", + "names": "\"tvN STORY\",\"KT\",\"21\",\"21 tvN STORY\",\"21 KT\"", + "number": 0, + "channels": [ + "f096ade94fb78a0dc76756c40cb70256" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/375dabc0d5194047c9a54cd43ac70b61 b/config/epggrab/xmltv/channels/375dabc0d5194047c9a54cd43ac70b61 new file mode 100644 index 0000000..a90c7db --- /dev/null +++ b/config/epggrab/xmltv/channels/375dabc0d5194047c9a54cd43ac70b61 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "255.kt", + "name": "BALL TV", + "names": "\"BALL TV\",\"KT\",\"255\",\"255 BALL TV\",\"255 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3774a0b861cac7d979e6367395a34fe5 b/config/epggrab/xmltv/channels/3774a0b861cac7d979e6367395a34fe5 new file mode 100644 index 0000000..6997434 --- /dev/null +++ b/config/epggrab/xmltv/channels/3774a0b861cac7d979e6367395a34fe5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "90.kt", + "name": "AsiaM", + "names": "\"AsiaM\",\"KT\",\"90\",\"90 AsiaM\",\"90 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/377e97c000a6992becc5db615ca825f4 b/config/epggrab/xmltv/channels/377e97c000a6992becc5db615ca825f4 new file mode 100644 index 0000000..dce5b0b --- /dev/null +++ b/config/epggrab/xmltv/channels/377e97c000a6992becc5db615ca825f4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "49.kt", + "name": "시네마천국", + "names": "\"시네마천국\",\"KT\",\"49\",\"49 시네마천국\",\"49 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/393381147dc52865f671d00707ae6df5 b/config/epggrab/xmltv/channels/393381147dc52865f671d00707ae6df5 new file mode 100644 index 0000000..3d85788 --- /dev/null +++ b/config/epggrab/xmltv/channels/393381147dc52865f671d00707ae6df5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "264.kt", + "name": "디스토리", + "names": "\"디스토리\",\"KT\",\"264\",\"264 디스토리\",\"264 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/399313b5a4613a3b9a25b44f04e33da2 b/config/epggrab/xmltv/channels/399313b5a4613a3b9a25b44f04e33da2 new file mode 100644 index 0000000..6ef4d6f --- /dev/null +++ b/config/epggrab/xmltv/channels/399313b5a4613a3b9a25b44f04e33da2 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "17.kt", + "name": "SK stoa", + "names": "\"SK stoa\",\"KT\",\"17\",\"17 SK stoa\",\"17 KT\"", + "number": 0, + "channels": [ + "3523848f94eac40f3edd7088ce0de684" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3abf613bbcfab639bed1bbd9937ca0fc b/config/epggrab/xmltv/channels/3abf613bbcfab639bed1bbd9937ca0fc new file mode 100644 index 0000000..ff292d0 --- /dev/null +++ b/config/epggrab/xmltv/channels/3abf613bbcfab639bed1bbd9937ca0fc @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "33.kt", + "name": "OCN", + "names": "\"OCN\",\"KT\",\"33\",\"33 OCN\",\"33 KT\"", + "number": 0, + "channels": [ + "e014cc47d6c8a40f7a3a21537582b307" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3c5a5d531d7439e3105eab7015b90bd3 b/config/epggrab/xmltv/channels/3c5a5d531d7439e3105eab7015b90bd3 new file mode 100644 index 0000000..a905edc --- /dev/null +++ b/config/epggrab/xmltv/channels/3c5a5d531d7439e3105eab7015b90bd3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "149.kt", + "name": "컬쳐플러스", + "names": "\"컬쳐플러스\",\"KT\",\"149\",\"149 컬쳐플러스\",\"149 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3c777cd6ec2fcd23e6b312a8a337f99a b/config/epggrab/xmltv/channels/3c777cd6ec2fcd23e6b312a8a337f99a new file mode 100644 index 0000000..2258107 --- /dev/null +++ b/config/epggrab/xmltv/channels/3c777cd6ec2fcd23e6b312a8a337f99a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "983.kt", + "name": "EBS KIDS", + "names": "\"EBS KIDS\",\"KT\",\"983\",\"983 EBS KIDS\",\"983 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3f587b024afb0413381e9c8fdc1f8104 b/config/epggrab/xmltv/channels/3f587b024afb0413381e9c8fdc1f8104 new file mode 100644 index 0000000..da47eaa --- /dev/null +++ b/config/epggrab/xmltv/channels/3f587b024afb0413381e9c8fdc1f8104 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "42.kt", + "name": "NS Shop+", + "names": "\"NS Shop+\",\"KT\",\"42\",\"42 NS Shop+\",\"42 KT\"", + "number": 0, + "channels": [ + "11d2171b1abf4edb90f7d9948e0363f7" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/3fe538f61c53caa0f3f1cb30686a8fcb b/config/epggrab/xmltv/channels/3fe538f61c53caa0f3f1cb30686a8fcb new file mode 100644 index 0000000..8d349a2 --- /dev/null +++ b/config/epggrab/xmltv/channels/3fe538f61c53caa0f3f1cb30686a8fcb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "986.kt", + "name": "JEI 재능TV", + "names": "\"JEI 재능TV\",\"KT\",\"986\",\"986 JEI 재능TV\",\"986 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/403d5cf7ff0d35f2be1928a27b001483 b/config/epggrab/xmltv/channels/403d5cf7ff0d35f2be1928a27b001483 new file mode 100644 index 0000000..3088bd9 --- /dev/null +++ b/config/epggrab/xmltv/channels/403d5cf7ff0d35f2be1928a27b001483 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "55.kt", + "name": "GOLF&PBA", + "names": "\"GOLF&PBA\",\"KT\",\"55\",\"55 GOLF&PBA\",\"55 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/404a0c1b7e90ec2c64d9e4d67c349669 b/config/epggrab/xmltv/channels/404a0c1b7e90ec2c64d9e4d67c349669 new file mode 100644 index 0000000..1155749 --- /dev/null +++ b/config/epggrab/xmltv/channels/404a0c1b7e90ec2c64d9e4d67c349669 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "10.kt", + "name": "현대홈쇼핑", + "names": "\"현대홈쇼핑\",\"KT\",\"10\",\"10 현대홈쇼핑\",\"10 KT\"", + "number": 0, + "channels": [ + "5bf2392e1effd6b651082730d491987e" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4053c4deeb8ef9d576e63be418ea813e b/config/epggrab/xmltv/channels/4053c4deeb8ef9d576e63be418ea813e new file mode 100644 index 0000000..6b00ba9 --- /dev/null +++ b/config/epggrab/xmltv/channels/4053c4deeb8ef9d576e63be418ea813e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "162.kt", + "name": "Now제주TV", + "names": "\"Now제주TV\",\"KT\",\"162\",\"162 Now제주TV\",\"162 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/40b465bbffebb17f8db4e838290a32e9 b/config/epggrab/xmltv/channels/40b465bbffebb17f8db4e838290a32e9 new file mode 100644 index 0000000..491d788 --- /dev/null +++ b/config/epggrab/xmltv/channels/40b465bbffebb17f8db4e838290a32e9 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "215.kt", + "name": "헬스메디tv", + "names": "\"헬스메디tv\",\"KT\",\"215\",\"215 헬스메디tv\",\"215 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/419d646f1fe0dc6bd2e309a4f318348f b/config/epggrab/xmltv/channels/419d646f1fe0dc6bd2e309a4f318348f new file mode 100644 index 0000000..87b7d0e --- /dev/null +++ b/config/epggrab/xmltv/channels/419d646f1fe0dc6bd2e309a4f318348f @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "199.kt", + "name": "복지TV", + "names": "\"복지TV\",\"KT\",\"199\",\"199 복지TV\",\"199 KT\"", + "number": 0, + "channels": [ + "72fab9ae79a993f18bd6b23a5054c0af" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/42f57dc55cd4d4fc50bab3824ea67d6d b/config/epggrab/xmltv/channels/42f57dc55cd4d4fc50bab3824ea67d6d new file mode 100644 index 0000000..0893993 --- /dev/null +++ b/config/epggrab/xmltv/channels/42f57dc55cd4d4fc50bab3824ea67d6d @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "25.kt", + "name": "SBS Biz", + "names": "\"SBS Biz\",\"KT\",\"25\",\"25 SBS Biz\",\"25 KT\"", + "number": 0, + "channels": [ + "71865f90c68f3c07e8d1586ace979276" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/42fba25801cb970e5c124b7d7bf6b922 b/config/epggrab/xmltv/channels/42fba25801cb970e5c124b7d7bf6b922 new file mode 100644 index 0000000..6c099bc --- /dev/null +++ b/config/epggrab/xmltv/channels/42fba25801cb970e5c124b7d7bf6b922 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "238.kt", + "name": "CBS", + "names": "\"CBS\",\"KT\",\"238\",\"238 CBS\",\"238 KT\"", + "number": 0, + "channels": [ + "cfee8eb44b51c858616a71a2a33cd382" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/442f6445195384fe090b2ecfb867ba17 b/config/epggrab/xmltv/channels/442f6445195384fe090b2ecfb867ba17 new file mode 100644 index 0000000..2314c3a --- /dev/null +++ b/config/epggrab/xmltv/channels/442f6445195384fe090b2ecfb867ba17 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "164.kt", + "name": "MBC NET", + "names": "\"MBC NET\",\"KT\",\"164\",\"164 MBC NET\",\"164 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/452d2b231a87b6746ab59546ad8697a1 b/config/epggrab/xmltv/channels/452d2b231a87b6746ab59546ad8697a1 new file mode 100644 index 0000000..5e4f58f --- /dev/null +++ b/config/epggrab/xmltv/channels/452d2b231a87b6746ab59546ad8697a1 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "50.kt", + "name": "디스커버리채널", + "names": "\"디스커버리채널\",\"KT\",\"50\",\"50 디스커버리채널\",\"50 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/463517ac0a2a860aa090b4e60a86c125 b/config/epggrab/xmltv/channels/463517ac0a2a860aa090b4e60a86c125 new file mode 100644 index 0000000..9dbd582 --- /dev/null +++ b/config/epggrab/xmltv/channels/463517ac0a2a860aa090b4e60a86c125 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "971.kt", + "name": "EBS PLUS2", + "names": "\"EBS PLUS2\",\"KT\",\"971\",\"971 EBS PLUS2\",\"971 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/465733cf32c46c74cf2c0f847f45c853 b/config/epggrab/xmltv/channels/465733cf32c46c74cf2c0f847f45c853 new file mode 100644 index 0000000..df08cc1 --- /dev/null +++ b/config/epggrab/xmltv/channels/465733cf32c46c74cf2c0f847f45c853 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "76.kt", + "name": "OCN Movies2", + "names": "\"OCN Movies2\",\"KT\",\"76\",\"76 OCN Movies2\",\"76 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/467a78502a9a69aaed5ced39928f7927 b/config/epggrab/xmltv/channels/467a78502a9a69aaed5ced39928f7927 new file mode 100644 index 0000000..60bd6f0 --- /dev/null +++ b/config/epggrab/xmltv/channels/467a78502a9a69aaed5ced39928f7927 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "80.kt", + "name": "MBC ON", + "names": "\"MBC ON\",\"KT\",\"80\",\"80 MBC ON\",\"80 KT\"", + "number": 0, + "channels": [ + "29943faff11e1b9b03cec87c3db3257b" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/469650dcc41ed8c729a05af4d2b1f560 b/config/epggrab/xmltv/channels/469650dcc41ed8c729a05af4d2b1f560 new file mode 100644 index 0000000..3b4b156 --- /dev/null +++ b/config/epggrab/xmltv/channels/469650dcc41ed8c729a05af4d2b1f560 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "9.kt", + "name": "KBS1", + "names": "\"KBS1\",\"KT\",\"9\",\"9 KBS1\",\"9 KT\"", + "number": 0, + "channels": [ + "8e3c711f8543b6852280a2df95b88354" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/47a4c29881b69d3e7f973c09d62d0bb6 b/config/epggrab/xmltv/channels/47a4c29881b69d3e7f973c09d62d0bb6 new file mode 100644 index 0000000..86eb1cb --- /dev/null +++ b/config/epggrab/xmltv/channels/47a4c29881b69d3e7f973c09d62d0bb6 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "110.kt", + "name": "중화TV", + "names": "\"중화TV\",\"KT\",\"110\",\"110 중화TV\",\"110 KT\"", + "number": 0, + "channels": [ + "184efc46acb81b9241c134cd367d6fa2" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/483c6fe02311c98883cb53241a362d30 b/config/epggrab/xmltv/channels/483c6fe02311c98883cb53241a362d30 new file mode 100644 index 0000000..3ae1f0f --- /dev/null +++ b/config/epggrab/xmltv/channels/483c6fe02311c98883cb53241a362d30 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "22.kt", + "name": "공영쇼핑", + "names": "\"공영쇼핑\",\"KT\",\"22\",\"22 공영쇼핑\",\"22 KT\"", + "number": 0, + "channels": [ + "8958b8b9154643bcb80d40cea379777d" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4928dfb2113537a90c7c61505dfe1f94 b/config/epggrab/xmltv/channels/4928dfb2113537a90c7c61505dfe1f94 new file mode 100644 index 0000000..08383fc --- /dev/null +++ b/config/epggrab/xmltv/channels/4928dfb2113537a90c7c61505dfe1f94 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "182.kt", + "name": "매일경제TV", + "names": "\"매일경제TV\",\"KT\",\"182\",\"182 매일경제TV\",\"182 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4a361e0fd881f46af6e721d61591a7b7 b/config/epggrab/xmltv/channels/4a361e0fd881f46af6e721d61591a7b7 new file mode 100644 index 0000000..63fb7bc --- /dev/null +++ b/config/epggrab/xmltv/channels/4a361e0fd881f46af6e721d61591a7b7 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "84.kt", + "name": "스마일티브이플러스", + "names": "\"스마일티브이플러스\",\"KT\",\"84\",\"84 스마일티브이플러스\",\"84 KT\"", + "number": 0, + "channels": [ + "5a47e2ed1a542230f86cca25e3290cc7" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4c4e6d3084aae9c6c6e2d44b9845620a b/config/epggrab/xmltv/channels/4c4e6d3084aae9c6c6e2d44b9845620a new file mode 100644 index 0000000..839c450 --- /dev/null +++ b/config/epggrab/xmltv/channels/4c4e6d3084aae9c6c6e2d44b9845620a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "106.kt", + "name": "씨네프", + "names": "\"씨네프\",\"KT\",\"106\",\"106 씨네프\",\"106 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4cafac980af926bbdbd1245a78e4eeac b/config/epggrab/xmltv/channels/4cafac980af926bbdbd1245a78e4eeac new file mode 100644 index 0000000..2fd729e --- /dev/null +++ b/config/epggrab/xmltv/channels/4cafac980af926bbdbd1245a78e4eeac @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "92.kt", + "name": "아이넷TV", + "names": "\"아이넷TV\",\"KT\",\"92\",\"92 아이넷TV\",\"92 KT\"", + "number": 0, + "channels": [ + "92a37bff18cd4e87ed13516e6ca835ee" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4f5937105529fd6af57869c1bb04b9d6 b/config/epggrab/xmltv/channels/4f5937105529fd6af57869c1bb04b9d6 new file mode 100644 index 0000000..b34ee22 --- /dev/null +++ b/config/epggrab/xmltv/channels/4f5937105529fd6af57869c1bb04b9d6 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "177.kt", + "name": "CCTV4", + "names": "\"CCTV4\",\"KT\",\"177\",\"177 CCTV4\",\"177 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/4f7c752f4f69c31a10661fcbf372ecc3 b/config/epggrab/xmltv/channels/4f7c752f4f69c31a10661fcbf372ecc3 new file mode 100644 index 0000000..98513fa --- /dev/null +++ b/config/epggrab/xmltv/channels/4f7c752f4f69c31a10661fcbf372ecc3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "62.kt", + "name": "SBS Golf2", + "names": "\"SBS Golf2\",\"KT\",\"62\",\"62 SBS Golf2\",\"62 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/50115265352ef62730151b6c2f1e7043 b/config/epggrab/xmltv/channels/50115265352ef62730151b6c2f1e7043 new file mode 100644 index 0000000..bfa89eb --- /dev/null +++ b/config/epggrab/xmltv/channels/50115265352ef62730151b6c2f1e7043 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "237.kt", + "name": "CGN", + "names": "\"CGN\",\"KT\",\"237\",\"237 CGN\",\"237 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/514112a2b12cd50f264495f43f609045 b/config/epggrab/xmltv/channels/514112a2b12cd50f264495f43f609045 new file mode 100644 index 0000000..61010b6 --- /dev/null +++ b/config/epggrab/xmltv/channels/514112a2b12cd50f264495f43f609045 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "973.kt", + "name": "EBS English", + "names": "\"EBS English\",\"KT\",\"973\",\"973 EBS English\",\"973 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/51a17718e9b8ceaad805cdf7c184e662 b/config/epggrab/xmltv/channels/51a17718e9b8ceaad805cdf7c184e662 new file mode 100644 index 0000000..026e6e9 --- /dev/null +++ b/config/epggrab/xmltv/channels/51a17718e9b8ceaad805cdf7c184e662 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "193.kt", + "name": "Euro News", + "names": "\"Euro News\",\"KT\",\"193\",\"193 Euro News\",\"193 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/5317d428edb9d930cbc9c5e47740eadb b/config/epggrab/xmltv/channels/5317d428edb9d930cbc9c5e47740eadb new file mode 100644 index 0000000..5da5c22 --- /dev/null +++ b/config/epggrab/xmltv/channels/5317d428edb9d930cbc9c5e47740eadb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "44.kt", + "name": "채널S", + "names": "\"채널S\",\"KT\",\"44\",\"44 채널S\",\"44 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/5457fd37c9749fdf94da35aecd79a683 b/config/epggrab/xmltv/channels/5457fd37c9749fdf94da35aecd79a683 new file mode 100644 index 0000000..2f5ce0b --- /dev/null +++ b/config/epggrab/xmltv/channels/5457fd37c9749fdf94da35aecd79a683 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "167.kt", + "name": "MAXPORTS", + "names": "\"MAXPORTS\",\"KT\",\"167\",\"167 MAXPORTS\",\"167 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/54827ffd4f0a37373751c5cd2b90a593 b/config/epggrab/xmltv/channels/54827ffd4f0a37373751c5cd2b90a593 new file mode 100644 index 0000000..657abbc --- /dev/null +++ b/config/epggrab/xmltv/channels/54827ffd4f0a37373751c5cd2b90a593 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "200.kt", + "name": "DW-TV Asia+", + "names": "\"DW-TV Asia+\",\"KT\",\"200\",\"200 DW-TV Asia+\",\"200 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/54f5253a278094b44050f35beca0da8c b/config/epggrab/xmltv/channels/54f5253a278094b44050f35beca0da8c new file mode 100644 index 0000000..fe7aae4 --- /dev/null +++ b/config/epggrab/xmltv/channels/54f5253a278094b44050f35beca0da8c @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "96.kt", + "name": "엔터TV", + "names": "\"엔터TV\",\"KT\",\"96\",\"96 엔터TV\",\"96 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/556235acb9b33b45b5d97a6eda33f333 b/config/epggrab/xmltv/channels/556235acb9b33b45b5d97a6eda33f333 new file mode 100644 index 0000000..8edd984 --- /dev/null +++ b/config/epggrab/xmltv/channels/556235acb9b33b45b5d97a6eda33f333 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "166.kt", + "name": "아리랑 TV", + "names": "\"아리랑 TV\",\"KT\",\"166\",\"166 아리랑 TV\",\"166 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/55e7397f28ee94fa9f40bc8c2374cb92 b/config/epggrab/xmltv/channels/55e7397f28ee94fa9f40bc8c2374cb92 new file mode 100644 index 0000000..4cee50f --- /dev/null +++ b/config/epggrab/xmltv/channels/55e7397f28ee94fa9f40bc8c2374cb92 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "65.kt", + "name": "국회방송", + "names": "\"국회방송\",\"KT\",\"65\",\"65 국회방송\",\"65 KT\"", + "number": 0, + "channels": [ + "14776221f3eac0ef32596a196df9837d" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/59241eb0a6247e7a92ea44ff67c5cbe7 b/config/epggrab/xmltv/channels/59241eb0a6247e7a92ea44ff67c5cbe7 new file mode 100644 index 0000000..39fbd3f --- /dev/null +++ b/config/epggrab/xmltv/channels/59241eb0a6247e7a92ea44ff67c5cbe7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "169.kt", + "name": "쿠키건강TV", + "names": "\"쿠키건강TV\",\"KT\",\"169\",\"169 쿠키건강TV\",\"169 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/5a23baffe592654d38c4e77db4788fdb b/config/epggrab/xmltv/channels/5a23baffe592654d38c4e77db4788fdb new file mode 100644 index 0000000..9c1d0e5 --- /dev/null +++ b/config/epggrab/xmltv/channels/5a23baffe592654d38c4e77db4788fdb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "161.kt", + "name": "리얼TV", + "names": "\"리얼TV\",\"KT\",\"161\",\"161 리얼TV\",\"161 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/5ddfa335e072ee40cbfd2104236c3e17 b/config/epggrab/xmltv/channels/5ddfa335e072ee40cbfd2104236c3e17 new file mode 100644 index 0000000..65f862c --- /dev/null +++ b/config/epggrab/xmltv/channels/5ddfa335e072ee40cbfd2104236c3e17 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "232.kt", + "name": "BBS불교방송", + "names": "\"BBS불교방송\",\"KT\",\"232\",\"232 BBS불교방송\",\"232 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6089b571e954e071dbd24ab200f7f717 b/config/epggrab/xmltv/channels/6089b571e954e071dbd24ab200f7f717 new file mode 100644 index 0000000..9333361 --- /dev/null +++ b/config/epggrab/xmltv/channels/6089b571e954e071dbd24ab200f7f717 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "29.kt", + "name": "ENA DRAMA", + "names": "\"ENA DRAMA\",\"KT\",\"29\",\"29 ENA DRAMA\",\"29 KT\"", + "number": 0, + "channels": [ + "39b0b4b702211b8eea20103e4f692666" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/614d15ed2b38c0f998e197a621c90097 b/config/epggrab/xmltv/channels/614d15ed2b38c0f998e197a621c90097 new file mode 100644 index 0000000..0377194 --- /dev/null +++ b/config/epggrab/xmltv/channels/614d15ed2b38c0f998e197a621c90097 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "119.kt", + "name": "Eurosport", + "names": "\"Eurosport\",\"KT\",\"119\",\"119 Eurosport\",\"119 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/616695feed4984cbf9d854488faeb3eb b/config/epggrab/xmltv/channels/616695feed4984cbf9d854488faeb3eb new file mode 100644 index 0000000..36e74f0 --- /dev/null +++ b/config/epggrab/xmltv/channels/616695feed4984cbf9d854488faeb3eb @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "113.kt", + "name": "AXN", + "names": "\"AXN\",\"KT\",\"113\",\"113 AXN\",\"113 KT\"", + "number": 0, + "channels": [ + "2b683c6f123f893cd4ba50e90eead057" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/61c19f110c6cbe95a952ac51bb925c86 b/config/epggrab/xmltv/channels/61c19f110c6cbe95a952ac51bb925c86 new file mode 100644 index 0000000..d848356 --- /dev/null +++ b/config/epggrab/xmltv/channels/61c19f110c6cbe95a952ac51bb925c86 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "994.kt", + "name": "애니원", + "names": "\"애니원\",\"KT\",\"994\",\"994 애니원\",\"994 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6486c6e63a3c5d65bb7252fe70dff70f b/config/epggrab/xmltv/channels/6486c6e63a3c5d65bb7252fe70dff70f new file mode 100644 index 0000000..f4f5c9e --- /dev/null +++ b/config/epggrab/xmltv/channels/6486c6e63a3c5d65bb7252fe70dff70f @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "109.kt", + "name": "에이플드라마", + "names": "\"에이플드라마\",\"KT\",\"109\",\"109 에이플드라마\",\"109 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/64c9cc575adb350e7a5985817534533e b/config/epggrab/xmltv/channels/64c9cc575adb350e7a5985817534533e new file mode 100644 index 0000000..8f01c42 --- /dev/null +++ b/config/epggrab/xmltv/channels/64c9cc575adb350e7a5985817534533e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "163.kt", + "name": "9colors", + "names": "\"9colors\",\"KT\",\"163\",\"163 9colors\",\"163 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/64eb4dc700263eb8590216fdb2e0c1b9 b/config/epggrab/xmltv/channels/64eb4dc700263eb8590216fdb2e0c1b9 new file mode 100644 index 0000000..c35e4dd --- /dev/null +++ b/config/epggrab/xmltv/channels/64eb4dc700263eb8590216fdb2e0c1b9 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "8.kt", + "name": "GS SHOP", + "names": "\"GS SHOP\",\"KT\",\"8\",\"8 GS SHOP\",\"8 KT\"", + "number": 0, + "channels": [ + "8eb43c6489491a6a7c20680aa109f48f" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/65bf2f5153828d0a9bd09836643902f2 b/config/epggrab/xmltv/channels/65bf2f5153828d0a9bd09836643902f2 new file mode 100644 index 0000000..9dfd41a --- /dev/null +++ b/config/epggrab/xmltv/channels/65bf2f5153828d0a9bd09836643902f2 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "221.kt", + "name": "K-NET TV", + "names": "\"K-NET TV\",\"KT\",\"221\",\"221 K-NET TV\",\"221 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/665eda6a37b4b433e097f0da6ee09c17 b/config/epggrab/xmltv/channels/665eda6a37b4b433e097f0da6ee09c17 new file mode 100644 index 0000000..38e9b24 --- /dev/null +++ b/config/epggrab/xmltv/channels/665eda6a37b4b433e097f0da6ee09c17 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "192.kt", + "name": "BBC News", + "names": "\"BBC News\",\"KT\",\"192\",\"192 BBC News\",\"192 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/66a2d6179d02f9d038fd2e5d57d25524 b/config/epggrab/xmltv/channels/66a2d6179d02f9d038fd2e5d57d25524 new file mode 100644 index 0000000..23a54a7 --- /dev/null +++ b/config/epggrab/xmltv/channels/66a2d6179d02f9d038fd2e5d57d25524 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "118.kt", + "name": "HITS", + "names": "\"HITS\",\"KT\",\"118\",\"118 HITS\",\"118 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/66fd6477647a37ffb269d1ca8974b71d b/config/epggrab/xmltv/channels/66fd6477647a37ffb269d1ca8974b71d new file mode 100644 index 0000000..1610d6f --- /dev/null +++ b/config/epggrab/xmltv/channels/66fd6477647a37ffb269d1ca8974b71d @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "98.kt", + "name": "채널A 플러스", + "names": "\"채널A 플러스\",\"KT\",\"98\",\"98 채널A 플러스\",\"98 KT\"", + "number": 0, + "channels": [ + "ad3622eb30bedcf3abc4267f2382b511" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6716bb4c0a972d8cd38de4edbb238bff b/config/epggrab/xmltv/channels/6716bb4c0a972d8cd38de4edbb238bff new file mode 100644 index 0000000..e146120 --- /dev/null +++ b/config/epggrab/xmltv/channels/6716bb4c0a972d8cd38de4edbb238bff @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "224.kt", + "name": "지방자치TV", + "names": "\"지방자치TV\",\"KT\",\"224\",\"224 지방자치TV\",\"224 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6779dd9777d3bdb8c0c8f11b62567500 b/config/epggrab/xmltv/channels/6779dd9777d3bdb8c0c8f11b62567500 new file mode 100644 index 0000000..bf4ba80 --- /dev/null +++ b/config/epggrab/xmltv/channels/6779dd9777d3bdb8c0c8f11b62567500 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "980.kt", + "name": "브라보키즈", + "names": "\"브라보키즈\",\"KT\",\"980\",\"980 브라보키즈\",\"980 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/679d7e393089e410daa8b2eabaeab1af b/config/epggrab/xmltv/channels/679d7e393089e410daa8b2eabaeab1af new file mode 100644 index 0000000..c89a138 --- /dev/null +++ b/config/epggrab/xmltv/channels/679d7e393089e410daa8b2eabaeab1af @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "148.kt", + "name": "아이넷라이프", + "names": "\"아이넷라이프\",\"KT\",\"148\",\"148 아이넷라이프\",\"148 KT\"", + "number": 0, + "channels": [ + "6e3a8ce185d298f86ac11a661fa02537" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/67de1525f1ed5aa9dc5d575824511a59 b/config/epggrab/xmltv/channels/67de1525f1ed5aa9dc5d575824511a59 new file mode 100644 index 0000000..a24a500 --- /dev/null +++ b/config/epggrab/xmltv/channels/67de1525f1ed5aa9dc5d575824511a59 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "38.kt", + "name": "CJ ONSTYLE+", + "names": "\"CJ ONSTYLE+\",\"KT\",\"38\",\"38 CJ ONSTYLE+\",\"38 KT\"", + "number": 0, + "channels": [ + "08bf9908cf1e328ec745f2629eee08f5" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6835fe50499d6e60f91f37c2c7405607 b/config/epggrab/xmltv/channels/6835fe50499d6e60f91f37c2c7405607 new file mode 100644 index 0000000..bdcedf0 --- /dev/null +++ b/config/epggrab/xmltv/channels/6835fe50499d6e60f91f37c2c7405607 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "140.kt", + "name": "한경arteTV", + "names": "\"한경arteTV\",\"KT\",\"140\",\"140 한경arteTV\",\"140 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6867b0ca3b5ae5066d2959799ed38ed9 b/config/epggrab/xmltv/channels/6867b0ca3b5ae5066d2959799ed38ed9 new file mode 100644 index 0000000..b213e72 --- /dev/null +++ b/config/epggrab/xmltv/channels/6867b0ca3b5ae5066d2959799ed38ed9 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "2.kt", + "name": "NS홈쇼핑", + "names": "\"NS홈쇼핑\",\"KT\",\"2\",\"2 NS홈쇼핑\",\"2 KT\"", + "number": 0, + "channels": [ + "46cdb0e952f81b94da49d19cc387f6ca" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6993f45514451e305b476c7ce04383d4 b/config/epggrab/xmltv/channels/6993f45514451e305b476c7ce04383d4 new file mode 100644 index 0000000..a18ba8a --- /dev/null +++ b/config/epggrab/xmltv/channels/6993f45514451e305b476c7ce04383d4 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "61.kt", + "name": "JTBC GOLF&SPORTS", + "names": "\"JTBC GOLF&SPORTS\",\"KT\",\"61\",\"61 JTBC GOLF&SPORTS\",\"61 KT\"", + "number": 0, + "channels": [ + "8f02ac6b570d9d5201e8facfd9b0a05a" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/69eef14016584340edae3d83142cc4d1 b/config/epggrab/xmltv/channels/69eef14016584340edae3d83142cc4d1 new file mode 100644 index 0000000..417c819 --- /dev/null +++ b/config/epggrab/xmltv/channels/69eef14016584340edae3d83142cc4d1 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "252.kt", + "name": "한국직업방송", + "names": "\"한국직업방송\",\"KT\",\"252\",\"252 한국직업방송\",\"252 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6a18381ad825d23c4446f09b80cd9637 b/config/epggrab/xmltv/channels/6a18381ad825d23c4446f09b80cd9637 new file mode 100644 index 0000000..214fc1d --- /dev/null +++ b/config/epggrab/xmltv/channels/6a18381ad825d23c4446f09b80cd9637 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "100.kt", + "name": "NBS한국농업방송", + "names": "\"NBS한국농업방송\",\"KT\",\"100\",\"100 NBS한국농업방송\",\"100 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6adb90ff8c6df3c0e6f64717fc41e6a4 b/config/epggrab/xmltv/channels/6adb90ff8c6df3c0e6f64717fc41e6a4 new file mode 100644 index 0000000..1331438 --- /dev/null +++ b/config/epggrab/xmltv/channels/6adb90ff8c6df3c0e6f64717fc41e6a4 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "998.kt", + "name": "OCN Movies", + "names": "\"OCN Movies\",\"KT\",\"998\",\"998 OCN Movies\",\"998 KT\"", + "number": 0, + "channels": [ + "7fc098439bb3cd2c5d0be207c491a0a0" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6afb76ca2956765a90c4483c524928c4 b/config/epggrab/xmltv/channels/6afb76ca2956765a90c4483c524928c4 new file mode 100644 index 0000000..dee9d66 --- /dev/null +++ b/config/epggrab/xmltv/channels/6afb76ca2956765a90c4483c524928c4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "139.kt", + "name": "ORFEO", + "names": "\"ORFEO\",\"KT\",\"139\",\"139 ORFEO\",\"139 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6b16ff236f842ba57b997d345160753f b/config/epggrab/xmltv/channels/6b16ff236f842ba57b997d345160753f new file mode 100644 index 0000000..7261239 --- /dev/null +++ b/config/epggrab/xmltv/channels/6b16ff236f842ba57b997d345160753f @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "991.kt", + "name": "카툰네트워크", + "names": "\"카툰네트워크\",\"KT\",\"991\",\"991 카툰네트워크\",\"991 KT\"", + "number": 0, + "channels": [ + "e99736d757e7a01b986e86896649c451" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6b74f4e57ffbf4e14fa5c49cdfcdf73e b/config/epggrab/xmltv/channels/6b74f4e57ffbf4e14fa5c49cdfcdf73e new file mode 100644 index 0000000..547cdc1 --- /dev/null +++ b/config/epggrab/xmltv/channels/6b74f4e57ffbf4e14fa5c49cdfcdf73e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "250.kt", + "name": "TVCHOSUN3", + "names": "\"TVCHOSUN3\",\"KT\",\"250\",\"250 TVCHOSUN3\",\"250 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6cf7f8cc3dbfb3445d46d6eb39968423 b/config/epggrab/xmltv/channels/6cf7f8cc3dbfb3445d46d6eb39968423 new file mode 100644 index 0000000..1e5e724 --- /dev/null +++ b/config/epggrab/xmltv/channels/6cf7f8cc3dbfb3445d46d6eb39968423 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "184.kt", + "name": "서울경제TV", + "names": "\"서울경제TV\",\"KT\",\"184\",\"184 서울경제TV\",\"184 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6d0ee0c8269662a45291709c62362762 b/config/epggrab/xmltv/channels/6d0ee0c8269662a45291709c62362762 new file mode 100644 index 0000000..5db2966 --- /dev/null +++ b/config/epggrab/xmltv/channels/6d0ee0c8269662a45291709c62362762 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "175.kt", + "name": "YTN 사이언스", + "names": "\"YTN 사이언스\",\"KT\",\"175\",\"175 YTN 사이언스\",\"175 KT\"", + "number": 0, + "channels": [ + "04d6f07bd33f0d4918fcabbfa329050c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6f049b48b8a3c76547e1e3ea5f0598cd b/config/epggrab/xmltv/channels/6f049b48b8a3c76547e1e3ea5f0598cd new file mode 100644 index 0000000..b9584ea --- /dev/null +++ b/config/epggrab/xmltv/channels/6f049b48b8a3c76547e1e3ea5f0598cd @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "71.kt", + "name": "FUN TV", + "names": "\"FUN TV\",\"KT\",\"71\",\"71 FUN TV\",\"71 KT\"", + "number": 0, + "channels": [ + "17ec2b1e66dffea6052fdd985a51370a" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6f2172d2e025b8783b750a309e225691 b/config/epggrab/xmltv/channels/6f2172d2e025b8783b750a309e225691 new file mode 100644 index 0000000..03de9d6 --- /dev/null +++ b/config/epggrab/xmltv/channels/6f2172d2e025b8783b750a309e225691 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "97.kt", + "name": "다문화티브이", + "names": "\"다문화티브이\",\"KT\",\"97\",\"97 다문화티브이\",\"97 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6f9e1ae24d4ac6689a02200423969b18 b/config/epggrab/xmltv/channels/6f9e1ae24d4ac6689a02200423969b18 new file mode 100644 index 0000000..2ebf820 --- /dev/null +++ b/config/epggrab/xmltv/channels/6f9e1ae24d4ac6689a02200423969b18 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "59.kt", + "name": "KBS N Sports", + "names": "\"KBS N Sports\",\"KT\",\"59\",\"59 KBS N Sports\",\"59 KT\"", + "number": 0, + "channels": [ + "33f9cd156b74e3dd8f5bb41abc329781" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/6fb0936bc60368f23258173c28714119 b/config/epggrab/xmltv/channels/6fb0936bc60368f23258173c28714119 new file mode 100644 index 0000000..5ed4baf --- /dev/null +++ b/config/epggrab/xmltv/channels/6fb0936bc60368f23258173c28714119 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "176.kt", + "name": "채널뷰", + "names": "\"채널뷰\",\"KT\",\"176\",\"176 채널뷰\",\"176 KT\"", + "number": 0, + "channels": [ + "9038f0e2a2f90a4f59146c16ee8d699d" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7170a63f00e9558479ceaf647b8d1b0a b/config/epggrab/xmltv/channels/7170a63f00e9558479ceaf647b8d1b0a new file mode 100644 index 0000000..fb3dbec --- /dev/null +++ b/config/epggrab/xmltv/channels/7170a63f00e9558479ceaf647b8d1b0a @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "972.kt", + "name": "EBS PLUS1", + "names": "\"EBS PLUS1\",\"KT\",\"972\",\"972 EBS PLUS1\",\"972 KT\"", + "number": 0, + "channels": [ + "b283a67af7f2039b1110ee49c2fda0dd" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/73a3eec08bf124c9313348bc4713d14b b/config/epggrab/xmltv/channels/73a3eec08bf124c9313348bc4713d14b new file mode 100644 index 0000000..92f6f05 --- /dev/null +++ b/config/epggrab/xmltv/channels/73a3eec08bf124c9313348bc4713d14b @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "116.kt", + "name": "채널W", + "names": "\"채널W\",\"KT\",\"116\",\"116 채널W\",\"116 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/740614c682c1167b44502565b638a5dc b/config/epggrab/xmltv/channels/740614c682c1167b44502565b638a5dc new file mode 100644 index 0000000..778bd86 --- /dev/null +++ b/config/epggrab/xmltv/channels/740614c682c1167b44502565b638a5dc @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "961.kt", + "name": "ZooMoo", + "names": "\"ZooMoo\",\"KT\",\"961\",\"961 ZooMoo\",\"961 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/752a93a51537d05a5459840f2476cd5e b/config/epggrab/xmltv/channels/752a93a51537d05a5459840f2476cd5e new file mode 100644 index 0000000..65bf36c --- /dev/null +++ b/config/epggrab/xmltv/channels/752a93a51537d05a5459840f2476cd5e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "267.kt", + "name": "RNA", + "names": "\"RNA\",\"KT\",\"267\",\"267 RNA\",\"267 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/76e2d79729821ad7e19c97213caf7d68 b/config/epggrab/xmltv/channels/76e2d79729821ad7e19c97213caf7d68 new file mode 100644 index 0000000..247aded --- /dev/null +++ b/config/epggrab/xmltv/channels/76e2d79729821ad7e19c97213caf7d68 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "285.kt", + "name": "NBNTV", + "names": "\"NBNTV\",\"KT\",\"285\",\"285 NBNTV\",\"285 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/78b37ccca8eaa5cca0dbbe03ca5886bb b/config/epggrab/xmltv/channels/78b37ccca8eaa5cca0dbbe03ca5886bb new file mode 100644 index 0000000..2bd413d --- /dev/null +++ b/config/epggrab/xmltv/channels/78b37ccca8eaa5cca0dbbe03ca5886bb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "91.kt", + "name": "월드 클래식 무비", + "names": "\"월드 클래식 무비\",\"KT\",\"91\",\"91 월드 클래식 무비\",\"91 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7998dd5422f3a5080f33ec3be0ac0773 b/config/epggrab/xmltv/channels/7998dd5422f3a5080f33ec3be0ac0773 new file mode 100644 index 0000000..fd81276 --- /dev/null +++ b/config/epggrab/xmltv/channels/7998dd5422f3a5080f33ec3be0ac0773 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "257.kt", + "name": "ONT", + "names": "\"ONT\",\"KT\",\"257\",\"257 ONT\",\"257 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/79dcddbc789df7f9bbdf00510c3c5b4a b/config/epggrab/xmltv/channels/79dcddbc789df7f9bbdf00510c3c5b4a new file mode 100644 index 0000000..d180300 --- /dev/null +++ b/config/epggrab/xmltv/channels/79dcddbc789df7f9bbdf00510c3c5b4a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "186.kt", + "name": "팍스경제TV", + "names": "\"팍스경제TV\",\"KT\",\"186\",\"186 팍스경제TV\",\"186 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7b2f64c8ba12489013d145948fa8450e b/config/epggrab/xmltv/channels/7b2f64c8ba12489013d145948fa8450e new file mode 100644 index 0000000..8529f0e --- /dev/null +++ b/config/epggrab/xmltv/channels/7b2f64c8ba12489013d145948fa8450e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "194.kt", + "name": "CGTN", + "names": "\"CGTN\",\"KT\",\"194\",\"194 CGTN\",\"194 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7b47303c72f417c74d2f825fd8108193 b/config/epggrab/xmltv/channels/7b47303c72f417c74d2f825fd8108193 new file mode 100644 index 0000000..8c8b093 --- /dev/null +++ b/config/epggrab/xmltv/channels/7b47303c72f417c74d2f825fd8108193 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "143.kt", + "name": "가요TV", + "names": "\"가요TV\",\"KT\",\"143\",\"143 가요TV\",\"143 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7dd8f7ed8257fe3d9523fdd28d7ec1d0 b/config/epggrab/xmltv/channels/7dd8f7ed8257fe3d9523fdd28d7ec1d0 new file mode 100644 index 0000000..be782d1 --- /dev/null +++ b/config/epggrab/xmltv/channels/7dd8f7ed8257fe3d9523fdd28d7ec1d0 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "52.kt", + "name": "SPOTV2", + "names": "\"SPOTV2\",\"KT\",\"52\",\"52 SPOTV2\",\"52 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7eef27395b7784a51fbc9c481cee1adf b/config/epggrab/xmltv/channels/7eef27395b7784a51fbc9c481cee1adf new file mode 100644 index 0000000..1a27aef --- /dev/null +++ b/config/epggrab/xmltv/channels/7eef27395b7784a51fbc9c481cee1adf @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "253.kt", + "name": "토마토클래식", + "names": "\"토마토클래식\",\"KT\",\"253\",\"253 토마토클래식\",\"253 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/7f8e61094dd7bd88be99b08406d4e067 b/config/epggrab/xmltv/channels/7f8e61094dd7bd88be99b08406d4e067 new file mode 100644 index 0000000..d8af914 --- /dev/null +++ b/config/epggrab/xmltv/channels/7f8e61094dd7bd88be99b08406d4e067 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "64.kt", + "name": "KTV", + "names": "\"KTV\",\"KT\",\"64\",\"64 KTV\",\"64 KT\"", + "number": 0, + "channels": [ + "d1a09ca9b09e3ed58a50d1fede34a448" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/801af7df566b3531978b9006f837a2f3 b/config/epggrab/xmltv/channels/801af7df566b3531978b9006f837a2f3 new file mode 100644 index 0000000..3ddb77c --- /dev/null +++ b/config/epggrab/xmltv/channels/801af7df566b3531978b9006f837a2f3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "78.kt", + "name": "Lifetime", + "names": "\"Lifetime\",\"KT\",\"78\",\"78 Lifetime\",\"78 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/810425b436396b133be2faaf040b0bb7 b/config/epggrab/xmltv/channels/810425b436396b133be2faaf040b0bb7 new file mode 100644 index 0000000..e461ca2 --- /dev/null +++ b/config/epggrab/xmltv/channels/810425b436396b133be2faaf040b0bb7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "235.kt", + "name": "C Channel", + "names": "\"C Channel\",\"KT\",\"235\",\"235 C Channel\",\"235 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/82fa564075138a1d4fd95ff3a690d3f5 b/config/epggrab/xmltv/channels/82fa564075138a1d4fd95ff3a690d3f5 new file mode 100644 index 0000000..fbde844 --- /dev/null +++ b/config/epggrab/xmltv/channels/82fa564075138a1d4fd95ff3a690d3f5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "185.kt", + "name": "토마토증권통", + "names": "\"토마토증권통\",\"KT\",\"185\",\"185 토마토증권통\",\"185 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/832329e49723c08bf4478529756c6aed b/config/epggrab/xmltv/channels/832329e49723c08bf4478529756c6aed new file mode 100644 index 0000000..0814cf9 --- /dev/null +++ b/config/epggrab/xmltv/channels/832329e49723c08bf4478529756c6aed @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "970.kt", + "name": "edu TV", + "names": "\"edu TV\",\"KT\",\"970\",\"970 edu TV\",\"970 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/837da17eb8f538b5cf2e34b68db5e7fb b/config/epggrab/xmltv/channels/837da17eb8f538b5cf2e34b68db5e7fb new file mode 100644 index 0000000..deddd9a --- /dev/null +++ b/config/epggrab/xmltv/channels/837da17eb8f538b5cf2e34b68db5e7fb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "975.kt", + "name": "JEI EnglishTV", + "names": "\"JEI EnglishTV\",\"KT\",\"975\",\"975 JEI EnglishTV\",\"975 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/83affc0f583844756406d23f3d3be4d3 b/config/epggrab/xmltv/channels/83affc0f583844756406d23f3d3be4d3 new file mode 100644 index 0000000..05e1a3a --- /dev/null +++ b/config/epggrab/xmltv/channels/83affc0f583844756406d23f3d3be4d3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "196.kt", + "name": "Bloomberg", + "names": "\"Bloomberg\",\"KT\",\"196\",\"196 Bloomberg\",\"196 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8633ba5807d50f6d255419af14e0fbab b/config/epggrab/xmltv/channels/8633ba5807d50f6d255419af14e0fbab new file mode 100644 index 0000000..d9bdd9e --- /dev/null +++ b/config/epggrab/xmltv/channels/8633ba5807d50f6d255419af14e0fbab @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "188.kt", + "name": "토마토집통", + "names": "\"토마토집통\",\"KT\",\"188\",\"188 토마토집통\",\"188 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/863f24e6f0574f372d76b9a830bc18e2 b/config/epggrab/xmltv/channels/863f24e6f0574f372d76b9a830bc18e2 new file mode 100644 index 0000000..5f6fc77 --- /dev/null +++ b/config/epggrab/xmltv/channels/863f24e6f0574f372d76b9a830bc18e2 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "214.kt", + "name": "TBS TV", + "names": "\"TBS TV\",\"KT\",\"214\",\"214 TBS TV\",\"214 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8719e5d5a0ec719d64235cd0ba4751cf b/config/epggrab/xmltv/channels/8719e5d5a0ec719d64235cd0ba4751cf new file mode 100644 index 0000000..5263de9 --- /dev/null +++ b/config/epggrab/xmltv/channels/8719e5d5a0ec719d64235cd0ba4751cf @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "45.kt", + "name": "tvN DRAMA", + "names": "\"tvN DRAMA\",\"KT\",\"45\",\"45 tvN DRAMA\",\"45 KT\"", + "number": 0, + "channels": [ + "4b820008140aecd9d865d850c2efe2fb" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8bcd1374794bdbdd68ba940db7d43228 b/config/epggrab/xmltv/channels/8bcd1374794bdbdd68ba940db7d43228 new file mode 100644 index 0000000..30eb03c --- /dev/null +++ b/config/epggrab/xmltv/channels/8bcd1374794bdbdd68ba940db7d43228 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "129.kt", + "name": "AfreecaTV", + "names": "\"AfreecaTV\",\"KT\",\"129\",\"129 AfreecaTV\",\"129 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8c261ad1c5daaefef5948e814904c7f9 b/config/epggrab/xmltv/channels/8c261ad1c5daaefef5948e814904c7f9 new file mode 100644 index 0000000..222b231 --- /dev/null +++ b/config/epggrab/xmltv/channels/8c261ad1c5daaefef5948e814904c7f9 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "37.kt", + "name": "SBS Plus", + "names": "\"SBS Plus\",\"KT\",\"37\",\"37 SBS Plus\",\"37 KT\"", + "number": 0, + "channels": [ + "ca54f7a6fcc5ccea5e6b1c6db9405b01" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8df3cf2e2728b1785ca9c531dbf0a02d b/config/epggrab/xmltv/channels/8df3cf2e2728b1785ca9c531dbf0a02d new file mode 100644 index 0000000..3b28d74 --- /dev/null +++ b/config/epggrab/xmltv/channels/8df3cf2e2728b1785ca9c531dbf0a02d @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "259.kt", + "name": "채널s 플러스", + "names": "\"채널s 플러스\",\"KT\",\"259\",\"259 채널s 플러스\",\"259 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/8f4ee12ee00ba41d6fd10f5112f74794 b/config/epggrab/xmltv/channels/8f4ee12ee00ba41d6fd10f5112f74794 new file mode 100644 index 0000000..e0c6a15 --- /dev/null +++ b/config/epggrab/xmltv/channels/8f4ee12ee00ba41d6fd10f5112f74794 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "993.kt", + "name": "애니박스", + "names": "\"애니박스\",\"KT\",\"993\",\"993 애니박스\",\"993 KT\"", + "number": 0, + "channels": [ + "68c6621339bc98ee027ffa8e6d54efe1" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/92cfd992f3189824bc851cfbaf0f3cea b/config/epggrab/xmltv/channels/92cfd992f3189824bc851cfbaf0f3cea new file mode 100644 index 0000000..7291033 --- /dev/null +++ b/config/epggrab/xmltv/channels/92cfd992f3189824bc851cfbaf0f3cea @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "137.kt", + "name": "MBC M", + "names": "\"MBC M\",\"KT\",\"137\",\"137 MBC M\",\"137 KT\"", + "number": 0, + "channels": [ + "0748bdd2a3029ddc8416de1f3a16180d" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/93f97a842e0051ef9f426b3b72c81b44 b/config/epggrab/xmltv/channels/93f97a842e0051ef9f426b3b72c81b44 new file mode 100644 index 0000000..6eb62ec --- /dev/null +++ b/config/epggrab/xmltv/channels/93f97a842e0051ef9f426b3b72c81b44 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "191.kt", + "name": "CNN International", + "names": "\"CNN International\",\"KT\",\"191\",\"191 CNN International\",\"191 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/94efb96d05e3557d1944f376b488081f b/config/epggrab/xmltv/channels/94efb96d05e3557d1944f376b488081f new file mode 100644 index 0000000..fc2567b --- /dev/null +++ b/config/epggrab/xmltv/channels/94efb96d05e3557d1944f376b488081f @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "43.kt", + "name": "SBS funE", + "names": "\"SBS funE\",\"KT\",\"43\",\"43 SBS funE\",\"43 KT\"", + "number": 0, + "channels": [ + "4f20ddc1c7690198d0083ad4fc2846a3" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9555943f479268985c878869901fdcc2 b/config/epggrab/xmltv/channels/9555943f479268985c878869901fdcc2 new file mode 100644 index 0000000..67175b1 --- /dev/null +++ b/config/epggrab/xmltv/channels/9555943f479268985c878869901fdcc2 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "16.kt", + "name": "MBN", + "names": "\"MBN\",\"KT\",\"16\",\"16 MBN\",\"16 KT\"", + "number": 0, + "channels": [ + "d2e935e1d7a60eb799d5cd5aee1f5a30" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/962360afda3809db0cfce2993fa3ae75 b/config/epggrab/xmltv/channels/962360afda3809db0cfce2993fa3ae75 new file mode 100644 index 0000000..2b2c7a6 --- /dev/null +++ b/config/epggrab/xmltv/channels/962360afda3809db0cfce2993fa3ae75 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "223.kt", + "name": "소상공인시장tv", + "names": "\"소상공인시장tv\",\"KT\",\"223\",\"223 소상공인시장tv\",\"223 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/964fd86144a8855d189b2a441211ab28 b/config/epggrab/xmltv/channels/964fd86144a8855d189b2a441211ab28 new file mode 100644 index 0000000..5100cac --- /dev/null +++ b/config/epggrab/xmltv/channels/964fd86144a8855d189b2a441211ab28 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "115.kt", + "name": "Focus Prime", + "names": "\"Focus Prime\",\"KT\",\"115\",\"115 Focus Prime\",\"115 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/966e78f9069091e472989539765ba55e b/config/epggrab/xmltv/channels/966e78f9069091e472989539765ba55e new file mode 100644 index 0000000..06260a5 --- /dev/null +++ b/config/epggrab/xmltv/channels/966e78f9069091e472989539765ba55e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "989.kt", + "name": "부메랑", + "names": "\"부메랑\",\"KT\",\"989\",\"989 부메랑\",\"989 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/96f73bac6985d16ac44c7738b883a365 b/config/epggrab/xmltv/channels/96f73bac6985d16ac44c7738b883a365 new file mode 100644 index 0000000..5749e7c --- /dev/null +++ b/config/epggrab/xmltv/channels/96f73bac6985d16ac44c7738b883a365 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "130.kt", + "name": "CH.WIDE", + "names": "\"CH.WIDE\",\"KT\",\"130\",\"130 CH.WIDE\",\"130 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/971045db8427c5dc8acd7db6a360827a b/config/epggrab/xmltv/channels/971045db8427c5dc8acd7db6a360827a new file mode 100644 index 0000000..2f52a3a --- /dev/null +++ b/config/epggrab/xmltv/channels/971045db8427c5dc8acd7db6a360827a @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "46.kt", + "name": "드라마큐브", + "names": "\"드라마큐브\",\"KT\",\"46\",\"46 드라마큐브\",\"46 KT\"", + "number": 0, + "channels": [ + "f30aefb22ea670a33e7f9be7c05e38d5" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9887bf337b6d4b5486f1bf63910bc732 b/config/epggrab/xmltv/channels/9887bf337b6d4b5486f1bf63910bc732 new file mode 100644 index 0000000..14dc8fd --- /dev/null +++ b/config/epggrab/xmltv/channels/9887bf337b6d4b5486f1bf63910bc732 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "178.kt", + "name": "Discovery Science", + "names": "\"Discovery Science\",\"KT\",\"178\",\"178 Discovery Science\",\"178 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9a30a226371cd114f8c4467f62d33488 b/config/epggrab/xmltv/channels/9a30a226371cd114f8c4467f62d33488 new file mode 100644 index 0000000..2c31265 --- /dev/null +++ b/config/epggrab/xmltv/channels/9a30a226371cd114f8c4467f62d33488 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "122.kt", + "name": "바둑TV", + "names": "\"바둑TV\",\"KT\",\"122\",\"122 바둑TV\",\"122 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9a9a810ade5ba9326c254242c7301448 b/config/epggrab/xmltv/channels/9a9a810ade5ba9326c254242c7301448 new file mode 100644 index 0000000..d4570ad --- /dev/null +++ b/config/epggrab/xmltv/channels/9a9a810ade5ba9326c254242c7301448 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "54.kt", + "name": "SkySports", + "names": "\"SkySports\",\"KT\",\"54\",\"54 SkySports\",\"54 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9aeed2099467d986a9c679cf1f48a3a3 b/config/epggrab/xmltv/channels/9aeed2099467d986a9c679cf1f48a3a3 new file mode 100644 index 0000000..359e5cc --- /dev/null +++ b/config/epggrab/xmltv/channels/9aeed2099467d986a9c679cf1f48a3a3 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "20.kt", + "name": "신세계쇼핑", + "names": "\"신세계쇼핑\",\"KT\",\"20\",\"20 신세계쇼핑\",\"20 KT\"", + "number": 0, + "channels": [ + "67883947d2d2b106c77e823f3edf1f42" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9c53d044dee472f66eab34142b4778aa b/config/epggrab/xmltv/channels/9c53d044dee472f66eab34142b4778aa new file mode 100644 index 0000000..141586d --- /dev/null +++ b/config/epggrab/xmltv/channels/9c53d044dee472f66eab34142b4778aa @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "260.kt", + "name": "국방TV", + "names": "\"국방TV\",\"KT\",\"260\",\"260 국방TV\",\"260 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9d64ce12387f66b92bbb9cfaa57f33c7 b/config/epggrab/xmltv/channels/9d64ce12387f66b92bbb9cfaa57f33c7 new file mode 100644 index 0000000..d816e32 --- /dev/null +++ b/config/epggrab/xmltv/channels/9d64ce12387f66b92bbb9cfaa57f33c7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "74.kt", + "name": "하이라이트TV", + "names": "\"하이라이트TV\",\"KT\",\"74\",\"74 하이라이트TV\",\"74 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9ebdc4260e8307fba65350b45f81eec5 b/config/epggrab/xmltv/channels/9ebdc4260e8307fba65350b45f81eec5 new file mode 100644 index 0000000..21c4bad --- /dev/null +++ b/config/epggrab/xmltv/channels/9ebdc4260e8307fba65350b45f81eec5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "174.kt", + "name": "Animal Planet", + "names": "\"Animal Planet\",\"KT\",\"174\",\"174 Animal Planet\",\"174 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/9ebe72c1abf98a576d7e2268b17c40c5 b/config/epggrab/xmltv/channels/9ebe72c1abf98a576d7e2268b17c40c5 new file mode 100644 index 0000000..c345d97 --- /dev/null +++ b/config/epggrab/xmltv/channels/9ebe72c1abf98a576d7e2268b17c40c5 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "4.kt", + "name": "롯데홈쇼핑", + "names": "\"롯데홈쇼핑\",\"KT\",\"4\",\"4 롯데홈쇼핑\",\"4 KT\"", + "number": 0, + "channels": [ + "7ca088c8a17ec7907c0ef4e0c9da2ab1" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a1e88c3d74d1ddce77c0afff67f282c0 b/config/epggrab/xmltv/channels/a1e88c3d74d1ddce77c0afff67f282c0 new file mode 100644 index 0000000..af59783 --- /dev/null +++ b/config/epggrab/xmltv/channels/a1e88c3d74d1ddce77c0afff67f282c0 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "18.kt", + "name": "채널A", + "names": "\"채널A\",\"KT\",\"18\",\"18 채널A\",\"18 KT\"", + "number": 0, + "channels": [ + "f16ffaba0421b27550f23181d4bddbb9" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a46ed7bb733ec6cc8f45cef4e9635e2a b/config/epggrab/xmltv/channels/a46ed7bb733ec6cc8f45cef4e9635e2a new file mode 100644 index 0000000..0e43dc5 --- /dev/null +++ b/config/epggrab/xmltv/channels/a46ed7bb733ec6cc8f45cef4e9635e2a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "183.kt", + "name": "이데일리TV", + "names": "\"이데일리TV\",\"KT\",\"183\",\"183 이데일리TV\",\"183 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a686aaabd2fcaa1e5144c61fcd0db9db b/config/epggrab/xmltv/channels/a686aaabd2fcaa1e5144c61fcd0db9db new file mode 100644 index 0000000..4e69825 --- /dev/null +++ b/config/epggrab/xmltv/channels/a686aaabd2fcaa1e5144c61fcd0db9db @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "132.kt", + "name": "생활체육TV", + "names": "\"생활체육TV\",\"KT\",\"132\",\"132 생활체육TV\",\"132 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a722bcdf3d9c8807dca5e560313bf382 b/config/epggrab/xmltv/channels/a722bcdf3d9c8807dca5e560313bf382 new file mode 100644 index 0000000..578cab2 --- /dev/null +++ b/config/epggrab/xmltv/channels/a722bcdf3d9c8807dca5e560313bf382 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "112.kt", + "name": "CH.U", + "names": "\"CH.U\",\"KT\",\"112\",\"112 CH.U\",\"112 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a8289eaf318b74c0e943a717e60e45ff b/config/epggrab/xmltv/channels/a8289eaf318b74c0e943a717e60e45ff new file mode 100644 index 0000000..eb63293 --- /dev/null +++ b/config/epggrab/xmltv/channels/a8289eaf318b74c0e943a717e60e45ff @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "111.kt", + "name": "HQ+", + "names": "\"HQ+\",\"KT\",\"111\",\"111 HQ+\",\"111 KT\"", + "number": 0, + "channels": [ + "a70f58f74b6aa10b71aad94a77eaf67c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a878196155d9995183512e8cede4003c b/config/epggrab/xmltv/channels/a878196155d9995183512e8cede4003c new file mode 100644 index 0000000..ac63605 --- /dev/null +++ b/config/epggrab/xmltv/channels/a878196155d9995183512e8cede4003c @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "68.kt", + "name": "CNTV", + "names": "\"CNTV\",\"KT\",\"68\",\"68 CNTV\",\"68 KT\"", + "number": 0, + "channels": [ + "bb0d9ba2402b23d5753c65555e6758ac" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/a9946853b94e4bdbcf0e8b3d1ee4e95f b/config/epggrab/xmltv/channels/a9946853b94e4bdbcf0e8b3d1ee4e95f new file mode 100644 index 0000000..216fa9a --- /dev/null +++ b/config/epggrab/xmltv/channels/a9946853b94e4bdbcf0e8b3d1ee4e95f @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "63.kt", + "name": "SPOTV Golf & Health", + "names": "\"SPOTV Golf & Health\",\"KT\",\"63\",\"63 SPOTV Golf & Health\",\"63 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ab72335a8fba5825620e7dd8f18ff242 b/config/epggrab/xmltv/channels/ab72335a8fba5825620e7dd8f18ff242 new file mode 100644 index 0000000..4de0a9b --- /dev/null +++ b/config/epggrab/xmltv/channels/ab72335a8fba5825620e7dd8f18ff242 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "144.kt", + "name": "실버아이TV", + "names": "\"실버아이TV\",\"KT\",\"144\",\"144 실버아이TV\",\"144 KT\"", + "number": 0, + "channels": [ + "b5044588c9d0099978247847f6212011" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ac623c680548b8e137f4f624d09e06e1 b/config/epggrab/xmltv/channels/ac623c680548b8e137f4f624d09e06e1 new file mode 100644 index 0000000..a0c0ad5 --- /dev/null +++ b/config/epggrab/xmltv/channels/ac623c680548b8e137f4f624d09e06e1 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "160.kt", + "name": "OUN", + "names": "\"OUN\",\"KT\",\"160\",\"160 OUN\",\"160 KT\"", + "number": 0, + "channels": [ + "83801d93e444b41265b6dc0f40f3eff9" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/afa9597ac8327bcf439b4574af3ae4b7 b/config/epggrab/xmltv/channels/afa9597ac8327bcf439b4574af3ae4b7 new file mode 100644 index 0000000..f60f9c0 --- /dev/null +++ b/config/epggrab/xmltv/channels/afa9597ac8327bcf439b4574af3ae4b7 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "24.kt", + "name": "YTN", + "names": "\"YTN\",\"KT\",\"24\",\"24 YTN\",\"24 KT\"", + "number": 0, + "channels": [ + "ab838030ad36fdfc9152167d7cc1776f" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b0908a6644d96aac443fa4026fe2d600 b/config/epggrab/xmltv/channels/b0908a6644d96aac443fa4026fe2d600 new file mode 100644 index 0000000..8691fb4 --- /dev/null +++ b/config/epggrab/xmltv/channels/b0908a6644d96aac443fa4026fe2d600 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "12.kt", + "name": "kt알파쇼핑", + "names": "\"kt알파쇼핑\",\"KT\",\"12\",\"12 kt알파쇼핑\",\"12 KT\"", + "number": 0, + "channels": [ + "c01c52ee0a80a9e9853c39dd857ef5f1" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b240ab2bb4b9104acdffc30385479377 b/config/epggrab/xmltv/channels/b240ab2bb4b9104acdffc30385479377 new file mode 100644 index 0000000..903b020 --- /dev/null +++ b/config/epggrab/xmltv/channels/b240ab2bb4b9104acdffc30385479377 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "51.kt", + "name": "SPOTV", + "names": "\"SPOTV\",\"KT\",\"51\",\"51 SPOTV\",\"51 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b2aca322880ad6c94dedc597c2ee4206 b/config/epggrab/xmltv/channels/b2aca322880ad6c94dedc597c2ee4206 new file mode 100644 index 0000000..659c878 --- /dev/null +++ b/config/epggrab/xmltv/channels/b2aca322880ad6c94dedc597c2ee4206 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "120.kt", + "name": "FTV", + "names": "\"FTV\",\"KT\",\"120\",\"120 FTV\",\"120 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b2cf53f1aa743b39a634ced3cd4b12a6 b/config/epggrab/xmltv/channels/b2cf53f1aa743b39a634ced3cd4b12a6 new file mode 100644 index 0000000..efd2b9d --- /dev/null +++ b/config/epggrab/xmltv/channels/b2cf53f1aa743b39a634ced3cd4b12a6 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "251.kt", + "name": "국악방송", + "names": "\"국악방송\",\"KT\",\"251\",\"251 국악방송\",\"251 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b3ae11386dff6c52baed9665734548ac b/config/epggrab/xmltv/channels/b3ae11386dff6c52baed9665734548ac new file mode 100644 index 0000000..7b9e22d --- /dev/null +++ b/config/epggrab/xmltv/channels/b3ae11386dff6c52baed9665734548ac @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "276.kt", + "name": "리빙TV", + "names": "\"리빙TV\",\"KT\",\"276\",\"276 리빙TV\",\"276 KT\"", + "number": 0, + "channels": [ + "0a9e50dee0a0df834fe5d465c1f25ace" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b3cbef4b372392f52da751c4fa8a84ab b/config/epggrab/xmltv/channels/b3cbef4b372392f52da751c4fa8a84ab new file mode 100644 index 0000000..08c5494 --- /dev/null +++ b/config/epggrab/xmltv/channels/b3cbef4b372392f52da751c4fa8a84ab @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "236.kt", + "name": "CTS기독교TV", + "names": "\"CTS기독교TV\",\"KT\",\"236\",\"236 CTS기독교TV\",\"236 KT\"", + "number": 0, + "channels": [ + "734ba51135b4bc72f3ea44a3c55ab83c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b4720236bb882a2e2b69d70712cf30e7 b/config/epggrab/xmltv/channels/b4720236bb882a2e2b69d70712cf30e7 new file mode 100644 index 0000000..9f9e3d5 --- /dev/null +++ b/config/epggrab/xmltv/channels/b4720236bb882a2e2b69d70712cf30e7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "254.kt", + "name": "WeeTV", + "names": "\"WeeTV\",\"KT\",\"254\",\"254 WeeTV\",\"254 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b6758417d523a4040d67d52ac6cc2c76 b/config/epggrab/xmltv/channels/b6758417d523a4040d67d52ac6cc2c76 new file mode 100644 index 0000000..891af3a --- /dev/null +++ b/config/epggrab/xmltv/channels/b6758417d523a4040d67d52ac6cc2c76 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "256.kt", + "name": "슬로우TV", + "names": "\"슬로우TV\",\"KT\",\"256\",\"256 슬로우TV\",\"256 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b708953a37d97163524f0b4f757001a7 b/config/epggrab/xmltv/channels/b708953a37d97163524f0b4f757001a7 new file mode 100644 index 0000000..45faf1a --- /dev/null +++ b/config/epggrab/xmltv/channels/b708953a37d97163524f0b4f757001a7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "83.kt", + "name": "KBS Story", + "names": "\"KBS Story\",\"KT\",\"83\",\"83 KBS Story\",\"83 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b76f346e80cf03a713c2073af7eec41d b/config/epggrab/xmltv/channels/b76f346e80cf03a713c2073af7eec41d new file mode 100644 index 0000000..fbf4095 --- /dev/null +++ b/config/epggrab/xmltv/channels/b76f346e80cf03a713c2073af7eec41d @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "32.kt", + "name": "LOTTE OneTV", + "names": "\"LOTTE OneTV\",\"KT\",\"32\",\"32 LOTTE OneTV\",\"32 KT\"", + "number": 0, + "channels": [ + "f38bdf33229debeb2ca34b5930326155" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b964b74103aa403065abe310c7af9889 b/config/epggrab/xmltv/channels/b964b74103aa403065abe310c7af9889 new file mode 100644 index 0000000..d3bbc52 --- /dev/null +++ b/config/epggrab/xmltv/channels/b964b74103aa403065abe310c7af9889 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "231.kt", + "name": "가톨릭평화방송", + "names": "\"가톨릭평화방송\",\"KT\",\"231\",\"231 가톨릭평화방송\",\"231 KT\"", + "number": 0, + "channels": [ + "c0bbcfc518e91f598343d66dc4dd22de" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/b9e0956832d7f7f3a1c08d6bcd05cc5b b/config/epggrab/xmltv/channels/b9e0956832d7f7f3a1c08d6bcd05cc5b new file mode 100644 index 0000000..411d9ae --- /dev/null +++ b/config/epggrab/xmltv/channels/b9e0956832d7f7f3a1c08d6bcd05cc5b @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "48.kt", + "name": "E채널", + "names": "\"E채널\",\"KT\",\"48\",\"48 E채널\",\"48 KT\"", + "number": 0, + "channels": [ + "c0cba8ac0be958708d2742709f4ea7fb" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ba63a2a2207e3a70a9d42e2aebcc7ca2 b/config/epggrab/xmltv/channels/ba63a2a2207e3a70a9d42e2aebcc7ca2 new file mode 100644 index 0000000..40ea253 --- /dev/null +++ b/config/epggrab/xmltv/channels/ba63a2a2207e3a70a9d42e2aebcc7ca2 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "53.kt", + "name": "IB SPORTS", + "names": "\"IB SPORTS\",\"KT\",\"53\",\"53 IB SPORTS\",\"53 KT\"", + "number": 0, + "channels": [ + "020dc2626311486a8319ab4879e50b64" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/bc019beb9bc32eb25a0c047d55a979c7 b/config/epggrab/xmltv/channels/bc019beb9bc32eb25a0c047d55a979c7 new file mode 100644 index 0000000..ce133cb --- /dev/null +++ b/config/epggrab/xmltv/channels/bc019beb9bc32eb25a0c047d55a979c7 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "77.kt", + "name": "tvN SPORTS", + "names": "\"tvN SPORTS\",\"KT\",\"77\",\"77 tvN SPORTS\",\"77 KT\"", + "number": 0, + "channels": [ + "ec0350a3c3b1160b055555acf5902a5f" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/bc277079fb069675464f9af9edbe98bb b/config/epggrab/xmltv/channels/bc277079fb069675464f9af9edbe98bb new file mode 100644 index 0000000..3e17011 --- /dev/null +++ b/config/epggrab/xmltv/channels/bc277079fb069675464f9af9edbe98bb @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "990.kt", + "name": "애니플러스", + "names": "\"애니플러스\",\"KT\",\"990\",\"990 애니플러스\",\"990 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/bdb40d324fd2e478681b99ddfd8b75f1 b/config/epggrab/xmltv/channels/bdb40d324fd2e478681b99ddfd8b75f1 new file mode 100644 index 0000000..2b95651 --- /dev/null +++ b/config/epggrab/xmltv/channels/bdb40d324fd2e478681b99ddfd8b75f1 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "142.kt", + "name": "GMTV", + "names": "\"GMTV\",\"KT\",\"142\",\"142 GMTV\",\"142 KT\"", + "number": 0, + "channels": [ + "c31810802fc6cdf63d3638ac767fe03b" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/be377aaf18af92a8ab7aed93669d4ae4 b/config/epggrab/xmltv/channels/be377aaf18af92a8ab7aed93669d4ae4 new file mode 100644 index 0000000..6991a88 --- /dev/null +++ b/config/epggrab/xmltv/channels/be377aaf18af92a8ab7aed93669d4ae4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "127.kt", + "name": "빌리어즈티비", + "names": "\"빌리어즈티비\",\"KT\",\"127\",\"127 빌리어즈티비\",\"127 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/c023c1e6048cdcaf903e541d4e907777 b/config/epggrab/xmltv/channels/c023c1e6048cdcaf903e541d4e907777 new file mode 100644 index 0000000..44d81be --- /dev/null +++ b/config/epggrab/xmltv/channels/c023c1e6048cdcaf903e541d4e907777 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "134.kt", + "name": "STORYTV", + "names": "\"STORYTV\",\"KT\",\"134\",\"134 STORYTV\",\"134 KT\"", + "number": 0, + "channels": [ + "01863416c0c6ed6aa93839fcef87dc3c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/c02583d0cf26fa2ef5999a6507b7df89 b/config/epggrab/xmltv/channels/c02583d0cf26fa2ef5999a6507b7df89 new file mode 100644 index 0000000..9994137 --- /dev/null +++ b/config/epggrab/xmltv/channels/c02583d0cf26fa2ef5999a6507b7df89 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "985.kt", + "name": "캐리TV", + "names": "\"캐리TV\",\"KT\",\"985\",\"985 캐리TV\",\"985 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/c0341a7f293265b56a412215fc458f4e b/config/epggrab/xmltv/channels/c0341a7f293265b56a412215fc458f4e new file mode 100644 index 0000000..7eb52cb --- /dev/null +++ b/config/epggrab/xmltv/channels/c0341a7f293265b56a412215fc458f4e @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "95.kt", + "name": "EBS2", + "names": "\"EBS2\",\"KT\",\"95\",\"95 EBS2\",\"95 KT\"", + "number": 0, + "channels": [ + "409bd9620a8448b5e4441fd33196fcc0" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/c6ccbd4bdcbccc4440d1cbe32ad4dd1b b/config/epggrab/xmltv/channels/c6ccbd4bdcbccc4440d1cbe32ad4dd1b new file mode 100644 index 0000000..77fe686 --- /dev/null +++ b/config/epggrab/xmltv/channels/c6ccbd4bdcbccc4440d1cbe32ad4dd1b @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "14.kt", + "name": "홈&쇼핑", + "names": "\"홈&쇼핑\",\"KT\",\"14\",\"14 홈&쇼핑\",\"14 KT\"", + "number": 0, + "channels": [ + "6119b8dfdab0ac99abae5b7a1e70d22c" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/c9e84f42f00c41bbe3ec365079e0e704 b/config/epggrab/xmltv/channels/c9e84f42f00c41bbe3ec365079e0e704 new file mode 100644 index 0000000..a6cf354 --- /dev/null +++ b/config/epggrab/xmltv/channels/c9e84f42f00c41bbe3ec365079e0e704 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "35.kt", + "name": "KBS Drama", + "names": "\"KBS Drama\",\"KT\",\"35\",\"35 KBS Drama\",\"35 KT\"", + "number": 0, + "channels": [ + "a9804d0f264382cb08ffffb96d092207" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ca21c121aa7214013f420012e33a1c60 b/config/epggrab/xmltv/channels/ca21c121aa7214013f420012e33a1c60 new file mode 100644 index 0000000..6cce70d --- /dev/null +++ b/config/epggrab/xmltv/channels/ca21c121aa7214013f420012e33a1c60 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "126.kt", + "name": "브레인TV", + "names": "\"브레인TV\",\"KT\",\"126\",\"126 브레인TV\",\"126 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/cb23b8d1dc71df3ca7862b35043c8561 b/config/epggrab/xmltv/channels/cb23b8d1dc71df3ca7862b35043c8561 new file mode 100644 index 0000000..71c52c8 --- /dev/null +++ b/config/epggrab/xmltv/channels/cb23b8d1dc71df3ca7862b35043c8561 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "56.kt", + "name": "JTBC Golf", + "names": "\"JTBC Golf\",\"KT\",\"56\",\"56 JTBC Golf\",\"56 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/cbcf4bc10caef7e58bee2d1eb5de6afa b/config/epggrab/xmltv/channels/cbcf4bc10caef7e58bee2d1eb5de6afa new file mode 100644 index 0000000..c49bfce --- /dev/null +++ b/config/epggrab/xmltv/channels/cbcf4bc10caef7e58bee2d1eb5de6afa @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "89.kt", + "name": "디원", + "names": "\"디원\",\"KT\",\"89\",\"89 디원\",\"89 KT\"", + "number": 0, + "channels": [ + "7d2c7871d8782830b02e46abb9b59916" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ceab7d8db7e95541e6aef4378242ef23 b/config/epggrab/xmltv/channels/ceab7d8db7e95541e6aef4378242ef23 new file mode 100644 index 0000000..6b7ec01 --- /dev/null +++ b/config/epggrab/xmltv/channels/ceab7d8db7e95541e6aef4378242ef23 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "135.kt", + "name": "SPOTV K", + "names": "\"SPOTV K\",\"KT\",\"135\",\"135 SPOTV K\",\"135 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ced6e4fb608051baed78e4994e41ce5d b/config/epggrab/xmltv/channels/ced6e4fb608051baed78e4994e41ce5d new file mode 100644 index 0000000..c5e43f8 --- /dev/null +++ b/config/epggrab/xmltv/channels/ced6e4fb608051baed78e4994e41ce5d @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "131.kt", + "name": "STN", + "names": "\"STN\",\"KT\",\"131\",\"131 STN\",\"131 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/cf6ffa77b4f57f376a50cfdd350d3a64 b/config/epggrab/xmltv/channels/cf6ffa77b4f57f376a50cfdd350d3a64 new file mode 100644 index 0000000..ad2903a --- /dev/null +++ b/config/epggrab/xmltv/channels/cf6ffa77b4f57f376a50cfdd350d3a64 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "105.kt", + "name": "인디필름", + "names": "\"인디필름\",\"KT\",\"105\",\"105 인디필름\",\"105 KT\"", + "number": 0, + "channels": [ + "a59c5c1d3974e5da8130b1e36b4174c0" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d1b65c4fa5a6aae06686d71f0108e36c b/config/epggrab/xmltv/channels/d1b65c4fa5a6aae06686d71f0108e36c new file mode 100644 index 0000000..976dd73 --- /dev/null +++ b/config/epggrab/xmltv/channels/d1b65c4fa5a6aae06686d71f0108e36c @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "147.kt", + "name": "붐TV", + "names": "\"붐TV\",\"KT\",\"147\",\"147 붐TV\",\"147 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d200f4e7138820e834c1878c1331daad b/config/epggrab/xmltv/channels/d200f4e7138820e834c1878c1331daad new file mode 100644 index 0000000..63b4a3e --- /dev/null +++ b/config/epggrab/xmltv/channels/d200f4e7138820e834c1878c1331daad @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "123.kt", + "name": "K바둑", + "names": "\"K바둑\",\"KT\",\"123\",\"123 K바둑\",\"123 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d332b95abd25dd5cf04ad6b442f3caed b/config/epggrab/xmltv/channels/d332b95abd25dd5cf04ad6b442f3caed new file mode 100644 index 0000000..3dcec44 --- /dev/null +++ b/config/epggrab/xmltv/channels/d332b95abd25dd5cf04ad6b442f3caed @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "27.kt", + "name": "Mnet", + "names": "\"Mnet\",\"KT\",\"27\",\"27 Mnet\",\"27 KT\"", + "number": 0, + "channels": [ + "d78768c0906cede9ac1a9ad26d0691e3" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d47828eb8f6f7231295b40fc4b85831e b/config/epggrab/xmltv/channels/d47828eb8f6f7231295b40fc4b85831e new file mode 100644 index 0000000..24e97b2 --- /dev/null +++ b/config/epggrab/xmltv/channels/d47828eb8f6f7231295b40fc4b85831e @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "6.kt", + "name": "CJ ONSTYLE", + "names": "\"CJ ONSTYLE\",\"KT\",\"6\",\"6 CJ ONSTYLE\",\"6 KT\"", + "number": 0, + "channels": [ + "5e0a4ccfb7a83c79d87c0ce1554ebbb6" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d5fab887188aeef05fef21824acdb65a b/config/epggrab/xmltv/channels/d5fab887188aeef05fef21824acdb65a new file mode 100644 index 0000000..8712583 --- /dev/null +++ b/config/epggrab/xmltv/channels/d5fab887188aeef05fef21824acdb65a @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "261.kt", + "name": "더라이프", + "names": "\"더라이프\",\"KT\",\"261\",\"261 더라이프\",\"261 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d6e2a39a632698d48609bb46c17bce70 b/config/epggrab/xmltv/channels/d6e2a39a632698d48609bb46c17bce70 new file mode 100644 index 0000000..b27d9f4 --- /dev/null +++ b/config/epggrab/xmltv/channels/d6e2a39a632698d48609bb46c17bce70 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "158.kt", + "name": "KBS LIFE", + "names": "\"KBS LIFE\",\"KT\",\"158\",\"158 KBS LIFE\",\"158 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d7022b2cafb5aaf9cb8b1da57917adb8 b/config/epggrab/xmltv/channels/d7022b2cafb5aaf9cb8b1da57917adb8 new file mode 100644 index 0000000..f66741b --- /dev/null +++ b/config/epggrab/xmltv/channels/d7022b2cafb5aaf9cb8b1da57917adb8 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "13.kt", + "name": "EBS", + "names": "\"EBS\",\"KT\",\"13\",\"13 EBS\",\"13 KT\"", + "number": 0, + "channels": [ + "3a10972ca19c5da68a54ea2a2948c5af" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d91112503d5727193e2e5f25e232c94d b/config/epggrab/xmltv/channels/d91112503d5727193e2e5f25e232c94d new file mode 100644 index 0000000..3c91e54 --- /dev/null +++ b/config/epggrab/xmltv/channels/d91112503d5727193e2e5f25e232c94d @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "996.kt", + "name": "Tooniverse", + "names": "\"Tooniverse\",\"KT\",\"996\",\"996 Tooniverse\",\"996 KT\"", + "number": 0, + "channels": [ + "e3e944f04143020929268973fb7a09ea" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/d9f8905e8a8062c5483140a7a3607102 b/config/epggrab/xmltv/channels/d9f8905e8a8062c5483140a7a3607102 new file mode 100644 index 0000000..72a23ae --- /dev/null +++ b/config/epggrab/xmltv/channels/d9f8905e8a8062c5483140a7a3607102 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "984.kt", + "name": "KBS Kids", + "names": "\"KBS Kids\",\"KT\",\"984\",\"984 KBS Kids\",\"984 KT\"", + "number": 0, + "channels": [ + "47248ca05f2307d05a7827913e4a67ba" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/da71a9dcaedb748c6d7a0db6ec42b4c5 b/config/epggrab/xmltv/channels/da71a9dcaedb748c6d7a0db6ec42b4c5 new file mode 100644 index 0000000..69e7405 --- /dev/null +++ b/config/epggrab/xmltv/channels/da71a9dcaedb748c6d7a0db6ec42b4c5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "198.kt", + "name": "TV5MONDE", + "names": "\"TV5MONDE\",\"KT\",\"198\",\"198 TV5MONDE\",\"198 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/db994e28292a6ffe2953e6c187207f8c b/config/epggrab/xmltv/channels/db994e28292a6ffe2953e6c187207f8c new file mode 100644 index 0000000..32b0377 --- /dev/null +++ b/config/epggrab/xmltv/channels/db994e28292a6ffe2953e6c187207f8c @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "138.kt", + "name": "뉴트로TV", + "names": "\"뉴트로TV\",\"KT\",\"138\",\"138 뉴트로TV\",\"138 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/dc90e2def2162d7daba4f14f65a2e42c b/config/epggrab/xmltv/channels/dc90e2def2162d7daba4f14f65a2e42c new file mode 100644 index 0000000..8c3ff59 --- /dev/null +++ b/config/epggrab/xmltv/channels/dc90e2def2162d7daba4f14f65a2e42c @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "976.kt", + "name": "뽀요TV", + "names": "\"뽀요TV\",\"KT\",\"976\",\"976 뽀요TV\",\"976 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/dd0724ee9085645924fcf0713b2baf0e b/config/epggrab/xmltv/channels/dd0724ee9085645924fcf0713b2baf0e new file mode 100644 index 0000000..efe75f3 --- /dev/null +++ b/config/epggrab/xmltv/channels/dd0724ee9085645924fcf0713b2baf0e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "974.kt", + "name": "플레이런TV", + "names": "\"플레이런TV\",\"KT\",\"974\",\"974 플레이런TV\",\"974 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/dd7896f64e589e4e102449839b2a5c23 b/config/epggrab/xmltv/channels/dd7896f64e589e4e102449839b2a5c23 new file mode 100644 index 0000000..5f099b2 --- /dev/null +++ b/config/epggrab/xmltv/channels/dd7896f64e589e4e102449839b2a5c23 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "262.kt", + "name": "ONN 닥터TV", + "names": "\"ONN 닥터TV\",\"KT\",\"262\",\"262 ONN 닥터TV\",\"262 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ddb0f34ebea7d4349c68ee5179dc6ef3 b/config/epggrab/xmltv/channels/ddb0f34ebea7d4349c68ee5179dc6ef3 new file mode 100644 index 0000000..5f5b1ac --- /dev/null +++ b/config/epggrab/xmltv/channels/ddb0f34ebea7d4349c68ee5179dc6ef3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "226.kt", + "name": "폴라리스TV", + "names": "\"폴라리스TV\",\"KT\",\"226\",\"226 폴라리스TV\",\"226 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/de46a02830e0a541929a892d2fdf8b26 b/config/epggrab/xmltv/channels/de46a02830e0a541929a892d2fdf8b26 new file mode 100644 index 0000000..81c7dad --- /dev/null +++ b/config/epggrab/xmltv/channels/de46a02830e0a541929a892d2fdf8b26 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "136.kt", + "name": "SBS M", + "names": "\"SBS M\",\"KT\",\"136\",\"136 SBS M\",\"136 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e0451dcec14797e117043ec3319195f2 b/config/epggrab/xmltv/channels/e0451dcec14797e117043ec3319195f2 new file mode 100644 index 0000000..e856f9f --- /dev/null +++ b/config/epggrab/xmltv/channels/e0451dcec14797e117043ec3319195f2 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "107.kt", + "name": "채널나우", + "names": "\"채널나우\",\"KT\",\"107\",\"107 채널나우\",\"107 KT\"", + "number": 0, + "channels": [ + "521a0f10676c95418bf2f4f43dda5c2d" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e39ff72660e5a07a7a7053feee3d1fa2 b/config/epggrab/xmltv/channels/e39ff72660e5a07a7a7053feee3d1fa2 new file mode 100644 index 0000000..d00fe33 --- /dev/null +++ b/config/epggrab/xmltv/channels/e39ff72660e5a07a7a7053feee3d1fa2 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "114.kt", + "name": "텔레노벨라", + "names": "\"텔레노벨라\",\"KT\",\"114\",\"114 텔레노벨라\",\"114 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e4eabc448e597de72ac706fbd8be6f1f b/config/epggrab/xmltv/channels/e4eabc448e597de72ac706fbd8be6f1f new file mode 100644 index 0000000..09078ba --- /dev/null +++ b/config/epggrab/xmltv/channels/e4eabc448e597de72ac706fbd8be6f1f @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "117.kt", + "name": "TVasiaPlus", + "names": "\"TVasiaPlus\",\"KT\",\"117\",\"117 TVasiaPlus\",\"117 KT\"", + "number": 0, + "channels": [ + "74efd1df55fe97c5d23b4923e973370a" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e6aef8f334651c4d510a565ffe17b696 b/config/epggrab/xmltv/channels/e6aef8f334651c4d510a565ffe17b696 new file mode 100644 index 0000000..e67bc7b --- /dev/null +++ b/config/epggrab/xmltv/channels/e6aef8f334651c4d510a565ffe17b696 @@ -0,0 +1,17 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "5.kt", + "name": "SBS", + "names": "\"SBS\",\"KT\",\"5\",\"5 SBS\",\"5 KT\"", + "number": 0, + "channels": [ + "363bdf6f2867dd7eb6d9af5b62581d97" + ], + "only_one": false, + "update": [ + "update_icon", + "update_chnum", + "update_chname" + ] +} diff --git a/config/epggrab/xmltv/channels/e7b6747fd9b1f108cb87b9236f247e4d b/config/epggrab/xmltv/channels/e7b6747fd9b1f108cb87b9236f247e4d new file mode 100644 index 0000000..a631f9b --- /dev/null +++ b/config/epggrab/xmltv/channels/e7b6747fd9b1f108cb87b9236f247e4d @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "233.kt", + "name": "BTN불교TV", + "names": "\"BTN불교TV\",\"KT\",\"233\",\"233 BTN불교TV\",\"233 KT\"", + "number": 0, + "channels": [ + "07e58c81c94cdbe000b6e1b209086943" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e8ca35a419652ecd20f1ab90108370ab b/config/epggrab/xmltv/channels/e8ca35a419652ecd20f1ab90108370ab new file mode 100644 index 0000000..85e997a --- /dev/null +++ b/config/epggrab/xmltv/channels/e8ca35a419652ecd20f1ab90108370ab @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "19.kt", + "name": "TV조선", + "names": "\"TV조선\",\"KT\",\"19\",\"19 TV조선\",\"19 KT\"", + "number": 0, + "channels": [ + "82bfadadf1dd6611030f90d71764cbb1" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/e93f6e76158bd1181cf40658a0a64db5 b/config/epggrab/xmltv/channels/e93f6e76158bd1181cf40658a0a64db5 new file mode 100644 index 0000000..f25a49b --- /dev/null +++ b/config/epggrab/xmltv/channels/e93f6e76158bd1181cf40658a0a64db5 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "180.kt", + "name": "한국경제TV", + "names": "\"한국경제TV\",\"KT\",\"180\",\"180 한국경제TV\",\"180 KT\"", + "number": 0, + "channels": [ + "c9782a02ee6f212d0649055c8fc9459e" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/eaf288737e1eeb1a19e5619aa41e7e6b b/config/epggrab/xmltv/channels/eaf288737e1eeb1a19e5619aa41e7e6b new file mode 100644 index 0000000..cb23584 --- /dev/null +++ b/config/epggrab/xmltv/channels/eaf288737e1eeb1a19e5619aa41e7e6b @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "69.kt", + "name": "TVCHOSUN2", + "names": "\"TVCHOSUN2\",\"KT\",\"69\",\"69 TVCHOSUN2\",\"69 KT\"", + "number": 0, + "channels": [ + "9b37b5849fe51eb6b0dc26bd48bc664b" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ec74767e94a1cd5e270c8d257326c116 b/config/epggrab/xmltv/channels/ec74767e94a1cd5e270c8d257326c116 new file mode 100644 index 0000000..357aa66 --- /dev/null +++ b/config/epggrab/xmltv/channels/ec74767e94a1cd5e270c8d257326c116 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "213.kt", + "name": "법률방송", + "names": "\"법률방송\",\"KT\",\"213\",\"213 법률방송\",\"213 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ecfd68f5e578e1e57e655886beafd835 b/config/epggrab/xmltv/channels/ecfd68f5e578e1e57e655886beafd835 new file mode 100644 index 0000000..38d0e28 --- /dev/null +++ b/config/epggrab/xmltv/channels/ecfd68f5e578e1e57e655886beafd835 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "67.kt", + "name": "GTV", + "names": "\"GTV\",\"KT\",\"67\",\"67 GTV\",\"67 KT\"", + "number": 0, + "channels": [ + "7524f5fda910408ceb38138c08f947d6" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ee97737dc8ae22af14a05043c44644d0 b/config/epggrab/xmltv/channels/ee97737dc8ae22af14a05043c44644d0 new file mode 100644 index 0000000..e57a3b8 --- /dev/null +++ b/config/epggrab/xmltv/channels/ee97737dc8ae22af14a05043c44644d0 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "66.kt", + "name": "SBS F!L", + "names": "\"SBS F!L\",\"KT\",\"66\",\"66 SBS F!L\",\"66 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/eebda6f85396fdc067c01f980c7457c2 b/config/epggrab/xmltv/channels/eebda6f85396fdc067c01f980c7457c2 new file mode 100644 index 0000000..b58a6e8 --- /dev/null +++ b/config/epggrab/xmltv/channels/eebda6f85396fdc067c01f980c7457c2 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "999.kt", + "name": "ENA PLAY", + "names": "\"ENA PLAY\",\"KT\",\"999\",\"999 ENA PLAY\",\"999 KT\"", + "number": 0, + "channels": [ + "32634fc85b5e2c9906f49a29b651e61e" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/eecb117f0ba71e3fcafd05636e9288dc b/config/epggrab/xmltv/channels/eecb117f0ba71e3fcafd05636e9288dc new file mode 100644 index 0000000..da6000a --- /dev/null +++ b/config/epggrab/xmltv/channels/eecb117f0ba71e3fcafd05636e9288dc @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "11.kt", + "name": "MBC", + "names": "\"MBC\",\"KT\",\"11\",\"11 MBC\",\"11 KT\"", + "number": 0, + "channels": [ + "3bc545adc242d8d81402c46da95d2b94" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/ef0b6a80df4428c464cb4794ebf5a239 b/config/epggrab/xmltv/channels/ef0b6a80df4428c464cb4794ebf5a239 new file mode 100644 index 0000000..5d5d256 --- /dev/null +++ b/config/epggrab/xmltv/channels/ef0b6a80df4428c464cb4794ebf5a239 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "969.kt", + "name": "다빈치러닝", + "names": "\"다빈치러닝\",\"KT\",\"969\",\"969 다빈치러닝\",\"969 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/efd810498b7f2afd95c857b84b6f2658 b/config/epggrab/xmltv/channels/efd810498b7f2afd95c857b84b6f2658 new file mode 100644 index 0000000..aba846f --- /dev/null +++ b/config/epggrab/xmltv/channels/efd810498b7f2afd95c857b84b6f2658 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "156.kt", + "name": "엑스원", + "names": "\"엑스원\",\"KT\",\"156\",\"156 엑스원\",\"156 KT\"", + "number": 0, + "channels": [ + "2b41c20f215fa135905a94b07a206762" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f13ddecbcb69640be68c0ea3ba6c12a3 b/config/epggrab/xmltv/channels/f13ddecbcb69640be68c0ea3ba6c12a3 new file mode 100644 index 0000000..0b8e3bd --- /dev/null +++ b/config/epggrab/xmltv/channels/f13ddecbcb69640be68c0ea3ba6c12a3 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "133.kt", + "name": "스크린골프존", + "names": "\"스크린골프존\",\"KT\",\"133\",\"133 스크린골프존\",\"133 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f1a96c76dcef27b756f52953ec6550b8 b/config/epggrab/xmltv/channels/f1a96c76dcef27b756f52953ec6550b8 new file mode 100644 index 0000000..552f7ea --- /dev/null +++ b/config/epggrab/xmltv/channels/f1a96c76dcef27b756f52953ec6550b8 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "165.kt", + "name": "채널i", + "names": "\"채널i\",\"KT\",\"165\",\"165 채널i\",\"165 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f284e40e680ef6bcd6e6d8782725a7a1 b/config/epggrab/xmltv/channels/f284e40e680ef6bcd6e6d8782725a7a1 new file mode 100644 index 0000000..377d132 --- /dev/null +++ b/config/epggrab/xmltv/channels/f284e40e680ef6bcd6e6d8782725a7a1 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "79.kt", + "name": "Edge TV", + "names": "\"Edge TV\",\"KT\",\"79\",\"79 Edge TV\",\"79 KT\"", + "number": 0, + "channels": [ + "c121d2acfba6b8115fd81029c38d22f3" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f30b83cd84b5f5b097aec83f47a3efd0 b/config/epggrab/xmltv/channels/f30b83cd84b5f5b097aec83f47a3efd0 new file mode 100644 index 0000000..ddb0470 --- /dev/null +++ b/config/epggrab/xmltv/channels/f30b83cd84b5f5b097aec83f47a3efd0 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "88.kt", + "name": "ONCE", + "names": "\"ONCE\",\"KT\",\"88\",\"88 ONCE\",\"88 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f54b9a5bd1015b0523db8f4f2b53bf10 b/config/epggrab/xmltv/channels/f54b9a5bd1015b0523db8f4f2b53bf10 new file mode 100644 index 0000000..745e4f5 --- /dev/null +++ b/config/epggrab/xmltv/channels/f54b9a5bd1015b0523db8f4f2b53bf10 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "93.kt", + "name": "채널이엠", + "names": "\"채널이엠\",\"KT\",\"93\",\"93 채널이엠\",\"93 KT\"", + "number": 0, + "channels": [ + "a11e81997ba247049cec9892f7dae731" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f54ef3b6d15b0a452a2e6688d663e03e b/config/epggrab/xmltv/channels/f54ef3b6d15b0a452a2e6688d663e03e new file mode 100644 index 0000000..56424e4 --- /dev/null +++ b/config/epggrab/xmltv/channels/f54ef3b6d15b0a452a2e6688d663e03e @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "72.kt", + "name": "ENA STORY", + "names": "\"ENA STORY\",\"KT\",\"72\",\"72 ENA STORY\",\"72 KT\"", + "number": 0, + "channels": [ + "835d17c88af6a88ae869546d19940584" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f5a4cc5a304ec6eabc8ec86b8c506ec5 b/config/epggrab/xmltv/channels/f5a4cc5a304ec6eabc8ec86b8c506ec5 new file mode 100644 index 0000000..78cfce4 --- /dev/null +++ b/config/epggrab/xmltv/channels/f5a4cc5a304ec6eabc8ec86b8c506ec5 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "172.kt", + "name": "BBC Earth", + "names": "\"BBC Earth\",\"KT\",\"172\",\"172 BBC Earth\",\"172 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f64747e0927011e6530c42932f43dbc7 b/config/epggrab/xmltv/channels/f64747e0927011e6530c42932f43dbc7 new file mode 100644 index 0000000..edd7c55 --- /dev/null +++ b/config/epggrab/xmltv/channels/f64747e0927011e6530c42932f43dbc7 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "81.kt", + "name": "HD OBS W", + "names": "\"HD OBS W\",\"KT\",\"81\",\"81 HD OBS W\",\"81 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f679613a19da5241edd4b168d0532447 b/config/epggrab/xmltv/channels/f679613a19da5241edd4b168d0532447 new file mode 100644 index 0000000..65df40d --- /dev/null +++ b/config/epggrab/xmltv/channels/f679613a19da5241edd4b168d0532447 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "157.kt", + "name": "MGTV", + "names": "\"MGTV\",\"KT\",\"157\",\"157 MGTV\",\"157 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f6c7e2f3f6ce352f00b682acae896a52 b/config/epggrab/xmltv/channels/f6c7e2f3f6ce352f00b682acae896a52 new file mode 100644 index 0000000..087f6fa --- /dev/null +++ b/config/epggrab/xmltv/channels/f6c7e2f3f6ce352f00b682acae896a52 @@ -0,0 +1,14 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "58.kt", + "name": "SBS Sports", + "names": "\"SBS Sports\",\"KT\",\"58\",\"58 SBS Sports\",\"58 KT\"", + "number": 0, + "channels": [ + "c12461de5260000c8d111ea3e9bda24b" + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f7ed4a0a9c9a5fadb01d23db56df0c8e b/config/epggrab/xmltv/channels/f7ed4a0a9c9a5fadb01d23db56df0c8e new file mode 100644 index 0000000..5d18023 --- /dev/null +++ b/config/epggrab/xmltv/channels/f7ed4a0a9c9a5fadb01d23db56df0c8e @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "263.kt", + "name": "EBC", + "names": "\"EBC\",\"KT\",\"263\",\"263 EBC\",\"263 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/f8dee25e41c19b6c77fade034e0e9075 b/config/epggrab/xmltv/channels/f8dee25e41c19b6c77fade034e0e9075 new file mode 100644 index 0000000..cd29d91 --- /dev/null +++ b/config/epggrab/xmltv/channels/f8dee25e41c19b6c77fade034e0e9075 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "981.kt", + "name": "대교 노리Q", + "names": "\"대교 노리Q\",\"KT\",\"981\",\"981 대교 노리Q\",\"981 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/faf4d1f35353c47356c2d8ebf8eede5d b/config/epggrab/xmltv/channels/faf4d1f35353c47356c2d8ebf8eede5d new file mode 100644 index 0000000..c9b4bed --- /dev/null +++ b/config/epggrab/xmltv/channels/faf4d1f35353c47356c2d8ebf8eede5d @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "962.kt", + "name": "Dream Works Channel", + "names": "\"Dream Works Channel\",\"KT\",\"962\",\"962 Dream Works Channel\",\"962 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/epggrab/xmltv/channels/fd879a494c2215960a5dca3972bd55f4 b/config/epggrab/xmltv/channels/fd879a494c2215960a5dca3972bd55f4 new file mode 100644 index 0000000..fe92a04 --- /dev/null +++ b/config/epggrab/xmltv/channels/fd879a494c2215960a5dca3972bd55f4 @@ -0,0 +1,13 @@ +{ + "enabled": true, + "modid": "/usr/bin/tv_grab_file", + "id": "73.kt", + "name": "AsiaN", + "names": "\"AsiaN\",\"KT\",\"73\",\"73 AsiaN\",\"73 KT\"", + "number": 0, + "channels": [ + ], + "only_one": false, + "update": [ + ] +} diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/config b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/config new file mode 100644 index 0000000..c63b91b --- /dev/null +++ b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/config @@ -0,0 +1,15 @@ +{ + "networkname": "QAM256", + "pnetworkname": "DLIVE", + "nid": 0, + "autodiscovery": 1, + "skipinitscan": true, + "idlescan": false, + "sid_chnum": false, + "ignore_chnum": false, + "satip_source": 0, + "charset": "UTF-8", + "localtime": 540, + "wizard": false, + "class": "dvb_network_atsc_t" +} diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0134eecb7ea8ceb4e4be9f28980fd289 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0134eecb7ea8ceb4e4be9f28980fd289 new file mode 100644 index 0000000..9e0dc28 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0134eecb7ea8ceb4e4be9f28980fd289 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/04563380ff0ade960d49c1fe1a6cc1be b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/04563380ff0ade960d49c1fe1a6cc1be new file mode 100644 index 0000000..149be96 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/04563380ff0ade960d49c1fe1a6cc1be differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/05324aba2e5550e419611f45f9745a36 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/05324aba2e5550e419611f45f9745a36 new file mode 100644 index 0000000..cffda0e Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/05324aba2e5550e419611f45f9745a36 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/07697724679f3275c31216012acb590b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/07697724679f3275c31216012acb590b new file mode 100644 index 0000000..e3289ea Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/07697724679f3275c31216012acb590b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/076b9b8461705781674224d5232ef4fd b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/076b9b8461705781674224d5232ef4fd new file mode 100644 index 0000000..9842db7 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/076b9b8461705781674224d5232ef4fd differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/084fa2383ccb844e35b8659036be68d9 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/084fa2383ccb844e35b8659036be68d9 new file mode 100644 index 0000000..66858cf Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/084fa2383ccb844e35b8659036be68d9 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0c64070f75240168496b3a419ca52b0b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0c64070f75240168496b3a419ca52b0b new file mode 100644 index 0000000..3f63868 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0c64070f75240168496b3a419ca52b0b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0cb3b8087cec684182b2ddd62a0bf099 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0cb3b8087cec684182b2ddd62a0bf099 new file mode 100644 index 0000000..6003f0f Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/0cb3b8087cec684182b2ddd62a0bf099 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/100846678cd5c8190432f25dc54eb12a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/100846678cd5c8190432f25dc54eb12a new file mode 100644 index 0000000..93d354d Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/100846678cd5c8190432f25dc54eb12a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/15e3e5f729f62e6989cf5bb31ffd25d6 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/15e3e5f729f62e6989cf5bb31ffd25d6 new file mode 100644 index 0000000..31b8d7e Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/15e3e5f729f62e6989cf5bb31ffd25d6 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/16d8cee0f1ee29df5d415375f7dcf27b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/16d8cee0f1ee29df5d415375f7dcf27b new file mode 100644 index 0000000..a249ea5 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/16d8cee0f1ee29df5d415375f7dcf27b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/17e00f451c6077284565ce2e6f0fd73a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/17e00f451c6077284565ce2e6f0fd73a new file mode 100644 index 0000000..b05de88 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/17e00f451c6077284565ce2e6f0fd73a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/181d4493cb50191030539531c3256b40 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/181d4493cb50191030539531c3256b40 new file mode 100644 index 0000000..92f8f88 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/181d4493cb50191030539531c3256b40 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/187b993838fc23f280e073146a433e78 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/187b993838fc23f280e073146a433e78 new file mode 100644 index 0000000..cae2a60 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/187b993838fc23f280e073146a433e78 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/192096e0dccc8acbe49089b409830142 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/192096e0dccc8acbe49089b409830142 new file mode 100644 index 0000000..7bee135 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/192096e0dccc8acbe49089b409830142 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1a2a8131a730a992ac81616c31add51a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1a2a8131a730a992ac81616c31add51a new file mode 100644 index 0000000..bb080bb Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1a2a8131a730a992ac81616c31add51a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1eb138cd8f6b4145e4a6668c46cefd12 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1eb138cd8f6b4145e4a6668c46cefd12 new file mode 100644 index 0000000..6b9bb93 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1eb138cd8f6b4145e4a6668c46cefd12 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1fc5a8928226253f599f2f8c6d49af82 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1fc5a8928226253f599f2f8c6d49af82 new file mode 100644 index 0000000..655255a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/1fc5a8928226253f599f2f8c6d49af82 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/207b7caf0b17f8e82b5fc96ef1830a10 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/207b7caf0b17f8e82b5fc96ef1830a10 new file mode 100644 index 0000000..1feb3c3 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/207b7caf0b17f8e82b5fc96ef1830a10 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/209b5ff77fc0acab5f93967c51b03500 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/209b5ff77fc0acab5f93967c51b03500 new file mode 100644 index 0000000..ae0f515 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/209b5ff77fc0acab5f93967c51b03500 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/238df5677171888739608b4caeddd24d b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/238df5677171888739608b4caeddd24d new file mode 100644 index 0000000..0aa23d5 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/238df5677171888739608b4caeddd24d differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/248db6f743c927d7a015e4cf3a09cdd7 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/248db6f743c927d7a015e4cf3a09cdd7 new file mode 100644 index 0000000..0560969 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/248db6f743c927d7a015e4cf3a09cdd7 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/295e378cc6fb526789c21bd721e7b38a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/295e378cc6fb526789c21bd721e7b38a new file mode 100644 index 0000000..57edcc0 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/295e378cc6fb526789c21bd721e7b38a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2a1165c204c2b2716355957f34332d7e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2a1165c204c2b2716355957f34332d7e new file mode 100644 index 0000000..f277ac2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2a1165c204c2b2716355957f34332d7e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ba45fd55c2e705dfff3afd39a587297 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ba45fd55c2e705dfff3afd39a587297 new file mode 100644 index 0000000..320f017 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ba45fd55c2e705dfff3afd39a587297 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2c6783e32f62f5bee2200b9fff4aab4a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2c6783e32f62f5bee2200b9fff4aab4a new file mode 100644 index 0000000..c43b372 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2c6783e32f62f5bee2200b9fff4aab4a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2d3c5523cdba5f8cdd3a48be0bda0cba b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2d3c5523cdba5f8cdd3a48be0bda0cba new file mode 100644 index 0000000..f189f16 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2d3c5523cdba5f8cdd3a48be0bda0cba differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ec75ceb13eb08e6417403e2b2dec2aa b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ec75ceb13eb08e6417403e2b2dec2aa new file mode 100644 index 0000000..fc71d0b Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2ec75ceb13eb08e6417403e2b2dec2aa differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2f4b468ff4f8c03db0360e94806a2c1d b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2f4b468ff4f8c03db0360e94806a2c1d new file mode 100644 index 0000000..1bb1abb Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2f4b468ff4f8c03db0360e94806a2c1d differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2fed1e9b17caa7d73bce23088d41049c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2fed1e9b17caa7d73bce23088d41049c new file mode 100644 index 0000000..3c6aa01 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/2fed1e9b17caa7d73bce23088d41049c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/308f90838d2bd4c25490c5565453d73c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/308f90838d2bd4c25490c5565453d73c new file mode 100644 index 0000000..bf7d8c8 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/308f90838d2bd4c25490c5565453d73c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/31398c66f60c02d14a3b34eb55d61991 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/31398c66f60c02d14a3b34eb55d61991 new file mode 100644 index 0000000..6ba2e56 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/31398c66f60c02d14a3b34eb55d61991 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/32c6585474034a68e69a7ca5d142911b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/32c6585474034a68e69a7ca5d142911b new file mode 100644 index 0000000..f1f97a6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/32c6585474034a68e69a7ca5d142911b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/37ecad051f78c689efb68b6b5723a337 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/37ecad051f78c689efb68b6b5723a337 new file mode 100644 index 0000000..6a08d82 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/37ecad051f78c689efb68b6b5723a337 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3a6c07b7103ffaaabe9d8340511a4654 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3a6c07b7103ffaaabe9d8340511a4654 new file mode 100644 index 0000000..bef7553 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3a6c07b7103ffaaabe9d8340511a4654 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3f07fba7616f8e0fb58ec76f833b95a3 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3f07fba7616f8e0fb58ec76f833b95a3 new file mode 100644 index 0000000..616b8b9 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/3f07fba7616f8e0fb58ec76f833b95a3 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/401cbc8ef774cfc34f0f3b6af12b8e9b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/401cbc8ef774cfc34f0f3b6af12b8e9b new file mode 100644 index 0000000..6cdc389 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/401cbc8ef774cfc34f0f3b6af12b8e9b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4278929714718e15b79d8c406f6224f9 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4278929714718e15b79d8c406f6224f9 new file mode 100644 index 0000000..f0f71d9 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4278929714718e15b79d8c406f6224f9 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/43d28be8f428de5dd282a9802981ecfe b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/43d28be8f428de5dd282a9802981ecfe new file mode 100644 index 0000000..e94be1d Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/43d28be8f428de5dd282a9802981ecfe differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/44cfac9c6c9d7ebe3cf03b90b080d62e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/44cfac9c6c9d7ebe3cf03b90b080d62e new file mode 100644 index 0000000..e8efddc Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/44cfac9c6c9d7ebe3cf03b90b080d62e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4742affc3803237d28bf94bb821e9b14 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4742affc3803237d28bf94bb821e9b14 new file mode 100644 index 0000000..e8ff672 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4742affc3803237d28bf94bb821e9b14 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49928431a3863a91b75e6f9aeaeff2e9 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49928431a3863a91b75e6f9aeaeff2e9 new file mode 100644 index 0000000..0e43aa2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49928431a3863a91b75e6f9aeaeff2e9 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49991853610d029d050dd5b2ec523d05 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49991853610d029d050dd5b2ec523d05 new file mode 100644 index 0000000..c2b5b4f Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/49991853610d029d050dd5b2ec523d05 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4c852b07520920f7003efadbad69444f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4c852b07520920f7003efadbad69444f new file mode 100644 index 0000000..3b706c1 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/4c852b07520920f7003efadbad69444f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5166b00a6d7c3a2e8a7b2c9d1c934a7c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5166b00a6d7c3a2e8a7b2c9d1c934a7c new file mode 100644 index 0000000..3fe1f1c Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5166b00a6d7c3a2e8a7b2c9d1c934a7c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/51fc73a1d6cb58bf7f03c79d1fd136e6 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/51fc73a1d6cb58bf7f03c79d1fd136e6 new file mode 100644 index 0000000..8654c3b Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/51fc73a1d6cb58bf7f03c79d1fd136e6 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/527004721c1dca317d7efcd4dd98fe93 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/527004721c1dca317d7efcd4dd98fe93 new file mode 100644 index 0000000..2953599 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/527004721c1dca317d7efcd4dd98fe93 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/53be6b50087a772b174d0eee05922604 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/53be6b50087a772b174d0eee05922604 new file mode 100644 index 0000000..22db414 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/53be6b50087a772b174d0eee05922604 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/55cb109994ae6e62e4ecd1d9d446bda4 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/55cb109994ae6e62e4ecd1d9d446bda4 new file mode 100644 index 0000000..d5f3274 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/55cb109994ae6e62e4ecd1d9d446bda4 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56034aa01c5fb7900e04b0094976aade b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56034aa01c5fb7900e04b0094976aade new file mode 100644 index 0000000..6f0c7aa Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56034aa01c5fb7900e04b0094976aade differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56146f1e5c9d440cdba869440ae24f2a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56146f1e5c9d440cdba869440ae24f2a new file mode 100644 index 0000000..00929a6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/56146f1e5c9d440cdba869440ae24f2a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/581a35f160e898f5fcb5bccb3a4236e2 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/581a35f160e898f5fcb5bccb3a4236e2 new file mode 100644 index 0000000..80ff2c2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/581a35f160e898f5fcb5bccb3a4236e2 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5830981dedb6d51c98f1c8f7c929d4aa b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5830981dedb6d51c98f1c8f7c929d4aa new file mode 100644 index 0000000..7a5de46 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5830981dedb6d51c98f1c8f7c929d4aa differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5b0ea8f2585e7cde4bdc589939492c87 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5b0ea8f2585e7cde4bdc589939492c87 new file mode 100644 index 0000000..26c7652 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5b0ea8f2585e7cde4bdc589939492c87 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5c6c534b47af879abfd17f64f518c52e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5c6c534b47af879abfd17f64f518c52e new file mode 100644 index 0000000..151ca36 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5c6c534b47af879abfd17f64f518c52e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5d1e810be470bf9cbb156d4faa58f165 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5d1e810be470bf9cbb156d4faa58f165 new file mode 100644 index 0000000..3d051f3 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/5d1e810be470bf9cbb156d4faa58f165 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/606dfa8e54b18f38d27a3797e5bac011 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/606dfa8e54b18f38d27a3797e5bac011 new file mode 100644 index 0000000..8ed2c81 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/606dfa8e54b18f38d27a3797e5bac011 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/61bf5cb12e493b673d57916f0b95d851 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/61bf5cb12e493b673d57916f0b95d851 new file mode 100644 index 0000000..7619b70 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/61bf5cb12e493b673d57916f0b95d851 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/634aa7adedfe8dfdf72f80ee12c1facd b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/634aa7adedfe8dfdf72f80ee12c1facd new file mode 100644 index 0000000..695c2e8 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/634aa7adedfe8dfdf72f80ee12c1facd differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/641cd74b6a3abf0e8dc1823bef995c9f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/641cd74b6a3abf0e8dc1823bef995c9f new file mode 100644 index 0000000..024f0a6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/641cd74b6a3abf0e8dc1823bef995c9f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/64f78f38adc9f78edef89819140ffa48 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/64f78f38adc9f78edef89819140ffa48 new file mode 100644 index 0000000..9b0cc99 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/64f78f38adc9f78edef89819140ffa48 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/666aee51d948f03bb20c425fb13f95ef b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/666aee51d948f03bb20c425fb13f95ef new file mode 100644 index 0000000..3c1bcb6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/666aee51d948f03bb20c425fb13f95ef differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/673f3326ff7ec15e564c12ac230effc2 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/673f3326ff7ec15e564c12ac230effc2 new file mode 100644 index 0000000..e75d220 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/673f3326ff7ec15e564c12ac230effc2 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6856c2ff0c3f55fbe527a1566cc9d920 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6856c2ff0c3f55fbe527a1566cc9d920 new file mode 100644 index 0000000..79f41c5 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6856c2ff0c3f55fbe527a1566cc9d920 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/68e859a862a437747822d68fa75f358f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/68e859a862a437747822d68fa75f358f new file mode 100644 index 0000000..b375633 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/68e859a862a437747822d68fa75f358f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6a8b5da383bd85037e592f423ffb279c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6a8b5da383bd85037e592f423ffb279c new file mode 100644 index 0000000..e0fc71e Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6a8b5da383bd85037e592f423ffb279c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6acd61f74c8b60a1e93a8b7bff108ab4 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6acd61f74c8b60a1e93a8b7bff108ab4 new file mode 100644 index 0000000..e04f804 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6acd61f74c8b60a1e93a8b7bff108ab4 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6b17a62d2b11e21df93726dff8bab93c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6b17a62d2b11e21df93726dff8bab93c new file mode 100644 index 0000000..e240505 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6b17a62d2b11e21df93726dff8bab93c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6c3cd6bae94b235f19bcde72f12b1369 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6c3cd6bae94b235f19bcde72f12b1369 new file mode 100644 index 0000000..8fa9560 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6c3cd6bae94b235f19bcde72f12b1369 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6d60cd12558f7e59f204fc0f24db0998 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6d60cd12558f7e59f204fc0f24db0998 new file mode 100644 index 0000000..1d436a3 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6d60cd12558f7e59f204fc0f24db0998 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6dda64d8d08a61dae2a1a7aaae39b7e8 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6dda64d8d08a61dae2a1a7aaae39b7e8 new file mode 100644 index 0000000..43f2b75 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6dda64d8d08a61dae2a1a7aaae39b7e8 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ebab1b0870219d3b2b69314aeb16eee b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ebab1b0870219d3b2b69314aeb16eee new file mode 100644 index 0000000..174595a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ebab1b0870219d3b2b69314aeb16eee differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ee3767f7eb97a49a1430b17bfc50d70 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ee3767f7eb97a49a1430b17bfc50d70 new file mode 100644 index 0000000..86daeb9 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6ee3767f7eb97a49a1430b17bfc50d70 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6f3c25cbf56c26138729a33a78e66b1b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6f3c25cbf56c26138729a33a78e66b1b new file mode 100644 index 0000000..d19c272 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6f3c25cbf56c26138729a33a78e66b1b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6fd6710c4ee6a5891a248491b92eb48f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6fd6710c4ee6a5891a248491b92eb48f new file mode 100644 index 0000000..7b2f897 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/6fd6710c4ee6a5891a248491b92eb48f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/703b0d9c2156257959fa2e135f9cb18f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/703b0d9c2156257959fa2e135f9cb18f new file mode 100644 index 0000000..cc30564 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/703b0d9c2156257959fa2e135f9cb18f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/73c50d115d84933094fe156ae81ae256 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/73c50d115d84933094fe156ae81ae256 new file mode 100644 index 0000000..87eb83f Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/73c50d115d84933094fe156ae81ae256 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/749de887a62bfc179a2d1e6fb7de8f0e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/749de887a62bfc179a2d1e6fb7de8f0e new file mode 100644 index 0000000..aa54dc7 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/749de887a62bfc179a2d1e6fb7de8f0e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/76266554e788824d3c6fae10fcc9b67d b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/76266554e788824d3c6fae10fcc9b67d new file mode 100644 index 0000000..cd79644 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/76266554e788824d3c6fae10fcc9b67d differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/77465a6190353781b143264fec3c9ead b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/77465a6190353781b143264fec3c9ead new file mode 100644 index 0000000..db701bb Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/77465a6190353781b143264fec3c9ead differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a0fddf2d0abb691eb11d0175ef68f75 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a0fddf2d0abb691eb11d0175ef68f75 new file mode 100644 index 0000000..7e042d0 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a0fddf2d0abb691eb11d0175ef68f75 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a806d03967057fa652d7b49bfa5cf60 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a806d03967057fa652d7b49bfa5cf60 new file mode 100644 index 0000000..ee9978a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a806d03967057fa652d7b49bfa5cf60 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a8fde21c85693658dac383413e13f3c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a8fde21c85693658dac383413e13f3c new file mode 100644 index 0000000..f612302 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7a8fde21c85693658dac383413e13f3c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7bb1eaad3a9eacd332da2b2897b94089 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7bb1eaad3a9eacd332da2b2897b94089 new file mode 100644 index 0000000..e8593e2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7bb1eaad3a9eacd332da2b2897b94089 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7d43d3e546136dd901ba2304a30004a2 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7d43d3e546136dd901ba2304a30004a2 new file mode 100644 index 0000000..741ab13 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/7d43d3e546136dd901ba2304a30004a2 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8074f796575585d00e16f618f2ca1644 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8074f796575585d00e16f618f2ca1644 new file mode 100644 index 0000000..fdcd4e2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8074f796575585d00e16f618f2ca1644 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8116e29d74749a7f38270c4b0674956f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8116e29d74749a7f38270c4b0674956f new file mode 100644 index 0000000..8f16cea Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8116e29d74749a7f38270c4b0674956f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/859977da2bccc972e9ff3547e2dc0f3d b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/859977da2bccc972e9ff3547e2dc0f3d new file mode 100644 index 0000000..fcee2a6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/859977da2bccc972e9ff3547e2dc0f3d differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/88b99a7059c1a363a24424f0373a88b3 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/88b99a7059c1a363a24424f0373a88b3 new file mode 100644 index 0000000..a2c8a71 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/88b99a7059c1a363a24424f0373a88b3 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8ead235774ee079f11858464f93271e8 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8ead235774ee079f11858464f93271e8 new file mode 100644 index 0000000..8c64809 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8ead235774ee079f11858464f93271e8 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8eed4c633f943d94660017f9b027a605 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8eed4c633f943d94660017f9b027a605 new file mode 100644 index 0000000..d0c86a0 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8eed4c633f943d94660017f9b027a605 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8f72aa619e495a66ff0e1af885a93304 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8f72aa619e495a66ff0e1af885a93304 new file mode 100644 index 0000000..72152e9 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/8f72aa619e495a66ff0e1af885a93304 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/91c92a461eb2f2c2fdd498f5707d8072 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/91c92a461eb2f2c2fdd498f5707d8072 new file mode 100644 index 0000000..4b47fc3 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/91c92a461eb2f2c2fdd498f5707d8072 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/926262ed83aa9f3e1df305f26157394c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/926262ed83aa9f3e1df305f26157394c new file mode 100644 index 0000000..a493d51 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/926262ed83aa9f3e1df305f26157394c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9ab7d3dd006051c06015f1f47b2319d3 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9ab7d3dd006051c06015f1f47b2319d3 new file mode 100644 index 0000000..a3decbc Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9ab7d3dd006051c06015f1f47b2319d3 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9e9917f67c702d33b5dd996d859cd0fb b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9e9917f67c702d33b5dd996d859cd0fb new file mode 100644 index 0000000..9bc8bab Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/9e9917f67c702d33b5dd996d859cd0fb differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a0954da2ad1e6f283f27c43b416f8d12 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a0954da2ad1e6f283f27c43b416f8d12 new file mode 100644 index 0000000..7a7b759 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a0954da2ad1e6f283f27c43b416f8d12 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a3931ed78ee87992c4988fe2b0908ee1 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a3931ed78ee87992c4988fe2b0908ee1 new file mode 100644 index 0000000..cad2044 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a3931ed78ee87992c4988fe2b0908ee1 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a59b3a2470d0a43bee78f0ce7b508b4c b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a59b3a2470d0a43bee78f0ce7b508b4c new file mode 100644 index 0000000..5488d50 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a59b3a2470d0a43bee78f0ce7b508b4c differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a8eec60e23e0ae13dbcb3fdfb0865094 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a8eec60e23e0ae13dbcb3fdfb0865094 new file mode 100644 index 0000000..cee1bd6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/a8eec60e23e0ae13dbcb3fdfb0865094 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/abaa057e79858c3611d51ac8570e4785 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/abaa057e79858c3611d51ac8570e4785 new file mode 100644 index 0000000..de31bb0 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/abaa057e79858c3611d51ac8570e4785 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad683624dc549eb00bd5b749c2de2bf8 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad683624dc549eb00bd5b749c2de2bf8 new file mode 100644 index 0000000..3fe070c Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad683624dc549eb00bd5b749c2de2bf8 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad9cb02fa4c17028244af97dfbe9c4e5 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad9cb02fa4c17028244af97dfbe9c4e5 new file mode 100644 index 0000000..de9df14 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ad9cb02fa4c17028244af97dfbe9c4e5 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/af052a3d37d25db98073be99a0a34793 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/af052a3d37d25db98073be99a0a34793 new file mode 100644 index 0000000..23d1e06 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/af052a3d37d25db98073be99a0a34793 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b38cf430c0bb3e1b19af9852c4b27235 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b38cf430c0bb3e1b19af9852c4b27235 new file mode 100644 index 0000000..fdd7bad Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b38cf430c0bb3e1b19af9852c4b27235 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b5cd405c02763c1dbd5ff5c89c125491 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b5cd405c02763c1dbd5ff5c89c125491 new file mode 100644 index 0000000..8c23c94 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b5cd405c02763c1dbd5ff5c89c125491 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b6d0bb374f114af2c08077254620cc43 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b6d0bb374f114af2c08077254620cc43 new file mode 100644 index 0000000..7495eb7 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b6d0bb374f114af2c08077254620cc43 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b7b3d44982f8bc2a4183e60bf6b87258 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b7b3d44982f8bc2a4183e60bf6b87258 new file mode 100644 index 0000000..f938d98 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/b7b3d44982f8bc2a4183e60bf6b87258 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ba6d98bebcf0ab949aa706fe554206d5 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ba6d98bebcf0ab949aa706fe554206d5 new file mode 100644 index 0000000..cf78b02 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ba6d98bebcf0ab949aa706fe554206d5 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/bff200daf5db113360314e3cfedd14fa b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/bff200daf5db113360314e3cfedd14fa new file mode 100644 index 0000000..480fd2b Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/bff200daf5db113360314e3cfedd14fa differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c07a930c7f590e1fbe2a40c862adbb0a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c07a930c7f590e1fbe2a40c862adbb0a new file mode 100644 index 0000000..fbf7a7a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c07a930c7f590e1fbe2a40c862adbb0a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1476c11baa0293a34fecd619a564219 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1476c11baa0293a34fecd619a564219 new file mode 100644 index 0000000..ec3ad68 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1476c11baa0293a34fecd619a564219 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1f58edc91237365e4c6bb014f843edf b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1f58edc91237365e4c6bb014f843edf new file mode 100644 index 0000000..157033d Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c1f58edc91237365e4c6bb014f843edf differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c48c3c5b3309757d068c0f223734e48b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c48c3c5b3309757d068c0f223734e48b new file mode 100644 index 0000000..86dc8f7 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c48c3c5b3309757d068c0f223734e48b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c703761dba304fd9d1b8c6cb242a02cb b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c703761dba304fd9d1b8c6cb242a02cb new file mode 100644 index 0000000..21f6682 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c703761dba304fd9d1b8c6cb242a02cb differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c7467417e14a5e0747a3140a19c7e257 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c7467417e14a5e0747a3140a19c7e257 new file mode 100644 index 0000000..2d3650b Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/c7467417e14a5e0747a3140a19c7e257 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ca83dbdcc5c5f6ebc94962c98483261f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ca83dbdcc5c5f6ebc94962c98483261f new file mode 100644 index 0000000..398fb8c Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ca83dbdcc5c5f6ebc94962c98483261f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc67d6fa14c478fdd2504457463e8df7 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc67d6fa14c478fdd2504457463e8df7 new file mode 100644 index 0000000..0c4cf73 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc67d6fa14c478fdd2504457463e8df7 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc7a43a06af22e31f1f6e5ca0aed350f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc7a43a06af22e31f1f6e5ca0aed350f new file mode 100644 index 0000000..6379b90 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc7a43a06af22e31f1f6e5ca0aed350f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc935fc8537e18d6e58ef0a24e1dfe40 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc935fc8537e18d6e58ef0a24e1dfe40 new file mode 100644 index 0000000..374e947 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cc935fc8537e18d6e58ef0a24e1dfe40 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd3a2c50927ee5825f2cb5a6ea5bbd15 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd3a2c50927ee5825f2cb5a6ea5bbd15 new file mode 100644 index 0000000..5470b1a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd3a2c50927ee5825f2cb5a6ea5bbd15 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd85b067507383e35a0242486fbb3489 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd85b067507383e35a0242486fbb3489 new file mode 100644 index 0000000..b5e0b56 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cd85b067507383e35a0242486fbb3489 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce2af0d1d70bd16acd93c94b7fca6176 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce2af0d1d70bd16acd93c94b7fca6176 new file mode 100644 index 0000000..36c70e6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce2af0d1d70bd16acd93c94b7fca6176 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce6c3500b0075f52b88c5b72f6cbd13f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce6c3500b0075f52b88c5b72f6cbd13f new file mode 100644 index 0000000..d661438 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce6c3500b0075f52b88c5b72f6cbd13f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce842daeae9a3578a0b9f1bc27416498 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce842daeae9a3578a0b9f1bc27416498 new file mode 100644 index 0000000..bde3da3 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ce842daeae9a3578a0b9f1bc27416498 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cef1848fdb563541986f6d5b0d47dacf b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cef1848fdb563541986f6d5b0d47dacf new file mode 100644 index 0000000..da1f867 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cef1848fdb563541986f6d5b0d47dacf differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cf84eee61829c985572e141bc0d9d392 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cf84eee61829c985572e141bc0d9d392 new file mode 100644 index 0000000..1c2675a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cf84eee61829c985572e141bc0d9d392 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cfdd1d6cd7ccc1818ae60ee90d7398a7 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cfdd1d6cd7ccc1818ae60ee90d7398a7 new file mode 100644 index 0000000..fcc4953 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/cfdd1d6cd7ccc1818ae60ee90d7398a7 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d078bf86c2bde78cbda6851f50d31c91 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d078bf86c2bde78cbda6851f50d31c91 new file mode 100644 index 0000000..75a40f6 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d078bf86c2bde78cbda6851f50d31c91 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d1864d0cf8099f49d3afd5d428908248 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d1864d0cf8099f49d3afd5d428908248 new file mode 100644 index 0000000..f8c49b9 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d1864d0cf8099f49d3afd5d428908248 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d27618c0352ac57ffe9e82c8b9c45873 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d27618c0352ac57ffe9e82c8b9c45873 new file mode 100644 index 0000000..d3acd9e Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d27618c0352ac57ffe9e82c8b9c45873 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d28d2e0968922d728cf7e7f901383b7f b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d28d2e0968922d728cf7e7f901383b7f new file mode 100644 index 0000000..b459c54 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d28d2e0968922d728cf7e7f901383b7f differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d313cff8f5cc2be0323b132c2cfe5962 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d313cff8f5cc2be0323b132c2cfe5962 new file mode 100644 index 0000000..aa814fe Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d313cff8f5cc2be0323b132c2cfe5962 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d5c3d804b108380b71ead8cdebdec93a b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d5c3d804b108380b71ead8cdebdec93a new file mode 100644 index 0000000..ffda2aa Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d5c3d804b108380b71ead8cdebdec93a differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8b8a7dc53041b1a15644e6a88a0783e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8b8a7dc53041b1a15644e6a88a0783e new file mode 100644 index 0000000..4447fc1 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8b8a7dc53041b1a15644e6a88a0783e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8c67c90ca46e3d4a79ccabe7d0729dd b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8c67c90ca46e3d4a79ccabe7d0729dd new file mode 100644 index 0000000..1ac09c8 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d8c67c90ca46e3d4a79ccabe7d0729dd differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d9d9371668620faf05b20466dbacd808 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d9d9371668620faf05b20466dbacd808 new file mode 100644 index 0000000..f94799a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/d9d9371668620faf05b20466dbacd808 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/de2b2c75004b7d4fc77041c5a5ad0af6 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/de2b2c75004b7d4fc77041c5a5ad0af6 new file mode 100644 index 0000000..d808075 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/de2b2c75004b7d4fc77041c5a5ad0af6 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/df8d74540c06108b592911efe70b17ad b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/df8d74540c06108b592911efe70b17ad new file mode 100644 index 0000000..cb8fce7 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/df8d74540c06108b592911efe70b17ad differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/dfb20e0213ac853ac1c560b71ffa7106 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/dfb20e0213ac853ac1c560b71ffa7106 new file mode 100644 index 0000000..f50a472 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/dfb20e0213ac853ac1c560b71ffa7106 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e11d1ddf7f606ae0ad4dec95df2c7905 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e11d1ddf7f606ae0ad4dec95df2c7905 new file mode 100644 index 0000000..a0123ec Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e11d1ddf7f606ae0ad4dec95df2c7905 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e169745d67c4fe24cbd8549dcf4e9f23 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e169745d67c4fe24cbd8549dcf4e9f23 new file mode 100644 index 0000000..352a727 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e169745d67c4fe24cbd8549dcf4e9f23 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e56a5861d2b0cbfe1fdf6d3d367f6ca6 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e56a5861d2b0cbfe1fdf6d3d367f6ca6 new file mode 100644 index 0000000..e8139e5 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/e56a5861d2b0cbfe1fdf6d3d367f6ca6 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ea23a3e6b905bb148aec0ceb08dc7ab8 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ea23a3e6b905bb148aec0ceb08dc7ab8 new file mode 100644 index 0000000..7bb2c30 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ea23a3e6b905bb148aec0ceb08dc7ab8 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ebb9cc4ebff8b20ab307548c0cafd021 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ebb9cc4ebff8b20ab307548c0cafd021 new file mode 100644 index 0000000..f2efa08 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ebb9cc4ebff8b20ab307548c0cafd021 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ec203b869a3b2e7e6833dd6ea0006fb2 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ec203b869a3b2e7e6833dd6ea0006fb2 new file mode 100644 index 0000000..8eef52f Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ec203b869a3b2e7e6833dd6ea0006fb2 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ed94c30366d45ebc064fe1b6d5cf88da b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ed94c30366d45ebc064fe1b6d5cf88da new file mode 100644 index 0000000..584d1ec Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ed94c30366d45ebc064fe1b6d5cf88da differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ee8573e50144d33ca38d795747a0977b b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ee8573e50144d33ca38d795747a0977b new file mode 100644 index 0000000..0322cbf Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ee8573e50144d33ca38d795747a0977b differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f3dc1870f3206a965d2b4df99fdc1d18 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f3dc1870f3206a965d2b4df99fdc1d18 new file mode 100644 index 0000000..0121e16 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f3dc1870f3206a965d2b4df99fdc1d18 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f4e07a2eb1d365cd4b3b1f1dde03d005 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f4e07a2eb1d365cd4b3b1f1dde03d005 new file mode 100644 index 0000000..53e226a Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f4e07a2eb1d365cd4b3b1f1dde03d005 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f5a4a80439eaa8d546427a56e03af8e1 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f5a4a80439eaa8d546427a56e03af8e1 new file mode 100644 index 0000000..bd5501e Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f5a4a80439eaa8d546427a56e03af8e1 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f71ab0fca42b9763f2da854215af255e b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f71ab0fca42b9763f2da854215af255e new file mode 100644 index 0000000..70833d2 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f71ab0fca42b9763f2da854215af255e differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f74e3c777b8af85a8f60890b04f1d1c2 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f74e3c777b8af85a8f60890b04f1d1c2 new file mode 100644 index 0000000..d844894 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f74e3c777b8af85a8f60890b04f1d1c2 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f75bee78ea4b8628265806f776fbbdf9 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f75bee78ea4b8628265806f776fbbdf9 new file mode 100644 index 0000000..ddc4b29 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/f75bee78ea4b8628265806f776fbbdf9 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fb760e0f4ad1f4e589221ece9e6c4ae0 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fb760e0f4ad1f4e589221ece9e6c4ae0 new file mode 100644 index 0000000..339d32d Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fb760e0f4ad1f4e589221ece9e6c4ae0 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fddce8969b885758cd230cdcba991376 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fddce8969b885758cd230cdcba991376 new file mode 100644 index 0000000..f228488 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/fddce8969b885758cd230cdcba991376 differ diff --git a/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ff06c495656c30eae68c61f8c8cd9ee9 b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ff06c495656c30eae68c61f8c8cd9ee9 new file mode 100644 index 0000000..461b464 Binary files /dev/null and b/config/input/dvb/networks/12f8fd60ff2b59e8dcc93181fa871a75/muxes/ff06c495656c30eae68c61f8c8cd9ee9 differ diff --git a/config/input/dvb/networks/29dfdad53fb645458313efc075515882/config b/config/input/dvb/networks/29dfdad53fb645458313efc075515882/config new file mode 100644 index 0000000..dbe9870 --- /dev/null +++ b/config/input/dvb/networks/29dfdad53fb645458313efc075515882/config @@ -0,0 +1,15 @@ +{ + "networkname": "8VSB", + "pnetworkname": "DLIVE", + "nid": 0, + "autodiscovery": 1, + "skipinitscan": true, + "idlescan": false, + "sid_chnum": false, + "ignore_chnum": true, + "satip_source": 0, + "charset": "UTF-8", + "localtime": 540, + "wizard": false, + "class": "dvb_network_atsc_t" +} diff --git a/config/input/tvhdhomerun/adapters/66eaad6902091f1b2848037c2c2cdff6 b/config/input/tvhdhomerun/adapters/66eaad6902091f1b2848037c2c2cdff6 new file mode 100644 index 0000000..fdd3960 --- /dev/null +++ b/config/input/tvhdhomerun/adapters/66eaad6902091f1b2848037c2c2cdff6 @@ -0,0 +1,74 @@ +{ + "uuid": "66eaad6902091f1b2848037c2c2cdff6", + "frontends": { + "ATSC-T #0": { + "enabled": true, + "priority": 0, + "spriority": 0, + "displayname": "HDHomeRun ATSC-T Tuner #0 (192.168.10.91)", + "ota_epg": true, + "initscan": true, + "idlescan": false, + "free_weight": 0, + "remove_scrambled": false, + "networks": [ + "29dfdad53fb645458313efc075515882" + ], + "linked": "", + "type": "ATSC-T", + "uuid": "0aaf1a2e159aeab2a73357a2317c99e9" + }, + "ATSC-T #1": { + "enabled": true, + "priority": 0, + "spriority": 0, + "displayname": "HDHomeRun ATSC-T Tuner #1 (192.168.10.91)", + "ota_epg": true, + "initscan": true, + "idlescan": false, + "free_weight": 0, + "remove_scrambled": false, + "networks": [ + "12f8fd60ff2b59e8dcc93181fa871a75" + ], + "linked": "", + "type": "ATSC-T", + "uuid": "d2fedf378c9b57660196baab296eb66d" + }, + "ATSC-T #2": { + "enabled": true, + "priority": 0, + "spriority": 0, + "displayname": "HDHomeRun ATSC-T Tuner #2 (192.168.10.91)", + "ota_epg": true, + "initscan": true, + "idlescan": false, + "free_weight": 0, + "remove_scrambled": false, + "networks": [ + "12f8fd60ff2b59e8dcc93181fa871a75" + ], + "linked": "", + "type": "ATSC-T", + "uuid": "c5c13e998c2358710591975af23c06bc" + }, + "ATSC-T #3": { + "enabled": true, + "priority": 0, + "spriority": 0, + "displayname": "HDHomeRun ATSC-T Tuner #3 (192.168.10.91)", + "ota_epg": true, + "initscan": true, + "idlescan": false, + "free_weight": 0, + "remove_scrambled": false, + "networks": [ + "12f8fd60ff2b59e8dcc93181fa871a75" + ], + "linked": "", + "type": "ATSC-T", + "uuid": "1f1a49e746fe9f169dfe4e787e0e1a63" + } + }, + "fe_override": "ATSC-T" +} diff --git a/config/passwd/12360416060fed45b0a02aba62e96b37 b/config/passwd/12360416060fed45b0a02aba62e96b37 new file mode 100644 index 0000000..e06bc27 --- /dev/null +++ b/config/passwd/12360416060fed45b0a02aba62e96b37 @@ -0,0 +1,6 @@ +{ + "enabled": true, + "username": "myadmin", + "password2": "VFZIZWFkZW5kLUhpZGUtbWlkaW1hYw==", + "wizard": false +} diff --git a/config/passwd/28ce99723ad826d850cb97a4b9c753aa b/config/passwd/28ce99723ad826d850cb97a4b9c753aa new file mode 100644 index 0000000..129d691 --- /dev/null +++ b/config/passwd/28ce99723ad826d850cb97a4b9c753aa @@ -0,0 +1,6 @@ +{ + "enabled": true, + "username": "tvuser01", + "password2": "VFZIZWFkZW5kLUhpZGUtdXNlcjIwMjU=", + "wizard": false +} diff --git a/config/profile/1149949f16a37840cebbe1ce767996ee b/config/profile/1149949f16a37840cebbe1ce767996ee new file mode 100644 index 0000000..714aecd --- /dev/null +++ b/config/profile/1149949f16a37840cebbe1ce767996ee @@ -0,0 +1,20 @@ +{ + "rewrite_pmt": true, + "rewrite_pat": true, + "rewrite_sdt": true, + "rewrite_eit": true, + "class": "profile-mpegts", + "enabled": true, + "default": false, + "name": "pass", + "comment": "MPEG-TS Pass-thru", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/3ec76b7ae2cda284894a824f759fc237 b/config/profile/3ec76b7ae2cda284894a824f759fc237 new file mode 100644 index 0000000..077bfb6 --- /dev/null +++ b/config/profile/3ec76b7ae2cda284894a824f759fc237 @@ -0,0 +1,18 @@ +{ + "type": 0, + "index": 0, + "class": "profile-audio", + "enabled": true, + "default": false, + "name": "audio", + "comment": "Audio-only stream", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/5600844c86009915e9e11942613de601 b/config/profile/5600844c86009915e9e11942613de601 new file mode 100644 index 0000000..af87171 --- /dev/null +++ b/config/profile/5600844c86009915e9e11942613de601 @@ -0,0 +1,24 @@ +{ + "container": 1, + "resolution": 540, + "channels": 2, + "vcodec": "libx264", + "vcodec_preset": "faster", + "vbitrate": 3600, + "acodec": "aac", + "abitrate": 0, + "class": "profile-transcode", + "enabled": true, + "default": false, + "name": "webtv-h264-aac-matroska", + "comment": "WEBTV profile H264/AAC/Matroska", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/890853a3cc4c543d5df11e761bd88fe8 b/config/profile/890853a3cc4c543d5df11e761bd88fe8 new file mode 100644 index 0000000..11897ae --- /dev/null +++ b/config/profile/890853a3cc4c543d5df11e761bd88fe8 @@ -0,0 +1,24 @@ +{ + "container": 6, + "resolution": 384, + "channels": 2, + "vcodec": "libvpx", + "vcodec_preset": "faster", + "vbitrate": 3600, + "acodec": "libvorbis", + "abitrate": 0, + "class": "profile-transcode", + "enabled": true, + "default": false, + "name": "webtv-vp8-vorbis-webm", + "comment": "WEBTV profile VP8/Vorbis/WEBM", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/90e42328f0d147fbf89e5b6b04f9e369 b/config/profile/90e42328f0d147fbf89e5b6b04f9e369 new file mode 100644 index 0000000..8a845b7 --- /dev/null +++ b/config/profile/90e42328f0d147fbf89e5b6b04f9e369 @@ -0,0 +1,17 @@ +{ + "webm": false, + "class": "profile-matroska", + "enabled": true, + "default": false, + "name": "matroska", + "comment": "Matroska", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/ad7f0b6ea9c98d602e6a174f02081086 b/config/profile/ad7f0b6ea9c98d602e6a174f02081086 new file mode 100644 index 0000000..3b69ebb --- /dev/null +++ b/config/profile/ad7f0b6ea9c98d602e6a174f02081086 @@ -0,0 +1,24 @@ +{ + "container": 2, + "resolution": 384, + "channels": 2, + "vcodec": "libx264", + "vcodec_preset": "faster", + "vbitrate": 3600, + "acodec": "aac", + "abitrate": 0, + "class": "profile-transcode", + "enabled": true, + "default": false, + "name": "webtv-h264-aac-mpegts", + "comment": "WEBTV profile H264/AAC/MPEG-TS", + "priority": 3, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/profile/d7e623059b856cbc39deca4ecceb5312 b/config/profile/d7e623059b856cbc39deca4ecceb5312 new file mode 100644 index 0000000..7178d3f --- /dev/null +++ b/config/profile/d7e623059b856cbc39deca4ecceb5312 @@ -0,0 +1,16 @@ +{ + "class": "profile-htsp", + "enabled": true, + "default": true, + "name": "htsp", + "comment": "HTSP Default Stream Settings", + "priority": 1, + "fpriority": 0, + "timeout": 0, + "restart": false, + "contaccess": true, + "catimeout": 2000, + "swservice": true, + "svfilter": 0, + "shield": true +} diff --git a/config/service_mapper/config b/config/service_mapper/config new file mode 100644 index 0000000..dce1769 --- /dev/null +++ b/config/service_mapper/config @@ -0,0 +1,8 @@ +{ + "check_availability": true, + "encrypted": true, + "merge_same_name": true, + "type_tags": true, + "provider_tags": true, + "network_tags": true +} diff --git a/config/timeshift/config b/config/timeshift/config new file mode 100644 index 0000000..5d1eb2c --- /dev/null +++ b/config/timeshift/config @@ -0,0 +1,13 @@ +{ + "enabled": false, + "ondemand": false, + "path": "/recordings/", + "max_period": 60, + "unlimited_period": true, + "max_size": 10000, + "ram_size": 0, + "unlimited_size": true, + "ram_only": false, + "ram_fit": false, + "teletext": false +} diff --git a/epg2xml/Channel.json b/epg2xml/Channel.json new file mode 100644 index 0000000..58b3cbb --- /dev/null +++ b/epg2xml/Channel.json @@ -0,0 +1,1944 @@ +{ + "KT": { + "UPDATED": "2025-01-19T00:04:39.502519", + "TOTAL": 309, + "CHANNELS": [ + { "Name": "지니 TV 가이드", "No": "997", "ServiceId": "997", "Category": "홍보" }, + { "Name": "SBS", "No": "5", "ServiceId": "5", "Category": "지상파" }, + { "Name": "KBS2", "No": "7", "ServiceId": "7", "Category": "지상파" }, + { "Name": "KBS1", "No": "9", "ServiceId": "9", "Category": "지상파" }, + { "Name": "MBC", "No": "11", "ServiceId": "11", "Category": "지상파" }, + { "Name": "EBS", "No": "13", "ServiceId": "13", "Category": "지상파" }, + { "Name": "OBS", "No": "26", "ServiceId": "26", "Category": "지상파" }, + { "Name": "EBS2", "No": "95", "ServiceId": "95", "Category": "지상파" }, + { "Name": "GS MY SHOP", "No": "0", "ServiceId": "0", "Category": "홈쇼핑" }, + { "Name": "NS홈쇼핑", "No": "2", "ServiceId": "2", "Category": "홈쇼핑" }, + { "Name": "롯데홈쇼핑", "No": "4", "ServiceId": "4", "Category": "홈쇼핑" }, + { "Name": "CJ ONSTYLE", "No": "6", "ServiceId": "6", "Category": "홈쇼핑" }, + { "Name": "GS SHOP", "No": "8", "ServiceId": "8", "Category": "홈쇼핑" }, + { "Name": "현대홈쇼핑", "No": "10", "ServiceId": "10", "Category": "홈쇼핑" }, + { "Name": "kt알파쇼핑", "No": "12", "ServiceId": "12", "Category": "홈쇼핑" }, + { "Name": "홈&쇼핑", "No": "14", "ServiceId": "14", "Category": "홈쇼핑" }, + { "Name": "SK stoa", "No": "17", "ServiceId": "17", "Category": "홈쇼핑" }, + { "Name": "신세계쇼핑", "No": "20", "ServiceId": "20", "Category": "홈쇼핑" }, + { "Name": "공영쇼핑", "No": "22", "ServiceId": "22", "Category": "홈쇼핑" }, + { "Name": "현대홈쇼핑+샵", "No": "28", "ServiceId": "28", "Category": "홈쇼핑" }, + { "Name": "쇼핑엔티", "No": "30", "ServiceId": "30", "Category": "홈쇼핑" }, + { "Name": "LOTTE OneTV", "No": "32", "ServiceId": "32", "Category": "홈쇼핑" }, + { "Name": "W쇼핑", "No": "34", "ServiceId": "34", "Category": "홈쇼핑" }, + { "Name": "CJ ONSTYLE+", "No": "38", "ServiceId": "38", "Category": "홈쇼핑" }, + { "Name": "NS Shop+", "No": "42", "ServiceId": "42", "Category": "홈쇼핑" }, + { "Name": "JTBC", "No": "15", "ServiceId": "15", "Category": "종합편성" }, + { "Name": "MBN", "No": "16", "ServiceId": "16", "Category": "종합편성" }, + { "Name": "채널A", "No": "18", "ServiceId": "18", "Category": "종합편성" }, + { "Name": "TV조선", "No": "19", "ServiceId": "19", "Category": "종합편성" }, + { "Name": "ENA", "No": "1", "ServiceId": "1", "Category": "드라마/버라이어티" }, + { "Name": "tvN", "No": "3", "ServiceId": "3", "Category": "드라마/버라이어티" }, + { "Name": "tvN STORY", "No": "21", "ServiceId": "21", "Category": "드라마/버라이어티" }, + { "Name": "MBC Dramanet", "No": "31", "ServiceId": "31", "Category": "드라마/버라이어티" }, + { "Name": "KBS Drama", "No": "35", "ServiceId": "35", "Category": "드라마/버라이어티" }, + { "Name": "ENA DRAMA", "No": "36", "ServiceId": "36", "Category": "드라마/버라이어티" }, + { "Name": "SBS Plus", "No": "37", "ServiceId": "37", "Category": "드라마/버라이어티" }, + { "Name": "JTBC2", "No": "39", "ServiceId": "39", "Category": "드라마/버라이어티" }, + { "Name": "tvN DRAMA", "No": "45", "ServiceId": "45", "Category": "드라마/버라이어티" }, + { "Name": "드라마큐브", "No": "46", "ServiceId": "46", "Category": "드라마/버라이어티" }, + { "Name": "Dramax", "No": "47", "ServiceId": "47", "Category": "드라마/버라이어티" }, + { "Name": "GTV", "No": "67", "ServiceId": "67", "Category": "드라마/버라이어티" }, + { "Name": "CNTV", "No": "68", "ServiceId": "68", "Category": "드라마/버라이어티" }, + { "Name": "TVCHOSUN2", "No": "69", "ServiceId": "69", "Category": "드라마/버라이어티" }, + { "Name": "FUN TV", "No": "71", "ServiceId": "71", "Category": "드라마/버라이어티" }, + { "Name": "하이라이트TV", "No": "74", "ServiceId": "74", "Category": "드라마/버라이어티" }, + { "Name": "JTBC4", "No": "75", "ServiceId": "75", "Category": "드라마/버라이어티" }, + { "Name": "Lifetime", "No": "78", "ServiceId": "78", "Category": "드라마/버라이어티" }, + { "Name": "Edge TV", "No": "79", "ServiceId": "79", "Category": "드라마/버라이어티" }, + { "Name": "MBC ON", "No": "80", "ServiceId": "80", "Category": "드라마/버라이어티" }, + { "Name": "동아TV", "No": "82", "ServiceId": "82", "Category": "드라마/버라이어티" }, + { "Name": "KBS Story", "No": "83", "ServiceId": "83", "Category": "드라마/버라이어티" }, + { "Name": "ONCE", "No": "88", "ServiceId": "88", "Category": "드라마/버라이어티" }, + { "Name": "디원", "No": "89", "ServiceId": "89", "Category": "드라마/버라이어티" }, + { "Name": "WeLike", "No": "146", "ServiceId": "146", "Category": "드라마/버라이어티" }, + { "Name": "E채널", "No": "998", "ServiceId": "998", "Category": "드라마/버라이어티" }, + { "Name": "Mnet", "No": "27", "ServiceId": "27", "Category": "오락/음악" }, + { "Name": "MBC Every1", "No": "29", "ServiceId": "29", "Category": "오락/음악" }, + { "Name": "tvN SHOW", "No": "40", "ServiceId": "40", "Category": "오락/음악" }, + { "Name": "KBS Joy", "No": "41", "ServiceId": "41", "Category": "오락/음악" }, + { "Name": "SBS funE", "No": "43", "ServiceId": "43", "Category": "오락/음악" }, + { "Name": "채널S", "No": "44", "ServiceId": "44", "Category": "오락/음악" }, + { "Name": "더라이프", "No": "50", "ServiceId": "50", "Category": "오락/음악" }, + { "Name": "SBS LIFE", "No": "66", "ServiceId": "66", "Category": "오락/음악" }, + { "Name": "ENA STORY", "No": "72", "ServiceId": "72", "Category": "오락/음악" }, + { "Name": "HQ+", "No": "77", "ServiceId": "77", "Category": "오락/음악" }, + { "Name": "스마일티브이플러스", "No": "84", "ServiceId": "84", "Category": "오락/음악" }, + { "Name": "코미디TV", "No": "85", "ServiceId": "85", "Category": "오락/음악" }, + { "Name": "K STAR", "No": "87", "ServiceId": "87", "Category": "오락/음악" }, + { "Name": "아이넷TV", "No": "92", "ServiceId": "92", "Category": "오락/음악" }, + { "Name": "채널이엠", "No": "93", "ServiceId": "93", "Category": "오락/음악" }, + { "Name": "CMCTV", "No": "94", "ServiceId": "94", "Category": "오락/음악" }, + { "Name": "엔터TV", "No": "96", "ServiceId": "96", "Category": "오락/음악" }, + { "Name": "채널A 플러스", "No": "98", "ServiceId": "98", "Category": "오락/음악" }, + { "Name": "MBN Plus", "No": "99", "ServiceId": "99", "Category": "오락/음악" }, + { "Name": "CH.WIDE", "No": "130", "ServiceId": "130", "Category": "오락/음악" }, + { "Name": "SPOTV K", "No": "135", "ServiceId": "135", "Category": "오락/음악" }, + { "Name": "SBS M", "No": "136", "ServiceId": "136", "Category": "오락/음악" }, + { "Name": "MBC M", "No": "137", "ServiceId": "137", "Category": "오락/음악" }, + { "Name": "뉴트로TV", "No": "138", "ServiceId": "138", "Category": "오락/음악" }, + { "Name": "ORFEO", "No": "139", "ServiceId": "139", "Category": "오락/음악" }, + { "Name": "한경arteTV", "No": "140", "ServiceId": "140", "Category": "오락/음악" }, + { "Name": "History", "No": "141", "ServiceId": "141", "Category": "오락/음악" }, + { "Name": "GMTV", "No": "142", "ServiceId": "142", "Category": "오락/음악" }, + { "Name": "가요TV", "No": "143", "ServiceId": "143", "Category": "오락/음악" }, + { "Name": "실버아이TV", "No": "144", "ServiceId": "144", "Category": "오락/음악" }, + { "Name": "이벤트TV", "No": "145", "ServiceId": "145", "Category": "오락/음악" }, + { "Name": "붐TV", "No": "147", "ServiceId": "147", "Category": "오락/음악" }, + { "Name": "아이넷라이프", "No": "148", "ServiceId": "148", "Category": "오락/음악" }, + { "Name": "TVCHOSUN3", "No": "168", "ServiceId": "168", "Category": "오락/음악" }, + { "Name": "Discovery Channel", "No": "291", "ServiceId": "291", "Category": "오락/음악" }, + { "Name": "ENA PLAY", "No": "999", "ServiceId": "999", "Category": "오락/음악" }, + { "Name": "OCN", "No": "33", "ServiceId": "33", "Category": "영화/시리즈" }, + { "Name": "OCN Movies", "No": "48", "ServiceId": "48", "Category": "영화/시리즈" }, + { "Name": "시네마천국", "No": "49", "ServiceId": "49", "Category": "영화/시리즈" }, + { "Name": "AsiaN", "No": "73", "ServiceId": "73", "Category": "영화/시리즈" }, + { "Name": "OCN Movies2", "No": "76", "ServiceId": "76", "Category": "영화/시리즈" }, + { "Name": "AsiaM", "No": "90", "ServiceId": "90", "Category": "영화/시리즈" }, + { "Name": "월드 클래식 무비", "No": "91", "ServiceId": "91", "Category": "영화/시리즈" }, + { "Name": "채널차이나", "No": "102", "ServiceId": "102", "Category": "영화/시리즈" }, + { "Name": "mplex", "No": "103", "ServiceId": "103", "Category": "영화/시리즈" }, + { "Name": "THE MOVIE", "No": "104", "ServiceId": "104", "Category": "영화/시리즈" }, + { "Name": "인디필름", "No": "105", "ServiceId": "105", "Category": "영화/시리즈" }, + { "Name": "스크린", "No": "106", "ServiceId": "106", "Category": "영화/시리즈" }, + { "Name": "채널나우", "No": "107", "ServiceId": "107", "Category": "영화/시리즈" }, + { "Name": "채널 J", "No": "108", "ServiceId": "108", "Category": "영화/시리즈" }, + { "Name": "에이플드라마", "No": "109", "ServiceId": "109", "Category": "영화/시리즈" }, + { "Name": "중화TV", "No": "110", "ServiceId": "110", "Category": "영화/시리즈" }, + { "Name": "CH.U", "No": "112", "ServiceId": "112", "Category": "영화/시리즈" }, + { "Name": "AXN", "No": "113", "ServiceId": "113", "Category": "영화/시리즈" }, + { "Name": "텔레노벨라", "No": "114", "ServiceId": "114", "Category": "영화/시리즈" }, + { "Name": "Focus Prime", "No": "115", "ServiceId": "115", "Category": "영화/시리즈" }, + { "Name": "채널W", "No": "116", "ServiceId": "116", "Category": "영화/시리즈" }, + { "Name": "TVasiaPlus", "No": "117", "ServiceId": "117", "Category": "영화/시리즈" }, + { "Name": "씨네프", "No": "118", "ServiceId": "118", "Category": "영화/시리즈" }, + { "Name": "HITS", "No": "290", "ServiceId": "290", "Category": "영화/시리즈" }, + { "Name": "SPOTV", "No": "51", "ServiceId": "51", "Category": "스포츠" }, + { "Name": "SPOTV2", "No": "52", "ServiceId": "52", "Category": "스포츠" }, + { "Name": "IB SPORTS", "No": "53", "ServiceId": "53", "Category": "스포츠" }, + { "Name": "tvN SPORTS", "No": "54", "ServiceId": "54", "Category": "스포츠" }, + { "Name": "GOLF&PBA", "No": "55", "ServiceId": "55", "Category": "스포츠" }, + { "Name": "JTBC Golf", "No": "56", "ServiceId": "56", "Category": "스포츠" }, + { "Name": "SBSGOLF", "No": "57", "ServiceId": "57", "Category": "스포츠" }, + { "Name": "SBS Sports", "No": "58", "ServiceId": "58", "Category": "스포츠" }, + { "Name": "KBS N Sports", "No": "59", "ServiceId": "59", "Category": "스포츠" }, + { "Name": "MBC SPORTS+", "No": "60", "ServiceId": "60", "Category": "스포츠" }, + { "Name": "JTBC GOLF&SPORTS", "No": "61", "ServiceId": "61", "Category": "스포츠" }, + { "Name": "SBS Golf2", "No": "62", "ServiceId": "62", "Category": "스포츠" }, + { "Name": "SPOTV Golf & Health", "No": "63", "ServiceId": "63", "Category": "스포츠" }, + { "Name": "SkySports", "No": "70", "ServiceId": "70", "Category": "스포츠" }, + { "Name": "Eurosport", "No": "119", "ServiceId": "119", "Category": "스포츠" }, + { "Name": "OLIFE", "No": "86", "ServiceId": "86", "Category": "취미/레저" }, + { "Name": "FTV", "No": "120", "ServiceId": "120", "Category": "취미/레저" }, + { "Name": "한국낚시방송", "No": "121", "ServiceId": "121", "Category": "취미/레저" }, + { "Name": "바둑TV", "No": "122", "ServiceId": "122", "Category": "취미/레저" }, + { "Name": "K바둑", "No": "123", "ServiceId": "123", "Category": "취미/레저" }, + { "Name": "브레인TV", "No": "126", "ServiceId": "126", "Category": "취미/레저" }, + { "Name": "빌리어즈티비", "No": "127", "ServiceId": "127", "Category": "취미/레저" }, + { "Name": "마운틴TV", "No": "128", "ServiceId": "128", "Category": "취미/레저" }, + { "Name": "SOOP", "No": "129", "ServiceId": "129", "Category": "취미/레저" }, + { "Name": "STN", "No": "131", "ServiceId": "131", "Category": "취미/레저" }, + { "Name": "생활체육TV", "No": "132", "ServiceId": "132", "Category": "취미/레저" }, + { "Name": "스크린골프존", "No": "133", "ServiceId": "133", "Category": "취미/레저" }, + { "Name": "STORYTV", "No": "134", "ServiceId": "134", "Category": "취미/레저" }, + { "Name": "MAXPORTS", "No": "167", "ServiceId": "167", "Category": "취미/레저" }, + { "Name": "ONT", "No": "170", "ServiceId": "170", "Category": "취미/레저" }, + { "Name": "BALL TV", "No": "173", "ServiceId": "173", "Category": "취미/레저" }, + { "Name": "폴라리스TV", "No": "226", "ServiceId": "226", "Category": "취미/레저" }, + { "Name": "채널 키즈랜드", "No": "960", "ServiceId": "960", "Category": "애니/유아" }, + { "Name": "ZooMoo", "No": "961", "ServiceId": "961", "Category": "애니/유아" }, + { "Name": "Dream Works Channel", "No": "962", "ServiceId": "962", "Category": "애니/유아" }, + { "Name": "뽀요TV", "No": "976", "ServiceId": "976", "Category": "애니/유아" }, + { "Name": "Cbeebies", "No": "977", "ServiceId": "977", "Category": "애니/유아" }, + { "Name": "브라보키즈", "No": "980", "ServiceId": "980", "Category": "애니/유아" }, + { "Name": "EBS KIDS", "No": "983", "ServiceId": "983", "Category": "애니/유아" }, + { "Name": "KBS Kids", "No": "984", "ServiceId": "984", "Category": "애니/유아" }, + { "Name": "캐리TV", "No": "985", "ServiceId": "985", "Category": "애니/유아" }, + { "Name": "JEI 재능TV", "No": "986", "ServiceId": "986", "Category": "애니/유아" }, + { "Name": "대교 어린이TV", "No": "987", "ServiceId": "987", "Category": "애니/유아" }, + { "Name": "핑크퐁채널", "No": "988", "ServiceId": "988", "Category": "애니/유아" }, + { "Name": "카투니토", "No": "989", "ServiceId": "989", "Category": "애니/유아" }, + { "Name": "애니플러스", "No": "990", "ServiceId": "990", "Category": "애니/유아" }, + { "Name": "카툰네트워크", "No": "991", "ServiceId": "991", "Category": "애니/유아" }, + { "Name": "애니박스", "No": "993", "ServiceId": "993", "Category": "애니/유아" }, + { "Name": "애니원", "No": "994", "ServiceId": "994", "Category": "애니/유아" }, + { "Name": "ANIMAX", "No": "995", "ServiceId": "995", "Category": "애니/유아" }, + { "Name": "Tooniverse", "No": "996", "ServiceId": "996", "Category": "애니/유아" }, + { "Name": "다빈치러닝", "No": "969", "ServiceId": "969", "Category": "교육" }, + { "Name": "edu TV", "No": "970", "ServiceId": "970", "Category": "교육" }, + { "Name": "EBS PLUS2", "No": "971", "ServiceId": "971", "Category": "교육" }, + { "Name": "EBS PLUS1", "No": "972", "ServiceId": "972", "Category": "교육" }, + { "Name": "EBS English", "No": "973", "ServiceId": "973", "Category": "교육" }, + { "Name": "플레이런TV", "No": "974", "ServiceId": "974", "Category": "교육" }, + { "Name": "JEI EnglishTV", "No": "975", "ServiceId": "975", "Category": "교육" }, + { "Name": "NBS한국농업방송", "No": "100", "ServiceId": "100", "Category": "다큐/교양" }, + { "Name": "엑스원", "No": "156", "ServiceId": "156", "Category": "다큐/교양" }, + { "Name": "KBS LIFE", "No": "158", "ServiceId": "158", "Category": "다큐/교양" }, + { "Name": "리얼TV", "No": "161", "ServiceId": "161", "Category": "다큐/교양" }, + { "Name": "Now제주TV", "No": "162", "ServiceId": "162", "Category": "다큐/교양" }, + { "Name": "9colors", "No": "163", "ServiceId": "163", "Category": "다큐/교양" }, + { "Name": "MBC NET", "No": "164", "ServiceId": "164", "Category": "다큐/교양" }, + { "Name": "YTN 사이언스", "No": "175", "ServiceId": "175", "Category": "다큐/교양" }, + { "Name": "채널뷰", "No": "176", "ServiceId": "176", "Category": "다큐/교양" }, + { "Name": "BBC Earth", "No": "292", "ServiceId": "292", "Category": "다큐/교양" }, + { "Name": "HGTV", "No": "293", "ServiceId": "293", "Category": "다큐/교양" }, + { "Name": "Animal Planet", "No": "294", "ServiceId": "294", "Category": "다큐/교양" }, + { "Name": "CCTV4", "No": "295", "ServiceId": "295", "Category": "다큐/교양" }, + { "Name": "Discovery Science", "No": "296", "ServiceId": "296", "Category": "다큐/교양" }, + { "Name": "연합뉴스TV", "No": "23", "ServiceId": "23", "Category": "뉴스/경제" }, + { "Name": "YTN", "No": "24", "ServiceId": "24", "Category": "뉴스/경제" }, + { "Name": "SBS Biz", "No": "25", "ServiceId": "25", "Category": "뉴스/경제" }, + { "Name": "한국경제TV", "No": "180", "ServiceId": "180", "Category": "뉴스/경제" }, + { "Name": "MTN 머니투데이방송", "No": "181", "ServiceId": "181", "Category": "뉴스/경제" }, + { "Name": "매일경제TV", "No": "182", "ServiceId": "182", "Category": "뉴스/경제" }, + { "Name": "이데일리TV", "No": "183", "ServiceId": "183", "Category": "뉴스/경제" }, + { "Name": "서울경제TV", "No": "184", "ServiceId": "184", "Category": "뉴스/경제" }, + { "Name": "토마토증권통", "No": "185", "ServiceId": "185", "Category": "뉴스/경제" }, + { "Name": "팍스경제TV", "No": "186", "ServiceId": "186", "Category": "뉴스/경제" }, + { "Name": "연합뉴스경제TV", "No": "187", "ServiceId": "187", "Category": "뉴스/경제" }, + { "Name": "토마토집통", "No": "188", "ServiceId": "188", "Category": "뉴스/경제" }, + { "Name": "NHK WP", "No": "297", "ServiceId": "297", "Category": "뉴스/경제" }, + { "Name": "ABC Australia", "No": "298", "ServiceId": "298", "Category": "뉴스/경제" }, + { "Name": "CNN International", "No": "299", "ServiceId": "299", "Category": "뉴스/경제" }, + { "Name": "BBC News", "No": "300", "ServiceId": "300", "Category": "뉴스/경제" }, + { "Name": "Euro News", "No": "301", "ServiceId": "301", "Category": "뉴스/경제" }, + { "Name": "CGTN", "No": "302", "ServiceId": "302", "Category": "뉴스/경제" }, + { "Name": "Fox News", "No": "303", "ServiceId": "303", "Category": "뉴스/경제" }, + { "Name": "Bloomberg", "No": "304", "ServiceId": "304", "Category": "뉴스/경제" }, + { "Name": "CNBC", "No": "305", "ServiceId": "305", "Category": "뉴스/경제" }, + { "Name": "TV5MONDE", "No": "306", "ServiceId": "306", "Category": "뉴스/경제" }, + { "Name": "DW-TV Asia+", "No": "307", "ServiceId": "307", "Category": "뉴스/경제" }, + { "Name": "KTV", "No": "64", "ServiceId": "64", "Category": "공공/공익/정보" }, + { "Name": "국회방송", "No": "65", "ServiceId": "65", "Category": "공공/공익/정보" }, + { "Name": "HD OBS W", "No": "81", "ServiceId": "81", "Category": "공공/공익/정보" }, + { "Name": "다문화티브이", "No": "97", "ServiceId": "97", "Category": "공공/공익/정보" }, + { "Name": "KFN", "No": "101", "ServiceId": "101", "Category": "공공/공익/정보" }, + { "Name": "컬쳐플러스", "No": "149", "ServiceId": "149", "Category": "공공/공익/정보" }, + { "Name": "MGTV", "No": "157", "ServiceId": "157", "Category": "공공/공익/정보" }, + { "Name": "YTN2", "No": "159", "ServiceId": "159", "Category": "공공/공익/정보" }, + { "Name": "OUN", "No": "160", "ServiceId": "160", "Category": "공공/공익/정보" }, + { "Name": "채널i", "No": "165", "ServiceId": "165", "Category": "공공/공익/정보" }, + { "Name": "아리랑 TV", "No": "166", "ServiceId": "166", "Category": "공공/공익/정보" }, + { "Name": "쿠키건강TV", "No": "169", "ServiceId": "169", "Category": "공공/공익/정보" }, + { "Name": "메디컬TV", "No": "171", "ServiceId": "171", "Category": "공공/공익/정보" }, + { "Name": "연합뉴스TV JOB", "No": "172", "ServiceId": "172", "Category": "공공/공익/정보" }, + { "Name": "대교 뉴이프Plus", "No": "179", "ServiceId": "179", "Category": "공공/공익/정보" }, + { "Name": "복지TV", "No": "199", "ServiceId": "199", "Category": "공공/공익/정보" }, + { "Name": "법률방송", "No": "213", "ServiceId": "213", "Category": "공공/공익/정보" }, + { "Name": "TBS TV", "No": "214", "ServiceId": "214", "Category": "공공/공익/정보" }, + { "Name": "헬스메디tv", "No": "215", "ServiceId": "215", "Category": "공공/공익/정보" }, + { "Name": "육아방송", "No": "217", "ServiceId": "217", "Category": "공공/공익/정보" }, + { "Name": "K-NET TV", "No": "221", "ServiceId": "221", "Category": "공공/공익/정보" }, + { "Name": "시니어TV", "No": "222", "ServiceId": "222", "Category": "공공/공익/정보" }, + { "Name": "소상공인시장tv", "No": "223", "ServiceId": "223", "Category": "공공/공익/정보" }, + { "Name": "지방자치TV", "No": "224", "ServiceId": "224", "Category": "공공/공익/정보" }, + { "Name": "디마티비", "No": "225", "ServiceId": "225", "Category": "공공/공익/정보" }, + { "Name": "가톨릭평화방송", "No": "231", "ServiceId": "231", "Category": "종교" }, + { "Name": "BBS불교방송", "No": "232", "ServiceId": "232", "Category": "종교" }, + { "Name": "BTN불교TV", "No": "233", "ServiceId": "233", "Category": "종교" }, + { "Name": "Good TV", "No": "234", "ServiceId": "234", "Category": "종교" }, + { "Name": "C Channel", "No": "235", "ServiceId": "235", "Category": "종교" }, + { "Name": "CTS기독교TV", "No": "236", "ServiceId": "236", "Category": "종교" }, + { "Name": "CGN", "No": "237", "ServiceId": "237", "Category": "종교" }, + { "Name": "CBS", "No": "238", "ServiceId": "238", "Category": "종교" }, + { "Name": "원음방송", "No": "239", "ServiceId": "239", "Category": "종교" }, + { "Name": "YCN유림방송", "No": "240", "ServiceId": "240", "Category": "종교" }, + { "Name": "STB상생방송", "No": "241", "ServiceId": "241", "Category": "종교" }, + { "Name": "유교TV방송", "No": "242", "ServiceId": "242", "Category": "종교" }, + { "Name": "국악방송", "No": "251", "ServiceId": "251", "Category": "오픈채널" }, + { "Name": "토마토클래식", "No": "253", "ServiceId": "253", "Category": "오픈채널" }, + { "Name": "WeeTV", "No": "254", "ServiceId": "254", "Category": "오픈채널" }, + { "Name": "슬로우TV", "No": "256", "ServiceId": "256", "Category": "오픈채널" }, + { "Name": "채널칭", "No": "258", "ServiceId": "258", "Category": "오픈채널" }, + { "Name": "채널s 플러스", "No": "259", "ServiceId": "259", "Category": "오픈채널" }, + { "Name": "ONN 닥터TV", "No": "262", "ServiceId": "262", "Category": "오픈채널" }, + { "Name": "DealSite경제TV", "No": "263", "ServiceId": "263", "Category": "오픈채널" }, + { "Name": "디스토리", "No": "264", "ServiceId": "264", "Category": "오픈채널" }, + { "Name": "E-LIKE", "No": "265", "ServiceId": "265", "Category": "오픈채널" }, + { "Name": "더라이프2", "No": "266", "ServiceId": "266", "Category": "오픈채널" }, + { "Name": "RNA", "No": "267", "ServiceId": "267", "Category": "오픈채널" }, + { "Name": "채널액션", "No": "268", "ServiceId": "268", "Category": "오픈채널" }, + { "Name": "리빙TV", "No": "276", "ServiceId": "276", "Category": "오픈채널" }, + { "Name": "사회안전방송", "No": "278", "ServiceId": "278", "Category": "오픈채널" }, + { "Name": "NBNTV", "No": "285", "ServiceId": "285", "Category": "오픈채널" }, + { "Name": "SPOTV PRIME 유료", "No": "190", "ServiceId": "190", "Category": "유료" }, + { "Name": "SPOTV PRIME2 유료", "No": "191", "ServiceId": "191", "Category": "유료" }, + { "Name": "SPOTV PRIME+ 유료", "No": "192", "ServiceId": "192", "Category": "유료" }, + { "Name": "캐치온1 유료", "No": "193", "ServiceId": "193", "Category": "유료" }, + { "Name": "캐치온2 유료", "No": "194", "ServiceId": "194", "Category": "유료" }, + { "Name": "해피독티비 유료", "No": "201", "ServiceId": "201", "Category": "유료" }, + { "Name": "Dog TV 유료", "No": "202", "ServiceId": "202", "Category": "유료" }, + { "Name": "viki 유료", "No": "204", "ServiceId": "204", "Category": "유료" }, + { "Name": "미드나잇 유료", "No": "205", "ServiceId": "205", "Category": "유료" }, + { "Name": "Playboy TV 유료", "No": "206", "ServiceId": "206", "Category": "유료" }, + { "Name": "허니TV 유료", "No": "207", "ServiceId": "207", "Category": "유료" }, + { "Name": "핑크하우스TV 유료", "No": "208", "ServiceId": "208", "Category": "유료" }, + { "Name": "DesireTV 유료", "No": "209", "ServiceId": "209", "Category": "유료" }, + { "Name": "비너스 유료", "No": "210", "ServiceId": "210", "Category": "유료" }, + { "Name": "키즈톡톡플러스 유료", "No": "966", "ServiceId": "966", "Category": "유료" }, + { "Name": "Dog & Mom", "No": "609", "ServiceId": "609", "Category": "오디오" }, + { "Name": "최신인기가요", "No": "610", "ServiceId": "610", "Category": "오디오" }, + { "Name": "최신 발라드 가요", "No": "611", "ServiceId": "611", "Category": "오디오" }, + { "Name": "최신 가요 댄스", "No": "612", "ServiceId": "612", "Category": "오디오" }, + { "Name": "최신 가요 차트 HOT 150", "No": "613", "ServiceId": "613", "Category": "오디오" }, + { "Name": "트로트가요무대", "No": "614", "ServiceId": "614", "Category": "오디오" }, + { "Name": "최신 트로트 히트", "No": "615", "ServiceId": "615", "Category": "오디오" }, + { "Name": "응답하라 8090", "No": "616", "ServiceId": "616", "Category": "오디오" }, + { "Name": "인기성인가요 HOT 300", "No": "617", "ServiceId": "617", "Category": "오디오" }, + { "Name": "최신 히트 팝스", "No": "618", "ServiceId": "618", "Category": "오디오" }, + { "Name": "한국인이 사랑한 팝송", "No": "619", "ServiceId": "619", "Category": "오디오" }, + { "Name": "다문화 음악 1", "No": "620", "ServiceId": "620", "Category": "오디오" }, + { "Name": "다문화 음악 2", "No": "621", "ServiceId": "621", "Category": "오디오" }, + { "Name": "Black Music", "No": "622", "ServiceId": "622", "Category": "오디오" }, + { "Name": "Rock Festival", "No": "623", "ServiceId": "623", "Category": "오디오" }, + { "Name": "All That Jazz", "No": "624", "ServiceId": "624", "Category": "오디오" }, + { "Name": "홈클래식", "No": "625", "ServiceId": "625", "Category": "오디오" }, + { "Name": "클래식 산책", "No": "626", "ServiceId": "626", "Category": "오디오" }, + { "Name": "당신을 위한 발라드", "No": "627", "ServiceId": "627", "Category": "오디오" }, + { "Name": "2000년대 인기가요", "No": "628", "ServiceId": "628", "Category": "오디오" }, + { "Name": "TV속 화제음악", "No": "629", "ServiceId": "629", "Category": "오디오" }, + { "Name": "OST 천국", "No": "630", "ServiceId": "630", "Category": "오디오" }, + { "Name": "엄마랑 EQ동요", "No": "631", "ServiceId": "631", "Category": "오디오" }, + { "Name": "Rainy Day", "No": "632", "ServiceId": "632", "Category": "오디오" }, + { "Name": "한국 발라드 명곡770", "No": "633", "ServiceId": "633", "Category": "오디오" }, + { "Name": "최신인기댄스&힙합", "No": "634", "ServiceId": "634", "Category": "오디오" }, + { "Name": "러브 발라드 명곡 550", "No": "635", "ServiceId": "635", "Category": "오디오" }, + { "Name": "스무드재즈", "No": "636", "ServiceId": "636", "Category": "오디오" }, + { "Name": "클럽뮤직", "No": "637", "ServiceId": "637", "Category": "오디오" }, + { "Name": "파워스테이션", "No": "638", "ServiceId": "638", "Category": "오디오" }, + { "Name": "Cool & Hot", "No": "639", "ServiceId": "639", "Category": "오디오" } + ] + }, + "LG": { + "UPDATED": "2025-01-19T00:04:39.502749", + "TOTAL": 0, + "CHANNELS": [] + }, + "SK": { + "UPDATED": "2025-01-19T00:04:39.502758", + "TOTAL": 271, + "CHANNELS": [ + { "Name": "SBS", "No": "5", "ServiceId": "14", "Category": "지상파/종편" }, + { "Name": "KBS2", "No": "7", "ServiceId": "12", "Category": "지상파/종편" }, + { "Name": "KBS1", "No": "9", "ServiceId": "11", "Category": "지상파/종편" }, + { "Name": "MBC", "No": "11", "ServiceId": "13", "Category": "지상파/종편" }, + { "Name": "EBS", "No": "13", "ServiceId": "15", "Category": "지상파/종편" }, + { "Name": "JTBC", "No": "15", "ServiceId": "240", "Category": "지상파/종편" }, + { "Name": "MBN", "No": "16", "ServiceId": "241", "Category": "지상파/종편" }, + { "Name": "채널A", "No": "18", "ServiceId": "242", "Category": "지상파/종편" }, + { "Name": "TV CHOSUN", "No": "20", "ServiceId": "243", "Category": "지상파/종편" }, + { "Name": "OBS", "No": "25", "ServiceId": "70", "Category": "지상파/종편" }, + { "Name": "CJ ONSTYLE+", "No": "2", "ServiceId": "340", "Category": "홈쇼핑" }, + { "Name": "홈&쇼핑", "No": "4", "ServiceId": "327", "Category": "홈쇼핑" }, + { "Name": "CJ ONSTYLE", "No": "6", "ServiceId": "324", "Category": "홈쇼핑" }, + { "Name": "현대홈쇼핑", "No": "8", "ServiceId": "321", "Category": "홈쇼핑" }, + { "Name": "롯데홈쇼핑", "No": "10", "ServiceId": "323", "Category": "홈쇼핑" }, + { "Name": "GS SHOP", "No": "12", "ServiceId": "320", "Category": "홈쇼핑" }, + { "Name": "NS홈쇼핑", "No": "14", "ServiceId": "322", "Category": "홈쇼핑" }, + { "Name": "SK stoa", "No": "17", "ServiceId": "345", "Category": "홈쇼핑" }, + { "Name": "신세계쇼핑", "No": "19", "ServiceId": "339", "Category": "홈쇼핑" }, + { "Name": "공영쇼핑", "No": "21", "ServiceId": "332", "Category": "홈쇼핑" }, + { "Name": "kt알파 쇼핑", "No": "22", "ServiceId": "333", "Category": "홈쇼핑" }, + { "Name": "쇼핑엔티", "No": "29", "ServiceId": "336", "Category": "홈쇼핑" }, + { "Name": "GS MY SHOP", "No": "31", "ServiceId": "343", "Category": "홈쇼핑" }, + { "Name": "롯데OneTV", "No": "33", "ServiceId": "344", "Category": "홈쇼핑" }, + { "Name": "NS Shop+", "No": "35", "ServiceId": "341", "Category": "홈쇼핑" }, + { "Name": "W쇼핑", "No": "37", "ServiceId": "342", "Category": "홈쇼핑" }, + { "Name": "현대홈쇼핑+Shop", "No": "39", "ServiceId": "337", "Category": "홈쇼핑" }, + { "Name": "CATCH ON 1", "No": "70", "ServiceId": "181", "Category": "영화" }, + { "Name": "CATCH ON 2", "No": "71", "ServiceId": "182", "Category": "영화" }, + { "Name": "OCN Movies", "No": "72", "ServiceId": "187", "Category": "영화" }, + { "Name": "OCN", "No": "73", "ServiceId": "178", "Category": "영화" }, + { "Name": "OCN Movies2", "No": "74", "ServiceId": "179", "Category": "영화" }, + { "Name": "Screen", "No": "75", "ServiceId": "192", "Category": "영화" }, + { "Name": "Mplex", "No": "77", "ServiceId": "171", "Category": "영화" }, + { "Name": "Cinef", "No": "78", "ServiceId": "193", "Category": "영화" }, + { "Name": "The Movie", "No": "79", "ServiceId": "198", "Category": "영화" }, + { "Name": "AsiaM", "No": "80", "ServiceId": "174", "Category": "영화" }, + { "Name": "인디필름", "No": "81", "ServiceId": "441", "Category": "영화" }, + { "Name": "World Classic Movie", "No": "82", "ServiceId": "202", "Category": "영화" }, + { "Name": "Celestial Movies", "No": "83", "ServiceId": "877", "Category": "영화" }, + { "Name": "시네마천국", "No": "84", "ServiceId": "455", "Category": "영화" }, + { "Name": "채널액션", "No": "85", "ServiceId": "458", "Category": "영화" }, + { "Name": "ENA", "No": "24", "ServiceId": "871", "Category": "드라마/시리즈" }, + { "Name": "SBS 플러스", "No": "28", "ServiceId": "901", "Category": "드라마/시리즈" }, + { "Name": "KBS 드라마", "No": "30", "ServiceId": "902", "Category": "드라마/시리즈" }, + { "Name": "MBC 드라마", "No": "32", "ServiceId": "900", "Category": "드라마/시리즈" }, + { "Name": "Dramax", "No": "38", "ServiceId": "904", "Category": "드라마/시리즈" }, + { "Name": "MBC ON", "No": "41", "ServiceId": "531", "Category": "드라마/시리즈" }, + { "Name": "Highlight TV", "No": "42", "ServiceId": "885", "Category": "드라마/시리즈" }, + { "Name": "CNTV", "No": "43", "ServiceId": "175", "Category": "드라마/시리즈" }, + { "Name": "EDGE TV", "No": "44", "ServiceId": "128", "Category": "드라마/시리즈" }, + { "Name": "디원", "No": "45", "ServiceId": "170", "Category": "드라마/시리즈" }, + { "Name": "ENA DRAMA", "No": "46", "ServiceId": "875", "Category": "드라마/시리즈" }, + { "Name": "HQ+", "No": "47", "ServiceId": "908", "Category": "드라마/시리즈" }, + { "Name": "드라마큐브", "No": "49", "ServiceId": "903", "Category": "드라마/시리즈" }, + { "Name": "tvN DRAMA", "No": "56", "ServiceId": "527", "Category": "드라마/시리즈" }, + { "Name": "ONCE", "No": "57", "ServiceId": "889", "Category": "드라마/시리즈" }, + { "Name": "KBS Story", "No": "58", "ServiceId": "425", "Category": "드라마/시리즈" }, + { "Name": "AXN", "No": "62", "ServiceId": "195", "Category": "드라마/시리즈" }, + { "Name": "Asia N", "No": "63", "ServiceId": "177", "Category": "드라마/시리즈" }, + { "Name": "UXN", "No": "120", "ServiceId": "888", "Category": "드라마/시리즈" }, + { "Name": "UHD Dream TV", "No": "121", "ServiceId": "879", "Category": "드라마/시리즈" }, + { "Name": "Asia UHD", "No": "122", "ServiceId": "878", "Category": "드라마/시리즈" }, + { "Name": "UMAX", "No": "123", "ServiceId": "69", "Category": "드라마/시리즈" }, + { "Name": "Ch.NOW", "No": "130", "ServiceId": "189", "Category": "드라마/시리즈" }, + { "Name": "채널J", "No": "132", "ServiceId": "197", "Category": "드라마/시리즈" }, + { "Name": "중화TV", "No": "133", "ServiceId": "186", "Category": "드라마/시리즈" }, + { "Name": "채널 Ching", "No": "134", "ServiceId": "907", "Category": "드라마/시리즈" }, + { "Name": "CH U", "No": "136", "ServiceId": "176", "Category": "드라마/시리즈" }, + { "Name": "채널차이나", "No": "137", "ServiceId": "520", "Category": "드라마/시리즈" }, + { "Name": "텔레노벨라", "No": "138", "ServiceId": "173", "Category": "드라마/시리즈" }, + { "Name": "채널W", "No": "139", "ServiceId": "172", "Category": "드라마/시리즈" }, + { "Name": "ApleDrama", "No": "140", "ServiceId": "203", "Category": "드라마/시리즈" }, + { "Name": "WeLike", "No": "141", "ServiceId": "204", "Category": "드라마/시리즈" }, + { "Name": "MBC Every1", "No": "990", "ServiceId": "881", "Category": "드라마/시리즈" }, + { "Name": "바둑TV", "No": "220", "ServiceId": "528", "Category": "스포츠/레저" }, + { "Name": "K 바둑", "No": "221", "ServiceId": "253", "Category": "스포츠/레저" }, + { "Name": "브레인TV", "No": "222", "ServiceId": "279", "Category": "스포츠/레저" }, + { "Name": "FTV", "No": "223", "ServiceId": "530", "Category": "스포츠/레저" }, + { "Name": "한국낚시방송", "No": "224", "ServiceId": "273", "Category": "스포츠/레저" }, + { "Name": "ONT", "No": "225", "ServiceId": "256", "Category": "스포츠/레저" }, + { "Name": "OLIFE", "No": "226", "ServiceId": "283", "Category": "스포츠/레저" }, + { "Name": "Mountain TV", "No": "227", "ServiceId": "251", "Category": "스포츠/레저" }, + { "Name": "폴라리스TV", "No": "229", "ServiceId": "252", "Category": "스포츠/레저" }, + { "Name": "리빙TV", "No": "230", "ServiceId": "263", "Category": "스포츠/레저" }, + { "Name": "Billiards TV", "No": "231", "ServiceId": "122", "Category": "스포츠/레저" }, + { "Name": "생활체육TV", "No": "233", "ServiceId": "264", "Category": "스포츠/레저" }, + { "Name": "SOOP", "No": "234", "ServiceId": "265", "Category": "스포츠/레저" }, + { "Name": "i play", "No": "235", "ServiceId": "277", "Category": "스포츠/레저" }, + { "Name": "OGN", "No": "236", "ServiceId": "124", "Category": "스포츠/레저" }, + { "Name": "Eurosport", "No": "967", "ServiceId": "120", "Category": "스포츠/레저" }, + { "Name": "SMTsports", "No": "968", "ServiceId": "457", "Category": "스포츠/레저" }, + { "Name": "MAXPORTS", "No": "969", "ServiceId": "266", "Category": "스포츠/레저" }, + { "Name": "BallTV", "No": "970", "ServiceId": "452", "Category": "스포츠/레저" }, + { "Name": "스크린골프존", "No": "971", "ServiceId": "138", "Category": "스포츠/레저" }, + { "Name": "SBS Golf2", "No": "972", "ServiceId": "383", "Category": "스포츠/레저" }, + { "Name": "GOLF & PBA", "No": "973", "ServiceId": "135", "Category": "스포츠/레저" }, + { "Name": "SPOTV Golf&Health", "No": "974", "ServiceId": "134", "Category": "스포츠/레저" }, + { "Name": "JTBC Golf&Sports", "No": "975", "ServiceId": "436", "Category": "스포츠/레저" }, + { "Name": "JTBC GOLF", "No": "976", "ServiceId": "127", "Category": "스포츠/레저" }, + { "Name": "SBS GOLF", "No": "977", "ServiceId": "133", "Category": "스포츠/레저" }, + { "Name": "tvN SPORTS", "No": "978", "ServiceId": "426", "Category": "스포츠/레저" }, + { "Name": "IB Sports", "No": "979", "ServiceId": "123", "Category": "스포츠/레저" }, + { "Name": "sky Sports", "No": "980", "ServiceId": "282", "Category": "스포츠/레저" }, + { "Name": "SPOTV2", "No": "982", "ServiceId": "424", "Category": "스포츠/레저" }, + { "Name": "MBC Sports+", "No": "983", "ServiceId": "131", "Category": "스포츠/레저" }, + { "Name": "SBS Sports", "No": "984", "ServiceId": "130", "Category": "스포츠/레저" }, + { "Name": "KBSN 스포츠", "No": "985", "ServiceId": "132", "Category": "스포츠/레저" }, + { "Name": "SPOTV", "No": "986", "ServiceId": "125", "Category": "스포츠/레저" }, + { "Name": "SPOTV Prime+", "No": "987", "ServiceId": "139", "Category": "스포츠/레저" }, + { "Name": "SPOTV Prime2", "No": "988", "ServiceId": "137", "Category": "스포츠/레저" }, + { "Name": "SPOTV Prime", "No": "989", "ServiceId": "136", "Category": "스포츠/레저" }, + { "Name": "채널S", "No": "1", "ServiceId": "868", "Category": "연예/오락" }, + { "Name": "tvN", "No": "3", "ServiceId": "872", "Category": "연예/오락" }, + { "Name": "M.net", "No": "27", "ServiceId": "873", "Category": "연예/오락" }, + { "Name": "tvN STORY", "No": "34", "ServiceId": "431", "Category": "연예/오락" }, + { "Name": "E채널", "No": "36", "ServiceId": "886", "Category": "연예/오락" }, + { "Name": "JTBC2", "No": "48", "ServiceId": "874", "Category": "연예/오락" }, + { "Name": "SBS fun E", "No": "51", "ServiceId": "882", "Category": "연예/오락" }, + { "Name": "채널S 플러스", "No": "52", "ServiceId": "869", "Category": "연예/오락" }, + { "Name": "KBS joy", "No": "53", "ServiceId": "880", "Category": "연예/오락" }, + { "Name": "SBS LIFE", "No": "54", "ServiceId": "896", "Category": "연예/오락" }, + { "Name": "JTBC4", "No": "55", "ServiceId": "259", "Category": "연예/오락" }, + { "Name": "E LIKE", "No": "61", "ServiceId": "274", "Category": "연예/오락" }, + { "Name": "더라이프", "No": "67", "ServiceId": "898", "Category": "연예/오락" }, + { "Name": "K star", "No": "68", "ServiceId": "884", "Category": "연예/오락" }, + { "Name": "FUN TV", "No": "69", "ServiceId": "887", "Category": "연예/오락" }, + { "Name": "tvN SHOW", "No": "90", "ServiceId": "185", "Category": "연예/오락" }, + { "Name": "TVCHOSUN2", "No": "91", "ServiceId": "631", "Category": "연예/오락" }, + { "Name": "코미디TV", "No": "92", "ServiceId": "906", "Category": "연예/오락" }, + { "Name": "chEM", "No": "93", "ServiceId": "267", "Category": "연예/오락" }, + { "Name": "CMCTV", "No": "94", "ServiceId": "876", "Category": "연예/오락" }, + { "Name": "더라이프2", "No": "96", "ServiceId": "866", "Category": "연예/오락" }, + { "Name": "MBN플러스", "No": "98", "ServiceId": "892", "Category": "연예/오락" }, + { "Name": "MX", "No": "99", "ServiceId": "194", "Category": "연예/오락" }, + { "Name": "엔터TV", "No": "100", "ServiceId": "258", "Category": "연예/오락" }, + { "Name": "채널A플러스", "No": "101", "ServiceId": "891", "Category": "연예/오락" }, + { "Name": "CH.WIDE", "No": "102", "ServiceId": "180", "Category": "연예/오락" }, + { "Name": "ENA PLAY", "No": "103", "ServiceId": "893", "Category": "연예/오락" }, + { "Name": "Smile TV Plus", "No": "104", "ServiceId": "894", "Category": "연예/오락" }, + { "Name": "MBC M", "No": "105", "ServiceId": "250", "Category": "연예/오락" }, + { "Name": "붐TV", "No": "107", "ServiceId": "249", "Category": "연예/오락" }, + { "Name": "TVCHOSUN3", "No": "109", "ServiceId": "867", "Category": "연예/오락" }, + { "Name": "채널 뷰", "No": "111", "ServiceId": "276", "Category": "연예/오락" }, + { "Name": "Ch.ever", "No": "112", "ServiceId": "280", "Category": "연예/오락" }, + { "Name": "Gtv", "No": "113", "ServiceId": "284", "Category": "연예/오락" }, + { "Name": "동아TV", "No": "114", "ServiceId": "272", "Category": "연예/오락" }, + { "Name": "ENA STORY", "No": "115", "ServiceId": "288", "Category": "연예/오락" }, + { "Name": "StoryTV", "No": "116", "ServiceId": "289", "Category": "연예/오락" }, + { "Name": "ETN연예TV", "No": "117", "ServiceId": "897", "Category": "연예/오락" }, + { "Name": "Discovery Channel", "No": "118", "ServiceId": "437", "Category": "연예/오락" }, + { "Name": "다문화TV", "No": "119", "ServiceId": "448", "Category": "연예/오락" }, + { "Name": "SBS F!L UHD", "No": "124", "ServiceId": "909", "Category": "연예/오락" }, + { "Name": "InUltra", "No": "125", "ServiceId": "890", "Category": "연예/오락" }, + { "Name": "컬쳐플러스", "No": "126", "ServiceId": "456", "Category": "연예/오락" }, + { "Name": "슬로우 TV", "No": "127", "ServiceId": "453", "Category": "연예/오락" }, + { "Name": "SBS M", "No": "200", "ServiceId": "883", "Category": "연예/오락" }, + { "Name": "GMTV", "No": "201", "ServiceId": "671", "Category": "연예/오락" }, + { "Name": "아이넷 TV", "No": "202", "ServiceId": "261", "Category": "연예/오락" }, + { "Name": "이벤트TV", "No": "203", "ServiceId": "262", "Category": "연예/오락" }, + { "Name": "아이넷라이프", "No": "204", "ServiceId": "269", "Category": "연예/오락" }, + { "Name": "i show", "No": "205", "ServiceId": "905", "Category": "연예/오락" }, + { "Name": "한경arteTV", "No": "206", "ServiceId": "421", "Category": "연예/오락" }, + { "Name": "ORFEO", "No": "207", "ServiceId": "787", "Category": "연예/오락" }, + { "Name": "Stingray CMusic", "No": "209", "ServiceId": "672", "Category": "연예/오락" }, + { "Name": "Tooniverse", "No": "170", "ServiceId": "376", "Category": "애니/키즈" }, + { "Name": "카툰네트워크", "No": "171", "ServiceId": "384", "Category": "애니/키즈" }, + { "Name": "Animax", "No": "172", "ServiceId": "371", "Category": "애니/키즈" }, + { "Name": "애니원", "No": "173", "ServiceId": "379", "Category": "애니/키즈" }, + { "Name": "카투니토", "No": "174", "ServiceId": "433", "Category": "애니/키즈" }, + { "Name": "애니플러스", "No": "176", "ServiceId": "377", "Category": "애니/키즈" }, + { "Name": "애니박스", "No": "177", "ServiceId": "191", "Category": "애니/키즈" }, + { "Name": "KBS KIDS", "No": "178", "ServiceId": "382", "Category": "애니/키즈" }, + { "Name": "DreamWorks", "No": "179", "ServiceId": "790", "Category": "애니/키즈" }, + { "Name": "키즈톡톡 플러스", "No": "182", "ServiceId": "385", "Category": "애니/키즈" }, + { "Name": "뽀요TV", "No": "183", "ServiceId": "387", "Category": "애니/키즈" }, + { "Name": "캐리TV", "No": "184", "ServiceId": "388", "Category": "애니/키즈" }, + { "Name": "어린이TV", "No": "185", "ServiceId": "374", "Category": "애니/키즈" }, + { "Name": "JEI 재능TV", "No": "186", "ServiceId": "378", "Category": "애니/키즈" }, + { "Name": "bravo kids", "No": "187", "ServiceId": "370", "Category": "애니/키즈" }, + { "Name": "EBS KIDS", "No": "188", "ServiceId": "372", "Category": "애니/키즈" }, + { "Name": "YTN", "No": "0", "ServiceId": "570", "Category": "뉴스/경제" }, + { "Name": "연합뉴스TV", "No": "23", "ServiceId": "571", "Category": "뉴스/경제" }, + { "Name": "SBS Biz", "No": "26", "ServiceId": "625", "Category": "뉴스/경제" }, + { "Name": "토마토증권통", "No": "150", "ServiceId": "620", "Category": "뉴스/경제" }, + { "Name": "한국경제TV", "No": "151", "ServiceId": "626", "Category": "뉴스/경제" }, + { "Name": "MTN머니투데이방송", "No": "152", "ServiceId": "627", "Category": "뉴스/경제" }, + { "Name": "매일경제TV", "No": "153", "ServiceId": "628", "Category": "뉴스/경제" }, + { "Name": "팍스경제TV", "No": "154", "ServiceId": "622", "Category": "뉴스/경제" }, + { "Name": "이데일리TV", "No": "155", "ServiceId": "630", "Category": "뉴스/경제" }, + { "Name": "서울경제TV", "No": "156", "ServiceId": "629", "Category": "뉴스/경제" }, + { "Name": "NBNTV", "No": "157", "ServiceId": "623", "Category": "뉴스/경제" }, + { "Name": "토마토집통", "No": "158", "ServiceId": "621", "Category": "뉴스/경제" }, + { "Name": "CNN International", "No": "160", "ServiceId": "774", "Category": "뉴스/경제" }, + { "Name": "BBC News", "No": "162", "ServiceId": "778", "Category": "뉴스/경제" }, + { "Name": "CGTN", "No": "163", "ServiceId": "771", "Category": "뉴스/경제" }, + { "Name": "Bloomberg TV", "No": "164", "ServiceId": "775", "Category": "뉴스/경제" }, + { "Name": "Channel News Asia", "No": "165", "ServiceId": "777", "Category": "뉴스/경제" }, + { "Name": "FOX News Channel", "No": "166", "ServiceId": "791", "Category": "뉴스/경제" }, + { "Name": "연합뉴스경제 TV", "No": "167", "ServiceId": "451", "Category": "뉴스/경제" }, + { "Name": "DealSite경제TV", "No": "168", "ServiceId": "454", "Category": "뉴스/경제" }, + { "Name": "FRANCE 24", "No": "279", "ServiceId": "793", "Category": "뉴스/경제" }, + { "Name": "B tv Today2", "No": "50", "ServiceId": "325", "Category": "라이프/정보" }, + { "Name": "DOG TV", "No": "88", "ServiceId": "255", "Category": "라이프/정보" }, + { "Name": "라이프타임", "No": "97", "ServiceId": "271", "Category": "라이프/정보" }, + { "Name": "대교 뉴이프 Plus", "No": "189", "ServiceId": "373", "Category": "라이프/정보" }, + { "Name": "YTN 사이언스", "No": "240", "ServiceId": "422", "Category": "라이프/정보" }, + { "Name": "엑스원", "No": "241", "ServiceId": "257", "Category": "라이프/정보" }, + { "Name": "YTN2", "No": "243", "ServiceId": "632", "Category": "라이프/정보" }, + { "Name": "TBSTV", "No": "244", "ServiceId": "420", "Category": "라이프/정보" }, + { "Name": "리얼TV", "No": "245", "ServiceId": "440", "Category": "라이프/정보" }, + { "Name": "OBSW", "No": "246", "ServiceId": "423", "Category": "라이프/정보" }, + { "Name": "MBC NET", "No": "247", "ServiceId": "281", "Category": "라이프/정보" }, + { "Name": "9colors", "No": "248", "ServiceId": "285", "Category": "라이프/정보" }, + { "Name": "Now제주TV", "No": "249", "ServiceId": "290", "Category": "라이프/정보" }, + { "Name": "육아방송", "No": "250", "ServiceId": "287", "Category": "라이프/정보" }, + { "Name": "실버아이TV", "No": "251", "ServiceId": "286", "Category": "라이프/정보" }, + { "Name": "시니어TV", "No": "252", "ServiceId": "291", "Category": "라이프/정보" }, + { "Name": "KBS LIFE", "No": "253", "ServiceId": "292", "Category": "라이프/정보" }, + { "Name": "헬스메디TV", "No": "254", "ServiceId": "432", "Category": "라이프/정보" }, + { "Name": "쿠키건강TV", "No": "255", "ServiceId": "434", "Category": "라이프/정보" }, + { "Name": "아리랑TV", "No": "256", "ServiceId": "427", "Category": "라이프/정보" }, + { "Name": "소상공인시장tv", "No": "257", "ServiceId": "428", "Category": "라이프/정보" }, + { "Name": "연합뉴스TV JOB", "No": "258", "ServiceId": "429", "Category": "라이프/정보" }, + { "Name": "채널i", "No": "259", "ServiceId": "439", "Category": "라이프/정보" }, + { "Name": "MGTV", "No": "260", "ServiceId": "442", "Category": "라이프/정보" }, + { "Name": "NBS 한국농업방송", "No": "261", "ServiceId": "443", "Category": "라이프/정보" }, + { "Name": "법률방송", "No": "262", "ServiceId": "438", "Category": "라이프/정보" }, + { "Name": "KFN", "No": "263", "ServiceId": "445", "Category": "라이프/정보" }, + { "Name": "DIMATV", "No": "264", "ServiceId": "446", "Category": "라이프/정보" }, + { "Name": "지방자치TV", "No": "265", "ServiceId": "447", "Category": "라이프/정보" }, + { "Name": "EYTV", "No": "267", "ServiceId": "449", "Category": "라이프/정보" }, + { "Name": "국악방송", "No": "268", "ServiceId": "450", "Category": "라이프/정보" }, + { "Name": "뉴트로 TV", "No": "269", "ServiceId": "459", "Category": "라이프/정보" }, + { "Name": "ONN 닥터TV", "No": "270", "ServiceId": "460", "Category": "라이프/정보" }, + { "Name": "History", "No": "271", "ServiceId": "260", "Category": "라이프/정보" }, + { "Name": "BBC earth", "No": "272", "ServiceId": "472", "Category": "라이프/정보" }, + { "Name": "Smithsonian Channel", "No": "273", "ServiceId": "792", "Category": "라이프/정보" }, + { "Name": "CCTV4", "No": "274", "ServiceId": "779", "Category": "라이프/정보" }, + { "Name": "NHK World Premium", "No": "275", "ServiceId": "772", "Category": "라이프/정보" }, + { "Name": "TV5Monde", "No": "276", "ServiceId": "780", "Category": "라이프/정보" }, + { "Name": "NHK WORLD JAPAN", "No": "277", "ServiceId": "783", "Category": "라이프/정보" }, + { "Name": "B tv Today", "No": "999", "ServiceId": "326", "Category": "라이프/정보" }, + { "Name": "KTV", "No": "64", "ServiceId": "222", "Category": "교육/공공/종교" }, + { "Name": "국회방송", "No": "65", "ServiceId": "221", "Category": "교육/공공/종교" }, + { "Name": "EBS2", "No": "95", "ServiceId": "63", "Category": "교육/공공/종교" }, + { "Name": "JEI 재능 English", "No": "192", "ServiceId": "825", "Category": "교육/공공/종교" }, + { "Name": "플레이런TV", "No": "193", "ServiceId": "824", "Category": "교육/공공/종교" }, + { "Name": "EBS English", "No": "194", "ServiceId": "822", "Category": "교육/공공/종교" }, + { "Name": "EBS +1", "No": "195", "ServiceId": "820", "Category": "교육/공공/종교" }, + { "Name": "EBS +2", "No": "196", "ServiceId": "821", "Category": "교육/공공/종교" }, + { "Name": "edu TV", "No": "197", "ServiceId": "823", "Category": "교육/공공/종교" }, + { "Name": "복지TV", "No": "199", "ServiceId": "223", "Category": "교육/공공/종교" }, + { "Name": "OUN", "No": "266", "ServiceId": "220", "Category": "교육/공공/종교" }, + { "Name": "CBS", "No": "290", "ServiceId": "727", "Category": "교육/공공/종교" }, + { "Name": "CTS", "No": "291", "ServiceId": "725", "Category": "교육/공공/종교" }, + { "Name": "CGN", "No": "292", "ServiceId": "723", "Category": "교육/공공/종교" }, + { "Name": "GOOD TV", "No": "293", "ServiceId": "720", "Category": "교육/공공/종교" }, + { "Name": "C채널", "No": "294", "ServiceId": "721", "Category": "교육/공공/종교" }, + { "Name": "BTN 불교TV", "No": "295", "ServiceId": "726", "Category": "교육/공공/종교" }, + { "Name": "BBS 불교방송", "No": "296", "ServiceId": "722", "Category": "교육/공공/종교" }, + { "Name": "가톨릭평화방송", "No": "297", "ServiceId": "724", "Category": "교육/공공/종교" }, + { "Name": "STB 상생방송", "No": "298", "ServiceId": "278", "Category": "교육/공공/종교" }, + { "Name": "원음방송", "No": "299", "ServiceId": "270", "Category": "교육/공공/종교" }, + { "Name": "플레이보이TV", "No": "311", "ServiceId": "183", "Category": "성인(유료)" }, + { "Name": "미드나잇", "No": "312", "ServiceId": "184", "Category": "성인(유료)" }, + { "Name": "Viki", "No": "313", "ServiceId": "188", "Category": "성인(유료)" }, + { "Name": "허니TV", "No": "314", "ServiceId": "196", "Category": "성인(유료)" }, + { "Name": "핑크하우스", "No": "315", "ServiceId": "190", "Category": "성인(유료)" }, + { "Name": "디자이어TV", "No": "316", "ServiceId": "200", "Category": "성인(유료)" }, + { "Name": "비너스TV", "No": "317", "ServiceId": "201", "Category": "성인(유료)" } + ] + }, + "DAUM": { + "UPDATED": "2025-01-19T00:04:39.502943", + "TOTAL": 392, + "CHANNELS": [ + { "Name": "KBS1", "ServiceId": "지상파 KBS1", "Category": "지상파" }, + { "Name": "KBS2", "ServiceId": "지상파 KBS2", "Category": "지상파" }, + { "Name": "강릉 KBS1", "ServiceId": "지상파 강릉 KBS1", "Category": "지상파" }, + { "Name": "경인 KBS1", "ServiceId": "지상파 경인 KBS1", "Category": "지상파" }, + { "Name": "광주 KBS1", "ServiceId": "지상파 광주 KBS1", "Category": "지상파" }, + { "Name": "대구 KBS1", "ServiceId": "지상파 대구 KBS1", "Category": "지상파" }, + { "Name": "대전 KBS1", "ServiceId": "지상파 대전 KBS1", "Category": "지상파" }, + { "Name": "목포 KBS1", "ServiceId": "지상파 목포 KBS1", "Category": "지상파" }, + { "Name": "부산 KBS1", "ServiceId": "지상파 부산 KBS1", "Category": "지상파" }, + { "Name": "순천 KBS1", "ServiceId": "지상파 순천 KBS1", "Category": "지상파" }, + { "Name": "안동 KBS1", "ServiceId": "지상파 안동 KBS1", "Category": "지상파" }, + { "Name": "울산 KBS1", "ServiceId": "지상파 울산 KBS1", "Category": "지상파" }, + { "Name": "원주 KBS1", "ServiceId": "지상파 원주 KBS1", "Category": "지상파" }, + { "Name": "전주 KBS1", "ServiceId": "지상파 전주 KBS1", "Category": "지상파" }, + { "Name": "제주 KBS1", "ServiceId": "지상파 제주 KBS1", "Category": "지상파" }, + { "Name": "진주 KBS1", "ServiceId": "지상파 진주 KBS1", "Category": "지상파" }, + { "Name": "창원 KBS1", "ServiceId": "지상파 창원 KBS1", "Category": "지상파" }, + { "Name": "청주 KBS1", "ServiceId": "지상파 청주 KBS1", "Category": "지상파" }, + { "Name": "춘천 KBS1", "ServiceId": "지상파 춘천 KBS1", "Category": "지상파" }, + { "Name": "충주 KBS1", "ServiceId": "지상파 충주 KBS1", "Category": "지상파" }, + { "Name": "포항 KBS1", "ServiceId": "지상파 포항 KBS1", "Category": "지상파" }, + { "Name": "MBC", "ServiceId": "지상파 MBC", "Category": "지상파" }, + { "Name": "MBC 충북", "ServiceId": "지상파 MBC 충북", "Category": "지상파" }, + { "Name": "MBC강원영동", "ServiceId": "지상파 MBC강원영동", "Category": "지상파" }, + { "Name": "MBC경남", "ServiceId": "지상파 MBC경남", "Category": "지상파" }, + { "Name": "광주 MBC", "ServiceId": "지상파 광주 MBC", "Category": "지상파" }, + { "Name": "대구 MBC", "ServiceId": "지상파 대구 MBC", "Category": "지상파" }, + { "Name": "대전 MBC", "ServiceId": "지상파 대전 MBC", "Category": "지상파" }, + { "Name": "목포 MBC", "ServiceId": "지상파 목포 MBC", "Category": "지상파" }, + { "Name": "부산 MBC", "ServiceId": "지상파 부산 MBC", "Category": "지상파" }, + { "Name": "삼척 MBC", "ServiceId": "지상파 삼척 MBC", "Category": "지상파" }, + { "Name": "안동 MBC", "ServiceId": "지상파 안동 MBC", "Category": "지상파" }, + { "Name": "여수 MBC", "ServiceId": "지상파 여수 MBC", "Category": "지상파" }, + { "Name": "울산 MBC", "ServiceId": "지상파 울산 MBC", "Category": "지상파" }, + { "Name": "원주 MBC", "ServiceId": "지상파 원주 MBC", "Category": "지상파" }, + { "Name": "전주 MBC", "ServiceId": "지상파 전주 MBC", "Category": "지상파" }, + { "Name": "제주 MBC", "ServiceId": "지상파 제주 MBC", "Category": "지상파" }, + { "Name": "춘천 MBC", "ServiceId": "지상파 춘천 MBC", "Category": "지상파" }, + { "Name": "포항 MBC", "ServiceId": "지상파 포항 MBC", "Category": "지상파" }, + { "Name": "SBS", "ServiceId": "지상파 SBS", "Category": "지상파" }, + { "Name": "CJB 청주방송", "ServiceId": "지상파 CJB 청주방송", "Category": "지상파" }, + { "Name": "G1 방송", "ServiceId": "지상파 G1 방송", "Category": "지상파" }, + { "Name": "JIBS 제주방송", "ServiceId": "지상파 JIBS 제주방송", "Category": "지상파" }, + { "Name": "JTV 전주방송", "ServiceId": "지상파 JTV 전주방송", "Category": "지상파" }, + { "Name": "KBC 광주방송", "ServiceId": "지상파 KBC 광주방송", "Category": "지상파" }, + { "Name": "KNN 부산경남방송", "ServiceId": "지상파 KNN 부산경남방송", "Category": "지상파" }, + { "Name": "TBC 대구방송", "ServiceId": "지상파 TBC 대구방송", "Category": "지상파" }, + { "Name": "TJB 대전방송", "ServiceId": "지상파 TJB 대전방송", "Category": "지상파" }, + { "Name": "UBC 울산방송", "ServiceId": "지상파 UBC 울산방송", "Category": "지상파" }, + { "Name": "EBS1", "ServiceId": "지상파 EBS1", "Category": "지상파" }, + { "Name": "EBS2", "ServiceId": "지상파 EBS2", "Category": "지상파" }, + { "Name": "OBS 경인TV", "ServiceId": "지상파 OBS 경인TV", "Category": "지상파" }, + { "Name": "JTBC", "ServiceId": "종합편성 JTBC", "Category": "종합편성" }, + { "Name": "MBN", "ServiceId": "종합편성 MBN", "Category": "종합편성" }, + { "Name": "TV 조선", "ServiceId": "종합편성 TV 조선", "Category": "종합편성" }, + { "Name": "채널A", "ServiceId": "종합편성 채널A", "Category": "종합편성" }, + { "Name": "CBeebies", "ServiceId": "케이블 CBeebies", "Category": "케이블" }, + { "Name": "EBS KIDS", "ServiceId": "케이블 EBS KIDS", "Category": "케이블" }, + { "Name": "JEI 재능TV", "ServiceId": "케이블 JEI 재능TV", "Category": "케이블" }, + { "Name": "KBS KIDS", "ServiceId": "케이블 KBS KIDS", "Category": "케이블" }, + { "Name": "대교어린이TV", "ServiceId": "케이블 대교어린이TV", "Category": "케이블" }, + { "Name": "브라보키즈", "ServiceId": "케이블 브라보키즈", "Category": "케이블" }, + { "Name": "뽀요TV", "ServiceId": "케이블 뽀요TV", "Category": "케이블" }, + { "Name": "캐리TV", "ServiceId": "케이블 캐리TV", "Category": "케이블" }, + { "Name": "GOLF & PBA", "ServiceId": "케이블 GOLF & PBA", "Category": "케이블" }, + { "Name": "MBC스포츠 플러스", "ServiceId": "케이블 MBC스포츠 플러스", "Category": "케이블" }, + { "Name": "SBS스포츠", "ServiceId": "케이블 SBS스포츠", "Category": "케이블" }, + { "Name": "KBS N 스포츠", "ServiceId": "케이블 KBS N 스포츠", "Category": "케이블" }, + { "Name": "JTBC GOLF", "ServiceId": "케이블 JTBC GOLF", "Category": "케이블" }, + { "Name": "JTBC GOLF & SPORTS", "ServiceId": "케이블 JTBC GOLF & SPORTS", "Category": "케이블" }, + { "Name": "MAXPORTS", "ServiceId": "케이블 MAXPORTS", "Category": "케이블" }, + { "Name": "OGN", "ServiceId": "케이블 OGN", "Category": "케이블" }, + { "Name": "SBS Golf2", "ServiceId": "케이블 SBS Golf2", "Category": "케이블" }, + { "Name": "SBS골프", "ServiceId": "케이블 SBS골프", "Category": "케이블" }, + { "Name": "SPOTV Golf & Health", "ServiceId": "케이블 SPOTV Golf & Health", "Category": "케이블" }, + { "Name": "SPOTV PRIME", "ServiceId": "케이블 SPOTV PRIME", "Category": "케이블" }, + { "Name": "SPOTV PRIME+", "ServiceId": "케이블 SPOTV PRIME+", "Category": "케이블" }, + { "Name": "SPOTV2", "ServiceId": "케이블 SPOTV2", "Category": "케이블" }, + { "Name": "Sky Sports", "ServiceId": "케이블 Sky Sports", "Category": "케이블" }, + { "Name": "tvN SPORTS", "ServiceId": "케이블 tvN SPORTS", "Category": "케이블" }, + { "Name": "볼링플러스", "ServiceId": "케이블 볼링플러스", "Category": "케이블" }, + { "Name": "엔터TV", "ServiceId": "케이블 엔터TV", "Category": "케이블" }, + { "Name": "JTBC4", "ServiceId": "케이블 JTBC4", "Category": "케이블" }, + { "Name": "tvN STORY", "ServiceId": "케이블 tvN STORY", "Category": "케이블" }, + { "Name": "E LIKE", "ServiceId": "케이블 E LIKE", "Category": "케이블" }, + { "Name": "ENA STORY", "ServiceId": "케이블 ENA STORY", "Category": "케이블" }, + { "Name": "GTV", "ServiceId": "케이블 GTV", "Category": "케이블" }, + { "Name": "KBS Story", "ServiceId": "케이블 KBS Story", "Category": "케이블" }, + { "Name": "라이프타임", "ServiceId": "케이블 라이프타임", "Category": "케이블" }, + { "Name": "YTN", "ServiceId": "케이블 YTN", "Category": "케이블" }, + { "Name": "SBS Biz", "ServiceId": "케이블 SBS Biz", "Category": "케이블" }, + { "Name": "연합뉴스 TV", "ServiceId": "케이블 연합뉴스 TV", "Category": "케이블" }, + { "Name": "MTN 머니투데이방송", "ServiceId": "케이블 MTN 머니투데이방송", "Category": "케이블" }, + { "Name": "아리랑 TV", "ServiceId": "케이블 아리랑 TV", "Category": "케이블" }, + { "Name": "Channel News Asia", "ServiceId": "케이블 Channel News Asia", "Category": "케이블" }, + { "Name": "매일경제TV", "ServiceId": "케이블 매일경제TV", "Category": "케이블" }, + { "Name": "서울경제TV", "ServiceId": "케이블 서울경제TV", "Category": "케이블" }, + { "Name": "소상공인시장tv", "ServiceId": "케이블 소상공인시장tv", "Category": "케이블" }, + { "Name": "쿠키건강TV", "ServiceId": "케이블 쿠키건강TV", "Category": "케이블" }, + { "Name": "토마토증권통", "ServiceId": "케이블 토마토증권통", "Category": "케이블" }, + { "Name": "토마토집통", "ServiceId": "케이블 토마토집통", "Category": "케이블" }, + { "Name": "팍스경제TV", "ServiceId": "케이블 팍스경제TV", "Category": "케이블" }, + { "Name": "한국경제TV", "ServiceId": "케이블 한국경제TV", "Category": "케이블" }, + { "Name": "투니버스", "ServiceId": "케이블 투니버스", "Category": "케이블" }, + { "Name": "AniBox", "ServiceId": "케이블 AniBox", "Category": "케이블" }, + { "Name": "카툰네트워크", "ServiceId": "케이블 카툰네트워크", "Category": "케이블" }, + { "Name": "AniOne", "ServiceId": "케이블 AniOne", "Category": "케이블" }, + { "Name": "애니플러스", "ServiceId": "케이블 애니플러스", "Category": "케이블" }, + { "Name": "카투니토", "ServiceId": "케이블 카투니토", "Category": "케이블" }, + { "Name": "롯데홈쇼핑", "ServiceId": "케이블 롯데홈쇼핑", "Category": "케이블" }, + { "Name": "현대홈쇼핑", "ServiceId": "케이블 현대홈쇼핑", "Category": "케이블" }, + { "Name": "CJ온스타일", "ServiceId": "케이블 CJ온스타일", "Category": "케이블" }, + { "Name": "GS SHOP", "ServiceId": "케이블 GS SHOP", "Category": "케이블" }, + { "Name": "CJ온스타일플러스", "ServiceId": "케이블 CJ온스타일플러스", "Category": "케이블" }, + { "Name": "NS홈쇼핑", "ServiceId": "케이블 NS홈쇼핑", "Category": "케이블" }, + { "Name": "SK stoa", "ServiceId": "케이블 SK stoa", "Category": "케이블" }, + { "Name": "kt알파 쇼핑", "ServiceId": "케이블 kt알파 쇼핑", "Category": "케이블" }, + { "Name": "공영쇼핑", "ServiceId": "케이블 공영쇼핑", "Category": "케이블" }, + { "Name": "쇼핑엔티", "ServiceId": "케이블 쇼핑엔티", "Category": "케이블" }, + { "Name": "홈&쇼핑", "ServiceId": "케이블 홈&쇼핑", "Category": "케이블" }, + { "Name": "에이플드라마", "ServiceId": "케이블 에이플드라마", "Category": "케이블" }, + { "Name": "MBC 드라마넷", "ServiceId": "케이블 MBC 드라마넷", "Category": "케이블" }, + { "Name": "SBS Plus", "ServiceId": "케이블 SBS Plus", "Category": "케이블" }, + { "Name": "KBS 드라마", "ServiceId": "케이블 KBS 드라마", "Category": "케이블" }, + { "Name": "Dramax", "ServiceId": "케이블 Dramax", "Category": "케이블" }, + { "Name": "MBC ON", "ServiceId": "케이블 MBC ON", "Category": "케이블" }, + { "Name": "AXN", "ServiceId": "케이블 AXN", "Category": "케이블" }, + { "Name": "Asia N", "ServiceId": "케이블 Asia N", "Category": "케이블" }, + { "Name": "CH.U", "ServiceId": "케이블 CH.U", "Category": "케이블" }, + { "Name": "CHING", "ServiceId": "케이블 CHING", "Category": "케이블" }, + { "Name": "CNTV", "ServiceId": "케이블 CNTV", "Category": "케이블" }, + { "Name": "DRAMAcube", "ServiceId": "케이블 DRAMAcube", "Category": "케이블" }, + { "Name": "ENA", "ServiceId": "케이블 ENA", "Category": "케이블" }, + { "Name": "ENA DRAMA", "ServiceId": "케이블 ENA DRAMA", "Category": "케이블" }, + { "Name": "TV asia Plus", "ServiceId": "케이블 TV asia Plus", "Category": "케이블" }, + { "Name": "디원TV", "ServiceId": "케이블 디원TV", "Category": "케이블" }, + { "Name": "위라이크", "ServiceId": "케이블 위라이크", "Category": "케이블" }, + { "Name": "중화TV", "ServiceId": "케이블 중화TV", "Category": "케이블" }, + { "Name": "채널나우", "ServiceId": "케이블 채널나우", "Category": "케이블" }, + { "Name": "채널에버", "ServiceId": "케이블 채널에버", "Category": "케이블" }, + { "Name": "채널차이나", "ServiceId": "케이블 채널차이나", "Category": "케이블" }, + { "Name": "텔레노벨라", "ServiceId": "케이블 텔레노벨라", "Category": "케이블" }, + { "Name": "하이라이트TV", "ServiceId": "케이블 하이라이트TV", "Category": "케이블" }, + { "Name": "Mnet", "ServiceId": "케이블 Mnet", "Category": "케이블" }, + { "Name": "MBC M", "ServiceId": "케이블 MBC M", "Category": "케이블" }, + { "Name": "SBS M", "ServiceId": "케이블 SBS M", "Category": "케이블" }, + { "Name": "CMTV", "ServiceId": "케이블 CMTV", "Category": "케이블" }, + { "Name": "GMTV", "ServiceId": "케이블 GMTV", "Category": "케이블" }, + { "Name": "아이넷 TV", "ServiceId": "케이블 아이넷 TV", "Category": "케이블" }, + { "Name": "오르페오", "ServiceId": "케이블 오르페오", "Category": "케이블" }, + { "Name": "OCN", "ServiceId": "케이블 OCN", "Category": "케이블" }, + { "Name": "OCN Movies", "ServiceId": "케이블 OCN Movies", "Category": "케이블" }, + { "Name": "OCN Movies2", "ServiceId": "케이블 OCN Movies2", "Category": "케이블" }, + { "Name": "Asia M", "ServiceId": "케이블 Asia M", "Category": "케이블" }, + { "Name": "Mplex", "ServiceId": "케이블 Mplex", "Category": "케이블" }, + { "Name": "THE MOVIE", "ServiceId": "케이블 THE MOVIE", "Category": "케이블" }, + { "Name": "UMAX", "ServiceId": "케이블 UMAX", "Category": "케이블" }, + { "Name": "UXN", "ServiceId": "케이블 UXN", "Category": "케이블" }, + { "Name": "스크린", "ServiceId": "케이블 스크린", "Category": "케이블" }, + { "Name": "월드 클래식 무비", "ServiceId": "케이블 월드 클래식 무비", "Category": "케이블" }, + { "Name": "인디필름", "ServiceId": "케이블 인디필름", "Category": "케이블" }, + { "Name": "캐치온1", "ServiceId": "케이블 캐치온1", "Category": "케이블" }, + { "Name": "캐치온2", "ServiceId": "케이블 캐치온2", "Category": "케이블" }, + { "Name": "채널액션", "ServiceId": "케이블 채널액션", "Category": "케이블" }, + { "Name": "tvN", "ServiceId": "케이블 tvN", "Category": "케이블" }, + { "Name": "코미디TV", "ServiceId": "케이블 코미디TV", "Category": "케이블" }, + { "Name": "KBS Joy", "ServiceId": "케이블 KBS Joy", "Category": "케이블" }, + { "Name": "E채널", "ServiceId": "케이블 E채널", "Category": "케이블" }, + { "Name": "MBC every1", "ServiceId": "케이블 MBC every1", "Category": "케이블" }, + { "Name": "JTBC2", "ServiceId": "케이블 JTBC2", "Category": "케이블" }, + { "Name": "tvN DRAMA", "ServiceId": "케이블 tvN DRAMA", "Category": "케이블" }, + { "Name": "CH W", "ServiceId": "케이블 CH W", "Category": "케이블" }, + { "Name": "ENA PLAY", "ServiceId": "케이블 ENA PLAY", "Category": "케이블" }, + { "Name": "ETN연예TV", "ServiceId": "케이블 ETN연예TV", "Category": "케이블" }, + { "Name": "HQ+", "ServiceId": "케이블 HQ+", "Category": "케이블" }, + { "Name": "K star", "ServiceId": "케이블 K star", "Category": "케이블" }, + { "Name": "KBS WORLD", "ServiceId": "케이블 KBS WORLD", "Category": "케이블" }, + { "Name": "MBN Plus", "ServiceId": "케이블 MBN Plus", "Category": "케이블" }, + { "Name": "SBS Life", "ServiceId": "케이블 SBS Life", "Category": "케이블" }, + { "Name": "SBS funE", "ServiceId": "케이블 SBS funE", "Category": "케이블" }, + { "Name": "SOOP", "ServiceId": "케이블 SOOP", "Category": "케이블" }, + { "Name": "SPOTV K", "ServiceId": "케이블 SPOTV K", "Category": "케이블" }, + { "Name": "Smile TV Plus", "ServiceId": "케이블 Smile TV Plus", "Category": "케이블" }, + { "Name": "TV CHOSUN2", "ServiceId": "케이블 TV CHOSUN2", "Category": "케이블" }, + { "Name": "TV 조선3", "ServiceId": "케이블 TV 조선3", "Category": "케이블" }, + { "Name": "WeeTV", "ServiceId": "케이블 WeeTV", "Category": "케이블" }, + { "Name": "i PLAY", "ServiceId": "케이블 i PLAY", "Category": "케이블" }, + { "Name": "tvN SHOW", "ServiceId": "케이블 tvN SHOW", "Category": "케이블" }, + { "Name": "더라이프", "ServiceId": "케이블 더라이프", "Category": "케이블" }, + { "Name": "이벤트TV", "ServiceId": "케이블 이벤트TV", "Category": "케이블" }, + { "Name": "채널A플러스", "ServiceId": "케이블 채널A플러스", "Category": "케이블" }, + { "Name": "채널S", "ServiceId": "케이블 채널S", "Category": "케이블" }, + { "Name": "채널S 플러스", "ServiceId": "케이블 채널S 플러스", "Category": "케이블" }, + { "Name": "BBS불교방송", "ServiceId": "케이블 BBS불교방송", "Category": "케이블" }, + { "Name": "원음방송", "ServiceId": "케이블 원음방송", "Category": "케이블" }, + { "Name": "BTN 불교TV", "ServiceId": "케이블 BTN 불교TV", "Category": "케이블" }, + { "Name": "C channel", "ServiceId": "케이블 C channel", "Category": "케이블" }, + { "Name": "CBS TV", "ServiceId": "케이블 CBS TV", "Category": "케이블" }, + { "Name": "CGN", "ServiceId": "케이블 CGN", "Category": "케이블" }, + { "Name": "CTS 기독교TV", "ServiceId": "케이블 CTS 기독교TV", "Category": "케이블" }, + { "Name": "GOODTV", "ServiceId": "케이블 GOODTV", "Category": "케이블" }, + { "Name": "STB상생방송", "ServiceId": "케이블 STB상생방송", "Category": "케이블" }, + { "Name": "가톨릭 평화방송", "ServiceId": "케이블 가톨릭 평화방송", "Category": "케이블" }, + { "Name": "국악방송", "ServiceId": "케이블 국악방송", "Category": "케이블" }, + { "Name": "DOGTV", "ServiceId": "케이블 DOGTV", "Category": "케이블" }, + { "Name": "MBCNET", "ServiceId": "케이블 MBCNET", "Category": "케이블" }, + { "Name": "OLIFE", "ServiceId": "케이블 OLIFE", "Category": "케이블" }, + { "Name": "RNA", "ServiceId": "케이블 RNA", "Category": "케이블" }, + { "Name": "RTV", "ServiceId": "케이블 RTV", "Category": "케이블" }, + { "Name": "SAFE TV", "ServiceId": "케이블 SAFE TV", "Category": "케이블" }, + { "Name": "StoryTV", "ServiceId": "케이블 StoryTV", "Category": "케이블" }, + { "Name": "TBS", "ServiceId": "케이블 TBS", "Category": "케이블" }, + { "Name": "YTN사이언스", "ServiceId": "케이블 YTN사이언스", "Category": "케이블" }, + { "Name": "대교 뉴이프Plus", "ServiceId": "케이블 대교 뉴이프Plus", "Category": "케이블" }, + { "Name": "메디컬TV", "ServiceId": "케이블 메디컬TV", "Category": "케이블" }, + { "Name": "시니어TV", "ServiceId": "케이블 시니어TV", "Category": "케이블" }, + { "Name": "지방자치TV", "ServiceId": "케이블 지방자치TV", "Category": "케이블" }, + { "Name": "채널i", "ServiceId": "케이블 채널i", "Category": "케이블" }, + { "Name": "채널이엠", "ServiceId": "케이블 채널이엠", "Category": "케이블" }, + { "Name": "한경arteTV", "ServiceId": "케이블 한경arteTV", "Category": "케이블" }, + { "Name": "해피독 티비", "ServiceId": "케이블 해피독 티비", "Category": "케이블" }, + { "Name": "헬스메디tv", "ServiceId": "케이블 헬스메디tv", "Category": "케이블" }, + { "Name": "9colors", "ServiceId": "케이블 9colors", "Category": "케이블" }, + { "Name": "Discovery Channel", "ServiceId": "케이블 Discovery Channel", "Category": "케이블" }, + { "Name": "FUNTV", "ServiceId": "케이블 FUNTV", "Category": "케이블" }, + { "Name": "KBS LIFE", "ServiceId": "케이블 KBS LIFE", "Category": "케이블" }, + { "Name": "MGTV", "ServiceId": "케이블 MGTV", "Category": "케이블" }, + { "Name": "NBS한국농업방송", "ServiceId": "케이블 NBS한국농업방송", "Category": "케이블" }, + { "Name": "YTN2", "ServiceId": "케이블 YTN2", "Category": "케이블" }, + { "Name": "다문화TV", "ServiceId": "케이블 다문화TV", "Category": "케이블" }, + { "Name": "리얼TV", "ServiceId": "케이블 리얼TV", "Category": "케이블" }, + { "Name": "실버아이TV", "ServiceId": "케이블 실버아이TV", "Category": "케이블" }, + { "Name": "엑스원", "ServiceId": "케이블 엑스원", "Category": "케이블" }, + { "Name": "채널 뷰", "ServiceId": "케이블 채널 뷰", "Category": "케이블" }, + { "Name": "히스토리채널", "ServiceId": "케이블 히스토리채널", "Category": "케이블" }, + { "Name": "Billiards TV", "ServiceId": "케이블 Billiards TV", "Category": "케이블" }, + { "Name": "FTV", "ServiceId": "케이블 FTV", "Category": "케이블" }, + { "Name": "K바둑", "ServiceId": "케이블 K바둑", "Category": "케이블" }, + { "Name": "ONCE", "ServiceId": "케이블 ONCE", "Category": "케이블" }, + { "Name": "ONT", "ServiceId": "케이블 ONT", "Category": "케이블" }, + { "Name": "마운틴TV", "ServiceId": "케이블 마운틴TV", "Category": "케이블" }, + { "Name": "바둑TV", "ServiceId": "케이블 바둑TV", "Category": "케이블" }, + { "Name": "브레인TV", "ServiceId": "케이블 브레인TV", "Category": "케이블" }, + { "Name": "생활체육TV", "ServiceId": "케이블 생활체육TV", "Category": "케이블" }, + { "Name": "한국낚시방송", "ServiceId": "케이블 한국낚시방송", "Category": "케이블" }, + { "Name": "EBS English", "ServiceId": "케이블 EBS English", "Category": "케이블" }, + { "Name": "EBS플러스1", "ServiceId": "케이블 EBS플러스1", "Category": "케이블" }, + { "Name": "EBS플러스2", "ServiceId": "케이블 EBS플러스2", "Category": "케이블" }, + { "Name": "JEI English TV", "ServiceId": "케이블 JEI English TV", "Category": "케이블" }, + { "Name": "OUN", "ServiceId": "케이블 OUN", "Category": "케이블" }, + { "Name": "플레이런TV", "ServiceId": "케이블 플레이런TV", "Category": "케이블" }, + { "Name": "KFN", "ServiceId": "케이블 KFN", "Category": "케이블" }, + { "Name": "KTV 국민방송", "ServiceId": "케이블 KTV 국민방송", "Category": "케이블" }, + { "Name": "국회방송", "ServiceId": "케이블 국회방송", "Category": "케이블" }, + { "Name": "법률방송", "ServiceId": "케이블 법률방송", "Category": "케이블" }, + { "Name": "복지TV", "ServiceId": "케이블 복지TV", "Category": "케이블" }, + { "Name": "연합뉴스TV JOB", "ServiceId": "케이블 연합뉴스TV JOB", "Category": "케이블" }, + { "Name": "channel J", "ServiceId": "케이블 channel J", "Category": "케이블" }, + { "Name": "TLC여행레저채널", "ServiceId": "SKYLIFE TLC여행레저채널", "Category": "스카이라이프" }, + { "Name": "HD Channel J", "ServiceId": "SKYLIFE HD Channel J", "Category": "스카이라이프" }, + { "Name": "HD MAXPORTS", "ServiceId": "SKYLIFE HD MAXPORTS", "Category": "스카이라이프" }, + { "Name": "Now 제주TV", "ServiceId": "SKYLIFE Now 제주TV", "Category": "스카이라이프" }, + { "Name": "UHD Dream TV", "ServiceId": "SKYLIFE UHD Dream TV", "Category": "스카이라이프" }, + { "Name": "skyUHD", "ServiceId": "SKYLIFE skyUHD", "Category": "스카이라이프" }, + { "Name": "애니맥스", "ServiceId": "SKYLIFE 애니맥스", "Category": "스카이라이프" }, + { "Name": "HD AniBox", "ServiceId": "SKYLIFE HD AniBox", "Category": "스카이라이프" }, + { "Name": "HD Aniplus", "ServiceId": "SKYLIFE HD Aniplus", "Category": "스카이라이프" }, + { "Name": "HD 애니원TV", "ServiceId": "SKYLIFE HD 애니원TV", "Category": "스카이라이프" }, + { "Name": "HD 투니버스", "ServiceId": "SKYLIFE HD 투니버스", "Category": "스카이라이프" }, + { "Name": "Asia UHD", "ServiceId": "SKYLIFE Asia UHD", "Category": "스카이라이프" }, + { "Name": "EDGE TV", "ServiceId": "SKYLIFE EDGE TV", "Category": "스카이라이프" }, + { "Name": "HD Asia N2", "ServiceId": "SKYLIFE HD Asia N2", "Category": "스카이라이프" }, + { "Name": "HD KBS드라마", "ServiceId": "SKYLIFE HD KBS드라마", "Category": "스카이라이프" }, + { "Name": "HD MBC ON", "ServiceId": "SKYLIFE HD MBC ON", "Category": "스카이라이프" }, + { "Name": "HD MBC 드라마", "ServiceId": "SKYLIFE HD MBC 드라마", "Category": "스카이라이프" }, + { "Name": "HD SBS Plus", "ServiceId": "SKYLIFE HD SBS Plus", "Category": "스카이라이프" }, + { "Name": "HD 텔레노벨라", "ServiceId": "SKYLIFE HD 텔레노벨라", "Category": "스카이라이프" }, + { "Name": "HD OCN", "ServiceId": "SKYLIFE HD OCN", "Category": "스카이라이프" }, + { "Name": "HD tvN SHOW", "ServiceId": "SKYLIFE HD tvN SHOW", "Category": "스카이라이프" }, + { "Name": "HD OCN Movies", "ServiceId": "SKYLIFE HD OCN Movies", "Category": "스카이라이프" }, + { "Name": "HD CNTV", "ServiceId": "SKYLIFE HD CNTV", "Category": "스카이라이프" }, + { "Name": "HD Mplex", "ServiceId": "SKYLIFE HD Mplex", "Category": "스카이라이프" }, + { "Name": "sky 지역방송", "ServiceId": "SKYLIFE sky 지역방송", "Category": "스카이라이프" }, + { "Name": "시네마천국", "ServiceId": "SKYLIFE 시네마천국", "Category": "스카이라이프" }, + { "Name": "씨네프", "ServiceId": "SKYLIFE 씨네프", "Category": "스카이라이프" }, + { "Name": "BBC AUDIO", "ServiceId": "SKYLIFE BBC AUDIO", "Category": "스카이라이프" }, + { "Name": "HD Mnet", "ServiceId": "SKYLIFE HD Mnet", "Category": "스카이라이프" }, + { "Name": "CMCTV", "ServiceId": "SKYLIFE CMCTV", "Category": "스카이라이프" }, + { "Name": "HD ENA PLAY", "ServiceId": "SKYLIFE HD ENA PLAY", "Category": "스카이라이프" }, + { "Name": "HD I.NET", "ServiceId": "SKYLIFE HD I.NET", "Category": "스카이라이프" }, + { "Name": "HD JTBC2", "ServiceId": "SKYLIFE HD JTBC2", "Category": "스카이라이프" }, + { "Name": "HD K star", "ServiceId": "SKYLIFE HD K star", "Category": "스카이라이프" }, + { "Name": "HD KBS JOY", "ServiceId": "SKYLIFE HD KBS JOY", "Category": "스카이라이프" }, + { "Name": "HD MBC 에브리원", "ServiceId": "SKYLIFE HD MBC 에브리원", "Category": "스카이라이프" }, + { "Name": "HD SBS funE", "ServiceId": "SKYLIFE HD SBS funE", "Category": "스카이라이프" }, + { "Name": "HD TV CHOSUN2", "ServiceId": "SKYLIFE HD TV CHOSUN2", "Category": "스카이라이프" }, + { "Name": "HD tvN", "ServiceId": "SKYLIFE HD tvN", "Category": "스카이라이프" }, + { "Name": "HD tvN DRAMA", "ServiceId": "SKYLIFE HD tvN DRAMA", "Category": "스카이라이프" }, + { "Name": "MX", "ServiceId": "SKYLIFE MX", "Category": "스카이라이프" }, + { "Name": "SBS F!L UHD", "ServiceId": "SKYLIFE SBS F!L UHD", "Category": "스카이라이프" }, + { "Name": "HD CJB 청주방송", "ServiceId": "SKYLIFE HD CJB 청주방송", "Category": "스카이라이프" }, + { "Name": "HD G1 강원민방", "ServiceId": "SKYLIFE HD G1 강원민방", "Category": "스카이라이프" }, + { "Name": "HD JIBS 제주방송", "ServiceId": "SKYLIFE HD JIBS 제주방송", "Category": "스카이라이프" }, + { "Name": "HD JTV 전주방송", "ServiceId": "SKYLIFE HD JTV 전주방송", "Category": "스카이라이프" }, + { "Name": "HD KBC 광주방송", "ServiceId": "SKYLIFE HD KBC 광주방송", "Category": "스카이라이프" }, + { "Name": "HD OBS2", "ServiceId": "SKYLIFE HD OBS2", "Category": "스카이라이프" }, + { "Name": "HD TBC 대구방송", "ServiceId": "SKYLIFE HD TBC 대구방송", "Category": "스카이라이프" }, + { "Name": "HD TJB 대전방송", "ServiceId": "SKYLIFE HD TJB 대전방송", "Category": "스카이라이프" }, + { "Name": "HD UBC 울산방송", "ServiceId": "SKYLIFE HD UBC 울산방송", "Category": "스카이라이프" }, + { "Name": "MBC 충주", "ServiceId": "SKYLIFE MBC 충주", "Category": "스카이라이프" }, + { "Name": "HD CJ온스타일2", "ServiceId": "SKYLIFE HD CJ온스타일2", "Category": "스카이라이프" }, + { "Name": "HD GS SHOP", "ServiceId": "SKYLIFE HD GS SHOP", "Category": "스카이라이프" }, + { "Name": "HD NS홈쇼핑", "ServiceId": "SKYLIFE HD NS홈쇼핑", "Category": "스카이라이프" }, + { "Name": "HD 롯데홈쇼핑", "ServiceId": "SKYLIFE HD 롯데홈쇼핑", "Category": "스카이라이프" }, + { "Name": "HD 현대홈쇼핑", "ServiceId": "SKYLIFE HD 현대홈쇼핑", "Category": "스카이라이프" }, + { "Name": "HD FTV2", "ServiceId": "SKYLIFE HD FTV2", "Category": "스카이라이프" }, + { "Name": "HD K바둑", "ServiceId": "SKYLIFE HD K바둑", "Category": "스카이라이프" }, + { "Name": "HD 바둑TV", "ServiceId": "SKYLIFE HD 바둑TV", "Category": "스카이라이프" }, + { "Name": "HD KBSN스포츠", "ServiceId": "SKYLIFE HD KBSN스포츠", "Category": "스카이라이프" }, + { "Name": "HD MBC스포츠 플러스", "ServiceId": "SKYLIFE HD MBC스포츠 플러스", "Category": "스카이라이프" }, + { "Name": "HD SBS골프", "ServiceId": "SKYLIFE HD SBS골프", "Category": "스카이라이프" }, + { "Name": "HD SBS스포츠", "ServiceId": "SKYLIFE HD SBS스포츠", "Category": "스카이라이프" }, + { "Name": "IB sports", "ServiceId": "SKYLIFE IB sports", "Category": "스카이라이프" }, + { "Name": "SPOTV", "ServiceId": "SKYLIFE SPOTV", "Category": "스카이라이프" }, + { "Name": "SPOTV PRIME2", "ServiceId": "SKYLIFE SPOTV PRIME2", "Category": "스카이라이프" }, + { "Name": "HD KTV 국민방송", "ServiceId": "SKYLIFE HD KTV 국민방송", "Category": "스카이라이프" }, + { "Name": "HD LIFETIME", "ServiceId": "SKYLIFE HD LIFETIME", "Category": "스카이라이프" }, + { "Name": "HD tvN SPORTS", "ServiceId": "SKYLIFE HD tvN SPORTS", "Category": "스카이라이프" }, + { "Name": "HD tvN STORY", "ServiceId": "SKYLIFE HD tvN STORY", "Category": "스카이라이프" }, + { "Name": "동아TV", "ServiceId": "SKYLIFE 동아TV", "Category": "스카이라이프" }, + { "Name": "육아방송", "ServiceId": "SKYLIFE 육아방송", "Category": "스카이라이프" }, + { "Name": "HD MBCNET", "ServiceId": "SKYLIFE HD MBCNET", "Category": "스카이라이프" }, + { "Name": "HD OLIFE", "ServiceId": "SKYLIFE HD OLIFE", "Category": "스카이라이프" }, + { "Name": "HD 한경arteTV", "ServiceId": "SKYLIFE HD 한경arteTV", "Category": "스카이라이프" }, + { "Name": "OBS W", "ServiceId": "SKYLIFE OBS W", "Category": "스카이라이프" }, + { "Name": "Sky Guide", "ServiceId": "SKYLIFE Sky Guide", "Category": "스카이라이프" }, + { "Name": "HD YTN", "ServiceId": "SKYLIFE HD YTN", "Category": "스카이라이프" }, + { "Name": "HD 연합뉴스TV", "ServiceId": "SKYLIFE HD 연합뉴스TV", "Category": "스카이라이프" }, + { "Name": "HD 한국경제TV", "ServiceId": "SKYLIFE HD 한국경제TV", "Category": "스카이라이프" }, + { "Name": "연합뉴스경제TV", "ServiceId": "SKYLIFE 연합뉴스경제TV", "Category": "스카이라이프" }, + { "Name": "이데일리TV", "ServiceId": "SKYLIFE 이데일리TV", "Category": "스카이라이프" }, + { "Name": "Animal Planet", "ServiceId": "해외위성 Animal Planet", "Category": "해외위성" }, + { "Name": "BBC Earth", "ServiceId": "해외위성 BBC Earth", "Category": "해외위성" }, + { "Name": "BBC World 2", "ServiceId": "해외위성 BBC World 2", "Category": "해외위성" }, + { "Name": "Bloomberg TV", "ServiceId": "해외위성 Bloomberg TV", "Category": "해외위성" }, + { "Name": "CCTV4", "ServiceId": "해외위성 CCTV4", "Category": "해외위성" }, + { "Name": "CGTN", "ServiceId": "해외위성 CGTN", "Category": "해외위성" }, + { "Name": "CNBC", "ServiceId": "해외위성 CNBC", "Category": "해외위성" }, + { "Name": "CNN Int’l", "ServiceId": "해외위성 CNN Int’l", "Category": "해외위성" }, + { "Name": "DWTV", "ServiceId": "해외위성 DWTV", "Category": "해외위성" }, + { "Name": "EUROSPORT", "ServiceId": "해외위성 EUROSPORT", "Category": "해외위성" }, + { "Name": "NHK WORLD Premium", "ServiceId": "해외위성 NHK WORLD Premium", "Category": "해외위성" }, + { "Name": "NHK WORLD-JAPAN", "ServiceId": "해외위성 NHK WORLD-JAPAN", "Category": "해외위성" }, + { "Name": "ClassicFM", "ServiceId": "라디오 ClassicFM", "Category": "라디오" }, + { "Name": "KBS CoolFM", "ServiceId": "라디오 KBS CoolFM", "Category": "라디오" }, + { "Name": "MBCFM4U", "ServiceId": "라디오 MBCFM4U", "Category": "라디오" }, + { "Name": "MBC표준FM", "ServiceId": "라디오 MBC표준FM", "Category": "라디오" }, + { "Name": "SBS파워FM", "ServiceId": "라디오 SBS파워FM", "Category": "라디오" }, + { "Name": "SBS러브FM", "ServiceId": "라디오 SBS러브FM", "Category": "라디오" }, + { "Name": "TBSFM", "ServiceId": "라디오 TBSFM", "Category": "라디오" }, + { "Name": "(R)원음방송", "ServiceId": "라디오 (R)원음방송", "Category": "라디오" }, + { "Name": "Arirang", "ServiceId": "라디오 Arirang", "Category": "라디오" }, + { "Name": "BBS불교방송", "ServiceId": "라디오 BBS불교방송", "Category": "라디오" }, + { "Name": "CBS음악FM", "ServiceId": "라디오 CBS음악FM", "Category": "라디오" }, + { "Name": "CBS표준FM", "ServiceId": "라디오 CBS표준FM", "Category": "라디오" }, + { "Name": "EBS FM", "ServiceId": "라디오 EBS FM", "Category": "라디오" }, + { "Name": "HappyFM", "ServiceId": "라디오 HappyFM", "Category": "라디오" }, + { "Name": "KBS1R", "ServiceId": "라디오 KBS1R", "Category": "라디오" }, + { "Name": "KBS3R", "ServiceId": "라디오 KBS3R", "Category": "라디오" }, + { "Name": "KBSWorldRadio", "ServiceId": "라디오 KBSWorldRadio", "Category": "라디오" }, + { "Name": "KBS한민족", "ServiceId": "라디오 KBS한민족", "Category": "라디오" }, + { "Name": "KFN Radio", "ServiceId": "라디오 KFN Radio", "Category": "라디오" }, + { "Name": "SBS 고릴라라디오 M", "ServiceId": "라디오 SBS 고릴라라디오 M", "Category": "라디오" }, + { "Name": "TBN", "ServiceId": "라디오 TBN", "Category": "라디오" }, + { "Name": "TBN(강원)", "ServiceId": "라디오 TBN(강원)", "Category": "라디오" }, + { "Name": "TBN(경남)", "ServiceId": "라디오 TBN(경남)", "Category": "라디오" }, + { "Name": "TBN(경북)", "ServiceId": "라디오 TBN(경북)", "Category": "라디오" }, + { "Name": "TBN(경인)", "ServiceId": "라디오 TBN(경인)", "Category": "라디오" }, + { "Name": "TBN(광주)", "ServiceId": "라디오 TBN(광주)", "Category": "라디오" }, + { "Name": "TBN(대구)", "ServiceId": "라디오 TBN(대구)", "Category": "라디오" }, + { "Name": "TBN(대전)", "ServiceId": "라디오 TBN(대전)", "Category": "라디오" }, + { "Name": "TBN(부산)", "ServiceId": "라디오 TBN(부산)", "Category": "라디오" }, + { "Name": "TBN(울산)", "ServiceId": "라디오 TBN(울산)", "Category": "라디오" }, + { "Name": "TBN(전북)", "ServiceId": "라디오 TBN(전북)", "Category": "라디오" }, + { "Name": "TBN(제주)", "ServiceId": "라디오 TBN(제주)", "Category": "라디오" }, + { "Name": "TBN(충북)", "ServiceId": "라디오 TBN(충북)", "Category": "라디오" }, + { "Name": "YTNNewsFM", "ServiceId": "라디오 YTNNewsFM", "Category": "라디오" }, + { "Name": "경인방송", "ServiceId": "라디오 경인방송", "Category": "라디오" }, + { "Name": "국악방송", "ServiceId": "라디오 국악방송", "Category": "라디오" }, + { "Name": "극동방송", "ServiceId": "라디오 극동방송", "Category": "라디오" }, + { "Name": "cpbc 가톨릭평화방송", "ServiceId": "라디오 cpbc 가톨릭평화방송", "Category": "라디오" }, + { "Name": "올댓뮤직", "ServiceId": "라디오 올댓뮤직", "Category": "라디오" } + ] + }, + "NAVER": { + "UPDATED": "2025-01-19T00:04:39.503155", + "TOTAL": 467, + "CHANNELS": [ + { "Name": "KBS1", "ServiceId": "814574", "Category": "지상파" }, + { "Name": "KBS2", "ServiceId": "814582", "Category": "지상파" }, + { "Name": "MBC", "ServiceId": "814588", "Category": "지상파" }, + { "Name": "SBS", "ServiceId": "814592", "Category": "지상파" }, + { "Name": "EBS1", "ServiceId": "814595", "Category": "지상파" }, + { "Name": "EBS2", "ServiceId": "2438226", "Category": "지상파" }, + { "Name": "경인 KBS1", "ServiceId": "814597", "Category": "지상파" }, + { "Name": "OBS 경인TV", "ServiceId": "814599", "Category": "지상파" }, + { "Name": "강릉 KBS1", "ServiceId": "814602", "Category": "지상파" }, + { "Name": "춘천 KBS1", "ServiceId": "814604", "Category": "지상파" }, + { "Name": "MBC 강원영동", "ServiceId": "814606", "Category": "지상파" }, + { "Name": "G1 방송", "ServiceId": "814614", "Category": "지상파" }, + { "Name": "삼척 MBC", "ServiceId": "814608", "Category": "지상파" }, + { "Name": "원주 MBC", "ServiceId": "814610", "Category": "지상파" }, + { "Name": "춘천 MBC", "ServiceId": "814612", "Category": "지상파" }, + { "Name": "부산 KBS1", "ServiceId": "814617", "Category": "지상파" }, + { "Name": "창원 KBS1", "ServiceId": "814619", "Category": "지상파" }, + { "Name": "MBC 경남", "ServiceId": "814626", "Category": "지상파" }, + { "Name": "부산 MBC", "ServiceId": "814621", "Category": "지상파" }, + { "Name": "KNN 부산경남방송", "ServiceId": "814628", "Category": "지상파" }, + { "Name": "대구 KBS1", "ServiceId": "814630", "Category": "지상파" }, + { "Name": "대구 MBC", "ServiceId": "814633", "Category": "지상파" }, + { "Name": "안동 MBC", "ServiceId": "814635", "Category": "지상파" }, + { "Name": "TBC 대구방송", "ServiceId": "814639", "Category": "지상파" }, + { "Name": "포항 MBC", "ServiceId": "814637", "Category": "지상파" }, + { "Name": "광주 KBS1", "ServiceId": "814642", "Category": "지상파" }, + { "Name": "광주 MBC", "ServiceId": "814644", "Category": "지상파" }, + { "Name": "목포 MBC", "ServiceId": "814646", "Category": "지상파" }, + { "Name": "KBC 광주방송", "ServiceId": "814652", "Category": "지상파" }, + { "Name": "여수 MBC", "ServiceId": "814649", "Category": "지상파" }, + { "Name": "전주 KBS1", "ServiceId": "814655", "Category": "지상파" }, + { "Name": "전주 MBC", "ServiceId": "814658", "Category": "지상파" }, + { "Name": "JTV 전주방송", "ServiceId": "814661", "Category": "지상파" }, + { "Name": "대전 KBS1", "ServiceId": "814665", "Category": "지상파" }, + { "Name": "대전 MBC", "ServiceId": "814668", "Category": "지상파" }, + { "Name": "TJB 대전방송", "ServiceId": "814671", "Category": "지상파" }, + { "Name": "청주 KBS1", "ServiceId": "814675", "Category": "지상파" }, + { "Name": "MBC 충북", "ServiceId": "814678", "Category": "지상파" }, + { "Name": "CJB 청주방송", "ServiceId": "814684", "Category": "지상파" }, + { "Name": "울산 KBS1", "ServiceId": "814687", "Category": "지상파" }, + { "Name": "울산 MBC", "ServiceId": "814691", "Category": "지상파" }, + { "Name": "UBC 울산방송", "ServiceId": "814694", "Category": "지상파" }, + { "Name": "제주 KBS1", "ServiceId": "814697", "Category": "지상파" }, + { "Name": "제주 MBC", "ServiceId": "814700", "Category": "지상파" }, + { "Name": "JIBS 제주방송", "ServiceId": "814703", "Category": "지상파" }, + { "Name": "JTBC", "ServiceId": "815576", "Category": "종합 편성" }, + { "Name": "MBN", "ServiceId": "815574", "Category": "종합 편성" }, + { "Name": "TV조선", "ServiceId": "815572", "Category": "종합 편성" }, + { "Name": "채널A", "ServiceId": "815571", "Category": "종합 편성" }, + { "Name": "KBS Drama", "ServiceId": "814763", "Category": "케이블" }, + { "Name": "MBC 드라마넷", "ServiceId": "814768", "Category": "케이블" }, + { "Name": "SBS Plus", "ServiceId": "814774", "Category": "케이블" }, + { "Name": "Dramax", "ServiceId": "814782", "Category": "케이블" }, + { "Name": "채널나우", "ServiceId": "814757", "Category": "케이블" }, + { "Name": "채널에버", "ServiceId": "814754", "Category": "케이블" }, + { "Name": "중화TV", "ServiceId": "814788", "Category": "케이블" }, + { "Name": "CHING", "ServiceId": "814751", "Category": "케이블" }, + { "Name": "ENA DRAMA", "ServiceId": "814794", "Category": "케이블" }, + { "Name": "디원TV", "ServiceId": "814785", "Category": "케이블" }, + { "Name": "텔레노벨라", "ServiceId": "814791", "Category": "케이블" }, + { "Name": "MBC ON", "ServiceId": "814944", "Category": "케이블" }, + { "Name": "AsiaN", "ServiceId": "814748", "Category": "케이블" }, + { "Name": "CH.U", "ServiceId": "814760", "Category": "케이블" }, + { "Name": "TVasia Plus", "ServiceId": "814777", "Category": "케이블" }, + { "Name": "DRAMAcube", "ServiceId": "815502", "Category": "케이블" }, + { "Name": "AXN", "ServiceId": "814707", "Category": "케이블" }, + { "Name": "ENA", "ServiceId": "814807", "Category": "케이블" }, + { "Name": "하이라이트TV", "ServiceId": "815073", "Category": "케이블" }, + { "Name": "채널차이나", "ServiceId": "815033", "Category": "케이블" }, + { "Name": "channel J", "ServiceId": "814937", "Category": "케이블" }, + { "Name": "위라이크", "ServiceId": "815562", "Category": "케이블" }, + { "Name": "CNTV", "ServiceId": "814709", "Category": "케이블" }, + { "Name": "ONCE", "ServiceId": "13919049", "Category": "케이블" }, + { "Name": "에이플드라마", "ServiceId": "18405796", "Category": "케이블" }, + { "Name": "OCN", "ServiceId": "814715", "Category": "케이블" }, + { "Name": "OCN Movies2", "ServiceId": "814718", "Category": "케이블" }, + { "Name": "OCN Movies", "ServiceId": "814734", "Category": "케이블" }, + { "Name": "스크린", "ServiceId": "814723", "Category": "케이블" }, + { "Name": "THE MOVIE", "ServiceId": "3913619", "Category": "케이블" }, + { "Name": "캐치온1", "ServiceId": "815487", "Category": "케이블" }, + { "Name": "캐치온2", "ServiceId": "815489", "Category": "케이블" }, + { "Name": "인디필름", "ServiceId": "814731", "Category": "케이블" }, + { "Name": "Mplex", "ServiceId": "814712", "Category": "케이블" }, + { "Name": "씨네프", "ServiceId": "814729", "Category": "케이블" }, + { "Name": "UMAX", "ServiceId": "9161626", "Category": "케이블" }, + { "Name": "Asia M", "ServiceId": "9783138", "Category": "케이블" }, + { "Name": "월드 클래식 무비", "ServiceId": "10002840", "Category": "케이블" }, + { "Name": "채널액션", "ServiceId": "18073903", "Category": "케이블" }, + { "Name": "시네마천국", "ServiceId": "24935096", "Category": "케이블" }, + { "Name": "tvN", "ServiceId": "814825", "Category": "케이블" }, + { "Name": "Mnet", "ServiceId": "814819", "Category": "케이블" }, + { "Name": "tvN SHOW", "ServiceId": "814720", "Category": "케이블" }, + { "Name": "JTBC2", "ServiceId": "814823", "Category": "케이블" }, + { "Name": "MBC every1", "ServiceId": "814817", "Category": "케이블" }, + { "Name": "E채널", "ServiceId": "814803", "Category": "케이블" }, + { "Name": "MBC M", "ServiceId": "814870", "Category": "케이블" }, + { "Name": "KBS WORLD", "ServiceId": "814813", "Category": "케이블" }, + { "Name": "K STAR", "ServiceId": "814827", "Category": "케이블" }, + { "Name": "SBS M", "ServiceId": "814821", "Category": "케이블" }, + { "Name": "SBS funE", "ServiceId": "814799", "Category": "케이블" }, + { "Name": "MX", "ServiceId": "814805", "Category": "케이블" }, + { "Name": "코미디TV", "ServiceId": "814835", "Category": "케이블" }, + { "Name": "KBS Joy", "ServiceId": "814811", "Category": "케이블" }, + { "Name": "아이넷TV", "ServiceId": "814809", "Category": "케이블" }, + { "Name": "이벤트TV", "ServiceId": "814831", "Category": "케이블" }, + { "Name": "CMC TV", "ServiceId": "814797", "Category": "케이블" }, + { "Name": "GMTV", "ServiceId": "814815", "Category": "케이블" }, + { "Name": "가요TV", "ServiceId": "814829", "Category": "케이블" }, + { "Name": "ETN연예TV", "ServiceId": "814801", "Category": "케이블" }, + { "Name": "CH W", "ServiceId": "2097469", "Category": "케이블" }, + { "Name": "i SHOW", "ServiceId": "1725243", "Category": "케이블" }, + { "Name": "Smile TV Plus", "ServiceId": "814939", "Category": "케이블" }, + { "Name": "HQ+", "ServiceId": "3566359", "Category": "케이블" }, + { "Name": "TV CHOSUN2", "ServiceId": "814914", "Category": "케이블" }, + { "Name": "채널A플러스", "ServiceId": "5286712", "Category": "케이블" }, + { "Name": "MBN Plus", "ServiceId": "5286722", "Category": "케이블" }, + { "Name": "tvN DRAMA", "ServiceId": "815038", "Category": "케이블" }, + { "Name": "채널와이드", "ServiceId": "814771", "Category": "케이블" }, + { "Name": "홈초이스", "ServiceId": "9229246", "Category": "케이블" }, + { "Name": "SBS Life", "ServiceId": "10252080", "Category": "케이블" }, + { "Name": "더라이프", "ServiceId": "16052614", "Category": "케이블" }, + { "Name": "아이넷라이프", "ServiceId": "16111702", "Category": "케이블" }, + { "Name": "유로무비", "ServiceId": "9229247", "Category": "케이블" }, + { "Name": "Ent.TV (엔터TV)", "ServiceId": "3181927", "Category": "케이블" }, + { "Name": "TV조선3", "ServiceId": "18120176", "Category": "케이블" }, + { "Name": "더라이프2", "ServiceId": "17384197", "Category": "케이블" }, + { "Name": "채널S", "ServiceId": "1736604", "Category": "케이블" }, + { "Name": "채널S 플러스", "ServiceId": "18148000", "Category": "케이블" }, + { "Name": "슬로우TV", "ServiceId": "36321336", "Category": "케이블" }, + { "Name": "OGN", "ServiceId": "814872", "Category": "케이블" }, + { "Name": "KBS N SPORTS", "ServiceId": "814837", "Category": "케이블" }, + { "Name": "MBC스포츠 플러스", "ServiceId": "814861", "Category": "케이블" }, + { "Name": "SBS Sports", "ServiceId": "814863", "Category": "케이블" }, + { "Name": "SBS Golf", "ServiceId": "814879", "Category": "케이블" }, + { "Name": "JTBC Golf", "ServiceId": "814876", "Category": "케이블" }, + { "Name": "Billiards TV", "ServiceId": "814868", "Category": "케이블" }, + { "Name": "SPOTV Golf & Health", "ServiceId": "815548", "Category": "케이블" }, + { "Name": "JTBC GOLF & SPORTS", "ServiceId": "815499", "Category": "케이블" }, + { "Name": "SPOTV", "ServiceId": "2876055", "Category": "케이블" }, + { "Name": "SPOTV2", "ServiceId": "5286701", "Category": "케이블" }, + { "Name": "Sky Sports", "ServiceId": "5561517", "Category": "케이블" }, + { "Name": "스크린골프존", "ServiceId": "13977689", "Category": "케이블" }, + { "Name": "볼링플러스", "ServiceId": "14378466", "Category": "케이블" }, + { "Name": "tvN SPORTS", "ServiceId": "815037", "Category": "케이블" }, + { "Name": "IB sports", "ServiceId": "6251521", "Category": "케이블" }, + { "Name": "SOOP", "ServiceId": "9734681", "Category": "케이블" }, + { "Name": "GOLF & PBA", "ServiceId": "9869929", "Category": "케이블" }, + { "Name": "SPOTV PRIME+", "ServiceId": "18120178", "Category": "케이블" }, + { "Name": "MAXPORTS", "ServiceId": "32346801", "Category": "케이블" }, + { "Name": "SPOTV K", "ServiceId": "1876333", "Category": "케이블" }, + { "Name": "SPOTV PRIME", "ServiceId": "28678660", "Category": "케이블" }, + { "Name": "SPOTV PRIME2", "ServiceId": "28678659", "Category": "케이블" }, + { "Name": "STN", "ServiceId": "28914223", "Category": "케이블" }, + { "Name": "SBS Golf2", "ServiceId": "815006", "Category": "케이블" }, + { "Name": "투니버스", "ServiceId": "815022", "Category": "케이블" }, + { "Name": "카툰네트워크", "ServiceId": "815018", "Category": "케이블" }, + { "Name": "애니플러스", "ServiceId": "815014", "Category": "케이블" }, + { "Name": "애니맥스", "ServiceId": "815012", "Category": "케이블" }, + { "Name": "대교어린이TV", "ServiceId": "815008", "Category": "케이블" }, + { "Name": "브라보키즈", "ServiceId": "815020", "Category": "케이블" }, + { "Name": "AniBox", "ServiceId": "814987", "Category": "케이블" }, + { "Name": "JEI 재능TV", "ServiceId": "814993", "Category": "케이블" }, + { "Name": "AniOne", "ServiceId": "814989", "Category": "케이블" }, + { "Name": "CBeebies", "ServiceId": "814991", "Category": "케이블" }, + { "Name": "KBS KIDS", "ServiceId": "815543", "Category": "케이블" }, + { "Name": "EBS KIDS", "ServiceId": "815547", "Category": "케이블" }, + { "Name": "카투니토", "ServiceId": "815072", "Category": "케이블" }, + { "Name": "뽀요TV", "ServiceId": "9662654", "Category": "케이블" }, + { "Name": "캐리TV", "ServiceId": "32346800", "Category": "케이블" }, + { "Name": "롯데홈쇼핑", "ServiceId": "815100", "Category": "케이블" }, + { "Name": "현대홈쇼핑", "ServiceId": "815101", "Category": "케이블" }, + { "Name": "CJ온스타일", "ServiceId": "815096", "Category": "케이블" }, + { "Name": "GS SHOP", "ServiceId": "815097", "Category": "케이블" }, + { "Name": "NS홈쇼핑", "ServiceId": "815099", "Category": "케이블" }, + { "Name": "홈&쇼핑", "ServiceId": "815524", "Category": "케이블" }, + { "Name": "공영쇼핑", "ServiceId": "9931218", "Category": "케이블" }, + { "Name": "CJ온스타일플러스", "ServiceId": "18608759", "Category": "케이블" }, + { "Name": "SK stoa", "ServiceId": "19356905", "Category": "케이블" }, + { "Name": "kt알파 쇼핑", "ServiceId": "26445690", "Category": "케이블" }, + { "Name": "NS Shop+", "ServiceId": "29770878", "Category": "케이블" }, + { "Name": "YTN", "ServiceId": "814912", "Category": "케이블" }, + { "Name": "SBS Biz", "ServiceId": "814910", "Category": "케이블" }, + { "Name": "한국경제TV", "ServiceId": "814929", "Category": "케이블" }, + { "Name": "MTN", "ServiceId": "814906", "Category": "케이블" }, + { "Name": "토마토TV", "ServiceId": "814925", "Category": "케이블" }, + { "Name": "이데일리TV", "ServiceId": "814921", "Category": "케이블" }, + { "Name": "서울경제TV", "ServiceId": "814917", "Category": "케이블" }, + { "Name": "팍스경제TV", "ServiceId": "814927", "Category": "케이블" }, + { "Name": "연합뉴스TV", "ServiceId": "815508", "Category": "케이블" }, + { "Name": "쿠키건강TV", "ServiceId": "814923", "Category": "케이블" }, + { "Name": "Euronews", "ServiceId": "814935", "Category": "케이블" }, + { "Name": "Channel News Asia", "ServiceId": "814932", "Category": "케이블" }, + { "Name": "소상공인시장tv", "ServiceId": "815559", "Category": "케이블" }, + { "Name": "NBNTV", "ServiceId": "9032062", "Category": "케이블" }, + { "Name": "연합뉴스경제TV", "ServiceId": "814999", "Category": "케이블" }, + { "Name": "FTV", "ServiceId": "814887", "Category": "케이블" }, + { "Name": "리빙TV", "ServiceId": "814896", "Category": "케이블" }, + { "Name": "바둑TV", "ServiceId": "814898", "Category": "케이블" }, + { "Name": "브레인TV", "ServiceId": "814900", "Category": "케이블" }, + { "Name": "폴라리스TV", "ServiceId": "814902", "Category": "케이블" }, + { "Name": "생활체육 TV", "ServiceId": "814883", "Category": "케이블" }, + { "Name": "K바둑", "ServiceId": "814894", "Category": "케이블" }, + { "Name": "한국낚시방송", "ServiceId": "814885", "Category": "케이블" }, + { "Name": "마운틴TV", "ServiceId": "814889", "Category": "케이블" }, + { "Name": "OLIFE", "ServiceId": "815470", "Category": "케이블" }, + { "Name": "히스토리채널", "ServiceId": "815519", "Category": "케이블" }, + { "Name": "ONT", "ServiceId": "815483", "Category": "케이블" }, + { "Name": "TLC여행레저채널", "ServiceId": "26450914", "Category": "케이블" }, + { "Name": "i PLAY", "ServiceId": "7698502", "Category": "케이블" }, + { "Name": "tvN STORY", "ServiceId": "815041", "Category": "케이블" }, + { "Name": "E LIKE", "ServiceId": "815026", "Category": "케이블" }, + { "Name": "ENA STORY", "ServiceId": "815040", "Category": "케이블" }, + { "Name": "GTV", "ServiceId": "815032", "Category": "케이블" }, + { "Name": "육아방송", "ServiceId": "815043", "Category": "케이블" }, + { "Name": "동아TV", "ServiceId": "815044", "Category": "케이블" }, + { "Name": "라이프타임채널", "ServiceId": "815030", "Category": "케이블" }, + { "Name": "EDGE TV", "ServiceId": "815028", "Category": "케이블" }, + { "Name": "KBS Story", "ServiceId": "815555", "Category": "케이블" }, + { "Name": "JTBC4", "ServiceId": "8179180", "Category": "케이블" }, + { "Name": "CNBC", "ServiceId": "815128", "Category": "케이블" }, + { "Name": "BBC News", "ServiceId": "815122", "Category": "케이블" }, + { "Name": "CCTV4", "ServiceId": "815127", "Category": "케이블" }, + { "Name": "Bloomberg TV", "ServiceId": "815124", "Category": "케이블" }, + { "Name": "Fox News", "ServiceId": "815141", "Category": "케이블" }, + { "Name": "CNN Headline News", "ServiceId": "815131", "Category": "케이블" }, + { "Name": "NHK WORLD Premium", "ServiceId": "815158", "Category": "케이블" }, + { "Name": "CGTN", "ServiceId": "815125", "Category": "케이블" }, + { "Name": "BBC Earth", "ServiceId": "815121", "Category": "케이블" }, + { "Name": "Euro Sports News", "ServiceId": "815135", "Category": "케이블" }, + { "Name": "Australia Plus", "ServiceId": "815118", "Category": "케이블" }, + { "Name": "STC", "ServiceId": "815167", "Category": "케이블" }, + { "Name": "TV5MONDE", "ServiceId": "815171", "Category": "케이블" }, + { "Name": "LAC", "ServiceId": "815152", "Category": "케이블" }, + { "Name": "Discovery Science", "ServiceId": "14364036", "Category": "케이블" }, + { "Name": "DWTV", "ServiceId": "814934", "Category": "케이블" }, + { "Name": "CNN Int’l", "ServiceId": "815130", "Category": "케이블" }, + { "Name": "CNN US HD", "ServiceId": "2089085", "Category": "케이블" }, + { "Name": "NHK WORLD-JAPAN", "ServiceId": "8744820", "Category": "케이블" }, + { "Name": "BTN불교TV", "ServiceId": "815112", "Category": "케이블" }, + { "Name": "가톨릭 평화방송", "ServiceId": "815115", "Category": "케이블" }, + { "Name": "BBS불교방송", "ServiceId": "815103", "Category": "케이블" }, + { "Name": "CGN", "ServiceId": "815106", "Category": "케이블" }, + { "Name": "GOODTV", "ServiceId": "815108", "Category": "케이블" }, + { "Name": "CTS 기독교TV", "ServiceId": "815110", "Category": "케이블" }, + { "Name": "상생방송", "ServiceId": "815113", "Category": "케이블" }, + { "Name": "CBS TV", "ServiceId": "815104", "Category": "케이블" }, + { "Name": "C channel", "ServiceId": "815109", "Category": "케이블" }, + { "Name": "CMTV", "ServiceId": "2843917", "Category": "케이블" }, + { "Name": "원음방송", "ServiceId": "5534687", "Category": "케이블" }, + { "Name": "국회방송", "ServiceId": "815084", "Category": "케이블" }, + { "Name": "KFN", "ServiceId": "815082", "Category": "케이블" }, + { "Name": "복지TV", "ServiceId": "815087", "Category": "케이블" }, + { "Name": "arirang", "ServiceId": "815081", "Category": "케이블" }, + { "Name": "법률방송", "ServiceId": "815085", "Category": "케이블" }, + { "Name": "KTV 국민방송", "ServiceId": "815090", "Category": "케이블" }, + { "Name": "MGTV", "ServiceId": "815094", "Category": "케이블" }, + { "Name": "통일TV", "ServiceId": "28847088", "Category": "케이블" }, + { "Name": "EBS플러스1", "ServiceId": "814967", "Category": "케이블" }, + { "Name": "EBS플러스2", "ServiceId": "814969", "Category": "케이블" }, + { "Name": "EBS English", "ServiceId": "814963", "Category": "케이블" }, + { "Name": "JEI English TV", "ServiceId": "814973", "Category": "케이블" }, + { "Name": "플레이런 TV", "ServiceId": "814979", "Category": "케이블" }, + { "Name": "OUN", "ServiceId": "814975", "Category": "케이블" }, + { "Name": "연합뉴스TV JOB", "ServiceId": "814983", "Category": "케이블" }, + { "Name": "WeeTV", "ServiceId": "815506", "Category": "케이블" }, + { "Name": "채널 뷰", "ServiceId": "814959", "Category": "케이블" }, + { "Name": "KBS LIFE", "ServiceId": "814942", "Category": "케이블" }, + { "Name": "리얼TV", "ServiceId": "814952", "Category": "케이블" }, + { "Name": "YTN사이언스", "ServiceId": "814955", "Category": "케이블" }, + { "Name": "RTV", "ServiceId": "814948", "Category": "케이블" }, + { "Name": "NBS한국농업방송", "ServiceId": "814961", "Category": "케이블" }, + { "Name": "엑스원", "ServiceId": "5321817", "Category": "케이블" }, + { "Name": "FUNTV", "ServiceId": "8246644", "Category": "케이블" }, + { "Name": "MBCNET", "ServiceId": "815052", "Category": "케이블" }, + { "Name": "한경arteTV", "ServiceId": "815076", "Category": "케이블" }, + { "Name": "9colors", "ServiceId": "815049", "Category": "케이블" }, + { "Name": "메디컬TV", "ServiceId": "815053", "Category": "케이블" }, + { "Name": "실버아이TV", "ServiceId": "815075", "Category": "케이블" }, + { "Name": "SAFE TV", "ServiceId": "815484", "Category": "케이블" }, + { "Name": "헬스메디tv", "ServiceId": "815500", "Category": "케이블" }, + { "Name": "tbsTV", "ServiceId": "815503", "Category": "케이블" }, + { "Name": "DOGTV", "ServiceId": "2020583", "Category": "케이블" }, + { "Name": "채널 해피독", "ServiceId": "2296260", "Category": "케이블" }, + { "Name": "채널i", "ServiceId": "3173174", "Category": "케이블" }, + { "Name": "지방자치TV", "ServiceId": "3244879", "Category": "케이블" }, + { "Name": "YTN2", "ServiceId": "5534688", "Category": "케이블" }, + { "Name": "매일경제TV", "ServiceId": "5663691", "Category": "케이블" }, + { "Name": "시니어TV", "ServiceId": "18073904", "Category": "케이블" }, + { "Name": "국악방송", "ServiceId": "18120177", "Category": "케이블" }, + { "Name": "RNA", "ServiceId": "18147999", "Category": "케이블" }, + { "Name": "다문화TV", "ServiceId": "28710358", "Category": "케이블" }, + { "Name": "DealSite경제TV", "ServiceId": "31297333", "Category": "케이블" }, + { "Name": "대교 뉴이프Plus", "ServiceId": "5301680", "Category": "케이블" }, + { "Name": "KBS1", "ServiceId": "815175", "Category": "스카이라이프" }, + { "Name": "KBS2", "ServiceId": "815178", "Category": "스카이라이프" }, + { "Name": "MBC", "ServiceId": "815183", "Category": "스카이라이프" }, + { "Name": "SBS", "ServiceId": "815186", "Category": "스카이라이프" }, + { "Name": "EBS1", "ServiceId": "815188", "Category": "스카이라이프" }, + { "Name": "EBS2", "ServiceId": "2438227", "Category": "스카이라이프" }, + { "Name": "JTBC", "ServiceId": "815583", "Category": "스카이라이프" }, + { "Name": "MBN", "ServiceId": "815581", "Category": "스카이라이프" }, + { "Name": "TV조선", "ServiceId": "815579", "Category": "스카이라이프" }, + { "Name": "채널A", "ServiceId": "815578", "Category": "스카이라이프" }, + { "Name": "KBS 드라마", "ServiceId": "815214", "Category": "스카이라이프" }, + { "Name": "MBC 드라마넷", "ServiceId": "815216", "Category": "스카이라이프" }, + { "Name": "SBS플러스", "ServiceId": "815220", "Category": "스카이라이프" }, + { "Name": "중화TV", "ServiceId": "815224", "Category": "스카이라이프" }, + { "Name": "Asia N", "ServiceId": "815211", "Category": "스카이라이프" }, + { "Name": "HD 텔레노벨라", "ServiceId": "815225", "Category": "스카이라이프" }, + { "Name": "ENA", "ServiceId": "815552", "Category": "스카이라이프" }, + { "Name": "HD 텔레노벨라", "ServiceId": "815526", "Category": "스카이라이프" }, + { "Name": "Asia UHD", "ServiceId": "4124120", "Category": "스카이라이프" }, + { "Name": "MBC ON", "ServiceId": "815561", "Category": "스카이라이프" }, + { "Name": "위라이크", "ServiceId": "815564", "Category": "스카이라이프" }, + { "Name": "CNTV", "ServiceId": "815192", "Category": "스카이라이프" }, + { "Name": "ONCE", "ServiceId": "13919050", "Category": "스카이라이프" }, + { "Name": "AXN", "ServiceId": "815190", "Category": "스카이라이프" }, + { "Name": "OCN", "ServiceId": "815198", "Category": "스카이라이프" }, + { "Name": "OCN Movies2", "ServiceId": "815201", "Category": "스카이라이프" }, + { "Name": "OCN Movies", "ServiceId": "815205", "Category": "스카이라이프" }, + { "Name": "THE MOVIE", "ServiceId": "815194", "Category": "스카이라이프" }, + { "Name": "캐치온1", "ServiceId": "815207", "Category": "스카이라이프" }, + { "Name": "캐치온2", "ServiceId": "815209", "Category": "스카이라이프" }, + { "Name": "Mplex", "ServiceId": "815196", "Category": "스카이라이프" }, + { "Name": "UXN", "ServiceId": "2843916", "Category": "스카이라이프" }, + { "Name": "tvN", "ServiceId": "815240", "Category": "스카이라이프" }, + { "Name": "Mnet", "ServiceId": "815235", "Category": "스카이라이프" }, + { "Name": "tvN SHOW", "ServiceId": "815203", "Category": "스카이라이프" }, + { "Name": "JTBC2", "ServiceId": "815237", "Category": "스카이라이프" }, + { "Name": "MBC every1", "ServiceId": "815233", "Category": "스카이라이프" }, + { "Name": "MBC M", "ServiceId": "815255", "Category": "스카이라이프" }, + { "Name": "K STAR", "ServiceId": "815242", "Category": "스카이라이프" }, + { "Name": "ENA PLAY", "ServiceId": "814833", "Category": "스카이라이프" }, + { "Name": "SBS funE", "ServiceId": "815227", "Category": "스카이라이프" }, + { "Name": "코미디TV", "ServiceId": "815244", "Category": "스카이라이프" }, + { "Name": "KBS Joy", "ServiceId": "815231", "Category": "스카이라이프" }, + { "Name": "아이넷TV", "ServiceId": "815256", "Category": "스카이라이프" }, + { "Name": "ETN", "ServiceId": "815229", "Category": "스카이라이프" }, + { "Name": "SBS Fil UHD", "ServiceId": "5332390", "Category": "스카이라이프" }, + { "Name": "skyUHD", "ServiceId": "5332391", "Category": "스카이라이프" }, + { "Name": "tvN DRAMA", "ServiceId": "815328", "Category": "스카이라이프" }, + { "Name": "채널와이드", "ServiceId": "815218", "Category": "스카이라이프" }, + { "Name": "TV CHOSUN2", "ServiceId": "9104506", "Category": "스카이라이프" }, + { "Name": "OGN", "ServiceId": "815260", "Category": "스카이라이프" }, + { "Name": "KBS N 스포츠", "ServiceId": "815253", "Category": "스카이라이프" }, + { "Name": "MBC스포츠 플러스", "ServiceId": "815258", "Category": "스카이라이프" }, + { "Name": "SBS 스포츠", "ServiceId": "815262", "Category": "스카이라이프" }, + { "Name": "SBS골프", "ServiceId": "815264", "Category": "스카이라이프" }, + { "Name": "JTBC Golf", "ServiceId": "815251", "Category": "스카이라이프" }, + { "Name": "SPOTV Golf & Health", "ServiceId": "1878296", "Category": "스카이라이프" }, + { "Name": "Sky Sports", "ServiceId": "815199", "Category": "스카이라이프" }, + { "Name": "EUROSPORT", "ServiceId": "2741330", "Category": "스카이라이프" }, + { "Name": "IB sports", "ServiceId": "2801430", "Category": "스카이라이프" }, + { "Name": "tvN SPORTS", "ServiceId": "815326", "Category": "스카이라이프" }, + { "Name": "SPOTV", "ServiceId": "2876067", "Category": "스카이라이프" }, + { "Name": "투니버스", "ServiceId": "815566", "Category": "스카이라이프" }, + { "Name": "카툰네트워크", "ServiceId": "815324", "Category": "스카이라이프" }, + { "Name": "애니맥스", "ServiceId": "815323", "Category": "스카이라이프" }, + { "Name": "대교어린이TV", "ServiceId": "815321", "Category": "스카이라이프" }, + { "Name": "AniBox", "ServiceId": "815311", "Category": "스카이라이프" }, + { "Name": "JEI 재능TV", "ServiceId": "815314", "Category": "스카이라이프" }, + { "Name": "AniOne", "ServiceId": "815313", "Category": "스카이라이프" }, + { "Name": "Kids TalkTalk 플러스", "ServiceId": "815316", "Category": "스카이라이프" }, + { "Name": "롯데홈쇼핑", "ServiceId": "815365", "Category": "스카이라이프" }, + { "Name": "현대홈쇼핑", "ServiceId": "815366", "Category": "스카이라이프" }, + { "Name": "CJ온스타일", "ServiceId": "815360", "Category": "스카이라이프" }, + { "Name": "GS SHOP", "ServiceId": "815362", "Category": "스카이라이프" }, + { "Name": "NS홈쇼핑", "ServiceId": "815363", "Category": "스카이라이프" }, + { "Name": "홈&쇼핑", "ServiceId": "815525", "Category": "스카이라이프" }, + { "Name": "CJ온스타일플러스", "ServiceId": "18608758", "Category": "스카이라이프" }, + { "Name": "YTN", "ServiceId": "815283", "Category": "스카이라이프" }, + { "Name": "한국경제TV", "ServiceId": "815290", "Category": "스카이라이프" }, + { "Name": "MTN", "ServiceId": "815278", "Category": "스카이라이프" }, + { "Name": "토마토TV", "ServiceId": "815289", "Category": "스카이라이프" }, + { "Name": "이데일리TV", "ServiceId": "815287", "Category": "스카이라이프" }, + { "Name": "SBS Biz", "ServiceId": "815282", "Category": "스카이라이프" }, + { "Name": "서울경제TV", "ServiceId": "815285", "Category": "스카이라이프" }, + { "Name": "연합뉴스TV", "ServiceId": "815518", "Category": "스카이라이프" }, + { "Name": "HD 팍스경제TV", "ServiceId": "815522", "Category": "스카이라이프" }, + { "Name": "FTV", "ServiceId": "815269", "Category": "스카이라이프" }, + { "Name": "리빙TV", "ServiceId": "815273", "Category": "스카이라이프" }, + { "Name": "브레인TV", "ServiceId": "815274", "Category": "스카이라이프" }, + { "Name": "생활체육 TV", "ServiceId": "815267", "Category": "스카이라이프" }, + { "Name": "K바둑", "ServiceId": "815271", "Category": "스카이라이프" }, + { "Name": "OLIFE", "ServiceId": "815265", "Category": "스카이라이프" }, + { "Name": "히스토리", "ServiceId": "815521", "Category": "스카이라이프" }, + { "Name": "tvN STORY", "ServiceId": "815330", "Category": "스카이라이프" }, + { "Name": "KBS Story", "ServiceId": "815557", "Category": "스카이라이프" }, + { "Name": "JTBC4", "ServiceId": "8172689", "Category": "스카이라이프" }, + { "Name": "CNN Int’l", "ServiceId": "815379", "Category": "스카이라이프" }, + { "Name": "BBC News", "ServiceId": "815375", "Category": "스카이라이프" }, + { "Name": "CCTV4", "ServiceId": "815378", "Category": "스카이라이프" }, + { "Name": "CGTN", "ServiceId": "815377", "Category": "스카이라이프" }, + { "Name": "오르페오", "ServiceId": "815297", "Category": "스카이라이프" }, + { "Name": "NHK WORLD Premium", "ServiceId": "815381", "Category": "스카이라이프" }, + { "Name": "Animal Planet", "ServiceId": "815374", "Category": "스카이라이프" }, + { "Name": "CNN US HD", "ServiceId": "2090035", "Category": "스카이라이프" }, + { "Name": "BTN불교TV", "ServiceId": "815371", "Category": "스카이라이프" }, + { "Name": "가톨릭 평화방송", "ServiceId": "815372", "Category": "스카이라이프" }, + { "Name": "BBS불교방송", "ServiceId": "815584", "Category": "스카이라이프" }, + { "Name": "CTS 기독교TV", "ServiceId": "815369", "Category": "스카이라이프" }, + { "Name": "CBS TV", "ServiceId": "815368", "Category": "스카이라이프" }, + { "Name": "원음방송", "ServiceId": "6301221", "Category": "스카이라이프" }, + { "Name": "국회방송", "ServiceId": "815347", "Category": "스카이라이프" }, + { "Name": "KFN", "ServiceId": "815345", "Category": "스카이라이프" }, + { "Name": "복지TV", "ServiceId": "815349", "Category": "스카이라이프" }, + { "Name": "KBS LIFE", "ServiceId": "815340", "Category": "스카이라이프" }, + { "Name": "arirang", "ServiceId": "815334", "Category": "스카이라이프" }, + { "Name": "RTV", "ServiceId": "815343", "Category": "스카이라이프" }, + { "Name": "MBCNET", "ServiceId": "815341", "Category": "스카이라이프" }, + { "Name": "KTV 국민방송", "ServiceId": "815354", "Category": "스카이라이프" }, + { "Name": "한경arteTV", "ServiceId": "815352", "Category": "스카이라이프" }, + { "Name": "HD OBS W", "ServiceId": "815359", "Category": "스카이라이프" }, + { "Name": "YTN2", "ServiceId": "5534689", "Category": "스카이라이프" }, + { "Name": "매일경제TV", "ServiceId": "5663690", "Category": "스카이라이프" }, + { "Name": "EBS플러스1", "ServiceId": "815301", "Category": "스카이라이프" }, + { "Name": "EBS플러스2", "ServiceId": "815303", "Category": "스카이라이프" }, + { "Name": "EBS English", "ServiceId": "815299", "Category": "스카이라이프" }, + { "Name": "JEI English TV", "ServiceId": "815304", "Category": "스카이라이프" }, + { "Name": "OUN", "ServiceId": "815306", "Category": "스카이라이프" }, + { "Name": "연합뉴스TV JOB", "ServiceId": "815310", "Category": "스카이라이프" }, + { "Name": "디스커버리 채널", "ServiceId": "815292", "Category": "스카이라이프" }, + { "Name": "YTN사이언스", "ServiceId": "815296", "Category": "스카이라이프" }, + { "Name": "채널이엠", "ServiceId": "2230374", "Category": "스카이라이프" }, + { "Name": "CNBC", "ServiceId": "815403", "Category": "해외위성" }, + { "Name": "BBC News", "ServiceId": "815397", "Category": "해외위성" }, + { "Name": "CCTV4", "ServiceId": "815401", "Category": "해외위성" }, + { "Name": "Bloomberg TV", "ServiceId": "815398", "Category": "해외위성" }, + { "Name": "Fox News", "ServiceId": "815413", "Category": "해외위성" }, + { "Name": "CNN Headline News", "ServiceId": "815406", "Category": "해외위성" }, + { "Name": "NHK WORLD Premium", "ServiceId": "815432", "Category": "해외위성" }, + { "Name": "CGTN", "ServiceId": "815400", "Category": "해외위성" }, + { "Name": "BBC Earth", "ServiceId": "815395", "Category": "해외위성" }, + { "Name": "Euro Sports News", "ServiceId": "815408", "Category": "해외위성" }, + { "Name": "Australia Plus", "ServiceId": "815391", "Category": "해외위성" }, + { "Name": "STC", "ServiceId": "815441", "Category": "해외위성" }, + { "Name": "TV5MONDE", "ServiceId": "815444", "Category": "해외위성" }, + { "Name": "LAC", "ServiceId": "815428", "Category": "해외위성" }, + { "Name": "Animal Planet", "ServiceId": "815392", "Category": "해외위성" }, + { "Name": "DWTV", "ServiceId": "815529", "Category": "해외위성" }, + { "Name": "오르페오", "ServiceId": "815531", "Category": "해외위성" }, + { "Name": "CNN Int’l", "ServiceId": "815404", "Category": "해외위성" }, + { "Name": "CNN US HD", "ServiceId": "2090034", "Category": "해외위성" }, + { "Name": "디스커버리 채널", "ServiceId": "11810896", "Category": "해외위성" }, + { "Name": "EUROSPORT", "ServiceId": "11810897", "Category": "해외위성" }, + { "Name": "KBS1FM", "ServiceId": "815454", "Category": "라디오" }, + { "Name": "KBS2FM", "ServiceId": "815457", "Category": "라디오" }, + { "Name": "MBCFM4U", "ServiceId": "815463", "Category": "라디오" }, + { "Name": "MBC표준FM", "ServiceId": "815464", "Category": "라디오" }, + { "Name": "SBS러브FM", "ServiceId": "815465", "Category": "라디오" }, + { "Name": "SBS파워FM", "ServiceId": "815467", "Category": "라디오" }, + { "Name": "KBS1R", "ServiceId": "815455", "Category": "라디오" }, + { "Name": "KBS2R", "ServiceId": "815458", "Category": "라디오" }, + { "Name": "KBS3R", "ServiceId": "815460", "Category": "라디오" }, + { "Name": "KBS한민족", "ServiceId": "815461", "Category": "라디오" }, + { "Name": "KBSWorldRadio", "ServiceId": "815447", "Category": "라디오" }, + { "Name": "BBS불교방송", "ServiceId": "815448", "Category": "라디오" }, + { "Name": "CBS음악FM", "ServiceId": "815449", "Category": "라디오" }, + { "Name": "CBS표준FM", "ServiceId": "815451", "Category": "라디오" }, + { "Name": "EBS교육방송", "ServiceId": "815452", "Category": "라디오" }, + { "Name": "TBS교통방송", "ServiceId": "815468", "Category": "라디오" }, + { "Name": "CPBC 평화방송", "ServiceId": "1974894", "Category": "라디오" }, + { "Name": "경인방송", "ServiceId": "1974895", "Category": "라디오" }, + { "Name": "YTN NEWS FM", "ServiceId": "2074615", "Category": "라디오" }, + { "Name": "극동방송", "ServiceId": "2074616", "Category": "라디오" }, + { "Name": "국악방송", "ServiceId": "2891853", "Category": "라디오" }, + { "Name": "원음방송", "ServiceId": "6303645", "Category": "라디오" } + ] + }, + "WAVVE": { + "UPDATED": "2025-01-19T00:04:39.503390", + "TOTAL": 122, + "CHANNELS": [ + { "Name": "KBS Life", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K05_Img_20210401135119.jpg", "ServiceId": "K05" }, + { "Name": "KBS 1TV", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/KBS-1TV-1.jpg", "ServiceId": "K01" }, + { "Name": "KBS 2TV", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/KBS-2TV-1.jpg", "ServiceId": "K02" }, + { "Name": "MBC", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/M01.jpg", "ServiceId": "M01" }, + { "Name": "SBS", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/S01.jpg", "ServiceId": "S01" }, + { "Name": "EBS 1", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/E01.jpg", "ServiceId": "E01" }, + { "Name": "EBS 2", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/E07.jpg", "ServiceId": "E07" }, + { "Name": "MBN", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/C2401_Img_20191125101746.jpg", "ServiceId": "C2401" }, + { "Name": "TV CHOSUN", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2601_Img_20210612162051.jpg", "ServiceId": "C2601" }, + { "Name": "채널A", "Icon_url": "https://image.wavve.com/channel_mgmt/image/C2501_main_20240723141822.jpg", "ServiceId": "C2501" }, + { "Name": "연합뉴스TV", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/Y01.jpg", "ServiceId": "Y01" }, + { "Name": "YTN", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C2101.jpg", "ServiceId": "C2101" }, + { "Name": "SBS Biz", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S06_Img_20201229154431.jpg", "ServiceId": "S06" }, + { "Name": "한국경제TV", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F2101_Img_20201013140748.jpg", "ServiceId": "F2101" }, + { "Name": "매일경제TV", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F2001_Img_20201117230801.jpg", "ServiceId": "F2001" }, + { "Name": "머니투데이방송", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F4301_Img_20210818232937.jpg", "ServiceId": "F4301" }, + { "Name": "CCTV4", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K12.jpg", "ServiceId": "K12" }, + { "Name": "CGTN", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/CGTN-1.jpg", "ServiceId": "K25" }, + { "Name": "GS SHOP", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C4201.jpg", "ServiceId": "C4201" }, + { "Name": "현대홈쇼핑", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C4101.jpg", "ServiceId": "C4101" }, + { "Name": "NS홈쇼핑", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/NShomeshopping-1.jpg", "ServiceId": "C8301" }, + { "Name": "롯데홈쇼핑", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/lotte-1.png", "ServiceId": "C5601" }, + { "Name": "GS MY SHOP", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C4202.jpg", "ServiceId": "C4202" }, + { "Name": "현대홈쇼핑+샵", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C4101.jpg", "ServiceId": "C4102" }, + { "Name": "NS SHOP+", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/nsshopplus-1.jpg", "ServiceId": "C8302" }, + { "Name": "롯데홈쇼핑 ONETV", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/C5602_Img_20191230135745.jpg", "ServiceId": "C5602" }, + { "Name": "KT알파 쇼핑", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F1401_Img_20220531162338.jpg", "ServiceId": "F1401" }, + { "Name": "SK스토아", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F2701_Img_20210308162242.jpg", "ServiceId": "F2701" }, + { "Name": "공영홈쇼핑", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F6901_Img_20220610155951.jpg", "ServiceId": "F6901" }, + { "Name": "KBS 1박 2일", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K15.jpg", "ServiceId": "K15" }, + { "Name": "KBS 역사저널 그날", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K36_Img_20230817141103.jpg", "ServiceId": "K36" }, + { "Name": "KBS 홍김동전", "Icon_url": "https://image.wavve.com/channel_mgmt/image/K37_main_20240724162940.jpg", "ServiceId": "K37" }, + { "Name": "연애의 참견", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K28_Img_20210125133848.jpg", "ServiceId": "K28" }, + { "Name": "KBS 사극", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K29_Img_20210324183641.jpg", "ServiceId": "K29" }, + { "Name": "KBS 주말명작", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K30_Img_20210603111124.jpg", "ServiceId": "K30" }, + { "Name": "KBS 사랑과전쟁", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K31_Img_20210916114439.jpg", "ServiceId": "K31" }, + { "Name": "KBS DRAMA", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K06.jpg", "ServiceId": "K06" }, + { "Name": "KBS JOY", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K04.jpg", "ServiceId": "K04" }, + { "Name": "KBS Story", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/K09_Img_20210401135323.jpg", "ServiceId": "K09" }, + { "Name": "MBC 무한도전", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/PM1.jpg", "ServiceId": "PM1" }, + { "Name": "MBC 나 혼자 산다", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/PM2.jpg", "ServiceId": "PM2" }, + { "Name": "MBC 라디오스타", "Icon_url": "http://img.pooq.co.kr/BMS/ChannelImg/radiostar_channel_re.jpg", "ServiceId": "M12" }, + { "Name": "MBC 서프라이즈", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/surprise.jpg", "ServiceId": "M13" }, + { "Name": "MBC 하이킥24 LIVE", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/M15_Img_20200630170512.jpg", "ServiceId": "M15" }, + { "Name": "MBC 드라마정주행24 LIVE", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/M16_Img_20200630170903.jpg", "ServiceId": "M16" }, + { "Name": "MBC 예능정주행24 LIVE", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/M17_Img_20200630171356.jpg", "ServiceId": "M17" }, + { "Name": "MBC M", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/M06_Img_20200218143229.jpg", "ServiceId": "M06" }, + { "Name": "MBC Drama", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/M02.jpg", "ServiceId": "M02" }, + { "Name": "MBC Every1", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/M03.jpg", "ServiceId": "M03" }, + { "Name": "MBC ON", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/M14_Img_20200611005554.jpg", "ServiceId": "M14" }, + { "Name": "TV동물농장", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/S15-1.jpg", "ServiceId": "S15" }, + { "Name": "런닝맨", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/S16-1.jpg", "ServiceId": "S16" }, + { "Name": "미우새", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/S17.jpg", "ServiceId": "S17" }, + { "Name": "레전드 시트콤", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/S18-1.jpg", "ServiceId": "S18" }, + { "Name": "스브스갓드", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S20_Img_20220209105615.jpg", "ServiceId": "S20" }, + { "Name": "빽드", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S23_Img_20230308160502.jpg", "ServiceId": "S23" }, + { "Name": "백종원의 골목식당", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S25_Img_20220324135403.jpg", "ServiceId": "S25" }, + { "Name": "SBS funE", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S04_Img_20220105112535.jpg", "ServiceId": "S04" }, + { "Name": "SBS Plus", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S03_Img_20220119180558.jpg", "ServiceId": "S03" }, + { "Name": "SBS Life", "Icon_url": "https://image.wavve.com/channel_mgmt/image/S22_main_20241202152824.jpg", "ServiceId": "S22" }, + { "Name": "SBS M", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S09_Img_20220701112232.jpg", "ServiceId": "S09" }, + { "Name": "THE K-POP", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/S14_Img_20210609181002.jpg", "ServiceId": "S14" }, + { "Name": "MBN 플러스", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/C2402_Img_20191125102051.jpg", "ServiceId": "C2402" }, + { "Name": "채널A 플러스", "Icon_url": "https://image.wavve.com/channel_mgmt/image/C2502_main_20241230112314.jpg", "ServiceId": "C2502" }, + { "Name": "TV CHOSUN2", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2602_Img_20210608164002.jpg", "ServiceId": "C2602" }, + { "Name": "EDGETV", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/X01_Img_20191001110604.jpg", "ServiceId": "X01" }, + { "Name": "FUNTV", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/X02_Img_20191001110820.jpg", "ServiceId": "X02" }, + { "Name": "채널J", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C5501.jpg", "ServiceId": "C5501" }, + { "Name": "AsiaN", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C5101.jpg", "ServiceId": "C5101" }, + { "Name": "CN PLAY", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/Channel_China-1.jpg", "ServiceId": "C8401" }, + { "Name": "TVasia Plus", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F5601_Img_20220204173048.jpg", "ServiceId": "F5601" }, + { "Name": "SmileTV Plus", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F5602_Img_20220204173351.jpg", "ServiceId": "F5602" }, + { "Name": "위라이크", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C8101_Img_20221104141737.jpg", "ServiceId": "C8101" }, + { "Name": "PLAYY 웰메이드 영화", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/H01.jpg", "ServiceId": "H01" }, + { "Name": "PLAYY 프리미엄 영화", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/H02.jpg", "ServiceId": "H02" }, + { "Name": "PLAYY 액션영화", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/H07.jpg", "ServiceId": "H07" }, + { "Name": "시네마천국", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/H05_Img_20201127184140.jpg", "ServiceId": "H05" }, + { "Name": "AsiaM", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C5102_Img_20201127184619.jpg", "ServiceId": "C5102" }, + { "Name": "인디필름", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F2601_Img_20201127183455.jpg", "ServiceId": "F2601" }, + { "Name": "THE MOVIE", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F2501_Img_20201127183840.jpg", "ServiceId": "F2501" }, + { "Name": "ANIBOX", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/C4401.jpg", "ServiceId": "C4401" }, + { "Name": "ANIONE", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/ANIONE.jpg", "ServiceId": "C4402" }, + { "Name": "ANIMAX", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/A01.jpg", "ServiceId": "A01" }, + { "Name": "EBS 키즈", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/E05.jpg", "ServiceId": "E05" }, + { "Name": "브라보키즈", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C6802_Img_20200826082858.jpg", "ServiceId": "C6802" }, + { "Name": "k-star", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F6301_Img_20220411141732.jpg", "ServiceId": "F6301" }, + { "Name": "국회방송", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F3301_Img_20210630145022.jpg", "ServiceId": "F3301" }, + { "Name": "iHQ 맛있는녀석들", "Icon_url": "https://img.pooq.co.kr/BMS/Channelimage30/image/delicious-1.jpg", "ServiceId": "C5202" }, + { "Name": "iHQ 뚱TV", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C5203_Img_20210426110340.jpg", "ServiceId": "C5203" }, + { "Name": "MBN 특종세상", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2411_Img_20230302075957.jpg", "ServiceId": "C2411" }, + { "Name": "MBN 실제상황", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2412_Img_20220308190745.jpg", "ServiceId": "C2412" }, + { "Name": "TV CHOSUN 골프왕", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2604_Img_20220923140302.jpg", "ServiceId": "C2604" }, + { "Name": "TV CHOSUN 미스터트롯2 - 새로운 전설의 시작", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2603_Img_20230111154622.jpg", "ServiceId": "C2603" }, + { "Name": "애니플러스", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C6102_Img_20220308191422.jpg", "ServiceId": "C6102" }, + { "Name": "포켓몬스터", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F0102_Img_20220308222702.jpg", "ServiceId": "F0102" }, + { "Name": "Original 트레이서", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F1214_Img_20240219103707.jpg", "ServiceId": "F1214" }, + { "Name": "Original 영화", "Icon_url": "https://image.wavve.com/channel_mgmt/image/F1221_main_20241014101146.jpg", "ServiceId": "F1221" }, + { "Name": "KBS1RADIO", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K07.jpg", "ServiceId": "K07" }, + { "Name": "Wavve에서 오늘 뭐보지", "Icon_url": "https://image.wavve.com/channel_mgmt/image/F1222_main.jpg", "ServiceId": "F1222" }, + { "Name": "KBSCOOLFM", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/K08.jpg", "ServiceId": "K08" }, + { "Name": "MBC FM4U", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/M08.jpg", "ServiceId": "M08" }, + { "Name": "MBC 표준 FM", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/M07.jpg", "ServiceId": "M07" }, + { "Name": "SBS 파워FM", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/S07.jpg", "ServiceId": "S07" }, + { "Name": "SBS 러브FM", "Icon_url": "http://img.pooq.co.kr/BMS/Channelimage30/image/S08.jpg", "ServiceId": "S08" }, + { "Name": "YTN 라디오", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2107_Img_20200805153857.jpg", "ServiceId": "C2107" }, + { "Name": "KISS - 최신인기가요", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2701_Img_20230503181419.jpg", "ServiceId": "C2701" }, + { "Name": "KISS - 당신을 위한 발라드", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2702_Img_20230503181626.jpg", "ServiceId": "C2702" }, + { "Name": "KISS - 응답하라 8090", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2703_Img_20230503175926.jpg", "ServiceId": "C2703" }, + { "Name": "KISS - 2000년대 인기가요", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2705_Img_20230503181841.jpg", "ServiceId": "C2705" }, + { "Name": "KISS - 재즈 라운지", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2706_Img_20230503182111.jpg", "ServiceId": "C2706" }, + { "Name": "KISS - 클래식 산책", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2708_Img_20230503180804.jpg", "ServiceId": "C2708" }, + { "Name": "KISS - 한국인이 사랑한 팝송", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2709_Img_20230503182612.jpg", "ServiceId": "C2709" }, + { "Name": "KISS - 키스 더 트롯", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2710_Img_20230503182849.jpg", "ServiceId": "C2710" }, + { "Name": "KISS - 탑골 K-POP", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C2713_Img_20230503183048.jpg", "ServiceId": "C2713" }, + { "Name": "W Music Story - Hot! Remix Music", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F9502_Img_20230511131838.png", "ServiceId": "F9502" }, + { "Name": "W Music Story - HOT! K_POP Music", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F9501_Img_20230511131729.png", "ServiceId": "F9501" }, + { "Name": "W Music Story - Ambient Music", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F9503_Img_20240507174025.jpg", "ServiceId": "F9503" }, + { "Name": "W Music Story - HOT! POP Music", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F9504_Img_20240507174448.jpg", "ServiceId": "F9504" }, + { "Name": "OGN", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/F9901_Img_20230926133826.jpg", "ServiceId": "F9901" }, + { "Name": "황후의 품격", "Icon_url": "https://image.wavve.com/channel_mgmt/image/S19_main_20241118140221.jpg", "ServiceId": "S19" }, + { "Name": "E채널 토요일은 밥이 좋아", "Icon_url": "https://img.wavve.com/BMS/Channelimage30/image/C5702_Img_20220308184241.jpg", "ServiceId": "C5702" }, + { "Name": "CARTOONITO", "Icon_url": "https://image.wavve.com/channel_mgmt/image/J2801_main_20241219133111.jpg", "ServiceId": "J2801" } + ] + }, + "TVING": { + "UPDATED": "2025-01-19T00:04:39.503470", + "TOTAL": 327, + "CHANNELS": [ + { "Name": "tvN", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0232/C00551.png", "ServiceId": "C00551", "Category": "드라마" }, + { "Name": "JTBC", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0900/C01582.png", "ServiceId": "C01582", "Category": "뉴스/재테크" }, + { "Name": "Mnet", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0232/C00579.png", "ServiceId": "C00579", "Category": "음악/오락" }, + { "Name": "tvN DRAMA", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0902/C01143.png", "ServiceId": "C01143", "Category": "여성/홈쇼핑" }, + { "Name": "OCN", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0223/C07381.png", "ServiceId": "C07381", "Category": "영화" }, + { "Name": "OCN Movies", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0224/C04601.png", "ServiceId": "C04601", "Category": "영화" }, + { "Name": "OCN Movies2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0224/C07382.png", "ServiceId": "C07382", "Category": "영화" }, + { "Name": "tvN SHOW", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0902/C01141.png", "ServiceId": "C01141", "Category": "음악/오락" }, + { "Name": "투니버스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0224/C06941.png", "ServiceId": "C06941", "Category": "캐릭터TV" }, + { "Name": "중화TV", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0905/C00544.png", "ServiceId": "C00544", "Category": "드라마" }, + { "Name": "YTN", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0231/C00593.png", "ServiceId": "C00593", "Category": "뉴스/재테크" }, + { "Name": "MBN", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0230/C00708.png", "ServiceId": "C00708", "Category": "뉴스/재테크" }, + { "Name": "채널A", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0227/C01583.png", "ServiceId": "C01583", "Category": "뉴스/재테크" }, + { "Name": "TV CHOSUN", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0226/C01581.png", "ServiceId": "C01581", "Category": "뉴스/재테크" }, + { "Name": "연합뉴스TV", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0226/C01723.png", "ServiceId": "C01723", "Category": "뉴스/재테크" }, + { "Name": "CH.코미디 빅리그", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1006/C05961.png", "ServiceId": "C05961", "Category": "음악/오락" }, + { "Name": "CH.시그널", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0034/C06761.png", "ServiceId": "C06761", "Category": "드라마" }, + { "Name": "CH.응답하라1988", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1001/C06762.png", "ServiceId": "C06762", "Category": "드라마" }, + { "Name": "EBS1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0900/C00772.png", "ServiceId": "C00772", "Category": "교육" }, + { "Name": "CH.치즈인더트랩", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1006/C06801.png", "ServiceId": "C06801", "Category": "드라마" }, + { "Name": "애니플러스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0904/C00901.png", "ServiceId": "C00901", "Category": "어린이/만화" }, + { "Name": "YTN사이언스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0222/C15347.png", "ServiceId": "C15347", "Category": "다큐/정보" }, + { "Name": "JTBC2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0901/C15741.png", "ServiceId": "C15741", "Category": "음악/오락" }, + { "Name": "TV CHOSUN 2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0901/C00585.png", "ServiceId": "C00585", "Category": "음악/오락" }, + { "Name": "채널A플러스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241229/1456/C17141.png", "ServiceId": "C17141", "Category": "뉴스/재테크" }, + { "Name": "MBN 플러스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0221/C17142.png", "ServiceId": "C17142", "Category": "다큐/정보" }, + { "Name": "히스토리", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0221/C17341.png", "ServiceId": "C17341", "Category": "드라마" }, + { "Name": "YTN2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0229/C01101.png", "ServiceId": "C01101", "Category": "다큐/정보" }, + { "Name": "CH.악마판사", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51369.png", "ServiceId": "C51369", "Category": "드라마" }, + { "Name": "CH.너는 나의 봄", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51282.png", "ServiceId": "C51282", "Category": "드라마" }, + { "Name": "CH.효리네민박1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1011/C51370.png", "ServiceId": "C51370", "Category": "음악/오락" }, + { "Name": "CH.오 나의 귀신님", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0959/C07261.png", "ServiceId": "C07261", "Category": "드라마" }, + { "Name": "CH.로맨스가 필요해2012", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0529/C01064.png", "ServiceId": "C01064", "Category": "드라마" }, + { "Name": "CH.신의퀴즈4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0728/C07681.png", "ServiceId": "C07681", "Category": "드라마" }, + { "Name": "애니맥스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0225/C04042.png", "ServiceId": "C04042", "Category": "어린이/만화" }, + { "Name": "ANIBOX", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0903/C05441.png", "ServiceId": "C05441", "Category": "어린이/만화" }, + { "Name": "LIFETIME", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0233/C00611.png", "ServiceId": "C00611", "Category": "여성/홈쇼핑" }, + { "Name": "CH.슬기로운 의사생활 시즌2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0641/C51373.png", "ServiceId": "C51373", "Category": "드라마" }, + { "Name": "CH.걸스플래닛999:소녀대전", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0106/C51299.png", "ServiceId": "C51299", "Category": "음악/오락" }, + { "Name": "CH.식스센스2", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51304.png", "ServiceId": "C51304", "Category": "음악/오락" }, + { "Name": "CH.송민호의 파일럿", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51302.png", "ServiceId": "C51302", "Category": "음악/오락" }, + { "Name": "CH.슬기로운 산촌생활", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0640/C51389.png", "ServiceId": "C51389", "Category": "음악/오락" }, + { "Name": "CH.해치지 않아", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1009/C51310.png", "ServiceId": "C51310", "Category": "음악/오락" }, + { "Name": "CH.키마이라", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51311.png", "ServiceId": "C51311", "Category": "드라마" }, + { "Name": "CH.지리산", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51312.png", "ServiceId": "C51312", "Category": "드라마" }, + { "Name": "CH.어사와 조이", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51448.png", "ServiceId": "C51448", "Category": "드라마" }, + { "Name": "CH.바퀴달린집3", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51452.png", "ServiceId": "C51452", "Category": "음악/오락" }, + { "Name": "CH.갯마을 차차차", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51396.png", "ServiceId": "C51396", "Category": "드라마" }, + { "Name": "CH.고스트 닥터", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51399.png", "ServiceId": "C51399", "Category": "드라마" }, + { "Name": "CH.알쓸범잡2", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51402.png", "ServiceId": "C51402", "Category": "다큐/정보" }, + { "Name": "CH.스물다섯 스물하나", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51459.png", "ServiceId": "C51459", "Category": "드라마" }, + { "Name": "CH.군검사 도베르만", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0511/C51407.png", "ServiceId": "C51407", "Category": "드라마" }, + { "Name": "tvN SPORTS", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0903/C51404.png", "ServiceId": "C51404", "Category": "스포츠/취미" }, + { "Name": "CH.골프왕", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51457.png", "ServiceId": "C51457", "Category": "스포츠/취미" }, + { "Name": "CH.우리 이혼했어요", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51458.png", "ServiceId": "C51458", "Category": "음악/오락" }, + { "Name": "CH.어쩌다 사장2", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51464.png", "ServiceId": "C51464", "Category": "음악/오락" }, + { "Name": "CH.식스센스3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0708/C51467.png", "ServiceId": "C51467", "Category": "음악/오락" }, + { "Name": "CH.살인자의 쇼핑목록", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0117/C51469.png", "ServiceId": "C51469", "Category": "드라마" }, + { "Name": "CH.우리들의 블루스", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51470.png", "ServiceId": "C51470", "Category": "드라마" }, + { "Name": "CH.UFC 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0740/C51421.png", "ServiceId": "C51421", "Category": "스포츠/취미" }, + { "Name": "CH.월드복싱 슈퍼매치 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0841/C51479.png", "ServiceId": "C51479", "Category": "스포츠/취미" }, + { "Name": "CH.2022 AFC U23 아시안컵 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0546/C51422.png", "ServiceId": "C51422", "Category": "스포츠/취미" }, + { "Name": "CH.2022 AFC 챔피언스리그 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0552/C51424.png", "ServiceId": "C51424", "Category": "스포츠/취미" }, + { "Name": "CH.2022 AFC 여자아시안컵 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0549/C51480.png", "ServiceId": "C51480", "Category": "스포츠/취미" }, + { "Name": "CH.2022 카타르월드컵 아시아 최종 예선 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0600/C51425.png", "ServiceId": "C51425", "Category": "스포츠/취미" }, + { "Name": "CH.벌거벗은 한국사", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51475.png", "ServiceId": "C51475", "Category": "교육" }, + { "Name": "CH.백패커", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51420.png", "ServiceId": "C51420", "Category": "음악/오락" }, + { "Name": "CH.뿅뿅 지구오락실", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51550.png", "ServiceId": "C51550", "Category": "음악/오락" }, + { "Name": "CH.조선 정신과 의사 유세풍", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1004/C51433.png", "ServiceId": "C51433", "Category": "드라마" }, + { "Name": "CH.미스터트롯&미스트롯-영웅들의 탄생", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51434.png", "ServiceId": "C51434", "Category": "음악/오락" }, + { "Name": "CH.텐트 밖은 유럽", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51436.png", "ServiceId": "C51436", "Category": "음악/오락" }, + { "Name": "CH.작은 아씨들", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51438.png", "ServiceId": "C51438", "Category": "드라마" }, + { "Name": "CH.월수금화목토", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51649.png", "ServiceId": "C51649", "Category": "드라마" }, + { "Name": "CH.스트릿 맨 파이터", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51653.png", "ServiceId": "C51653", "Category": "음악/오락" }, + { "Name": "CH.슈룹", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0032/C51748.png", "ServiceId": "C51748", "Category": "드라마" }, + { "Name": "CH.바퀴 달린 집4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0553/C51749.png", "ServiceId": "C51749", "Category": "음악/오락" }, + { "Name": "CH.연예인 매니저로 살아남기", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51658.png", "ServiceId": "C51658", "Category": "드라마" }, + { "Name": "CH.내 어깨를 봐 탈골 됐잖아", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51662.png", "ServiceId": "C51662", "Category": "음악/오락" }, + { "Name": "CH.쇼미 더 머니11", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0638/C51663.png", "ServiceId": "C51663", "Category": "음악/오락" }, + { "Name": "CH.인생에 한 번쯤 킬리만자로", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51664.png", "ServiceId": "C51664", "Category": "음악/오락" }, + { "Name": "CH.한도초과", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51665.png", "ServiceId": "C51665", "Category": "음악/오락" }, + { "Name": "CH.돈쭐내러 왔습니다", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51849.png", "ServiceId": "C51849", "Category": "음악/오락" }, + { "Name": "CH.환혼: 빛과 그림자", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1011/C51952.png", "ServiceId": "C51952", "Category": "드라마" }, + { "Name": "CH.미씽: 그들이 있었다2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0702/C51953.png", "ServiceId": "C51953", "Category": "드라마" }, + { "Name": "CH.알쓸인잡", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0843/C51852.png", "ServiceId": "C51852", "Category": "다큐/정보" }, + { "Name": "CH.캐나다 체크인", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51954.png", "ServiceId": "C51954", "Category": "음악/오락" }, + { "Name": "CH.조선 정신과 의사 유세풍 2", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51854.png", "ServiceId": "C51854", "Category": "드라마" }, + { "Name": "CH.일타스캔들", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52047.png", "ServiceId": "C52047", "Category": "드라마" }, + { "Name": "CH.고독한 훈련사", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51855.png", "ServiceId": "C51855", "Category": "음악/오락" }, + { "Name": "CH.화사쇼", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1010/C51856.png", "ServiceId": "C51856", "Category": "음악/오락" }, + { "Name": "CH.청춘월담", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52050.png", "ServiceId": "C52050", "Category": "드라마" }, + { "Name": "CH.성스러운 아이돌", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51858.png", "ServiceId": "C51858", "Category": "드라마" }, + { "Name": "CH.현지인 브리핑, 지금 우리 나라는", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52051.png", "ServiceId": "C52051", "Category": "다큐/정보" }, + { "Name": "CH.보이즈 플래닛", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0624/C52052.png", "ServiceId": "C52052", "Category": "음악/오락" }, + { "Name": "CH.서진이네", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52053.png", "ServiceId": "C52053", "Category": "음악/오락" }, + { "Name": "CH.그림형제", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52057.png", "ServiceId": "C52057", "Category": "크리에이터TV" }, + { "Name": "CH.판도라 : 조작된 낙원", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51859.png", "ServiceId": "C51859", "Category": "드라마" }, + { "Name": "CH.명의들의 경고", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0536/C51860.png", "ServiceId": "C51860", "Category": "다큐/정보" }, + { "Name": "CH.텐트 밖은 유럽 스페인 편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1007/C51861.png", "ServiceId": "C51861", "Category": "음악/오락" }, + { "Name": "CH.조선의 사랑꾼", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51862.png", "ServiceId": "C51862", "Category": "음악/오락" }, + { "Name": "CH.스틸러", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0033/C52058.png", "ServiceId": "C52058", "Category": "드라마" }, + { "Name": "CH.패밀리", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51865.png", "ServiceId": "C51865", "Category": "드라마" }, + { "Name": "CH.아주 사적인 동남아", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52059.png", "ServiceId": "C52059", "Category": "음악/오락" }, + { "Name": "CH.장사천재 백사장", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C52060.png", "ServiceId": "C52060", "Category": "음악/오락" }, + { "Name": "CH.구미호뎐 1938", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0122/C51866.png", "ServiceId": "C51866", "Category": "드라마" }, + { "Name": "CH.하이스코어", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241112/0459/C51867.png", "ServiceId": "C51867", "Category": "드라마" }, + { "Name": "CH.걸스 나잇 아웃", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230808/C52062.png", "ServiceId": "C52062", "Category": "음악/오락" }, + { "Name": "CH.부산촌놈 in 시드니", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230814/C52063.png", "ServiceId": "C52063", "Category": "음악/오락" }, + { "Name": "CH.이로운 사기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230822/C52064.png", "ServiceId": "C52064", "Category": "드라마" }, + { "Name": "CH.텐트 밖은 유럽 노르웨이 편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230829/C52066.png", "ServiceId": "C52066", "Category": "음악/오락" }, + { "Name": "CH.회장님네 사람들", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230905/C52068.png", "ServiceId": "C52068", "Category": "음악/오락" }, + { "Name": "CH.동네스타 K3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230912/C52075.png", "ServiceId": "C52075", "Category": "음악/오락" }, + { "Name": "CH.뿅뿅 지구오락실2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230919/C52077.png", "ServiceId": "C52077", "Category": "음악/오락" }, + { "Name": "CH.이번 생도 잘 부탁해", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230926/C52078.png", "ServiceId": "C52078", "Category": "드라마" }, + { "Name": "CH.크라임씬 1~3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52069.png", "ServiceId": "C52069", "Category": "음악/오락" }, + { "Name": "CH.방구석 1열", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52070.png", "ServiceId": "C52070", "Category": "음악/오락" }, + { "Name": "CH.댄스가수 유랑단", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231004/C52079.png", "ServiceId": "C52079", "Category": "음악/오락" }, + { "Name": "CH.히든싱어", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52071.png", "ServiceId": "C52071", "Category": "음악/오락" }, + { "Name": "CH.짠내골프", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231010/C52080.png", "ServiceId": "C52080", "Category": "음악/오락" }, + { "Name": "CH.뭉쳐야뜬다 1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52072.png", "ServiceId": "C52072", "Category": "음악/오락" }, + { "Name": "CH.100일의 기적", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231010/C52081.png", "ServiceId": "C52081", "Category": "음악/오락" }, + { "Name": "CH.힘쎈 여자 도봉순", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52073.png", "ServiceId": "C52073", "Category": "드라마" }, + { "Name": "CH.알고있지만", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20230911/C52074.png", "ServiceId": "C52074", "Category": "드라마" }, + { "Name": "CH.소용없어 거짓말", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231010/C52083.png", "ServiceId": "C52083", "Category": "드라마" }, + { "Name": "CH.삼백만 년 전 야생 탐험 : 손둥 동굴", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231120/0500/C52088.png", "ServiceId": "C52088", "Category": "음악/오락" }, + { "Name": "CH.형따라 마야로 : 아홉 개의 열쇠", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231120/0505/C52089.png", "ServiceId": "C52089", "Category": "음악/오락" }, + { "Name": "CH.아라문의 검", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231201/0744/C52090.png", "ServiceId": "C52090", "Category": "드라마" }, + { "Name": "CH.스트릿 우먼 파이터2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231212/0143/C52091.png", "ServiceId": "C52091", "Category": "음악/오락" }, + { "Name": "CH.반짝이는 워터멜론", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20231219/0131/C52092.png", "ServiceId": "C52092", "Category": "드라마" }, + { "Name": "CH.콩 심은 데 콩 나고 팥 심은 데 팥 난다", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240102/0539/C52098.png", "ServiceId": "C52098", "Category": "음악/오락" }, + { "Name": "CH.초대형 노래방 서바이벌 VS", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240102/0539/C52099.png", "ServiceId": "C52099", "Category": "음악/오락" }, + { "Name": "CH.무인도의 디바", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240102/0539/C52100.png", "ServiceId": "C52100", "Category": "드라마" }, + { "Name": "CH.어쩌다 사장3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240102/0539/C52101.png", "ServiceId": "C52101", "Category": "음악/오락" }, + { "Name": "CH.골프스타K", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240129/0728/C52103.png", "ServiceId": "C52103", "Category": "음악/오락" }, + { "Name": "CH.장사천재 백사장2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240129/0730/C52104.png", "ServiceId": "C52104", "Category": "음악/오락" }, + { "Name": "CH.스트릿댄스 걸스 파이터2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240129/0731/C52105.png", "ServiceId": "C52105", "Category": "음악/오락" }, + { "Name": "CH.마에스트라", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240129/0732/C52106.png", "ServiceId": "C52106", "Category": "드라마" }, + { "Name": "CH.LG 트윈스 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0922/C52142.png", "ServiceId": "C52142", "Category": "스포츠/취미" }, + { "Name": "CH.NC 다이노스 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0925/C52141.png", "ServiceId": "C52141", "Category": "스포츠/취미" }, + { "Name": "CH.SSG 랜더스 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0926/C52140.png", "ServiceId": "C52140", "Category": "스포츠/취미" }, + { "Name": "CH.KT 위즈 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0927/C52139.png", "ServiceId": "C52139", "Category": "스포츠/취미" }, + { "Name": "CH.두산 베어스 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20250113/0718/C52138.png", "ServiceId": "C52138", "Category": "스포츠/취미" }, + { "Name": "CH.KIA 타이거즈 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0929/C52137.png", "ServiceId": "C52137", "Category": "스포츠/취미" }, + { "Name": "CH.롯데 자이언츠 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0930/C52136.png", "ServiceId": "C52136", "Category": "스포츠/취미" }, + { "Name": "CH.LG 트윈스 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0446/C52108.png", "ServiceId": "C52108", "Category": "스포츠/취미" }, + { "Name": "CH.삼성 라이온즈 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0930/C52135.png", "ServiceId": "C52135", "Category": "스포츠/취미" }, + { "Name": "CH.NC 다이노스 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0446/C52109.png", "ServiceId": "C52109", "Category": "스포츠/취미" }, + { "Name": "CH.한화 이글스 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241213/1714/C52134.png", "ServiceId": "C52134", "Category": "스포츠/취미" }, + { "Name": "CH.SSG 랜더스 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0445/C52110.png", "ServiceId": "C52110", "Category": "스포츠/취미" }, + { "Name": "CH.키움 히어로즈 지난 경기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0932/C52133.png", "ServiceId": "C52133", "Category": "스포츠/취미" }, + { "Name": "CH.KT 위즈 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0445/C52111.png", "ServiceId": "C52111", "Category": "스포츠/취미" }, + { "Name": "CH.내 남편과 결혼해줘", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240402/0243/C52143.png", "ServiceId": "C52143", "Category": "드라마" }, + { "Name": "CH.두산 베어스 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20250113/0718/C52112.png", "ServiceId": "C52112", "Category": "스포츠/취미" }, + { "Name": "CH.나나투어 with 세븐틴", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240402/0257/C52144.png", "ServiceId": "C52144", "Category": "음악/오락" }, + { "Name": "CH.KIA 타이거즈 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0444/C52113.png", "ServiceId": "C52113", "Category": "스포츠/취미" }, + { "Name": "CH.세작, 매혹된 자들", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240402/0436/C52146.png", "ServiceId": "C52146", "Category": "드라마" }, + { "Name": "CH.롯데 자이언츠 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0443/C52114.png", "ServiceId": "C52114", "Category": "스포츠/취미" }, + { "Name": "CH.빌드업 : 보컬 보이그룹 서바이벌", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241119/0151/C52145.png", "ServiceId": "C52145", "Category": "음악/오락" }, + { "Name": "CH.삼성 라이온즈 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0443/C52115.png", "ServiceId": "C52115", "Category": "스포츠/취미" }, + { "Name": "CH.LG 트윈스 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0827/C52156.png", "ServiceId": "C52156", "Category": "스포츠/취미" }, + { "Name": "CH.한화 이글스 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241213/1710/C52116.png", "ServiceId": "C52116", "Category": "스포츠/취미" }, + { "Name": "CH.NC 다이노스 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0828/C52155.png", "ServiceId": "C52155", "Category": "스포츠/취미" }, + { "Name": "CH.키움 히어로즈 2023 시즌 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0442/C52117.png", "ServiceId": "C52117", "Category": "스포츠/취미" }, + { "Name": "CH.SSG 랜더스 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0828/C52154.png", "ServiceId": "C52154", "Category": "스포츠/취미" }, + { "Name": "CH.KT 위즈 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0829/C52153.png", "ServiceId": "C52153", "Category": "스포츠/취미" }, + { "Name": "CH.두산 베어스 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20250113/0717/C52152.png", "ServiceId": "C52152", "Category": "스포츠/취미" }, + { "Name": "CH.KIA 타이거즈 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0830/C52151.png", "ServiceId": "C52151", "Category": "스포츠/취미" }, + { "Name": "CH.롯데 자이언츠 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0830/C52150.png", "ServiceId": "C52150", "Category": "스포츠/취미" }, + { "Name": "CH.삼성 라이온즈 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241022/0831/C52149.png", "ServiceId": "C52149", "Category": "스포츠/취미" }, + { "Name": "CH.한화 이글스 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241213/1713/C52148.png", "ServiceId": "C52148", "Category": "스포츠/취미" }, + { "Name": "CH.키움 히어로즈 하이라이트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241028/0432/C52147.png", "ServiceId": "C52147", "Category": "스포츠/취미" }, + { "Name": "CH.웰컴투불로촌", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240507/0148/C52159.png", "ServiceId": "C52159", "Category": "음악/오락" }, + { "Name": "CH.웨딩 임파서블", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241119/0153/C52160.png", "ServiceId": "C52160", "Category": "드라마" }, + { "Name": "CH.커플팰리스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240507/0155/C52161.png", "ServiceId": "C52161", "Category": "음악/오락" }, + { "Name": "CH.줄 서는 식당2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0039/C52162.png", "ServiceId": "C52162", "Category": "음악/오락" }, + { "Name": "CH.눈물의 여왕", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0024/C52171.png", "ServiceId": "C52171", "Category": "드라마" }, + { "Name": "CH.아파트404", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0036/C52172.png", "ServiceId": "C52172", "Category": "음악/오락" }, + { "Name": "CH.텐트 밖은 유럽 남프랑스 편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240531/0926/C52173.png", "ServiceId": "C52173", "Category": "음악/오락" }, + { "Name": "CH.선재 업고 튀어", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240702/0754/C52178.png", "ServiceId": "C52178", "Category": "드라마" }, + { "Name": "CH.동네스타K4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240703/0855/C52179.png", "ServiceId": "C52179", "Category": "음악/오락" }, + { "Name": "CH.버섯도리 : 패밀리 대작전3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240708/0544/C52180.png", "ServiceId": "C52180", "Category": "어린이/만화" }, + { "Name": "CH.I-LAND2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240708/0547/C52181.png", "ServiceId": "C52181", "Category": "음악/오락" }, + { "Name": "CH. 진실 혹은 설정: 우아한 인생", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240801/0514/C52183.png", "ServiceId": "C52183", "Category": "음악/오락" }, + { "Name": "CH. 졸업", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240801/0645/C52184.png", "ServiceId": "C52184", "Category": "드라마" }, + { "Name": "CH. 지락이의 뛰뛰빵빵", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240801/0649/C52185.png", "ServiceId": "C52185", "Category": "음악/오락" }, + { "Name": "CH. 플레이어2: 꾼들의 전쟁", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240801/0659/C52186.png", "ServiceId": "C52186", "Category": "드라마" }, + { "Name": "CH.백패커2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240902/0118/C52191.png", "ServiceId": "C52191", "Category": "음악/오락" }, + { "Name": "CH.밥이나 한잔해", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241119/0151/C52192.png", "ServiceId": "C52192", "Category": "음악/오락" }, + { "Name": "CH.여권들고 등짝 스매싱", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240902/0126/C52193.png", "ServiceId": "C52193", "Category": "음악/오락" }, + { "Name": "CH.서진이네2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20240902/0129/C52194.png", "ServiceId": "C52194", "Category": "음악/오락" }, + { "Name": "CH.감사합니다", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241002/0116/C52198.png", "ServiceId": "C52198", "Category": "드라마" }, + { "Name": "CH.우연일까", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241002/0227/C52200.png", "ServiceId": "C52200", "Category": "드라마" }, + { "Name": "CH.언니네 산지직송", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241002/0229/C52201.png", "ServiceId": "C52201", "Category": "음악/오락" }, + { "Name": "CH.WORLD OF ARrC", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241002/0230/C52202.png", "ServiceId": "C52202", "Category": "음악/오락" }, + { "Name": "CH. MY ARTi FLIM", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241002/0232/C52203.png", "ServiceId": "C52203", "Category": "음악/오락" }, + { "Name": "CH.Re:제로부터 시작하는 이세계 생활 감독판 1기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241015/0223/C52209.png", "ServiceId": "C52209", "Category": "어린이/만화" }, + { "Name": "CH.지박소년 하나코 군 1기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241015/0229/C52211.png", "ServiceId": "C52211", "Category": "어린이/만화" }, + { "Name": "Ch. 엄마친구아들", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241111/2240/C52214.png", "ServiceId": "C52214", "Category": "드라마" }, + { "Name": "CH.천 개의 눈 : 무삭제판", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241111/2246/C52230.png", "ServiceId": "C52230", "Category": "다큐/정보" }, + { "Name": "CH.오버로드 1기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241120/0213/C52233.png", "ServiceId": "C52233", "Category": "어린이/만화" }, + { "Name": "CH.무쇠소녀단", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2335/C52236.png", "ServiceId": "C52236", "Category": "음악/오락" }, + { "Name": "CH.삼시세끼 Light", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2342/C52237.png", "ServiceId": "C52237", "Category": "음악/오락" }, + { "Name": "CH.로드투킹덤 : ACE OF ACE", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2345/C52238.png", "ServiceId": "C52238", "Category": "음악/오락" }, + { "Name": "CH.스테이지 파이터", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2349/C52239.png", "ServiceId": "C52239", "Category": "음악/오락" }, + { "Name": "CH.정년이", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2352/C52240.png", "ServiceId": "C52240", "Category": "드라마" }, + { "Name": "CH.김창옥쇼3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241202/2355/C52241.png", "ServiceId": "C52241", "Category": "음악/오락" }, + { "Name": "CH.텐트 밖은 유럽 - 로맨틱 이탈리아", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20250103/0611/C52250.png", "ServiceId": "C52250", "Category": "음악/오락" }, + { "Name": "CH.문과VS이과, 놀라운 증명", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20250103/0614/C52251.png", "ServiceId": "C52251", "Category": "음악/오락" }, + { "Name": "CH.응답하라 1997", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1001/C04761.png", "ServiceId": "C04761", "Category": "드라마" }, + { "Name": "CH.간 떨어지는 동거", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0751/C51276.png", "ServiceId": "C51276", "Category": "드라마" }, + { "Name": "CH.어느 날 우리 집 현관으로 멸망이 들어왔다", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51365.png", "ServiceId": "C51365", "Category": "드라마" }, + { "Name": "CH.마인", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51364.png", "ServiceId": "C51364", "Category": "드라마" }, + { "Name": "CH.바퀴달린집2", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51360.png", "ServiceId": "C51360", "Category": "음악/오락" }, + { "Name": "CH.알쓸범잡", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C51359.png", "ServiceId": "C51359", "Category": "다큐/정보" }, + { "Name": "CH.킹덤:레전더리 워", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241119/0153/C51358.png", "ServiceId": "C51358", "Category": "음악/오락" }, + { "Name": "CH.어쩌다사장", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0844/C51357.png", "ServiceId": "C51357", "Category": "음악/오락" }, + { "Name": "국회방송(NATV)", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241104/0215/C51263.png", "ServiceId": "C51263", "Category": "다큐/정보" }, + { "Name": "CH.마우스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0533/C51262.png", "ServiceId": "C51262", "Category": "드라마" }, + { "Name": "CH.빈센조", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0626/C51260.png", "ServiceId": "C51260", "Category": "드라마" }, + { "Name": "tvN STORY", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0903/C51258.png", "ServiceId": "C51258", "Category": "음악/오락" }, + { "Name": "CH.벌거벗은 세계사", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0029/C51255.png", "ServiceId": "C51255", "Category": "다큐/정보" }, + { "Name": "CH.윤스테이", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0959/C51348.png", "ServiceId": "C51348", "Category": "음악/오락" }, + { "Name": "CH.여신강림", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0845/C51254.png", "ServiceId": "C51254", "Category": "드라마" }, + { "Name": "CH.경이로운 소문", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0022/C50948.png", "ServiceId": "C50948", "Category": "드라마" }, + { "Name": "CH.바닷길 선발대", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0027/C50942.png", "ServiceId": "C50942", "Category": "음악/오락" }, + { "Name": "CH.산후조리원", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0628/C50841.png", "ServiceId": "C50841", "Category": "드라마" }, + { "Name": "CH.써치", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0035/C50341.png", "ServiceId": "C50341", "Category": "드라마" }, + { "Name": "CH.신서유기8", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0724/C49941.png", "ServiceId": "C49941", "Category": "음악/오락" }, + { "Name": "CH.신서유기 레전드 정주행", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241021/0556/C49742.png", "ServiceId": "C49742", "Category": "음악/오락" }, + { "Name": "CH. 놀토 레전드 정주행", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241023/0502/C49741.png", "ServiceId": "C49741", "Category": "음악/오락" }, + { "Name": "CH.미씽:그들이있었다", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0027/C47641.png", "ServiceId": "C47641", "Category": "드라마" }, + { "Name": "CH.비밀의숲2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0626/C47141.png", "ServiceId": "C47141", "Category": "드라마" }, + { "Name": "CH.여름방학", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0845/C46842.png", "ServiceId": "C46842", "Category": "음악/오락" }, + { "Name": "CH.노는언니", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0523/C46241.png", "ServiceId": "C46241", "Category": "음악/오락" }, + { "Name": "CH.바퀴 달린 집", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0553/C46041.png", "ServiceId": "C46041", "Category": "음악/오락" }, + { "Name": "CH.찾았다 스트레이키즈 최신판", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1005/C45941.png", "ServiceId": "C45941", "Category": "음악/오락" }, + { "Name": "CH.사이코지만 괜찮아", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0627/C45741.png", "ServiceId": "C45741", "Category": "드라마" }, + { "Name": "CH.(아는건 별로 없지만) 가족입니다", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0035/C45443.png", "ServiceId": "C45443", "Category": "드라마" }, + { "Name": "CH.번외수사", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0623/C45241.png", "ServiceId": "C45241", "Category": "드라마" }, + { "Name": "CH.삼시세끼 어촌편5", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0632/C45043.png", "ServiceId": "C45043", "Category": "음악/오락" }, + { "Name": "CH.오 마이 베이비", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0959/C45042.png", "ServiceId": "C45042", "Category": "드라마" }, + { "Name": "CH.화양연화", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1010/C44941.png", "ServiceId": "C44941", "Category": "드라마" }, + { "Name": "CH.밥블레스유2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0554/C44843.png", "ServiceId": "C44843", "Category": "음악/오락" }, + { "Name": "CH.슬기로운 의사생활", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0640/C44644.png", "ServiceId": "C44644", "Category": "드라마" }, + { "Name": "CH.연애공식구하리", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0956/C44542.png", "ServiceId": "C44542", "Category": "어린이/만화" }, + { "Name": "CH.대탈출3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0525/C44541.png", "ServiceId": "C44541", "Category": "음악/오락" }, + { "Name": "CH.하이바이마마", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1008/C43941.png", "ServiceId": "C43941", "Category": "드라마" }, + { "Name": "CH.냐옹은 페이크다", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0022/C43642.png", "ServiceId": "C43642", "Category": "음악/오락" }, + { "Name": "CH.머니게임", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0535/C42843.png", "ServiceId": "C42843", "Category": "드라마" }, + { "Name": "CH.엑스가리온", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0037/C42842.png", "ServiceId": "C42842", "Category": "어린이/만화" }, + { "Name": "CH.블랙독", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0029/C42341.png", "ServiceId": "C42341", "Category": "드라마" }, + { "Name": "CH.사랑의불시착", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0627/C42241.png", "ServiceId": "C42241", "Category": "드라마" }, + { "Name": "CH.강식당 3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0104/C41442.png", "ServiceId": "C41442", "Category": "음악/오락" }, + { "Name": "CH.싸이코패스 다이어리", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0729/C41641.png", "ServiceId": "C41641", "Category": "드라마" }, + { "Name": "CH.마녀사냥", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0532/C41243.png", "ServiceId": "C41243", "Category": "음악/오락" }, + { "Name": "CH.아는형님", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C40841.png", "ServiceId": "C40841", "Category": "음악/오락" }, + { "Name": "CH.멜로가 체질", "Icon_url": "https://image.tving.com/upload/cms/caic/CAIC0100/C41346.png", "ServiceId": "C41346", "Category": "드라마" }, + { "Name": "CH.식스센스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0707/C40542.png", "ServiceId": "C40542", "Category": "음악/오락" }, + { "Name": "CH.대탈출4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0525/C40441.png", "ServiceId": "C40441", "Category": "음악/오락" }, + { "Name": "CH.신서유기7", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0724/C41043.png", "ServiceId": "C41043", "Category": "음악/오락" }, + { "Name": "CH.스트리트푸드파이터 시즌2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0639/C41141.png", "ServiceId": "C41141", "Category": "음악/오락" }, + { "Name": "CH.시베리아 선발대", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0646/C39743.png", "ServiceId": "C39743", "Category": "음악/오락" }, + { "Name": "CH.삼시세끼 산촌편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0631/C38542.png", "ServiceId": "C38542", "Category": "음악/오락" }, + { "Name": "CH.호텔 델루나", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0041/C37742.png", "ServiceId": "C37742", "Category": "드라마" }, + { "Name": "CH.강식당 2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0104/C36741.png", "ServiceId": "C36741", "Category": "음악/오락" }, + { "Name": "CH.검색어를 입력하세요 WWW", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0117/C36541.png", "ServiceId": "C36541", "Category": "드라마" }, + { "Name": "CH.아스달연대기", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0036/C36441.png", "ServiceId": "C36441", "Category": "드라마" }, + { "Name": "CH.호구들의 감빵생활", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1010/C35941.png", "ServiceId": "C35941", "Category": "음악/오락" }, + { "Name": "CH.구해줘2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0510/C35641.png", "ServiceId": "C35641", "Category": "드라마" }, + { "Name": "CH.현지에서 먹힐까 시즌3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1009/C35341.png", "ServiceId": "C35341", "Category": "음악/오락" }, + { "Name": "CH.대탈출2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0525/C34941.png", "ServiceId": "C34941", "Category": "음악/오락" }, + { "Name": "CH.자백", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0039/C34541.png", "ServiceId": "C34541", "Category": "드라마" }, + { "Name": "CH.스페인하숙", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0034/C34741.png", "ServiceId": "C34741", "Category": "음악/오락" }, + { "Name": "CH.막돼먹은 영애씨17", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0534/C33042.png", "ServiceId": "C33042", "Category": "드라마" }, + { "Name": "CH.로맨스는 별책부록", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0529/C32641.png", "ServiceId": "C32641", "Category": "드라마" }, + { "Name": "CH.놀라운 토요일", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241104/0922/C32441.png", "ServiceId": "C32441", "Category": "음악/오락" }, + { "Name": "CH.신서유기6", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0723/C31642.png", "ServiceId": "C31642", "Category": "음악/오락" }, + { "Name": "CH.신서유기5", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0710/C31741.png", "ServiceId": "C31741", "Category": "음악/오락" }, + { "Name": "CH.남자친구", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0522/C30641.png", "ServiceId": "C30641", "Category": "드라마" }, + { "Name": "CH.신의퀴즈:리부트", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0728/C30141.png", "ServiceId": "C30141", "Category": "드라마" }, + { "Name": "CH.알쓸신잡3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0843/C29141.png", "ServiceId": "C29141", "Category": "다큐/정보" }, + { "Name": "CH.유 퀴즈 온 더 블럭", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0959/C28841.png", "ServiceId": "C28841", "Category": "음악/오락" }, + { "Name": "CH.백일의 낭군님", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0556/C28442.png", "ServiceId": "C28442", "Category": "드라마" }, + { "Name": "CH.대탈출", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0524/C28241.png", "ServiceId": "C28241", "Category": "음악/오락" }, + { "Name": "CH.아는 와이프", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0035/C27641.png", "ServiceId": "C27641", "Category": "드라마" }, + { "Name": "CH.미스터션샤인", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0536/C26941.png", "ServiceId": "C26941", "Category": "드라마" }, + { "Name": "CH.꽃보다 할배 리턴즈", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0521/C26841.png", "ServiceId": "C26841", "Category": "음악/오락" }, + { "Name": "CH.라이프온마스", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0529/C26542.png", "ServiceId": "C26542", "Category": "드라마" }, + { "Name": "CH.나의 아저씨", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0522/C25741.png", "ServiceId": "C25741", "Category": "드라마" }, + { "Name": "CH.김비서가 왜 그럴까", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0511/C25641.png", "ServiceId": "C25641", "Category": "음악/오락" }, + { "Name": "CH.스트리트 푸드 파이터", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0639/C25441.png", "ServiceId": "C25441", "Category": "음악/오락" }, + { "Name": "CH.내 딸의 남자들3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0523/C24441.png", "ServiceId": "C24441", "Category": "음악/오락" }, + { "Name": "CH.내 딸의 남자들2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0523/C24341.png", "ServiceId": "C24341", "Category": "음악/오락" }, + { "Name": "CH.내 딸의 남자들1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0522/C24241.png", "ServiceId": "C24241", "Category": "음악/오락" }, + { "Name": "CH.라이브", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0528/C22842.png", "ServiceId": "C22842", "Category": "드라마" }, + { "Name": "JTBC4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC2300/ko/20241112/0901/C22041.png", "ServiceId": "C22041", "Category": "음악/오락" }, + { "Name": "CH.윤식당2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1000/C21441.png", "ServiceId": "C21441", "Category": "음악/오락" }, + { "Name": "CH.강식당 1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241113/0021/C20141.png", "ServiceId": "C20141", "Category": "음악/오락" }, + { "Name": "CH.막돼먹은 영애씨16", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0533/C19742.png", "ServiceId": "C19742", "Category": "드라마" }, + { "Name": "CH.슬기로운 감빵생활", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0640/C18742.png", "ServiceId": "C18742", "Category": "드라마" }, + { "Name": "CH.알쓸신잡2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0842/C17941.png", "ServiceId": "C17941", "Category": "음악/오락" }, + { "Name": "CH.이번 생은 처음이라", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1002/C17441.png", "ServiceId": "C17441", "Category": "드라마" }, + { "Name": "CH.삼시세끼 바다목장편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0630/C15942.png", "ServiceId": "C15942", "Category": "음악/오락" }, + { "Name": "CH.명불허전", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0535/C15849.png", "ServiceId": "C15849", "Category": "드라마" }, + { "Name": "CH.구해줘", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0510/C15941.png", "ServiceId": "C15941", "Category": "드라마" }, + { "Name": "CH.알쓸신잡1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0842/C15843.png", "ServiceId": "C15843", "Category": "음악/오락" }, + { "Name": "CH.신서유기 시즌4", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0710/C15841.png", "ServiceId": "C15841", "Category": "음악/오락" }, + { "Name": "CH.비밀의 숲", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0625/C15296.png", "ServiceId": "C15296", "Category": "드라마" }, + { "Name": "CH.윤식당", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1000/C15470.png", "ServiceId": "C15470", "Category": "음악/오락" }, + { "Name": "CH.집밥 백선생3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1005/C15456.png", "ServiceId": "C15456", "Category": "음악/오락" }, + { "Name": "CH.신서유기 시즌3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0709/C15271.png", "ServiceId": "C15271", "Category": "음악/오락" }, + { "Name": "CH.도깨비", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0526/C15442.png", "ServiceId": "C15442", "Category": "드라마" }, + { "Name": "CH.삼시세끼 어촌편3", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0632/C15249.png", "ServiceId": "C15249", "Category": "음악/오락" }, + { "Name": "CH.THE K2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241023/0710/C15243.png", "ServiceId": "C15243", "Category": "드라마" }, + { "Name": "CH.싸우자 귀신아", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0729/C14948.png", "ServiceId": "C14948", "Category": "드라마" }, + { "Name": "CH.삼시세끼 고창편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0630/C14946.png", "ServiceId": "C14946", "Category": "음악/오락" }, + { "Name": "CH.또 오해영", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0527/C14641.png", "ServiceId": "C14641", "Category": "드라마" }, + { "Name": "CH.원나잇 푸드트립", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20250109/0440/C14541.png", "ServiceId": "C14541", "Category": "음악/오락" }, + { "Name": "CH.신서유기 시즌2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0709/C14049.png", "ServiceId": "C14049", "Category": "음악/오락" }, + { "Name": "CH.막돼먹은 영애씨13", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0533/C08881.png", "ServiceId": "C08881", "Category": "드라마" }, + { "Name": "CH.응답하라 1994", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/1001/C08461.png", "ServiceId": "C08461", "Category": "드라마" }, + { "Name": "CH.더 지니어스:그랜드 파이널", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0526/C08501.png", "ServiceId": "C08501", "Category": "음악/오락" }, + { "Name": "CH.식샤를 합시다 시즌2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0646/C08641.png", "ServiceId": "C08641", "Category": "드라마" }, + { "Name": "CH.삼시세끼 어촌편2", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0631/C08681.png", "ServiceId": "C08681", "Category": "음악/오락" }, + { "Name": "CH.삼시세끼 정선편", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0635/C08682.png", "ServiceId": "C08682", "Category": "음악/오락" }, + { "Name": "CH.삼시세끼 어촌편1", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0631/C08683.png", "ServiceId": "C08683", "Category": "음악/오락" }, + { "Name": "CH.꽃보다청춘", "Icon_url": "https://image.tving.com/ntgs/contents/CTC/caic/CAIC0100/ko/20241024/0512/C08741.png", "ServiceId": "C08741", "Category": "음악/오락" } + ] + }, + "SPOTV": { + "UPDATED": "2025-01-19T00:04:39.503708", + "TOTAL": 7, + "CHANNELS": [ + { "Name": "SPOTV", "ServiceId": 9, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20211215/710e7a39f7910d4d828047e1222e2dce.png" }, + { "Name": "SPOTV2", "ServiceId": 10, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20211215/55509fff870629e4db8865ed79988c56.png" }, + { "Name": "SPOTV Golf & Health", "ServiceId": 11, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20211215/0011057bb69a02e3b3827ab82b57b849.png" }, + { "Name": "SPOTV PRIME", "ServiceId": 1, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20240304/7e36da649acf52299449f70a1412fdbf.png" }, + { "Name": "SPOTV PRIME2", "ServiceId": 2, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20240304/8b3a24e8f2e7e5a5d591d94e1420990d.png" }, + { "Name": "SPOTV PRIME+", "ServiceId": 15, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20240304/784ba49d34bc3b29f93ab906a3adabc0.png" }, + { "Name": "NBA TV", "ServiceId": 3, "Icon_url": "https://cdn.spotvnow.co.kr/src/upload/image/20211215/0bc2fb062edbd8f2a05b64e291b148b8.png" } + ] + } +} \ No newline at end of file diff --git a/epg2xml/__init__.py b/epg2xml/__init__.py new file mode 100644 index 0000000..89a8e29 --- /dev/null +++ b/epg2xml/__init__.py @@ -0,0 +1,15 @@ +__title__ = "epg2xml" +__description__ = "웹 상의 소스를 취합하여 EPG를 만드는 프로그램" +__url__ = "https://github.com/epg2xml/epg2xml" + +try: + from ._version import version +except ImportError: + try: + from setuptools_scm import get_version + + version = get_version(version_scheme="release-branch-semver") + except Exception: + version = "2.6.0.dev0" + +__version__ = version diff --git a/epg2xml/__main__.py b/epg2xml/__main__.py new file mode 100644 index 0000000..f2a6ed8 --- /dev/null +++ b/epg2xml/__main__.py @@ -0,0 +1,72 @@ +import logging +import socket +import sys +from contextlib import ExitStack + +from epg2xml.config import Config +from epg2xml.providers import EPGHandler + +############################################################ +# INIT +############################################################ + +# load initial config +conf = Config() + +# load config file +conf.load() + +# logger +log = logging.getLogger("MAIN") + +############################################################ +# MAIN +############################################################ + + +def main(): + log.debug("Loading providers...") + h = EPGHandler(conf.configs) + + if (cmd := conf.args["cmd"]) in ["run", "fromdb"]: + with ExitStack() as stack: + # redirecting stdout to... + if xmlfile := conf.settings["xmlfile"]: + sys.stdout = stack.enter_context(open(xmlfile, "w", encoding="utf-8")) + elif xmlsock := conf.settings["xmlsock"]: + sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) + sock.connect(xmlsock) + sys.stdout = stack.enter_context(sock.makefile("w")) + + if cmd == "fromdb": + log.debug("Importing from dbfile...") + h.from_db(conf.settings["dbfile"]) + else: + log.debug("Loading service channels...") + h.load_channels(conf.settings["channelfile"], conf.settings["parallel"]) + + log.debug("Loading requested channels...") + h.load_req_channels() + + log.debug("Getting EPG...") + h.get_programs(conf.settings["parallel"]) + + if (dbfile := conf.settings["dbfile"]) is not None: + log.debug("Exporting to dbfile...") + h.to_db(dbfile) + + log.info("Writing xmltv.dtd header...") + h.to_xml() + + log.info("Done") + elif cmd == "update_channels": + h.load_channels(conf.settings["channelfile"], conf.settings["parallel"]) + else: + raise NotImplementedError(f"Unknown command: {cmd}") + + +if __name__ == "__main__": + try: + main() + except KeyboardInterrupt: + sys.exit(0) diff --git a/epg2xml/config.py b/epg2xml/config.py new file mode 100644 index 0000000..1aed7c3 --- /dev/null +++ b/epg2xml/config.py @@ -0,0 +1,389 @@ +import argparse +import errno +import json +import logging +import os +import sys +from copy import copy +from logging.handlers import RotatingFileHandler +from pathlib import Path +from typing import Union + +from epg2xml import __description__, __title__, __url__, __version__ +from epg2xml.utils import dump_json + +# suppress modules logging +logging.getLogger("requests").setLevel(logging.ERROR) +logging.getLogger("urllib3.connectionpool").setLevel(logging.ERROR) + +logger = logging.getLogger("CONFIG") + + +def setup_root_logger( + *, + handler: logging.Handler = None, + formatter: logging.Formatter = None, + level: Union[int, str] = None, +) -> None: + if level is None: + level = logging.INFO + + if handler is None: + # logging to console, stderr by default + handler = logging.StreamHandler() + + if formatter is None: + log_fmt = "%(asctime)-15s %(levelname)-8s %(name)-7s %(lineno)4d: %(message)s" + formatter = logging.Formatter(log_fmt, datefmt="%Y/%m/%d %H:%M:%S") + + handler.setFormatter(formatter) + logging.getLogger().addHandler(handler) + logging.getLogger().setLevel(level) + + +class Singleton(type): + _instances = {} + + def __call__(cls, *args, **kwargs): + if cls not in cls._instances: + cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs) + + return cls._instances[cls] + + +class Config: + __metaclass__ = Singleton + + base_config = { + "GLOBAL": { + "ENABLED": True, + "FETCH_LIMIT": 2, + "ID_FORMAT": "{ServiceId}.{Source.lower()}", + "ADD_REBROADCAST_TO_TITLE": False, + "ADD_EPNUM_TO_TITLE": True, + "ADD_DESCRIPTION": True, + "ADD_XMLTV_NS": False, + "GET_MORE_DETAILS": False, + "ADD_CHANNEL_ICON": True, + "HTTP_PROXY": None, + }, + "KT": { + "MY_CHANNELS": [], + }, + "LG": { + "MY_CHANNELS": [], + }, + "SK": { + "MY_CHANNELS": [], + }, + "DAUM": { + "MY_CHANNELS": [], + }, + "NAVER": { + "MY_CHANNELS": [], + }, + "WAVVE": { + "MY_CHANNELS": [], + }, + "TVING": { + "MY_CHANNELS": [], + }, + "SPOTV": { + "MY_CHANNELS": [], + }, + } + + base_settings = { + "config": { + "argv": "--config", + "env": "EPG2XML_CONFIG", + "default": str(Path.cwd().joinpath("epg2xml.json")), + }, + "logfile": { + "argv": "--logfile", + "env": "EPG2XML_LOGFILE", + "default": None, + }, + "loglevel": { + "argv": "--loglevel", + "env": "EPG2XML_LOGLEVEL", + "default": "INFO", + }, + "channelfile": { + "argv": "--channelfile", + "env": "EPG2XML_CHANNELFILE", + "default": str(Path.cwd().joinpath("Channel.json")), + }, + "xmlfile": { + "argv": "--xmlfile", + "env": "EPG2XML_XMLFILE", + "default": None, + }, + "xmlsock": { + "argv": "--xmlsock", + "env": "EPG2XML_XMLSOCK", + "default": None, + }, + "parallel": { + "argv": "--parallel", + "env": "EPG2XML_PARALLEL", + "default": False, + }, + "dbfile": { + "argv": "--dbfile", + "env": "EPG2XML_DBFILE", + "default": None, + }, + } + + def __init__(self): + """Initializes config""" + # Args and settings + self.args = self.parse_args() + self.settings = self.get_settings() + # Configs + self.configs = None + + @property + def default_config(self): + """reserved for adding extra fields""" + cfg = copy(self.base_config) + return cfg + + def __inner_upgrade(self, settings1, settings2, key=None, overwrite=False): + sub_upgraded = False + merged = copy(settings2) + + if isinstance(settings1, dict): + for k, v in settings1.items(): + # missing k + if k not in settings2: + merged[k] = v + sub_upgraded = True + if not key: + logger.info("Added %r config option: %s", str(k), str(v)) + else: + logger.info("Added %r to config option %r: %s", str(k), str(key), str(v)) + continue + + # iterate children + if isinstance(v, (dict, list)): + merged[k], did_upgrade = self.__inner_upgrade( + settings1[k], settings2[k], key=k, overwrite=overwrite + ) + sub_upgraded = did_upgrade or sub_upgraded + elif settings1[k] != settings2[k] and overwrite: + merged = settings1 + sub_upgraded = True + elif isinstance(settings1, list) and key: + for v in settings1: + if v not in settings2: + merged.append(v) + sub_upgraded = True + logger.info("Added to config option %r: %s", str(key), str(v)) + continue + + return merged, sub_upgraded + + def upgrade_configs(self, currents): + fields_env = {} + + # ENV gets priority: ENV > config.json + for name, _ in self.base_config.items(): + if name in os.environ: + # Use JSON decoder to get same behaviour as config file + fields_env[name] = json.JSONDecoder().decode(os.environ[name]) + logger.debug("setting from ENV --%s=%s", name, fields_env[name]) + + # Update in-memory config with environment settings + currents.update(fields_env) + + # Do inner upgrade + upgraded_configs, upgraded = self.__inner_upgrade(self.base_config, currents) + return upgraded_configs, upgraded + + def load_with_hidden(self, cfg_old): + cfg_new = copy(cfg_old) + for p in cfg_new: + # push items in GLOBAL as defaults + for k, v in cfg_old["GLOBAL"].items(): + if k not in cfg_new[p]: + cfg_new[p][k] = v + del cfg_new["GLOBAL"] + self.configs = cfg_new + + def load(self): + logger.debug("Loading config...") + if not Path(self.settings["config"]).exists(): + logger.info("No config file found. Creating a default one...") + self.save(self.default_config) + + try: + with open(self.settings["config"], "r", encoding="utf-8") as fp: + cfg, upgraded = self.upgrade_configs(json.load(fp)) + + # Save config if upgraded + if upgraded: + self.save(cfg) + sys.exit(0) + + self.load_with_hidden(cfg) + except (json.decoder.JSONDecodeError, ValueError): + logger.exception("Please check your config here: %s", self.settings["config"]) + sys.exit(1) + + def save(self, cfg, exitOnSave=True): + dump_json(self.settings["config"], cfg) + if exitOnSave: + logger.info("Your config was upgraded. You may check the changes here: %r", self.settings["config"]) + + if exitOnSave: + sys.exit(0) + + def get_settings(self): + setts = {} + for name, data in self.base_settings.items(): + # Argrument priority: cmd < environment < default + try: + value = None + # Command line argument + if self.args[name]: + value = self.args[name] + logger.debug("setting from ARG --%s=%s", name, value) + + # Envirnoment variable + elif data["env"] in os.environ: + value = os.environ[data["env"]] + logger.debug("setting from ENV --%s=%s", data["env"], value) + + # Default + else: + value = data["default"] + logger.debug("setting by default %s=%s", data["argv"], value) + + setts[name] = value + + except Exception: + logger.exception("Exception raised on setting value: %r", name) + + # checking existance of important files' dir + for argname in ["config", "logfile", "channelfile", "dbfile"]: + filepath = setts[argname] + if filepath is not None and not Path(filepath).parent.exists(): + logger.error(FileNotFoundError(errno.ENOENT, os.strerror(errno.ENOENT), filepath)) + sys.exit(1) + + # handling of boolean args + for argname in ["parallel"]: + if isinstance(setts[argname], str): + setts[argname] = setts[argname].lower() in ("y", "yes", "t", "true", "on", "1") + + # logging to file + if setts["logfile"] is not None: + fileHandler = RotatingFileHandler(setts["logfile"], maxBytes=2 * 1024**2, backupCount=5, encoding="utf-8") + setup_root_logger(handler=fileHandler) + + # set configured log level + logging.getLogger().setLevel(setts["loglevel"]) + + return setts + + # Parse command line arguments + def parse_args(self): + parser = argparse.ArgumentParser( + prog=__title__, + description=__description__, + epilog=f"Online help: <{__url__}>", + formatter_class=argparse.RawTextHelpFormatter, + ) + + # Mode + parser.add_argument( + "cmd", + metavar="command", + choices=("run", "fromdb", "update_channels"), + help=('"run": XML 형식으로 출력\n' '"fromdb": dbfile로부터 불러오기\n' '"update_channels": 채널 정보 업데이트'), + ) + + # Display version info + parser.add_argument( + "-v", + "--version", + action="version", + version=f"{__title__} v{__version__}", + ) + + # Config file + parser.add_argument( + self.base_settings["config"]["argv"], + nargs="?", + const=None, + help=f"config file path (default: {self.base_settings['config']['default']})", + ) + + # Log file + parser.add_argument( + self.base_settings["logfile"]["argv"], + nargs="?", + const=None, + help=f"log file path (default: {self.base_settings['logfile']['default']})", + ) + + # Log level + parser.add_argument( + self.base_settings["loglevel"]["argv"], + choices=("DEBUG", "INFO", "WARNING", "ERROR"), + help=f"loglevel (default: {self.base_settings['loglevel']['default']})", + ) + + # Channel file + parser.add_argument( + self.base_settings["channelfile"]["argv"], + nargs="?", + const=None, + help=f"channel file path (default: {self.base_settings['channelfile']['default']})", + ) + + # XML file + parser.add_argument( + self.base_settings["xmlfile"]["argv"], + nargs="?", + const=None, + help="write output to file if specified", + ) + + # XML socket + parser.add_argument( + self.base_settings["xmlsock"]["argv"], + nargs="?", + const=None, + help="send output to unix socket if specified", + ) + + # Run in Parallel + parser.add_argument( + self.base_settings["parallel"]["argv"], + action="store_true", + help="run in parallel", + ) + + # DB file + parser.add_argument( + self.base_settings["dbfile"]["argv"], + nargs="?", + const=None, + help="export/import data to/from db", + ) + + # Print help by default if no arguments + if len(sys.argv) == 1: + parser.print_help() + + sys.exit(0) + + else: + return vars(parser.parse_args()) + + +# logging +setup_root_logger() diff --git a/epg2xml/epg2xml.json b/epg2xml/epg2xml.json new file mode 100644 index 0000000..ee98574 --- /dev/null +++ b/epg2xml/epg2xml.json @@ -0,0 +1,299 @@ +{ + "GLOBAL": { + "ENABLED": true, + "FETCH_LIMIT": 2, + "ID_FORMAT": "{ServiceId}.{Source.lower()}", + "ADD_REBROADCAST_TO_TITLE": false, + "ADD_EPNUM_TO_TITLE": true, + "ADD_DESCRIPTION": true, + "ADD_XMLTV_NS": false, + "GET_MORE_DETAILS": false, + "ADD_CHANNEL_ICON": true, + "HTTP_PROXY": null + }, + "KT": { + "MY_CHANNELS": [ + { "Name": "SBS", "No": "5", "ServiceId": "5" }, + { "Name": "KBS2", "No": "7", "ServiceId": "7" }, + { "Name": "KBS1", "No": "9", "ServiceId": "9" }, + { "Name": "MBC", "No": "11", "ServiceId": "11" }, + { "Name": "EBS", "No": "13", "ServiceId": "13" }, + { "Name": "EBS2", "No": "95", "ServiceId": "95" }, + { "Name": "NS홈쇼핑", "No": "2", "ServiceId": "2" }, + { "Name": "롯데홈쇼핑", "No": "4", "ServiceId": "4" }, + { "Name": "CJ ONSTYLE", "No": "6", "ServiceId": "6" }, + { "Name": "GS SHOP", "No": "8", "ServiceId": "8" }, + { "Name": "현대홈쇼핑", "No": "10", "ServiceId": "10" }, + { "Name": "kt알파쇼핑", "No": "12", "ServiceId": "12" }, + { "Name": "홈&쇼핑", "No": "14", "ServiceId": "14" }, + { "Name": "OBS", "No": "26", "ServiceId": "26" }, + { "Name": "SK stoa", "No": "17", "ServiceId": "17" }, + { "Name": "신세계쇼핑", "No": "20", "ServiceId": "20" }, + { "Name": "공영쇼핑", "No": "22", "ServiceId": "22" }, + { "Name": "GS MY SHOP", "No": "28", "ServiceId": "28" }, + { "Name": "쇼핑엔티", "No": "30", "ServiceId": "30" }, + { "Name": "LOTTE OneTV", "No": "32", "ServiceId": "32" }, + { "Name": "W쇼핑", "No": "34", "ServiceId": "34" }, + { "Name": "현대홈쇼핑+샵", "No": "36", "ServiceId": "36" }, + { "Name": "CJ ONSTYLE+", "No": "38", "ServiceId": "38" }, + { "Name": "NS Shop+", "No": "42", "ServiceId": "42" }, + { "Name": "JTBC", "No": "15", "ServiceId": "15" }, + { "Name": "MBN", "No": "16", "ServiceId": "16" }, + { "Name": "채널A", "No": "18", "ServiceId": "18" }, + { "Name": "TV조선", "No": "19", "ServiceId": "19" }, + { "Name": "ENA", "No": "1", "ServiceId": "1" }, + { "Name": "tvN", "No": "3", "ServiceId": "3" }, + { "Name": "tvN STORY", "No": "21", "ServiceId": "21" }, + { "Name": "ENA DRAMA", "No": "29", "ServiceId": "29" }, + { "Name": "MBC Dramanet", "No": "31", "ServiceId": "31" }, + { "Name": "KBS Drama", "No": "35", "ServiceId": "35" }, + { "Name": "SBS Plus", "No": "37", "ServiceId": "37" }, + { "Name": "JTBC2", "No": "39", "ServiceId": "39" }, + { "Name": "tvN DRAMA", "No": "45", "ServiceId": "45" }, + { "Name": "드라마큐브", "No": "46", "ServiceId": "46" }, + { "Name": "Dramax", "No": "47", "ServiceId": "47" }, + { "Name": "E채널", "No": "48", "ServiceId": "48" }, + { "Name": "GTV", "No": "67", "ServiceId": "67" }, + { "Name": "CNTV", "No": "68", "ServiceId": "68" }, + { "Name": "TVCHOSUN2", "No": "69", "ServiceId": "69" }, + { "Name": "FUN TV", "No": "71", "ServiceId": "71" }, + { "Name": "하이라이트TV", "No": "74", "ServiceId": "74" }, + { "Name": "JTBC4", "No": "75", "ServiceId": "75" }, + { "Name": "Lifetime", "No": "78", "ServiceId": "78" }, + { "Name": "Edge TV", "No": "79", "ServiceId": "79" }, + { "Name": "MBC ON", "No": "80", "ServiceId": "80" }, + { "Name": "동아TV", "No": "82", "ServiceId": "82" }, + { "Name": "KBS Story", "No": "83", "ServiceId": "83" }, + { "Name": "ONCE", "No": "88", "ServiceId": "88" }, + { "Name": "디원", "No": "89", "ServiceId": "89" }, + { "Name": "WeLike", "No": "146", "ServiceId": "146" }, + { "Name": "MBC Every1", "No": "0", "ServiceId": "0" }, + { "Name": "Mnet", "No": "27", "ServiceId": "27" }, + { "Name": "tvN SHOW", "No": "40", "ServiceId": "40" }, + { "Name": "KBS Joy", "No": "41", "ServiceId": "41" }, + { "Name": "SBS funE", "No": "43", "ServiceId": "43" }, + { "Name": "채널S", "No": "44", "ServiceId": "44" }, + { "Name": "디스커버리채널", "No": "50", "ServiceId": "50" }, + { "Name": "SBS F!L", "No": "66", "ServiceId": "66" }, + { "Name": "ENA STORY", "No": "72", "ServiceId": "72" }, + { "Name": "스마일티브이플러스", "No": "84", "ServiceId": "84" }, + { "Name": "코미디TV", "No": "85", "ServiceId": "85" }, + { "Name": "K STAR", "No": "87", "ServiceId": "87" }, + { "Name": "아이넷TV", "No": "92", "ServiceId": "92" }, + { "Name": "채널이엠", "No": "93", "ServiceId": "93" }, + { "Name": "CMCTV", "No": "94", "ServiceId": "94" }, + { "Name": "엔터TV", "No": "96", "ServiceId": "96" }, + { "Name": "채널A 플러스", "No": "98", "ServiceId": "98" }, + { "Name": "MBN Plus", "No": "99", "ServiceId": "99" }, + { "Name": "HQ+", "No": "111", "ServiceId": "111" }, + { "Name": "CH.WIDE", "No": "130", "ServiceId": "130" }, + { "Name": "SPOTV K", "No": "135", "ServiceId": "135" }, + { "Name": "SBS M", "No": "136", "ServiceId": "136" }, + { "Name": "MBC M", "No": "137", "ServiceId": "137" }, + { "Name": "뉴트로TV", "No": "138", "ServiceId": "138" }, + { "Name": "ORFEO", "No": "139", "ServiceId": "139" }, + { "Name": "한경arteTV", "No": "140", "ServiceId": "140" }, + { "Name": "History", "No": "141", "ServiceId": "141" }, + { "Name": "GMTV", "No": "142", "ServiceId": "142" }, + { "Name": "가요TV", "No": "143", "ServiceId": "143" }, + { "Name": "실버아이TV", "No": "144", "ServiceId": "144" }, + { "Name": "이벤트TV", "No": "145", "ServiceId": "145" }, + { "Name": "붐TV", "No": "147", "ServiceId": "147" }, + { "Name": "아이넷라이프", "No": "148", "ServiceId": "148" }, + { "Name": "ENA PLAY", "No": "999", "ServiceId": "999" }, + { "Name": "OCN", "No": "33", "ServiceId": "33" }, + { "Name": "시네마천국", "No": "49", "ServiceId": "49" }, + { "Name": "AsiaN", "No": "73", "ServiceId": "73" }, + { "Name": "OCN Movies2", "No": "76", "ServiceId": "76" }, + { "Name": "AsiaM", "No": "90", "ServiceId": "90" }, + { "Name": "월드 클래식 무비", "No": "91", "ServiceId": "91" }, + { "Name": "스크린", "No": "101", "ServiceId": "101" }, + { "Name": "채널차이나", "No": "102", "ServiceId": "102" }, + { "Name": "mplex", "No": "103", "ServiceId": "103" }, + { "Name": "THE MOVIE", "No": "104", "ServiceId": "104" }, + { "Name": "인디필름", "No": "105", "ServiceId": "105" }, + { "Name": "씨네프", "No": "106", "ServiceId": "106" }, + { "Name": "채널나우", "No": "107", "ServiceId": "107" }, + { "Name": "채널 J", "No": "108", "ServiceId": "108" }, + { "Name": "에이플드라마", "No": "109", "ServiceId": "109" }, + { "Name": "중화TV", "No": "110", "ServiceId": "110" }, + { "Name": "CH.U", "No": "112", "ServiceId": "112" }, + { "Name": "AXN", "No": "113", "ServiceId": "113" }, + { "Name": "텔레노벨라", "No": "114", "ServiceId": "114" }, + { "Name": "Focus Prime", "No": "115", "ServiceId": "115" }, + { "Name": "채널W", "No": "116", "ServiceId": "116" }, + { "Name": "TVasiaPlus", "No": "117", "ServiceId": "117" }, + { "Name": "HITS", "No": "118", "ServiceId": "118" }, + { "Name": "OCN Movies", "No": "998", "ServiceId": "998" }, + { "Name": "SPOTV", "No": "51", "ServiceId": "51" }, + { "Name": "SPOTV2", "No": "52", "ServiceId": "52" }, + { "Name": "IB SPORTS", "No": "53", "ServiceId": "53" }, + { "Name": "SkySports", "No": "54", "ServiceId": "54" }, + { "Name": "GOLF&PBA", "No": "55", "ServiceId": "55" }, + { "Name": "JTBC Golf", "No": "56", "ServiceId": "56" }, + { "Name": "SBSGOLF", "No": "57", "ServiceId": "57" }, + { "Name": "SBS Sports", "No": "58", "ServiceId": "58" }, + { "Name": "KBS N Sports", "No": "59", "ServiceId": "59" }, + { "Name": "MBC SPORTS+", "No": "60", "ServiceId": "60" }, + { "Name": "JTBC GOLF&SPORTS", "No": "61", "ServiceId": "61" }, + { "Name": "SBS Golf2", "No": "62", "ServiceId": "62" }, + { "Name": "SPOTV Golf & Health", "No": "63", "ServiceId": "63" }, + { "Name": "tvN SPORTS", "No": "77", "ServiceId": "77" }, + { "Name": "Eurosport", "No": "119", "ServiceId": "119" }, + { "Name": "OLIFE", "No": "86", "ServiceId": "86" }, + { "Name": "FTV", "No": "120", "ServiceId": "120" }, + { "Name": "한국낚시방송", "No": "121", "ServiceId": "121" }, + { "Name": "바둑TV", "No": "122", "ServiceId": "122" }, + { "Name": "K바둑", "No": "123", "ServiceId": "123" }, + { "Name": "브레인TV", "No": "126", "ServiceId": "126" }, + { "Name": "빌리어즈티비", "No": "127", "ServiceId": "127" }, + { "Name": "마운틴TV", "No": "128", "ServiceId": "128" }, + { "Name": "AfreecaTV", "No": "129", "ServiceId": "129" }, + { "Name": "STN", "No": "131", "ServiceId": "131" }, + { "Name": "생활체육TV", "No": "132", "ServiceId": "132" }, + { "Name": "스크린골프존", "No": "133", "ServiceId": "133" }, + { "Name": "STORYTV", "No": "134", "ServiceId": "134" }, + { "Name": "MAXPORTS", "No": "167", "ServiceId": "167" }, + { "Name": "폴라리스TV", "No": "226", "ServiceId": "226" }, + { "Name": "채널 키즈랜드", "No": "960", "ServiceId": "960" }, + { "Name": "ZooMoo", "No": "961", "ServiceId": "961" }, + { "Name": "Dream Works Channel", "No": "962", "ServiceId": "962" }, + { "Name": "Miao Mi", "No": "968", "ServiceId": "968" }, + { "Name": "뽀요TV", "No": "976", "ServiceId": "976" }, + { "Name": "Cbeebies", "No": "977", "ServiceId": "977" }, + { "Name": "브라보키즈", "No": "980", "ServiceId": "980" }, + { "Name": "대교 노리Q", "No": "981", "ServiceId": "981" }, + { "Name": "EBS KIDS", "No": "983", "ServiceId": "983" }, + { "Name": "KBS Kids", "No": "984", "ServiceId": "984" }, + { "Name": "캐리TV", "No": "985", "ServiceId": "985" }, + { "Name": "JEI 재능TV", "No": "986", "ServiceId": "986" }, + { "Name": "대교 어린이TV", "No": "987", "ServiceId": "987" }, + { "Name": "핑크퐁채널", "No": "988", "ServiceId": "988" }, + { "Name": "부메랑", "No": "989", "ServiceId": "989" }, + { "Name": "애니플러스", "No": "990", "ServiceId": "990" }, + { "Name": "카툰네트워크", "No": "991", "ServiceId": "991" }, + { "Name": "애니박스", "No": "993", "ServiceId": "993" }, + { "Name": "애니원", "No": "994", "ServiceId": "994" }, + { "Name": "ANIMAX", "No": "995", "ServiceId": "995" }, + { "Name": "Tooniverse", "No": "996", "ServiceId": "996" }, + { "Name": "다빈치러닝", "No": "969", "ServiceId": "969" }, + { "Name": "edu TV", "No": "970", "ServiceId": "970" }, + { "Name": "EBS PLUS2", "No": "971", "ServiceId": "971" }, + { "Name": "EBS PLUS1", "No": "972", "ServiceId": "972" }, + { "Name": "EBS English", "No": "973", "ServiceId": "973" }, + { "Name": "플레이런TV", "No": "974", "ServiceId": "974" }, + { "Name": "JEI EnglishTV", "No": "975", "ServiceId": "975" }, + { "Name": "NBS한국농업방송", "No": "100", "ServiceId": "100" }, + { "Name": "엑스원", "No": "156", "ServiceId": "156" }, + { "Name": "KBS LIFE", "No": "158", "ServiceId": "158" }, + { "Name": "리얼TV", "No": "161", "ServiceId": "161" }, + { "Name": "Now제주TV", "No": "162", "ServiceId": "162" }, + { "Name": "9colors", "No": "163", "ServiceId": "163" }, + { "Name": "MBC NET", "No": "164", "ServiceId": "164" }, + { "Name": "BBC Earth", "No": "172", "ServiceId": "172" }, + { "Name": "HGTV", "No": "173", "ServiceId": "173" }, + { "Name": "Animal Planet", "No": "174", "ServiceId": "174" }, + { "Name": "YTN 사이언스", "No": "175", "ServiceId": "175" }, + { "Name": "채널뷰", "No": "176", "ServiceId": "176" }, + { "Name": "CCTV4", "No": "177", "ServiceId": "177" }, + { "Name": "Discovery Science", "No": "178", "ServiceId": "178" }, + { "Name": "연합뉴스TV", "No": "23", "ServiceId": "23" }, + { "Name": "YTN", "No": "24", "ServiceId": "24" }, + { "Name": "SBS Biz", "No": "25", "ServiceId": "25" }, + { "Name": "한국경제TV", "No": "180", "ServiceId": "180" }, + { "Name": "MTN 머니투데이방송", "No": "181", "ServiceId": "181" }, + { "Name": "매일경제TV", "No": "182", "ServiceId": "182" }, + { "Name": "이데일리TV", "No": "183", "ServiceId": "183" }, + { "Name": "서울경제TV", "No": "184", "ServiceId": "184" }, + { "Name": "토마토증권통", "No": "185", "ServiceId": "185" }, + { "Name": "팍스경제TV", "No": "186", "ServiceId": "186" }, + { "Name": "연합뉴스경제TV", "No": "187", "ServiceId": "187" }, + { "Name": "토마토집통", "No": "188", "ServiceId": "188" }, + { "Name": "NHK WP", "No": "189", "ServiceId": "189" }, + { "Name": "ABC Australia", "No": "190", "ServiceId": "190" }, + { "Name": "CNN International", "No": "191", "ServiceId": "191" }, + { "Name": "BBC News", "No": "192", "ServiceId": "192" }, + { "Name": "Euro News", "No": "193", "ServiceId": "193" }, + { "Name": "CGTN", "No": "194", "ServiceId": "194" }, + { "Name": "Fox News", "No": "195", "ServiceId": "195" }, + { "Name": "Bloomberg", "No": "196", "ServiceId": "196" }, + { "Name": "CNBC", "No": "197", "ServiceId": "197" }, + { "Name": "TV5MONDE", "No": "198", "ServiceId": "198" }, + { "Name": "DW-TV Asia+", "No": "200", "ServiceId": "200" }, + { "Name": "KTV", "No": "64", "ServiceId": "64" }, + { "Name": "국회방송", "No": "65", "ServiceId": "65" }, + { "Name": "HD OBS W", "No": "81", "ServiceId": "81" }, + { "Name": "다문화티브이", "No": "97", "ServiceId": "97" }, + { "Name": "컬쳐플러스", "No": "149", "ServiceId": "149" }, + { "Name": "MGTV", "No": "157", "ServiceId": "157" }, + { "Name": "YTN2", "No": "159", "ServiceId": "159" }, + { "Name": "OUN", "No": "160", "ServiceId": "160" }, + { "Name": "채널i", "No": "165", "ServiceId": "165" }, + { "Name": "아리랑 TV", "No": "166", "ServiceId": "166" }, + { "Name": "쿠키건강TV", "No": "169", "ServiceId": "169" }, + { "Name": "메디컬TV", "No": "171", "ServiceId": "171" }, + { "Name": "복지TV", "No": "199", "ServiceId": "199" }, + { "Name": "법률방송", "No": "213", "ServiceId": "213" }, + { "Name": "TBS TV", "No": "214", "ServiceId": "214" }, + { "Name": "헬스메디tv", "No": "215", "ServiceId": "215" }, + { "Name": "육아방송", "No": "217", "ServiceId": "217" }, + { "Name": "K-NET TV", "No": "221", "ServiceId": "221" }, + { "Name": "시니어TV", "No": "222", "ServiceId": "222" }, + { "Name": "소상공인시장tv", "No": "223", "ServiceId": "223" }, + { "Name": "지방자치TV", "No": "224", "ServiceId": "224" }, + { "Name": "디마티비", "No": "225", "ServiceId": "225" }, + { "Name": "가톨릭평화방송", "No": "231", "ServiceId": "231" }, + { "Name": "BBS불교방송", "No": "232", "ServiceId": "232" }, + { "Name": "BTN불교TV", "No": "233", "ServiceId": "233" }, + { "Name": "Good TV", "No": "234", "ServiceId": "234" }, + { "Name": "C Channel", "No": "235", "ServiceId": "235" }, + { "Name": "CTS기독교TV", "No": "236", "ServiceId": "236" }, + { "Name": "CGN", "No": "237", "ServiceId": "237" }, + { "Name": "CBS", "No": "238", "ServiceId": "238" }, + { "Name": "원음방송", "No": "239", "ServiceId": "239" }, + { "Name": "YCN유림방송", "No": "240", "ServiceId": "240" }, + { "Name": "STB상생방송", "No": "241", "ServiceId": "241" }, + { "Name": "TVCHOSUN3", "No": "250", "ServiceId": "250" }, + { "Name": "국악방송", "No": "251", "ServiceId": "251" }, + { "Name": "한국직업방송", "No": "252", "ServiceId": "252" }, + { "Name": "토마토클래식", "No": "253", "ServiceId": "253" }, + { "Name": "WeeTV", "No": "254", "ServiceId": "254" }, + { "Name": "BALL TV", "No": "255", "ServiceId": "255" }, + { "Name": "슬로우TV", "No": "256", "ServiceId": "256" }, + { "Name": "ONT", "No": "257", "ServiceId": "257" }, + { "Name": "채널칭", "No": "258", "ServiceId": "258" }, + { "Name": "채널s 플러스", "No": "259", "ServiceId": "259" }, + { "Name": "국방TV", "No": "260", "ServiceId": "260" }, + { "Name": "더라이프", "No": "261", "ServiceId": "261" }, + { "Name": "ONN 닥터TV", "No": "262", "ServiceId": "262" }, + { "Name": "EBC", "No": "263", "ServiceId": "263" }, + { "Name": "디스토리", "No": "264", "ServiceId": "264" }, + { "Name": "RNA", "No": "267", "ServiceId": "267" }, + { "Name": "리빙TV", "No": "276", "ServiceId": "276" }, + { "Name": "사회안전방송", "No": "278", "ServiceId": "278" }, + { "Name": "NBNTV", "No": "285", "ServiceId": "285" } + ] + }, + "LG": { + "MY_CHANNELS": [] + }, + "SK": { + "MY_CHANNELS": [] + }, + "DAUM": { + "MY_CHANNELS": [] + }, + "NAVER": { + "MY_CHANNELS": [] + }, + "WAVVE": { + "MY_CHANNELS": [ + ] + }, + "TVING": { + "MY_CHANNELS": [] + }, + "SPOTV": { + "MY_CHANNELS": [] + } +} \ No newline at end of file diff --git a/epg2xml/epg2xml.sh b/epg2xml/epg2xml.sh new file mode 100644 index 0000000..1fceba0 --- /dev/null +++ b/epg2xml/epg2xml.sh @@ -0,0 +1,2 @@ +epg2xml run + diff --git a/epg2xml/providers/__init__.py b/epg2xml/providers/__init__.py new file mode 100644 index 0000000..3757102 --- /dev/null +++ b/epg2xml/providers/__init__.py @@ -0,0 +1,525 @@ +import json +import logging +import re +import sqlite3 +import sys +from collections import Counter +from concurrent.futures import ThreadPoolExecutor +from contextlib import closing +from dataclasses import astuple, dataclass, fields +from datetime import datetime, timedelta +from functools import wraps +from importlib import import_module +from itertools import chain +from os import PathLike +from typing import Iterator, List, Literal, Tuple, Union + +import requests + +from epg2xml import __title__, __version__ +from epg2xml.utils import Element, PrefixLogger, RateLimiter, dump_json + +log = logging.getLogger("PROV") + + +PTN_TITLE = re.compile(r"(.*) \(?(\d+부)\)?") +PTN_SPACES = re.compile(r" {2,}") +CAT_KO2EN = { + "교양": "Arts / Culture (without music)", + "만화": "Cartoons / Puppets", + "교육": "Education / Science / Factual topics", + "취미": "Leisure hobbies", + "드라마": "Movie / Drama", + "영화": "Movie / Drama", + "음악": "Music / Ballet / Dance", + "뉴스": "News / Current affairs", + "다큐": "Documentary", + "라이프": "Documentary", + "시사/다큐": "Documentary", + "연예": "Show / Game show", + "스포츠": "Sports", + "홈쇼핑": "Advertisement / Shopping", +} +TAG_CREDITS = ( + "director", + "actor", + "writer", + "adapter", + "producer", + "composer", + "editor", + "presenter", + "commentator", + "guest", +) + + +@dataclass +class EPGProgram: + """For individual program entities""" + + channelid: str + stime: datetime = None + etime: datetime = None + title: str = None + title_sub: str = None + part_num: str = None + ep_num: str = None + categories: List[str] = None + rebroadcast: bool = False + rating: int = 0 + # not usually given by default + desc: str = None + poster_url: str = None + cast: List[dict] = None # 출연진 + crew: List[dict] = None # 제작진 + extras: List[str] = None + keywords: List[str] = None + + def sanitize(self) -> None: + for f in fields(self): + attr = getattr(self, f.name) + if f.type == List[str] and attr is not None: + setattr(self, f.name, [x.strip() for x in filter(bool, attr) if x.strip()]) + elif f.type == str: + setattr(self, f.name, (attr or "").strip()) + + def to_xml(self, cfg: dict) -> None: + self.sanitize() + + # local variables + stime = self.stime.strftime("%Y%m%d%H%M%S +0900") + etime = self.etime.strftime("%Y%m%d%H%M%S +0900") + title = self.title + title_sub = self.title_sub + cast = self.cast or [] + crew = self.crew or [] + categories = self.categories or [] + keywords = self.keywords or [] + episode = self.ep_num + rebroadcast = "재" if self.rebroadcast else "" + rating = "전체 관람가" if self.rating == 0 else f"{self.rating}세 이상 관람가" + + # programm + _p = Element("programme", start=stime, stop=etime, channel=self.channelid) + + # title, sub-title + if matches := PTN_TITLE.match(title): + title = matches.group(1).strip() + title_sub = (matches.group(2) + " " + title_sub).strip() + title = [ + title or title_sub or "제목 없음", + f"({episode}회)" if episode and cfg["ADD_EPNUM_TO_TITLE"] else "", + f"({rebroadcast})" if rebroadcast and cfg["ADD_REBROADCAST_TO_TITLE"] else "", + ] + title = PTN_SPACES.sub(" ", " ".join(filter(bool, title))) + _p.append(Element("title", title, lang="ko")) + if title_sub: + _p.append(Element("sub-title", title_sub, lang="ko")) + + # desc + if cfg["ADD_DESCRIPTION"]: + desc = [ + title, + f"부제 : {title_sub}" if title_sub else "", + f"방송 : {rebroadcast}방송" if rebroadcast else "", + f"회차 : {episode}회" if episode else "", + f"장르 : {','.join(categories)}" if categories else "", + f"출연 : {','.join(x['name'] for x in cast)}" if cast else "", + f"제작 : {','.join(x['name'] for x in crew)}" if crew else "", + f"등급 : {rating}", + self.desc, + ] + desc = PTN_SPACES.sub(" ", "\n".join(filter(bool, desc))) + _p.append(Element("desc", desc, lang="ko")) + + # credits + if cast or crew: + _c = Element("credits") + for cc in sorted(cast + crew, key=lambda x: TAG_CREDITS.index(x["title"])): + title = cc.pop("title") + name = cc.pop("name") + _c.append(Element(title, name, **cc)) + _p.append(_c) + + # categories + for cat_ko in categories: + _p.append(Element("category", cat_ko, lang="ko")) + if cat_en := CAT_KO2EN.get(cat_ko): + _p.append(Element("category", cat_en, lang="en")) + + # keywords + for keyword in keywords: + _p.append(Element("keyword", keyword, lang="ko")) + + # icon + if self.poster_url: + _p.append(Element("icon", src=self.poster_url)) + + # episode-num + if episode: + if cfg["ADD_XMLTV_NS"]: + try: + episode_ns = int(episode) - 1 + except ValueError: + episode_ns = int(episode.split(",", 1)[0]) - 1 + episode_ns = f"0.{str(episode_ns)}.0/0" + _p.append(Element("episode-num", episode_ns, system="xmltv_ns")) + else: + _p.append(Element("episode-num", episode, system="onscreen")) + + # previously-shown + if rebroadcast: + _p.append(Element("previously-shown")) + + # rating + if rating: + # TODO: 영상물등급위원회(KMRB)는 TV프로그램 심의에 관여하지 않으므로 수정이 필요 + _r = Element("rating", system="KMRB") + _r.append(Element("value", rating)) + _p.append(_r) + + # dumps + print(_p.tostring(level=1)) + + +class EPGChannel: + """For individual channel entities""" + + __slots__ = ["id", "src", "svcid", "name", "icon", "no", "category", "programs"] + + def __init__(self, channelinfo): + self.id: str = channelinfo["Id"] + self.src: str = channelinfo["Source"] + self.svcid: str = channelinfo["ServiceId"] + self.name: str = channelinfo["Name"] + self.icon: str = channelinfo.get("Icon_url") + self.no: str = channelinfo.get("No") + self.category: str = channelinfo.get("Category") + # placeholder + self.programs: List[EPGProgram] = [] + """ + 개별 EPGProgram이 소속 channelid를 가지고 있어서 굳이 EPGChannel의 하위 리스트로 관리해야할 + 이유는 없지만, endtime이 없는 EPG 항목을 위해 한 번에 써야할 필요가 있는 Provider가 있기에 + (kt, lg, skb, naver, daum) 채널 단위로 관리하는 편이 유리하다. + """ + + def __str__(self): + return f"{self.name} <{self.id}>" + + def set_etime(self) -> None: + """Completes missing program endtimes based on the successive relationship between programs.""" + for ind, prog in enumerate(self.programs): + if prog.etime: + continue + try: + prog.etime = self.programs[ind + 1].stime + except IndexError: + prog.etime = (prog.stime + timedelta(days=1)).replace(hour=0, minute=0, second=0) + + def to_xml(self) -> None: + chel = Element("channel", id=self.id) + # TODO: something better for display-name? + chel.append(Element("display-name", self.name)) + chel.append(Element("display-name", self.src)) + if self.no: + chel.append(Element("display-name", f"{self.no}")) + chel.append(Element("display-name", f"{self.no} {self.name}")) + chel.append(Element("display-name", f"{self.no} {self.src}")) + if self.icon: + chel.append(Element("icon", src=self.icon)) + print(chel.tostring(level=1)) + + +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36" + + +class EPGProvider: + """Base class for EPG Providers""" + + referer: str = None + title_regex: Union[str, re.Pattern] = None + tps: float = 1.0 + was_channel_updated: bool = False + + def __init__(self, cfg: dict): + self.provider_name = self.__class__.__name__ + self.cfg = cfg + self.sess = requests.Session() + self.sess.headers.update({"User-Agent": UA, "Referer": self.referer}) + if http_proxy := cfg["HTTP_PROXY"]: + self.sess.proxies.update({"http": http_proxy, "https": http_proxy}) + if self.title_regex: + self.title_regex = re.compile(self.title_regex) + self.request = RateLimiter(tps=self.tps)(self.__request) + # placeholders + self.svc_channels: List[dict] = [] + self.req_channels: List[EPGChannel] = [] + + def __request(self, url: str, method: str = "GET", **kwargs) -> str: + ret = "" + try: + r = self.sess.request(method=method, url=url, **kwargs) + try: + ret = r.json() + except (json.decoder.JSONDecodeError, ValueError): + ret = r.text + except requests.exceptions.HTTPError as e: + log.error("요청 중 에러: %s", e) + except Exception: + log.exception("요청 중 예외:") + return ret + + def load_svc_channels(self, channeljson: dict = None) -> None: + plog = PrefixLogger(log, f"[{self.provider_name:5s}]") + + # check if update required + try: + channelinfo = channeljson[self.provider_name.upper()] + total = channelinfo["TOTAL"] + channels = channelinfo["CHANNELS"] + assert total == len(channels), "TOTAL != len(CHANNELS)" + updated_at = datetime.fromisoformat(channelinfo["UPDATED"]) + if (datetime.now() - updated_at).total_seconds() <= 3600 * 24 * 4: + self.svc_channels = channels + plog.info("%03d service channels loaded from cache", len(channels)) + return + plog.debug("Updating service channels as outdated...") + except Exception as e: + plog.debug("Updating service channels as cache broken: %s", e) + + try: + channels = self.get_svc_channels() + except Exception: + plog.exception("Exception while retrieving service channels:") + else: + self.svc_channels = channels + self.was_channel_updated = True + plog.info("%03d service channels successfully fetched from server", len(channels)) + + def get_svc_channels(self) -> List[dict]: + raise NotImplementedError("method 'get_svc_channels' must be implemented") + + def load_req_channels(self) -> None: + """from MY_CHANNELS to req_channels""" + plog = PrefixLogger(log, f"[{self.provider_name:5s}]") + my_channels = self.cfg["MY_CHANNELS"] + if my_channels == "*": + plog.debug("Overriding all MY_CHANNELS by service channels...") + my_channels = self.svc_channels + if not my_channels: + return + req_channels = [] + svc_channels = {x["ServiceId"]: x for x in self.svc_channels} + for my_no, my_ch in enumerate(my_channels): + if "ServiceId" not in my_ch: + plog.warning("'ServiceId' Not Found: %s", my_ch) + continue + req_ch = svc_channels.pop(my_ch["ServiceId"], None) + if req_ch is None: + plog.warning("'ServiceId' Not in Service: %s", my_ch) + continue + for _k, _v in my_ch.items(): + if _v: + req_ch[_k] = _v + req_ch["Source"] = self.provider_name + req_ch.setdefault("No", str(my_no)) + if "Id" not in req_ch: + try: + req_ch["Id"] = eval(f"f'{self.cfg['ID_FORMAT']}'", None, req_ch) + except Exception: + req_ch["Id"] = f'{req_ch["ServiceId"]}.{req_ch["Source"].lower()}' + if not self.cfg["ADD_CHANNEL_ICON"]: + req_ch.pop("Icon_url", None) + req_channels.append(EPGChannel(req_ch)) + plog.info("요청 %3d - 불가 %3d = 최종 %3d", len(my_channels), len(my_channels) - len(req_channels), len(req_channels)) + self.req_channels = req_channels + + def write_channels(self) -> None: + for ch in self.req_channels: + if not ch.programs: + log.warning("Skip writing as no program entries found for '%s'", ch.id) + continue + ch.to_xml() + + def get_programs(self) -> None: + raise NotImplementedError("method 'get_programs' must be implemented") + + def write_programs(self) -> None: + for ch in self.req_channels: + for prog in ch.programs: + prog.to_xml(self.cfg) + ch.programs.clear() # for memory efficiency + + +def no_endtime(func): + @wraps(func) + def wrapped(self: EPGProvider, *args, **kwargs): + func(self, *args, **kwargs) + for ch in self.req_channels: + ch.set_etime() + + return wrapped + + +class EPGHandler: + """for handling EPGProviders""" + + def __init__(self, cfgs: dict): + self.providers: List[EPGProvider] = self.load_providers(cfgs) + + def load_providers(self, cfgs: dict) -> List[EPGProvider]: + providers = [] + for name, cfg in cfgs.items(): + if not cfg["ENABLED"]: + continue + try: + m = import_module(f"epg2xml.providers.{name.lower()}") + providers.append(getattr(m, name.upper())(cfg)) + except ModuleNotFoundError: + log.error("No such provider found: '%s'", name) + sys.exit(1) + return providers + + def load_channels(self, channelfile: str, parallel: bool = False) -> None: + try: + log.debug("Trying to load cached channels from json") + with open(channelfile, "r", encoding="utf-8") as fp: + channeljson = json.load(fp) + except (json.decoder.JSONDecodeError, ValueError, FileNotFoundError) as e: + log.debug("Failed to load cached channels from json: %s", e) + channeljson = {} + if parallel: + with ThreadPoolExecutor() as exe: + for p in self.providers: + exe.submit(p.load_svc_channels, channeljson=channeljson) + else: + for p in self.providers: + p.load_svc_channels(channeljson=channeljson) + if any(p.was_channel_updated for p in self.providers): + for p in self.providers: + channeljson[p.provider_name.upper()] = { + "UPDATED": datetime.now().isoformat(), + "TOTAL": len(p.svc_channels), + "CHANNELS": p.svc_channels, + } + dump_json(channelfile, channeljson) + log.info("Channel file was upgraded. You may check the changes here: %s", channelfile) + + def load_req_channels(self): + for p in self.providers: + p.load_req_channels() + + log.debug("Checking uniqueness of channelid...") + cids = [c.id for p in self.providers for c in p.req_channels] + assert len(cids) == len(set(cids)), f"채널ID 중복: { {k:v for k,v in Counter(cids).items() if v > 1} }" + + def get_programs(self, parallel: bool = False): + if parallel: + with ThreadPoolExecutor() as exe: + for p in self.providers: + exe.submit(p.get_programs) + else: + for p in self.providers: + p.get_programs() + + def to_xml(self): + print('') + print('\n') + print(f'') + + log.debug("Writing channels...") + for p in self.providers: + p.write_channels() + + log.debug("Writing programs...") + for p in self.providers: + p.write_programs() + + print("") + + @property + def all_channels(self) -> Iterator: + """shortcut to access all channels in providers""" + return chain.from_iterable(p.req_channels for p in self.providers) + + @property + def all_programs(self) -> Iterator: + """shortcut to access all programs in providers""" + return chain.from_iterable(ch.programs for ch in self.all_channels) + + def to_db(self, dbfile: PathLike) -> None: + with SQLite(dbfile, "w") as db: + db.insert_channels(self.all_channels) + db.insert_programs(self.all_programs) + + def from_db(self, dbfile: PathLike) -> None: + with SQLite(dbfile, "r") as db: + for p in self.providers: + for ch in db.queryall("SELECT * FROM epgchannel WHERE Source = ?", (p.provider_name,)): + chn = EPGChannel(dict(ch)) + for prog in db.queryall("SELECT * FROM epgprogram WHERE channelid = ?", (chn.id,)): + chn.programs.append(EPGProgram(**dict(prog))) + p.req_channels.append(chn) + + +sqlite3.register_adapter(bool, int) +sqlite3.register_converter("BOOLEAN", lambda v: bool(int(v))) +sqlite3.register_adapter(list, lambda v: json.dumps(v, ensure_ascii=False)) +sqlite3.register_converter("JSON", json.loads) + +SQLITE_DTYPES = { + bool: "BOOLEAN", + datetime: "TIMESTAMP", + int: "INTEGER", + List[dict]: "JSON", + List[str]: "JSON", +} + + +class SQLite: + def __init__(self, dbfile: PathLike, mode: Literal["r", "w", "a"] = "r", **kwargs): + kwargs.setdefault("detect_types", sqlite3.PARSE_DECLTYPES | sqlite3.PARSE_COLNAMES) + self.conn = sqlite3.connect(dbfile, **kwargs) + self.conn.row_factory = sqlite3.Row + self.__db_init(mode=mode) + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.conn.close() + + def __db_init(self, mode: Literal["r", "w", "a"]) -> None: + if mode == "r": + return + with closing(self.conn.cursor()) as c: + # create table - epgchannel + c.execute("CREATE TABLE IF NOT EXISTS epgchannel (Id, Source, ServiceId, Name, Icon_url, No, Category)") + # create table - epgprogram + cols = [f"{f.name} {SQLITE_DTYPES.get(f.type, 'TEXT')}" for f in fields(EPGProgram)] + c.execute(f"CREATE TABLE IF NOT EXISTS epgprogram ({', '.join(cols)})") + if mode == "w": + c.execute("DELETE FROM epgchannel") + c.execute("DELETE FROM epgprogram") + self.conn.commit() + + def insert_channels(self, channels: List[EPGChannel]) -> None: + def _astuple(ch: EPGChannel) -> Tuple: + return (ch.id, ch.src, ch.svcid, ch.name, ch.icon, ch.no, ch.category) + + sql = "INSERT INTO epgchannel VALUES (?,?,?,?,?,?,?)" + with closing(self.conn.cursor()) as c: + c.executemany(sql, map(_astuple, channels)) + self.conn.commit() + + def insert_programs(self, programs: List[EPGProgram]) -> None: + cols = [f.name for f in fields(EPGProgram)] + sql = f"INSERT INTO epgprogram({','.join(cols)}) VALUES ({','.join('?'*len(cols))})" + with closing(self.conn.cursor()) as c: + c.executemany(sql, map(astuple, programs)) + self.conn.commit() + + def queryall(self, *args, **kwargs) -> List[sqlite3.Row]: + with closing(self.conn.cursor()) as c: + return c.execute(*args, **kwargs).fetchall() diff --git a/epg2xml/providers/daum.py b/epg2xml/providers/daum.py new file mode 100644 index 0000000..108c26d --- /dev/null +++ b/epg2xml/providers/daum.py @@ -0,0 +1,109 @@ +import logging +from datetime import datetime, timedelta +from typing import List +from urllib.parse import quote + +from epg2xml.providers import EPGProgram, EPGProvider, no_endtime +from epg2xml.utils import ParserBeautifulSoup as BeautifulSoup + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) + +CH_CATE = ["지상파", "종합편성", "케이블", "스카이라이프", "해외위성", "라디오"] + + +class DAUM(EPGProvider): + """EPGProvider for DAUM + + 데이터: rawhtml + 요청수: #channels + 특이사항: + - 최대 7일치를 한 번에 + - 프로그램 시작 시각만 제공 + """ + + referer = None + title_regex = r"^(?P.*?)\s?([\<\(]?(?P<part>\d{1})부[\>\)]?)?\s?(<(?P<subname1>.*)>)?\s?((?P<epnum>\d+)회)?\s?(<(?P<subname2>.*)>)?$" + + def get_svc_channels(self) -> List[dict]: + svc_channels = [] + url = "https://search.daum.net/search?DA=B3T&w=tot&rtmaxcoll=B3T&q={}" + channelsel1 = '#channelNaviLayer > div[class^="layer_tv layer_all"] ul > li' + channelsel2 = 'div[class="wrap_sub"] > span > a' + for c in CH_CATE: + search_url = url.format(f"{c} 편성표") + data = self.request(search_url) + soup = BeautifulSoup(data) + if not soup.find_all(attrs={"disp-attr": "B3T"}): + continue + all_channels = [str(x.text.strip()) for x in soup.select(channelsel1)] + if not all_channels: + all_channels += [str(x.text.strip()) for x in soup.select(channelsel2)] + svc_cate = c.replace("스카이라이프", "SKYLIFE") + for x in all_channels: + svc_channels.append( + { + "Name": x, + "ServiceId": f"{svc_cate} {x}", + "Category": c, + } + ) + return svc_channels + + @no_endtime + def get_programs(self) -> None: + url = "https://search.daum.net/search?DA=B3T&w=tot&rtmaxcoll=B3T&q={}" + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + search_url = url.format(quote(_ch.svcid + " 편성표")) + data = self.request(search_url) + try: + _epgs = self.__epgs_of_days(_ch.id, data) + except AssertionError as e: + log.warning("%s: %s", e, _ch) + except Exception: + log.exception("프로그램 파싱 중 예외: %s", _ch) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_days(self, channelid: str, data: str) -> List[EPGProgram]: + soup = BeautifulSoup(data) + assert soup.find_all(attrs={"disp-attr": "B3T"}), "EPG 정보가 없거나 없는 채널입니다" + days = soup.select('div[class="tbl_head head_type2"] > span > span[class="date"]') + + # 연도 추정 + currdate = datetime.now() # 언제나 basedate보다 미래 + basedate = datetime.strptime(days[0].text.strip(), "%m.%d").replace(year=currdate.year) + if (basedate - currdate).days > 0: + basedate = basedate.replace(year=basedate.year - 1) + + _epgs = [] + for nd, _ in enumerate(days): + hours = soup.select(f'[id="tvProgramListWrap"] > table > tbody > tr > td:nth-of-type({nd+1})') + assert len(hours) == 24, f"24개의 시간 행이 있어야 합니다: 현재: {len(hours):d}" + for nh, hour in enumerate(hours): + for dl in hour.select("dl"): + _epg = EPGProgram(channelid) + nm = int(dl.select("dt")[0].text.strip()) + _epg.stime = basedate + timedelta(days=nd, hours=nh, minutes=nm) + for atag in dl.select("dd > a"): + _epg.title = atag.text.strip() + for span in dl.select("dd > span"): + class_val = " ".join(span["class"]) + if class_val == "": + _epg.title = span.text.strip() + elif "ico_re" in class_val: + _epg.rebroadcast = True + elif "ico_rate" in class_val: + _epg.rating = int(class_val.split("ico_rate")[1].strip()) + else: + # ico_live ico_hd ico_subtitle ico_hand ico_uhd ico_talk ico_st + _epg.extras = (_epg.extras or []) + [span.text.strip()] + if m := self.title_regex.search(_epg.title): + _epg.title = m.group("title") + _epg.part_num = m.group("part") + _epg.ep_num = m.group("epnum") + _epg.title_sub = m.group("subname2") or m.group("subname1") + if _epg.part_num: + _epg.title += f" {_epg.part_num}부" + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/kt.py b/epg2xml/providers/kt.py new file mode 100644 index 0000000..563e91e --- /dev/null +++ b/epg2xml/providers/kt.py @@ -0,0 +1,116 @@ +import logging +import re +from datetime import date, datetime, timedelta +from typing import List +from urllib.parse import unquote + +from bs4 import SoupStrainer + +from epg2xml.providers import EPGProgram, EPGProvider, no_endtime +from epg2xml.utils import ParserBeautifulSoup as BeautifulSoup + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) + +CH_CATE = [ + # 0은 전체 채널 + {"id": "1", "name": "UHD"}, + {"id": "3", "name": "홍보"}, + {"id": "4", "name": "지상파"}, + {"id": "5", "name": "홈쇼핑"}, + {"id": "6", "name": "종합편성"}, + {"id": "8", "name": "드라마/버라이어티"}, + {"id": "10", "name": "오락/음악"}, + {"id": "12", "name": "영화/시리즈"}, + {"id": "137", "name": "스포츠"}, + {"id": "206", "name": "취미/레저"}, + {"id": "317", "name": "애니/유아"}, + {"id": "442", "name": "교육"}, + {"id": "446", "name": "다큐/교양"}, + {"id": "447", "name": "뉴스/경제"}, + {"id": "448", "name": "공공/공익/정보"}, + {"id": "449", "name": "종교"}, + {"id": "491", "name": "오픈채널"}, + {"id": "507", "name": "유료"}, + {"id": "508", "name": "오디오"}, +] +PTN_RATING = re.compile(r"([\d,]+)") + + +class KT(EPGProvider): + """EPGProvider for KT + + 데이터: rawhtml + 요청수: #channels * #days + 특이사항: + - 가끔 업데이트 지연 + - 프로그램 시작 시각만 제공 + """ + + referer = "https://tv.kt.com/" + title_regex = r"^(?P<title>.*?)\s?([\<\(]?(?P<part>\d+)부[\>\)]?)?$" + + def get_svc_channels(self) -> List[dict]: + svc_channels = [] + url = "https://tv.kt.com/tv/channel/pChList.asp" + params = {"ch_type": "1", "parent_menu_id": "0"} + for c in CH_CATE: + params.update({"parent_menu_id": c["id"]}) + soup = BeautifulSoup(self.request(url, method="POST", data=params)) + raw_channels = [unquote(x.find("span", {"class": "ch"}).text.strip()) for x in soup.select("li > a")] + # 몇몇 채널은 (TV로만 제공, 유료채널) 웹에서 막혀있지만 실제로는 데이터가 있을 수 있다. + for x in raw_channels: + svc_channels.append( + { + "Name": " ".join(x.split()[1:]), + "No": str(x.split()[0]), + "ServiceId": x.split()[0], + "Category": c["name"], + } + ) + return svc_channels + + @no_endtime + def get_programs(self) -> None: + url = "https://tv.kt.com/tv/channel/pSchedule.asp" + params = { + "ch_type": "1", # 1: live 2: skylife 3: uhd live 4: uhd skylife + "view_type": "1", # 1: daily 2: weekly + "service_ch_no": "SVCID", + "seldate": "EPGDATE", + } + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + for nd in range(int(self.cfg["FETCH_LIMIT"])): + day = date.today() + timedelta(days=nd) + params.update({"service_ch_no": _ch.svcid, "seldate": day.strftime("%Y%m%d")}) + data = self.request(url, method="POST", data=params) + try: + _epgs = self.__epgs_of_day(_ch.id, data, day) + except Exception: + log.exception("프로그램 파싱 중 예외: %s, %s", _ch, day) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_day(self, channelid: str, data: str, day: datetime) -> List[EPGProgram]: + _epgs = [] + soup = BeautifulSoup(unquote(data), parse_only=SoupStrainer("tbody")) + for row in soup.find_all("tr"): + cell = row.find_all("td") + hour = cell[0].text.strip() + for minute, program, category in zip(*[c.find_all("p") for c in cell[1:]]): + _epg = EPGProgram(channelid) + _epg.stime = datetime.strptime(f"{day} {hour}:{minute.text.strip()}", "%Y-%m-%d %H:%M") + _epg.title = program.text.replace("방송중 ", "").strip() + if m := self.title_regex.match(_epg.title): + _epg.title = m.group("title") + if part_num := m.group("part"): + _epg.part_num = part_num + _epg.title += f" ({_epg.part_num}부)" + _epg.categories = [category.text.strip()] + for image in program.find_all("img", alt=True): + if "시청 가능" not in (alt := image["alt"]): + continue + grade = PTN_RATING.match(alt) + _epg.rating = int(grade.group(1)) if grade else 0 + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/lg.py b/epg2xml/providers/lg.py new file mode 100644 index 0000000..f425376 --- /dev/null +++ b/epg2xml/providers/lg.py @@ -0,0 +1,118 @@ +import logging +from datetime import date, datetime, timedelta +from typing import List + +from epg2xml.providers import EPGProgram, EPGProvider, no_endtime + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) + +G_CODE = {"0": 0, "1": 7, "2": 12, "3": 15, "4": 19} +P_CATE = { + "00": "영화", + "02": "만화", + "03": "드라마", + "05": "스포츠", + "06": "교육", + "07": None, # 어린이/교육 + "08": "연예/오락", + "09": "공연/음악", + "10": None, # 게임 + "11": "다큐", + "12": "뉴스/정보", + "13": "라이프", + "15": None, # 홈쇼핑 + "16": None, # 경제/부동산 + "31": "기타", +} + + +class LG(EPGProvider): + """EPGProvider for LG + + 데이터: jsonapi + 요청수: #channels * #days + 특이사항: + - 5일치만 제공 + - 프로그램 시작 시각만 제공 + 참고: + - 사이트 리뉴얼 이후 프로그램 카테고리가 아직 명확히 정해지지 않은 듯 하다. + """ + + referer = "https://www.lguplus.com/iptv/channel-guide" + title_regex = r"\s?(?:\[.*?\])?(.*?)(?:\[(.*)\])?\s?(?:\(([\d,]+)회\))?\s?(<재>)?$" + + def get_svc_channels(self) -> List[dict]: + svc_channels = [] + url = "https://www.lguplus.com/uhdc/fo/prdv/chnlgid/v1/tv-schedule-list" + data = self.request(url) + cate = {x["urcBrdCntrTvChnlGnreCd"]: x["urcBrdCntrTvChnlGnreNm"] for x in data["brdGnreDtoList"]} + for ch in self.request(url)["brdCntrTvChnlIDtoList"]: + svc_channels.append( + { + "Name": ch["urcBrdCntrTvChnlDscr"], + "No": ch["urcBrdCntrTvChnlNo"], + "ServiceId": ch["urcBrdCntrTvChnlId"], + "Category": cate[ch["urcBrdCntrTvChnlGnreCd"]], + } + ) + return svc_channels + + @no_endtime + def get_programs(self) -> None: + max_ndays = 5 + if int(self.cfg["FETCH_LIMIT"]) > max_ndays: + log.warning( + """ + +*********************************************************************** + +%s는 당일포함 %d일치만 EPG를 제공하고 있습니다. + +*********************************************************************** + """, + self.provider_name, + max_ndays, + ) + url = "https://www.lguplus.com/uhdc/fo/prdv/chnlgid/v1/tv-schedule-list" + params = {"urcBrdCntrTvChnlId": "SVCID", "brdCntrTvChnlBrdDt": "EPGDATE"} + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + for nd in range(min(int(self.cfg["FETCH_LIMIT"]), max_ndays)): + day = date.today() + timedelta(days=nd) + params.update({"urcBrdCntrTvChnlId": _ch.svcid, "brdCntrTvChnlBrdDt": day.strftime("%Y%m%d")}) + data = self.request(url, params=params) or {} + data = data.get("brdCntTvSchIDtoList", []) + if not data: + log.warning("EPG 정보가 없거나 없는 채널입니다: %s %s", _ch, day) + break # 오늘 없으면 내일도 없는 채널로 간주 + try: + _epgs = self.__epgs_of_day(_ch.id, data) + except Exception: + log.exception("프로그램 파싱 중 예외: %s, %s", _ch, day) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_day(self, channelid: str, data: list) -> List[EPGProgram]: + _epgs = [] + for p in data: + _epg = EPGProgram(channelid) + _epg.title = p["brdPgmTitNm"] + _epg.desc = p["brdPgmDscr"] + _epg.stime = datetime.strptime(p["brdCntrTvChnlBrdDt"] + p["epgStrtTme"], "%Y%m%d%H:%M:%S") + _epg.rating = G_CODE.get(p["brdWtchAgeGrdCd"], 0) + _epg.extras = [p["brdPgmRsolNm"]] # 화질 + if p["subtBrdYn"] == "Y": + _epg.extras.append("자막") + if p["explBrdYn"] == "Y": + _epg.extras.append("화면해설") + if p["silaBrdYn"] == "Y": + _epg.extras.append("수화") + if m := self.title_regex.match(_epg.title): + _epg.title = m.group(1) + _epg.title_sub = m.group(2) + _epg.ep_num = m.group(3) + _epg.rebroadcast = bool(m.group(4)) + if P_CATE[p["urcBrdCntrTvSchdGnreCd"]]: + _epg.categories = [P_CATE[p["urcBrdCntrTvSchdGnreCd"]]] + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/naver.py b/epg2xml/providers/naver.py new file mode 100644 index 0000000..4362f9d --- /dev/null +++ b/epg2xml/providers/naver.py @@ -0,0 +1,106 @@ +import logging +from datetime import date, datetime, timedelta +from typing import List +from xml.sax.saxutils import unescape + +from epg2xml.providers import EPGProgram, EPGProvider, no_endtime +from epg2xml.utils import ParserBeautifulSoup as BeautifulSoup + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) +today = date.today() + +CH_CATE = [ + {"name": "지상파", "u1": "100"}, + {"name": "종합 편성", "u1": "500"}, + {"name": "케이블", "u1": "200"}, + {"name": "스카이라이프", "u1": "300"}, + {"name": "해외위성", "u1": "9000"}, + {"name": "라디오", "u1": "400"}, +] + + +class NAVER(EPGProvider): + """EPGProvider for NAVER + + 데이터: rawhtml + 요청수: #channels * #days + 특이사항: + - 프로그램 시작 시각만 제공 + """ + + referer = "https://m.search.naver.com/search.naver?where=m&query=%ED%8E%B8%EC%84%B1%ED%91%9C" + + def get_svc_channels(self) -> List[dict]: + svc_channels = [] + url = "https://m.search.naver.com/p/csearch/content/nqapirender.nhn" + params = { + "key": "ScheduleChannelList", + "where": "nexearch", + "pkid": "66", + "u1": "CATEGORY_CODE", + } + for c in CH_CATE: + params.update({"u1": c["u1"]}) + data = self.request(url, params=params) + if data["statusCode"].lower() != "success": + log.error("유효한 응답이 아닙니다: %s", data["statusCode"]) + continue + soup = BeautifulSoup(data["dataHtml"]) + for ch in soup.select('li[class="item"]'): + try: + svcid = ch.select("div > div[data-cid]")[0]["data-cid"] + name = str(ch.select('div[class="channel_name"] > a')[0].text) + svc_channels.append( + { + "Name": name, + "ServiceId": svcid, + "Category": c["name"], + } + ) + except Exception: + pass + return svc_channels + + @no_endtime + def get_programs(self) -> None: + url = "https://m.search.naver.com/p/csearch/content/nqapirender.nhn" + params = {"key": "SingleChannelDailySchedule", "where": "m", "pkid": "66", "u1": "SVCID", "u2": "EPGDATE"} + + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + for nd in range(int(self.cfg["FETCH_LIMIT"])): + day = today + timedelta(days=nd) + params.update({"u1": _ch.svcid, "u2": day.strftime("%Y%m%d")}) + data = self.request(url, params=params) + if data["statusCode"].lower() != "success": + log.error("유효한 응답이 아닙니다: %s %s", _ch, data["statusCode"]) + continue + try: + _epgs = self.__epgs_of_day(_ch.id, data, day) + except Exception: + log.exception("프로그램 파싱 중 예외: %s, %s", _ch, day) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_day(self, channelid: str, data: dict, day: datetime) -> List[EPGProgram]: + _epgs = [] + soup = BeautifulSoup("".join(data["dataHtml"])) + for row in soup.find_all("li", {"class": "list"}): + cell = row.find_all("div") + _epg = EPGProgram(channelid) + _epg.title = unescape(cell[4].text.strip()) + _epg.stime = datetime.strptime(f"{str(day)} {cell[1].text.strip()}", "%Y-%m-%d %H:%M") + for span in cell[3].findAll("span"): + span_txt = span.text.strip() + if "ico_age" in span["class"]: + _epg.rating = int(span_txt.rstrip("세")) + elif "re" in span["class"]: + _epg.rebroadcast = True + else: + _epg.extras = (_epg.extras or []) + [span_txt] + try: + _epg.title_sub = cell[5].text.strip() + except Exception: + pass + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/sk.py b/epg2xml/providers/sk.py new file mode 100644 index 0000000..6ac36a2 --- /dev/null +++ b/epg2xml/providers/sk.py @@ -0,0 +1,112 @@ +import logging +from datetime import date, datetime, timedelta +from typing import List +from xml.sax.saxutils import unescape + +from epg2xml.providers import EPGProgram, EPGProvider + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) + +GENRE_CODE = { + "1": "드라마", + "2": "영화", + "4": "만화", + "8": "스포츠", + "9": "교육", + "11": "홈쇼핑", + "13": "예능", + "14": "시사/다큐", + "15": "음악", + "16": "라이프", + "17": "교양", + "18": "뉴스", +} + + +class SK(EPGProvider): + """EPGProvider for SK + + 데이터: jsonapi + 요청수: #channels + 특이사항: + - 최대 3일치를 한 번에 + """ + + referer = "https://www.bworld.co.kr/" + title_regex = r"^(.*?)(\(([\d,]+)회\))?(<(.*)>)?(\((재)\))?$" + + def get_svc_channels(self) -> List[dict]: + svc_channels = [] + url = "https://www.bworld.co.kr/content/realtime/realtime_list.ajax" + params = {"pack": "PM50305785"} + c_name = "" + for x in self.request(url, params=params): + if x["depth"] == "1": + c_name = x["m_name"] + elif x["depth"] == "2" and c_name and c_name not in ["프로모션"]: + svc_channels.append( + { + "Name": unescape(x["m_name"]), + "No": str(x["ch_no"]), + "ServiceId": x["id_svc"], + "Category": c_name, + } + ) + return svc_channels + + def get_programs(self) -> None: + max_ndays = 3 + if int(self.cfg["FETCH_LIMIT"]) > max_ndays: + log.warning( + """ + +*********************************************************************** + +%s는 당일포함 %d일치만 EPG를 제공하고 있습니다. + +*********************************************************************** + """, + self.provider_name, + max_ndays, + ) + url = "https://www.bworld.co.kr/myb/core-prod/product/btv-channel/week-frmt-list" + params = {"idSvc": "SVCID", "stdDt": "EPGDATE", "gubun": "week"} + + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + params.update({"idSvc": _ch.svcid, "stdDt": date.today().strftime("%Y%m%d")}) + try: + infolist = self.request(url, params=params)["result"]["chnlFrmtInfoList"] + assert isinstance(infolist, list) + except Exception: + log.exception("예상치 못한 응답: %s", params) + continue + for nd in range(min(int(self.cfg["FETCH_LIMIT"]), max_ndays)): + day = date.today() + timedelta(days=nd) + try: + _epgs = self.__epgs_of_day(_ch.id, infolist, day) + except Exception: + log.exception("프로그램 파싱 중 예외: %s, %s", _ch, day) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_day(self, channelid: str, data: list, day: datetime) -> List[EPGProgram]: + _epgs = [] + for info in data: + if info["eventDt"] != day.strftime("%Y%m%d"): + continue + _epg = EPGProgram(channelid) + _epg.title = info["nmTitle"] + if m := self.title_regex.match(_epg.title): + _epg.title = m.group(1) + _epg.title_sub = m.group(5) + _epg.rebroadcast = bool(m.group(7)) + _epg.ep_num = m.group(3) + _epg.rating = int(info.get("cdRating") or "0") + _epg.stime = datetime.strptime(info["dtEventStart"], "%Y%m%d%H%M%S") + _epg.etime = datetime.strptime(info["dtEventEnd"], "%Y%m%d%H%M%S") + if info["cdGenre"] and (info["cdGenre"] in GENRE_CODE): + _epg.categories = [GENRE_CODE[info["cdGenre"]]] + _epg.desc = info["nmSynop"] or None # 값이 없음 + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/spotv.py b/epg2xml/providers/spotv.py new file mode 100644 index 0000000..4d49141 --- /dev/null +++ b/epg2xml/providers/spotv.py @@ -0,0 +1,114 @@ +import logging +from datetime import date, datetime, timedelta +from typing import List + +from epg2xml.providers import EPGProgram, EPGProvider + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) + + +class SPOTV(EPGProvider): + """EPGProvider for SPOTV + + 데이터: jsonapi + 요청수: #days + 특이사항: + - 5일치만 제공 + """ + + referer = "https://www.spotvnow.co.kr/channel" + title_regex = r"\s?(?:\[(.*?)\])?\s?(.*?)\s?(?:[\(<](.*)[\)>])?\s?(?:-(\d+))?\s?(?:<?([\d,]+)회>?)?\s?$" + + def get_svc_channels(self) -> List[dict]: + url = "https://www.spotvnow.co.kr/api/v3/channel" + return [ + { + "Name": ch["name"], + "ServiceId": ch["id"], + "Icon_url": ch["logo"], + } + for ch in self.request(url) + ] + + def __dt(self, dt: str) -> datetime: + if not dt: + return None + if dt.endswith("24:00"): + return datetime.strptime(dt.replace("24:00", "00:00"), "%Y-%m-%d %H:%M") + timedelta(days=1) + return datetime.strptime(dt, "%Y-%m-%d %H:%M") + + def get_programs(self) -> None: + max_ndays = 5 + if int(self.cfg["FETCH_LIMIT"]) > max_ndays: + log.warning( + """ + +*********************************************************************** + +%s는 당일포함 %d일치만 EPG를 제공하고 있습니다. + +*********************************************************************** + """, + self.provider_name, + max_ndays, + ) + data = [] + for nd in range(min(int(self.cfg["FETCH_LIMIT"]), max_ndays)): + day = date.today() + timedelta(days=nd) + url = "https://www.spotvnow.co.kr/api/v3/program/" + day.strftime("%Y-%m-%d") + try: + data.extend(self.request(url)) + except Exception: + log.exception("데이터 가져오는 중 에러:") + continue + + # 날짜의 경계에서 발생할 수 있는 중복 제거 + _data = [] + for _d in data: + _d.pop("date", None) + if _d not in _data: + _data.append(_d) + + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + try: + _epgs = self.__epgs_of_channel(_ch.id, _data, _ch.svcid) + except AssertionError as e: + log.warning("%s: %s", e, _ch) + except Exception: + log.exception("프로그램 파싱 중 예외: %s", _ch) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_channel(self, channelid: str, data: dict, svcid: str) -> List[EPGProgram]: + programs = [x for x in data if x["channelId"] == svcid] + assert programs, "EPG 정보가 없거나 없는 채널입니다" + + _epgs = [] + for p in programs: + _epg = EPGProgram(channelid) + _epg.title = p["title"] + _epg.stime = self.__dt(p["startTime"]) + # 끝나는 시간이 없으면 해당일 자정으로 강제 + _epg.etime = self.__dt(p["endTime"]) or (_epg.stime.replace(hour=0, minute=0) + timedelta(days=1)) + if _epg.stime == _epg.etime: + continue + + if m := self.title_regex.match(_epg.title): + _epg.title = m.group(2) + subs = [] + if prefix := m.group(1): + subs.append(prefix) + if sub := m.group(3): + subs += [sub.replace(")(", ", ").replace(") (", ", ")] + title_sub = ", ".join(subs) + if num := m.group(4): + title_sub += f"-{num}" + if title_sub: + _epg.title_sub = title_sub + _epg.ep_num = m.group(5) + if p["type"] == 300: + # 100: live, 200: 본방송 + _epg.rebroadcast = True + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/tving.py b/epg2xml/providers/tving.py new file mode 100644 index 0000000..52a0ed8 --- /dev/null +++ b/epg2xml/providers/tving.py @@ -0,0 +1,180 @@ +import logging +from datetime import date, datetime, timedelta +from itertools import islice +from typing import List + +import requests + +from epg2xml.providers import EPGProgram, EPGProvider + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) +today = date.today() + +PRIORITY_IMG_CODE = ["CAIC2300", "CAIC1600", "CAIC0100", "CAIC0400"] +G_CODE = { + "CPTG0100": 0, + "CPTG0200": 7, + "CPTG0300": 12, + "CPTG0400": 15, + "CPTG0500": 19, + "CMMG0100": 0, + "CMMG0200": 12, + "CMMG0300": 15, + "CMMG0400": 19, +} + + +class TVING(EPGProvider): + """EPGProvider for TVING + + 데이터: jsonapi + 요청수: #channels/20 * #days * 24/3 + 특이사항: + - 최대 20채널 최대 3시간 허용 + """ + + referer = "https://www.tving.com/schedule/main.do" + tps = 3.0 + + url = "https://api.tving.com/v2/media/schedules" + base_params = { + "pageNo": "1", + "pageSize": "20", # maximum 20 + "order": "chno", + "scope": "all", + "adult": "all", + "free": "all", + "broadDate": "20200608", + "broadcastDate": "20200608", + "startBroadTime": "030000", # 최대 3시간 간격 + "endBroadTime": "060000", + # "channelCode": "C06941,C07381,...", + "screenCode": "CSSD0100", + "networkCode": "CSND0900", + "osCode": "CSOD0900", + "teleCode": "CSCD0900", + "apiKey": "1e7952d0917d6aab1f0293a063697610", + } + + def __params(self, **params) -> dict: + """returns url parameters for api requests with base ones""" + p = self.base_params.copy() + p.update(params) + return p + + def __get(self, url: str, **kwargs) -> List[dict]: + params = self.__params(**kwargs.pop("params", {})) + _page = 1 + _results = [] + while True: + params["pageNo"] = str(_page) + _data = self.request(url=url, params=params, **kwargs) + if _data["header"]["status"] != 200: + raise requests.exceptions.RequestException + _results.extend(_data["body"]["result"]) + if _data["body"]["has_more"] == "Y": + _page += 1 + else: + break + return _results + + def get_svc_channels(self) -> List[dict]: + def get_imgurl(_item: dict): + for _code in PRIORITY_IMG_CODE: + try: + img_list = [x for x in _item["image"] if x["code"] == _code] + if not img_list: + continue + return "https://image.tving.com" + (img_list[0].get("url") or img_list[0]["url2"]) + except Exception: + pass + return None + + params = { + "broadDate": today.strftime("%Y%m%d"), + "broadcastDate": today.strftime("%Y%m%d"), + "startBroadTime": datetime.now().strftime("%H0000"), + "endBroadTime": (datetime.now() + timedelta(hours=3)).strftime("%H0000"), + } + return [ + { + "Name": x["channel_name"]["ko"], + "Icon_url": get_imgurl(x), + "ServiceId": x["channel_code"], + "Category": x["schedules"][0]["channel"]["category_name"]["ko"], + } + for x in self.__get(self.url, params=params) + if x["schedules"] is not None + ] + + def get_programs(self) -> None: + def grouper(iterable, n): + it = iter(iterable) + group = tuple(islice(it, n)) + while group: + yield group + group = tuple(islice(it, n)) + + for gid, chgroup in enumerate(grouper(self.req_channels, 20)): + schdict = {} + params = {"channelCode": ",".join([x.svcid.strip() for x in chgroup])} + for nd in range(int(self.cfg["FETCH_LIMIT"])): + day = today + timedelta(days=nd) + params.update({"broadDate": day.strftime("%Y%m%d"), "broadcastDate": day.strftime("%Y%m%d")}) + for t in range(8): + params.update({"startBroadTime": f"{t*3:02d}0000", "endBroadTime": f"{t*3+3:02d}0000"}) + for ch in self.__get(self.url, params=params): + chcode = ch["channel_code"] + schdict.setdefault(chcode, []) + toappend = ch.get("schedules") or [] + try: + # 3시간 단위로 요청된 스케줄 앞 뒤로 중복이 있을 수 있다. + if schdict[chcode][-1] == toappend[0]: + toappend = toappend[1:] + except Exception: + pass + schdict[chcode] += toappend + + for idx, _ch in enumerate(chgroup): + log.info("%03d/%03d %s", gid * 20 + idx + 1, len(self.req_channels), _ch) + try: + _epgs = self.__epgs_of_channel(_ch.id, schdict[_ch.svcid]) + except Exception: + log.exception("프로그램 파싱 중 예외: %s", _ch) + else: + _ch.programs.extend(_epgs) + + def __epgs_of_channel(self, channelid: str, schedules: List[dict]) -> List[EPGProgram]: + _epgs = [] + for sch in schedules: + _epg = EPGProgram(channelid) + # 공통 + _epg.stime = datetime.strptime(str(sch["broadcast_start_time"]), "%Y%m%d%H%M%S") + _epg.etime = datetime.strptime(str(sch["broadcast_end_time"]), "%Y%m%d%H%M%S") + _epg.rebroadcast = sch["rerun_yn"] == "Y" + + get_from = "movie" if sch["movie"] else "program" + img_code = "CAIM2100" if sch["movie"] else "CAIP0900" + + _epg.rating = G_CODE[sch[get_from].get("grade_code", "CPTG0100")] + _epg.title = sch[get_from]["name"]["ko"] + _epg.title_sub = sch[get_from]["name"].get("en") + if cate1 := sch[get_from]["category1_name"].get("ko"): + _epg.categories = [cate1] + if cate2 := sch[get_from]["category2_name"].get("ko"): + _epg.categories = (_epg.categories or []) + [cate2] + _epg.cast = [{"name": x, "title": "actor"} for x in sch[get_from]["actor"]] + _epg.crew = [{"name": x, "title": "director"} for x in sch[get_from]["director"]] + + poster = [x["url"] for x in sch[get_from]["image"] if x["code"] == img_code] + if poster: + _epg.poster_url = "https://image.tving.com" + poster[0] + # _prog.poster_url += '/dims/resize/236' + + _epg.desc = sch[get_from]["story" if sch["movie"] else "synopsis"]["ko"] + if sch["episode"]: + episode = sch["episode"]["frequency"] + _epg.ep_num = "" if episode == 0 else str(episode) + _epg.desc = sch["episode"]["synopsis"]["ko"] + _epgs.append(_epg) + return _epgs diff --git a/epg2xml/providers/wavve.py b/epg2xml/providers/wavve.py new file mode 100644 index 0000000..793ac8d --- /dev/null +++ b/epg2xml/providers/wavve.py @@ -0,0 +1,155 @@ +import logging +from datetime import date, datetime, timedelta +from functools import lru_cache +from typing import List +from xml.sax.saxutils import unescape + +from epg2xml.providers import EPGProgram, EPGProvider + +log = logging.getLogger(__name__.rsplit(".", maxsplit=1)[-1].upper()) +today = date.today() + + +class WAVVE(EPGProvider): + """EPGProvider for WAVVE + + 데이터: jsonapi + 요청수: 1 + 특이사항: + - 해외나 VPS는 차단 가능성이 높음 + """ + + referer = "https://www.wavve.com/" + title_regex = r"^(.*?)(?:\s*[\(<]?([\d]+)회[\)>]?)?(?:\([월화수목금토일]?\))?(\([선별전주\(\)재방]*?재[\d방]?\))?\s*(?:\[(.+)\])?$" + + base_url = "https://apis.wavve.com" + base_params = { + "apikey": "E5F3E0D30947AA5440556471321BB6D9", + "client_version": "6.0.1", + "device": "pc", + "drm": "wm", + "partner": "pooq", + "pooqzone": "none", + "region": "kor", + "targetage": "all", + } + + def __init__(self, cfg): + super().__init__(cfg) + self.sess.headers.update({"wavve-credential": "none"}) + + def __url(self, url: str) -> str: + """completes partial urls from api response or for api request""" + if url.startswith(("http://", "https://")): + return url + if url.startswith("/"): + return self.base_url + url + return "https://" + url + + def __params(self, **params) -> dict: + """returns url parameters for api requests with base ones""" + p = self.base_params.copy() + p.update(params) + return p + + def __get(self, url: str, **kwargs): + url = self.__url(url) + params = self.__params(**kwargs.pop("params", {})) + return self.request(url, params=params, **kwargs) + + def get_svc_channels(self) -> List[dict]: + today_str = today.strftime("%Y-%m-%d") + hour_min = datetime.now().hour // 3 + # 현재 시간과 가까운 미래에 서비스 가능한 채널만 가져옴 + params = { + "enddatetime": f"{today_str} {(hour_min+1)*3:02d}:00", + "genre": "all", + "limit": 500, + "offset": 0, + "startdatetime": f"{today_str} {hour_min*3:02d}:00", + } + return [ + { + "Name": x["channelname"], + "Icon_url": self.__url(x["channelimage"]), + "ServiceId": x["channelid"], + } + for x in self.__get("/live/epgs", params=params)["list"] + ] + + def __epg_of_program(self, channelid: str, data: dict) -> EPGProgram: + _epg = EPGProgram(channelid) + _epg.stime = datetime.strptime(data["starttime"], "%Y-%m-%d %H:%M") + _epg.etime = datetime.strptime(data["endtime"], "%Y-%m-%d %H:%M") + # 채널이름은 그대로 들어오고 프로그램 제목은 escape되어 들어옴 + _epg.title = unescape(data["title"]) + if m := self.title_regex.match(_epg.title): + _epg.title = m.group(1) + _epg.title_sub = m.group(4) + episode = (m.group(2) or "").replace("회", "").strip() + _epg.ep_num = None if episode == "0" else episode + _epg.rebroadcast = bool(m.group(3)) + _epg.rating = 0 if data["targetage"] == "n" else int(data["targetage"]) + + # 추가 정보 가져오기 + if not self.cfg["GET_MORE_DETAILS"]: + return _epg + programid = data["programid"].strip() + if not programid: + # 개별 programid가 없는 경우도 있으니 체크해야함 + return _epg + detail = self.get_program_details(programid) + if not detail: + return _epg + # 여러가지 추가 정보가 제공되지만 + # 방송되지 않은 미래의 프로그램/에피소드 정보는 반영되지 않았기에 + # 일부 정보만 유효함을 유념 + synopsis = detail["seasonsynopsis"] or detail["programsynopsis"] or detail["episodesynopsis"] + _epg.desc = "\n".join( + [x.replace("<br>", "\n").strip() for x in synopsis.splitlines()] + ) # carriage return(\r) 제거, <br> 제거 + _epg.categories = [detail["genretext"].strip()] + _epg.poster_url = self.__url(detail["seasonposterimage"].strip()) + _epg.keywords = [x["text"] for x in detail["tags"]["list"]] + actors = detail.get("season_actors") or detail.get("actors") or {"list": []} + directors = detail.get("season_directors") or detail.get("directors") or {"list": []} + writers = detail.get("season_writers") or detail.get("writers") or {"list": []} + _epg.cast = [{"name": x["text"], "title": "actor"} for x in actors["list"]] + _epg.crew = [{"name": x["text"], "title": "director"} for x in directors["list"]] + _epg.crew += [{"name": x["text"], "title": "writer"} for x in writers["list"]] + return _epg + + def get_programs(self) -> None: + # parameters for requests + params = { + "enddatetime": (today + timedelta(days=int(self.cfg["FETCH_LIMIT"]) - 1)).strftime("%Y-%m-%d 24:00"), + "genre": "all", + "limit": 500, + "offset": 0, + "startdatetime": today.strftime("%Y-%m-%d 00:00"), + } + channeldict = {x["channelid"]: x for x in self.__get("/live/epgs", params=params)["list"]} + + for idx, _ch in enumerate(self.req_channels): + log.info("%03d/%03d %s", idx + 1, len(self.req_channels), _ch) + for program in channeldict[_ch.svcid]["list"]: + try: + _epg = self.__epg_of_program(_ch.id, program) + except Exception: + log.exception("프로그램 파싱 중 예외: %s", _ch) + else: + _ch.programs.append(_epg) + + @lru_cache + def get_program_details(self, programid: str) -> dict: + try: + params = {"history": "season", "programid": programid} + data = self.__get("/fz/vod/programs/landing", params=params) + if data.get("resultcode") in ["550"]: + # 애초에 유효하지 않은 programid가 있을 수 있음 + # { "resultcode": "550", "resultmessage": "해당 데이터가 없습니다." } + return None + return self.__get(f"/fz/vod/contents-detail/{data['content_id'].strip()}") + except Exception: + log.exception("프로그램 상세 정보 요청 중 예외: %s", programid) + return None diff --git a/epg2xml/utils.py b/epg2xml/utils.py new file mode 100644 index 0000000..6cd4847 --- /dev/null +++ b/epg2xml/utils.py @@ -0,0 +1,196 @@ +import json +import logging +import re +import sys +import threading +import time +import xml.etree.ElementTree as ET +from functools import wraps +from math import floor +from typing import Callable + +from bs4 import BeautifulSoup, FeatureNotFound + +log = logging.getLogger("UTILS") + + +def dump_json(file_path, data) -> int: + with open(file_path, "w", encoding="utf-8") as f: + txt = json.dumps(data, ensure_ascii=False, indent=2) + # for compact form of channellist in json files + txt = re.sub(r",\n\s{8}\"", ', "', txt) + txt = re.sub(r"\s{6}{\s+(.*)\s+}", r" { \g<1> }", txt) + return f.write(txt) + + +# https://stackoverflow.com/a/22273639 +_illegal_unichrs = [ + (0x00, 0x08), + (0x0B, 0x0C), + (0x0E, 0x1F), + (0x7F, 0x84), + (0x86, 0x9F), + (0xFDD0, 0xFDDF), + (0xFFFE, 0xFFFF), +] +if sys.maxunicode >= 0x10000: # not narrow build + _illegal_unichrs.extend( + [ + (0x1FFFE, 0x1FFFF), + (0x2FFFE, 0x2FFFF), + (0x3FFFE, 0x3FFFF), + (0x4FFFE, 0x4FFFF), + (0x5FFFE, 0x5FFFF), + (0x6FFFE, 0x6FFFF), + (0x7FFFE, 0x7FFFF), + (0x8FFFE, 0x8FFFF), + (0x9FFFE, 0x9FFFF), + (0xAFFFE, 0xAFFFF), + (0xBFFFE, 0xBFFFF), + (0xCFFFE, 0xCFFFF), + (0xDFFFE, 0xDFFFF), + (0xEFFFE, 0xEFFFF), + (0xFFFFE, 0xFFFFF), + (0x10FFFE, 0x10FFFF), + ] + ) +_illegal_ranges = [rf"{chr(low)}-{chr(high)}" for (low, high) in _illegal_unichrs] +_illegal_xml_chars_RE = re.compile("[" + "".join(_illegal_ranges) + "]") + + +class Element(ET.Element): + def __init__(self, *args, **kwargs): + attrib = kwargs.pop("attrib", {}) + super().__init__(args[0], attrib=attrib, **kwargs) + if len(args) > 1: + self.text = args[1] + + def indent(self, space=" ", level=0): + if level < 0: + raise ValueError(f"Initial indentation level must be >= 0, got {level}") + if len(self) == 0: + return + + # Reduce the memory consumption by reusing indentation strings. + indentations = ["\n" + level * space] + + def _indent_children(elem, level): + # Start a new indentation level for the first child. + child_level = level + 1 + try: + child_indentation = indentations[child_level] + except IndexError: + child_indentation = indentations[level] + space + indentations.append(child_indentation) + + if not elem.text or not elem.text.strip(): + elem.text = child_indentation + + for child in elem: + if len(child): + _indent_children(child, child_level) + if not child.tail or not child.tail.strip(): + child.tail = child_indentation + + # Dedent after the last child by overwriting the previous indentation. + if not child.tail.strip(): # pylint: disable=undefined-loop-variable + child.tail = indentations[level] # pylint: disable=undefined-loop-variable + + _indent_children(self, 0) + + def tostring(self, space=" ", level=0): + self.indent(space=space, level=level) + return _illegal_xml_chars_RE.sub("", space * level + ET.tostring(self, encoding="unicode")) + + +class PrefixLogger(logging.LoggerAdapter): + def __init__(self, logger, prefix): + super().__init__(logger, {}) + self.prefix = prefix + + def process(self, msg, kwargs): + return f"{self.prefix} {msg}", kwargs + + +class ParserBeautifulSoup(BeautifulSoup): + """A ``bs4.BeautifulSoup`` that picks the first available parser.""" + + def insert_before(self, *args): + pass + + def insert_after(self, *args): + pass + + def __init__(self, markup, **kwargs): + # pick the first parser available + for parser in ["lxml", "html.parser"]: + try: + super().__init__(markup, parser, **kwargs) + return + except FeatureNotFound: + pass + + raise FeatureNotFound + + +class RateLimiter: + """original implementation by tomasbasham/ratelimit""" + + try: + now: Callable = time.monotonic # Use monotonic time if available + except AttributeError: + now: Callable = time.time # otherwise fall back to the system clock + + def __init__(self, calls: int = 15, period: float = 900.0, tps: float = None): + if tps is not None: + if tps <= 0.0: + raise ValueError("tps must be positive") + calls, period = 1, 1 / tps + self.max_calls = max(1, min(sys.maxsize, floor(calls))) + self.period = period + + # Initialise the decorator state. + self.last_reset = self.now() + self.num_calls = 0 + + # Add thread safety. + self.lock = threading.RLock() + + def __call__(self, func: Callable) -> Callable: + """ + Return a wrapped function that prevents further function invocations if + previously called within a specified period of time. + """ + + @wraps(func) + def wrapper(*args, **kargs): + """ + Extend the behaviour of the decorated function, forwarding function + invocations previously called no sooner than a specified period of + time. The decorator will raise an exception if the function cannot + be called so the caller may implement a retry strategy such as an + exponential backoff. + """ + with self.lock: + period_remaining = self.__period_remaining() + + # If the time window has elapsed then reset. + if period_remaining <= 0: + self.num_calls = 0 + self.last_reset = self.now() + + # Increase the number of attempts to call the function. + self.num_calls += 1 + + # If the number of attempts to call the function exceeds the maximum + if self.num_calls > self.max_calls: + self.last_reset = self.now() + period_remaining # for future call + time.sleep(period_remaining) + return func(*args, **kargs) + return func(*args, **kargs) + + return wrapper + + def __period_remaining(self) -> float: + elapsed = self.now() - self.last_reset + return self.period - elapsed diff --git a/epg2xml/xml/xmltv.xml b/epg2xml/xml/xmltv.xml new file mode 100644 index 0000000..e69de29 diff --git a/recordings/autoencoding.sh b/recordings/autoencoding.sh new file mode 100644 index 0000000..8085943 --- /dev/null +++ b/recordings/autoencoding.sh @@ -0,0 +1,35 @@ +#!/bin/sh +# Variables +#TSVIDEO=$1 +FILENAME=$1 +b=$2 +TRANSCODEPATH='/recordings/' # tvheadend에서 지정한 파일 저장 경로 수정 +title=$(echo $b | sed s'/\([0-9]\{4,\}\).*\([0-9]\{2,\}\).*\([0-9]\{2,\}\)/\1\2\3/' | sed s'/[\-]/ /g' | sed 's/ \{2,\}/ /g' | sed s'/ \[.*\]//g' | sed s'/...$//') +target_dir_name=$(echo $title | sed s'/.[0-9].*$//') + +TSVIDEO=$TRANSCODEPATH$FILENAME".ts" +MKVVIDEO=$TRANSCODEPATH$title".H264.1080P.mkv" +# 출력할 파일에 새로 추가할 내용 및 확장자 ".H264.1080P.mkv" 부분은 +# mkv 확장자로 할 경우 '.H264.1080P.mkv' +# mp4 확장자로 할 경우 'H264.1080P.MP4' + +/bin/sync # flush diskbuffer +# Transcode to mkv + +echo "***** 시작시간 $(/bin/date +%Y.%m.%d' '%H:%M:%S) *****" >$TRANSCODEPATH$title.log +echo "****************************************************" >>$TRANSCODEPATH$title.log +echo "********** $MKVVIDEO 로 인코딩을 시작합니다. *************" >>$TRANSCODEPATH$title.log +echo "***************************************************" >>$TRANSCODEPATH$title.log +echo "*************** INPUT = $TSVIDEO ******************" >>$TRANSCODEPATH$title.log +echo "*************** OUTPUT = $MKVVIDEO ****************" >>$TRANSCODEPATH$title.log +echo "***************************************************" >>$TRANSCODEPATH$title.log +echo "****** Created by $(/usr/bin/whoami) **************" >>$TRANSCODEPATH$title.log +echo "***************************************************" >>$TRANSCODEPATH$title.log +ffmpeg -i "$TSVIDEO" -vcodec libx264 -acodec copy -b:a 192k -level 4.1 "$MKVVIDEO" </dev/null >>$TRANSCODEPATH$title.log 2>&1 +#720p 해상도로 인코딩 할 경우 'hd720'추가 +#ffmpeg -i "$TSVIDEO" -vcodec libx264 -acodec copy -b:a 192k -level 4.1 -s hd720 "$MKVVIDEO" </dev/null >>$TRANSCODEPATH$title.log 2>&1 + +echo "***************************************************" >>$TRANSCODEPATH$title.log + +#rm -f "$TSVIDEO" +echo "** 종료시간 $(/bin/date +%Y.%m.%d' '%H:%M:%S) **" >>$TRANSCODEPATH$title.log diff --git a/recordings/us-Cable-8VSB.txt b/recordings/us-Cable-8VSB.txt new file mode 100644 index 0000000..7e6c801 --- /dev/null +++ b/recordings/us-Cable-8VSB.txt @@ -0,0 +1,943 @@ + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 57000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 63000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 69000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 79000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 85000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 177000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 183000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 189000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 195000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 201000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 207000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 213000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 123012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 129012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 135012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 141000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 147000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 153000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 159000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 165000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 171000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 219000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 225000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 231012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 237012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 243012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 249012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 255012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 261012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 267012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 273012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 279012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 285012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 291012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 297012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 303012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 309012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 315012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 321012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 327012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 333025000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 339012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 345012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 351012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 357012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 363012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 369012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 375012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 381012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 387012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 393012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 399012500 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 405000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 411000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 417000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 423000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 429000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 435000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 441000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 447000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 453000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 459000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 465000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 471000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 477000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 483000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 489000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 495000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 501000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 507000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 513000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 519000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 525000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 531000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 537000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 543000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 549000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 555000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 561000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 567000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 573000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 579000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 585000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 591000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 597000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 603000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 609000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 615000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 621000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 627000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 633000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 639000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 645000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 93000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 99000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 105000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 111025000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 117025000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 651000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 657000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 663000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 669000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 675000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 681000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 687000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 693000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 699000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 705000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 711000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 717000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 723000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 729000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 735000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 741000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 747000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 753000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 759000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 765000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 771000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 777000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 783000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 789000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 795000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 801000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 807000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 813000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 819000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 825000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 831000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 837000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 843000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 849000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 855000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 861000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 867000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 873000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 879000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 885000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 891000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 897000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 903000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 909000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 915000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 921000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 927000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 933000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 939000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 945000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 951000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 957000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 963000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 969000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 975000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 981000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 987000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 993000000 + MODULATION = VSB/8 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 999000000 + MODULATION = VSB/8 + INVERSION = AUTO + diff --git a/recordings/us-Cable-QAM256.txt b/recordings/us-Cable-QAM256.txt new file mode 100644 index 0000000..9edef68 --- /dev/null +++ b/recordings/us-Cable-QAM256.txt @@ -0,0 +1,943 @@ + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 57000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 63000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 69000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 79000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 85000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 177000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 183000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 189000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 195000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 201000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 207000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 213000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 123012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 129012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 135012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 141000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 147000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 153000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 159000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 165000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 171000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 219000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 225000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 231012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 237012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 243012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 249012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 255012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 261012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 267012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 273012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 279012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 285012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 291012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 297012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 303012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 309012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 315012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 321012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 327012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 333025000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 339012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 345012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 351012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 357012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 363012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 369012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 375012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 381012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 387012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 393012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 399012500 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 405000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 411000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 417000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 423000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 429000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 435000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 441000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 447000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 453000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 459000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 465000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 471000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 477000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 483000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 489000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 495000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 501000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 507000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 513000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 519000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 525000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 531000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 537000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 543000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 549000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 555000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 561000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 567000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 573000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 579000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 585000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 591000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 597000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 603000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 609000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 615000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 621000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 627000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 633000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 639000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 645000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 93000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 99000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 105000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 111025000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 117025000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 651000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 657000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 663000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 669000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 675000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 681000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 687000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 693000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 699000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 705000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 711000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 717000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 723000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 729000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 735000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 741000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 747000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 753000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 759000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 765000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 771000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 777000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 783000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 789000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 795000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 801000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 807000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 813000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 819000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 825000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 831000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 837000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 843000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 849000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 855000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 861000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 867000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 873000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 879000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 885000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 891000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 897000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 903000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 909000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 915000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 921000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 927000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 933000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 939000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 945000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 951000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 957000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 963000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 969000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 975000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 981000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 987000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 993000000 + MODULATION = QAM/256 + INVERSION = AUTO + +[CHANNEL] + DELIVERY_SYSTEM = ATSC + FREQUENCY = 999000000 + MODULATION = QAM/256 + INVERSION = AUTO +