diff options
author | shubang <shubang@google.com> | 2020-07-16 14:33:30 -0700 |
---|---|---|
committer | Henry Fang <quxiangfang@google.com> | 2020-12-29 20:19:01 +0000 |
commit | 89c3714df4dcddd87974d7844246b223dd3d4045 (patch) | |
tree | 2b0332eb4509b7bfae3d14d529cd8bf38c67ebba /media | |
parent | eec09803da33c931644f8cabfefd0d9a72547862 (diff) |
Tuner JNI: fix the DATA_READY and DATA_CONSUMED flags
Bug: 161481210
Test: cuttlefish
Change-Id: Ifd8b03259eff2296d1420695176d34026ba586fd
Merged-In: Ifd8b03259eff2296d1420695176d34026ba586fd
Diffstat (limited to 'media')
-rw-r--r-- | media/jni/android_media_tv_Tuner.cpp | 9 |
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 515d610109ab..3e3ac8d2e92c 100644 --- a/media/jni/android_media_tv_Tuner.cpp +++ b/media/jni/android_media_tv_Tuner.cpp @@ -3497,6 +3497,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; } @@ -3524,7 +3528,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); @@ -3585,6 +3589,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; } |