1 /*
2  * Copyright (C) 2015 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.tv.data;
18 
19 import android.media.tv.TvContentRating;
20 import com.android.tv.data.api.Channel;
21 
22 public interface StreamInfo {
23     int VIDEO_DEFINITION_LEVEL_UNKNOWN = 0;
24     int VIDEO_DEFINITION_LEVEL_SD = 1;
25     int VIDEO_DEFINITION_LEVEL_HD = 2;
26     int VIDEO_DEFINITION_LEVEL_FULL_HD = 3;
27     int VIDEO_DEFINITION_LEVEL_ULTRA_HD = 4;
28 
29     int AUDIO_CHANNEL_COUNT_UNKNOWN = 0;
30 
getCurrentChannel()31     Channel getCurrentChannel();
32 
getBlockedContentRating()33     TvContentRating getBlockedContentRating();
34 
getVideoWidth()35     int getVideoWidth();
36 
getVideoHeight()37     int getVideoHeight();
38 
getVideoFrameRate()39     float getVideoFrameRate();
40 
getVideoDisplayAspectRatio()41     float getVideoDisplayAspectRatio();
42 
getVideoDefinitionLevel()43     int getVideoDefinitionLevel();
44 
getAudioChannelCount()45     int getAudioChannelCount();
46 
hasClosedCaption()47     boolean hasClosedCaption();
48 
isVideoAvailable()49     boolean isVideoAvailable();
50     /** Returns true, if video or audio is available. */
isVideoOrAudioAvailable()51     boolean isVideoOrAudioAvailable();
52 
getVideoUnavailableReason()53     int getVideoUnavailableReason();
54 }
55