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

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: CR feedback Created 5 years, 6 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/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 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 DVLOG(1) << "Unknown AudioCodec: " << audio_codec; 146 DVLOG(1) << "Unknown AudioCodec: " << audio_codec;
147 } 147 }
148 return AV_CODEC_ID_NONE; 148 return AV_CODEC_ID_NONE;
149 } 149 }
150 150
151 // Converts an FFmpeg video codec ID into its corresponding supported codec id. 151 // Converts an FFmpeg video codec ID into its corresponding supported codec id.
152 static VideoCodec CodecIDToVideoCodec(AVCodecID codec_id) { 152 static VideoCodec CodecIDToVideoCodec(AVCodecID codec_id) {
153 switch (codec_id) { 153 switch (codec_id) {
154 case AV_CODEC_ID_H264: 154 case AV_CODEC_ID_H264:
155 return kCodecH264; 155 return kCodecH264;
156 #if defined(ENABLE_HEVC_DEMUXING)
157 case AV_CODEC_ID_HEVC:
158 return kCodecHEVC;
159 #endif
156 case AV_CODEC_ID_THEORA: 160 case AV_CODEC_ID_THEORA:
157 return kCodecTheora; 161 return kCodecTheora;
158 case AV_CODEC_ID_MPEG4: 162 case AV_CODEC_ID_MPEG4:
159 return kCodecMPEG4; 163 return kCodecMPEG4;
160 case AV_CODEC_ID_VP8: 164 case AV_CODEC_ID_VP8:
161 return kCodecVP8; 165 return kCodecVP8;
162 case AV_CODEC_ID_VP9: 166 case AV_CODEC_ID_VP9:
163 return kCodecVP9; 167 return kCodecVP9;
164 default: 168 default:
165 DVLOG(1) << "Unknown video CodecID: " << codec_id; 169 DVLOG(1) << "Unknown video CodecID: " << codec_id;
166 } 170 }
167 return kUnknownVideoCodec; 171 return kUnknownVideoCodec;
168 } 172 }
169 173
170 static AVCodecID VideoCodecToCodecID(VideoCodec video_codec) { 174 static AVCodecID VideoCodecToCodecID(VideoCodec video_codec) {
171 switch (video_codec) { 175 switch (video_codec) {
172 case kCodecH264: 176 case kCodecH264:
173 return AV_CODEC_ID_H264; 177 return AV_CODEC_ID_H264;
178 #if defined(ENABLE_HEVC_DEMUXING)
179 case kCodecHEVC:
180 return AV_CODEC_ID_HEVC;
181 #endif
174 case kCodecTheora: 182 case kCodecTheora:
175 return AV_CODEC_ID_THEORA; 183 return AV_CODEC_ID_THEORA;
176 case kCodecMPEG4: 184 case kCodecMPEG4:
177 return AV_CODEC_ID_MPEG4; 185 return AV_CODEC_ID_MPEG4;
178 case kCodecVP8: 186 case kCodecVP8:
179 return AV_CODEC_ID_VP8; 187 return AV_CODEC_ID_VP8;
180 case kCodecVP9: 188 case kCodecVP9:
181 return AV_CODEC_ID_VP9; 189 return AV_CODEC_ID_VP9;
182 default: 190 default:
183 DVLOG(1) << "Unknown VideoCodec: " << video_codec; 191 DVLOG(1) << "Unknown VideoCodec: " << video_codec;
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
590 return false; 598 return false;
591 599
592 *out = parsed_time; 600 *out = parsed_time;
593 return true; 601 return true;
594 } 602 }
595 603
596 return false; 604 return false;
597 } 605 }
598 606
599 } // namespace media 607 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698