Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(49)

Side by Side Diff: media/test/pipeline_integration_test_base.cc

Issue 1727243002: Unify media track info reporting on a demuxer level (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@tracks-impl-in-media
Patch Set: rebase Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "media/test/pipeline_integration_test_base.h" 5 #include "media/test/pipeline_integration_test_base.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/memory/scoped_vector.h" 10 #include "base/memory/scoped_vector.h"
11 #include "media/base/cdm_context.h" 11 #include "media/base/cdm_context.h"
12 #include "media/base/media_log.h" 12 #include "media/base/media_log.h"
13 #include "media/base/media_tracks.h"
13 #include "media/base/test_data_util.h" 14 #include "media/base/test_data_util.h"
14 #include "media/filters/chunk_demuxer.h" 15 #include "media/filters/chunk_demuxer.h"
15 #if !defined(MEDIA_DISABLE_FFMPEG) 16 #if !defined(MEDIA_DISABLE_FFMPEG)
16 #include "media/filters/ffmpeg_audio_decoder.h" 17 #include "media/filters/ffmpeg_audio_decoder.h"
17 #include "media/filters/ffmpeg_demuxer.h" 18 #include "media/filters/ffmpeg_demuxer.h"
18 #include "media/filters/ffmpeg_video_decoder.h" 19 #include "media/filters/ffmpeg_video_decoder.h"
19 #endif 20 #endif
20 #include "media/filters/file_data_source.h" 21 #include "media/filters/file_data_source.h"
21 #include "media/filters/memory_data_source.h" 22 #include "media/filters/memory_data_source.h"
22 #include "media/filters/opus_audio_decoder.h" 23 #include "media/filters/opus_audio_decoder.h"
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 } 73 }
73 74
74 void PipelineIntegrationTestBase::DemuxerEncryptedMediaInitDataCB( 75 void PipelineIntegrationTestBase::DemuxerEncryptedMediaInitDataCB(
75 EmeInitDataType type, 76 EmeInitDataType type,
76 const std::vector<uint8_t>& init_data) { 77 const std::vector<uint8_t>& init_data) {
77 DCHECK(!init_data.empty()); 78 DCHECK(!init_data.empty());
78 CHECK(!encrypted_media_init_data_cb_.is_null()); 79 CHECK(!encrypted_media_init_data_cb_.is_null());
79 encrypted_media_init_data_cb_.Run(type, init_data); 80 encrypted_media_init_data_cb_.Run(type, init_data);
80 } 81 }
81 82
83 void PipelineIntegrationTestBase::DemuxerMediaTracksUpdatedCB(
84 scoped_ptr<MediaTracks> tracks) {
85 CHECK(tracks);
86 }
87
82 void PipelineIntegrationTestBase::OnEnded() { 88 void PipelineIntegrationTestBase::OnEnded() {
83 DCHECK(!ended_); 89 DCHECK(!ended_);
84 ended_ = true; 90 ended_ = true;
85 pipeline_status_ = PIPELINE_OK; 91 pipeline_status_ = PIPELINE_OK;
86 message_loop_.PostTask(FROM_HERE, base::MessageLoop::QuitWhenIdleClosure()); 92 message_loop_.PostTask(FROM_HERE, base::MessageLoop::QuitWhenIdleClosure());
87 } 93 }
88 94
89 bool PipelineIntegrationTestBase::WaitUntilOnEnded() { 95 bool PipelineIntegrationTestBase::WaitUntilOnEnded() {
90 if (ended_) 96 if (ended_)
91 return (pipeline_status_ == PIPELINE_OK); 97 return (pipeline_status_ == PIPELINE_OK);
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 base::Unretained(this), wait_time), 261 base::Unretained(this), wait_time),
256 base::TimeDelta::FromMilliseconds(10)); 262 base::TimeDelta::FromMilliseconds(10));
257 message_loop_.Run(); 263 message_loop_.Run();
258 return (pipeline_status_ == PIPELINE_OK); 264 return (pipeline_status_ == PIPELINE_OK);
259 } 265 }
260 266
261 void PipelineIntegrationTestBase::CreateDemuxer( 267 void PipelineIntegrationTestBase::CreateDemuxer(
262 scoped_ptr<DataSource> data_source) { 268 scoped_ptr<DataSource> data_source) {
263 data_source_ = std::move(data_source); 269 data_source_ = std::move(data_source);
264 270
271 Demuxer::MediaTracksUpdatedCB tracks_updated_cb =
272 base::Bind(&PipelineIntegrationTestBase::DemuxerMediaTracksUpdatedCB,
273 base::Unretained(this));
274
265 #if !defined(MEDIA_DISABLE_FFMPEG) 275 #if !defined(MEDIA_DISABLE_FFMPEG)
266 demuxer_ = scoped_ptr<Demuxer>(new FFmpegDemuxer( 276 demuxer_ = scoped_ptr<Demuxer>(new FFmpegDemuxer(
267 message_loop_.task_runner(), data_source_.get(), 277 message_loop_.task_runner(), data_source_.get(),
268 base::Bind(&PipelineIntegrationTestBase::DemuxerEncryptedMediaInitDataCB, 278 base::Bind(&PipelineIntegrationTestBase::DemuxerEncryptedMediaInitDataCB,
269 base::Unretained(this)), 279 base::Unretained(this)),
270 new MediaLog())); 280 tracks_updated_cb, new MediaLog()));
271 #endif 281 #endif
272 } 282 }
273 283
274 scoped_ptr<Renderer> PipelineIntegrationTestBase::CreateRenderer() { 284 scoped_ptr<Renderer> PipelineIntegrationTestBase::CreateRenderer() {
275 ScopedVector<VideoDecoder> video_decoders; 285 ScopedVector<VideoDecoder> video_decoders;
276 #if !defined(MEDIA_DISABLE_LIBVPX) 286 #if !defined(MEDIA_DISABLE_LIBVPX)
277 video_decoders.push_back(new VpxVideoDecoder()); 287 video_decoders.push_back(new VpxVideoDecoder());
278 #endif // !defined(MEDIA_DISABLE_LIBVPX) 288 #endif // !defined(MEDIA_DISABLE_LIBVPX)
279 289
280 #if !defined(MEDIA_DISABLE_FFMPEG) 290 #if !defined(MEDIA_DISABLE_FFMPEG)
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
373 DCHECK(clockless_playback_); 383 DCHECK(clockless_playback_);
374 return clockless_audio_sink_->render_time(); 384 return clockless_audio_sink_->render_time();
375 } 385 }
376 386
377 base::TimeTicks DummyTickClock::NowTicks() { 387 base::TimeTicks DummyTickClock::NowTicks() {
378 now_ += base::TimeDelta::FromSeconds(60); 388 now_ += base::TimeDelta::FromSeconds(60);
379 return now_; 389 return now_;
380 } 390 }
381 391
382 } // namespace media 392 } // namespace media
OLDNEW
« media/filters/media_source_state.cc ('K') | « media/test/pipeline_integration_test_base.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698