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

Commit 7d880c31 authored by Marco Nelissen's avatar Marco Nelissen
Browse files

Remove RefBase from MediaExtractor

Bug: 67908556
Test: build, boot

Change-Id: I9cc0f1bdb89c2da52f89a28471d4b86f30500abb
parent 3923b1b7
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -122,8 +122,7 @@ private:
};

struct MatroskaSource : public MediaSource {
    MatroskaSource(
            const sp<MatroskaExtractor> &extractor, size_t index);
    MatroskaSource(MatroskaExtractor *extractor, size_t index);

    virtual status_t start(MetaData *params);
    virtual status_t stop();
@@ -144,7 +143,7 @@ private:
        OTHER
    };

    sp<MatroskaExtractor> mExtractor;
    MatroskaExtractor *mExtractor;
    size_t mTrackIndex;
    Type mType;
    bool mIsAudio;
@@ -211,12 +210,12 @@ const mkvparser::CuePoint::TrackPosition *MatroskaExtractor::TrackInfo::find(
}

MatroskaSource::MatroskaSource(
        const sp<MatroskaExtractor> &extractor, size_t index)
        MatroskaExtractor *extractor, size_t index)
    : mExtractor(extractor),
      mTrackIndex(index),
      mType(OTHER),
      mIsAudio(false),
      mBlockIter(mExtractor.get(),
      mBlockIter(mExtractor,
                 mExtractor->mTracks.itemAt(index).mTrackNum,
                 index),
      mNALSizeLen(-1) {
+3 −8
Original line number Diff line number Diff line
@@ -68,8 +68,7 @@ enum {
class MPEG4Source : public MediaSource {
public:
    // Caller retains ownership of both "dataSource" and "sampleTable".
    MPEG4Source(const sp<MPEG4Extractor> &owner,
                const sp<MetaData> &format,
    MPEG4Source(const sp<MetaData> &format,
                const sp<DataSource> &dataSource,
                int32_t timeScale,
                const sp<SampleTable> &sampleTable,
@@ -94,8 +93,6 @@ protected:
private:
    Mutex mLock;

    // keep the MPEG4Extractor around, since we're referencing its data
    sp<MPEG4Extractor> mOwner;
    sp<MetaData> mFormat;
    sp<DataSource> mDataSource;
    int32_t mTimescale;
@@ -3488,7 +3485,7 @@ sp<MediaSource> MPEG4Extractor::getTrack(size_t index) {
        }
    }

    sp<MPEG4Source> source =  new MPEG4Source(this,
    sp<MPEG4Source> source =  new MPEG4Source(
            track->meta, mDataSource, track->timescale, track->sampleTable,
            mSidxEntries, trex, mMoofOffset, itemTable);
    if (source->init() != OK) {
@@ -3884,7 +3881,6 @@ status_t MPEG4Extractor::updateAudioTrackInfoFromESDS_MPEG4Audio(
////////////////////////////////////////////////////////////////////////////////

MPEG4Source::MPEG4Source(
        const sp<MPEG4Extractor> &owner,
        const sp<MetaData> &format,
        const sp<DataSource> &dataSource,
        int32_t timeScale,
@@ -3893,8 +3889,7 @@ MPEG4Source::MPEG4Source(
        const Trex *trex,
        off64_t firstMoofOffset,
        const sp<ItemTable> &itemTable)
    : mOwner(owner),
      mFormat(format),
    : mFormat(format),
      mDataSource(dataSource),
      mTimescale(timeScale),
      mSampleTable(sampleTable),
+3 −3
Original line number Diff line number Diff line
@@ -73,7 +73,7 @@ private:
};

struct MPEG2PSExtractor::WrappedTrack : public MediaSource {
    WrappedTrack(const sp<MPEG2PSExtractor> &extractor, const sp<Track> &track);
    WrappedTrack(MPEG2PSExtractor *extractor, const sp<Track> &track);

    virtual status_t start(MetaData *params);
    virtual status_t stop();
@@ -86,7 +86,7 @@ protected:
    virtual ~WrappedTrack();

private:
    sp<MPEG2PSExtractor> mExtractor;
    MPEG2PSExtractor *mExtractor;
    sp<MPEG2PSExtractor::Track> mTrack;

    DISALLOW_EVIL_CONSTRUCTORS(WrappedTrack);
@@ -723,7 +723,7 @@ status_t MPEG2PSExtractor::Track::appendPESData(
////////////////////////////////////////////////////////////////////////////////

MPEG2PSExtractor::WrappedTrack::WrappedTrack(
        const sp<MPEG2PSExtractor> &extractor, const sp<Track> &track)
        MPEG2PSExtractor *extractor, const sp<Track> &track)
    : mExtractor(extractor),
      mTrack(track) {
}
+7 −3
Original line number Diff line number Diff line
@@ -51,9 +51,10 @@ static const int kMaxDurationRetry = 6;

struct MPEG2TSSource : public MediaSource {
    MPEG2TSSource(
            const sp<MPEG2TSExtractor> &extractor,
            MPEG2TSExtractor *extractor,
            const sp<AnotherPacketSource> &impl,
            bool doesSeek);
    virtual ~MPEG2TSSource();

    virtual status_t start(MetaData *params = NULL);
    virtual status_t stop();
@@ -63,7 +64,7 @@ struct MPEG2TSSource : public MediaSource {
            MediaBuffer **buffer, const ReadOptions *options = NULL);

private:
    sp<MPEG2TSExtractor> mExtractor;
    MPEG2TSExtractor *mExtractor;
    sp<AnotherPacketSource> mImpl;

    // If there are both audio and video streams, only the video stream
@@ -74,7 +75,7 @@ private:
};

MPEG2TSSource::MPEG2TSSource(
        const sp<MPEG2TSExtractor> &extractor,
        MPEG2TSExtractor *extractor,
        const sp<AnotherPacketSource> &impl,
        bool doesSeek)
    : mExtractor(extractor),
@@ -82,6 +83,9 @@ MPEG2TSSource::MPEG2TSSource(
      mDoesSeek(doesSeek) {
}

MPEG2TSSource::~MPEG2TSSource() {
}

status_t MPEG2TSSource::start(MetaData *params) {
    return mImpl->start(params);
}
+3 −3
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ extern "C" {
namespace android {

struct OggSource : public MediaSource {
    explicit OggSource(const sp<OggExtractor> &extractor);
    explicit OggSource(OggExtractor *extractor);

    virtual sp<MetaData> getFormat();

@@ -60,7 +60,7 @@ protected:
    virtual ~OggSource();

private:
    sp<OggExtractor> mExtractor;
    OggExtractor *mExtractor;
    bool mStarted;

    OggSource(const OggSource &);
@@ -224,7 +224,7 @@ static void extractAlbumArt(

////////////////////////////////////////////////////////////////////////////////

OggSource::OggSource(const sp<OggExtractor> &extractor)
OggSource::OggSource(OggExtractor *extractor)
    : mExtractor(extractor),
      mStarted(false) {
}
Loading