Updating TV Channel List for LG – esTV

When to modify the TV Channels file ?

Whenever the Hotel wants to add or remove some TV Channels, then there is a possibility that the frequencies of existing channel may change, plus new TV channels also gets added to the system.
It is not possible to incorporate this change by simply modifying the existing TLL file.
Thereby, it is important to reset one TV, and do the rescanning of the TV Channels in that TV, and then make a clone from that TV and make changes to the TLL file generated by the TV.

Files to be modified

There are at least 2 files that require amendment in order to update the TV Channels List:

  • /procentric/system/LGservice.xml – This file maintains the meta-data information of the TV Model and the configuration files that are assigned to that TV Model (ipk and TLL)
  • /procentric/system/xxTvModelNumber.TLL – This file is generated by the TV when its configuration is cloned. This file contains the TV Channel list as well.

LGService.xml

<service> – The service is the root element of the LGService.xml file. Do not make any amendments to the root element

<setup> – For each different TV Model being used in the Hotel, there has to be one <setup> tag for each

<versionNumber> – For every upgrade of the contents for a specific TV model, a new version number needs to be specified, using which the TV understands that there is an upgrade that needs to be applied to the TV

<modelName> – The TV Model Number without the prefix ‘xx’ before the file name

<appList> – Contains a list of custom-built ipk files that are used as apps for the TV.

<subversionNumber> – This version number is used when only the apps are to be updated

<content> – Parent tag of the app information, under which all the app-related xml tags are used to specify the app information. This tag is also the direct child of the <setup> tag and contains tags having information about the TV Clone file

<type> – This tag specifies the type of the content i.e. IPK_FIRMWARE for an ipk file, INSTALLER_MENU for a TV Clone file.

<data> – The actual name of the file that being named to the file on the disk storage

				
					<service>
    <setup>
        <versionNumber>14</versionNumber>
        <modelName>43UT660H0TA</modelName>
        <priority>NORMAL</priority>
        <appList>
            <subversionNumber>10</subversionNumber>
            <content>
                <type>IPK_FIRMWARE</type>
                <data>com.excel.hotelinformation_0.0.8_all.ipk</data>
                <appTitle>Hotel Information</appTitle>
                <appId>com.excel.hotelinformation</appId>
                <appSignature>0</appSignature>
                <appVersion>0.0.8</appVersion>
                <visible>1</visible>
                <frequency>2059</frequency>
                <programNum>0</programNum>
                <cTag>1</cTag>
            </content>
        </appList>
        <content>
            <type>INSTALLER_MENU</type>
            <data>xxUT660H0TA_5.TLL</data>
            <frequency>0</frequency>
            <programNum>0</programNum>
            <cTag>0</cTag>
        </content>
    </setup>
	<setup>
        <versionNumber>12</versionNumber>
        <modelName>KEY039D013B</modelName>
        <priority>NORMAL</priority>
        <appList>
            <subversionNumber>10</subversionNumber>
            <content>
                <type>IPK_FIRMWARE</type>
                <data>com.excel.hotelinformation_0.0.8_all.ipk</data>
                <appTitle>Hotel Information</appTitle>
                <appId>com.excel.hotelinformation</appId>
                <appSignature>0</appSignature>
                <appVersion>0.0.8</appVersion>
                <visible>1</visible>
                <frequency>2059</frequency>
                <programNum>0</programNum>
                <cTag>1</cTag>
            </content>
        </appList>
        <content>
            <type>INSTALLER_MENU</type>
            <data>xxKEY039D013B.TLL</data>
            <frequency>0</frequency>
            <programNum>0</programNum>
            <cTag>0</cTag>
        </content>
    </setup>
</service>
				
			

In the above sample LGService.xml file, you can see that there are two <setup> tags that denotes that the file contains meta-information about 2 different TV Models viz.43UT660H0TA and KEY039D013B.

The two TV models also contain different TV Clone file specified under their respective <content> tags viz. xxUT660H0TA_5.TLL and KEY039D013B.TLL

xxTvModelName.TLL

The TLL file cannot be created from scratch. This file needs to be exported from the TV after all the Hotel Mode configuration is setup on the TV and the TV Channels scanning has been accomplished. It can then be exported to a USB Drive and modified.

