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

Commit 913f4c7c authored by Eric Laurent's avatar Eric Laurent Committed by Android (Google) Code Review
Browse files

Merge "Issue 2071329: audio track is shorter than video track for video capture on sholes"

parents d26e9ceb 134ccbd1
Loading
Loading
Loading
Loading
+6 −0
Original line number Original line Diff line number Diff line
@@ -509,6 +509,12 @@ String8 AudioStreamInDump::getParameters(const String8& keys)
    return param.toString();
    return param.toString();
}
}


unsigned int AudioStreamInDump::getInputFramesLost() const
{
    if (mFinalStream != 0 ) return mFinalStream->getInputFramesLost();
    return 0;
}

status_t AudioStreamInDump::dump(int fd, const Vector<String16>& args)
status_t AudioStreamInDump::dump(int fd, const Vector<String16>& args)
{
{
    if (mFinalStream != 0 ) return mFinalStream->dump(fd, args);
    if (mFinalStream != 0 ) return mFinalStream->dump(fd, args);
+1 −0
Original line number Original line Diff line number Diff line
@@ -94,6 +94,7 @@ public:
    virtual status_t    standby();
    virtual status_t    standby();
    virtual status_t    setParameters(const String8& keyValuePairs);
    virtual status_t    setParameters(const String8& keyValuePairs);
    virtual String8     getParameters(const String8& keys);
    virtual String8     getParameters(const String8& keys);
    virtual unsigned int  getInputFramesLost() const;
    virtual status_t    dump(int fd, const Vector<String16>& args);
    virtual status_t    dump(int fd, const Vector<String16>& args);
    void                Close(void);
    void                Close(void);
    AudioStreamIn*     finalStream() { return mFinalStream; }
    AudioStreamIn*     finalStream() { return mFinalStream; }
+20 −0
Original line number Original line Diff line number Diff line
@@ -618,6 +618,21 @@ size_t AudioFlinger::getInputBufferSize(uint32_t sampleRate, int format, int cha
    return mAudioHardware->getInputBufferSize(sampleRate, format, channelCount);
    return mAudioHardware->getInputBufferSize(sampleRate, format, channelCount);
}
}


unsigned int AudioFlinger::getInputFramesLost(int ioHandle)
{
    if (ioHandle == 0) {
        return 0;
    }

    Mutex::Autolock _l(mLock);

    RecordThread *recordThread = checkRecordThread_l(ioHandle);
    if (recordThread != NULL) {
        return recordThread->getInputFramesLost();
    }
    return 0;
}

status_t AudioFlinger::setVoiceVolume(float value)
status_t AudioFlinger::setVoiceVolume(float value)
{
{
    // check calling permissions
    // check calling permissions
@@ -3575,6 +3590,11 @@ void AudioFlinger::RecordThread::readInputParameters()
    mRsmpInIndex = mFrameCount;
    mRsmpInIndex = mFrameCount;
}
}


unsigned int AudioFlinger::RecordThread::getInputFramesLost()
{
    return mInput->getInputFramesLost();
}

// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------


int AudioFlinger::openOutput(uint32_t *pDevices,
int AudioFlinger::openOutput(uint32_t *pDevices,
+2 −0
Original line number Original line Diff line number Diff line
@@ -108,6 +108,7 @@ public:
    virtual     void        registerClient(const sp<IAudioFlingerClient>& client);
    virtual     void        registerClient(const sp<IAudioFlingerClient>& client);


    virtual     size_t      getInputBufferSize(uint32_t sampleRate, int format, int channelCount);
    virtual     size_t      getInputBufferSize(uint32_t sampleRate, int format, int channelCount);
    virtual     unsigned int  getInputFramesLost(int ioHandle);


    virtual int openOutput(uint32_t *pDevices,
    virtual int openOutput(uint32_t *pDevices,
                                    uint32_t *pSamplingRate,
                                    uint32_t *pSamplingRate,
@@ -745,6 +746,7 @@ private:
        virtual String8     getParameters(const String8& keys);
        virtual String8     getParameters(const String8& keys);
        virtual void        audioConfigChanged(int event, int param = 0);
        virtual void        audioConfigChanged(int event, int param = 0);
                void        readInputParameters();
                void        readInputParameters();
        virtual unsigned int  getInputFramesLost();


    private:
    private:
                RecordThread();
                RecordThread();
+1 −0
Original line number Original line Diff line number Diff line
@@ -88,6 +88,7 @@ public:
    virtual status_t    standby() { return NO_ERROR; }
    virtual status_t    standby() { return NO_ERROR; }
    virtual status_t    setParameters(const String8& keyValuePairs);
    virtual status_t    setParameters(const String8& keyValuePairs);
    virtual String8     getParameters(const String8& keys);
    virtual String8     getParameters(const String8& keys);
    virtual unsigned int  getInputFramesLost() const { return 0; }


private:
private:
    AudioHardwareGeneric *mAudioHardware;
    AudioHardwareGeneric *mAudioHardware;
Loading