Loading cmds/statsd/src/atoms.proto +124 −0 Original line number Diff line number Diff line Loading @@ -503,6 +503,11 @@ message Atom { TlsHandshakeReported tls_handshake_reported = 317 [(module) = "conscrypt"]; TextClassifierApiUsageReported text_classifier_api_usage_reported = 318 [(module) = "textclassifier"]; KilledAppStatsReported killed_app_stats_reported = 319 [(module) = "carwatchdogd"]; MediametricsPlaybackReported mediametrics_playback_reported = 320; MediaNetworkInfoChanged media_network_info_changed = 321; MediaPlaybackStateChanged media_playback_state_changed = 322; MediaPlaybackErrorReported media_playback_error_reported = 323; MediaPlaybackTrackChanged media_playback_track_changed = 324; // StatsdStats tracks platform atoms with ids upto 500. // Update StatsdStats::kMaxPushedAtomId when atom ids here approach that value. Loading Loading @@ -12224,3 +12229,122 @@ message ProcessStat { // Resident set size in kb. optional uint64 vm_rss_kb = 7; } /* * pushes Media playback information. * Logged from * (WIP) frameworks/av/services/mediaanalytics/playback_statsd.cpp */ message MediametricsPlaybackReported { optional int32 uid = 1 [(is_uid) = true]; // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 2; // The total length of the media in milliseconds. 0 for live contents. optional int64 media_duration_millis = 3; // Network, device, or mixed. optional android.stats.mediametrics.StreamSourceType stream_source = 4; // Stream type. DASH, HLS, etc optional android.stats.mediametrics.StreamType stream_type = 5; // Live, VOD, others optional android.stats.mediametrics.PlaybackType playback_type = 6; // DRM type optional android.stats.mediametrics.DrmType drm_type = 7; // Main, AD, others optional android.stats.mediametrics.ContentType content_type = 8; // Player name. E.g. ExoPlayer optional string player_name = 9; // Player version. E.g. 1.10.3e optional string player_version = 10; // Player related experiment IDs optional Experiments experiment_ids = 11 [(log_mode) = MODE_BYTES]; // Number of frames played. Dropped frames included. -1 means unknown. optional int32 video_frames_played = 12; // Number of frames dropped. -1 means unknown. optional int32 video_frames_dropped = 13; // Number of audio underruns. -1 means unknown. optional int32 audio_underrun_count = 14; // Total number of bytes read from the network optional int64 network_bytes_read = 15; // Total number of bytes read from on-device sources optional int64 local_bytes_read = 16; // Total transfer spent reading from the network in ms. // For parallel requests, the overlapping time intervals are counted only once. optional int64 network_transfer_duration_millis = 17; } message MediaNetworkInfoChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // New network type optional android.stats.mediametrics.NetworkType type = 2; // Network Start time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 3; } message MediaPlaybackStateChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // New playback state optional android.stats.mediametrics.PlaybackState playback_state = 2; // State change time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 3; } message MediaPlaybackErrorReported { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // A shortened call stack of the error optional string exception_stack = 2; // Error code optional android.stats.mediametrics.PlaybackErrorCode error_code = 3; // Sub-code of error type specified by the error code. optional int32 sub_error_code = 4; // Error time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 5; } message MediaPlaybackTrackChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // The track is on or off after the change optional android.stats.mediametrics.TrackState state = 2; // The reason of the track change optional android.stats.mediametrics.TrackChangeReason reason = 3; // The MIME type of the container. E.g. video/mp4 optional string container_mime_type = 4; // The sample MIME type of the track. E.g. video/avc optional string sample_mime_type = 5; // Codec name optional string codec_name = 6; // Bits per second. 0 means unknown. optional int32 bitrate = 7; // Track change time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 8; // Track type. Audio, Video, Text optional android.stats.mediametrics.TrackType type = 9; // 2-letter ISO 639-1 language code. optional string language = 10; // IETF BCP 47 optional language region subtag based on a two-letter country code optional string language_region = 11; // Number of channels optional int32 channel_count = 12; // Samples per second optional int32 sample_rate = 13; // The width of the video in pixels. optional int32 width = 14; // The height of the video in pixels. optional int32 height = 15; } message Experiments { // Experiment IDs sent by the player. repeated int64 experiments = 1; } core/proto/android/stats/mediametrics/mediametrics.proto +104 −0 Original line number Diff line number Diff line Loading @@ -237,3 +237,107 @@ message RecorderData { optional int32 video_bitrate = 20; optional int32 iframe_interval = 21; } 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_VOD = 0; PLAYBACK_TYPE_LIVE = 1; PLAYBACK_TYPE_OTHER = 2; } enum ContentType { CONTENT_TYPE_MAIN = 0; CONTENT_TYPE_AD = 1; CONTENT_TYPE_OTHER = 2; } enum StreamSourceType { STREAM_SOURCE_UNKNOWN = 0; STREAM_SOURCE_NETWORK = 1; STREAM_SOURCE_DEVICE = 2; STREAM_SOURCE_MIXED = 3; } enum NetworkType { NETWORK_TYPE_NONE = 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; } 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; } 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; } Loading
cmds/statsd/src/atoms.proto +124 −0 Original line number Diff line number Diff line Loading @@ -503,6 +503,11 @@ message Atom { TlsHandshakeReported tls_handshake_reported = 317 [(module) = "conscrypt"]; TextClassifierApiUsageReported text_classifier_api_usage_reported = 318 [(module) = "textclassifier"]; KilledAppStatsReported killed_app_stats_reported = 319 [(module) = "carwatchdogd"]; MediametricsPlaybackReported mediametrics_playback_reported = 320; MediaNetworkInfoChanged media_network_info_changed = 321; MediaPlaybackStateChanged media_playback_state_changed = 322; MediaPlaybackErrorReported media_playback_error_reported = 323; MediaPlaybackTrackChanged media_playback_track_changed = 324; // StatsdStats tracks platform atoms with ids upto 500. // Update StatsdStats::kMaxPushedAtomId when atom ids here approach that value. Loading Loading @@ -12224,3 +12229,122 @@ message ProcessStat { // Resident set size in kb. optional uint64 vm_rss_kb = 7; } /* * pushes Media playback information. * Logged from * (WIP) frameworks/av/services/mediaanalytics/playback_statsd.cpp */ message MediametricsPlaybackReported { optional int32 uid = 1 [(is_uid) = true]; // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 2; // The total length of the media in milliseconds. 0 for live contents. optional int64 media_duration_millis = 3; // Network, device, or mixed. optional android.stats.mediametrics.StreamSourceType stream_source = 4; // Stream type. DASH, HLS, etc optional android.stats.mediametrics.StreamType stream_type = 5; // Live, VOD, others optional android.stats.mediametrics.PlaybackType playback_type = 6; // DRM type optional android.stats.mediametrics.DrmType drm_type = 7; // Main, AD, others optional android.stats.mediametrics.ContentType content_type = 8; // Player name. E.g. ExoPlayer optional string player_name = 9; // Player version. E.g. 1.10.3e optional string player_version = 10; // Player related experiment IDs optional Experiments experiment_ids = 11 [(log_mode) = MODE_BYTES]; // Number of frames played. Dropped frames included. -1 means unknown. optional int32 video_frames_played = 12; // Number of frames dropped. -1 means unknown. optional int32 video_frames_dropped = 13; // Number of audio underruns. -1 means unknown. optional int32 audio_underrun_count = 14; // Total number of bytes read from the network optional int64 network_bytes_read = 15; // Total number of bytes read from on-device sources optional int64 local_bytes_read = 16; // Total transfer spent reading from the network in ms. // For parallel requests, the overlapping time intervals are counted only once. optional int64 network_transfer_duration_millis = 17; } message MediaNetworkInfoChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // New network type optional android.stats.mediametrics.NetworkType type = 2; // Network Start time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 3; } message MediaPlaybackStateChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // New playback state optional android.stats.mediametrics.PlaybackState playback_state = 2; // State change time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 3; } message MediaPlaybackErrorReported { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // A shortened call stack of the error optional string exception_stack = 2; // Error code optional android.stats.mediametrics.PlaybackErrorCode error_code = 3; // Sub-code of error type specified by the error code. optional int32 sub_error_code = 4; // Error time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 5; } message MediaPlaybackTrackChanged { // Randomly generated playback ID. A Base64 encoded hex string representing a 128-bit integer optional string playback_id = 1; // The track is on or off after the change optional android.stats.mediametrics.TrackState state = 2; // The reason of the track change optional android.stats.mediametrics.TrackChangeReason reason = 3; // The MIME type of the container. E.g. video/mp4 optional string container_mime_type = 4; // The sample MIME type of the track. E.g. video/avc optional string sample_mime_type = 5; // Codec name optional string codec_name = 6; // Bits per second. 0 means unknown. optional int32 bitrate = 7; // Track change time, relative to playback creation time in millisecond. // It's in absolute time (e.g. always ticks even if the playback is paused). optional int64 time_since_playback_created_millis = 8; // Track type. Audio, Video, Text optional android.stats.mediametrics.TrackType type = 9; // 2-letter ISO 639-1 language code. optional string language = 10; // IETF BCP 47 optional language region subtag based on a two-letter country code optional string language_region = 11; // Number of channels optional int32 channel_count = 12; // Samples per second optional int32 sample_rate = 13; // The width of the video in pixels. optional int32 width = 14; // The height of the video in pixels. optional int32 height = 15; } message Experiments { // Experiment IDs sent by the player. repeated int64 experiments = 1; }
core/proto/android/stats/mediametrics/mediametrics.proto +104 −0 Original line number Diff line number Diff line Loading @@ -237,3 +237,107 @@ message RecorderData { optional int32 video_bitrate = 20; optional int32 iframe_interval = 21; } 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_VOD = 0; PLAYBACK_TYPE_LIVE = 1; PLAYBACK_TYPE_OTHER = 2; } enum ContentType { CONTENT_TYPE_MAIN = 0; CONTENT_TYPE_AD = 1; CONTENT_TYPE_OTHER = 2; } enum StreamSourceType { STREAM_SOURCE_UNKNOWN = 0; STREAM_SOURCE_NETWORK = 1; STREAM_SOURCE_DEVICE = 2; STREAM_SOURCE_MIXED = 3; } enum NetworkType { NETWORK_TYPE_NONE = 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; } 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; } 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; }