Below is the typical structure of a TLL file. The <ModelName> tag shows the name of the TV Model from which it has been exported from.
Note: Each newer TV Model has the contents of the TLL file in a backward- INCOMPATIBLE format. So, ensure that different model TLL file needs to be separately amended as per its file structure. Currently, we have two different variations of the TLL file

Type – 1 of .TLL File

				
					<?xml version="1.0" encoding="UTF-8"?>
<TLLDATA>
	<ModelInfo>
		<ModelName type="0">43UT660H0TA</ModelName>
		...
	</ModelInfo>
	<UiRegistry>
		.
		.
		.
	</UiRegistry>
	<CHANNEL>
		<ATV></ATV>
		<IPTV></IPTV>
		<DTV>
			<ITEM>
				<prNum>800</prNum>
				<vchName>TCS 5</vchName>
				.
				.
			</ITEM>
		</DTV>
	</CHANNEL>
</TLLDATA>

				
			

It is highly important to modify this file with utmost care, as adding or deleting any important parameter will cause problems while importing it into the TV.
There are a lot of parameters and tags which are of no concern while updating the TV Channels List in the file, so the only tags that are of concern is <Channel>, <IPTV>, <DTV> and <ITEM>.

<Channel> – Parent tag containing all the TV Channels
<IPTV> – Contains IP Channels
<DTV> – Contains Digital TV Channels scanned from the TV
<ITEM> – Each item tag represents individual TV Channel
<prNum> – This tag represents the Channel Number that is displayed on the TV Screen while changing the channels
<vchName> – This tag represents the Name of the TV Channel. We can change it however we want.

The <prNum> and <vchName> are the only two parameters that we must change while renaming or re-sequencing the TV channels list

Note: You must completely remove the <UiRegistry> tag from the file before uploading it to the Cloud.

Type – 2 of .TLL File

The newer version of the LG TV have the TV Channel list in the form of a JSON String as showin in following example:

				
					<?xml version="1.0"?>
