Home | History | Annotate | Download | only in vda
      1 // Copyright 2015 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 // Note: ported from Chromium commit head: b03fc92
      5 // Note: only necessary functions are ported.
      6 
      7 #include "video_codecs.h"
      8 
      9 #include "base/logging.h"
     10 
     11 namespace media {
     12 
     13 std::string GetProfileName(VideoCodecProfile profile) {
     14   switch (profile) {
     15     case VIDEO_CODEC_PROFILE_UNKNOWN:
     16       return "unknown";
     17     case H264PROFILE_BASELINE:
     18       return "h264 baseline";
     19     case H264PROFILE_MAIN:
     20       return "h264 main";
     21     case H264PROFILE_EXTENDED:
     22       return "h264 extended";
     23     case H264PROFILE_HIGH:
     24       return "h264 high";
     25     case H264PROFILE_HIGH10PROFILE:
     26       return "h264 high 10";
     27     case H264PROFILE_HIGH422PROFILE:
     28       return "h264 high 4:2:2";
     29     case H264PROFILE_HIGH444PREDICTIVEPROFILE:
     30       return "h264 high 4:4:4 predictive";
     31     case H264PROFILE_SCALABLEBASELINE:
     32       return "h264 scalable baseline";
     33     case H264PROFILE_SCALABLEHIGH:
     34       return "h264 scalable high";
     35     case H264PROFILE_STEREOHIGH:
     36       return "h264 stereo high";
     37     case H264PROFILE_MULTIVIEWHIGH:
     38       return "h264 multiview high";
     39     case HEVCPROFILE_MAIN:
     40       return "hevc main";
     41     case HEVCPROFILE_MAIN10:
     42       return "hevc main 10";
     43     case HEVCPROFILE_MAIN_STILL_PICTURE:
     44       return "hevc main still-picture";
     45     case VP8PROFILE_ANY:
     46       return "vp8";
     47     case VP9PROFILE_PROFILE0:
     48       return "vp9 profile0";
     49     case VP9PROFILE_PROFILE1:
     50       return "vp9 profile1";
     51     case VP9PROFILE_PROFILE2:
     52       return "vp9 profile2";
     53     case VP9PROFILE_PROFILE3:
     54       return "vp9 profile3";
     55     case DOLBYVISION_PROFILE0:
     56       return "dolby vision profile 0";
     57     case DOLBYVISION_PROFILE4:
     58       return "dolby vision profile 4";
     59     case DOLBYVISION_PROFILE5:
     60       return "dolby vision profile 5";
     61     case DOLBYVISION_PROFILE7:
     62       return "dolby vision profile 7";
     63   }
     64   NOTREACHED();
     65   return "";
     66 }
     67 
     68 }  // namespace media
     69