You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
114 lines
3.4 KiB
114 lines
3.4 KiB
syntax = "proto2";
|
|
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 [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;
|
|
optional int32 reverse_output_sample_rate = 8;
|
|
optional int32 num_reverse_output_channels = 9;
|
|
optional int64 timestamp_ms = 10;
|
|
}
|
|
|
|
// 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 {
|
|
// 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 [deprecated = true];
|
|
optional int32 aecm_routing_mode = 8 [deprecated = true];
|
|
// 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;
|
|
// Semicolon-separated string containing experimental feature
|
|
// descriptions.
|
|
optional string experiments_description = 17;
|
|
reserved 18; // Intelligibility enhancer enabled (deprecated).
|
|
// Pre amplifier.
|
|
optional bool pre_amplifier_enabled = 19;
|
|
optional float pre_amplifier_fixed_gain_factor = 20;
|
|
|
|
// Next field number 21.
|
|
}
|
|
|
|
message PlayoutAudioDeviceInfo {
|
|
optional int32 id = 1;
|
|
optional int32 max_volume = 2;
|
|
}
|
|
|
|
message RuntimeSetting {
|
|
optional float capture_pre_gain = 1;
|
|
optional float custom_render_processing_setting = 2;
|
|
optional float capture_fixed_post_gain = 3;
|
|
optional int32 playout_volume_change = 4;
|
|
optional PlayoutAudioDeviceInfo playout_audio_device_change = 5;
|
|
}
|
|
|
|
message Event {
|
|
enum Type {
|
|
INIT = 0;
|
|
REVERSE_STREAM = 1;
|
|
STREAM = 2;
|
|
CONFIG = 3;
|
|
UNKNOWN_EVENT = 4;
|
|
RUNTIME_SETTING = 5;
|
|
}
|
|
|
|
required Type type = 1;
|
|
|
|
optional Init init = 2;
|
|
optional ReverseStream reverse_stream = 3;
|
|
optional Stream stream = 4;
|
|
optional Config config = 5;
|
|
optional RuntimeSetting runtime_setting = 6;
|
|
}
|