<TLLDATA>
	<ModelInfo>
		<ModelName type="0">43UM660H0SG</ModelName>
		...
	</ModelInfo>
	<CHANNEL>
		<legacybroadcast>{"currActvStatObj":{"cmnData_CSGenreVersion":0,"dvbRgnDepth":0,"dvbRgnCountry":false,"dvbRgnPrimary":false,"isManualScanned":false,"cmnData_BSKeywordVersion":0,"cmnData_BSFeatureVersion":0,"isChFreqVerValid":false,"dvbRgnCountryCode":0,"isDualVideo3DBroadcastEnabled":false,"cableNwRange_endFrequency":858000,"chSettingValueForJP_isAntennaAudioLevelSet":false,"cmnData_TRGenreVersion":0,"cmnData_LogoVersionList":[{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0},{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0},{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0},{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0},{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0},{"cmnData_BSLogoVersion":0,"cmnData_CSLogoVersion":0}],"cableNwHomeTP_frequency":0,"preferredNidSaved":0,"cableNwSpec_isNetworkIdFilterOn":false,"isPowrOnlyMode":false,"cmnData_CSFeatureVersion":0,"cmnData_TRKeywordVersion":0,"cmnData_CSKeywordVersion":0,"secondVideoPIDFor3DBroadcast":0,"cableNwHomeTP_symbolRate":0,"dvbRgnSecondaryCode":0,"dvbRgnTertiary":false,"scanMasks":3,"cmnData_TRFrequencyVersion":0,"dvbRgnTertiaryCode":0,"cableNwSpec_channelScanMode":0,"cableNwSpec_isNetworkIdEnabled":false,"warmConflict":false,"premiumDtvOffsetForItaly":0,"profileNameLengthForCIPlus":0,"chFreqVersion":0,"profileNameForCIPlusBase64":"","cableNwRange_startFrequency":50000,"currentCableSO":0,"cableNwSpec_isNetworkUpdateOn":false,"premiumDataOffsetForItaly":0,"preferredNid":0,"isProfileNameUsedForCIPlus":false,"cableNwSpec_isSkipScramble":false,"cmnData_TRFeatureVersion":0,"chSettingValueForJP_isSatelliteAudioLevelSet":false,"satellite2TunerConn":"MAIN","lcnTableVersionForItaly":0,"cableNwSpec_isAutoBilndScan":false,"chSettingValueForJP_isSatellitePowerSupplyOn":false,"cmnData_BSGenreVersion":0,"lcnCRCVersionForItaly":0,"currTerrestrialSO":false,"cableNwHomeTP_networkID":0,"autoScanPopUpAgain":false,"cableNwHomeTP_constellation":15,"dvbRgnSecondary":false,"isVisualImpairedServiceEnabled":false,"isTerrestrialSkipScramble":false},"channelList":[{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":22,"majorNumber":1,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"VENTIDUgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":482000,"channelName":"Channel 5","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":27953,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":27953,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":23,"majorNumber":2,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"VENTIDggICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":490000,"channelName":"Channel 8","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":55498,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":55498,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":24,"majorNumber":4,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"U3VyaWEgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":498000,"channelName":"Suria","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":15714,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":15714,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":25,"majorNumber":5,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"VmFzYW50aGFtICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":506000,"channelName":"Vasantham Central","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":61136,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":61136,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":26,"majorNumber":6,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q05BICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":514000,"channelName":"Channel News Asia","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":43902,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":43902,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":27,"majorNumber":7,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q05OICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":522000,"channelName":"CNN","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":22559,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":22559,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":28,"majorNumber":14,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"QkJDIEVhcnRoICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":530000,"channelName":"BBC Earth","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":10048,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":10048,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":29,"majorNumber":13,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"QUJDICAgICAgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1002,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":538000,"channelName":"ABC Australia","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":2,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":2,"userAudio":8191,"TSID":1002,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":30,"majorNumber":16,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"TkhLIFdvcmxkICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":546000,"channelName":"NHK World TV","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":3,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":3,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":32,"majorNumber":19,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"RHJhZ29uIFRWICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":562000,"channelName":"Dragon TV","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":5,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":5,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":33,"majorNumber":20,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q0NUViA0ICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":2,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":570000,"channelName":"CCTV 4","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":6,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":6,"userAudio":8191,"TSID":2,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":34,"majorNumber":17,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"dHZOICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":578000,"channelName":"TVN","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":7,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":7,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":35,"majorNumber":21,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q0NUViBFbnQgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":586000,"channelName":"CCTV Entertaiinment","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":8,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":8,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":36,"majorNumber":23,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"SEJPIEhEICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":594000,"channelName":"HBO HD","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":9,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":9,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":37,"majorNumber":15,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"QkJDIExpZmVzdHlsZSAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":602000,"channelName":"BBC Lifestyle","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":10,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":10,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":38,"majorNumber":22,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"TGlmZXRpbWUgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":610000,"channelName":"Lifetime","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":11,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":11,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":41,"majorNumber":12,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"bWlvIFNwb3J0cyAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":634000,"channelName":"Mio Sports","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":14,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":14,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":42,"majorNumber":9,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"YmVJTiBTcG9ydHMgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":642000,"channelName":"beIN Sports","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":15,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":15,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":43,"majorNumber":18,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q1RJIEFzaWEgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":650000,"channelName":"CTI Asia","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":16,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":16,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":44,"majorNumber":10,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"YmVJTiBTcG9ydHMgMiAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":658000,"channelName":"beIN Sports 2","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":17,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":17,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":46,"majorNumber":8,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Tmlja2Vsb2Rlb24gICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":674000,"channelName":"Nickelodeon Asia","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":18,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":18,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2000,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":47,"majorNumber":11,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18395,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"YmVJTiBTcG9ydHMgMyAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":1,"hdStatus":0,"audioPid":2012,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":682000,"channelName":"beIN Sports 3","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":19,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":19,"userAudio":8191,"TSID":1,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191},{"ONID":8442,"disabled":false,"cellID":0,"videoStreamType":27,"specialData":-1975316447,"pcrPid":2001,"sourceIndex":"ANTENNA DIGITAL","regionId":0,"audioDesc":false,"signalLossDay":0,"homeTP":false,"primaryCh":false,"userSelCHNo":false,"altPhysicalNum":0,"userSubtitleLangCode":0,"physicalNumber":50,"majorNumber":3,"virtualChannel":false,"skipped":false,"minorNumber":0,"videoPid":18385,"validLCN":false,"deleted":false,"isFVP":false,"conflict":false,"astraMfCh":false,"factoryDefault":false,"optrBlocked":false,"Invisible":false,"networkId":13057,"locked":false,"serviceIdentifier":0,"chNameByte":false,"dvbss2":0,"solveNeed":false,"chNameBase64":"Q2hhbm5lbCBVICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","LCNPriority":0,"userDualmonoType":0,"prev_tsId":128,"hdStatus":0,"audioPid":2002,"nitVersion":0,"ipChannel":false,"userCustomize":false,"frequency":706000,"channelName":"Channel U","mapType":"CUSTOMIZED","discarded":false,"disableUpdate":false,"prev_onId":8442,"adultChannel":0,"bEncryptionch":false,"audioSetbyUser":false,"fineTuned":false,"conflictNumber":0,"orgPhysicalNum":0,"programNum":6879,"subtitleSetbyUser":false,"bandwidth":"BW_8M","rfIpChannel":false,"SVCID":6879,"userAudio":8191,"TSID":128,"numUnSel":false,"userEditChNumber":false,"scrambled":false,"stillPicture":false,"usedChName":false,"prevNitVersion":0,"prevNetwork_id":0,"serviceType":1,"altChannel":false,"profileV2":0,"ac3AudioType":false,"userSubtitle":8191}],"modelInfo":{"country":"Singapore"}}</legacybroadcast>
	</CHANNEL>
