| /* |
| * Copyright (C) 2019 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. |
| */ |
| |
| syntax = "proto2"; |
| |
| package android.stats.mediametrics; |
| |
| enum StreamType { |
| STREAM_TYPE_UNKNOWN = 0; |
| STREAM_TYPE_OTHER = 1; |
| STREAM_TYPE_PROGRESSIVE = 2; |
| STREAM_TYPE_DASH = 3; |
| STREAM_TYPE_HLS = 4; |
| STREAM_TYPE_SS = 5; |
| } |
| |
| enum DrmType { |
| DRM_TYPE_NONE = 0; |
| DRM_TYPE_OTHER = 1; |
| DRM_TYPE_PLAY_READY = 2; |
| DRM_TYPE_WV_L1 = 3; |
| DRM_TYPE_WV_L3 = 4; |
| } |
| |
| enum PlaybackType { |
| PLAYBACK_TYPE_UNKNOWN = 0; |
| PLAYBACK_TYPE_VOD = 1; |
| PLAYBACK_TYPE_LIVE = 2; |
| PLAYBACK_TYPE_OTHER = 3; |
| } |
| |
| enum ContentType { |
| CONTENT_TYPE_UNKNOWN = 0; |
| CONTENT_TYPE_MAIN = 1; |
| CONTENT_TYPE_AD = 2; |
| CONTENT_TYPE_OTHER = 3; |
| } |
| |
| enum StreamSourceType { |
| STREAM_SOURCE_UNKNOWN = 0; |
| STREAM_SOURCE_NETWORK = 1; |
| STREAM_SOURCE_DEVICE = 2; |
| STREAM_SOURCE_MIXED = 3; |
| } |
| enum NetworkType { |
| NETWORK_TYPE_UNKNOWN = 0; |
| NETWORK_TYPE_OTHER = 1; |
| NETWORK_TYPE_WIFI = 2; |
| NETWORK_TYPE_ETHERNET = 3; |
| NETWORK_TYPE_2G = 4; |
| NETWORK_TYPE_3G = 5; |
| NETWORK_TYPE_4G = 6; |
| NETWORK_TYPE_5G_NSA = 7; |
| NETWORK_TYPE_5G_SA = 8; |
| NETWORK_TYPE_OFFLINE = 9; |
| } |
| |
| enum PlaybackState { |
| // Playback has not started (initial state) |
| NOT_STARTED = 0; |
| // Playback is buffering in the background for initial playback start |
| JOINING_BACKGROUND = 1; |
| // Playback is buffering in the foreground for initial playback start |
| JOINING_FOREGROUND = 2; |
| // Playback is actively playing |
| PLAYING = 3; |
| // Playback is paused but ready to play |
| PAUSED = 4; |
| // Playback is handling a seek |
| SEEKING = 5; |
| // Playback is buffering to resume active playback |
| BUFFERING = 6; |
| // Playback is buffering while paused |
| PAUSED_BUFFERING = 7; |
| // Playback is suppressed (e.g. due to audio focus loss) |
| SUPPRESSED = 8; |
| // Playback is suppressed (e.g. due to audio focus loss) while buffering to resume a |
| // playback |
| SUPPRESSED_BUFFERING = 9; |
| // Playback has reached the end of the media |
| ENDED = 10; |
| // Playback is stopped and can be restarted |
| STOPPED = 11; |
| // Playback is stopped due a fatal error and can be retried |
| FAILED = 12; |
| // Playback is interrupted by an ad |
| INTERRUPTED_BY_AD = 13; |
| // Playback is abandoned before reaching the end of the media |
| ABANDONED = 14; |
| } |
| |
| enum PlaybackErrorCode { |
| ERROR_CODE_UNKNOWN = 0; |
| ERROR_CODE_OTHER = 1; |
| ERROR_CODE_RUNTIME = 2; |
| ERROR_CODE_NETWORK_OFFLINE = 3; |
| ERROR_CODE_NETWORK_CONNECT = 4; |
| ERROR_CODE_NETWORK_BAD_STATUS = 5; |
| ERROR_CODE_NETWORK_DNS = 6; |
| ERROR_CODE_NETWORK_TIMEOUT = 7; |
| ERROR_CODE_NETWORK_CLOSED = 8; |
| ERROR_CODE_NETWORK_OTHER = 9; |
| ERROR_CODE_MEDIA_MANIFET = 10; |
| ERROR_CODE_MEDIA_PARSER = 11; |
| ERROR_CODE_MEDIA_OTHER = 12; |
| ERROR_CODE_DECODER_INIT = 13; |
| ERROR_CODE_DECODER_DECODE = 14; |
| ERROR_CODE_DECODER_OOM = 15; |
| ERROR_CODE_DECODER_OTHER = 16; |
| ERROR_CODE_AUDIOTRACK_INIT = 17; |
| ERROR_CODE_AUDIOTRACK_WRITE = 18; |
| ERROR_CODE_AUDIOTRACK_OTHER = 19; |
| ERROR_CODE_PLAYER_REMOTE = 20; |
| ERROR_CODE_PLAYER_BEHIND_LIVE_WINDOW = 21; |
| ERROR_CODE_PLAYER_OTHER = 22; |
| ERROR_CODE_DRM_UNAVAILABLE = 23; |
| ERROR_CODE_DRM_PROVISIONING_FAILED = 24; |
| ERROR_CODE_DRM_LICENSE_ERROR = 25; |
| ERROR_CODE_DRM_DISALLOWED = 26; |
| ERROR_CODE_DRM_SYSTEM_ERROR = 27; |
| ERROR_CODE_DRM_CONTENT_ERROR = 28; |
| ERROR_CODE_DRM_REVOKED = 39; |
| ERROR_CODE_DRM_OTHER = 30; |
| } |
| |
| enum TrackType { |
| AUDIO = 0; |
| VIDEO = 1; |
| TEXT = 2; |
| } |
| enum TrackState { |
| OFF = 0; |
| ON = 1; |
| } |
| enum TrackChangeReason { |
| REASON_UNKNOWN = 0; |
| REASON_OTHER = 1; |
| REASON_INITIAL = 2; |
| REASON_MANUAL = 3; |
| REASON_ADAPTIVE = 4; |
| } |