Merge "Tuner FW: fix filter type check." into rvc-dev am: 9c03ae0623 am: e0ab676c03 am: 6cd700178c
Change-Id: I63786f5d02f9b9d7e61284aa01c1f736a68e8fe6
This commit is contained in:
@@ -447,7 +447,7 @@ public class Tuner implements AutoCloseable {
|
||||
private native DvrRecorder nativeOpenDvrRecorder(long bufferSize);
|
||||
private native DvrPlayback nativeOpenDvrPlayback(long bufferSize);
|
||||
|
||||
private static native DemuxCapabilities nativeGetDemuxCapabilities();
|
||||
private native DemuxCapabilities nativeGetDemuxCapabilities();
|
||||
|
||||
private native int nativeCloseDemux(int handle);
|
||||
private native int nativeCloseFrontend(int handle);
|
||||
@@ -939,8 +939,7 @@ public class Tuner implements AutoCloseable {
|
||||
Filter filter = nativeOpenFilter(
|
||||
mainType, TunerUtils.getFilterSubtype(mainType, subType), bufferSize);
|
||||
if (filter != null) {
|
||||
filter.setMainType(mainType);
|
||||
filter.setSubtype(subType);
|
||||
filter.setType(mainType, subType);
|
||||
filter.setCallback(cb, executor);
|
||||
if (mHandler == null) {
|
||||
mHandler = createEventHandler();
|
||||
@@ -1147,8 +1146,11 @@ public class Tuner implements AutoCloseable {
|
||||
}
|
||||
|
||||
/* package */ void releaseLnb() {
|
||||
mTunerResourceManager.releaseLnb(mLnbHandle, mClientId);
|
||||
mLnbHandle = null;
|
||||
if (mLnbHandle != null) {
|
||||
// LNB handle can be null if it's opened by name.
|
||||
mTunerResourceManager.releaseLnb(mLnbHandle, mClientId);
|
||||
mLnbHandle = null;
|
||||
}
|
||||
mLnb = null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -221,12 +221,9 @@ public class Filter implements AutoCloseable {
|
||||
}
|
||||
|
||||
/** @hide */
|
||||
public void setMainType(@Type int mainType) {
|
||||
public void setType(@Type int mainType, @Subtype int subtype) {
|
||||
mMainType = mainType;
|
||||
}
|
||||
/** @hide */
|
||||
public void setSubtype(@Subtype int subtype) {
|
||||
mSubtype = subtype;
|
||||
mSubtype = TunerUtils.getFilterSubtype(mainType, subtype);
|
||||
}
|
||||
|
||||
/** @hide */
|
||||
|
||||
@@ -2975,7 +2975,7 @@ static jint copyData(JNIEnv *env, std::unique_ptr<MQ>& mq, EventFlag* flag, jbyt
|
||||
jbyte *dst = env->GetByteArrayElements(buffer, &isCopy);
|
||||
ALOGD("copyData, isCopy=%d", isCopy);
|
||||
if (dst == nullptr) {
|
||||
ALOGD("Failed to GetByteArrayElements");
|
||||
jniThrowRuntimeException(env, "Failed to GetByteArrayElements");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2983,7 +2983,7 @@ static jint copyData(JNIEnv *env, std::unique_ptr<MQ>& mq, EventFlag* flag, jbyt
|
||||
env->ReleaseByteArrayElements(buffer, dst, 0);
|
||||
flag->wake(static_cast<uint32_t>(DemuxQueueNotifyBits::DATA_CONSUMED));
|
||||
} else {
|
||||
ALOGD("Failed to read FMQ");
|
||||
jniThrowRuntimeException(env, "Failed to read FMQ");
|
||||
env->ReleaseByteArrayElements(buffer, dst, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user