Loading media/jni/android_media_tv_Tuner.cpp +71 −0 Original line number Diff line number Diff line Loading @@ -993,6 +993,77 @@ Return<void> FrontendCallback::onScanMessage(FrontendScanMessageType type, const return Void(); } Return<void> FrontendCallback::onScanMessageExt1_1(FrontendScanMessageTypeExt1_1 type, const FrontendScanMessageExt1_1& message) { ALOGD("FrontendCallback::onScanMessageExt1_1, type=%d", type); JNIEnv *env = AndroidRuntime::getJNIEnv(); jclass clazz = env->FindClass("android/media/tv/tuner/Tuner"); switch(type) { case FrontendScanMessageTypeExt1_1::MODULATION: { jint modulation = -1; switch (message.modulation().getDiscriminator()) { case FrontendModulation::hidl_discriminator::dvbc: { modulation = (jint) message.modulation().dvbc(); break; } case FrontendModulation::hidl_discriminator::dvbt: { modulation = (jint) message.modulation().dvbt(); break; } case FrontendModulation::hidl_discriminator::dvbs: { modulation = (jint) message.modulation().dvbs(); break; } case FrontendModulation::hidl_discriminator::isdbs: { modulation = (jint) message.modulation().isdbs(); break; } case FrontendModulation::hidl_discriminator::isdbs3: { modulation = (jint) message.modulation().isdbs3(); break; } case FrontendModulation::hidl_discriminator::isdbt: { modulation = (jint) message.modulation().isdbt(); break; } case FrontendModulation::hidl_discriminator::atsc: { modulation = (jint) message.modulation().atsc(); break; } case FrontendModulation::hidl_discriminator::atsc3: { modulation = (jint) message.modulation().atsc3(); break; } case FrontendModulation::hidl_discriminator::dtmb: { modulation = (jint) message.modulation().dtmb(); break; } default: { break; } } if (modulation > 0) { env->CallVoidMethod( mObject, env->GetMethodID(clazz, "onModulationReported", "(I)V"), modulation); } break; } case FrontendScanMessageTypeExt1_1::HIGH_PRIORITY: { bool isHighPriority = message.isHighPriority(); env->CallVoidMethod( mObject, env->GetMethodID(clazz, "onPriorityReported", "([B)V"), isHighPriority); break; } default: break; } return Void(); } /////////////// Tuner /////////////////////// sp<ITuner> JTuner::mTuner; Loading media/jni/android_media_tv_Tuner.h +6 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <android/hardware/tv/tuner/1.1/IFilter.h> #include <android/hardware/tv/tuner/1.1/IFilterCallback.h> #include <android/hardware/tv/tuner/1.1/IFrontend.h> #include <android/hardware/tv/tuner/1.1/IFrontendCallback.h> #include <android/hardware/tv/tuner/1.1/ITuner.h> #include <android/hardware/tv/tuner/1.1/types.h> Loading Loading @@ -63,7 +64,6 @@ using ::android::hardware::tv::tuner::V1_0::IDvrCallback; using ::android::hardware::tv::tuner::V1_0::IFilter; using ::android::hardware::tv::tuner::V1_1::IFilterCallback; using ::android::hardware::tv::tuner::V1_0::IFrontend; using ::android::hardware::tv::tuner::V1_0::IFrontendCallback; using ::android::hardware::tv::tuner::V1_0::ILnb; using ::android::hardware::tv::tuner::V1_0::ILnbCallback; using ::android::hardware::tv::tuner::V1_0::ITimeFilter; Loading @@ -73,6 +73,9 @@ using ::android::hardware::tv::tuner::V1_0::LnbId; using ::android::hardware::tv::tuner::V1_0::PlaybackStatus; using ::android::hardware::tv::tuner::V1_0::RecordStatus; using ::android::hardware::tv::tuner::V1_0::Result; using ::android::hardware::tv::tuner::V1_1::FrontendScanMessageExt1_1; using ::android::hardware::tv::tuner::V1_1::FrontendScanMessageTypeExt1_1; using ::android::hardware::tv::tuner::V1_1::IFrontendCallback; using MQ = MessageQueue<uint8_t, kSynchronizedReadWrite>; Loading Loading @@ -191,6 +194,8 @@ struct FrontendCallback : public IFrontendCallback { virtual Return<void> onEvent(FrontendEventType frontendEventType); virtual Return<void> onScanMessage( FrontendScanMessageType type, const FrontendScanMessage& message); virtual Return<void> onScanMessageExt1_1( FrontendScanMessageTypeExt1_1 type, const FrontendScanMessageExt1_1& messageExt); jweak mObject; FrontendId mId; Loading Loading
media/jni/android_media_tv_Tuner.cpp +71 −0 Original line number Diff line number Diff line Loading @@ -993,6 +993,77 @@ Return<void> FrontendCallback::onScanMessage(FrontendScanMessageType type, const return Void(); } Return<void> FrontendCallback::onScanMessageExt1_1(FrontendScanMessageTypeExt1_1 type, const FrontendScanMessageExt1_1& message) { ALOGD("FrontendCallback::onScanMessageExt1_1, type=%d", type); JNIEnv *env = AndroidRuntime::getJNIEnv(); jclass clazz = env->FindClass("android/media/tv/tuner/Tuner"); switch(type) { case FrontendScanMessageTypeExt1_1::MODULATION: { jint modulation = -1; switch (message.modulation().getDiscriminator()) { case FrontendModulation::hidl_discriminator::dvbc: { modulation = (jint) message.modulation().dvbc(); break; } case FrontendModulation::hidl_discriminator::dvbt: { modulation = (jint) message.modulation().dvbt(); break; } case FrontendModulation::hidl_discriminator::dvbs: { modulation = (jint) message.modulation().dvbs(); break; } case FrontendModulation::hidl_discriminator::isdbs: { modulation = (jint) message.modulation().isdbs(); break; } case FrontendModulation::hidl_discriminator::isdbs3: { modulation = (jint) message.modulation().isdbs3(); break; } case FrontendModulation::hidl_discriminator::isdbt: { modulation = (jint) message.modulation().isdbt(); break; } case FrontendModulation::hidl_discriminator::atsc: { modulation = (jint) message.modulation().atsc(); break; } case FrontendModulation::hidl_discriminator::atsc3: { modulation = (jint) message.modulation().atsc3(); break; } case FrontendModulation::hidl_discriminator::dtmb: { modulation = (jint) message.modulation().dtmb(); break; } default: { break; } } if (modulation > 0) { env->CallVoidMethod( mObject, env->GetMethodID(clazz, "onModulationReported", "(I)V"), modulation); } break; } case FrontendScanMessageTypeExt1_1::HIGH_PRIORITY: { bool isHighPriority = message.isHighPriority(); env->CallVoidMethod( mObject, env->GetMethodID(clazz, "onPriorityReported", "([B)V"), isHighPriority); break; } default: break; } return Void(); } /////////////// Tuner /////////////////////// sp<ITuner> JTuner::mTuner; Loading
media/jni/android_media_tv_Tuner.h +6 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <android/hardware/tv/tuner/1.1/IFilter.h> #include <android/hardware/tv/tuner/1.1/IFilterCallback.h> #include <android/hardware/tv/tuner/1.1/IFrontend.h> #include <android/hardware/tv/tuner/1.1/IFrontendCallback.h> #include <android/hardware/tv/tuner/1.1/ITuner.h> #include <android/hardware/tv/tuner/1.1/types.h> Loading Loading @@ -63,7 +64,6 @@ using ::android::hardware::tv::tuner::V1_0::IDvrCallback; using ::android::hardware::tv::tuner::V1_0::IFilter; using ::android::hardware::tv::tuner::V1_1::IFilterCallback; using ::android::hardware::tv::tuner::V1_0::IFrontend; using ::android::hardware::tv::tuner::V1_0::IFrontendCallback; using ::android::hardware::tv::tuner::V1_0::ILnb; using ::android::hardware::tv::tuner::V1_0::ILnbCallback; using ::android::hardware::tv::tuner::V1_0::ITimeFilter; Loading @@ -73,6 +73,9 @@ using ::android::hardware::tv::tuner::V1_0::LnbId; using ::android::hardware::tv::tuner::V1_0::PlaybackStatus; using ::android::hardware::tv::tuner::V1_0::RecordStatus; using ::android::hardware::tv::tuner::V1_0::Result; using ::android::hardware::tv::tuner::V1_1::FrontendScanMessageExt1_1; using ::android::hardware::tv::tuner::V1_1::FrontendScanMessageTypeExt1_1; using ::android::hardware::tv::tuner::V1_1::IFrontendCallback; using MQ = MessageQueue<uint8_t, kSynchronizedReadWrite>; Loading Loading @@ -191,6 +194,8 @@ struct FrontendCallback : public IFrontendCallback { virtual Return<void> onEvent(FrontendEventType frontendEventType); virtual Return<void> onScanMessage( FrontendScanMessageType type, const FrontendScanMessage& message); virtual Return<void> onScanMessageExt1_1( FrontendScanMessageTypeExt1_1 type, const FrontendScanMessageExt1_1& messageExt); jweak mObject; FrontendId mId; Loading