summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenry Fang <quxiangfang@google.com>2020-12-30 18:16:44 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-12-30 18:16:44 +0000
commite02a166bb55a509a659ef3b26bf53d5ca23fbfaa (patch)
tree150861a9abad83d55f3c116ad7202fffe64d53c9
parente8efe9e7cd2b0d98f51b9a864142af2ed8affa5f (diff)
parentba032abd1a25f160d7211a0db0b99623a2b2adfc (diff)
Merge "Tuner JNI: fix the DATA_READY and DATA_CONSUMED flags" am: ba032abd1a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1536947 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: If7092d7333a95f440490b8432cf7c2e9f209c16f
-rw-r--r--media/jni/android_media_tv_Tuner.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/media/jni/android_media_tv_Tuner.cpp b/media/jni/android_media_tv_Tuner.cpp
index f195d85eef67..5db672993df1 100644
--- a/media/jni/android_media_tv_Tuner.cpp
+++ b/media/jni/android_media_tv_Tuner.cpp
@@ -3509,6 +3509,10 @@ static jlong android_media_tv_Tuner_read_dvr(JNIEnv *env, jobject dvr, jlong siz
} else {
ALOGE("dvrMq.beginWrite failed");
}
+
+ if (ret > 0) {
+ dvrSp->mDvrMQEventFlag->wake(static_cast<uint32_t>(DemuxQueueNotifyBits::DATA_READY));
+ }
return (jlong) ret;
}
@@ -3536,7 +3540,7 @@ static jlong android_media_tv_Tuner_read_dvr_from_array(
if (dvrSp->mDvrMQ->write(reinterpret_cast<unsigned char*>(src) + offset, size)) {
env->ReleaseByteArrayElements(buffer, src, 0);
- dvrSp->mDvrMQEventFlag->wake(static_cast<uint32_t>(DemuxQueueNotifyBits::DATA_CONSUMED));
+ dvrSp->mDvrMQEventFlag->wake(static_cast<uint32_t>(DemuxQueueNotifyBits::DATA_READY));
} else {
ALOGD("Failed to write FMQ");
env->ReleaseByteArrayElements(buffer, src, 0);
@@ -3597,6 +3601,9 @@ static jlong android_media_tv_Tuner_write_dvr(JNIEnv *env, jobject dvr, jlong si
} else {
ALOGE("dvrMq.beginRead failed");
}
+ if (ret > 0) {
+ dvrSp->mDvrMQEventFlag->wake(static_cast<uint32_t>(DemuxQueueNotifyBits::DATA_CONSUMED));
+ }
return (jlong) ret;
}