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

Commit 51416698 authored by The Android Automerger's avatar The Android Automerger
Browse files

merge in ics-release history after reset to master

parent 04170bc2
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -72,14 +72,16 @@ status_t StagefrightPlayer::setDataSource(const sp<IStreamSource> &source) {
status_t StagefrightPlayer::setVideoSurface(const sp<Surface> &surface) {
    LOGV("setVideoSurface");

    return mPlayer->setSurface(surface);
    mPlayer->setSurface(surface);
    return OK;
}

status_t StagefrightPlayer::setVideoSurfaceTexture(
        const sp<ISurfaceTexture> &surfaceTexture) {
    LOGV("setVideoSurfaceTexture");

    return mPlayer->setSurfaceTexture(surfaceTexture);
    mPlayer->setSurfaceTexture(surfaceTexture);
    return OK;
}

status_t StagefrightPlayer::prepare() {
+2 −4
Original line number Diff line number Diff line
@@ -316,11 +316,9 @@ void NuPlayer::onMessageReceived(const sp<AMessage> &msg) {
                                &cropLeft, &cropTop, &cropRight, &cropBottom));

                    LOGV("Video output format changed to %d x %d "
                         "(crop: %d x %d @ (%d, %d))",
                         "(crop: %d, %d, %d, %d)",
                         width, height,
                         (cropRight - cropLeft + 1),
                         (cropBottom - cropTop + 1),
                         cropLeft, cropTop);
                         cropLeft, cropTop, cropRight, cropBottom);

                    notifyListener(
                            MEDIA_SET_VIDEO_SIZE,
+17 −28
Original line number Diff line number Diff line
@@ -395,24 +395,12 @@ void NuPlayer::Renderer::onQueueBuffer(const sp<AMessage> &msg) {
        postDrainVideoQueue();
    }

    if (!mSyncQueues || mAudioQueue.empty() || mVideoQueue.empty()) {
        return;
    }

    sp<ABuffer> firstAudioBuffer = (*mAudioQueue.begin()).mBuffer;
    sp<ABuffer> firstVideoBuffer = (*mVideoQueue.begin()).mBuffer;

    if (firstAudioBuffer == NULL || firstVideoBuffer == NULL) {
        // EOS signalled on either queue.
        syncQueuesDone();
        return;
    }

    if (mSyncQueues && !mAudioQueue.empty() && !mVideoQueue.empty()) {
        int64_t firstAudioTimeUs;
        int64_t firstVideoTimeUs;
    CHECK(firstAudioBuffer->meta()
        CHECK((*mAudioQueue.begin()).mBuffer->meta()
                ->findInt64("timeUs", &firstAudioTimeUs));
    CHECK(firstVideoBuffer->meta()
        CHECK((*mVideoQueue.begin()).mBuffer->meta()
                ->findInt64("timeUs", &firstVideoTimeUs));

        int64_t diff = firstVideoTimeUs - firstAudioTimeUs;
@@ -430,6 +418,7 @@ void NuPlayer::Renderer::onQueueBuffer(const sp<AMessage> &msg) {

        syncQueuesDone();
    }
}

void NuPlayer::Renderer::syncQueuesDone() {
    if (!mSyncQueues) {
+3 −23
Original line number Diff line number Diff line
@@ -1738,17 +1738,7 @@ ACodec::LoadedToIdleState::LoadedToIdleState(ACodec *codec)
void ACodec::LoadedToIdleState::stateEntered() {
    LOGV("[%s] Now Loaded->Idle", mCodec->mComponentName.c_str());

    status_t err;
    if ((err = allocateBuffers()) != OK) {
        LOGE("Failed to allocate buffers after transitioning to IDLE state "
             "(error 0x%08x)",
             err);

        sp<AMessage> notify = mCodec->mNotify->dup();
        notify->setInt32("what", ACodec::kWhatError);
        notify->setInt32("omx-error", OMX_ErrorUndefined);
        notify->post();
    }
    CHECK_EQ(allocateBuffers(), (status_t)OK);
}

status_t ACodec::LoadedToIdleState::allocateBuffers() {
@@ -2056,18 +2046,8 @@ bool ACodec::OutputPortSettingsChangedState::onOMXEvent(
                            mCodec->mNode, OMX_CommandPortEnable, kPortIndexOutput),
                         (status_t)OK);

                status_t err;
                if ((err = mCodec->allocateBuffersOnPort(
                                kPortIndexOutput)) != OK) {
                    LOGE("Failed to allocate output port buffers after "
                         "port reconfiguration (error 0x%08x)",
                         err);

                    sp<AMessage> notify = mCodec->mNotify->dup();
                    notify->setInt32("what", ACodec::kWhatError);
                    notify->setInt32("omx-error", OMX_ErrorUndefined);
                    notify->post();
                }
                CHECK_EQ(mCodec->allocateBuffersOnPort(kPortIndexOutput),
                         (status_t)OK);

                return true;
            } else if (data1 == (OMX_U32)OMX_CommandPortEnable) {
+8 −19
Original line number Diff line number Diff line
@@ -1152,26 +1152,22 @@ bool AwesomePlayer::isPlaying() const {
    return (mFlags & PLAYING) || (mFlags & CACHE_UNDERRUN);
}

status_t AwesomePlayer::setSurface(const sp<Surface> &surface) {
void AwesomePlayer::setSurface(const sp<Surface> &surface) {
    Mutex::Autolock autoLock(mLock);

    mSurface = surface;
    return setNativeWindow_l(surface);
    setNativeWindow_l(surface);
}

status_t AwesomePlayer::setSurfaceTexture(const sp<ISurfaceTexture> &surfaceTexture) {
void AwesomePlayer::setSurfaceTexture(const sp<ISurfaceTexture> &surfaceTexture) {
    Mutex::Autolock autoLock(mLock);

    mSurface.clear();

    status_t err;
    if (surfaceTexture != NULL) {
        err = setNativeWindow_l(new SurfaceTextureClient(surfaceTexture));
        setNativeWindow_l(new SurfaceTextureClient(surfaceTexture));
    } else {
        err = setNativeWindow_l(NULL);
        setNativeWindow_l(NULL);
    }

    return err;
}

void AwesomePlayer::shutdownVideoDecoder_l() {
@@ -1194,11 +1190,11 @@ void AwesomePlayer::shutdownVideoDecoder_l() {
    LOGI("video decoder shutdown completed");
}

status_t AwesomePlayer::setNativeWindow_l(const sp<ANativeWindow> &native) {
void AwesomePlayer::setNativeWindow_l(const sp<ANativeWindow> &native) {
    mNativeWindow = native;

    if (mVideoSource == NULL) {
        return OK;
        return;
    }

    LOGI("attempting to reconfigure to use new surface");
@@ -1210,12 +1206,7 @@ status_t AwesomePlayer::setNativeWindow_l(const sp<ANativeWindow> &native) {

    shutdownVideoDecoder_l();

    status_t err = initVideoDecoder();

    if (err != OK) {
        LOGE("failed to reinstantiate video decoder after surface change.");
        return err;
    }
    CHECK_EQ(initVideoDecoder(), (status_t)OK);

    if (mLastVideoTimeUs >= 0) {
        mSeeking = SEEK;
@@ -1226,8 +1217,6 @@ status_t AwesomePlayer::setNativeWindow_l(const sp<ANativeWindow> &native) {
    if (wasPlaying) {
        play_l();
    }

    return OK;
}

void AwesomePlayer::setAudioSink(
Loading