MythTV master
|
#include <libmythtv/mpeg/HEVCParser.h>
Classes | |
struct | PPS |
struct | ScalingList |
struct | ShortTermRefPicSet |
struct | SPS |
struct | VPS |
Public Member Functions | |
HEVCParser (void) | |
HEVCParser (const HEVCParser &rhs) | |
~HEVCParser (void) override | |
uint32_t | addBytes (const uint8_t *bytes, uint32_t byte_count, uint64_t stream_offset) override |
void | Reset (void) override |
QString | NAL_type_str (int8_t type) override |
uint | pictureWidthCropped (void) const override |
uint | pictureHeightCropped (void) const override |
field_type | getFieldType (void) const override |
MythAVRational | getFrameRate () const override |
![]() | |
H2645Parser (void) | |
H2645Parser (const H2645Parser &rhs) | |
virtual | ~H2645Parser (void) |
virtual uint32_t | addBytes (const uint8_t *bytes, uint32_t byte_count, uint64_t stream_offset)=0 |
virtual void | Reset (void) |
virtual QString | NAL_type_str (int8_t type)=0 |
bool | stateChanged (void) const |
bool | onFrameStart (void) const |
bool | onKeyFrameStart (void) const |
uint | pictureWidth (void) const |
uint | pictureHeight (void) const |
virtual uint | pictureWidthCropped (void) const =0 |
virtual uint | pictureHeightCropped (void) const =0 |
uint | aspectRatio (void) const |
Computes aspect ratio from picture size and sample aspect ratio. More... | |
virtual MythAVRational | getFrameRate () const =0 |
virtual field_type | getFieldType (void) const =0 |
uint64_t | frameAUstreamOffset (void) const |
uint64_t | keyframeAUstreamOffset (void) const |
uint64_t | SPSstreamOffset (void) const |
uint32_t | GetTimeScale (void) const |
uint32_t | GetUnitsInTick (void) const |
SCAN_t | GetScanType (void) const |
Static Public Member Functions | |
static bool | NALisRAP (uint type) |
static bool | NALisIRAP (uint type) |
static bool | NALisVCL (uint type) |
Protected Member Functions | |
bool | newAU (void) |
void | processRBSP (bool rbsp_complete) |
bool | profileTierLevel (BitReader &br, bool profilePresentFlag, int maxNumSubLayersMinus1) |
bool | parseSliceSegmentLayer (BitReader &br) |
bool | parseSliceSegmentHeader (BitReader &br) |
bool | parseSPS (BitReader &br) |
bool | parseVPS (BitReader &br) |
bool | parsePPS (BitReader &br) |
![]() | |
void | resetRBSP (void) |
bool | fillRBSP (const uint8_t *byteP, uint32_t byte_count, bool found_start_code) |
void | vui_parameters (BitReader &br, bool hevc) |
Private Attributes | |
uint32_t | m_maxPicOrderCntLsb {0} |
uint32_t | m_picOrderCntMsb {0} |
uint32_t | m_picOrderCntVal {0} |
uint32_t | m_prevPicOrderCntLsb {0} |
uint32_t | m_prevPicOrderCntMsb {0} |
uint32_t | m_resolutionCheck {0} |
uint | m_nalUnitType {UNSPEC63} |
uint8_t | m_nalTemperalId {0} |
uint8_t | m_nuhLayerId {0} |
bool | m_firstSliceSegmentInPicFlag {false} |
bool | m_nextNALisAU {false} |
bool | m_noRaslOutputFlag {false} |
bool | m_seenEOS {true} |
std::map< uint, SPS > | m_sps |
std::map< uint, PPS > | m_pps |
std::map< uint, VPS > | m_vps |
std::map< uint, uint > | m_poc |
Definition at line 32 of file HEVCParser.h.
enum HEVCParser::NAL_unit_type : std::uint8_t |
Definition at line 36 of file HEVCParser.h.
enum HEVCParser::QuantMatrixSize : std::uint8_t |
Enumerator | |
---|---|
QUANT_MATIX_4X4 | |
QUANT_MATIX_8X8 | |
QUANT_MATIX_16X16 | |
QUANT_MATIX_32X32 |
Definition at line 206 of file HEVCParser.h.
|
inline |
Definition at line 215 of file HEVCParser.h.
HEVCParser::HEVCParser | ( | const HEVCParser & | rhs | ) |
|
inlineoverride |
Definition at line 217 of file HEVCParser.h.
|
overridevirtual |
Implements H2645Parser.
Definition at line 126 of file HEVCParser.cpp.
|
inlineoverridevirtual |
Implements H2645Parser.
Definition at line 255 of file HEVCParser.h.
|
overridevirtual |
Implements H2645Parser.
Definition at line 2070 of file HEVCParser.cpp.
|
overridevirtual |
Definition at line 234 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader(), and processRBSP().
Definition at line 224 of file HEVCParser.h.
Definition at line 239 of file HEVCParser.h.
Referenced by addBytes(), newAU(), and processRBSP().
|
protected |
Definition at line 248 of file HEVCParser.cpp.
Referenced by processRBSP().
Definition at line 1965 of file HEVCParser.cpp.
Definition at line 1248 of file HEVCParser.cpp.
Referenced by parseSliceSegmentLayer().
Definition at line 1231 of file HEVCParser.cpp.
Referenced by processRBSP().
Definition at line 1575 of file HEVCParser.cpp.
Referenced by processRBSP().
Definition at line 1832 of file HEVCParser.cpp.
Referenced by processRBSP().
|
overridevirtual |
Implements H2645Parser.
Definition at line 2060 of file HEVCParser.cpp.
|
overridevirtual |
Implements H2645Parser.
Definition at line 2049 of file HEVCParser.cpp.
|
protected |
Definition at line 457 of file HEVCParser.cpp.
Referenced by addBytes().
|
protected |
Definition at line 576 of file HEVCParser.cpp.
Referenced by parseSPS(), and parseVPS().
|
overridevirtual |
Reimplemented from H2645Parser.
Definition at line 45 of file HEVCParser.cpp.
Definition at line 283 of file HEVCParser.h.
Referenced by newAU(), and parseSliceSegmentHeader().
|
private |
Definition at line 271 of file HEVCParser.h.
|
private |
Definition at line 280 of file HEVCParser.h.
Referenced by addBytes().
Definition at line 278 of file HEVCParser.h.
Referenced by addBytes(), newAU(), parseSliceSegmentHeader(), and processRBSP().
Definition at line 284 of file HEVCParser.h.
Referenced by newAU().
Definition at line 285 of file HEVCParser.h.
Referenced by newAU(), and parseSliceSegmentHeader().
|
private |
Definition at line 281 of file HEVCParser.h.
Referenced by addBytes(), newAU(), and parseSPS().
|
private |
Definition at line 272 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader().
|
private |
Definition at line 273 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader().
Definition at line 291 of file HEVCParser.h.
Referenced by parseSPS().
Definition at line 289 of file HEVCParser.h.
Referenced by parsePPS(), and parseSliceSegmentHeader().
|
private |
Definition at line 274 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader().
|
private |
Definition at line 275 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader().
|
private |
Definition at line 276 of file HEVCParser.h.
Referenced by parseSPS().
Definition at line 286 of file HEVCParser.h.
Referenced by newAU().
Definition at line 288 of file HEVCParser.h.
Referenced by parseSliceSegmentHeader(), and parseSPS().
Definition at line 290 of file HEVCParser.h.
Referenced by parseSPS(), and parseVPS().