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

Commit 1468dd9c authored by Jean-Baptiste Queru's avatar Jean-Baptiste Queru Committed by Android Git Automerger
Browse files

am c582fde9: resolved conflicts for merge of c158971f to stage-aosp-master

* commit 'c582fde9':
  Store rtsp accessunit until PLAY response parsed
parents 8ebdfa8b c582fde9
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -127,7 +127,8 @@ struct MyHandler : public AHandler {
          mKeepAliveTimeoutUs(kDefaultKeepAliveTimeoutUs),
          mKeepAliveGeneration(0),
          mPausing(false),
          mPauseGeneration(0) {
          mPauseGeneration(0),
          mPlayResponseParsed(false) {
        mNetLooper->setName("rtsp net");
        mNetLooper->start(false /* runOnCallingThread */,
                          false /* canCallJava */,
@@ -1371,6 +1372,7 @@ struct MyHandler : public AHandler {
    }

    void parsePlayResponse(const sp<ARTSPResponse> &response) {
        mPlayResponseParsed = true;
        if (mTracks.size() == 0) {
            ALOGV("parsePlayResponse: late packets ignored.");
            return;
@@ -1524,6 +1526,8 @@ private:

    Vector<TrackInfo> mTracks;

    bool mPlayResponseParsed;

    void setupTrack(size_t index) {
        sp<APacketSource> source =
            new APacketSource(mSessionDesc, index);
@@ -1728,6 +1732,13 @@ private:
            int32_t trackIndex, const sp<ABuffer> &accessUnit) {
        ALOGV("onAccessUnitComplete track %d", trackIndex);

        if(!mPlayResponseParsed){
            ALOGI("play response is not parsed, storing accessunit");
            TrackInfo *track = &mTracks.editItemAt(trackIndex);
            track->mPackets.push_back(accessUnit);
            return;
        }

        if (mFirstAccessUnit) {
            sp<AMessage> msg = mNotify->dup();
            msg->setInt32("what", kWhatConnected);