Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b11ec9ec authored by Vova Sharaienko's avatar Vova Sharaienko Committed by Android (Google) Code Review
Browse files

Merge "media.metrics removed libstatslog dependency"

parents f8b7b784 f58455ac
Loading
Loading
Loading
Loading
+32 −1
Original line number Original line Diff line number Diff line
@@ -169,7 +169,7 @@ cc_library {
        "libmemunreachable",
        "libmemunreachable",
        "libprotobuf-cpp-lite",
        "libprotobuf-cpp-lite",
        "libstagefright_foundation",
        "libstagefright_foundation",
        "libstatslog",
        "libstats_media_metrics",
        "libstatspull",
        "libstatspull",
        "libstatssocket",
        "libstatssocket",
        "libutils",
        "libutils",
@@ -177,6 +177,7 @@ cc_library {
    ],
    ],


    export_shared_lib_headers: [
    export_shared_lib_headers: [
        "libstats_media_metrics",
        "libstatspull",
        "libstatspull",
        "libstatssocket",
        "libstatssocket",
    ],
    ],
@@ -200,3 +201,33 @@ cc_library {
        "libaudioutils_headers",
        "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",
    ],
}
+36 −36
Original line number Original line Diff line number Diff line
@@ -24,7 +24,7 @@
#include <aaudio/AAudio.h>        // error codes
#include <aaudio/AAudio.h>        // error codes
#include <audio_utils/clock.h>    // clock conversions
#include <audio_utils/clock.h>    // clock conversions
#include <cutils/properties.h>
#include <cutils/properties.h>
#include <statslog.h>             // statsd
#include <stats_media_metrics.h>             // statsd
#include <system/audio.h>
#include <system/audio.h>


#include "AudioTypes.h"           // string to int conversions
#include "AudioTypes.h"           // string to int conversions
@@ -292,7 +292,7 @@ int sendToStatsd(Types ... args)
    int result = 0;
    int result = 0;


#ifdef STATSD_ENABLE
#ifdef STATSD_ENABLE
    result = android::util::stats_write(args...);
    result = stats::media_metrics::stats_write(args...);
#endif
#endif
    return result;
    return result;
}
}
@@ -308,7 +308,7 @@ std::pair<int, std::string> sendToStatsd(const char * const (& fields)[N], Types
    std::stringstream ss;
    std::stringstream ss;


#ifdef STATSD_ENABLE
#ifdef STATSD_ENABLE
    result = android::util::stats_write(args...);
    result = stats::media_metrics::stats_write(args...);
    ss << "result:" << result;
    ss << "result:" << result;
#endif
#endif
    ss << " { ";
    ss << " { ";
@@ -607,7 +607,7 @@ bool AudioAnalytics::reportAudioRecordStatus(
        const int atom_status = types::lookup<types::STATUS, int32_t>(statusString);
        const int atom_status = types::lookup<types::STATUS, int32_t>(statusString);


        // currently we only send create status events.
        // 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;
                MEDIAMETRICS_AUDIO_RECORD_STATUS_REPORTED__EVENT__AUDIO_RECORD_EVENT_CREATE;


        // The following fields should all be present in a create event.
        // The following fields should all be present in a create event.
@@ -647,7 +647,7 @@ bool AudioAnalytics::reportAudioRecordStatus(
                __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_RECORD, AMEDIAMETRICS_PROP_SAMPLERATE);
                __func__, AMEDIAMETRICS_KEY_PREFIX_AUDIO_RECORD, AMEDIAMETRICS_PROP_SAMPLERATE);


        const auto [ result, str ] = sendToStatsd(AudioRecordStatusFields,
        const auto [ result, str ] = sendToStatsd(AudioRecordStatusFields,
                CONDITION(android::util::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDSTATUS_REPORTED)
                , atom_status
                , atom_status
                , message.c_str()
                , message.c_str()
                , subCode
                , subCode
@@ -661,7 +661,7 @@ bool AudioAnalytics::reportAudioRecordStatus(
                , sampleRate
                , sampleRate
                );
                );
        ALOGV("%s: statsd %s", __func__, str.c_str());
        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 true;
    }
    }
    return false;
    return false;
