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
3 // found in the LICENSE file.
5 // Protocol for audio messages.
9 option optimize_for = LITE_RUNTIME;
14 optional int32 timestamp = 1 [default = 0];
16 // Packets with raw data must have exactly one data field.
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
20 repeated bytes data = 2;
23 ENCODING_INVALID = -1;
24 ENCODING_RAW = 0; // Uncompressed encoding
29 optional Encoding encoding = 3 [default = ENCODING_INVALID];
32 SAMPLING_RATE_INVALID = -1;
33 SAMPLING_RATE_44100 = 44100;
34 SAMPLING_RATE_48000 = 48000;
37 optional SamplingRate sampling_rate = 4 [default = SAMPLING_RATE_INVALID];
40 BYTES_PER_SAMPLE_INVALID = -1;
41 BYTES_PER_SAMPLE_2 = 2;
44 optional BytesPerSample bytes_per_sample = 5
45 [default = BYTES_PER_SAMPLE_INVALID];
48 CHANNELS_INVALID = -1;
53 optional Channels channels = 6 [default = CHANNELS_INVALID];