1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Protocol for audio messages.
9 option optimize_for = LITE_RUNTIME;
11 package media.cast.proto;
13 // Keep in sync with media/cast/logging/logging_defines.h.
14 // For compatibility reasons, existing values in this enum must not be changed.
21 VIDEO_ACK_RECEIVED = 4;
26 AUDIO_FRAME_RECEIVED = 8;
27 AUDIO_FRAME_CAPTURED = 9;
28 AUDIO_FRAME_ENCODED = 10;
30 AUDIO_PLAYOUT_DELAY = 11;
31 AUDIO_FRAME_DECODED = 12;
33 VIDEO_FRAME_CAPTURED = 13;
34 VIEDO_FRAME_RECEIVED = 14;
35 VIDEO_FRAME_SENT_TO_ENCODER = 15;
36 VIDEO_FRAME_ENCODED = 16;
38 VIDEO_FRAME_DECODED = 17;
39 VIDEO_RENDER_DELAY = 18;
40 // Send-side packet events.
41 PACKET_SENT_TO_PACER = 19;
42 PACKET_SENT_TO_NETWORK = 20;
43 PACKET_RETRANSMITTED = 21;
44 // Receiver-side packet events.
45 AUDIO_PACKET_RECEIVED = 22;
46 VIDEO_PACKET_RECEIVED = 23;
47 DUPLICATE_PACKET_RECEIVED = 24;
50 message AggregatedFrameEvent {
51 optional uint32 rtp_timestamp = 1;
53 repeated EventType event_type = 2 [packed = true];
54 repeated int64 event_timestamp_micros = 3 [packed = true];
56 // Size is set only for kAudioFrameEncoded and kVideoFrameEncoded.
57 optional int32 encoded_frame_size = 4;
59 // Delay is only set for kAudioPlayoutDelay and kVideoRenderDelay.
60 optional int32 delay_millis = 5;
63 message BasePacketEvent {
64 optional int32 packet_id = 1;
65 repeated EventType event_type = 2 [packed = true];
66 repeated int64 event_timestamp_micros = 3 [packed = true];
69 message AggregatedPacketEvent {
70 optional uint32 rtp_timestamp = 1;
71 repeated BasePacketEvent base_packet_event = 2;
74 message AggregatedGenericEvent {
75 optional EventType event_type = 1;
76 repeated int64 event_timestamp_micros = 2 [packed = true];
77 repeated int32 value = 3 [packed = true];