From fff6d715a8db0daf08a50634f242c40268de3d49 Mon Sep 17 00:00:00 2001 From: Glenn Kasten Date: Thu, 12 Jan 2012 16:38:12 -0800 Subject: [PATCH] Use audio_stream_type_t consistently At native level it was a mixture of audio_stream_type_t, int, uint32_t, and uint8_t. Java is still int. Also fixed a couple of hard-coded -1 instead of AUDIO_STREAM_DEFAULT, and in startToneCommand a hard-coded 0 instead of AUDIO_STREAM_VOICE_CALL. Change-Id: Ia33bfd70edca8c2daec9052984b369cd8eee2a83 --- include/media/AudioSystem.h | 20 ++++++------ include/media/AudioTrack.h | 14 ++++----- include/media/IAudioFlinger.h | 12 ++++---- include/media/IAudioPolicyService.h | 2 +- include/media/IMediaPlayer.h | 3 +- include/media/MediaPlayerInterface.h | 2 +- include/media/ToneGenerator.h | 4 +-- include/media/mediaplayer.h | 4 +-- media/libmedia/AudioSystem.cpp | 28 ++++++++--------- media/libmedia/AudioTrack.cpp | 16 +++++----- media/libmedia/IAudioFlinger.cpp | 36 +++++++++++----------- media/libmedia/IAudioPolicyService.cpp | 12 ++++---- media/libmedia/IMediaPlayer.cpp | 6 ++-- media/libmedia/ToneGenerator.cpp | 2 +- media/libmedia/mediaplayer.cpp | 2 +- media/libmediaplayerservice/MediaPlayerService.cpp | 2 +- media/libmediaplayerservice/MediaPlayerService.h | 8 ++--- media/libmediaplayerservice/MidiFile.h | 2 +- services/audioflinger/AudioFlinger.cpp | 32 ++++++++++--------- services/audioflinger/AudioFlinger.h | 34 ++++++++++---------- services/audioflinger/AudioPolicyService.cpp | 8 ++--- services/audioflinger/AudioPolicyService.h | 10 +++--- 22 files changed, 131 insertions(+), 128 deletions(-) diff --git a/include/media/AudioSystem.h b/include/media/AudioSystem.h index 6a15f6ec90..e49d8f5d1c 100644 --- a/include/media/AudioSystem.h +++ b/include/media/AudioSystem.h @@ -55,19 +55,19 @@ public: static status_t getMasterMute(bool* mute); // set/get stream volume on specified output - static status_t setStreamVolume(int stream, float value, int output); - static status_t getStreamVolume(int stream, float* volume, int output); + static status_t setStreamVolume(audio_stream_type_t stream, float value, int output); + static status_t getStreamVolume(audio_stream_type_t stream, float* volume, int output); // mute/unmute stream - static status_t setStreamMute(int stream, bool mute); - static status_t getStreamMute(int stream, bool* mute); + static status_t setStreamMute(audio_stream_type_t stream, bool mute); + static status_t getStreamMute(audio_stream_type_t stream, bool* mute); // set audio mode in audio hardware (see audio_mode_t) static status_t setMode(int mode); // returns true in *state if tracks are active on the specified stream or has been active // in the past inPastMs milliseconds - static status_t isStreamActive(int stream, bool *state, uint32_t inPastMs = 0); + static status_t isStreamActive(audio_stream_type_t stream, bool *state, uint32_t inPastMs = 0); // set/get audio hardware parameters. The function accepts a list of parameters // key value pairs in the form: key1=value1;key2=value2;... @@ -83,11 +83,11 @@ public: static float linearToLog(int volume); static int logToLinear(float volume); - static status_t getOutputSamplingRate(int* samplingRate, int stream = AUDIO_STREAM_DEFAULT); - static status_t getOutputFrameCount(int* frameCount, int stream = AUDIO_STREAM_DEFAULT); - static status_t getOutputLatency(uint32_t* latency, int stream = AUDIO_STREAM_DEFAULT); + static status_t getOutputSamplingRate(int* samplingRate, audio_stream_type_t stream = AUDIO_STREAM_DEFAULT); + static status_t getOutputFrameCount(int* frameCount, audio_stream_type_t stream = AUDIO_STREAM_DEFAULT); + static status_t getOutputLatency(uint32_t* latency, audio_stream_type_t stream = AUDIO_STREAM_DEFAULT); - static bool routedToA2dpOutput(int streamType); + static bool routedToA2dpOutput(audio_stream_type_t streamType); static status_t getInputBufferSize(uint32_t sampleRate, int format, int channelCount, size_t* buffSize); @@ -103,7 +103,7 @@ public: // - BAD_VALUE: invalid parameter // NOTE: this feature is not supported on all hardware platforms and it is // necessary to check returned status before using the returned values. - static status_t getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, int stream = AUDIO_STREAM_DEFAULT); + static status_t getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, audio_stream_type_t stream = AUDIO_STREAM_DEFAULT); static unsigned int getInputFramesLost(audio_io_handle_t ioHandle); diff --git a/include/media/AudioTrack.h b/include/media/AudioTrack.h index 60b052bd94..fd8316255b 100644 --- a/include/media/AudioTrack.h +++ b/include/media/AudioTrack.h @@ -110,7 +110,7 @@ public: */ static status_t getMinFrameCount(int* frameCount, - int streamType =-1, + audio_stream_type_t streamType = AUDIO_STREAM_DEFAULT, uint32_t sampleRate = 0); /* Constructs an uninitialized AudioTrack. No connection with @@ -142,7 +142,7 @@ public: * sessionId: Specific session ID, or zero to use default. */ - AudioTrack( int streamType, + AudioTrack( audio_stream_type_t streamType, uint32_t sampleRate = 0, audio_format_t format = AUDIO_FORMAT_DEFAULT, int channelMask = 0, @@ -162,7 +162,7 @@ public: * EVENT_UNDERRUN event. */ - AudioTrack( int streamType, + AudioTrack( audio_stream_type_t streamType, uint32_t sampleRate = 0, audio_format_t format = AUDIO_FORMAT_DEFAULT, int channelMask = 0, @@ -186,7 +186,7 @@ public: * - BAD_VALUE: invalid parameter (channels, format, sampleRate...) * - NO_INIT: audio server or audio hardware not initialized * */ - status_t set(int streamType =-1, + status_t set(audio_stream_type_t streamType = AUDIO_STREAM_DEFAULT, uint32_t sampleRate = 0, audio_format_t format = AUDIO_FORMAT_DEFAULT, int channelMask = 0, @@ -215,7 +215,7 @@ public: /* getters, see constructor */ - int streamType() const; + audio_stream_type_t streamType() const; audio_format_t format() const; int channelCount() const; uint32_t frameCount() const; @@ -433,7 +433,7 @@ private: }; bool processAudioBuffer(const sp& thread); - status_t createTrack_l(int streamType, + status_t createTrack_l(audio_stream_type_t streamType, uint32_t sampleRate, audio_format_t format, uint32_t channelMask, @@ -458,7 +458,7 @@ private: audio_track_cblk_t* mCblk; audio_format_t mFormat; - uint8_t mStreamType; + audio_stream_type_t mStreamType; uint8_t mChannelCount; uint8_t mMuted; uint8_t mReserved; diff --git a/include/media/IAudioFlinger.h b/include/media/IAudioFlinger.h index 9e3cb7f3c3..15d3ca90c1 100644 --- a/include/media/IAudioFlinger.h +++ b/include/media/IAudioFlinger.h @@ -46,7 +46,7 @@ public: */ virtual sp createTrack( pid_t pid, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -89,11 +89,11 @@ public: /* set/get stream type state. This will probably be used by * the preference panel, mostly. */ - virtual status_t setStreamVolume(int stream, float value, int output) = 0; - virtual status_t setStreamMute(int stream, bool muted) = 0; + virtual status_t setStreamVolume(audio_stream_type_t stream, float value, int output) = 0; + virtual status_t setStreamMute(audio_stream_type_t stream, bool muted) = 0; - virtual float streamVolume(int stream, int output) const = 0; - virtual bool streamMute(int stream) const = 0; + virtual float streamVolume(audio_stream_type_t stream, int output) const = 0; + virtual bool streamMute(audio_stream_type_t stream) const = 0; // set audio mode virtual status_t setMode(int mode) = 0; @@ -129,7 +129,7 @@ public: uint32_t acoustics) = 0; virtual status_t closeInput(int input) = 0; - virtual status_t setStreamOutput(uint32_t stream, int output) = 0; + virtual status_t setStreamOutput(audio_stream_type_t stream, int output) = 0; virtual status_t setVoiceVolume(float volume) = 0; diff --git a/include/media/IAudioPolicyService.h b/include/media/IAudioPolicyService.h index 9807cbe564..1ac0bbf361 100644 --- a/include/media/IAudioPolicyService.h +++ b/include/media/IAudioPolicyService.h @@ -85,7 +85,7 @@ public: int id) = 0; virtual status_t unregisterEffect(int id) = 0; virtual status_t setEffectEnabled(int id, bool enabled) = 0; - virtual bool isStreamActive(int stream, uint32_t inPastMs = 0) const = 0; + virtual bool isStreamActive(audio_stream_type_t stream, uint32_t inPastMs = 0) const = 0; virtual status_t queryDefaultPreProcessing(int audioSession, effect_descriptor_t *descriptors, uint32_t *count) = 0; diff --git a/include/media/IMediaPlayer.h b/include/media/IMediaPlayer.h index e9059031fb..6425886475 100644 --- a/include/media/IMediaPlayer.h +++ b/include/media/IMediaPlayer.h @@ -21,6 +21,7 @@ #include #include #include +#include namespace android { @@ -51,7 +52,7 @@ public: virtual status_t getCurrentPosition(int* msec) = 0; virtual status_t getDuration(int* msec) = 0; virtual status_t reset() = 0; - virtual status_t setAudioStreamType(int type) = 0; + virtual status_t setAudioStreamType(audio_stream_type_t type) = 0; virtual status_t setLooping(int loop) = 0; virtual status_t setVolume(float leftVolume, float rightVolume) = 0; virtual status_t setAuxEffectSendLevel(float level) = 0; diff --git a/include/media/MediaPlayerInterface.h b/include/media/MediaPlayerInterface.h index 1f6bddaf2a..7beb1766d2 100644 --- a/include/media/MediaPlayerInterface.h +++ b/include/media/MediaPlayerInterface.h @@ -199,7 +199,7 @@ public: virtual ~MediaPlayerHWInterface() {} virtual bool hardwareOutput() { return true; } virtual status_t setVolume(float leftVolume, float rightVolume) = 0; - virtual status_t setAudioStreamType(int streamType) = 0; + virtual status_t setAudioStreamType(audio_stream_type_t streamType) = 0; }; }; // namespace android diff --git a/include/media/ToneGenerator.h b/include/media/ToneGenerator.h index 1ad1f26e10..7d890bd541 100644 --- a/include/media/ToneGenerator.h +++ b/include/media/ToneGenerator.h @@ -151,7 +151,7 @@ public: NUM_SUP_TONES = LAST_SUP_TONE-FIRST_SUP_TONE+1 }; - ToneGenerator(int streamType, float volume, bool threadCanCallJava = false); + ToneGenerator(audio_stream_type_t streamType, float volume, bool threadCanCallJava = false); ~ToneGenerator(); bool startTone(int toneType, int durationMs = -1); @@ -266,7 +266,7 @@ private: Mutex mCbkCondLock; // Mutex associated to mWaitCbkCond Condition mWaitCbkCond; // condition enabling interface to wait for audio callback completion after a change is requested float mVolume; // Volume applied to audio track - int mStreamType; // Audio stream used for output + audio_stream_type_t mStreamType; // Audio stream used for output unsigned int mProcessSize; // Size of audio blocks generated at a time by audioCallback() (in PCM frames). bool initAudioTrack(); diff --git a/include/media/mediaplayer.h b/include/media/mediaplayer.h index 2dc055e66f..00b7dd5841 100644 --- a/include/media/mediaplayer.h +++ b/include/media/mediaplayer.h @@ -185,7 +185,7 @@ public: status_t getCurrentPosition(int *msec); status_t getDuration(int *msec); status_t reset(); - status_t setAudioStreamType(int type); + status_t setAudioStreamType(audio_stream_type_t type); status_t setLooping(int loop); bool isLooping(); status_t setVolume(float leftVolume, float rightVolume); @@ -223,7 +223,7 @@ private: int mSeekPosition; bool mPrepareSync; status_t mPrepareStatus; - int mStreamType; + audio_stream_type_t mStreamType; bool mLoop; float mLeftVolume; float mRightVolume; diff --git a/media/libmedia/AudioSystem.cpp b/media/libmedia/AudioSystem.cpp index 9d4137e971..5193848091 100644 --- a/media/libmedia/AudioSystem.cpp +++ b/media/libmedia/AudioSystem.cpp @@ -120,7 +120,7 @@ status_t AudioSystem::getMasterMute(bool* mute) return NO_ERROR; } -status_t AudioSystem::setStreamVolume(int stream, float value, int output) +status_t AudioSystem::setStreamVolume(audio_stream_type_t stream, float value, int output) { if (uint32_t(stream) >= AUDIO_STREAM_CNT) return BAD_VALUE; const sp& af = AudioSystem::get_audio_flinger(); @@ -129,7 +129,7 @@ status_t AudioSystem::setStreamVolume(int stream, float value, int output) return NO_ERROR; } -status_t AudioSystem::setStreamMute(int stream, bool mute) +status_t AudioSystem::setStreamMute(audio_stream_type_t stream, bool mute) { if (uint32_t(stream) >= AUDIO_STREAM_CNT) return BAD_VALUE; const sp& af = AudioSystem::get_audio_flinger(); @@ -138,7 +138,7 @@ status_t AudioSystem::setStreamMute(int stream, bool mute) return NO_ERROR; } -status_t AudioSystem::getStreamVolume(int stream, float* volume, int output) +status_t AudioSystem::getStreamVolume(audio_stream_type_t stream, float* volume, int output) { if (uint32_t(stream) >= AUDIO_STREAM_CNT) return BAD_VALUE; const sp& af = AudioSystem::get_audio_flinger(); @@ -147,7 +147,7 @@ status_t AudioSystem::getStreamVolume(int stream, float* volume, int output) return NO_ERROR; } -status_t AudioSystem::getStreamMute(int stream, bool* mute) +status_t AudioSystem::getStreamMute(audio_stream_type_t stream, bool* mute) { if (uint32_t(stream) >= AUDIO_STREAM_CNT) return BAD_VALUE; const sp& af = AudioSystem::get_audio_flinger(); @@ -203,7 +203,7 @@ int AudioSystem::logToLinear(float volume) return volume ? 100 - int(dBConvertInverse * log(volume) + 0.5) : 0; } -status_t AudioSystem::getOutputSamplingRate(int* samplingRate, int streamType) +status_t AudioSystem::getOutputSamplingRate(int* samplingRate, audio_stream_type_t streamType) { OutputDescriptor *outputDesc; audio_io_handle_t output; @@ -212,7 +212,7 @@ status_t AudioSystem::getOutputSamplingRate(int* samplingRate, int streamType) streamType = AUDIO_STREAM_MUSIC; } - output = getOutput((audio_stream_type_t)streamType); + output = getOutput(streamType); if (output == 0) { return PERMISSION_DENIED; } @@ -236,7 +236,7 @@ status_t AudioSystem::getOutputSamplingRate(int* samplingRate, int streamType) return NO_ERROR; } -status_t AudioSystem::getOutputFrameCount(int* frameCount, int streamType) +status_t AudioSystem::getOutputFrameCount(int* frameCount, audio_stream_type_t streamType) { OutputDescriptor *outputDesc; audio_io_handle_t output; @@ -245,7 +245,7 @@ status_t AudioSystem::getOutputFrameCount(int* frameCount, int streamType) streamType = AUDIO_STREAM_MUSIC; } - output = getOutput((audio_stream_type_t)streamType); + output = getOutput(streamType); if (output == 0) { return PERMISSION_DENIED; } @@ -267,7 +267,7 @@ status_t AudioSystem::getOutputFrameCount(int* frameCount, int streamType) return NO_ERROR; } -status_t AudioSystem::getOutputLatency(uint32_t* latency, int streamType) +status_t AudioSystem::getOutputLatency(uint32_t* latency, audio_stream_type_t streamType) { OutputDescriptor *outputDesc; audio_io_handle_t output; @@ -276,7 +276,7 @@ status_t AudioSystem::getOutputLatency(uint32_t* latency, int streamType) streamType = AUDIO_STREAM_MUSIC; } - output = getOutput((audio_stream_type_t)streamType); + output = getOutput(streamType); if (output == 0) { return PERMISSION_DENIED; } @@ -333,7 +333,7 @@ status_t AudioSystem::setVoiceVolume(float value) return af->setVoiceVolume(value); } -status_t AudioSystem::getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, int stream) +status_t AudioSystem::getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames, audio_stream_type_t stream) { const sp& af = AudioSystem::get_audio_flinger(); if (af == 0) return PERMISSION_DENIED; @@ -342,7 +342,7 @@ status_t AudioSystem::getRenderPosition(uint32_t *halFrames, uint32_t *dspFrames stream = AUDIO_STREAM_MUSIC; } - return af->getRenderPosition(halFrames, dspFrames, getOutput((audio_stream_type_t)stream)); + return af->getRenderPosition(halFrames, dspFrames, getOutput(stream)); } unsigned int AudioSystem::getInputFramesLost(audio_io_handle_t ioHandle) { @@ -467,7 +467,7 @@ void AudioSystem::setErrorCallback(audio_error_callback cb) { gAudioErrorCallback = cb; } -bool AudioSystem::routedToA2dpOutput(int streamType) { +bool AudioSystem::routedToA2dpOutput(audio_stream_type_t streamType) { switch(streamType) { case AUDIO_STREAM_MUSIC: case AUDIO_STREAM_VOICE_CALL: @@ -728,7 +728,7 @@ status_t AudioSystem::setEffectEnabled(int id, bool enabled) return aps->setEffectEnabled(id, enabled); } -status_t AudioSystem::isStreamActive(int stream, bool* state, uint32_t inPastMs) +status_t AudioSystem::isStreamActive(audio_stream_type_t stream, bool* state, uint32_t inPastMs) { const sp& aps = AudioSystem::get_audio_policy_service(); if (aps == 0) return PERMISSION_DENIED; diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp index 9c650adf13..98fec83c2a 100644 --- a/media/libmedia/AudioTrack.cpp +++ b/media/libmedia/AudioTrack.cpp @@ -49,7 +49,7 @@ namespace android { // static status_t AudioTrack::getMinFrameCount( int* frameCount, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate) { int afSampleRate; @@ -83,7 +83,7 @@ AudioTrack::AudioTrack() } AudioTrack::AudioTrack( - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, audio_format_t format, int channelMask, @@ -102,7 +102,7 @@ AudioTrack::AudioTrack( } AudioTrack::AudioTrack( - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, audio_format_t format, int channelMask, @@ -140,7 +140,7 @@ AudioTrack::~AudioTrack() } status_t AudioTrack::set( - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, audio_format_t format, int channelMask, @@ -204,7 +204,7 @@ status_t AudioTrack::set( uint32_t channelCount = popcount(channelMask); audio_io_handle_t output = AudioSystem::getOutput( - (audio_stream_type_t)streamType, + streamType, sampleRate, format, channelMask, (audio_policy_output_flags_t)flags); @@ -275,7 +275,7 @@ uint32_t AudioTrack::latency() const return mLatency; } -int AudioTrack::streamType() const +audio_stream_type_t AudioTrack::streamType() const { return mStreamType; } @@ -688,7 +688,7 @@ audio_io_handle_t AudioTrack::getOutput() // must be called with mLock held audio_io_handle_t AudioTrack::getOutput_l() { - return AudioSystem::getOutput((audio_stream_type_t)mStreamType, + return AudioSystem::getOutput(mStreamType, mCblk->sampleRate, mFormat, mChannelMask, (audio_policy_output_flags_t)mFlags); } @@ -711,7 +711,7 @@ status_t AudioTrack::attachAuxEffect(int effectId) // must be called with mLock held status_t AudioTrack::createTrack_l( - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, audio_format_t format, uint32_t channelMask, diff --git a/media/libmedia/IAudioFlinger.cpp b/media/libmedia/IAudioFlinger.cpp index abd491f625..9ed1a2a766 100644 --- a/media/libmedia/IAudioFlinger.cpp +++ b/media/libmedia/IAudioFlinger.cpp @@ -82,7 +82,7 @@ public: virtual sp createTrack( pid_t pid, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -97,7 +97,7 @@ public: sp track; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); data.writeInt32(pid); - data.writeInt32(streamType); + data.writeInt32((int32_t) streamType); data.writeInt32(sampleRate); data.writeInt32(format); data.writeInt32(channelMask); @@ -249,42 +249,42 @@ public: return reply.readInt32(); } - virtual status_t setStreamVolume(int stream, float value, int output) + virtual status_t setStreamVolume(audio_stream_type_t stream, float value, int output) { Parcel data, reply; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeFloat(value); data.writeInt32(output); remote()->transact(SET_STREAM_VOLUME, data, &reply); return reply.readInt32(); } - virtual status_t setStreamMute(int stream, bool muted) + virtual status_t setStreamMute(audio_stream_type_t stream, bool muted) { Parcel data, reply; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(muted); remote()->transact(SET_STREAM_MUTE, data, &reply); return reply.readInt32(); } - virtual float streamVolume(int stream, int output) const + virtual float streamVolume(audio_stream_type_t stream, int output) const { Parcel data, reply; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(output); remote()->transact(STREAM_VOLUME, data, &reply); return reply.readFloat(); } - virtual bool streamMute(int stream) const + virtual bool streamMute(audio_stream_type_t stream) const { Parcel data, reply; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); remote()->transact(STREAM_MUTE, data, &reply); return reply.readInt32(); } @@ -468,11 +468,11 @@ public: return reply.readInt32(); } - virtual status_t setStreamOutput(uint32_t stream, int output) + virtual status_t setStreamOutput(audio_stream_type_t stream, int output) { Parcel data, reply; data.writeInterfaceToken(IAudioFlinger::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(output); remote()->transact(SET_STREAM_OUTPUT, data, &reply); return reply.readInt32(); @@ -687,7 +687,7 @@ status_t BnAudioFlinger::onTransact( int sessionId = data.readInt32(); status_t status; sp track = createTrack(pid, - streamType, sampleRate, format, + (audio_stream_type_t) streamType, sampleRate, format, channelCount, bufferCount, flags, buffer, output, &sessionId, &status); reply->writeInt32(sessionId); reply->writeInt32(status); @@ -762,26 +762,26 @@ status_t BnAudioFlinger::onTransact( int stream = data.readInt32(); float volume = data.readFloat(); int output = data.readInt32(); - reply->writeInt32( setStreamVolume(stream, volume, output) ); + reply->writeInt32( setStreamVolume((audio_stream_type_t) stream, volume, output) ); return NO_ERROR; } break; case SET_STREAM_MUTE: { CHECK_INTERFACE(IAudioFlinger, data, reply); int stream = data.readInt32(); - reply->writeInt32( setStreamMute(stream, data.readInt32()) ); + reply->writeInt32( setStreamMute((audio_stream_type_t) stream, data.readInt32()) ); return NO_ERROR; } break; case STREAM_VOLUME: { CHECK_INTERFACE(IAudioFlinger, data, reply); int stream = data.readInt32(); int output = data.readInt32(); - reply->writeFloat( streamVolume(stream, output) ); + reply->writeFloat( streamVolume((audio_stream_type_t) stream, output) ); return NO_ERROR; } break; case STREAM_MUTE: { CHECK_INTERFACE(IAudioFlinger, data, reply); int stream = data.readInt32(); - reply->writeInt32( streamMute(stream) ); + reply->writeInt32( streamMute((audio_stream_type_t) stream) ); return NO_ERROR; } break; case SET_MODE: { @@ -904,7 +904,7 @@ status_t BnAudioFlinger::onTransact( CHECK_INTERFACE(IAudioFlinger, data, reply); uint32_t stream = data.readInt32(); int output = data.readInt32(); - reply->writeInt32(setStreamOutput(stream, output)); + reply->writeInt32(setStreamOutput((audio_stream_type_t) stream, output)); return NO_ERROR; } break; case SET_VOICE_VOLUME: { diff --git a/media/libmedia/IAudioPolicyService.cpp b/media/libmedia/IAudioPolicyService.cpp index 50b4855a8e..67d9c458b1 100644 --- a/media/libmedia/IAudioPolicyService.cpp +++ b/media/libmedia/IAudioPolicyService.cpp @@ -154,7 +154,7 @@ public: Parcel data, reply; data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor()); data.writeInt32(output); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(session); remote()->transact(START_OUTPUT, data, &reply); return static_cast (reply.readInt32()); @@ -167,7 +167,7 @@ public: Parcel data, reply; data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor()); data.writeInt32(output); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(session); remote()->transact(STOP_OUTPUT, data, &reply); return static_cast (reply.readInt32()); @@ -324,11 +324,11 @@ public: return static_cast (reply.readInt32()); } - virtual bool isStreamActive(int stream, uint32_t inPastMs) const + virtual bool isStreamActive(audio_stream_type_t stream, uint32_t inPastMs) const { Parcel data, reply; data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor()); - data.writeInt32(stream); + data.writeInt32((int32_t) stream); data.writeInt32(inPastMs); remote()->transact(IS_STREAM_ACTIVE, data, &reply); return reply.readInt32(); @@ -598,9 +598,9 @@ status_t BnAudioPolicyService::onTransact( case IS_STREAM_ACTIVE: { CHECK_INTERFACE(IAudioPolicyService, data, reply); - int stream = data.readInt32(); + audio_stream_type_t stream = (audio_stream_type_t) data.readInt32(); uint32_t inPastMs = (uint32_t)data.readInt32(); - reply->writeInt32( isStreamActive(stream, inPastMs) ); + reply->writeInt32( isStreamActive((audio_stream_type_t) stream, inPastMs) ); return NO_ERROR; } break; diff --git a/media/libmedia/IMediaPlayer.cpp b/media/libmedia/IMediaPlayer.cpp index 9c1e6b727b..64cc919723 100644 --- a/media/libmedia/IMediaPlayer.cpp +++ b/media/libmedia/IMediaPlayer.cpp @@ -198,11 +198,11 @@ public: return reply.readInt32(); } - status_t setAudioStreamType(int type) + status_t setAudioStreamType(audio_stream_type_t stream) { Parcel data, reply; data.writeInterfaceToken(IMediaPlayer::getInterfaceDescriptor()); - data.writeInt32(type); + data.writeInt32((int32_t) stream); remote()->transact(SET_AUDIO_STREAM_TYPE, data, &reply); return reply.readInt32(); } @@ -397,7 +397,7 @@ status_t BnMediaPlayer::onTransact( } break; case SET_AUDIO_STREAM_TYPE: { CHECK_INTERFACE(IMediaPlayer, data, reply); - reply->writeInt32(setAudioStreamType(data.readInt32())); + reply->writeInt32(setAudioStreamType((audio_stream_type_t) data.readInt32())); return NO_ERROR; } break; case SET_LOOPING: { diff --git a/media/libmedia/ToneGenerator.cpp b/media/libmedia/ToneGenerator.cpp index 9d3246000c..5ceb912503 100644 --- a/media/libmedia/ToneGenerator.cpp +++ b/media/libmedia/ToneGenerator.cpp @@ -798,7 +798,7 @@ const unsigned char ToneGenerator::sToneMappingTable[NUM_REGIONS-1][NUM_SUP_TONE // none // //////////////////////////////////////////////////////////////////////////////// -ToneGenerator::ToneGenerator(int streamType, float volume, bool threadCanCallJava) { +ToneGenerator::ToneGenerator(audio_stream_type_t streamType, float volume, bool threadCanCallJava) { ALOGV("ToneGenerator constructor: streamType=%d, volume=%f\n", streamType, volume); diff --git a/media/libmedia/mediaplayer.cpp b/media/libmedia/mediaplayer.cpp index 4be960c67c..acf97a67a8 100644 --- a/media/libmedia/mediaplayer.cpp +++ b/media/libmedia/mediaplayer.cpp @@ -478,7 +478,7 @@ status_t MediaPlayer::reset() return reset_l(); } -status_t MediaPlayer::setAudioStreamType(int type) +status_t MediaPlayer::setAudioStreamType(audio_stream_type_t type) { ALOGV("MediaPlayer::setAudioStreamType"); Mutex::Autolock _l(mLock); diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp index af58cacb2d..a0c20ae4a9 100644 --- a/media/libmediaplayerservice/MediaPlayerService.cpp +++ b/media/libmediaplayerservice/MediaPlayerService.cpp @@ -1010,7 +1010,7 @@ status_t MediaPlayerService::Client::reset() return p->reset(); } -status_t MediaPlayerService::Client::setAudioStreamType(int type) +status_t MediaPlayerService::Client::setAudioStreamType(audio_stream_type_t type) { ALOGV("[%d] setAudioStreamType(%d)", mConnId, type); // TODO: for hardware output, call player instead diff --git a/media/libmediaplayerservice/MediaPlayerService.h b/media/libmediaplayerservice/MediaPlayerService.h index 66f245dcad..6b68b87ae0 100644 --- a/media/libmediaplayerservice/MediaPlayerService.h +++ b/media/libmediaplayerservice/MediaPlayerService.h @@ -92,7 +92,7 @@ class MediaPlayerService : public BnMediaPlayerService virtual void flush(); virtual void pause(); virtual void close(); - void setAudioStreamType(int streamType) { mStreamType = streamType; } + void setAudioStreamType(audio_stream_type_t streamType) { mStreamType = streamType; } void setVolume(float left, float right); status_t setAuxEffectSendLevel(float level); status_t attachAuxEffect(int effectId); @@ -108,7 +108,7 @@ class MediaPlayerService : public BnMediaPlayerService AudioTrack* mTrack; AudioCallback mCallback; void * mCallbackCookie; - int mStreamType; + audio_stream_type_t mStreamType; float mLeftVolume; float mRightVolume; float mMsecsPerFrame; @@ -149,7 +149,7 @@ class MediaPlayerService : public BnMediaPlayerService virtual void flush() {} virtual void pause() {} virtual void close() {} - void setAudioStreamType(int streamType) {} + void setAudioStreamType(audio_stream_type_t streamType) {} void setVolume(float left, float right) {} uint32_t sampleRate() const { return mSampleRate; } audio_format_t format() const { return mFormat; } @@ -259,7 +259,7 @@ private: virtual status_t getCurrentPosition(int* msec); virtual status_t getDuration(int* msec); virtual status_t reset(); - virtual status_t setAudioStreamType(int type); + virtual status_t setAudioStreamType(audio_stream_type_t type); virtual status_t setLooping(int loop); virtual status_t setVolume(float leftVolume, float rightVolume); virtual status_t invoke(const Parcel& request, Parcel *reply); diff --git a/media/libmediaplayerservice/MidiFile.h b/media/libmediaplayerservice/MidiFile.h index 2a0dcf9d17..dfe431814e 100644 --- a/media/libmediaplayerservice/MidiFile.h +++ b/media/libmediaplayerservice/MidiFile.h @@ -78,7 +78,7 @@ private: EAS_I32 mDuration; EAS_STATE mState; EAS_FILE mFileLocator; - int mStreamType; + audio_stream_type_t mStreamType; bool mLoop; volatile bool mExit; bool mPaused; diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp index 9fb666e266..990a7e2a29 100644 --- a/services/audioflinger/AudioFlinger.cpp +++ b/services/audioflinger/AudioFlinger.cpp @@ -380,7 +380,7 @@ status_t AudioFlinger::dump(int fd, const Vector& args) sp AudioFlinger::createTrack( pid_t pid, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -654,7 +654,7 @@ bool AudioFlinger::masterMute() const return mMasterMute; } -status_t AudioFlinger::setStreamVolume(int stream, float value, int output) +status_t AudioFlinger::setStreamVolume(audio_stream_type_t stream, float value, int output) { // check calling permissions if (!settingsAllowed()) { @@ -688,7 +688,7 @@ status_t AudioFlinger::setStreamVolume(int stream, float value, int output) return NO_ERROR; } -status_t AudioFlinger::setStreamMute(int stream, bool muted) +status_t AudioFlinger::setStreamMute(audio_stream_type_t stream, bool muted) { // check calling permissions if (!settingsAllowed()) { @@ -709,7 +709,7 @@ status_t AudioFlinger::setStreamMute(int stream, bool muted) return NO_ERROR; } -float AudioFlinger::streamVolume(int stream, int output) const +float AudioFlinger::streamVolume(audio_stream_type_t stream, int output) const { if (stream < 0 || uint32_t(stream) >= AUDIO_STREAM_CNT) { return 0.0f; @@ -730,7 +730,7 @@ float AudioFlinger::streamVolume(int stream, int output) const return volume; } -bool AudioFlinger::streamMute(int stream) const +bool AudioFlinger::streamMute(audio_stream_type_t stream) const { if (stream < 0 || stream >= (int)AUDIO_STREAM_CNT) { return true; @@ -1382,7 +1382,9 @@ AudioFlinger::PlaybackThread::PlaybackThread(const sp& audioFlinge mMasterVolume = mAudioFlinger->masterVolume(); mMasterMute = mAudioFlinger->masterMute(); - for (int stream = 0; stream < AUDIO_STREAM_CNT; stream++) { + // There is no AUDIO_STREAM_MIN, and ++ operator does not compile + for (audio_stream_type_t stream = (audio_stream_type_t) 0; stream < AUDIO_STREAM_CNT; + stream = (audio_stream_type_t) (stream + 1)) { mStreamTypes[stream].volume = mAudioFlinger->streamVolumeInternal(stream); mStreamTypes[stream].mute = mAudioFlinger->streamMute(stream); mStreamTypes[stream].valid = true; @@ -1483,7 +1485,7 @@ void AudioFlinger::PlaybackThread::onFirstRef() // PlaybackThread::createTrack_l() must be called with AudioFlinger::mLock held sp AudioFlinger::PlaybackThread::createTrack_l( const sp& client, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -1606,24 +1608,24 @@ bool AudioFlinger::PlaybackThread::masterMute() const return mMasterMute; } -status_t AudioFlinger::PlaybackThread::setStreamVolume(int stream, float value) +status_t AudioFlinger::PlaybackThread::setStreamVolume(audio_stream_type_t stream, float value) { mStreamTypes[stream].volume = value; return NO_ERROR; } -status_t AudioFlinger::PlaybackThread::setStreamMute(int stream, bool muted) +status_t AudioFlinger::PlaybackThread::setStreamMute(audio_stream_type_t stream, bool muted) { mStreamTypes[stream].mute = muted; return NO_ERROR; } -float AudioFlinger::PlaybackThread::streamVolume(int stream) const +float AudioFlinger::PlaybackThread::streamVolume(audio_stream_type_t stream) const { return mStreamTypes[stream].volume; } -bool AudioFlinger::PlaybackThread::streamMute(int stream) const +bool AudioFlinger::PlaybackThread::streamMute(audio_stream_type_t stream) const { return mStreamTypes[stream].mute; } @@ -2297,7 +2299,7 @@ uint32_t AudioFlinger::MixerThread::prepareTracks_l(const SortedVector< wp& thread, const sp& client, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -5156,7 +5158,7 @@ status_t AudioFlinger::closeInput(int input) return NO_ERROR; } -status_t AudioFlinger::setStreamOutput(uint32_t stream, int output) +status_t AudioFlinger::setStreamOutput(audio_stream_type_t stream, int output) { Mutex::Autolock _l(mLock); MixerThread *dstThread = checkMixerThread_l(output); diff --git a/services/audioflinger/AudioFlinger.h b/services/audioflinger/AudioFlinger.h index f99e7647e5..9480cab914 100644 --- a/services/audioflinger/AudioFlinger.h +++ b/services/audioflinger/AudioFlinger.h @@ -70,7 +70,7 @@ public: // IAudioFlinger interface virtual sp createTrack( pid_t pid, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -93,11 +93,11 @@ public: virtual float masterVolume() const; virtual bool masterMute() const; - virtual status_t setStreamVolume(int stream, float value, int output); - virtual status_t setStreamMute(int stream, bool muted); + virtual status_t setStreamVolume(audio_stream_type_t stream, float value, int output); + virtual status_t setStreamMute(audio_stream_type_t stream, bool muted); - virtual float streamVolume(int stream, int output) const; - virtual bool streamMute(int stream) const; + virtual float streamVolume(audio_stream_type_t stream, int output) const; + virtual bool streamMute(audio_stream_type_t stream) const; virtual status_t setMode(int mode); @@ -135,7 +135,7 @@ public: virtual status_t closeInput(int input); - virtual status_t setStreamOutput(uint32_t stream, int output); + virtual status_t setStreamOutput(audio_stream_type_t stream, int output); virtual status_t setVoiceVolume(float volume); @@ -573,7 +573,7 @@ private: public: Track( const wp& thread, const sp& client, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -595,7 +595,7 @@ private: return mName; } - int type() const { + audio_stream_type_t type() const { return mStreamType; } status_t attachAuxEffect(int EffectId); @@ -641,7 +641,7 @@ private: int8_t mRetryCount; sp mSharedBuffer; bool mResetDone; - int mStreamType; + audio_stream_type_t mStreamType; int mName; int16_t *mMainBuffer; int32_t *mAuxBuffer; @@ -707,15 +707,15 @@ private: virtual float masterVolume() const; virtual bool masterMute() const; - virtual status_t setStreamVolume(int stream, float value); - virtual status_t setStreamMute(int stream, bool muted); + virtual status_t setStreamVolume(audio_stream_type_t stream, float value); + virtual status_t setStreamMute(audio_stream_type_t stream, bool muted); - virtual float streamVolume(int stream) const; - virtual bool streamMute(int stream) const; + virtual float streamVolume(audio_stream_type_t stream) const; + virtual bool streamMute(audio_stream_type_t stream) const; sp createTrack_l( const sp& client, - int streamType, + audio_stream_type_t streamType, uint32_t sampleRate, uint32_t format, uint32_t channelMask, @@ -747,7 +747,7 @@ private: virtual uint32_t hasAudioSession(int sessionId); virtual uint32_t getStrategyForSession_l(int sessionId); - void setStreamValid(int streamType, bool valid); + void setStreamValid(audio_stream_type_t streamType, bool valid); struct stream_type_t { stream_type_t() @@ -818,7 +818,7 @@ private: // Thread virtuals virtual bool threadLoop(); - void invalidateTracks(int streamType); + void invalidateTracks(audio_stream_type_t streamType); virtual bool checkForNewParameters_l(); virtual status_t dumpInternals(int fd, const Vector& args); @@ -884,7 +884,7 @@ private: PlaybackThread *checkPlaybackThread_l(int output) const; MixerThread *checkMixerThread_l(int output) const; RecordThread *checkRecordThread_l(int input) const; - float streamVolumeInternal(int stream) const { return mStreamTypes[stream].volume; } + float streamVolumeInternal(audio_stream_type_t stream) const { return mStreamTypes[stream].volume; } void audioConfigChanged_l(int event, int ioHandle, void *param2); uint32_t nextUniqueId(); diff --git a/services/audioflinger/AudioPolicyService.cpp b/services/audioflinger/AudioPolicyService.cpp index 3f86d58e69..b06bcb9050 100644 --- a/services/audioflinger/AudioPolicyService.cpp +++ b/services/audioflinger/AudioPolicyService.cpp @@ -486,7 +486,7 @@ status_t AudioPolicyService::setEffectEnabled(int id, bool enabled) return mpAudioPolicy->set_effect_enabled(mpAudioPolicy, id, enabled); } -bool AudioPolicyService::isStreamActive(int stream, uint32_t inPastMs) const +bool AudioPolicyService::isStreamActive(audio_stream_type_t stream, uint32_t inPastMs) const { if (mpAudioPolicy == NULL) { return 0; @@ -781,7 +781,7 @@ status_t AudioPolicyService::AudioCommandThread::dump(int fd) return NO_ERROR; } -void AudioPolicyService::AudioCommandThread::startToneCommand(int type, int stream) +void AudioPolicyService::AudioCommandThread::startToneCommand(int type, audio_stream_type_t stream) { AudioCommand *command = new AudioCommand(); command->mCommand = START_TONE; @@ -808,7 +808,7 @@ void AudioPolicyService::AudioCommandThread::stopToneCommand() mWaitWorkCV.signal(); } -status_t AudioPolicyService::AudioCommandThread::volumeCommand(int stream, +status_t AudioPolicyService::AudioCommandThread::volumeCommand(audio_stream_type_t stream, float volume, int output, int delayMs) @@ -1019,7 +1019,7 @@ int AudioPolicyService::setStreamVolume(audio_stream_type_t stream, audio_io_handle_t output, int delayMs) { - return (int)mAudioCommandThread->volumeCommand((int)stream, volume, + return (int)mAudioCommandThread->volumeCommand(stream, volume, (int)output, delayMs); } diff --git a/services/audioflinger/AudioPolicyService.h b/services/audioflinger/AudioPolicyService.h index 88cb1e9c88..e98ec68a52 100644 --- a/services/audioflinger/AudioPolicyService.h +++ b/services/audioflinger/AudioPolicyService.h @@ -102,7 +102,7 @@ public: int id); virtual status_t unregisterEffect(int id); virtual status_t setEffectEnabled(int id, bool enabled); - virtual bool isStreamActive(int stream, uint32_t inPastMs = 0) const; + virtual bool isStreamActive(audio_stream_type_t stream, uint32_t inPastMs = 0) const; virtual status_t queryDefaultPreProcessing(int audioSession, effect_descriptor_t *descriptors, @@ -168,9 +168,9 @@ private: virtual bool threadLoop(); void exit(); - void startToneCommand(int type = 0, int stream = 0); + void startToneCommand(int type = 0, audio_stream_type_t stream = AUDIO_STREAM_VOICE_CALL); void stopToneCommand(); - status_t volumeCommand(int stream, float volume, int output, int delayMs = 0); + status_t volumeCommand(audio_stream_type_t stream, float volume, int output, int delayMs = 0); status_t parametersCommand(int ioHandle, const char *keyValuePairs, int delayMs = 0); status_t voiceVolumeCommand(float volume, int delayMs = 0); void insertCommand_l(AudioCommand *command, int delayMs = 0); @@ -196,12 +196,12 @@ private: class ToneData { public: int mType; // tone type (START_TONE only) - int mStream; // stream type (START_TONE only) + audio_stream_type_t mStream; // stream type (START_TONE only) }; class VolumeData { public: - int mStream; + audio_stream_type_t mStream; float mVolume; int mIO; }; -- 2.11.0