
- Add an Initialize() overload to allow specification of format parameters. This is mainly useful for testing, but could be used in the cases where a consumer knows the format before the streams arrive. - Add a reverse_sample_rate_hz_ parameter to prepare for mismatched capture and render rates. There is no functional change as it is currently constrained to match the capture rate. - Fix a bug in the float dump: we need to use add_ rather than set_. - Add a debug dump test for both int and float interfaces. - Enable unpacking of float dumps. - Enable audioproc to read float dumps. - Move more shared functionality to test_utils.h, and generally tidy up a bit by consolidating repeated code. BUG=2894 TESTED=Verified that the output produced by the float debug dump test is correct. Processed the resulting debug dump file with audioproc and ensured that we get identical output. (This is crucial, as we need to be able to exactly reproduce online results offline.) R=aluebs@webrtc.org Review URL: https://webrtc-codereview.appspot.com/9489004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@5676 4adac7df-926f-26a2-2b94-8c16560cd09d
54 lines
1.3 KiB
Protocol Buffer
54 lines
1.3 KiB
Protocol Buffer
syntax = "proto2";
|
|
option optimize_for = LITE_RUNTIME;
|
|
package webrtc.audioproc;
|
|
|
|
message Init {
|
|
optional int32 sample_rate = 1;
|
|
optional int32 device_sample_rate = 2;
|
|
optional int32 num_input_channels = 3;
|
|
optional int32 num_output_channels = 4;
|
|
optional int32 num_reverse_channels = 5;
|
|
optional int32 reverse_sample_rate = 6;
|
|
}
|
|
|
|
// 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;
|
|
}
|
|
|
|
message Event {
|
|
enum Type {
|
|
INIT = 0;
|
|
REVERSE_STREAM = 1;
|
|
STREAM = 2;
|
|
}
|
|
|
|
required Type type = 1;
|
|
|
|
optional Init init = 2;
|
|
optional ReverseStream reverse_stream = 3;
|
|
optional Stream stream = 4;
|
|
}
|