Skip to content

Commit

Permalink
Bug 1295901 - Change the semantics/naming of MediaDecoderReader::Rele…
Browse files Browse the repository at this point in the history
…aseMediaResources(). r=jya

MozReview-Commit-ID: DyOwNcC2JK5

--HG--
extra : rebase_source : 5b14dfe1df7ed9eab1783fba64ff4a481e520339
  • Loading branch information
jwwang committed Aug 17, 2016
1 parent cf5f341 commit ecaa7b7
Show file tree
Hide file tree
Showing 9 changed files with 16 additions and 15 deletions.
4 changes: 2 additions & 2 deletions dom/media/MediaDecoderReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ class ReaderQueue
}
aReader->SetIsSuspended(true);

aReader->ReleaseMediaResources();
aReader->ReleaseResources();
}

static void DispatchResume(MediaDecoderReader* aReader)
Expand Down Expand Up @@ -520,7 +520,7 @@ MediaDecoderReader::Shutdown()

mDataArrivedListener.DisconnectIfExists();

ReleaseMediaResources();
ReleaseResources();
mDuration.DisconnectIfConnected();
mBuffered.DisconnectAll();
mIsSuspended.DisconnectAll();
Expand Down
7 changes: 4 additions & 3 deletions dom/media/MediaDecoderReader.h
Original file line number Diff line number Diff line change
Expand Up @@ -102,9 +102,10 @@ class MediaDecoderReader {
// on failure.
virtual nsresult Init() { return NS_OK; }

// Release media resources they should be released in dormant state
// The reader can be made usable again by calling ReadMetadata().
virtual void ReleaseMediaResources() {}
// Called by MDSM in dormant state to release resources allocated by this
// reader. The reader can resume decoding by calling Seek() to a specific
// position.
virtual void ReleaseResources() {}

// Destroys the decoding state. The reader cannot be made usable again.
// This is different from ReleaseMediaResources() as it is irreversable,
Expand Down
4 changes: 2 additions & 2 deletions dom/media/MediaDecoderReaderWrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -328,11 +328,11 @@ MediaDecoderReaderWrapper::UpdateBufferedWithPromise()
}

void
MediaDecoderReaderWrapper::ReleaseMediaResources()
MediaDecoderReaderWrapper::ReleaseResources()
{
MOZ_ASSERT(mOwnerThread->IsCurrentThreadIn());
nsCOMPtr<nsIRunnable> r =
NewRunnableMethod(mReader, &MediaDecoderReader::ReleaseMediaResources);
NewRunnableMethod(mReader, &MediaDecoderReader::ReleaseResources);
mReader->OwnerThread()->Dispatch(r.forget());
}

Expand Down
2 changes: 1 addition & 1 deletion dom/media/MediaDecoderReaderWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ class MediaDecoderReaderWrapper {
RefPtr<BufferedUpdatePromise> UpdateBufferedWithPromise();
RefPtr<ShutdownPromise> Shutdown();

void ReleaseMediaResources();
void ReleaseResources();
void SetIdle();
void ResetDecode(TrackSet aTracks);

Expand Down
4 changes: 2 additions & 2 deletions dom/media/MediaDecoderStateMachine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1186,12 +1186,12 @@ MediaDecoderStateMachine::SetDormant(bool aDormant)
Reset();

// Note that we do not wait for the decode task queue to go idle before
// queuing the ReleaseMediaResources task - instead, we disconnect promises,
// queuing the ReleaseResources task - instead, we disconnect promises,
// reset state, and put a ResetDecode in the decode task queue. Any tasks
// that run after ResetDecode are supposed to run with a clean slate. We
// rely on that in other places (i.e. seeking), so it seems reasonable to
// rely on it here as well.
mReader->ReleaseMediaResources();
mReader->ReleaseResources();

return;
}
Expand Down
2 changes: 1 addition & 1 deletion dom/media/MediaFormatReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1962,7 +1962,7 @@ MediaFormatReader::UpdateBufferedWithPromise() {
return BufferedUpdatePromise::CreateAndResolve(true, __func__);
}

void MediaFormatReader::ReleaseMediaResources()
void MediaFormatReader::ReleaseResources()
{
// Before freeing a video codec, all video buffers needed to be released
// even from graphics pipeline.
Expand Down
4 changes: 2 additions & 2 deletions dom/media/MediaFormatReader.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ class MediaFormatReader final : public MediaDecoderReader
bool ForceZeroStartTime() const override;

// For Media Resource Management
void ReleaseMediaResources() override;
void ReleaseResources() override;

nsresult ResetDecode(TrackSet aTracks) override;

Expand Down Expand Up @@ -214,7 +214,7 @@ class MediaFormatReader final : public MediaDecoderReader
mReader->DrainComplete(mType);
}
void ReleaseMediaResources() override {
mReader->ReleaseMediaResources();
mReader->ReleaseResources();
}
bool OnReaderTaskQueue() override {
return mReader->OnTaskQueue();
Expand Down
2 changes: 1 addition & 1 deletion dom/media/omx/MediaOmxReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ MediaOmxReader::Shutdown()
return p;
}

void MediaOmxReader::ReleaseMediaResources()
void MediaOmxReader::ReleaseResources()
{
mMediaResourceRequest.DisconnectIfExists();
mMetadataPromise.RejectIfExists(ReadMetadataFailureReason::METADATA_ERROR, __func__);
Expand Down
2 changes: 1 addition & 1 deletion dom/media/omx/MediaOmxReader.h
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ class MediaOmxReader : public MediaOmxCommonReader
bool DecodeAudioData() override;
bool DecodeVideoFrame(bool &aKeyframeSkip, int64_t aTimeThreshold) override;

void ReleaseMediaResources() override;
void ReleaseResources() override;

RefPtr<MediaDecoderReader::MetadataPromise> AsyncReadMetadata() override;

Expand Down

0 comments on commit ecaa7b7

Please sign in to comment.