@@ -679,7 +679,7 @@ bool AudioAnalytics::reportAudioTrackStatus(
        const int atom_status = types::lookup<types::STATUS, int32_t>(statusString);
        const int atom_status = types::lookup<types::STATUS, int32_t>(statusString);


        // currently we only send create status events.
        // 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;
                MEDIAMETRICS_AUDIO_TRACK_STATUS_REPORTED__EVENT__AUDIO_TRACK_EVENT_CREATE;


        // The following fields should all be present in a create event.
        // The following fields should all be present in a create event.
@@ -734,7 +734,7 @@ bool AudioAnalytics::reportAudioTrackStatus(
                __func__,
                __func__,
                AMEDIAMETRICS_KEY_PREFIX_AUDIO_TRACK, AMEDIAMETRICS_PROP_PLAYBACK_PITCH);
                AMEDIAMETRICS_KEY_PREFIX_AUDIO_TRACK, AMEDIAMETRICS_PROP_PLAYBACK_PITCH);
        const auto [ result, str ] = sendToStatsd(AudioTrackStatusFields,
        const auto [ result, str ] = sendToStatsd(AudioTrackStatusFields,
                CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKSTATUS_REPORTED)
                , atom_status
                , atom_status
                , message.c_str()
                , message.c_str()
                , subCode
                , subCode
@@ -751,7 +751,7 @@ bool AudioAnalytics::reportAudioTrackStatus(
                , (float)pitch
                , (float)pitch
                );
                );
        ALOGV("%s: statsd %s", __func__, str.c_str());
        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 true;
    }
    }
    return false;
    return false;
@@ -860,7 +860,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
        if (clientCalled  // only log if client app called AudioRecord.
        if (clientCalled  // only log if client app called AudioRecord.
                && mAudioAnalytics.mDeliverStatistics) {
                && mAudioAnalytics.mDeliverStatistics) {
            const auto [ result, str ] = sendToStatsd(AudioRecordDeviceUsageFields,
            const auto [ result, str ] = sendToStatsd(AudioRecordDeviceUsageFields,
                    CONDITION(android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED)
                    CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED)
                    , ENUM_EXTRACT(inputDeviceStatsd)
                    , ENUM_EXTRACT(inputDeviceStatsd)
                    , inputDeviceNames.c_str()
                    , inputDeviceNames.c_str()
                    , deviceTimeNs
                    , deviceTimeNs
@@ -878,7 +878,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
                    );
                    );
            ALOGV("%s: statsd %s", __func__, str.c_str());
            ALOGV("%s: statsd %s", __func__, str.c_str());
            mAudioAnalytics.mStatsdLog->log(
            mAudioAnalytics.mStatsdLog->log(
                    android::util::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str);
                    stats::media_metrics::MEDIAMETRICS_AUDIORECORDDEVICEUSAGE_REPORTED, str);
        }
        }
    } break;
    } break;
    case THREAD: {
    case THREAD: {
@@ -930,7 +930,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
              << ")";
              << ")";
        if (mAudioAnalytics.mDeliverStatistics) {
        if (mAudioAnalytics.mDeliverStatistics) {
            const auto [ result, str ] = sendToStatsd(AudioThreadDeviceUsageFields,
            const auto [ result, str ] = sendToStatsd(AudioThreadDeviceUsageFields,
                CONDITION(android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED)
                , ENUM_EXTRACT(deviceStatsd)
                , ENUM_EXTRACT(deviceStatsd)
                , deviceNames.c_str()
                , deviceNames.c_str()
                , deviceTimeNs
                , deviceTimeNs
@@ -944,7 +944,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
            );
            );
            ALOGV("%s: statsd %s", __func__, str.c_str());
            ALOGV("%s: statsd %s", __func__, str.c_str());
            mAudioAnalytics.mStatsdLog->log(
            mAudioAnalytics.mStatsdLog->log(
                    android::util::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str);
                    stats::media_metrics::MEDIAMETRICS_AUDIOTHREADDEVICEUSAGE_REPORTED, str);
        }
        }
    } break;
    } break;
    case TRACK: {
    case TRACK: {
@@ -1050,7 +1050,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
        if (clientCalled // only log if client app called AudioTracks
        if (clientCalled // only log if client app called AudioTracks
                && mAudioAnalytics.mDeliverStatistics) {
                && mAudioAnalytics.mDeliverStatistics) {
            const auto [ result, str ] = sendToStatsd(AudioTrackDeviceUsageFields,
            const auto [ result, str ] = sendToStatsd(AudioTrackDeviceUsageFields,
                    CONDITION(android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED)
                    CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED)
                    , ENUM_EXTRACT(outputDeviceStatsd)
                    , ENUM_EXTRACT(outputDeviceStatsd)
                    , outputDeviceNames.c_str()
                    , outputDeviceNames.c_str()
                    , deviceTimeNs
                    , deviceTimeNs
@@ -1074,7 +1074,7 @@ void AudioAnalytics::DeviceUse::endAudioIntervalGroup(
                    );
                    );
            ALOGV("%s: statsd %s", __func__, str.c_str());
            ALOGV("%s: statsd %s", __func__, str.c_str());
            mAudioAnalytics.mStatsdLog->log(
            mAudioAnalytics.mStatsdLog->log(
                    android::util::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str);
                    stats::media_metrics::MEDIAMETRICS_AUDIOTRACKDEVICEUSAGE_REPORTED, str);
        }
        }
        } break;
        } break;
    }
    }
