webrtc/tools/e2e_quality/audio
2013-03-22 16:12:57 +00:00
..
audio_e2e_harness.cc Move the VoE tests to use external transport instead of the built in udp transport 2013-03-22 16:12:57 +00:00
daemon.conf Improve the reliablity of the audio e2e test. 2012-06-07 04:00:15 +00:00
default.pa Add a framework for audio end-to-end quality testing. 2012-05-10 18:45:11 +00:00
perf Made e2e audio quality test write its results to perf. 2012-12-10 10:08:00 +00:00
README Improve the reliablity of the audio e2e test. 2012-06-07 04:00:15 +00:00
run_audio_test.py Fixed a ton of Python lint errors, enabled python lint checking. 2013-03-07 09:59:43 +00:00

The tools here run an end-to-end audio quality test on Linux using PulseAudio.

INSTALLATION
The test depends on PulseAudio virtual devices (null sinks). Without additional
arguments, run_audio_test.py expects a pair of sinks named "capture" and
"render". To create these devices at machine startup, place the provided
default.pa file in ~/.pulse. Alternately, the "pacmd" commands therein can be
run on the command-line to create the devices.

Similarly, place the provided daemon.conf file in ~/.pulse to use high quality
resampling in PulseAudio. This will reduce the resampling impact on the outcome
of the test.

Build all WebRTC targets as usual (or just the audio_e2e_harness target) to
generate the VoiceEngine harness.

USAGE
Run run_audio_test.py to start. The script has reasonable defaults and will
use the expected location of audio_e2e_harness. Some settings will usually
be provided by the user, particularly the comparison tool command-line and
regular expression to extract the quality metric.

An example command-line, run from trunk/

tools/e2e_quality/audio/run_audio_test.py \
--input=data/voice_engine/audio_short16.pcm --output=e2e_audio_out.pcm \
--codec=L16 --compare="comparison-tool" --regexp="(\d\.\d{3})"