option optimize_for = LITE_RUNTIME;
package webrtc.audioproc;
+// Contains the format of input/output/reverse audio. An Init message is added
+// when any of the fields are changed.
message Init {
optional int32 sample_rate = 1;
- optional int32 device_sample_rate = 2;
+ optional int32 device_sample_rate = 2 [deprecated=true];
optional int32 num_input_channels = 3;
optional int32 num_output_channels = 4;
optional int32 num_reverse_channels = 5;
+ optional int32 reverse_sample_rate = 6;
+ optional int32 output_sample_rate = 7;
}
+// May contain interleaved or deinterleaved data, but don't store both formats.
message ReverseStream {
+ // int16 interleaved data.
optional bytes data = 1;
+
+ // float deinterleaved data, where each repeated element points to a single
+ // channel buffer of data.
+ repeated bytes channel = 2;
}
+// May contain interleaved or deinterleaved data, but don't store both formats.
message Stream {
+ // int16 interleaved data.
optional bytes input_data = 1;
optional bytes output_data = 2;
+
optional int32 delay = 3;
optional sint32 drift = 4;
optional int32 level = 5;
+ optional bool keypress = 6;
+
+ // float deinterleaved data, where each repeated element points to a single
+ // channel buffer of data.
+ repeated bytes input_channel = 7;
+ repeated bytes output_channel = 8;
+}
+
+// Contains the configurations of various APM component. A Config message is
+// added when any of the fields are changed.
+message Config {
+ // Next field number 17.
+ // Acoustic echo canceler.
+ optional bool aec_enabled = 1;
+ optional bool aec_delay_agnostic_enabled = 2;
+ optional bool aec_drift_compensation_enabled = 3;
+ optional bool aec_extended_filter_enabled = 4;
+ optional int32 aec_suppression_level = 5;
+ // Mobile AEC.
+ optional bool aecm_enabled = 6;
+ optional bool aecm_comfort_noise_enabled = 7;
+ optional int32 aecm_routing_mode = 8;
+ // Automatic gain controller.
+ optional bool agc_enabled = 9;
+ optional int32 agc_mode = 10;
+ optional bool agc_limiter_enabled = 11;
+ optional bool noise_robust_agc_enabled = 12;
+ // High pass filter.
+ optional bool hpf_enabled = 13;
+ // Noise suppression.
+ optional bool ns_enabled = 14;
+ optional int32 ns_level = 15;
+ // Transient suppression.
+ optional bool transient_suppression_enabled = 16;
}
message Event {
INIT = 0;
REVERSE_STREAM = 1;
STREAM = 2;
+ CONFIG = 3;
+ UNKNOWN_EVENT = 4;
}
required Type type = 1;
optional Init init = 2;
optional ReverseStream reverse_stream = 3;
optional Stream stream = 4;
+ optional Config config = 5;
}