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

Commit bed1e559 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

release-request-60f1fc0d-1c6d-400a-8b4e-444f1452f036-for-git_oc-mr1-release-41...

release-request-60f1fc0d-1c6d-400a-8b4e-444f1452f036-for-git_oc-mr1-release-4157261 snap-temp-L11100000079944679

Change-Id: I9c4fc97f215802f25567a79d46f145e00898f530
parents e6aae839 378a36d3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@ enum MetadataType : int32_t {

enum MetadataKey : int32_t {
    INVALID      = -1,
    /** RDS PI                 - string  */
    /** RDS PI                 - int32_t  */
    RDS_PI       = 0,
    /** RDS PS                 - string */
    RDS_PS       = 1,
+6 −25
Original line number Diff line number Diff line
@@ -107,24 +107,17 @@ void Tuner::tuneInternalLocked() {
        virtualRadio = &mVirtualFm;
    }

    auto& info11 = mCurrentProgramInfo;
    auto& info10 = info11.base;

    VirtualProgram virtualProgram;
    if (virtualRadio != nullptr && virtualRadio->getProgram(mCurrentProgram, virtualProgram)) {
        // TODO(b/36864090): convert virtualProgram to ProgramInfo instead
        info10.channel = mCurrentProgram;
        info10.tuned = true;
        info10.stereo = true;
        info10.signalStrength = 100;
        mCurrentProgramInfo = static_cast<ProgramInfo>(virtualProgram);
    } else {
        info11 = makeDummyProgramInfo(mCurrentProgram);
        mCurrentProgramInfo = makeDummyProgramInfo(mCurrentProgram);
    }
    mIsTuneCompleted = true;

    mCallback->tuneComplete(Result::OK, info10);
    mCallback->tuneComplete(Result::OK, mCurrentProgramInfo.base);
    if (mCallback1_1 != nullptr) {
        mCallback1_1->tuneComplete_1_1(Result::OK, info11);
        mCallback1_1->tuneComplete_1_1(Result::OK, mCurrentProgramInfo);
    }
}

@@ -274,20 +267,8 @@ Return<void> Tuner::getProgramList(const hidl_string& filter __unused, getProgra
        return Void();
    }

    hidl_vec<ProgramInfo> list;
    auto vList = virtualRadio.getProgramList();
    list.resize(vList.size());
    for (size_t i = 0; i < vList.size(); i++) {
        auto& src = vList[i];
        auto& dst11 = list[i];
        auto& dst10 = dst11.base;

        // TODO(b/36864090): convert virtualProgram to ProgramInfo instead
        dst10.channel = src.channel;
        dst10.tuned = true;
    }

    _hidl_cb(ProgramListResult::OK, list);
    auto list = virtualRadio.getProgramList();
    _hidl_cb(ProgramListResult::OK, vector<ProgramInfo>(list.begin(), list.end()));
    return Void();
}

+22 −0
Original line number Diff line number Diff line
@@ -21,6 +21,28 @@ namespace broadcastradio {
namespace V1_1 {
namespace implementation {

using V1_0::MetaData;
using V1_0::MetadataKey;
using V1_0::MetadataType;

VirtualProgram::operator ProgramInfo() const {
    ProgramInfo info11 = {};
    auto& info10 = info11.base;

    info10.channel = channel;
    info10.tuned = true;
    info10.stereo = true;
    info10.signalStrength = 100;

    info10.metadata = hidl_vec<MetaData>({
        {MetadataType::TEXT, MetadataKey::RDS_PS, {}, {}, programName, {}},
        {MetadataType::TEXT, MetadataKey::TITLE, {}, {}, songTitle, {}},
        {MetadataType::TEXT, MetadataKey::ARTIST, {}, {}, songArtist, {}},
    });

    return info11;
}

bool operator<(const VirtualProgram& lhs, const VirtualProgram& rhs) {
    return lhs.channel < rhs.channel;
}
+6 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
#ifndef ANDROID_HARDWARE_BROADCASTRADIO_V1_1_VIRTUALPROGRAM_H
#define ANDROID_HARDWARE_BROADCASTRADIO_V1_1_VIRTUALPROGRAM_H

#include <android/hardware/broadcastradio/1.1/types.h>
#include <cstdint>

namespace android {
@@ -27,6 +28,11 @@ namespace implementation {
struct VirtualProgram {
    uint32_t channel;  // TODO(b/32621193): Station Selector

    std::string programName = "";
    std::string songArtist = "";
    std::string songTitle = "";

    explicit operator ProgramInfo() const;
    friend bool operator<(const VirtualProgram& lhs, const VirtualProgram& rhs);
};

+7 −1
Original line number Diff line number Diff line
@@ -27,7 +27,13 @@ using std::mutex;
using std::vector;

vector<VirtualProgram> gInitialFmPrograms{
    {94900}, {96500}, {97300}, {99700}, {101300}, {103700}, {106100},
    {94900, "Wild 94.9", "Drake ft. Rihanna", "Too Good"},
    {96500, "KOIT", "Celine Dion", "All By Myself"},
    {97300, "Alice@97.3", "Drops of Jupiter", "Train"},
    {99700, "99.7 Now!", "The Chainsmokers", "Closer"},
    {101300, "101-3 KISS-FM", "Justin Timberlake", "Rock Your Body"},
    {103700, "iHeart80s @ 103.7", "Michael Jackson", "Billie Jean"},
    {106100, "106 KMEL", "Drake", "Marvins Room"},
};

VirtualRadio::VirtualRadio(VirtualRadio&& o) : mPrograms(move(o.mPrograms)) {}
Loading