DASH Media Packaging SDK
 All Classes Namespaces Functions Variables Typedefs Enumerator
hevc_decoder_configuration.h
1 // Copyright 2015 Google Inc. All rights reserved.
2 //
3 // Use of this source code is governed by a BSD-style
4 // license that can be found in the LICENSE file or at
5 // https://developers.google.com/open-source/licenses/bsd
6 
7 #ifndef MEDIA_FILTERS_HEVC_DECODER_CONFIGURATION_H_
8 #define MEDIA_FILTERS_HEVC_DECODER_CONFIGURATION_H_
9 
10 #include <stdint.h>
11 #include <string>
12 #include <vector>
13 
14 #include "packager/base/macros.h"
15 #include "packager/media/base/video_stream_info.h"
16 #include "packager/media/filters/decoder_configuration.h"
17 
18 namespace edash_packager {
19 namespace media {
20 
23  public:
25  ~HEVCDecoderConfiguration() override;
26 
28  std::string GetCodecString(VideoCodec codec) const;
29 
30  private:
31  bool ParseInternal() override;
32 
33  uint8_t version_;
34  uint8_t general_profile_space_;
35  bool general_tier_flag_;
36  uint8_t general_profile_idc_;
37  uint32_t general_profile_compatibility_flags_;
38  std::vector<uint8_t> general_constraint_indicator_flags_;
39  uint8_t general_level_idc_;
40 
41  DISALLOW_COPY_AND_ASSIGN(HEVCDecoderConfiguration);
42 };
43 
44 } // namespace media
45 } // namespace edash_packager
46 
47 #endif // MEDIA_FILTERS_HEVC_DECODER_CONFIGURATION_H_
Class for parsing HEVC decoder configuration.