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

Side by Side Diff: media/ffmpeg/ffmpeg_common.cc

Issue 10830110: Remove VideoDecoderConfig::aspect_ratio_xxx methods. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed comments & rebased Created 8 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « media/base/video_util.cc ('k') | media/filters/ffmpeg_demuxer_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/ffmpeg/ffmpeg_common.h" 5 #include "media/ffmpeg/ffmpeg_common.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "media/base/video_util.h"
8 9
9 namespace media { 10 namespace media {
10 11
11 static const AVRational kMicrosBase = { 1, base::Time::kMicrosecondsPerSecond }; 12 static const AVRational kMicrosBase = { 1, base::Time::kMicrosecondsPerSecond };
12 13
13 base::TimeDelta ConvertFromTimeBase(const AVRational& time_base, 14 base::TimeDelta ConvertFromTimeBase(const AVRational& time_base,
14 int64 timestamp) { 15 int64 timestamp) {
15 int64 microseconds = av_rescale_q(timestamp, time_base, kMicrosBase); 16 int64 microseconds = av_rescale_q(timestamp, time_base, kMicrosBase);
16 return base::TimeDelta::FromMicroseconds(microseconds); 17 return base::TimeDelta::FromMicroseconds(microseconds);
17 } 18 }
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 244
244 AVRational aspect_ratio = { 1, 1 }; 245 AVRational aspect_ratio = { 1, 1 };
245 if (stream->sample_aspect_ratio.num) 246 if (stream->sample_aspect_ratio.num)
246 aspect_ratio = stream->sample_aspect_ratio; 247 aspect_ratio = stream->sample_aspect_ratio;
247 else if (stream->codec->sample_aspect_ratio.num) 248 else if (stream->codec->sample_aspect_ratio.num)
248 aspect_ratio = stream->codec->sample_aspect_ratio; 249 aspect_ratio = stream->codec->sample_aspect_ratio;
249 250
250 VideoCodec codec = CodecIDToVideoCodec(stream->codec->codec_id); 251 VideoCodec codec = CodecIDToVideoCodec(stream->codec->codec_id);
251 VideoCodecProfile profile = (codec == kCodecVP8) ? VP8PROFILE_MAIN : 252 VideoCodecProfile profile = (codec == kCodecVP8) ? VP8PROFILE_MAIN :
252 ProfileIDToVideoCodecProfile(stream->codec->profile); 253 ProfileIDToVideoCodecProfile(stream->codec->profile);
254 gfx::Size natural_size = GetNaturalSize(
255 visible_rect.size(), aspect_ratio.num, aspect_ratio.den);
253 config->Initialize(codec, 256 config->Initialize(codec,
254 profile, 257 profile,
255 PixelFormatToVideoFormat(stream->codec->pix_fmt), 258 PixelFormatToVideoFormat(stream->codec->pix_fmt),
256 coded_size, visible_rect, 259 coded_size, visible_rect, natural_size,
257 aspect_ratio.num,
258 aspect_ratio.den,
259 stream->codec->extradata, 260 stream->codec->extradata,
260 stream->codec->extradata_size, 261 stream->codec->extradata_size,
261 true); 262 true);
262 } 263 }
263 264
264 void VideoDecoderConfigToAVCodecContext( 265 void VideoDecoderConfigToAVCodecContext(
265 const VideoDecoderConfig& config, 266 const VideoDecoderConfig& config,
266 AVCodecContext* codec_context) { 267 AVCodecContext* codec_context) {
267 codec_context->codec_type = AVMEDIA_TYPE_VIDEO; 268 codec_context->codec_type = AVMEDIA_TYPE_VIDEO;
268 codec_context->codec_id = VideoCodecToCodecID(config.codec()); 269 codec_context->codec_id = VideoCodecToCodecID(config.codec());
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
374 avcodec_close(stream->codec); 375 avcodec_close(stream->codec);
375 } 376 }
376 } 377 }
377 } 378 }
378 379
379 // Then finally cleanup the format context. 380 // Then finally cleanup the format context.
380 avformat_close_input(&format_context); 381 avformat_close_input(&format_context);
381 } 382 }
382 383
383 } // namespace media 384 } // namespace media
OLDNEW
« no previous file with comments | « media/base/video_util.cc ('k') | media/filters/ffmpeg_demuxer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698