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

Commit f5349568 authored by Robert Shih's avatar Robert Shih Committed by Android (Google) Code Review
Browse files

Merge "Integrate Legacy DRM metrics with statsd"

parents a0536515 addf5eeb
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -60,6 +60,7 @@ struct statsd_hooks statsd_handlers[] =
    { "audiotrack", statsd_audiotrack },
    { "codec", statsd_codec},
    { "drm.vendor.Google.WidevineCDM", statsd_widevineCDM },
    { "drmmanager", statsd_drmmanager },
    { "extractor", statsd_extractor },
    { "mediadrm", statsd_mediadrm },
    { "nuplayer", statsd_nuplayer },
+1 −0
Original line number Diff line number Diff line
@@ -30,5 +30,6 @@ extern bool statsd_recorder(MediaAnalyticsItem *);

extern bool statsd_mediadrm(MediaAnalyticsItem *);
extern bool statsd_widevineCDM(MediaAnalyticsItem *);
extern bool statsd_drmmanager(MediaAnalyticsItem *);

} // namespace android
+34 −0
Original line number Diff line number Diff line
@@ -104,4 +104,38 @@ bool statsd_widevineCDM(MediaAnalyticsItem *item)
    return true;
}

// drmmanager
bool statsd_drmmanager(MediaAnalyticsItem *item)
{
    if (item == NULL) return false;

    nsecs_t timestamp = item->getTimestamp();
    std::string pkgName = item->getPkgName();
    int64_t pkgVersionCode = item->getPkgVersionCode();
    int64_t mediaApexVersion = 0;

    char *plugin_id = NULL;
    (void) item->getCString("plugin_id", &plugin_id);
    char *description = NULL;
    (void) item->getCString("description", &description);
    int32_t method_id = -1;
    (void) item->getInt32("method_id", &method_id);
    char *mime_types = NULL;
    (void) item->getCString("mime_types", &mime_types);

    if (enabled_statsd) {
        android::util::stats_write(android::util::MEDIAMETRICS_DRMMANAGER_REPORTED,
                                   timestamp, pkgName.c_str(), pkgVersionCode,
                                   mediaApexVersion,
                                   plugin_id, description,
                                   method_id, mime_types);
    } else {
        ALOGV("NOT sending: drmmanager data");
    }

    free(plugin_id);
    free(description);
    free(mime_types);
    return true;
}
} // namespace android