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

Commit ea42da48 authored by Ray Essick's avatar Ray Essick Committed by Android (Google) Code Review
Browse files

Merge "Media metrics for android.media.MediaRecorder"

parents c0a3f679 ac4e4189
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -53,6 +53,7 @@ public:
    virtual status_t setClientName(const String16& clientName) = 0;
    virtual status_t setClientName(const String16& clientName) = 0;
    virtual status_t prepare() = 0;
    virtual status_t prepare() = 0;
    virtual status_t getMaxAmplitude(int* max) = 0;
    virtual status_t getMaxAmplitude(int* max) = 0;
    virtual status_t getMetrics(Parcel *reply) = 0;
    virtual status_t start() = 0;
    virtual status_t start() = 0;
    virtual status_t stop() = 0;
    virtual status_t stop() = 0;
    virtual status_t reset() = 0;
    virtual status_t reset() = 0;
+1 −0
Original line number Original line Diff line number Diff line
@@ -58,6 +58,7 @@ struct MediaRecorderBase {
    virtual status_t close() = 0;
    virtual status_t close() = 0;
    virtual status_t reset() = 0;
    virtual status_t reset() = 0;
    virtual status_t getMaxAmplitude(int *max) = 0;
    virtual status_t getMaxAmplitude(int *max) = 0;
    virtual status_t getMetrics(Parcel *reply) = 0;
    virtual status_t dump(int fd, const Vector<String16>& args) const = 0;
    virtual status_t dump(int fd, const Vector<String16>& args) const = 0;
    virtual status_t setInputSurface(const sp<PersistentSurface>& surface) = 0;
    virtual status_t setInputSurface(const sp<PersistentSurface>& surface) = 0;
    virtual sp<IGraphicBufferProducer> querySurfaceMediaSource() const = 0;
    virtual sp<IGraphicBufferProducer> querySurfaceMediaSource() const = 0;
+1 −0
Original line number Original line Diff line number Diff line
@@ -249,6 +249,7 @@ public:
    void        notify(int msg, int ext1, int ext2);
    void        notify(int msg, int ext1, int ext2);
    status_t    setInputSurface(const sp<PersistentSurface>& surface);
    status_t    setInputSurface(const sp<PersistentSurface>& surface);
    sp<IGraphicBufferProducer>     querySurfaceMediaSourceFromMediaServer();
    sp<IGraphicBufferProducer>     querySurfaceMediaSourceFromMediaServer();
    status_t    getMetrics(Parcel *reply);


private:
private:
    void                    doCleanUp();
    void                    doCleanUp();
+20 −1
Original line number Original line Diff line number Diff line
@@ -59,7 +59,9 @@ enum {
    SET_LISTENER,
    SET_LISTENER,
    SET_CLIENT_NAME,
    SET_CLIENT_NAME,
    PAUSE,
    PAUSE,
    RESUME
    RESUME,
    GET_METRICS,

};
};


class BpMediaRecorder: public BpInterface<IMediaRecorder>
class BpMediaRecorder: public BpInterface<IMediaRecorder>
@@ -261,6 +263,18 @@ public:
        return reply.readInt32();
        return reply.readInt32();
    }
    }


    status_t getMetrics(Parcel* reply)
    {
        ALOGV("getMetrics");
        Parcel data;
        data.writeInterfaceToken(IMediaRecorder::getInterfaceDescriptor());
        status_t ret = remote()->transact(GET_METRICS, data, reply);
        if (ret == NO_ERROR) {
            return OK;
        }
        return UNKNOWN_ERROR;
    }

    status_t start()
    status_t start()
    {
    {
        ALOGV("start");
        ALOGV("start");
@@ -397,6 +411,11 @@ status_t BnMediaRecorder::onTransact(
            reply->writeInt32(ret);
            reply->writeInt32(ret);
            return NO_ERROR;
            return NO_ERROR;
        } break;
        } break;
        case GET_METRICS: {
            ALOGV("GET_METRICS");
            status_t ret = getMetrics(reply);
            return ret;
        } break;
        case SET_VIDEO_SOURCE: {
        case SET_VIDEO_SOURCE: {
            ALOGV("SET_VIDEO_SOURCE");
            ALOGV("SET_VIDEO_SOURCE");
            CHECK_INTERFACE(IMediaRecorder, data, reply);
            CHECK_INTERFACE(IMediaRecorder, data, reply);
+11 −0
Original line number Original line Diff line number Diff line
@@ -513,6 +513,17 @@ status_t MediaRecorder::getMaxAmplitude(int* max)
    return ret;
    return ret;
}
}


status_t MediaRecorder::getMetrics(Parcel *reply) {

    ALOGV("getMetrics");

    status_t ret = mMediaRecorder->getMetrics(reply);
    if (OK != ret) {
        ALOGE("getMetrics failed: %d", ret);
    }
    return ret;
}

status_t MediaRecorder::start()
status_t MediaRecorder::start()
{
{
    ALOGV("start");
    ALOGV("start");
Loading