Fix or suppress some google-runtime-int warnings.
* Use time_t for tv_sec type.
* Use 'auto' to avoid explicitly use of 'long'.
* Use (u)int16_t instead of (unsigned) short.
Bug: 112478838
Test: build with WITH_TIDY=1
Change-Id: I023e579b071688731064e51dc94f404274cd59e2
diff --git a/media/libaudioclient/AudioRecord.cpp b/media/libaudioclient/AudioRecord.cpp
index f9df5b1..e2de8e7 100644
--- a/media/libaudioclient/AudioRecord.cpp
+++ b/media/libaudioclient/AudioRecord.cpp
@@ -865,9 +865,9 @@
} else if (waitCount == 0) {
requested = &ClientProxy::kNonBlocking;
} else if (waitCount > 0) {
- long long ms = WAIT_PERIOD_MS * (long long) waitCount;
+ time_t ms = WAIT_PERIOD_MS * (time_t) waitCount;
timeout.tv_sec = ms / 1000;
- timeout.tv_nsec = (int) (ms % 1000) * 1000000;
+ timeout.tv_nsec = (long) (ms % 1000) * 1000000;
requested = &timeout;
} else {
ALOGE("%s invalid waitCount %d", __func__, waitCount);
diff --git a/media/libaudioclient/AudioTrack.cpp b/media/libaudioclient/AudioTrack.cpp
index ab9efe8..b289bd7 100644
--- a/media/libaudioclient/AudioTrack.cpp
+++ b/media/libaudioclient/AudioTrack.cpp
@@ -1634,9 +1634,9 @@
} else if (waitCount == 0) {
requested = &ClientProxy::kNonBlocking;
} else if (waitCount > 0) {
- long long ms = WAIT_PERIOD_MS * (long long) waitCount;
+ time_t ms = WAIT_PERIOD_MS * (time_t) waitCount;
timeout.tv_sec = ms / 1000;
- timeout.tv_nsec = (int) (ms % 1000) * 1000000;
+ timeout.tv_nsec = (long) (ms % 1000) * 1000000;
requested = &timeout;
} else {
ALOGE("%s invalid waitCount %d", __func__, waitCount);
diff --git a/media/libaudioclient/AudioTrackShared.cpp b/media/libaudioclient/AudioTrackShared.cpp
index dced3c4..d40f193 100644
--- a/media/libaudioclient/AudioTrackShared.cpp
+++ b/media/libaudioclient/AudioTrackShared.cpp
@@ -286,7 +286,8 @@
struct timespec after;
clock_gettime(CLOCK_MONOTONIC, &after);
total.tv_sec += after.tv_sec - before.tv_sec;
- long deltaNs = after.tv_nsec - before.tv_nsec;
+ // Use auto instead of long to avoid the google-runtime-int warning.
+ auto deltaNs = after.tv_nsec - before.tv_nsec;
if (deltaNs < 0) {
deltaNs += 1000000000;
total.tv_sec--;
diff --git a/media/libaudioclient/ToneGenerator.cpp b/media/libaudioclient/ToneGenerator.cpp
index 5716727..5e979e0 100644
--- a/media/libaudioclient/ToneGenerator.cpp
+++ b/media/libaudioclient/ToneGenerator.cpp
@@ -1136,13 +1136,13 @@
// This is needed in case of cold start of the output stream.
if ((mStartTime.tv_sec != 0) && (clock_gettime(CLOCK_MONOTONIC, &stopTime) == 0)) {
time_t sec = stopTime.tv_sec - mStartTime.tv_sec;
- long nsec = stopTime.tv_nsec - mStartTime.tv_nsec;
+ auto nsec = stopTime.tv_nsec - mStartTime.tv_nsec;
if (nsec < 0) {
--sec;
nsec += 1000000000;
}
- if ((sec + 1) > ((long)(INT_MAX / mSamplingRate))) {
+ if ((sec + 1) > ((time_t)(INT_MAX / mSamplingRate))) {
mMaxSmp = sec * mSamplingRate;
} else {
// mSamplingRate is always > 1000
@@ -1257,8 +1257,8 @@
AudioTrack::Buffer *buffer = static_cast<AudioTrack::Buffer *>(info);
ToneGenerator *lpToneGen = static_cast<ToneGenerator *>(user);
- short *lpOut = buffer->i16;
- unsigned int lNumSmp = buffer->size/sizeof(short);
+ int16_t *lpOut = buffer->i16;
+ unsigned int lNumSmp = buffer->size/sizeof(int16_t);
const ToneDescriptor *lpToneDesc = lpToneGen->mpToneDesc;
if (buffer->size == 0) return;
@@ -1329,7 +1329,7 @@
if (lpToneDesc->segments[lpToneGen->mCurSegment].waveFreq[0] != 0) {
lWaveCmd = WaveGenerator::WAVEGEN_STOP;
unsigned int lFreqIdx = 0;
- unsigned short lFrequency = lpToneDesc->segments[lpToneGen->mCurSegment].waveFreq[lFreqIdx];
+ uint16_t lFrequency = lpToneDesc->segments[lpToneGen->mCurSegment].waveFreq[lFreqIdx];
while (lFrequency != 0) {
WaveGenerator *lpWaveGen = lpToneGen->mWaveGens.valueFor(lFrequency);
@@ -1415,7 +1415,7 @@
if (lGenSmp) {
// If samples must be generated, call all active wave generators and acumulate waves in lpOut
unsigned int lFreqIdx = 0;
- unsigned short lFrequency = lpToneDesc->segments[lpToneGen->mCurSegment].waveFreq[lFreqIdx];
+ uint16_t lFrequency = lpToneDesc->segments[lpToneGen->mCurSegment].waveFreq[lFreqIdx];
while (lFrequency != 0) {
WaveGenerator *lpWaveGen = lpToneGen->mWaveGens.valueFor(lFrequency);
@@ -1654,17 +1654,17 @@
//
////////////////////////////////////////////////////////////////////////////////
ToneGenerator::WaveGenerator::WaveGenerator(uint32_t samplingRate,
- unsigned short frequency, float volume) {
+ uint16_t frequency, float volume) {
double d0;
double F_div_Fs; // frequency / samplingRate
F_div_Fs = frequency / (double)samplingRate;
d0 = - (float)GEN_AMP * sin(2 * M_PI * F_div_Fs);
- mS2_0 = (short)d0;
+ mS2_0 = (int16_t)d0;
mS1 = 0;
mS2 = mS2_0;
- mAmplitude_Q15 = (short)(32767. * 32767. * volume / GEN_AMP);
+ mAmplitude_Q15 = (int16_t)(32767. * 32767. * volume / GEN_AMP);
// take some margin for amplitude fluctuation
if (mAmplitude_Q15 > 32500)
mAmplitude_Q15 = 32500;
@@ -1672,7 +1672,7 @@
d0 = 32768.0 * cos(2 * M_PI * F_div_Fs); // Q14*2*cos()
if (d0 > 32767)
d0 = 32767;
- mA1_Q14 = (short) d0;
+ mA1_Q14 = (int16_t) d0;
ALOGV("WaveGenerator init, mA1_Q14: %d, mS2_0: %d, mAmplitude_Q15: %d",
mA1_Q14, mS2_0, mAmplitude_Q15);
@@ -1710,7 +1710,7 @@
// none
//
////////////////////////////////////////////////////////////////////////////////
-void ToneGenerator::WaveGenerator::getSamples(short *outBuffer,
+void ToneGenerator::WaveGenerator::getSamples(int16_t *outBuffer,
unsigned int count, unsigned int command) {
long lS1, lS2;
long lA1, lAmplitude;
@@ -1741,7 +1741,7 @@
lS2 = lS1;
lS1 = Sample;
Sample = ((lAmplitude>>16) * Sample) >> S_Q15;
- *(outBuffer++) += (short)Sample; // put result in buffer
+ *(outBuffer++) += (int16_t)Sample; // put result in buffer
lAmplitude -= dec;
}
} else {
@@ -1753,7 +1753,7 @@
lS2 = lS1;
lS1 = Sample;
Sample = (lAmplitude * Sample) >> S_Q15;
- *(outBuffer++) += (short)Sample; // put result in buffer
+ *(outBuffer++) += (int16_t)Sample; // put result in buffer
}
}
diff --git a/media/libaudioclient/include/media/AudioRecord.h b/media/libaudioclient/include/media/AudioRecord.h
index cf446a5..806280a 100644
--- a/media/libaudioclient/include/media/AudioRecord.h
+++ b/media/libaudioclient/include/media/AudioRecord.h
@@ -85,7 +85,7 @@
union {
void* raw;
- short* i16; // signed 16-bit
+ int16_t* i16; // signed 16-bit
int8_t* i8; // unsigned 8-bit, offset by 0x80
// input to obtainBuffer(): unused, output: pointer to buffer
};
diff --git a/media/libaudioclient/include/media/AudioTrack.h b/media/libaudioclient/include/media/AudioTrack.h
index 3eb627d..59c6f4c 100644
--- a/media/libaudioclient/include/media/AudioTrack.h
+++ b/media/libaudioclient/include/media/AudioTrack.h
@@ -102,7 +102,7 @@
union {
void* raw;
- short* i16; // signed 16-bit
+ int16_t* i16; // signed 16-bit
int8_t* i8; // unsigned 8-bit, offset by 0x80
}; // input to obtainBuffer(): unused, output: pointer to buffer
};
diff --git a/media/libaudioclient/include/media/ToneGenerator.h b/media/libaudioclient/include/media/ToneGenerator.h
index 247703f..e0e3bb1 100644
--- a/media/libaudioclient/include/media/ToneGenerator.h
+++ b/media/libaudioclient/include/media/ToneGenerator.h
@@ -256,9 +256,9 @@
class ToneSegment {
public:
unsigned int duration;
- unsigned short waveFreq[TONEGEN_MAX_WAVES+1];
- unsigned short loopCnt;
- unsigned short loopIndx;
+ uint16_t waveFreq[TONEGEN_MAX_WAVES+1];
+ uint16_t loopCnt;
+ uint16_t loopIndx;
};
class ToneDescriptor {
@@ -279,14 +279,14 @@
unsigned int mMaxSmp; // Maximum number of audio samples played (maximun tone duration)
int mDurationMs; // Maximum tone duration in ms
- unsigned short mCurSegment; // Current segment index in ToneDescriptor segments[]
- unsigned short mCurCount; // Current sequence repeat count
- volatile unsigned short mState; // ToneGenerator state (tone_state)
- unsigned short mRegion;
+ uint16_t mCurSegment; // Current segment index in ToneDescriptor segments[]
+ uint16_t mCurCount; // Current sequence repeat count
+ volatile uint16_t mState; // ToneGenerator state (tone_state)
+ uint16_t mRegion;
const ToneDescriptor *mpToneDesc; // pointer to active tone descriptor
const ToneDescriptor *mpNewToneDesc; // pointer to next active tone descriptor
- unsigned short mLoopCounter; // Current tone loopback count
+ uint16_t mLoopCounter; // Current tone loopback count
uint32_t mSamplingRate; // AudioFlinger Sampling rate
sp<AudioTrack> mpAudioTrack; // Pointer to audio track used for playback
@@ -314,26 +314,26 @@
WAVEGEN_STOP // Stop wave on zero crossing
};
- WaveGenerator(uint32_t samplingRate, unsigned short frequency,
+ WaveGenerator(uint32_t samplingRate, uint16_t frequency,
float volume);
~WaveGenerator();
- void getSamples(short *outBuffer, unsigned int count,
+ void getSamples(int16_t *outBuffer, unsigned int count,
unsigned int command);
private:
- static const short GEN_AMP = 32000; // amplitude of generator
- static const short S_Q14 = 14; // shift for Q14
- static const short S_Q15 = 15; // shift for Q15
+ static const int16_t GEN_AMP = 32000; // amplitude of generator
+ static const int16_t S_Q14 = 14; // shift for Q14
+ static const int16_t S_Q15 = 15; // shift for Q15
- short mA1_Q14; // Q14 coefficient
+ int16_t mA1_Q14; // Q14 coefficient
// delay line of full amplitude generator
long mS1, mS2; // delay line S2 oldest
- short mS2_0; // saved value for reinitialisation
- short mAmplitude_Q15; // Q15 amplitude
+ int16_t mS2_0; // saved value for reinitialisation
+ int16_t mAmplitude_Q15; // Q15 amplitude
};
- KeyedVector<unsigned short, WaveGenerator *> mWaveGens; // list of active wave generators.
+ KeyedVector<uint16_t, WaveGenerator *> mWaveGens; // list of active wave generators.
};
}