Bug 1115241 - Release video buffer in a dedicated thread. r=sotaro
authorBlake <bwu@mozilla.com>
Tue, 10 Feb 2015 11:34:02 +0800
changeset 229103 9b677c29ca3a8b42ab9dd9454d0e5376299ec96b
parent 229102 3563d3cfba5cae6e32b0b2b68adaae61cef6668a
child 229104 4af25f2970917a6a0340498bc8c579c2f8c57bbc
push id28281
push usercbook@mozilla.com
push dateMon, 16 Feb 2015 14:56:26 +0000
treeherdermozilla-central@dfc80e670462 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssotaro
bugs1115241
milestone38.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1115241 - Release video buffer in a dedicated thread. r=sotaro
dom/media/omx/OmxDecoder.cpp
--- a/dom/media/omx/OmxDecoder.cpp
+++ b/dom/media/omx/OmxDecoder.cpp
@@ -595,17 +595,17 @@ bool OmxDecoder::ReadVideo(VideoFrame *a
         continue;
       } else if (err != OK) {
         OD_LOG("Unexpected error when seeking to %lld", aTimeUs);
         break;
       }
       // For some codecs, the length of first decoded frame after seek is 0.
       // Need to ignore it and continue to find the next one
       if (mVideoBuffer->range_length() == 0) {
-        ReleaseVideoBuffer();
+        PostReleaseVideoBuffer(mVideoBuffer, FenceHandle());
         findNextBuffer = true;
       }
     }
     aDoSeek = false;
   } else {
     err = mVideoSource->read(&mVideoBuffer);
   }