</TLLDATA>
				
			

In the above sample file, the <legacybroadcast> tag contains the entire JSON string responsible for the TV Channels list.
Copy the contents of the <legacybroadcast> tag and paste it in any of the JSONFormatter site such as JSONPrettyPrint which will give you a formatted output of the JSON String. 
In this String, search for the key named “channelList”. The channelList contains a JSONArray. Copy this entire JSONArray which is nothing but all the TV Channels List, into a Notepad++ file and then make the necessary changes to the Channel names and Channel Numbers. Take a look at the below example of JSONString of Channet List.

				
					[
  {
    "majorNumber": 1,
    ..
    ..
    "channelName": "Channel 5",
    ..
    ..
  },
  {
    ..
    ..
    "majorNumber": 2,
    ..
    ..
    "channelName": "Channel 8",
    ..
    ..
  }
]
				
			

In the above JSONArray, each JSONObject is a TV Channel and each key-value pair represents a parameter.
For the sake of modification of the Channel Name and Number, we are only concerned with the two keys namely “majorNumber” and “channelName” which is responsible for the Channel Number and Channel Name respectively.

Once you make the changes for each of the channels inside the JSONArray, you must copy this entire JSONArray to JSONFormatter in order to minify the JSON and put it back inside its place from where you had picked it from the TLL file.

Uploading files on estv.cloud

The newer version of the LG TV have the TV Channel list in the form of a JSON String as showin in following example:

The estv.cloud accepts LGService.xml file as it is, however, all the TLL and IPK files needs to be zipped into one file and then it has to be uploaded.

  • Sign in to estv.cloud using Administrator account.
  • Navigate to ESTV Settings > ESTV Files
  • Select the appropriate property for which you are uploading the new files
  • Under LGService.xml column, choose the newly modified LGService.xml file and press upload
  • Under contents.zip column, choose the newly produced zip file (containing IPKs and TLLs) and press upload

That’s all, you have successfully amended and uploaded the new TV Channels file to the cloud. In a matter of 5 minutes, it will be synced with the esTV controller of the property.

Note: Once these files are successfully synced on to the esTV Controller, it requires a reboot for the TV for the new files to be downloaded on to the TV.

Important Notes

  • The TV Models 43UT660H0TA and KEY039D013B can use the same .TLL file for TV Channels ( Make sure to remove tag from the .TLL file )
  • The TV Models 43US660H0TD and 43UM660H0SG can use the same .TLL file for TV Channels ( Make sure to remove tag from the .TLL file )