Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Protocol for audio messages. | 5 // Protocol for audio messages. |
| 6 | 6 |
| 7 syntax = "proto2"; | 7 syntax = "proto2"; |
| 8 | 8 |
| 9 option optimize_for = LITE_RUNTIME; | 9 option optimize_for = LITE_RUNTIME; |
| 10 | 10 |
| 11 package remoting; | 11 package remoting; |
| 12 | 12 |
| 13 message AudioPacket { | 13 message AudioPacket { |
| 14 optional int32 timestamp = 1 [default = 0]; | 14 optional int32 timestamp = 1 [default = 0]; |
| 15 | 15 |
| 16 // Packets with raw data must have exactly one data field. | 16 // Packets with raw data must have exactly one data field. |
| 17 // For those packets, samples are signed and represented using little endian. | 17 // For those packets, samples are signed and represented using little endian. |
| 18 // Some encoders (eg. Speex) may add multiple data fields to separate encoded | 18 // Some encoders (eg. Speex) may add multiple data fields to separate encoded |
| 19 // frames. | 19 // frames. |
| 20 repeated bytes data = 2; | 20 repeated bytes data = 2; |
| 21 | 21 |
| 22 enum Encoding { | 22 enum Encoding { |
| 23 ENCODING_INVALID = -1; | 23 ENCODING_INVALID = -1; |
| 24 ENCODING_RAW = 0; // Uncompressed encoding | 24 ENCODING_RAW = 0; // Uncompressed encoding |
| 25 ENCODING_OGG = 1; | 25 ENCODING_VORBIS = 1; |
|
Wez
2012/08/21 01:14:13
nit: Remove VORBIS since we're unlikely to get aro
Sergey Ulanov
2012/08/21 01:19:44
Or maybe just replace it with OPUS?
kxing
2012/08/21 16:56:11
Sounds good. This CL's getting huge, so I'll do in
kxing
2012/08/21 16:56:11
Sounds good. This CL's getting huge, so I'll do in
| |
| 26 ENCODING_SPEEX = 2; | |
| 26 } | 27 } |
| 27 | 28 |
| 28 optional Encoding encoding = 3 [default = ENCODING_INVALID]; | 29 optional Encoding encoding = 3 [default = ENCODING_INVALID]; |
| 29 | 30 |
| 30 enum SamplingRate { | 31 enum SamplingRate { |
| 31 SAMPLING_RATE_INVALID = -1; | 32 SAMPLING_RATE_INVALID = -1; |
| 32 SAMPLING_RATE_44100 = 44100; | 33 SAMPLING_RATE_44100 = 44100; |
| 33 SAMPLING_RATE_48000 = 48000; | 34 SAMPLING_RATE_48000 = 48000; |
| 34 } | 35 } |
| 35 | 36 |
| 36 optional SamplingRate sampling_rate = 4 [default = SAMPLING_RATE_INVALID]; | 37 optional SamplingRate sampling_rate = 4 [default = SAMPLING_RATE_INVALID]; |
| 37 | 38 |
| 38 enum BytesPerSample { | 39 enum BytesPerSample { |
| 39 BYTES_PER_SAMPLE_INVALID = -1; | 40 BYTES_PER_SAMPLE_INVALID = -1; |
| 40 BYTES_PER_SAMPLE_2 = 2; | 41 BYTES_PER_SAMPLE_2 = 2; |
| 41 } | 42 } |
| 42 | 43 |
| 43 optional BytesPerSample bytes_per_sample = 5 | 44 optional BytesPerSample bytes_per_sample = 5 |
| 44 [default = BYTES_PER_SAMPLE_INVALID]; | 45 [default = BYTES_PER_SAMPLE_INVALID]; |
| 45 | 46 |
| 46 enum Channels { | 47 enum Channels { |
| 47 CHANNELS_INVALID = -1; | 48 CHANNELS_INVALID = -1; |
| 48 CHANNELS_MONO = 1; | 49 CHANNELS_MONO = 1; |
| 49 CHANNELS_STEREO = 2; | 50 CHANNELS_STEREO = 2; |
| 50 } | 51 } |
| 51 | 52 |
| 52 optional Channels channels = 6 [default = CHANNELS_INVALID]; | 53 optional Channels channels = 6 [default = CHANNELS_INVALID]; |
| 53 } | 54 } |
| 54 | 55 |
| OLD | NEW |