 Chromium Code Reviews
 Chromium Code Reviews Issue 2631993002:
  Media Remoting: UMAs to track session events and measurements.  (Closed)
    
  
    Issue 2631993002:
  Media Remoting: UMAs to track session events and measurements.  (Closed) 
  | Index: media/remoting/triggers.h | 
| diff --git a/media/remoting/triggers.h b/media/remoting/triggers.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..688d6447bb150c93f9bf554be3a444e09b3d637b | 
| --- /dev/null | 
| +++ b/media/remoting/triggers.h | 
| @@ -0,0 +1,82 @@ | 
| +// Copyright 2017 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef MEDIA_REMOTING_TRIGGERS_H_ | 
| +#define MEDIA_REMOTING_TRIGGERS_H_ | 
| + | 
| +namespace media { | 
| +namespace remoting { | 
| + | 
| +// Events and conditions that can trigger remoting to start. | 
| +// | 
| +// NOTE: Never re-number or re-use numbers for different triggers. These are | 
| +// used in UMA histograms, and must remain backwards-compatible for all time. | 
| +// However, *do* change START_TRIGGER_MAX to one after the greatest value when | 
| +// adding new ones. Also, don't forget to update histograms.xml! | 
| +enum StartTrigger { | 
| + UNKNOWN_START_TRIGGER = 0, | 
| + | 
| + // Local presentation changes. | 
| + ENTERED_FULLSCREEN = 1, // The media element became the fullscreen element. | 
| + BECAME_DOMINANT_CONTENT = 2, // Element now occupies most of the viewport. | 
| + ENABLED_BY_PAGE = 3, // The page re-allowed remote playback. | 
| + | 
| + // User actions, such as connecting to a receiver or pressing play. | 
| + SINK_AVAILABLE = 4, // A receiver (sink) became available. | 
| + PLAY_COMMAND = 5, // The media element was issued a play command. | 
| + | 
| + // Met requirements for playback of the media. | 
| + SUPPORTED_AUDIO_CODEC = 6, // Stream began using a supported audio codec. | 
| + SUPPORTED_VIDEO_CODEC = 7, // Stream began using a supported video codec. | 
| + SUPPORTED_AUDIO_AND_VIDEO_CODECS = 8, // Both now using a supported codec. | 
| + CDM_READY = 9, // The CDM required for decrypting the content became ready. | 
| + | 
| + // Change this to the highest value. | 
| + START_TRIGGER_MAX = 10, | 
| 
xjz
2017/01/17 21:52:04
s/10/9
 
miu
2017/01/17 22:46:31
Done.
 | 
| +}; | 
| + | 
| +// Events and conditions that can result in a start failure, or trigger remoting | 
| +// to stop. | 
| +// | 
| +// NOTE: Never re-number or re-use numbers for different triggers. These are | 
| +// used in UMA histograms, and must remain backwards-compatible for all time. | 
| +// However, *do* change STOP_TRIGGER_MAX to one after the greatest value when | 
| +// adding new ones. Also, don't forget to update histograms.xml! | 
| +enum StopTrigger { | 
| + UNKNOWN_STOP_TRIGGER = 0, | 
| + | 
| + // Normal shutdown triggers. | 
| + ROUTE_TERMINATED = 1, // The route to the sink was terminated (user action?). | 
| + MEDIA_ELEMENT_DESTROYED = 2, // The media element on the page was destroyed. | 
| + EXITED_FULLSCREEN = 3, // The media element is no longer fullscreened. | 
| + BECAME_AUXILIARY_CONTENT = 4, // Element no longer occupies the viewport. | 
| + DISABLED_BY_PAGE = 5, // The web page blocked remoting during a session. | 
| + | 
| + // Content playback related errors forcing shutdown (or failing start). | 
| + START_RACE = 6, // Multiple remoting sessions attempted to start. | 
| + UNSUPPORTED_AUDIO_CODEC = 7, // Stream now using an unsupported audio codec. | 
| + UNSUPPORTED_VIDEO_CODEC = 8, // Stream now using an unsupported video codec. | 
| + UNSUPPORTED_AUDIO_AND_VIDEO_CODECS = 9, // Neither codec is supported. | 
| + DECRYPTION_ERROR = 10, // Could not decrypt content or CDM was destroyed. | 
| + RECEIVER_INITIALIZE_FAILED = 11, // The receiver reported a failed init. | 
| + RECEIVER_PIPELINE_ERROR = 12, // The media pipeline on the receiver error'ed. | 
| + | 
| + // Environmental errors forcing shutdown. | 
| + FRAME_DROP_RATE_HIGH = 13, // The receiver was dropping too many frames. | 
| + PACING_TOO_SLOWLY = 14, // Play-out was too slow, indicating bottlenecks. | 
| + | 
| + // Communications errors forcing shutdown. | 
| + PEERS_OUT_OF_SYNC = 15, // The local state disagrees with the remote. | 
| + RPC_INVALID = 16, // An RPC field value is missing or has bad data. | 
| + DATA_PIPE_CREATE_ERROR = 17, // Mojo data pipe creation failed (OOM?). | 
| + MOJO_PIPE_ERROR = 18, // Mojo message/data pipe operation failed. | 
| + | 
| + // Change this to the highest value. | 
| + STOP_TRIGGER_MAX = 18, | 
| +}; | 
| + | 
| +} // namespace remoting | 
| +} // namespace media | 
| + | 
| +#endif // MEDIA_REMOTING_TRIGGERS_H_ |