OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <stddef.h> | 5 #include <stddef.h> |
6 #include <stdint.h> | 6 #include <stdint.h> |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 17 matching lines...) Expand all Loading... |
28 #include "media/filters/chunk_demuxer.h" | 28 #include "media/filters/chunk_demuxer.h" |
29 #include "media/renderers/renderer_impl.h" | 29 #include "media/renderers/renderer_impl.h" |
30 #include "media/test/pipeline_integration_test_base.h" | 30 #include "media/test/pipeline_integration_test_base.h" |
31 #include "testing/gmock/include/gmock/gmock.h" | 31 #include "testing/gmock/include/gmock/gmock.h" |
32 #include "url/gurl.h" | 32 #include "url/gurl.h" |
33 | 33 |
34 #if defined(MOJO_RENDERER) | 34 #if defined(MOJO_RENDERER) |
35 #include "media/mojo/interfaces/renderer.mojom.h" | 35 #include "media/mojo/interfaces/renderer.mojom.h" |
36 #include "media/mojo/interfaces/service_factory.mojom.h" | 36 #include "media/mojo/interfaces/service_factory.mojom.h" |
37 #include "media/mojo/services/mojo_renderer_impl.h" | 37 #include "media/mojo/services/mojo_renderer_impl.h" |
38 #include "mojo/shell/public/cpp/application_impl.h" | |
39 #include "mojo/shell/public/cpp/application_test_base.h" | 38 #include "mojo/shell/public/cpp/application_test_base.h" |
40 #include "mojo/shell/public/cpp/connect.h" | 39 #include "mojo/shell/public/cpp/connect.h" |
41 | 40 |
42 // TODO(dalecurtis): The mojo renderer is in another process, so we have no way | 41 // TODO(dalecurtis): The mojo renderer is in another process, so we have no way |
43 // currently to get hashes for video and audio samples. This also means that | 42 // currently to get hashes for video and audio samples. This also means that |
44 // real audio plays out for each test. | 43 // real audio plays out for each test. |
45 #define EXPECT_HASH_EQ(a, b) | 44 #define EXPECT_HASH_EQ(a, b) |
46 #define EXPECT_VIDEO_FORMAT_EQ(a, b) | 45 #define EXPECT_VIDEO_FORMAT_EQ(a, b) |
47 #define EXPECT_COLOR_SPACE_EQ(a, b) | 46 #define EXPECT_COLOR_SPACE_EQ(a, b) |
48 | 47 |
(...skipping 622 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
671 public: | 670 public: |
672 bool ShouldCreateDefaultRunLoop() override { return false; } | 671 bool ShouldCreateDefaultRunLoop() override { return false; } |
673 | 672 |
674 void SetUp() override { | 673 void SetUp() override { |
675 ApplicationTestBase::SetUp(); | 674 ApplicationTestBase::SetUp(); |
676 InitializeMediaLibrary(); | 675 InitializeMediaLibrary(); |
677 } | 676 } |
678 | 677 |
679 protected: | 678 protected: |
680 scoped_ptr<Renderer> CreateRenderer() override { | 679 scoped_ptr<Renderer> CreateRenderer() override { |
681 application_impl()->ConnectToService("mojo:media", &media_service_factory_); | 680 shell()->ConnectToService("mojo:media", &media_service_factory_); |
682 | 681 |
683 interfaces::RendererPtr mojo_renderer; | 682 interfaces::RendererPtr mojo_renderer; |
684 media_service_factory_->CreateRenderer(mojo::GetProxy(&mojo_renderer)); | 683 media_service_factory_->CreateRenderer(mojo::GetProxy(&mojo_renderer)); |
685 | 684 |
686 return make_scoped_ptr(new MojoRendererImpl(message_loop_.task_runner(), | 685 return make_scoped_ptr(new MojoRendererImpl(message_loop_.task_runner(), |
687 std::move(mojo_renderer))); | 686 std::move(mojo_renderer))); |
688 } | 687 } |
689 | 688 |
690 private: | 689 private: |
691 interfaces::ServiceFactoryPtr media_service_factory_; | 690 interfaces::ServiceFactoryPtr media_service_factory_; |
(...skipping 1344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2036 | 2035 |
2037 TEST_F(PipelineIntegrationTest, BasicPlaybackPositiveStartTime) { | 2036 TEST_F(PipelineIntegrationTest, BasicPlaybackPositiveStartTime) { |
2038 ASSERT_EQ(PIPELINE_OK, Start("nonzero-start-time.webm")); | 2037 ASSERT_EQ(PIPELINE_OK, Start("nonzero-start-time.webm")); |
2039 Play(); | 2038 Play(); |
2040 ASSERT_TRUE(WaitUntilOnEnded()); | 2039 ASSERT_TRUE(WaitUntilOnEnded()); |
2041 ASSERT_EQ(base::TimeDelta::FromMicroseconds(396000), | 2040 ASSERT_EQ(base::TimeDelta::FromMicroseconds(396000), |
2042 demuxer_->GetStartTime()); | 2041 demuxer_->GetStartTime()); |
2043 } | 2042 } |
2044 | 2043 |
2045 } // namespace media | 2044 } // namespace media |
OLD | NEW |