Loading services/mediametrics/Android.bp +32 −1 Original line number Diff line number Diff line Loading @@ -169,7 +169,7 @@ cc_library { "libmemunreachable", "libprotobuf-cpp-lite", "libstagefright_foundation", "libstatslog", "libstats_media_metrics", "libstatspull", "libstatssocket", "libutils", Loading @@ -177,6 +177,7 @@ cc_library { ], export_shared_lib_headers: [ "libstats_media_metrics", "libstatspull", "libstatssocket", ], Loading @@ -200,3 +201,33 @@ cc_library { "libaudioutils_headers", ], } cc_library { name: "libstats_media_metrics", generated_sources: ["stats_media_metrics.cpp"], generated_headers: ["stats_media_metrics.h"], export_generated_headers: ["stats_media_metrics.h"], shared_libs: [ "libcutils", "libstatspull", "libstatssocket", ], } genrule { name: "stats_media_metrics.h", tools: ["stats-log-api-gen"], cmd: "$(location stats-log-api-gen) --header $(genDir)/stats_media_metrics.h --module media_metrics --namespace android,stats,media_metrics", out: [ "stats_media_metrics.h", ], } genrule { name: "stats_media_metrics.cpp", tools: ["stats-log-api-gen"], cmd: "$(location stats-log-api-gen) --cpp $(genDir)/stats_media_metrics.cpp --module media_metrics --namespace android,stats,media_metrics --importHeader stats_media_metrics.h", out: [ "stats_media_metrics.cpp", ], } services/mediametrics/AudioAnalytics.cpp +36 −36 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ #include <aaudio/AAudio.h> // error codes #include <audio_utils/clock.h> // clock conversions #include <cutils/properties.h> #include <statslog.h> // statsd #include <stats_media_metrics.h> // statsd #include <system/audio.h> #include "AudioTypes.h" // string to int conversions Loading Loading @@ -292,7 +292,7 @@ int sendToStatsd(Types ... args) int result = 0; #ifdef STATSD_ENABLE result = android::util::stats_write(args...); result = stats::media_metrics::stats_write(args...); #endif return result; } Loading @@ -308,7 +308,7 @@ std::pair<int, std::string> sendToStatsd(const char * const (& fields)[N], Types std::stringstream ss; #ifdef STATSD_ENABLE result = android::util::stats_write(args...); result = stats::media_metrics::stats_write(args...); ss << "result:" << result; #endif ss << " { "; Loading Loading @@ -607,7 +607,7 @@ bool AudioAnalytics::reportAudioRecordStatus( const int atom_status = types::lookup<types::STATUS, int32_t>(statusString); // currently we only send create status events. const int32_t event = android::util:: const int32_t event = stats::media_metrics:: MEDIAMETRICS_AUDIO_RECORD_STATUS_REPORTED__EVENT__AUDIO_RECORD_EVENT_CREATE; // The following fields should all be present in a create event. Loading Loading @@ -647,7 +647,7 @@ bool AudioAnalytics::reportAudioRecordStatus( __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_RECORD, AMEDIAMETRICS_PROP_SAMPLERATE); const auto [ result, str ] = sendToStatsd(AudioRecordStatusFields, CONDITION(android::util::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED) , atom_status , message.c_str() , subCode Loading @@ -661,7 +661,7 @@ bool AudioAnalytics::reportAudioRecordStatus( , sampleRate ); ALOGV("%s: statsd %s", __func__, str.c_str()); mStatsdLog->log(android::util::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED, str); mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED, str); return true; } return false; Loading @@ -679,7 +679,7 @@ bool AudioAnalytics::reportAudioTrackStatus( const int atom_status = types::lookup<types::STATUS, int32_t>(statusString); // currently we only send create status events. const int32_t event = android::util:: const int32_t event = stats::media_metrics:: MEDIAMETRICS_AUDIO_TRACK_STATUS_REPORTED__EVENT__AUDIO_TRACK_EVENT_CREATE; // The following fields should all be present in a create event. Loading Loading @@ -734,7 +734,7 @@ bool AudioAnalytics::reportAudioTrackStatus( __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_TRACK, AMEDIAMETRICS_PROP_PLAYBACK_PITCH); const auto [ result, str ] = sendToStatsd(AudioTrackStatusFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED) , atom_status , message.c_str() , subCode Loading @@ -751,7 +751,7 @@ bool AudioAnalytics::reportAudioTrackStatus( , (float)pitch ); ALOGV("%s: statsd %s", __func__, str.c_str()); mStatsdLog->log(android::util::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED, str); mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED, str); return true; } return false; Loading Loading @@ -860,7 +860,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( if (clientCalled // only log if client app called AudioRecord. && mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioRecordDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(inputDeviceStatsd) , inputDeviceNames.c_str() , deviceTimeNs Loading @@ -878,7 +878,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str); } } break; case THREAD: { Loading Loading @@ -930,7 +930,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( << ")"; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioThreadDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(deviceStatsd) , deviceNames.c_str() , deviceTimeNs Loading @@ -944,7 +944,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str); } } break; case TRACK: { Loading Loading @@ -1050,7 +1050,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( if (clientCalled // only log if client app called AudioTracks && mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioTrackDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(outputDeviceStatsd) , outputDeviceNames.c_str() , deviceTimeNs Loading @@ -1074,7 +1074,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str); } } break; } Loading Loading @@ -1136,7 +1136,7 @@ void AudioAnalytics::DeviceConnection::createPatch( const long_enum_type_t inputDeviceBits{}; const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1146,7 +1146,7 @@ void AudioAnalytics::DeviceConnection::createPatch( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } } } Loading Loading @@ -1190,7 +1190,7 @@ void AudioAnalytics::DeviceConnection::expire() { << " deviceName:" << mA2dpDeviceName; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1200,7 +1200,7 @@ void AudioAnalytics::DeviceConnection::expire() { ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } return; } Loading @@ -1217,7 +1217,7 @@ void AudioAnalytics::DeviceConnection::expire() { << " deviceName:" << mA2dpDeviceName; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1227,7 +1227,7 @@ void AudioAnalytics::DeviceConnection::expire() { ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } } Loading Loading @@ -1355,10 +1355,10 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( << "(" << sharingModeRequestedStr << ")"; if (mAudioAnalytics.mDeliverStatistics) { android::util::BytesField bf_serialized( const stats::media_metrics::BytesField bf_serialized( serializedDeviceTypes.c_str(), serializedDeviceTypes.size()); const auto result = sendToStatsd( CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) , path , direction , framesPerBurst Loading @@ -1381,7 +1381,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( std::stringstream ss; ss << "result:" << result; const auto fieldsStr = printFields(AAudioStreamFields, CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) , path , direction , framesPerBurst Loading @@ -1404,7 +1404,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( ss << " " << fieldsStr; std::string str = ss.str(); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED, str); mAudioAnalytics.mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED, str); } } Loading Loading @@ -1544,12 +1544,12 @@ std::pair<std::string, int32_t> AudioAnalytics::Health::dump( // Classifies the setting event for statsd (use generated statsd enums.proto constants). static int32_t classifySettingEvent(bool isSetAlready, bool withinBoot) { if (isSetAlready) { return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_NORMAL; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_NORMAL; } if (withinBoot) { return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_BOOT; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_BOOT; } return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_FIRST; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_FIRST; } void AudioAnalytics::Spatializer::onEvent( Loading Loading @@ -1598,7 +1598,7 @@ void AudioAnalytics::Spatializer::onEvent( types::channelMaskVectorFromString(channelMasks); const auto [ result, str ] = sendToStatsd(SpatializerCapabilitiesFields, CONDITION(android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED) , headTrackingModesVector , levelsVector , modesVector Loading @@ -1606,7 +1606,7 @@ void AudioAnalytics::Spatializer::onEvent( ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str); stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str); std::lock_guard lg(mLock); if (mFirstCreateTimeNs == 0) { Loading Loading @@ -1655,13 +1655,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.enabled = enabled; const bool enabledStatsd = enabled == "true"; const auto [ result, str ] = sendToStatsd(SpatializerDeviceEnabledFields, CONDITION(android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED) , deviceTypeStatsd , settingEventStatsd , enabledStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str); } } if (!hasHeadTracker.empty()) { Loading @@ -1671,13 +1671,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.hasHeadTracker = hasHeadTracker; const bool supportedStatsd = hasHeadTracker == "true"; const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceSupportedFields, CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED) , deviceTypeStatsd , settingEventStatsd , supportedStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str); } } if (!headTrackerEnabled.empty()) { Loading @@ -1687,13 +1687,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.headTrackerEnabled = headTrackerEnabled; const bool enabledStatsd = headTrackerEnabled == "true"; const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceEnabledFields, CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED) , deviceTypeStatsd , settingEventStatsd , enabledStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str); } } mSimpleLog.log("%s deviceKey: %s item: %s", Loading services/mediametrics/AudioPowerUsage.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ #include <string> #include <audio_utils/clock.h> #include <cutils/properties.h> #include <statslog.h> #include <stats_media_metrics.h> #include <sys/timerfd.h> #include <system/audio.h> Loading Loading @@ -164,7 +164,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& const int32_t duration_secs = (int32_t)(duration_ns / NANOS_PER_SECOND); const int32_t min_volume_duration_secs = (int32_t)(min_volume_duration_ns / NANOS_PER_SECOND); const int32_t max_volume_duration_secs = (int32_t)(max_volume_duration_ns / NANOS_PER_SECOND); const int result = android::util::stats_write(android::util::AUDIO_POWER_USAGE_DATA_REPORTED, const int result = stats::media_metrics::stats_write(stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED, audio_device, duration_secs, (float)volume, Loading @@ -177,7 +177,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& std::stringstream log; log << "result:" << result << " {" << " mediametrics_audio_power_usage_data_reported:" << android::util::AUDIO_POWER_USAGE_DATA_REPORTED << stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED << " audio_device:" << audio_device << " duration_secs:" << duration_secs << " average_volume:" << (float)volume Loading @@ -187,7 +187,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& << " max_volume_duration_secs:" << max_volume_duration_secs << " max_volume:" << (float)max_volume << " }"; mStatsdLog->log(android::util::AUDIO_POWER_USAGE_DATA_REPORTED, log.str()); mStatsdLog->log(stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED, log.str()); } void AudioPowerUsage::updateMinMaxVolumeAndDuration( Loading services/mediametrics/AudioTypes.cpp +46 −46 File changed.Preview size limit exceeded, changes collapsed. Show changes services/mediametrics/MediaMetricsService.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ #include <mediautils/MemoryLeakTrackUtil.h> #include <memunreachable/memunreachable.h> #include <private/android_filesystem_config.h> // UID #include <statslog.h> #include <stats_media_metrics.h> #include <set> Loading Loading @@ -548,7 +548,7 @@ void MediaMetricsService::registerStatsdCallbacksIfNeeded() if (mStatsdRegistered.test_and_set()) { return; } auto tag = android::util::MEDIA_DRM_ACTIVITY_INFO; auto tag = stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO; auto cb = MediaMetricsService::pullAtomCallback; AStatsManager_setPullAtomCallback(tag, /* metadata */ nullptr, cb, this); } Loading @@ -566,7 +566,7 @@ bool MediaMetricsService::isPullable(const std::string &key) std::string MediaMetricsService::atomTagToKey(int32_t atomTag) { switch (atomTag) { case android::util::MEDIA_DRM_ACTIVITY_INFO: case stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO: return "mediadrm"; } return {}; Loading Loading
services/mediametrics/Android.bp +32 −1 Original line number Diff line number Diff line Loading @@ -169,7 +169,7 @@ cc_library { "libmemunreachable", "libprotobuf-cpp-lite", "libstagefright_foundation", "libstatslog", "libstats_media_metrics", "libstatspull", "libstatssocket", "libutils", Loading @@ -177,6 +177,7 @@ cc_library { ], export_shared_lib_headers: [ "libstats_media_metrics", "libstatspull", "libstatssocket", ], Loading @@ -200,3 +201,33 @@ cc_library { "libaudioutils_headers", ], } cc_library { name: "libstats_media_metrics", generated_sources: ["stats_media_metrics.cpp"], generated_headers: ["stats_media_metrics.h"], export_generated_headers: ["stats_media_metrics.h"], shared_libs: [ "libcutils", "libstatspull", "libstatssocket", ], } genrule { name: "stats_media_metrics.h", tools: ["stats-log-api-gen"], cmd: "$(location stats-log-api-gen) --header $(genDir)/stats_media_metrics.h --module media_metrics --namespace android,stats,media_metrics", out: [ "stats_media_metrics.h", ], } genrule { name: "stats_media_metrics.cpp", tools: ["stats-log-api-gen"], cmd: "$(location stats-log-api-gen) --cpp $(genDir)/stats_media_metrics.cpp --module media_metrics --namespace android,stats,media_metrics --importHeader stats_media_metrics.h", out: [ "stats_media_metrics.cpp", ], }
services/mediametrics/AudioAnalytics.cpp +36 −36 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ #include <aaudio/AAudio.h> // error codes #include <audio_utils/clock.h> // clock conversions #include <cutils/properties.h> #include <statslog.h> // statsd #include <stats_media_metrics.h> // statsd #include <system/audio.h> #include "AudioTypes.h" // string to int conversions Loading Loading @@ -292,7 +292,7 @@ int sendToStatsd(Types ... args) int result = 0; #ifdef STATSD_ENABLE result = android::util::stats_write(args...); result = stats::media_metrics::stats_write(args...); #endif return result; } Loading @@ -308,7 +308,7 @@ std::pair<int, std::string> sendToStatsd(const char * const (& fields)[N], Types std::stringstream ss; #ifdef STATSD_ENABLE result = android::util::stats_write(args...); result = stats::media_metrics::stats_write(args...); ss << "result:" << result; #endif ss << " { "; Loading Loading @@ -607,7 +607,7 @@ bool AudioAnalytics::reportAudioRecordStatus( const int atom_status = types::lookup<types::STATUS, int32_t>(statusString); // currently we only send create status events. const int32_t event = android::util:: const int32_t event = stats::media_metrics:: MEDIAMETRICS_AUDIO_RECORD_STATUS_REPORTED__EVENT__AUDIO_RECORD_EVENT_CREATE; // The following fields should all be present in a create event. Loading Loading @@ -647,7 +647,7 @@ bool AudioAnalytics::reportAudioRecordStatus( __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_RECORD, AMEDIAMETRICS_PROP_SAMPLERATE); const auto [ result, str ] = sendToStatsd(AudioRecordStatusFields, CONDITION(android::util::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED) , atom_status , message.c_str() , subCode Loading @@ -661,7 +661,7 @@ bool AudioAnalytics::reportAudioRecordStatus( , sampleRate ); ALOGV("%s: statsd %s", __func__, str.c_str()); mStatsdLog->log(android::util::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED, str); mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED, str); return true; } return false; Loading @@ -679,7 +679,7 @@ bool AudioAnalytics::reportAudioTrackStatus( const int atom_status = types::lookup<types::STATUS, int32_t>(statusString); // currently we only send create status events. const int32_t event = android::util:: const int32_t event = stats::media_metrics:: MEDIAMETRICS_AUDIO_TRACK_STATUS_REPORTED__EVENT__AUDIO_TRACK_EVENT_CREATE; // The following fields should all be present in a create event. Loading Loading @@ -734,7 +734,7 @@ bool AudioAnalytics::reportAudioTrackStatus( __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_TRACK, AMEDIAMETRICS_PROP_PLAYBACK_PITCH); const auto [ result, str ] = sendToStatsd(AudioTrackStatusFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED) , atom_status , message.c_str() , subCode Loading @@ -751,7 +751,7 @@ bool AudioAnalytics::reportAudioTrackStatus( , (float)pitch ); ALOGV("%s: statsd %s", __func__, str.c_str()); mStatsdLog->log(android::util::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED, str); mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED, str); return true; } return false; Loading Loading @@ -860,7 +860,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( if (clientCalled // only log if client app called AudioRecord. && mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioRecordDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(inputDeviceStatsd) , inputDeviceNames.c_str() , deviceTimeNs Loading @@ -878,7 +878,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str); } } break; case THREAD: { Loading Loading @@ -930,7 +930,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( << ")"; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioThreadDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(deviceStatsd) , deviceNames.c_str() , deviceTimeNs Loading @@ -944,7 +944,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str); } } break; case TRACK: { Loading Loading @@ -1050,7 +1050,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( if (clientCalled // only log if client app called AudioTracks && mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioTrackDeviceUsageFields, CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED) , ENUM_EXTRACT(outputDeviceStatsd) , outputDeviceNames.c_str() , deviceTimeNs Loading @@ -1074,7 +1074,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str); } } break; } Loading Loading @@ -1136,7 +1136,7 @@ void AudioAnalytics::DeviceConnection::createPatch( const long_enum_type_t inputDeviceBits{}; const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1146,7 +1146,7 @@ void AudioAnalytics::DeviceConnection::createPatch( ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } } } Loading Loading @@ -1190,7 +1190,7 @@ void AudioAnalytics::DeviceConnection::expire() { << " deviceName:" << mA2dpDeviceName; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1200,7 +1200,7 @@ void AudioAnalytics::DeviceConnection::expire() { ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } return; } Loading @@ -1217,7 +1217,7 @@ void AudioAnalytics::DeviceConnection::expire() { << " deviceName:" << mA2dpDeviceName; if (mAudioAnalytics.mDeliverStatistics) { const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields, CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED) , ENUM_EXTRACT(inputDeviceBits) , ENUM_EXTRACT(outputDeviceBits) , mA2dpDeviceName.c_str() Loading @@ -1227,7 +1227,7 @@ void AudioAnalytics::DeviceConnection::expire() { ); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str); } } Loading Loading @@ -1355,10 +1355,10 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( << "(" << sharingModeRequestedStr << ")"; if (mAudioAnalytics.mDeliverStatistics) { android::util::BytesField bf_serialized( const stats::media_metrics::BytesField bf_serialized( serializedDeviceTypes.c_str(), serializedDeviceTypes.size()); const auto result = sendToStatsd( CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) , path , direction , framesPerBurst Loading @@ -1381,7 +1381,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( std::stringstream ss; ss << "result:" << result; const auto fieldsStr = printFields(AAudioStreamFields, CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED) , path , direction , framesPerBurst Loading @@ -1404,7 +1404,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream( ss << " " << fieldsStr; std::string str = ss.str(); ALOGV("%s: statsd %s", __func__, str.c_str()); mAudioAnalytics.mStatsdLog->log(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED, str); mAudioAnalytics.mStatsdLog->log(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED, str); } } Loading Loading @@ -1544,12 +1544,12 @@ std::pair<std::string, int32_t> AudioAnalytics::Health::dump( // Classifies the setting event for statsd (use generated statsd enums.proto constants). static int32_t classifySettingEvent(bool isSetAlready, bool withinBoot) { if (isSetAlready) { return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_NORMAL; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_NORMAL; } if (withinBoot) { return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_BOOT; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_BOOT; } return util::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_FIRST; return stats::media_metrics::MEDIAMETRICS_SPATIALIZER_DEVICE_ENABLED_REPORTED__EVENT__SPATIALIZER_SETTING_EVENT_FIRST; } void AudioAnalytics::Spatializer::onEvent( Loading Loading @@ -1598,7 +1598,7 @@ void AudioAnalytics::Spatializer::onEvent( types::channelMaskVectorFromString(channelMasks); const auto [ result, str ] = sendToStatsd(SpatializerCapabilitiesFields, CONDITION(android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED) , headTrackingModesVector , levelsVector , modesVector Loading @@ -1606,7 +1606,7 @@ void AudioAnalytics::Spatializer::onEvent( ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str); stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str); std::lock_guard lg(mLock); if (mFirstCreateTimeNs == 0) { Loading Loading @@ -1655,13 +1655,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.enabled = enabled; const bool enabledStatsd = enabled == "true"; const auto [ result, str ] = sendToStatsd(SpatializerDeviceEnabledFields, CONDITION(android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED) , deviceTypeStatsd , settingEventStatsd , enabledStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str); } } if (!hasHeadTracker.empty()) { Loading @@ -1671,13 +1671,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.hasHeadTracker = hasHeadTracker; const bool supportedStatsd = hasHeadTracker == "true"; const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceSupportedFields, CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED) , deviceTypeStatsd , settingEventStatsd , supportedStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str); } } if (!headTrackerEnabled.empty()) { Loading @@ -1687,13 +1687,13 @@ void AudioAnalytics::Spatializer::onEvent( deviceState.headTrackerEnabled = headTrackerEnabled; const bool enabledStatsd = headTrackerEnabled == "true"; const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceEnabledFields, CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED) CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED) , deviceTypeStatsd , settingEventStatsd , enabledStatsd ); mAudioAnalytics.mStatsdLog->log( android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str); stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str); } } mSimpleLog.log("%s deviceKey: %s item: %s", Loading
services/mediametrics/AudioPowerUsage.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ #include <string> #include <audio_utils/clock.h> #include <cutils/properties.h> #include <statslog.h> #include <stats_media_metrics.h> #include <sys/timerfd.h> #include <system/audio.h> Loading Loading @@ -164,7 +164,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& const int32_t duration_secs = (int32_t)(duration_ns / NANOS_PER_SECOND); const int32_t min_volume_duration_secs = (int32_t)(min_volume_duration_ns / NANOS_PER_SECOND); const int32_t max_volume_duration_secs = (int32_t)(max_volume_duration_ns / NANOS_PER_SECOND); const int result = android::util::stats_write(android::util::AUDIO_POWER_USAGE_DATA_REPORTED, const int result = stats::media_metrics::stats_write(stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED, audio_device, duration_secs, (float)volume, Loading @@ -177,7 +177,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& std::stringstream log; log << "result:" << result << " {" << " mediametrics_audio_power_usage_data_reported:" << android::util::AUDIO_POWER_USAGE_DATA_REPORTED << stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED << " audio_device:" << audio_device << " duration_secs:" << duration_secs << " average_volume:" << (float)volume Loading @@ -187,7 +187,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>& << " max_volume_duration_secs:" << max_volume_duration_secs << " max_volume:" << (float)max_volume << " }"; mStatsdLog->log(android::util::AUDIO_POWER_USAGE_DATA_REPORTED, log.str()); mStatsdLog->log(stats::media_metrics::AUDIO_POWER_USAGE_DATA_REPORTED, log.str()); } void AudioPowerUsage::updateMinMaxVolumeAndDuration( Loading
services/mediametrics/AudioTypes.cpp +46 −46 File changed.Preview size limit exceeded, changes collapsed. Show changes
services/mediametrics/MediaMetricsService.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ #include <mediautils/MemoryLeakTrackUtil.h> #include <memunreachable/memunreachable.h> #include <private/android_filesystem_config.h> // UID #include <statslog.h> #include <stats_media_metrics.h> #include <set> Loading Loading @@ -548,7 +548,7 @@ void MediaMetricsService::registerStatsdCallbacksIfNeeded() if (mStatsdRegistered.test_and_set()) { return; } auto tag = android::util::MEDIA_DRM_ACTIVITY_INFO; auto tag = stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO; auto cb = MediaMetricsService::pullAtomCallback; AStatsManager_setPullAtomCallback(tag, /* metadata */ nullptr, cb, this); } Loading @@ -566,7 +566,7 @@ bool MediaMetricsService::isPullable(const std::string &key) std::string MediaMetricsService::atomTagToKey(int32_t atomTag) { switch (atomTag) { case android::util::MEDIA_DRM_ACTIVITY_INFO: case stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO: return "mediadrm"; } return {}; Loading