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

Side by Side Diff: media/cast/test/fake_media_source.cc

Issue 1304973005: Refactor AudioParameters member setting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: dalecurtis comments. Created 5 years, 3 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/cast/test/fake_media_source.h" 5 #include "media/cast/test/fake_media_source.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/files/scoped_file.h" 8 #include "base/files/scoped_file.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/rand_util.h" 10 #include "base/rand_util.h"
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 LOG(ERROR) << "Unsupported audio channels layout."; 158 LOG(ERROR) << "Unsupported audio channels layout.";
159 continue; 159 continue;
160 } 160 }
161 if (audio_stream_index_ != -1) { 161 if (audio_stream_index_ != -1) {
162 LOG(WARNING) << "Found multiple audio streams."; 162 LOG(WARNING) << "Found multiple audio streams.";
163 } 163 }
164 audio_stream_index_ = static_cast<int>(i); 164 audio_stream_index_ = static_cast<int>(i);
165 source_audio_params_.Reset( 165 source_audio_params_.Reset(
166 AudioParameters::AUDIO_PCM_LINEAR, 166 AudioParameters::AUDIO_PCM_LINEAR,
167 layout, 167 layout,
168 av_codec_context->channels,
169 av_codec_context->sample_rate, 168 av_codec_context->sample_rate,
170 8 * av_get_bytes_per_sample(av_codec_context->sample_fmt), 169 8 * av_get_bytes_per_sample(av_codec_context->sample_fmt),
171 av_codec_context->sample_rate / kAudioPacketsPerSecond); 170 av_codec_context->sample_rate / kAudioPacketsPerSecond);
171 source_audio_params_.set_channels_for_discrete(
172 av_codec_context->channels);
172 CHECK(source_audio_params_.IsValid()); 173 CHECK(source_audio_params_.IsValid());
173 LOG(INFO) << "Source file has audio."; 174 LOG(INFO) << "Source file has audio.";
174 } else if (av_codec->type == AVMEDIA_TYPE_VIDEO) { 175 } else if (av_codec->type == AVMEDIA_TYPE_VIDEO) {
175 VideoPixelFormat format = 176 VideoPixelFormat format =
176 AVPixelFormatToVideoPixelFormat(av_codec_context->pix_fmt); 177 AVPixelFormatToVideoPixelFormat(av_codec_context->pix_fmt);
177 if (format != PIXEL_FORMAT_YV12) { 178 if (format != PIXEL_FORMAT_YV12) {
178 LOG(ERROR) << "Cannot handle non YV12 video format: " << format; 179 LOG(ERROR) << "Cannot handle non YV12 video format: " << format;
179 continue; 180 continue;
180 } 181 }
181 if (video_stream_index_ != -1) { 182 if (video_stream_index_ != -1) {
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 bus.Pass(), start_time_ + audio_time); 369 bus.Pass(), start_time_ + audio_time);
369 370
370 // Make sure queue is not empty. 371 // Make sure queue is not empty.
371 Decode(true); 372 Decode(true);
372 return true; 373 return true;
373 } 374 }
374 375
375 void FakeMediaSource::SendNextFrame() { 376 void FakeMediaSource::SendNextFrame() {
376 // Send as much as possible. Audio is sent according to 377 // Send as much as possible. Audio is sent according to
377 // system time. 378 // system time.
378 while (SendNextTranscodedAudio(clock_->NowTicks() - start_time_)); 379 while (SendNextTranscodedAudio(clock_->NowTicks() - start_time_)) {
380 }
379 381
380 // Video is sync'ed to audio. 382 // Video is sync'ed to audio.
381 while (SendNextTranscodedVideo(audio_sent_ts_->GetTimestamp())); 383 while (SendNextTranscodedVideo(audio_sent_ts_->GetTimestamp())) {
384 }
382 385
383 if (audio_bus_queue_.empty() && video_frame_queue_.empty()) { 386 if (audio_bus_queue_.empty() && video_frame_queue_.empty()) {
384 // Both queues are empty can only mean that we have reached 387 // Both queues are empty can only mean that we have reached
385 // the end of the stream. 388 // the end of the stream.
386 LOG(INFO) << "Rewind."; 389 LOG(INFO) << "Rewind.";
387 Rewind(); 390 Rewind();
388 } 391 }
389 392
390 // Send next send. 393 // Send next send.
391 task_runner_->PostDelayedTask( 394 task_runner_->PostDelayedTask(
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
610 AVCodecContext* FakeMediaSource::av_audio_context() { 613 AVCodecContext* FakeMediaSource::av_audio_context() {
611 return av_audio_stream()->codec; 614 return av_audio_stream()->codec;
612 } 615 }
613 616
614 AVCodecContext* FakeMediaSource::av_video_context() { 617 AVCodecContext* FakeMediaSource::av_video_context() {
615 return av_video_stream()->codec; 618 return av_video_stream()->codec;
616 } 619 }
617 620
618 } // namespace cast 621 } // namespace cast
619 } // namespace media 622 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698