@@ -1136,7 +1136,7 @@ void AudioAnalytics::DeviceConnection::createPatch(
            const long_enum_type_t inputDeviceBits{};
            const long_enum_type_t inputDeviceBits{};


            const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
            const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
                    CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                    CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                    , ENUM_EXTRACT(inputDeviceBits)
                    , ENUM_EXTRACT(inputDeviceBits)
                    , ENUM_EXTRACT(outputDeviceBits)
                    , ENUM_EXTRACT(outputDeviceBits)
                    , mA2dpDeviceName.c_str()
                    , mA2dpDeviceName.c_str()
@@ -1146,7 +1146,7 @@ void AudioAnalytics::DeviceConnection::createPatch(
                    );
                    );
            ALOGV("%s: statsd %s", __func__, str.c_str());
            ALOGV("%s: statsd %s", __func__, str.c_str());
            mAudioAnalytics.mStatsdLog->log(
            mAudioAnalytics.mStatsdLog->log(
                    android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
                    stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
        }
        }
    }
    }
}
}
@@ -1190,7 +1190,7 @@ void AudioAnalytics::DeviceConnection::expire() {
                << " deviceName:" << mA2dpDeviceName;
                << " deviceName:" << mA2dpDeviceName;
        if (mAudioAnalytics.mDeliverStatistics) {
        if (mAudioAnalytics.mDeliverStatistics) {
            const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
            const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
                    CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                    CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                    , ENUM_EXTRACT(inputDeviceBits)
                    , ENUM_EXTRACT(inputDeviceBits)
                    , ENUM_EXTRACT(outputDeviceBits)
                    , ENUM_EXTRACT(outputDeviceBits)
                    , mA2dpDeviceName.c_str()
                    , mA2dpDeviceName.c_str()
@@ -1200,7 +1200,7 @@ void AudioAnalytics::DeviceConnection::expire() {
                    );
                    );
            ALOGV("%s: statsd %s", __func__, str.c_str());
            ALOGV("%s: statsd %s", __func__, str.c_str());
            mAudioAnalytics.mStatsdLog->log(
            mAudioAnalytics.mStatsdLog->log(
                    android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
                    stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
        }
        }
        return;
        return;
    }
    }
@@ -1217,7 +1217,7 @@ void AudioAnalytics::DeviceConnection::expire() {
            << " deviceName:" << mA2dpDeviceName;
            << " deviceName:" << mA2dpDeviceName;
    if (mAudioAnalytics.mDeliverStatistics) {
    if (mAudioAnalytics.mDeliverStatistics) {
        const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
        const auto [ result, str ] = sendToStatsd(AudioDeviceConnectionFields,
                CONDITION(android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED)
                , ENUM_EXTRACT(inputDeviceBits)
                , ENUM_EXTRACT(inputDeviceBits)
                , ENUM_EXTRACT(outputDeviceBits)
                , ENUM_EXTRACT(outputDeviceBits)
                , mA2dpDeviceName.c_str()
                , mA2dpDeviceName.c_str()
@@ -1227,7 +1227,7 @@ void AudioAnalytics::DeviceConnection::expire() {
                );
                );
        ALOGV("%s: statsd %s", __func__, str.c_str());
        ALOGV("%s: statsd %s", __func__, str.c_str());
        mAudioAnalytics.mStatsdLog->log(
        mAudioAnalytics.mStatsdLog->log(
                android::util::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
                stats::media_metrics::MEDIAMETRICS_AUDIODEVICECONNECTION_REPORTED, str);
    }
    }
}
}


