OSDN Git Service

ToneGenerator: fix truncated tones
authorEric Laurent <elaurent@google.com>
Wed, 27 Mar 2013 19:05:40 +0000 (12:05 -0700)
committerEric Laurent <elaurent@google.com>
Thu, 28 Mar 2013 01:12:22 +0000 (18:12 -0700)
commit857583fd2ecbeb8696ede1f93b7291449fb2d133
tree339da426a159d401daede0ac91d45584d7d56807
parente31881eee441f409cbe6c1e1f32183ee8a64cdf8
ToneGenerator: fix truncated tones

The first DTMF tone after a silent period is truncated.
This is because the phone app starts and stops the tone
when the user presses and releases the key.
This combined to the fact that the tones use the low latency path
and that when the output stream exists standby there is a period
of several milliseconds during which no audio is mixed until the
stream is "warmed up".
The result is that much less audio is generated than the actual
key press duration.

The fix consists in storing the tone start time and making sure that
the number of samples generated corresponds at least to the time difference
between the tone start and stop commands.

Bug 6607077

Change-Id: I070d20dd8600c25a9e5d5a60c1d3313b7917b00d
include/media/ToneGenerator.h
media/libmedia/ToneGenerator.cpp