| /* |
| * Copyright 2019 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package android.media.tv.tuner.frontend; |
| |
| import android.annotation.IntDef; |
| import android.annotation.IntRange; |
| import android.annotation.NonNull; |
| import android.annotation.SystemApi; |
| import android.hardware.tv.tuner.V1_0.Constants; |
| |
| import java.lang.annotation.Retention; |
| import java.lang.annotation.RetentionPolicy; |
| |
| /** |
| * Frontend settings for DVBT. |
| * |
| * @hide |
| */ |
| @SystemApi |
| public class DvbtFrontendSettings extends FrontendSettings { |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "TRANSMISSION_MODE_", |
| value = {TRANSMISSION_MODE_UNDEFINED, TRANSMISSION_MODE_AUTO, |
| TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K, TRANSMISSION_MODE_4K, |
| TRANSMISSION_MODE_1K, TRANSMISSION_MODE_16K, TRANSMISSION_MODE_32K}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface TransmissionMode {} |
| |
| /** |
| * Transmission Mode undefined. |
| */ |
| public static final int TRANSMISSION_MODE_UNDEFINED = |
| Constants.FrontendDvbtTransmissionMode.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Transmission Mode automatically |
| */ |
| public static final int TRANSMISSION_MODE_AUTO = Constants.FrontendDvbtTransmissionMode.AUTO; |
| /** |
| * 2K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_2K = Constants.FrontendDvbtTransmissionMode.MODE_2K; |
| /** |
| * 8K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_8K = Constants.FrontendDvbtTransmissionMode.MODE_8K; |
| /** |
| * 4K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_4K = Constants.FrontendDvbtTransmissionMode.MODE_4K; |
| /** |
| * 1K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_1K = Constants.FrontendDvbtTransmissionMode.MODE_1K; |
| /** |
| * 16K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_16K = Constants.FrontendDvbtTransmissionMode.MODE_16K; |
| /** |
| * 32K Transmission Mode. |
| */ |
| public static final int TRANSMISSION_MODE_32K = Constants.FrontendDvbtTransmissionMode.MODE_32K; |
| |
| |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "BANDWIDTH_", |
| value = {BANDWIDTH_UNDEFINED, BANDWIDTH_AUTO, BANDWIDTH_8MHZ, BANDWIDTH_7MHZ, |
| BANDWIDTH_6MHZ, BANDWIDTH_5MHZ, BANDWIDTH_1_7MHZ, BANDWIDTH_10MHZ}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface Bandwidth {} |
| |
| /** |
| * Bandwidth undefined. |
| */ |
| public static final int BANDWIDTH_UNDEFINED = Constants.FrontendDvbtBandwidth.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Bandwidth automatically. |
| */ |
| public static final int BANDWIDTH_AUTO = Constants.FrontendDvbtBandwidth.AUTO; |
| /** |
| * 8 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_8MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_8MHZ; |
| /** |
| * 7 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_7MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_7MHZ; |
| /** |
| * 6 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_6MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_6MHZ; |
| /** |
| * 5 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_5MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_5MHZ; |
| /** |
| * 1,7 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_1_7MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_1_7MHZ; |
| /** |
| * 10 MHz bandwidth. |
| */ |
| public static final int BANDWIDTH_10MHZ = Constants.FrontendDvbtBandwidth.BANDWIDTH_10MHZ; |
| |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "CONSTELLATION_", |
| value = {CONSTELLATION_UNDEFINED, CONSTELLATION_AUTO, CONSTELLATION_QPSK, |
| CONSTELLATION_16QAM, CONSTELLATION_64QAM, |
| CONSTELLATION_256QAM}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface Constellation {} |
| |
| /** |
| * Constellation not defined. |
| */ |
| public static final int CONSTELLATION_UNDEFINED = Constants.FrontendDvbtConstellation.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Constellation automatically. |
| */ |
| public static final int CONSTELLATION_AUTO = Constants.FrontendDvbtConstellation.AUTO; |
| /** |
| * QPSK Constellation. |
| */ |
| public static final int CONSTELLATION_QPSK = |
| Constants.FrontendDvbtConstellation.CONSTELLATION_QPSK; |
| /** |
| * 16QAM Constellation. |
| */ |
| public static final int CONSTELLATION_16QAM = |
| Constants.FrontendDvbtConstellation.CONSTELLATION_16QAM; |
| /** |
| * 64QAM Constellation. |
| */ |
| public static final int CONSTELLATION_64QAM = |
| Constants.FrontendDvbtConstellation.CONSTELLATION_64QAM; |
| /** |
| * 256QAM Constellation. |
| */ |
| public static final int CONSTELLATION_256QAM = |
| Constants.FrontendDvbtConstellation.CONSTELLATION_256QAM; |
| |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "HIERARCHY_", |
| value = {HIERARCHY_UNDEFINED, HIERARCHY_AUTO, HIERARCHY_NON_NATIVE, HIERARCHY_1_NATIVE, |
| HIERARCHY_2_NATIVE, HIERARCHY_4_NATIVE, HIERARCHY_NON_INDEPTH, HIERARCHY_1_INDEPTH, |
| HIERARCHY_2_INDEPTH, HIERARCHY_4_INDEPTH}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface Hierarchy {} |
| |
| /** |
| * Hierarchy undefined. |
| */ |
| public static final int HIERARCHY_UNDEFINED = Constants.FrontendDvbtHierarchy.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Hierarchy automatically. |
| */ |
| public static final int HIERARCHY_AUTO = Constants.FrontendDvbtHierarchy.AUTO; |
| /** |
| * Non-native Hierarchy |
| */ |
| public static final int HIERARCHY_NON_NATIVE = |
| Constants.FrontendDvbtHierarchy.HIERARCHY_NON_NATIVE; |
| /** |
| * 1-native Hierarchy |
| */ |
| public static final int HIERARCHY_1_NATIVE = Constants.FrontendDvbtHierarchy.HIERARCHY_1_NATIVE; |
| /** |
| * 2-native Hierarchy |
| */ |
| public static final int HIERARCHY_2_NATIVE = Constants.FrontendDvbtHierarchy.HIERARCHY_2_NATIVE; |
| /** |
| * 4-native Hierarchy |
| */ |
| public static final int HIERARCHY_4_NATIVE = Constants.FrontendDvbtHierarchy.HIERARCHY_4_NATIVE; |
| /** |
| * Non-indepth Hierarchy |
| */ |
| public static final int HIERARCHY_NON_INDEPTH = |
| Constants.FrontendDvbtHierarchy.HIERARCHY_NON_INDEPTH; |
| /** |
| * 1-indepth Hierarchy |
| */ |
| public static final int HIERARCHY_1_INDEPTH = |
| Constants.FrontendDvbtHierarchy.HIERARCHY_1_INDEPTH; |
| /** |
| * 2-indepth Hierarchy |
| */ |
| public static final int HIERARCHY_2_INDEPTH = |
| Constants.FrontendDvbtHierarchy.HIERARCHY_2_INDEPTH; |
| /** |
| * 4-indepth Hierarchy |
| */ |
| public static final int HIERARCHY_4_INDEPTH = |
| Constants.FrontendDvbtHierarchy.HIERARCHY_4_INDEPTH; |
| |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "CODERATE_", |
| value = {CODERATE_UNDEFINED, CODERATE_AUTO, CODERATE_1_2, CODERATE_2_3, CODERATE_3_4, |
| CODERATE_5_6, CODERATE_7_8, CODERATE_3_5, CODERATE_4_5, CODERATE_6_7, CODERATE_8_9}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface CodeRate {} |
| |
| /** |
| * Code rate undefined. |
| */ |
| public static final int CODERATE_UNDEFINED = |
| Constants.FrontendDvbtCoderate.UNDEFINED; |
| /** |
| * Hardware is able to detect and set code rate automatically. |
| */ |
| public static final int CODERATE_AUTO = Constants.FrontendDvbtCoderate.AUTO; |
| /** |
| * 1/2 code rate. |
| */ |
| public static final int CODERATE_1_2 = Constants.FrontendDvbtCoderate.CODERATE_1_2; |
| /** |
| * 2/3 code rate. |
| */ |
| public static final int CODERATE_2_3 = Constants.FrontendDvbtCoderate.CODERATE_2_3; |
| /** |
| * 3/4 code rate. |
| */ |
| public static final int CODERATE_3_4 = Constants.FrontendDvbtCoderate.CODERATE_3_4; |
| /** |
| * 5/6 code rate. |
| */ |
| public static final int CODERATE_5_6 = Constants.FrontendDvbtCoderate.CODERATE_5_6; |
| /** |
| * 7/8 code rate. |
| */ |
| public static final int CODERATE_7_8 = Constants.FrontendDvbtCoderate.CODERATE_7_8; |
| /** |
| * 4/5 code rate. |
| */ |
| public static final int CODERATE_3_5 = Constants.FrontendDvbtCoderate.CODERATE_3_5; |
| /** |
| * 4/5 code rate. |
| */ |
| public static final int CODERATE_4_5 = Constants.FrontendDvbtCoderate.CODERATE_4_5; |
| /** |
| * 6/7 code rate. |
| */ |
| public static final int CODERATE_6_7 = Constants.FrontendDvbtCoderate.CODERATE_6_7; |
| /** |
| * 8/9 code rate. |
| */ |
| public static final int CODERATE_8_9 = Constants.FrontendDvbtCoderate.CODERATE_8_9; |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "GUARD_INTERVAL_", |
| value = {GUARD_INTERVAL_UNDEFINED, GUARD_INTERVAL_AUTO, |
| GUARD_INTERVAL_1_32, GUARD_INTERVAL_1_16, |
| GUARD_INTERVAL_1_8, GUARD_INTERVAL_1_4, |
| GUARD_INTERVAL_1_128, |
| GUARD_INTERVAL_19_128, |
| GUARD_INTERVAL_19_256}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface GuardInterval {} |
| |
| /** |
| * Guard Interval undefined. |
| */ |
| public static final int GUARD_INTERVAL_UNDEFINED = |
| Constants.FrontendDvbtGuardInterval.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Guard Interval automatically. |
| */ |
| public static final int GUARD_INTERVAL_AUTO = Constants.FrontendDvbtGuardInterval.AUTO; |
| /** |
| * 1/32 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_1_32 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_1_32; |
| /** |
| * 1/16 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_1_16 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_1_16; |
| /** |
| * 1/8 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_1_8 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_1_8; |
| /** |
| * 1/4 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_1_4 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_1_4; |
| /** |
| * 1/128 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_1_128 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_1_128; |
| /** |
| * 19/128 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_19_128 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_19_128; |
| /** |
| * 19/256 Guard Interval. |
| */ |
| public static final int GUARD_INTERVAL_19_256 = |
| Constants.FrontendDvbtGuardInterval.INTERVAL_19_256; |
| |
| /** @hide */ |
| @IntDef(flag = true, |
| prefix = "STANDARD", |
| value = {STANDARD_AUTO, STANDARD_T, STANDARD_T2} |
| ) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface Standard {} |
| |
| /** |
| * Hardware is able to detect and set Standard automatically. |
| */ |
| public static final int STANDARD_AUTO = Constants.FrontendDvbtStandard.AUTO; |
| /** |
| * T standard. |
| */ |
| public static final int STANDARD_T = Constants.FrontendDvbtStandard.T; |
| /** |
| * T2 standard. |
| */ |
| public static final int STANDARD_T2 = Constants.FrontendDvbtStandard.T2; |
| |
| /** @hide */ |
| @IntDef(prefix = "PLP_MODE_", |
| value = {PLP_MODE_UNDEFINED, PLP_MODE_AUTO, PLP_MODE_MANUAL}) |
| @Retention(RetentionPolicy.SOURCE) |
| public @interface PlpMode {} |
| |
| /** |
| * Physical Layer Pipe (PLP) Mode undefined. |
| */ |
| public static final int PLP_MODE_UNDEFINED = Constants.FrontendDvbtPlpMode.UNDEFINED; |
| /** |
| * Hardware is able to detect and set Physical Layer Pipe (PLP) Mode automatically. |
| */ |
| public static final int PLP_MODE_AUTO = Constants.FrontendDvbtPlpMode.AUTO; |
| /** |
| * Physical Layer Pipe (PLP) manual Mode. |
| */ |
| public static final int PLP_MODE_MANUAL = Constants.FrontendDvbtPlpMode.MANUAL; |
| |
| |
| private final int mTransmissionMode; |
| private final int mBandwidth; |
| private final int mConstellation; |
| private final int mHierarchy; |
| private final int mHpCodeRate; |
| private final int mLpCodeRate; |
| private final int mGuardInterval; |
| private final boolean mIsHighPriority; |
| private final int mStandard; |
| private final boolean mIsMiso; |
| private final int mPlpMode; |
| private final int mPlpId; |
| private final int mPlpGroupId; |
| |
| private DvbtFrontendSettings(int frequency, int transmissionMode, int bandwidth, |
| int constellation, int hierarchy, int hpCodeRate, int lpCodeRate, int guardInterval, |
| boolean isHighPriority, int standard, boolean isMiso, int plpMode, int plpId, |
| int plpGroupId) { |
| super(frequency); |
| mTransmissionMode = transmissionMode; |
| mBandwidth = bandwidth; |
| mConstellation = constellation; |
| mHierarchy = hierarchy; |
| mHpCodeRate = hpCodeRate; |
| mLpCodeRate = lpCodeRate; |
| mGuardInterval = guardInterval; |
| mIsHighPriority = isHighPriority; |
| mStandard = standard; |
| mIsMiso = isMiso; |
| mPlpMode = plpMode; |
| mPlpId = plpId; |
| mPlpGroupId = plpGroupId; |
| } |
| |
| /** |
| * Gets Transmission Mode. |
| */ |
| @TransmissionMode |
| public int getTransmissionMode() { |
| return mTransmissionMode; |
| } |
| /** |
| * Gets Bandwidth. |
| */ |
| @Bandwidth |
| public int getBandwidth() { |
| return mBandwidth; |
| } |
| /** |
| * Gets Constellation. |
| */ |
| @Constellation |
| public int getConstellation() { |
| return mConstellation; |
| } |
| /** |
| * Gets Hierarchy. |
| */ |
| @Hierarchy |
| public int getHierarchy() { |
| return mHierarchy; |
| } |
| /** |
| * Gets Code Rate for High Priority level. |
| */ |
| @CodeRate |
| public int getHighPriorityCodeRate() { |
| return mHpCodeRate; |
| } |
| /** |
| * Gets Code Rate for Low Priority level. |
| */ |
| @CodeRate |
| public int getLowPriorityCodeRate() { |
| return mLpCodeRate; |
| } |
| /** |
| * Gets Guard Interval. |
| */ |
| @GuardInterval |
| public int getGuardInterval() { |
| return mGuardInterval; |
| } |
| /** |
| * Checks whether it's high priority. |
| */ |
| public boolean isHighPriority() { |
| return mIsHighPriority; |
| } |
| /** |
| * Gets Standard. |
| */ |
| @Standard |
| public int getStandard() { |
| return mStandard; |
| } |
| /** |
| * Gets whether it's MISO. |
| */ |
| public boolean isMiso() { |
| return mIsMiso; |
| } |
| /** |
| * Gets Physical Layer Pipe (PLP) Mode. |
| */ |
| @PlpMode |
| public int getPlpMode() { |
| return mPlpMode; |
| } |
| /** |
| * Gets Physical Layer Pipe (PLP) ID. |
| */ |
| public int getPlpId() { |
| return mPlpId; |
| } |
| /** |
| * Gets Physical Layer Pipe (PLP) group ID. |
| */ |
| public int getPlpGroupId() { |
| return mPlpGroupId; |
| } |
| |
| /** |
| * Creates a builder for {@link DvbtFrontendSettings}. |
| */ |
| @NonNull |
| public static Builder builder() { |
| return new Builder(); |
| } |
| |
| /** |
| * Builder for {@link DvbtFrontendSettings}. |
| */ |
| public static class Builder { |
| private int mFrequency = 0; |
| private int mTransmissionMode = TRANSMISSION_MODE_UNDEFINED; |
| private int mBandwidth = BANDWIDTH_UNDEFINED; |
| private int mConstellation = CONSTELLATION_UNDEFINED; |
| private int mHierarchy = HIERARCHY_UNDEFINED; |
| private int mHpCodeRate = CODERATE_UNDEFINED; |
| private int mLpCodeRate = CODERATE_UNDEFINED; |
| private int mGuardInterval = GUARD_INTERVAL_UNDEFINED; |
| private boolean mIsHighPriority = false; |
| private int mStandard = STANDARD_AUTO; |
| private boolean mIsMiso = false; |
| private int mPlpMode = PLP_MODE_UNDEFINED; |
| private int mPlpId = 0; |
| private int mPlpGroupId = 0; |
| |
| private Builder() { |
| } |
| |
| /** |
| * Sets frequency in Hz. |
| * |
| * <p>Default value is 0. |
| */ |
| @NonNull |
| @IntRange(from = 1) |
| public Builder setFrequency(int frequency) { |
| mFrequency = frequency; |
| return this; |
| } |
| |
| /** |
| * Sets Transmission Mode. |
| * |
| * <p>Default value is {@link #TRANSMISSION_MODE_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setTransmissionMode(@TransmissionMode int transmissionMode) { |
| mTransmissionMode = transmissionMode; |
| return this; |
| } |
| /** |
| * Sets Bandwidth. |
| * |
| * <p>Default value is {@link #BANDWIDTH_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setBandwidth(@Bandwidth int bandwidth) { |
| mBandwidth = bandwidth; |
| return this; |
| } |
| /** |
| * Sets Constellation. |
| * |
| * <p>Default value is {@link #CONSTELLATION_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setConstellation(@Constellation int constellation) { |
| mConstellation = constellation; |
| return this; |
| } |
| /** |
| * Sets Hierarchy. |
| * |
| * <p>Default value is {@link #HIERARCHY_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setHierarchy(@Hierarchy int hierarchy) { |
| mHierarchy = hierarchy; |
| return this; |
| } |
| /** |
| * Sets Code Rate for High Priority level. |
| * |
| * <p>Default value is {@link #CODERATE_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setHighPriorityCodeRate(@CodeRate int hpCodeRate) { |
| mHpCodeRate = hpCodeRate; |
| return this; |
| } |
| /** |
| * Sets Code Rate for Low Priority level. |
| * |
| * <p>Default value is {@link #CODERATE_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setLowPriorityCodeRate(@CodeRate int lpCodeRate) { |
| mLpCodeRate = lpCodeRate; |
| return this; |
| } |
| /** |
| * Sets Guard Interval. |
| * |
| * <p>Default value is {@link #GUARD_INTERVAL_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setGuardInterval(@GuardInterval int guardInterval) { |
| mGuardInterval = guardInterval; |
| return this; |
| } |
| /** |
| * Sets whether it's high priority. |
| * |
| * <p>Default value is {@code false}. |
| */ |
| @NonNull |
| public Builder setHighPriority(boolean isHighPriority) { |
| mIsHighPriority = isHighPriority; |
| return this; |
| } |
| /** |
| * Sets Standard. |
| * |
| * <p>Default value is {@link #STANDARD_AUTO}. |
| */ |
| @NonNull |
| public Builder setStandard(@Standard int standard) { |
| mStandard = standard; |
| return this; |
| } |
| /** |
| * Sets whether it's MISO. |
| * |
| * <p>Default value is {@code false}. |
| */ |
| @NonNull |
| public Builder setMiso(boolean isMiso) { |
| mIsMiso = isMiso; |
| return this; |
| } |
| /** |
| * Sets Physical Layer Pipe (PLP) Mode. |
| * |
| * <p>Default value is {@link #PLP_MODE_UNDEFINED}. |
| */ |
| @NonNull |
| public Builder setPlpMode(@PlpMode int plpMode) { |
| mPlpMode = plpMode; |
| return this; |
| } |
| /** |
| * Sets Physical Layer Pipe (PLP) ID. |
| * |
| * <p>Default value is 0. |
| */ |
| @NonNull |
| public Builder setPlpId(int plpId) { |
| mPlpId = plpId; |
| return this; |
| } |
| /** |
| * Sets Physical Layer Pipe (PLP) group ID. |
| * |
| * <p>Default value is 0. |
| */ |
| @NonNull |
| public Builder setPlpGroupId(int plpGroupId) { |
| mPlpGroupId = plpGroupId; |
| return this; |
| } |
| |
| /** |
| * Builds a {@link DvbtFrontendSettings} object. |
| */ |
| @NonNull |
| public DvbtFrontendSettings build() { |
| return new DvbtFrontendSettings(mFrequency, mTransmissionMode, mBandwidth, |
| mConstellation, mHierarchy, mHpCodeRate, mLpCodeRate, mGuardInterval, |
| mIsHighPriority, mStandard, mIsMiso, mPlpMode, mPlpId, mPlpGroupId); |
| } |
| } |
| |
| @Override |
| public int getType() { |
| return FrontendSettings.TYPE_DVBT; |
| } |
| } |