Namespace hcap.channel

hcap.channel

Namespace Summary
Constructor Attributes Constructor Name and Description
 

Method Summary

Namespace Detail

hcap.channel

Field Detail

<static> <constant> hcap.channel.NO_STREAM_PID
No stream PID.
Since:
1.3.1

Method Detail

  • <static> hcap.channel.getChannelMap(param)
    Gets information of the channel which is registered in the shortcut.
    hcap.channel.getChannelMap({
         "onSuccess" : function(s) {
             console.log("onSuccess : list length = " + s.list.length);
             for (var i = 0; i < s.list.length; i++) {
                 console.log(
                     "[" + i + "].img_url2 = " + s.list[i].img_url2 +
                     "[" + i + "].img_url = " + s.list[i].img_url +
                     "[" + i + "].short_cut = " + s.list[i].short_cut +
                     "[" + i + "].channel_type = " + s.list[i].channel_type +
                     "[" + i + "].channel_mode_id = " + s.list[i].channel_mode_id +
                     "[" + i + "].channel_number = " + s.list[i].channel_number +
                     "[" + i + "].channel_name = " + s.list[i].channel_name
                 );
             }
         },
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Array} param.list - list for the channel information registered in the shortcut.
            //         {String} param.list[].img_url2 - logo image url2 of the channel
            //         {String} param.list[].img_url - logo image url of the channel
            //         {String} param.list[].short_cut - shortcut number (1~12) 
            //         {String} param.list[].channel_type - name of the channel type ex) atellite BS
            //         {String} param.list[].channel_mode_id - channel mode id which is number 0~6
            //         {String} param.list[].channel_number - number of the channel ex)101
            //         {String} param.list[].channel_name - channel type and number ex) BS 101
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.23.2
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.getChannelSignalStatus(param)
    Gets the channel signal status.
    hcap.channel.getChannelSignalStatus({
         "onSuccess" : function(s) {
             console.log("onSuccess  :" + 
                 "\n snr value       : " + s.snrValue       +
                 "\n frequency       : " + s.frequency      +
                 "\n signal level    : " + s.signalLevel    +              
                 "\n modulation mode : " + s.modulationMode +
                 "\n lock status     : " + s.lockStatus);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Number} param.snrValue - snr value(dB).
            // {Number} param.frequency - current frequency(KHz).
            // {Number} param.signalLevel - signal level(%).
            // {String} param.modulationMode - modulation mode.
            // {Boolean} param.lockStatus - lock status.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.19.2
  • <static> hcap.channel.getCurrentChannel(param)
    Gets the current channel information.
    For detailed information, such as, example and related information, please refer to hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel({
         "onSuccess" : function(s) {
             console.log("onSuccess :" + 
                 "\n channel status    : " + s.channelStatus   +
                 "\n channel type      : " + s.channelType     +
                 "\n logical number    : " + s.logicalNumber   +
                 "\n frequency         : " + s.frequency       +
                 "\n program number    : " + s.programNumber   +
                 "\n major number      : " + s.majorNumber     +
                 "\n minor number      : " + s.minorNumber     +
                 "\n satellite ID      : " + s.satelliteId     +
                 "\n polarization      : " + s.polarization    +
                 "\n rf broadcast type : " + s.rfBroadcastType +
                 "\n ip                : " + s.ip              +
                 "\n port              : " + s.port            +
                 "\n ip broadcast type : " + s.ipBroadcastType +
                 "\n symbol rate       : " + s.symbolRate      +
                 "\n pcr pid           : " + s.pcrPid          +
                 "\n video pid         : " + s.videoPid        +
                 "\n video stream type : " + s.videoStreamType +
                 "\n audio pid         : " + s.audioPid        +
                 "\n audio stream type : " + s.audioStreamType +
                 "\n signal strength   : " + s.signalStrength  +
                 "\n source address    : " + s.sourceAddress);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Number} [since 1.12.0] param.channelStatus - current channel status in hcap.channel.ChannelStatus.
            // see the { Channel Properties } in hcap.channel.requestChangeCurrentChannel().
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.getCurrentChannelAudioLanguageIndex(param)
    Gets the audio language index of the current channel.
    If application wants to map the index to audio language code, then it can get the audio language list of the current channel by hcap.channel.getCurrentChannelAudioLanguageList().
    ItemValue
    audio language listen,ko,fr,en,xx
    index0, 1, 2, 3, 4
    Audio Language List & Index Example
    hcap.channel.getCurrentChannelAudioLanguageIndex({
         "onSuccess" : function(s) {
             console.log("onSuccess : index = " + s.index);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Number} param.index - audio language index of the current channel.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelAudioLanguageList()
    hcap.channel.setCurrentChannelAudioLanguageIndex()
  • <static> hcap.channel.getCurrentChannelAudioLanguageList(param)
    Gets the list of supported audio languages in the current channel.
    Audio language list is composed of language codes and delimiter comma(',').
    Application can get/set audio language of the current channel by index of the audio language list.

    If there is no audio language list of the current channel, only "xx" is returned as the audio language list.
    And "xx" could be returned as an audio language if the audio language is not mapped to an audio language code.
    Since version 1.24.2, audio languages with "_AD" appended to the original value(ex: pt_AD) are provided for the visually impaired. [EU Only]
    ItemValue
    audio language listen,ko,fr,en,xx
    index0, 1, 2, 3, 4
    Audio Language List & Index Example
    If the application wants to set the audio language to French ('fr'), use the index '2'.
    hcap.channel.getCurrentChannelAudioLanguageList({
         "onSuccess" : function(s) {
             console.log("onSuccess : list = " + s.list);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {String} param.list - audio language list string 
            //     which is composed of language codes separated by delimiter comma(',').
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelAudioLanguageIndex()
    hcap.channel.setCurrentChannelAudioLanguageIndex()
  • <static> hcap.channel.getCurrentChannelSubtitleIndex(param)
    Gets the subtitle index of the current channel. If application wants to map the index to subtitle setting value, get subtitle list of the current channel by hcap.channel.getCurrentChannelSubtitleList().
    ItemValue
    Subtitle Listoff,en,ko,fr,en,xx,eng
    index0, 1, 2, 3, 4, 5, 6
    Subtitle List & Index Example
    hcap.channel.getCurrentChannelSubtitleIndex({
         "onSuccess" : function(s) {
             console.log("onSuccess : index = " + s.index);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Number} param.index - subtitle setting index of the current channel.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelSubtitleList()
    hcap.channel.setCurrentChannelSubtitleIndex()
  • <static> hcap.channel.getCurrentChannelSubtitleList(param)
    Gets supported subtitle list of the current channel.
    Subtitle list is composed of subtitle setting values and delimiter comma(',').
    Application can get/set subtitle setting of the current channel by index of the subtitle list.
    "xx" for which no subtitle is displayed, can be returned as a subtitle setting if the subtitle is not mapped to an available system subtitle.
    And "off" can be returned as a subtitle setting to turn off the subtitle.
    If there is no subtitle list of the current channel, only "off" is returned as the subtitle list.
    Since version 1.24.2, subtitles with "_HOH" appended to the original value(ex: sq_HOH) are provided for the hearing impaired. [EU Only]
    ItemValue
    Subtitle Listoff,en,ko,fr,en,xx,eng
    index0, 1, 2, 3, 4, 5, 6
    Subtitle List & Index Example
    If the application wants to set the subtitle to French ('fr'), use the index value '3'.
    hcap.channel.getCurrentChannelSubtitleList({
         "onSuccess" : function(s) {
             console.log("onSuccess : list = " + s.list);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {String} param.list - subtitle list string 
            //     which is composed of subtitle setting values and delimiter comma(',').
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelSubtitleIndex()
    hcap.channel.setCurrentChannelSubtitleIndex()
  • <static> hcap.channel.getDataChannel(param)
    Gets information about the Pro:Centric data channel(RF Channel or IP Channel), which is the channel used to download applications. In case of RF Data Channel, only frequency and program number are valid in channel information.
    hcap.channel.getDataChannel({
         "onSuccess" : function(s) {
             if (s.channelType === hcap.channel.ChannelType.RF_DATA) {
                 console.log("onSuccess :" + 
                     "\n frequency         " + s.frequency       +
                     "\n program number    " + s.programNumber);
             } else if (s.channelType === hcap.channel.ChannelType.IP_DATA) {
                 console.log("onSuccess :" + 
                     "\n ip                " + s.ip              +
                     "\n port              " + s.port);
             } else {
                 console.log("unknown channel type");
             }
         },
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // see the { Channel Properties } in hcap.channel.requestChangeCurrentChannel().
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.getProgramInfo(param)
    Gets the information about the current program and the next program in the current channel.
    hcap.channel.getProgramInfo({
         "onSuccess" : function(s) {
             console.log("onSuccess :" + 
                 "\n currentProgram title = " + s.currentProgram.title +
                 "\n currentProgram startTime = " + s.currentProgram.startTime.year + 
                         "-" + s.currentProgram.startTime.month +
                         "-" + s.currentProgram.startTime.day +
                         " " + s.currentProgram.startTime.hour +
                         " : " + s.currentProgram.startTime.minute +
                         " : " + s.currentProgram.startTime.second +
                 "\n currentProgram length = " + s.currentProgram.lengthInSeconds + "second(s)" +
                 "\n nextProgram title = " + s.nextProgram.title +
                 "\n nextProgram startTime = " + s.nextProgram.startTime.year + 
                         "-" + s.nextProgram.startTime.month +
                         "-" + s.nextProgram.startTime.day +
                         " " + s.nextProgram.startTime.hour +
                         " : " + s.nextProgram.startTime.minute +
                         " : " + s.nextProgram.startTime.second +
                 "\n nextProgram length = " + s.nextProgram.lengthInSeconds + "second(s)");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {String} param.currentProgram.title - title of the current program.
            // {Number} param.currentProgram.startTime.year - year of the start time of the current program.
            // {Number} param.currentProgram.startTime.month - month of the start time of the current program.
            // {Number} param.currentProgram.startTime.day - day of the start time of the current program.
            // {Number} param.currentProgram.startTime.hour - hour of the start time of the current program.
            // {Number} param.currentProgram.startTime.minute - minute of the start time of the current program.
            // {Number} param.currentProgram.startTime.second - second of the start time of the current program.
            // {String} param.currentProgram.lengthInSeconds - length of the current program in seconds. (0 ~ 2^32 - 1)
            // {String} param.nextProgram.title - title of the next program.
            // {Number} param.nextProgram.startTime.year - year of the start time of the next program.
            // {Number} param.nextProgram.startTime.month - month of the start time of the next program.
            // {Number} param.nextProgram.startTime.day - day of the start time of the next program.
            // {Number} param.nextProgram.startTime.hour - hour of the start time of the next program.
            // {Number} param.nextProgram.startTime.minute - minute of the start time of the next program.
            // {Number} param.nextProgram.startTime.second - second of the start time of the next program.
            // {String} param.nextProgram.lengthInSeconds - length of the next program in seconds. (0 ~ 2^32 - 1)
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.5.0
  • <static> hcap.channel.getReadyInbandDataService(param)
    Get the available inband data service in the current channel.
    hcap.channel.getReadyInbandDataService({
         "onSuccess" : function(s) {
             var serviceType = "UNKNOWN";
             switch(s.availableDataServiceType) {
             case hcap.channel.InbandDataServiceType.MHP: serviceType = "MHP"; break;
             case hcap.channel.InbandDataServiceType.MHEG: serviceType = "MHEG"; break;
             case hcap.channel.InbandDataServiceType.HBBTV: serviceType = "HBBTV"; break;
             case hcap.channel.InbandDataServiceType.NONE: serviceType = "NONE"; break;
             default: serviceType = "UNKNOWN"; break;
             }
             console.log("onSuccess : available data service type = " + serviceType);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // {Number} param.availableDataServiceType - available data service type in the current channel. If there is no available data service, hcap.channel.InbandDataServiceType.NONE will be returned.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.8.0
    See:
    {Event} inband_data_service_ready
    hcap.channel.InbandDataServiceType.MHP
    hcap.channel.InbandDataServiceType.MHEG
    hcap.channel.InbandDataServiceType.HBBTV
    hcap.channel.InbandDataServiceType.NONE
  • <static> hcap.channel.getStartChannel(param)
    Gets the start channel information which is the channel displayed at first when TV is turned on.
    This API is very similar to hcap.channel.getCurrentChannel(). For detailed information, such as example and related information, please refer to hcap.channel.requestChangeCurrentChannel().
    hcap.channel.getStartChannel({
         "onSuccess" : function(s) {
             console.log("onSuccess :" + 
                 "\n channel type      : " + s.channelType     +
                 "\n logical number    : " + s.logicalNumber   +
                 "\n frequency         : " + s.frequency       +
                 "\n program number    : " + s.programNumber   +
                 "\n major number      : " + s.majorNumber     +
                 "\n minor number      : " + s.minorNumber     +
                 "\n satellite ID      : " + s.satelliteId     +
                 "\n polarization      : " + s.polarization    +
                 "\n rf broadcast type : " + s.rfBroadcastType +
                 "\n ip                : " + s.ip              +
                 "\n port              : " + s.port            +
                 "\n ip broadcast type : " + s.ipBroadcastType +
                 "\n symbol rate       : " + s.symbolRate      +
                 "\n pcr pid           : " + s.pcrPid          +
                 "\n video pid         : " + s.videoPid        +
                 "\n video stream type : " + s.videoStreamType +
                 "\n audio pid         : " + s.audioPid        +
                 "\n audio stream type : " + s.audioStreamType +
                 "\n signal strength   : " + s.signalStrength  +
                 "\n source address    : " + s.sourceAddress);
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function (param) {
            // see the { Channel Properties } in hcap.channel.requestChangeCurrentChannel().
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.launchInbandDataService(param)
    Launch the application of the inband data service type in the current channel.
    hcap.channel.launchInbandDataService({
         "inband_data_service_type" : hcap.channel.InbandDataServiceType.HBBTV,
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Number} param.inband_data_service_type [Required] - inband data service type to launch at the current channel.
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // No Parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.6.0
    See:
    {Event} inband_data_service_ready
    hcap.channel.InbandDataServiceType.MHP
    hcap.channel.InbandDataServiceType.MHEG
    hcap.channel.InbandDataServiceType.HBBTV
  • <static> hcap.channel.replayCurrentChannel(param)
    Replays the current stopped channel.
    • RF channel : restart channel tuning and replays AV.
    • IP channel : join IP multicast group and replays AV.
    hcap.channel.replayCurrentChannel({
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // no parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function. Replaying already playing channel, or for operation failure
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.requestChangeCurrentChannel(param)
    Requests to change the current channel.
    The result for the channel change operation can be obtained by registering the {Event} channel_changed

    For channel parameters, TV will support only one channel class.

    Channel Class & Parameters
    AV Channel RF channel class 1 (supported in only US model)logicalNumber
    RF channel class 2 (supported in only EU model)frequency + programNumber. (for analog channel, programNumber = 0)
    RF channel class 3 (supported in only US model)majorNumber + minorNumber. (for analog channel, minorNumber = 0)
    RF channel class 4 (supported in only EU model)frequency + programNumber + satelliteId + polarization
    RF channel class 5 (supported in only EU model)frequency + programNumber + plpId. (rfBroadcastType = hcap.channel.RfBroadcastType.TERRESTRIAL_2)
    RF channel class 6 (supported in only US model)majorNumber + minorNumber + plpId. (rfBroadcastType = hcap.channel.RfBroadcastType.TERRESTRIAL_ATSC3, hcap.channel.RfBroadcastType.CABLE_ATSC3)
    IP channel class 1 (supported in only US model)logicalNumber
    IP channel class 2 (supported in both EU model and US model)ip + port
    Data Channel RF channel class 1 (not supported)
    RF channel class 2 (supported in both EU model and US model)frequency + programNumber (required)
    IP channel class 1 (not supported)
    IP channel class 2 (supported in both EU model and US model)ip + port (required)

    If a channel with more than one Channel Class is requested to change, then next priority table will be applied.
    RF channel class 1 is 'X' when logicalNumber is 0.
    RF channel class 2 is 'X' when frequency is 0.
    RF channel class 3 is 'X' when majorNumber is 0.
    RF channel class 4 is 'X' when satelliteId is 0.
    IP channel class 1 is 'X' when logicalNumber is 0.
    IP channel class 2 is 'X' when ip is "0" and port is 0.
    RF channel class 5 is only when the channel type is hcap.channel.RfBroadcastType.TERRESTRIAL_2 and only frequency + programNumber + plpId take affect.
    RF channel class 6 is only when the channel type is hcap.channel.RfBroadcastType.TERRESTRIAL_ATSC3 or hcap.channel.RfBroadcastType.CABLE_ATSC3 and only majorNumber + minorNumber + plpId take affect.
    Other cases than following table will be treated as invalid channel combinations.
    RF channel class 1
    (logicalNumber)
    RF channel class 2
    (frequency + programNumber)
    RF channel class 3
    (majorNumber + minorNumber)
    RF channel class 4
    (frequency + programNumber + satelliteId + polarization)
    Effective Channel Class
    XXXXRF channel class 1
    OXXXRF channel class 1
    XOXXRF channel class 2
    XXOXRF channel class 3
    X-XORF channel class 4
    OOXXRF channel class 2
    OXOXRF channel class 3
    O-XORF channel class 4
    RF Channel

    IP channel class 1
    (logicalNumber)
    IP channel class 2
    (ip + port)
    Effective Channel Class
    XXIP channel class 1
    OXIP channel class 1
    XOIP channel class 2
    OOIP channel class 2
    IP Channel

    hcap.channel.getCurrentChannel() gets the AV (RF/IP) channel information which includes supported channel class information and optional parameters, but unsupported channel classes are filled with 0.

    hcap.channel.getDataChannel() gets the DATA (RF/IP) channel information which includes supported channel class information, but other channel classes and optional parameters are filled with 0.

    Result objects for hcap.channel.getCurrentChannel() and hcap.channel.getDataChannel() have following information.

    Channel TypeDescription
    hcap.channel.ChannelType.RF Defines AV channel via RF signal.
    hcap.channel.ChannelType.IP Defines AV channel via IP network to support IPTV.
    hcap.channel.ChannelType.RF_DATA Defines data channel via RF signal. Applications can download some carousel data.
    hcap.channel.ChannelType.IP_DATA Defines data channel via IP network.
    Data channel operation in IP address range
    Unicast IP Address Applications can download some data from Pro:Centric server using HTTP protocol.
    Multicast IP Address
    (224.0.0.0 ~
    239.255.255.255)
    RF broadcast data will be sent via IP multicast [TS(Transport Stream) over IP multicast].
    In this mode, carousel download operation is same as hcap.channel.ChannelType.RF_DATA
    In this case, HCAP URL can use the special frequency# '1' for this virtual RF channel.
    Channel Type
    hcap.channel.requestChangeCurrentChannel() for IP DATA channel returns false because it has no effect.

    If following option fields are filled correctly in the input object, AV channel change performance will be improved.
    • symbolRate
    • pcrPid, videoPid
    • videoStreamType
    • audioPid
    • audioStreamType

      • Property Name Type Req
        uired
        RFIPRF
        DATA
        IP
        DATA
        Value Description
        channelType Number O O O O O hcap.channel.ChannelType
        Channel type indicator
        logicalNumber Number O O O O X 0 ~ 2^16 - 1 Logical channel number
        frequency Number O O X O X 0 ~ 2^32 - 1 Frequency (Hz, and MHz for satellite)
        programNumber Number O O X O X 0 ~ 2^16 - 1 Program number (0 for analog channel)
        programNumber Number X X O X X 0 ~ 2^16 - 1 Specific program number in IP Stream
        majorNumber Number O O X O X 0 ~ 2^16 - 1 Major channel number
        minorNumber Number O O X O X 0 ~ 2^16 - 1 Minor channel number
        satelliteId Number O O X X X 0 ~ 2^16 - 1 Satellite setting ID
        polarization Number O O X X X hcap.channel.Polarization Polarization mode
        plpId Number O O X X X 0 ~ 0xFF PLP (Physical Layer Pipe) ID
        rfBroadcastType Number O O X O X hcap.channel.RfBroadcastTypeRF broadcast type
        ip String O X O X O [0~255].[0~255].[0~255].[0~255] IP address value
        port Number O X O X O 0 ~ 2^16 - 1 Port number
        ipBroadcastType Number O X O X X hcap.channel.IpBroadcastTypeIP broadcast type (default is UDP)
        symbolRate Number X O X X X 0 ~ 2^32 - 1 Symbol rate (Bd)
        pcrPid Number X O O X X 0 ~ 2^13 - 1 PCR(Program Clock Reference)Packet ID
        videoPid Number X O O X X 0 ~ 2^13 - 1 Video packet ID (hcap.channel.NO_STREAM_PID for audio only channel)
        videoStreamType Number X O O X X hcap.channel.VideoStreamTypeVideo stream type
        audioPid Number X O O X X 0 ~ 2^13 - 1 Audio packet ID
        audioStreamType Number X O O X X hcap.channel.AudioStreamTypeAudio stream type
        signalStrength
        (read only)
        Number X O X O X 0 ~ 255 Channel signal strength
        sourceAddress String X X O X X [0~255].[0~255].[0~255].[0~255] Source IP address for IGMPv3
        Channel Property
        Below are a few examples for channel change request for different channel classes
    // RF channel class 1 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF, 
         "logicalNumber" : 7, 
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // RF channel class 2 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF, 
         "frequency" : 63000000, 
         "programNumber" : 1, 
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // RF channel class 3 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF, 
         "majorNumber" : 9, 
         "minorNumber" : 1, 
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // RF channel class 4 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF,
         "frequency" : 63000000, 
         "programNumber" : 1, 
         "satelliteId" : 1,
         "polarization" : hcap.channel.Polarization.VERTICAL,
         "rfBroadcastType" : hcap.channel.RfBroadcastType.SATELLITE_2, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // RF channel class 5 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF,
         "frequency" : 63000000, 
         "programNumber" : 1, 
         "plpId" : 3,
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL_2, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // RF channel class 6 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.RF,
         "majorNumber" : 9, 
         "minorNumber" : 1, 
         "plpId" : 3,
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL_ATSC3, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // IP channel class 1 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.IP, 
         "logicalNumber" : 9,
         "ipBroadcastType" : hcap.channel.IpBroadcastType.UDP, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // IP channel class 2 change request
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.IP, 
         "ip" : "1.2.3.4",
         "port" : 3333,
         "ipBroadcastType" : hcap.channel.IpBroadcastType.UDP, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    // IP channel class 2 change request with optional property
    hcap.channel.requestChangeCurrentChannel({
         "channelType" : hcap.channel.ChannelType.IP, 
         "ip" : "1.2.3.4",
         "port" : 3333,
         "symbolRate" : 6758,
         "prcPid" : 100,
         "videoPid" : 200,
         "videoStreamType" : hcap.channel.VideoStreamType.MPEG2,
         "audioPid" : 400,
         "audioStreamType" : hcap.channel.AudioStreamType.MPEG2,
         "ipBroadcastType" : hcap.channel.IpBroadcastType.UDP, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • { Channel Properties } [Required] - Channel Information
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // No Parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.setCurrentChannelAudioLanguageIndex(param)
    Sets the audio language of the current channel.
    ItemValue
    audio language listen,ko,fr,en,xx
    index0, 1, 2, 3, 4
    Audio Language List & Index Example
    hcap.channel.setCurrentChannelAudioLanguageIndex({
         "index" : 1, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Number} param.index [Required] - audio language index to be set. Index starts with 0.
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // No Parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
      Setting to the same audio language index as before will invoke this callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelAudioLanguageList()
    hcap.channel.getCurrentChannelAudioLanguageIndex()
  • <static> hcap.channel.setCurrentChannelSubtitleIndex(param)
    Sets the subtitle index of the current channel.
    ItemValue
    Subtitle Listoff,en,ko,fr,en,xx,eng
    index0, 1, 2, 3, 4, 5, 6
    Subtitle List & Index Example
    If the application wants to set the subtitle to French ('fr'), use the index value '3'.
    hcap.channel.setCurrentChannelSubtitleIndex({
         "index" : 1, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Number} param.index [Required] - subtitle setting index to be set. Index starts with 0.
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // No Parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
      Setting to the same subtitle index as before will invoke this callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.getCurrentChannelSubtitleList()
    hcap.channel.getCurrentChannelSubtitleIndex()
  • <static> hcap.channel.setStartChannel(param)
    Sets the start channel which is displayed at first when TV is turned on. This API is very similar to hcap.channel.requestChangeCurrentChannel(), but in this case, just update the start channel setting without channel change. For detailed information, such as example and related information, please refer to hcap.channel.requestChangeCurrentChannel().
    // set start channel with RF channel class 2
    hcap.channel.setStartChannel({
         "channelType" : hcap.channel.ChannelType.RF, 
         "frequency" : 63000000, 
         "programNumber" : 1, 
         "rfBroadcastType" : hcap.channel.RfBroadcastType.TERRESTRIAL, 
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • { Channel Properties } [Required] - Channel Information

    • If you want to set off start channel, set param.channelType to hcap.channel.ChannelType.UNKNOWN.
    • {Function} param.onSuccess [Optional] - success callback function.
      Setting to the same channel as before will invoke this callback function.
        param.onSuccess = function() {
            // No Parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed
  • <static> hcap.channel.stopCurrentChannel(param)
    Stops AV play of the current channel.
    • RF channel : Stops RF tuning and stops playing AV.
    • IP channel : Leaves IP multicast group and stops playing AV.

    This API has only an effect on the current channel.
    When the channel is changed, new channel will be played.
    To replay the current channel, use hcap.channel.replayCurrentChannel().
    hcap.channel.stopCurrentChannel({
         "onSuccess" : function() {
             console.log("onSuccess");
         }, 
         "onFailure" : function(f) {
             console.log("onFailure : errorMessage = " + f.errorMessage);
         }
    });
    Parameters:
    {Object} param
    • {Function} param.onSuccess [Optional] - success callback function.
        param.onSuccess = function() {
            // no parameter.
        }
    • {Function} param.onFailure [Optional] - failure callback function.
      Stopping already stopped channel will invoke this callback function.
        param.onFailure = function (param) {
            // {String} param.errorMessage - in case of failure, this message provides the details.
        }
    Since:
    1.3.1
    See:
    hcap.channel.requestChangeCurrentChannel()
    hcap.channel.getCurrentChannel()
    hcap.channel.replayCurrentChannel()
    hcap.channel.stopCurrentChannel()
    hcap.channel.getDataChannel()
    hcap.channel.getChannelMap()
    hcap.channel.getStartChannel()
    hcap.channel.setStartChannel()
    {Event} channel_changed