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

Commit 02506b4d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "AMRWB: Initialize rx_state passed to mime_unsorting" into rvc-dev am: 9c871c77

Change-Id: Ieb57c608184bfaf362570ebb9d4f375176e53a5b
parents a1780e8e 9c871c77
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -336,11 +336,10 @@ void C2SoftAmrDec::process(
                memset(output, 0, outSamples * sizeof(int16_t));
            } else {
                int16_t FT;
                RX_State_wb rx_state;
                int16_t numRecSamples;

                mime_unsorting(const_cast<uint8_t *>(&input[1]),
                               mInputSampleBuffer, &FT, &FM, 1, &rx_state);
                               mInputSampleBuffer, &FT, &FM, 1, &mRxState);
                pvDecoder_AmrWb(FM, mInputSampleBuffer, output, &numRecSamples,
                                mDecoderBuf, FT, mDecoderCookie);
                if (numRecSamples != outSamples) {
+3 −0
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@
#define ANDROID_C2_SOFT_AMR_DEC_H_

#include <SimpleC2Component.h>
#include "gsmamr_dec.h"
#include "pvamrwbdecoder.h"


namespace android {
@@ -51,6 +53,7 @@ private:
    void *mAmrHandle;
    void *mDecoderBuf;
    int16_t *mDecoderCookie;
    RX_State_wb mRxState{};

    int16_t mInputSampleBuffer[477];

+1 −5
Original line number Diff line number Diff line
@@ -20,9 +20,6 @@

#include "SoftAMR.h"

#include "gsmamr_dec.h"
#include "pvamrwbdecoder.h"

#include <media/stagefright/foundation/ADebug.h>

namespace android {
@@ -470,11 +467,10 @@ void SoftAMR::onQueueFilled(OMX_U32 /* portIndex */) {
                memset(outPtr, 0, kNumSamplesPerFrameWB * sizeof(int16_t));
            } else if (mode < 9) {
                int16 frameType;
                RX_State_wb rx_state;
                mime_unsorting(
                        const_cast<uint8_t *>(&inputPtr[1]),
                        mInputSampleBuffer,
                        &frameType, &mode, 1, &rx_state);
                        &frameType, &mode, 1, &mRxState);

                int16_t numSamplesOutput;
                pvDecoder_AmrWb(
+3 −0
Original line number Diff line number Diff line
@@ -19,6 +19,8 @@
#define SOFT_AMR_H_

#include <media/stagefright/omx/SimpleSoftOMXComponent.h>
#include "gsmamr_dec.h"
#include "pvamrwbdecoder.h"

namespace android {

@@ -60,6 +62,7 @@ private:
    void *mState;
    void *mDecoderBuf;
    int16_t *mDecoderCookie;
    RX_State_wb mRxState{};

    size_t mInputBufferCount;
    int64_t mAnchorTimeUs;
+1 −1
Original line number Diff line number Diff line
@@ -65,6 +65,7 @@ void Codec::deInitDecoder() {
}

void Codec::decodeFrames(const uint8_t *data, size_t size) {
  RX_State_wb rx_state{};
  while (size > 0) {
    uint8_t modeByte = *data;
    bool quality = modeByte & 0x01;
@@ -81,7 +82,6 @@ void Codec::decodeFrames(const uint8_t *data, size_t size) {
    memcpy(inputBuf, data, minSize);
    int16 frameMode = mode;
    int16 frameType;
    RX_State_wb rx_state;
    mime_unsorting(inputBuf, inputSampleBuf, &frameType, &frameMode, quality, &rx_state);

    int16_t numSamplesOutput;
Loading