Merge "Fix TunerService/TunerClient implementation issues" into sc-dev

This commit is contained in:
Amy Zhang
2021-04-19 20:18:30 +00:00
committed by Android (Google) Code Review
3 changed files with 15 additions and 6 deletions

View File

@@ -3029,7 +3029,8 @@ static FrontendSettings getFrontendSettings(JNIEnv *env, int type, jobject setti
}
}
static FrontendSettingsExt1_1 getFrontendSettingsExt1_1(JNIEnv *env, int type, jobject settings) {
static FrontendSettingsExt1_1 getFrontendSettingsExt1_1(
JNIEnv *env, int type, jobject settings, int tunerVersion) {
ALOGD("getFrontendSettingsExt1_1 %d", type);
FrontendSettingsExt1_1 settingsExt1_1 {
@@ -3038,6 +3039,10 @@ static FrontendSettingsExt1_1 getFrontendSettingsExt1_1(JNIEnv *env, int type, j
};
settingsExt1_1.settingExt.noinit();
if (tunerVersion < TUNER_VERSION_1_1) {
return settingsExt1_1;
}
if (type == static_cast<int>(::android::hardware::tv::tuner::V1_1::FrontendType::DTMB)) {
getDtmbFrontendSettings(env, settings, settingsExt1_1);
} else {
@@ -3220,7 +3225,8 @@ static jobject android_media_tv_Tuner_open_frontend_by_handle(
static int android_media_tv_Tuner_tune(JNIEnv *env, jobject thiz, jint type, jobject settings) {
sp<JTuner> tuner = getTuner(env, thiz);
FrontendSettings setting = getFrontendSettings(env, type, settings);
FrontendSettingsExt1_1 settingExt = getFrontendSettingsExt1_1(env, type, settings);
FrontendSettingsExt1_1 settingExt = getFrontendSettingsExt1_1(
env, type, settings, tuner->getTunerVersion());
return tuner->tune(setting, settingExt);
}
@@ -3233,7 +3239,8 @@ static int android_media_tv_Tuner_scan(
JNIEnv *env, jobject thiz, jint settingsType, jobject settings, jint scanType) {
sp<JTuner> tuner = getTuner(env, thiz);
FrontendSettings setting = getFrontendSettings(env, settingsType, settings);
FrontendSettingsExt1_1 settingExt = getFrontendSettingsExt1_1(env, settingsType, settings);
FrontendSettingsExt1_1 settingExt = getFrontendSettingsExt1_1(
env, settingsType, settings, tuner->getTunerVersion());
return tuner->scan(setting, static_cast<FrontendScanType>(scanType), settingExt);
}

View File

@@ -73,6 +73,8 @@ using ::android::hardware::tv::tuner::V1_1::FrontendScanMessageTypeExt1_1;
using MQ = MessageQueue<uint8_t, kSynchronizedReadWrite>;
const static int TUNER_VERSION_1_1 = ((1 << 16) | 1);
namespace android {
struct LnbClientCallbackImpl : public LnbClientCallback {

View File

@@ -596,11 +596,11 @@ TunerFilterSectionSettings FilterClient::getAidlSectionSettings(
sectionBits.mask.resize(hidlSectionBits.mask.size());
sectionBits.mode.resize(hidlSectionBits.mode.size());
copy(hidlSectionBits.filter.begin(), hidlSectionBits.filter.end(),
hidlSectionBits.filter.begin());
sectionBits.filter.begin());
copy(hidlSectionBits.mask.begin(), hidlSectionBits.mask.end(),
hidlSectionBits.mask.begin());
sectionBits.mask.begin());
copy(hidlSectionBits.mode.begin(), hidlSectionBits.mode.end(),
hidlSectionBits.mode.begin());
sectionBits.mode.begin());
aidlSection.condition.set<TunerFilterSectionCondition::sectionBits>(sectionBits);
break;
}