blob: dce2f7920930452f7a512d9bda2f3679893cddc2 [file] [log] [blame]
ajm@google.com808e0e02011-08-03 21:08:51 +00001syntax = "proto2";
2option optimize_for = LITE_RUNTIME;
3package webrtc.audioproc;
4
5message Init {
6 optional int32 sample_rate = 1;
andrew@webrtc.orgddbb8a22014-04-22 21:00:04 +00007 optional int32 device_sample_rate = 2 [deprecated=true];
ajm@google.com808e0e02011-08-03 21:08:51 +00008 optional int32 num_input_channels = 3;
9 optional int32 num_output_channels = 4;
10 optional int32 num_reverse_channels = 5;
andrew@webrtc.orga8b97372014-03-10 22:26:12 +000011 optional int32 reverse_sample_rate = 6;
andrew@webrtc.orgddbb8a22014-04-22 21:00:04 +000012 optional int32 output_sample_rate = 7;
ajm@google.com808e0e02011-08-03 21:08:51 +000013}
14
andrew@webrtc.org17e40642014-03-04 20:58:13 +000015// May contain interleaved or deinterleaved data, but don't store both formats.
ajm@google.com808e0e02011-08-03 21:08:51 +000016message ReverseStream {
andrew@webrtc.org17e40642014-03-04 20:58:13 +000017 // int16 interleaved data.
ajm@google.com808e0e02011-08-03 21:08:51 +000018 optional bytes data = 1;
andrew@webrtc.org17e40642014-03-04 20:58:13 +000019
20 // float deinterleaved data, where each repeated element points to a single
21 // channel buffer of data.
22 repeated bytes channel = 2;
ajm@google.com808e0e02011-08-03 21:08:51 +000023}
24
andrew@webrtc.org17e40642014-03-04 20:58:13 +000025// May contain interleaved or deinterleaved data, but don't store both formats.
ajm@google.com808e0e02011-08-03 21:08:51 +000026message Stream {
andrew@webrtc.org17e40642014-03-04 20:58:13 +000027 // int16 interleaved data.
ajm@google.com808e0e02011-08-03 21:08:51 +000028 optional bytes input_data = 1;
29 optional bytes output_data = 2;
andrew@webrtc.org17e40642014-03-04 20:58:13 +000030
ajm@google.com808e0e02011-08-03 21:08:51 +000031 optional int32 delay = 3;
32 optional sint32 drift = 4;
33 optional int32 level = 5;
andrew@webrtc.orgce8e0772014-02-12 15:28:30 +000034 optional bool keypress = 6;
andrew@webrtc.org17e40642014-03-04 20:58:13 +000035
36 // float deinterleaved data, where each repeated element points to a single
37 // channel buffer of data.
38 repeated bytes input_channel = 7;
39 repeated bytes output_channel = 8;
ajm@google.com808e0e02011-08-03 21:08:51 +000040}
41
42message Event {
43 enum Type {
44 INIT = 0;
45 REVERSE_STREAM = 1;
46 STREAM = 2;
47 }
48
49 required Type type = 1;
50
51 optional Init init = 2;
52 optional ReverseStream reverse_stream = 3;
53 optional Stream stream = 4;
54}