@@ -1355,10 +1355,10 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream(
                    << "(" << sharingModeRequestedStr << ")";
                    << "(" << sharingModeRequestedStr << ")";


    if (mAudioAnalytics.mDeliverStatistics) {
    if (mAudioAnalytics.mDeliverStatistics) {
        android::util::BytesField bf_serialized(
        const stats::media_metrics::BytesField bf_serialized(
            serializedDeviceTypes.c_str(), serializedDeviceTypes.size());
            serializedDeviceTypes.c_str(), serializedDeviceTypes.size());
        const auto result = sendToStatsd(
        const auto result = sendToStatsd(
                CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED)
                , path
                , path
                , direction
                , direction
                , framesPerBurst
                , framesPerBurst
@@ -1381,7 +1381,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream(
        std::stringstream ss;
        std::stringstream ss;
        ss << "result:" << result;
        ss << "result:" << result;
        const auto fieldsStr = printFields(AAudioStreamFields,
        const auto fieldsStr = printFields(AAudioStreamFields,
                CONDITION(android::util::MEDIAMETRICS_AAUDIOSTREAM_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_AAUDIOSTREAM_REPORTED)
                , path
                , path
                , direction
                , direction
                , framesPerBurst
                , framesPerBurst
@@ -1404,7 +1404,7 @@ void AudioAnalytics::AAudioStreamInfo::endAAudioStream(
        ss << " " << fieldsStr;
        ss << " " << fieldsStr;
        std::string str = ss.str();
        std::string str = ss.str();
        ALOGV("%s: statsd %s", __func__, str.c_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);
    }
    }
}
}


@@ -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).
// Classifies the setting event for statsd (use generated statsd enums.proto constants).
static int32_t classifySettingEvent(bool isSetAlready, bool withinBoot) {
static int32_t classifySettingEvent(bool isSetAlready, bool withinBoot) {
    if (isSetAlready) {
    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) {
    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(
void AudioAnalytics::Spatializer::onEvent(
@@ -1598,7 +1598,7 @@ void AudioAnalytics::Spatializer::onEvent(
                types::channelMaskVectorFromString(channelMasks);
                types::channelMaskVectorFromString(channelMasks);


        const auto [ result, str ] = sendToStatsd(SpatializerCapabilitiesFields,
        const auto [ result, str ] = sendToStatsd(SpatializerCapabilitiesFields,
                CONDITION(android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED)
                CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED)
                , headTrackingModesVector
                , headTrackingModesVector
                , levelsVector
                , levelsVector
                , modesVector
                , modesVector
@@ -1606,7 +1606,7 @@ void AudioAnalytics::Spatializer::onEvent(
                );
                );


        mAudioAnalytics.mStatsdLog->log(
        mAudioAnalytics.mStatsdLog->log(
                android::util::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str);
                stats::media_metrics::MEDIAMETRICS_SPATIALIZERCAPABILITIES_REPORTED, str);


        std::lock_guard lg(mLock);
        std::lock_guard lg(mLock);
        if (mFirstCreateTimeNs == 0) {
        if (mFirstCreateTimeNs == 0) {
@@ -1655,13 +1655,13 @@ void AudioAnalytics::Spatializer::onEvent(
                deviceState.enabled = enabled;
                deviceState.enabled = enabled;
                const bool enabledStatsd = enabled == "true";
                const bool enabledStatsd = enabled == "true";
                const auto [ result, str ] = sendToStatsd(SpatializerDeviceEnabledFields,
                const auto [ result, str ] = sendToStatsd(SpatializerDeviceEnabledFields,
                        CONDITION(android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED)
                        CONDITION(stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED)
                        , deviceTypeStatsd
                        , deviceTypeStatsd
                        , settingEventStatsd
                        , settingEventStatsd
                        , enabledStatsd
                        , enabledStatsd
                        );
                        );
                mAudioAnalytics.mStatsdLog->log(
                mAudioAnalytics.mStatsdLog->log(
                        android::util::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str);
                        stats::media_metrics::MEDIAMETRICS_SPATIALIZERDEVICEENABLED_REPORTED, str);
            }
            }
        }
        }
        if (!hasHeadTracker.empty()) {
        if (!hasHeadTracker.empty()) {
@@ -1671,13 +1671,13 @@ void AudioAnalytics::Spatializer::onEvent(
                deviceState.hasHeadTracker = hasHeadTracker;
                deviceState.hasHeadTracker = hasHeadTracker;
                const bool supportedStatsd = hasHeadTracker == "true";
                const bool supportedStatsd = hasHeadTracker == "true";
                const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceSupportedFields,
                const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceSupportedFields,
                        CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED)
                        CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED)
                        , deviceTypeStatsd
                        , deviceTypeStatsd
                        , settingEventStatsd
                        , settingEventStatsd
                        , supportedStatsd
                        , supportedStatsd
                        );
                        );
                mAudioAnalytics.mStatsdLog->log(
                mAudioAnalytics.mStatsdLog->log(
                        android::util::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str);
                        stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICESUPPORTED_REPORTED, str);
            }
            }
        }
        }
        if (!headTrackerEnabled.empty()) {
        if (!headTrackerEnabled.empty()) {
@@ -1687,13 +1687,13 @@ void AudioAnalytics::Spatializer::onEvent(
                deviceState.headTrackerEnabled = headTrackerEnabled;
                deviceState.headTrackerEnabled = headTrackerEnabled;
                const bool enabledStatsd = headTrackerEnabled == "true";
                const bool enabledStatsd = headTrackerEnabled == "true";
                const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceEnabledFields,
                const auto [ result, str ] = sendToStatsd(HeadTrackerDeviceEnabledFields,
                        CONDITION(android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED)
                        CONDITION(stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED)
                        , deviceTypeStatsd
                        , deviceTypeStatsd
                        , settingEventStatsd
                        , settingEventStatsd
                        , enabledStatsd
                        , enabledStatsd
                        );
                        );
                mAudioAnalytics.mStatsdLog->log(
                mAudioAnalytics.mStatsdLog->log(
                        android::util::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str);
                        stats::media_metrics::MEDIAMETRICS_HEADTRACKERDEVICEENABLED_REPORTED, str);
            }
            }
        }
        }
        mSimpleLog.log("%s deviceKey: %s item: %s",
        mSimpleLog.log("%s deviceKey: %s item: %s",
+4 −4
Original line number Original line Diff line number Diff line
@@ -26,7 +26,7 @@
#include <string>
#include <string>
#include <audio_utils/clock.h>
#include <audio_utils/clock.h>
#include <cutils/properties.h>
#include <cutils/properties.h>
#include <statslog.h>
#include <stats_media_metrics.h>
#include <sys/timerfd.h>
#include <sys/timerfd.h>
#include <system/audio.h>
#include <system/audio.h>


@@ -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 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 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 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,
                                         audio_device,
                                         duration_secs,
                                         duration_secs,
                                         (float)volume,
                                         (float)volume,
@@ -177,7 +177,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>&
    std::stringstream log;
    std::stringstream log;
    log << "result:" << result << " {"
    log << "result:" << result << " {"
            << " mediametrics_audio_power_usage_data_reported:"
            << " 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
            << " audio_device:" << audio_device
            << " duration_secs:" << duration_secs
            << " duration_secs:" << duration_secs
            << " average_volume:" << (float)volume
            << " average_volume:" << (float)volume
@@ -187,7 +187,7 @@ void AudioPowerUsage::sendItem(const std::shared_ptr<const mediametrics::Item>&
            << " max_volume_duration_secs:" << max_volume_duration_secs
            << " max_volume_duration_secs:" << max_volume_duration_secs
            << " max_volume:" << (float)max_volume
            << " 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(
void AudioPowerUsage::updateMinMaxVolumeAndDuration(
+46 −46

File changed.

Preview size limit exceeded, changes collapsed.

+3 −3
Original line number Original line Diff line number Diff line
@@ -33,7 +33,7 @@
#include <mediautils/MemoryLeakTrackUtil.h>
#include <mediautils/MemoryLeakTrackUtil.h>
#include <memunreachable/memunreachable.h>
#include <memunreachable/memunreachable.h>
#include <private/android_filesystem_config.h> // UID
#include <private/android_filesystem_config.h> // UID
#include <statslog.h>
#include <stats_media_metrics.h>


#include <set>
#include <set>


@@ -546,7 +546,7 @@ void MediaMetricsService::registerStatsdCallbacksIfNeeded()
    if (mStatsdRegistered.test_and_set()) {
    if (mStatsdRegistered.test_and_set()) {
        return;
        return;
    }
    }
    auto tag = android::util::MEDIA_DRM_ACTIVITY_INFO;
    auto tag = stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO;
    auto cb = MediaMetricsService::pullAtomCallback;
    auto cb = MediaMetricsService::pullAtomCallback;
    AStatsManager_setPullAtomCallback(tag, /* metadata */ nullptr, cb, this);
    AStatsManager_setPullAtomCallback(tag, /* metadata */ nullptr, cb, this);
}
}
@@ -564,7 +564,7 @@ bool MediaMetricsService::isPullable(const std::string &key)
std::string MediaMetricsService::atomTagToKey(int32_t atomTag)
std::string MediaMetricsService::atomTagToKey(int32_t atomTag)
{
{
    switch (atomTag) {
    switch (atomTag) {
    case android::util::MEDIA_DRM_ACTIVITY_INFO:
    case stats::media_metrics::MEDIA_DRM_ACTIVITY_INFO:
        return "mediadrm";
        return "mediadrm";
    }
    }
    return {};
    return {};
Loading