Loading media/libmediaplayerservice/MediaPlayerService.cpp +26 −16 Original line number Diff line number Diff line Loading @@ -275,20 +275,6 @@ MediaPlayerService::MediaPlayerService() ALOGV("MediaPlayerService created"); mNextConnId = 1; mBatteryAudio.refCount = 0; for (int i = 0; i < NUM_AUDIO_DEVICES; i++) { mBatteryAudio.deviceOn[i] = 0; mBatteryAudio.lastTime[i] = 0; mBatteryAudio.totalTime[i] = 0; } // speaker is on by default mBatteryAudio.deviceOn[SPEAKER] = 1; // reset battery stats // if the mediaserver has crashed, battery stats could be left // in bad state, reset the state upon service start. BatteryNotifier::getInstance().noteResetVideo(); MediaPlayerFactory::registerBuiltinFactories(); } Loading Loading @@ -2486,7 +2472,31 @@ bool CallbackThread::threadLoop() { //////////////////////////////////////////////////////////////////////////////// void MediaPlayerService::addBatteryData(uint32_t params) void MediaPlayerService::addBatteryData(uint32_t params) { mBatteryTracker.addBatteryData(params); } status_t MediaPlayerService::pullBatteryData(Parcel* reply) { return mBatteryTracker.pullBatteryData(reply); } MediaPlayerService::BatteryTracker::BatteryTracker() { mBatteryAudio.refCount = 0; for (int i = 0; i < NUM_AUDIO_DEVICES; i++) { mBatteryAudio.deviceOn[i] = 0; mBatteryAudio.lastTime[i] = 0; mBatteryAudio.totalTime[i] = 0; } // speaker is on by default mBatteryAudio.deviceOn[SPEAKER] = 1; // reset battery stats // if the mediaserver has crashed, battery stats could be left // in bad state, reset the state upon service start. BatteryNotifier::getInstance().noteResetVideo(); } void MediaPlayerService::BatteryTracker::addBatteryData(uint32_t params) { Mutex::Autolock lock(mLock); Loading Loading @@ -2626,7 +2636,7 @@ void MediaPlayerService::addBatteryData(uint32_t params) } } status_t MediaPlayerService::pullBatteryData(Parcel* reply) { status_t MediaPlayerService::BatteryTracker::pullBatteryData(Parcel* reply) { Mutex::Autolock lock(mLock); // audio output devices usage Loading media/libmediaplayerservice/MediaPlayerService.h +51 −40 Original line number Diff line number Diff line Loading @@ -246,6 +246,19 @@ public: CAMERA_PROCESS_DEATH = 4 }; // Collect info of the codec usage from media player and media recorder virtual void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage virtual status_t pullBatteryData(Parcel* reply); private: struct BatteryTracker { BatteryTracker(); // Collect info of the codec usage from media player and media recorder void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage status_t pullBatteryData(Parcel* reply); private: // For battery usage tracking purpose struct BatteryUsageInfo { // how many streams are being played by one UID Loading Loading @@ -286,11 +299,9 @@ public: // for battery app BatteryAudioFlingerUsageInfo mBatteryAudio; // Collect info of the codec usage from media player and media recorder virtual void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage virtual status_t pullBatteryData(Parcel* reply); private: mutable Mutex mLock; }; BatteryTracker mBatteryTracker; class Client : public BnMediaPlayer { // IMediaPlayer interface Loading Loading
media/libmediaplayerservice/MediaPlayerService.cpp +26 −16 Original line number Diff line number Diff line Loading @@ -275,20 +275,6 @@ MediaPlayerService::MediaPlayerService() ALOGV("MediaPlayerService created"); mNextConnId = 1; mBatteryAudio.refCount = 0; for (int i = 0; i < NUM_AUDIO_DEVICES; i++) { mBatteryAudio.deviceOn[i] = 0; mBatteryAudio.lastTime[i] = 0; mBatteryAudio.totalTime[i] = 0; } // speaker is on by default mBatteryAudio.deviceOn[SPEAKER] = 1; // reset battery stats // if the mediaserver has crashed, battery stats could be left // in bad state, reset the state upon service start. BatteryNotifier::getInstance().noteResetVideo(); MediaPlayerFactory::registerBuiltinFactories(); } Loading Loading @@ -2486,7 +2472,31 @@ bool CallbackThread::threadLoop() { //////////////////////////////////////////////////////////////////////////////// void MediaPlayerService::addBatteryData(uint32_t params) void MediaPlayerService::addBatteryData(uint32_t params) { mBatteryTracker.addBatteryData(params); } status_t MediaPlayerService::pullBatteryData(Parcel* reply) { return mBatteryTracker.pullBatteryData(reply); } MediaPlayerService::BatteryTracker::BatteryTracker() { mBatteryAudio.refCount = 0; for (int i = 0; i < NUM_AUDIO_DEVICES; i++) { mBatteryAudio.deviceOn[i] = 0; mBatteryAudio.lastTime[i] = 0; mBatteryAudio.totalTime[i] = 0; } // speaker is on by default mBatteryAudio.deviceOn[SPEAKER] = 1; // reset battery stats // if the mediaserver has crashed, battery stats could be left // in bad state, reset the state upon service start. BatteryNotifier::getInstance().noteResetVideo(); } void MediaPlayerService::BatteryTracker::addBatteryData(uint32_t params) { Mutex::Autolock lock(mLock); Loading Loading @@ -2626,7 +2636,7 @@ void MediaPlayerService::addBatteryData(uint32_t params) } } status_t MediaPlayerService::pullBatteryData(Parcel* reply) { status_t MediaPlayerService::BatteryTracker::pullBatteryData(Parcel* reply) { Mutex::Autolock lock(mLock); // audio output devices usage Loading
media/libmediaplayerservice/MediaPlayerService.h +51 −40 Original line number Diff line number Diff line Loading @@ -246,6 +246,19 @@ public: CAMERA_PROCESS_DEATH = 4 }; // Collect info of the codec usage from media player and media recorder virtual void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage virtual status_t pullBatteryData(Parcel* reply); private: struct BatteryTracker { BatteryTracker(); // Collect info of the codec usage from media player and media recorder void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage status_t pullBatteryData(Parcel* reply); private: // For battery usage tracking purpose struct BatteryUsageInfo { // how many streams are being played by one UID Loading Loading @@ -286,11 +299,9 @@ public: // for battery app BatteryAudioFlingerUsageInfo mBatteryAudio; // Collect info of the codec usage from media player and media recorder virtual void addBatteryData(uint32_t params); // API for the Battery app to pull the data of codecs usage virtual status_t pullBatteryData(Parcel* reply); private: mutable Mutex mLock; }; BatteryTracker mBatteryTracker; class Client : public BnMediaPlayer { // IMediaPlayer interface Loading