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

Unified Diff: media/filters/ffmpeg_video_decoder.cc

Issue 8341033: Remove DemuxerStream::GetAVStream() once and for all. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: now with cmath Created 9 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/filters/ffmpeg_demuxer_unittest.cc ('k') | media/filters/ffmpeg_video_decoder_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/filters/ffmpeg_video_decoder.cc
diff --git a/media/filters/ffmpeg_video_decoder.cc b/media/filters/ffmpeg_video_decoder.cc
index d5402279f7548d75c54ba2f5516dd704e8b4ff65..998eea9bf4bc97b55084ed751ed22b9d671e048a 100644
--- a/media/filters/ffmpeg_video_decoder.cc
+++ b/media/filters/ffmpeg_video_decoder.cc
@@ -58,22 +58,11 @@ void FFmpegVideoDecoder::Initialize(DemuxerStream* demuxer_stream,
initialize_callback_ = callback;
statistics_callback_ = stats_callback;
- AVStream* av_stream = demuxer_stream->GetAVStream();
- if (!av_stream) {
- OnInitializeComplete(false);
- return;
- }
+ const VideoDecoderConfig& config = demuxer_stream->video_decoder_config();
- pts_stream_.Initialize(GetFrameDuration(av_stream));
+ pts_stream_.Initialize(GetFrameDuration(config));
- gfx::Size coded_size(
- av_stream->codec->coded_width, av_stream->codec->coded_height);
- // TODO(vrk): This assumes decoded frame data starts at (0, 0), which is true
- // for now, but may not always be true forever. Fix this in the future.
- gfx::Rect visible_rect(
- av_stream->codec->width, av_stream->codec->height);
-
- natural_size_ = GetNaturalSize(av_stream);
+ natural_size_ = config.natural_size();
if (natural_size_.width() > Limits::kMaxDimension ||
natural_size_.height() > Limits::kMaxDimension ||
natural_size_.GetArea() > Limits::kMaxCanvas) {
@@ -81,14 +70,6 @@ void FFmpegVideoDecoder::Initialize(DemuxerStream* demuxer_stream,
return;
}
- VideoDecoderConfig config(CodecIDToVideoCodec(av_stream->codec->codec_id),
- PixelFormatToVideoFormat(av_stream->codec->pix_fmt),
- coded_size, visible_rect,
- av_stream->r_frame_rate.num,
- av_stream->r_frame_rate.den,
- av_stream->codec->extradata,
- av_stream->codec->extradata_size);
-
state_ = kInitializing;
decode_engine_->Initialize(message_loop_, this, NULL, config);
}
« no previous file with comments | « media/filters/ffmpeg_demuxer_unittest.cc ('k') | media/filters/ffmpeg_video_decoder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698