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

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

Issue 816353010: Implemented HEVC video demuxing and parsing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Moved back h265_parser_unittest.cc in media/BUILD.gn 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
« no previous file with comments | « media/base/video_decoder_config.cc ('k') | media/filters/ffmpeg_demuxer.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/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/metrics/histogram.h" 9 #include "base/metrics/histogram.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 DVLOG(1) << "Unknown AudioCodec: " << audio_codec; 147 DVLOG(1) << "Unknown AudioCodec: " << audio_codec;
148 } 148 }
149 return AV_CODEC_ID_NONE; 149 return AV_CODEC_ID_NONE;
150 } 150 }
151 151
152 // Converts an FFmpeg video codec ID into its corresponding supported codec id. 152 // Converts an FFmpeg video codec ID into its corresponding supported codec id.
153 static VideoCodec CodecIDToVideoCodec(AVCodecID codec_id) { 153 static VideoCodec CodecIDToVideoCodec(AVCodecID codec_id) {
154 switch (codec_id) { 154 switch (codec_id) {
155 case AV_CODEC_ID_H264: 155 case AV_CODEC_ID_H264:
156 return kCodecH264; 156 return kCodecH264;
157 #if defined(ENABLE_HEVC_DEMUXING)
158 case AV_CODEC_ID_HEVC:
159 return kCodecHEVC;
160 #endif
157 case AV_CODEC_ID_THEORA: 161 case AV_CODEC_ID_THEORA:
158 return kCodecTheora; 162 return kCodecTheora;
159 case AV_CODEC_ID_MPEG4: 163 case AV_CODEC_ID_MPEG4:
160 return kCodecMPEG4; 164 return kCodecMPEG4;
161 case AV_CODEC_ID_VP8: 165 case AV_CODEC_ID_VP8:
162 return kCodecVP8; 166 return kCodecVP8;
163 case AV_CODEC_ID_VP9: 167 case AV_CODEC_ID_VP9:
164 return kCodecVP9; 168 return kCodecVP9;
165 default: 169 default:
166 DVLOG(1) << "Unknown video CodecID: " << codec_id; 170 DVLOG(1) << "Unknown video CodecID: " << codec_id;
167 } 171 }
168 return kUnknownVideoCodec; 172 return kUnknownVideoCodec;
169 } 173 }
170 174
171 AVCodecID VideoCodecToCodecID(VideoCodec video_codec) { 175 AVCodecID VideoCodecToCodecID(VideoCodec video_codec) {
172 switch (video_codec) { 176 switch (video_codec) {
173 case kCodecH264: 177 case kCodecH264:
174 return AV_CODEC_ID_H264; 178 return AV_CODEC_ID_H264;
179 #if defined(ENABLE_HEVC_DEMUXING)
180 case kCodecHEVC:
181 return AV_CODEC_ID_HEVC;
182 #endif
175 case kCodecTheora: 183 case kCodecTheora:
176 return AV_CODEC_ID_THEORA; 184 return AV_CODEC_ID_THEORA;
177 case kCodecMPEG4: 185 case kCodecMPEG4:
178 return AV_CODEC_ID_MPEG4; 186 return AV_CODEC_ID_MPEG4;
179 case kCodecVP8: 187 case kCodecVP8:
180 return AV_CODEC_ID_VP8; 188 return AV_CODEC_ID_VP8;
181 case kCodecVP9: 189 case kCodecVP9:
182 return AV_CODEC_ID_VP9; 190 return AV_CODEC_ID_VP9;
183 default: 191 default:
184 DVLOG(1) << "Unknown VideoCodec: " << video_codec; 192 DVLOG(1) << "Unknown VideoCodec: " << video_codec;
(...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after
630 return false; 638 return false;
631 639
632 *out = parsed_time; 640 *out = parsed_time;
633 return true; 641 return true;
634 } 642 }
635 643
636 return false; 644 return false;
637 } 645 }
638 646
639 } // namespace media 647 } // namespace media
OLDNEW
« no previous file with comments | « media/base/video_decoder_config.cc ('k') | media/filters/ffmpeg_demuxer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698