diff options
| author | 2020-01-21 17:10:03 +0000 | |
|---|---|---|
| committer | 2020-01-21 17:10:03 +0000 | |
| commit | 454f6eb82401c2bbbbfe7116a2cf898ca6c86a1d (patch) | |
| tree | ad227be9dde7585b5056b5aa256eb50180928276 | |
| parent | 5c5ef714ab8e4eca1a3d6531e9b0e7548005f35b (diff) | |
| parent | 386dead7ec17c77b1b4bc623fbb55d34c239667a (diff) | |
Merge "Unhide scan methods and classes."
| -rwxr-xr-x | api/system-current.txt | 27 | ||||
| -rw-r--r-- | media/java/android/media/tv/tuner/Tuner.java | 5 | ||||
| -rw-r--r-- | media/java/android/media/tv/tuner/TunerConstants.java | 21 | ||||
| -rw-r--r-- | media/java/android/media/tv/tuner/frontend/Atsc3PlpInfo.java | 43 | ||||
| -rw-r--r-- | media/java/android/media/tv/tuner/frontend/ScanCallback.java | 65 |
5 files changed, 104 insertions, 57 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index b77c67232b9a..ef9a4e4fb100 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -4728,7 +4728,9 @@ package android.media.tv.tuner { method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnb(@Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnbByName(@Nullable String, @Nullable java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter(); + method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener); + method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int stopScan(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int stopTune(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings); } @@ -4744,6 +4746,9 @@ package android.media.tv.tuner { field public static final int RESULT_SUCCESS = 0; // 0x0 field public static final int RESULT_UNAVAILABLE = 1; // 0x1 field public static final int RESULT_UNKNOWN_ERROR = 6; // 0x6 + field public static final int SCAN_TYPE_AUTO = 1; // 0x1 + field public static final int SCAN_TYPE_BLIND = 2; // 0x2 + field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0 field public static final int SC_HEVC_INDEX_AUD = 2; // 0x2 field public static final int SC_HEVC_INDEX_SLICE_BLA_N_LP = 16; // 0x10 field public static final int SC_HEVC_INDEX_SLICE_BLA_W_RADL = 8; // 0x8 @@ -5170,6 +5175,11 @@ package android.media.tv.tuner.frontend { method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSifStandard(int); } + public class Atsc3PlpInfo { + method public boolean getLlsFlag(); + method public int getPlpId(); + } + public abstract class FrontendSettings { method public int getFrequency(); method public abstract int getType(); @@ -5196,6 +5206,23 @@ package android.media.tv.tuner.frontend { field public static final int SIGNAL_NO_SIGNAL = 1; // 0x1 } + public interface ScanCallback { + method public void onAnalogSifStandard(int); + method public void onAtsc3PlpInfos(@NonNull android.media.tv.tuner.frontend.Atsc3PlpInfo[]); + method public void onDvbsStandard(int); + method public void onDvbtStandard(int); + method public void onFrequenciesReport(@NonNull int[]); + method public void onGroupIds(@NonNull int[]); + method public void onHierarchy(int); + method public void onInputStreamIds(@NonNull int[]); + method public void onLocked(); + method public void onPlpIds(@NonNull int[]); + method public void onProgress(@IntRange(from=0, to=100) int); + method public void onScanStopped(); + method public void onSignalType(int); + method public void onSymbolRates(@NonNull int[]); + } + } package android.metrics { diff --git a/media/java/android/media/tv/tuner/Tuner.java b/media/java/android/media/tv/tuner/Tuner.java index 8723fbb6f9fc..62ab2c94afeb 100644 --- a/media/java/android/media/tv/tuner/Tuner.java +++ b/media/java/android/media/tv/tuner/Tuner.java @@ -311,10 +311,10 @@ public final class Tuner implements AutoCloseable { * @throws SecurityException if the caller does not have appropriate permissions. * @throws IllegalStateException if {@code scan} is called again before {@link #stopScan()} is * called. - * @hide */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) - public int scan(@NonNull FrontendSettings settings, @ScanCallback.ScanType int scanType, + @Result + public int scan(@NonNull FrontendSettings settings, @TunerConstants.ScanType int scanType, @NonNull @CallbackExecutor Executor executor, @NonNull ScanCallback scanCallback) { TunerUtils.checkTunerPermission(mContext); if (mScanCallback != null || mScanCallbackExecutor != null) { @@ -337,7 +337,6 @@ public final class Tuner implements AutoCloseable { * If the method completes successfully, the frontend stopped previous scanning. * * @throws SecurityException if the caller does not have appropriate permissions. - * @hide */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Result diff --git a/media/java/android/media/tv/tuner/TunerConstants.java b/media/java/android/media/tv/tuner/TunerConstants.java index 5747c0b265f4..c03061948fe4 100644 --- a/media/java/android/media/tv/tuner/TunerConstants.java +++ b/media/java/android/media/tv/tuner/TunerConstants.java @@ -47,6 +47,27 @@ public final class TunerConstants { */ public static final int INVALID_STREAM_ID = Constants.Constant.INVALID_STREAM_ID; + /** @hide */ + @IntDef(prefix = "SCAN_TYPE_", value = {SCAN_TYPE_UNDEFINED, SCAN_TYPE_AUTO, SCAN_TYPE_BLIND}) + @Retention(RetentionPolicy.SOURCE) + public @interface ScanType {} + /** + * Scan type undefined. + */ + public static final int SCAN_TYPE_UNDEFINED = Constants.FrontendScanType.SCAN_UNDEFINED; + /** + * Scan type auto. + * + * <p> Tuner will send {@link #onLocked} + */ + public static final int SCAN_TYPE_AUTO = Constants.FrontendScanType.SCAN_AUTO; + /** + * Blind scan. + * + * <p>Frequency range is not specified. The {@link android.media.tv.tuner.Tuner} will scan an + * implementation specific range. + */ + public static final int SCAN_TYPE_BLIND = Constants.FrontendScanType.SCAN_BLIND; /** @hide */ @Retention(RetentionPolicy.SOURCE) diff --git a/media/java/android/media/tv/tuner/frontend/Atsc3PlpInfo.java b/media/java/android/media/tv/tuner/frontend/Atsc3PlpInfo.java new file mode 100644 index 000000000000..9900fec3b28c --- /dev/null +++ b/media/java/android/media/tv/tuner/frontend/Atsc3PlpInfo.java @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.media.tv.tuner.frontend; + +import android.annotation.SystemApi; + +/** PLP information for ATSC3. + * @hide + */ +@SystemApi +public class Atsc3PlpInfo { + private final int mPlpId; + private final boolean mLlsFlag; + + private Atsc3PlpInfo(int plpId, boolean llsFlag) { + mPlpId = plpId; + mLlsFlag = llsFlag; + } + + /** Gets PLP IDs. */ + public int getPlpId() { + return mPlpId; + } + + /** Gets LLS flag. */ + public boolean getLlsFlag() { + return mLlsFlag; + } +} diff --git a/media/java/android/media/tv/tuner/frontend/ScanCallback.java b/media/java/android/media/tv/tuner/frontend/ScanCallback.java index a825d6d486ae..f90144bc97ef 100644 --- a/media/java/android/media/tv/tuner/frontend/ScanCallback.java +++ b/media/java/android/media/tv/tuner/frontend/ScanCallback.java @@ -16,41 +16,18 @@ package android.media.tv.tuner.frontend; -import android.annotation.IntDef; -import android.hardware.tv.tuner.V1_0.Constants; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; +import android.annotation.IntRange; +import android.annotation.NonNull; +import android.annotation.SystemApi; /** * Scan callback. * * @hide */ +@SystemApi public interface ScanCallback { - /** @hide */ - @IntDef(prefix = "SCAN_TYPE_", value = {SCAN_TYPE_UNDEFINED, SCAN_TYPE_AUTO, SCAN_TYPE_BLIND}) - @Retention(RetentionPolicy.SOURCE) - @interface ScanType {} - /** - * Scan type undefined. - */ - int SCAN_TYPE_UNDEFINED = Constants.FrontendScanType.SCAN_UNDEFINED; - /** - * Scan type auto. - * - * <p> Tuner will send {@link #onLocked} - */ - int SCAN_TYPE_AUTO = Constants.FrontendScanType.SCAN_AUTO; - /** - * Blind scan. - * - * <p>Frequency range is not specified. The {@link android.media.tv.tuner.Tuner} will scan an - * implementation specific range. - */ - int SCAN_TYPE_BLIND = Constants.FrontendScanType.SCAN_BLIND; - /** Scan locked the signal. */ void onLocked(); @@ -58,22 +35,22 @@ public interface ScanCallback { void onScanStopped(); /** scan progress percent (0..100) */ - void onProgress(int percent); + void onProgress(@IntRange(from = 0, to = 100) int percent); /** Signal frequencies in Hertz */ - void onFrequenciesReport(int[] frequency); + void onFrequenciesReport(@NonNull int[] frequency); /** Symbols per second */ - void onSymbolRates(int[] rate); + void onSymbolRates(@NonNull int[] rate); /** Locked Plp Ids for DVBT2 frontend. */ - void onPlpIds(int[] plpIds); + void onPlpIds(@NonNull int[] plpIds); /** Locked group Ids for DVBT2 frontend. */ - void onGroupIds(int[] groupIds); + void onGroupIds(@NonNull int[] groupIds); /** Stream Ids. */ - void onInputStreamIds(int[] inputStreamIds); + void onInputStreamIds(@NonNull int[] inputStreamIds); /** Locked signal standard for DVBS. */ void onDvbsStandard(@DvbsFrontendSettings.Standard int dvbsStandandard); @@ -85,7 +62,7 @@ public interface ScanCallback { void onAnalogSifStandard(@AnalogFrontendSettings.SifStandard int sif); /** PLP status in a tuned frequency band for ATSC3 frontend. */ - void onAtsc3PlpInfos(Atsc3PlpInfo[] atsc3PlpInfos); + void onAtsc3PlpInfos(@NonNull Atsc3PlpInfo[] atsc3PlpInfos); /** Frontend hierarchy. */ void onHierarchy(@DvbtFrontendSettings.Hierarchy int hierarchy); @@ -93,24 +70,4 @@ public interface ScanCallback { /** Frontend hierarchy. */ void onSignalType(@AnalogFrontendSettings.SignalType int signalType); - /** PLP information for ATSC3. */ - class Atsc3PlpInfo { - private final int mPlpId; - private final boolean mLlsFlag; - - private Atsc3PlpInfo(int plpId, boolean llsFlag) { - mPlpId = plpId; - mLlsFlag = llsFlag; - } - - /** Gets PLP IDs. */ - public int getPlpId() { - return mPlpId; - } - - /** Gets LLS flag. */ - public boolean getLlsFlag() { - return mLlsFlag; - } - } } |