// AUTOGENERATED COPYRIGHT HEADER START // Copyright (C) 2020-2023 Michael Fabian 'Xaymar' Dirks // AUTOGENERATED COPYRIGHT HEADER END #pragma once #include "common.hpp" // Codec: HEVC #define S_CODEC_HEVC "Codec.HEVC" #define S_CODEC_HEVC_PROFILE "Codec.HEVC.Profile" #define S_CODEC_HEVC_TIER "Codec.HEVC.Tier" #define S_CODEC_HEVC_LEVEL "Codec.HEVC.Level" namespace streamfx::encoder::codec::hevc { enum class profile { MAIN, MAIN10, RANGE_EXTENDED, UNKNOWN = -1, }; enum class tier { MAIN, HIGH, UNKNOWN = -1, }; enum class level { L1_0 = 30, L2_0 = 60, L2_1 = 63, L3_0 = 90, L3_1 = 93, L4_0 = 120, L4_1 = 123, L5_0 = 150, L5_1 = 153, L5_2 = 156, L6_0 = 180, L6_1 = 183, L6_2 = 186, UNKNOWN = -1, }; void extract_header_sei(uint8_t* data, std::size_t sz_data, std::vector& header, std::vector& sei); } // namespace streamfx::encoder::codec::hevc