summaryrefslogtreecommitdiffstats
path: root/media/omx/omx_codec_unittest.cc
diff options
context:
space:
mode:
authorjiesun@google.com <jiesun@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-29 19:24:24 +0000
committerjiesun@google.com <jiesun@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-29 19:24:24 +0000
commit55683e21a68a2c0df23c126c4a002054bad5725d (patch)
tree787e82686dffceaac8d0f2b54a1d8a20fdb1510c /media/omx/omx_codec_unittest.cc
parentce4e83804af1a9f22ec3b23abae603ea3f759b52 (diff)
downloadchromium_src-55683e21a68a2c0df23c126c4a002054bad5725d.zip
chromium_src-55683e21a68a2c0df23c126c4a002054bad5725d.tar.gz
chromium_src-55683e21a68a2c0df23c126c4a002054bad5725d.tar.bz2
media: OMX seek works for OMX_HEADBUFFERTYPE now.
1. Promote Stop() to engine interafce and make it Asynchronous. 2. Add Pause() and Flush() in engine interface. 3. Notify buffer return in ffmpeg engine so that future recycling could use it. 4. Add Pause logic in OMX decode engine. to fully support seek in hardware path, some pipeline work and video render work is required. that will be in the next patch (maybe jia will write it). 1. some renderer hack is required for now. but current pause model of videoRenderBase is not suitable for hardware case. we need to resolve that. 2. Seek after EOS is not supported. 3. Seek for EGL image path is not yet tested, some code is required to return EGLImage buffer to allocator's side. Review URL: http://codereview.chromium.org/2808022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51153 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/omx/omx_codec_unittest.cc')
-rw-r--r--media/omx/omx_codec_unittest.cc11
1 files changed, 5 insertions, 6 deletions
diff --git a/media/omx/omx_codec_unittest.cc b/media/omx/omx_codec_unittest.cc
index 71a9ca7..b1960b9 100644
--- a/media/omx/omx_codec_unittest.cc
+++ b/media/omx/omx_codec_unittest.cc
@@ -295,8 +295,7 @@ class OmxCodecTest : public testing::Test {
}
void ExpectStop() {
- EXPECT_CALL(stop_callback_, OnFilterCallback());
- EXPECT_CALL(stop_callback_, OnCallbackDestroyed());
+ EXPECT_CALL(stop_task_, Run());
ExpectToIdle();
ExpectIdleToLoaded();
ExpectToEmpty();
@@ -355,7 +354,7 @@ class OmxCodecTest : public testing::Test {
VideoDecodeEngine::FillThisBufferCallback* decode_done_cb_;
TaskMocker init_done_cb_task_;
- MockFilterCallback stop_callback_;
+ TaskMocker stop_task_;
private:
DISALLOW_COPY_AND_ASSIGN(OmxCodecTest);
@@ -375,7 +374,7 @@ TEST_F(OmxCodecTest, SimpleStartAndStop) {
EXPECT_EQ(VideoDecodeEngine::kNormal, omx_engine_->state());
ExpectStop();
- omx_engine_->Stop(stop_callback_.NewCallback());
+ omx_engine_->Stop(stop_task_.CreateTask());
message_loop_.RunAllPending();
}
@@ -422,7 +421,7 @@ TEST_F(OmxCodecTest, NormalFlow) {
// Shutdown.
ExpectStop();
- omx_engine_->Stop(stop_callback_.NewCallback());
+ omx_engine_->Stop(stop_task_.CreateTask());
message_loop_.RunAllPending();
}
@@ -474,7 +473,7 @@ TEST_F(OmxCodecTest, RecycleInputBuffers) {
// Shutdown.
ExpectStop();
- omx_engine_->Stop(stop_callback_.NewCallback());
+ omx_engine_->Stop(stop_task_.CreateTask());
message_loop_.RunAllPending();
}