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

Commit 9a1e5aa9 authored by shubang's avatar shubang
Browse files

Fix minor issues in dmux default impl

Test: mannual
Change-Id: If74df110cd9eda2dadb87a8d659d83233ad75d88
parent ecbc1ab5
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -479,7 +479,8 @@ Result Demux::startPesFilterHandler(uint32_t filterId) {
            if (prefix == 0x000001) {
                // TODO handle mulptiple Pes filters
                mPesSizeLeft =
                        (mFilterOutputs[filterId][i + 7] << 8) | mFilterOutputs[filterId][i + 8];
                        (mFilterOutputs[filterId][i + 8] << 8) | mFilterOutputs[filterId][i + 9];
                mPesSizeLeft += 6;
                ALOGD("[Demux] pes data length %d", mPesSizeLeft);
            } else {
                continue;
@@ -489,7 +490,7 @@ Result Demux::startPesFilterHandler(uint32_t filterId) {
        int endPoint = min(184, mPesSizeLeft);
        // append data and check size
        vector<uint8_t>::const_iterator first = mFilterOutputs[filterId].begin() + i + 4;
        vector<uint8_t>::const_iterator last = mFilterOutputs[filterId].begin() + i + 3 + endPoint;
        vector<uint8_t>::const_iterator last = mFilterOutputs[filterId].begin() + i + 4 + endPoint;
        mPesOutput.insert(mPesOutput.end(), first, last);
        // size does not match then continue
        mPesSizeLeft -= endPoint;
@@ -800,7 +801,7 @@ void Demux::maySendInputStatusCallback() {
void Demux::maySendFilterStatusCallback(uint32_t filterId) {
    std::lock_guard<std::mutex> lock(mFilterStatusLock);
    int availableToRead = mFilterMQs[filterId]->availableToRead();
    int availableToWrite = mInputMQ->availableToWrite();
    int availableToWrite = mFilterMQs[filterId]->availableToWrite();
    int fmqSize = mFilterMQs[filterId]->getQuantumCount();

    DemuxFilterStatus newStatus =
@@ -885,7 +886,6 @@ void Demux::broadcastInputThreadLoop() {
                    byteBuffer[index] = static_cast<uint8_t>(buffer[index]);
                }
                startTsFilter(byteBuffer);
                inputData.seekg(packetSize, inputData.cur);
            }
            startFilterDispatcher();
            sleep(1);