MythTV  master
Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
H264Parser Class Reference

#include <H264Parser.h>

Collaboration diagram for H264Parser:
Collaboration graph
[legend]

Public Types

enum  { MAX_SLICE_HEADER_SIZE = 256 }
 
enum  NAL_unit_type {
  UNKNOWN = 0, SLICE = 1, SLICE_DPA = 2, SLICE_DPB = 3,
  SLICE_DPC = 4, SLICE_IDR = 5, SEI = 6, SPS = 7,
  PPS = 8, AU_DELIMITER = 9, END_SEQUENCE = 10, END_STREAM = 11,
  FILLER_DATA = 12, SPS_EXT = 13, NALU_prefix = 14, SPS_subset = 15,
  AUXILIARY_SLICE = 19, SLICE_EXTENSION = 20
}
 
enum  SEI_type { SEI_TYPE_PIC_TIMING = 1, SEI_FILLER_PAYLOAD = 3, SEI_TYPE_USER_DATA_UNREGISTERED = 5, SEI_TYPE_RECOVERY_POINT = 6 }
 
enum  SLICE_type {
  SLICE_P = 0, SLICE_B = 1, SLICE_I = 2, SLICE_SP = 3,
  SLICE_SI = 4, SLICE_P_a = 5, SLICE_B_a = 6, SLICE_I_a = 7,
  SLICE_SP_a = 8, SLICE_SI_a = 9, SLICE_UNDEF = 10
}
 
enum  frame_type { FRAME = 'F', FIELD_TOP = 'T', FIELD_BOTTOM = 'B' }
 

Public Member Functions

 H264Parser (void)
 
 H264Parser (const H264Parser &rhs)
 
 ~H264Parser (void)
 
uint32_t addBytes (const uint8_t *bytes, const uint32_t byte_count, const uint64_t stream_offset)
 
void Reset (void)
 
bool stateChanged (void) const
 
uint8_t lastNALtype (void) const
 
frame_type FieldType (void) const
 
bool onFrameStart (void) const
 
bool onKeyFrameStart (void) const
 
uint pictureWidth (void) const
 
uint pictureHeight (void) const
 
uint pictureWidthCropped (void) const
 
uint pictureHeightCropped (void) const
 
uint aspectRatio (void) const
 Computes aspect ratio from picture size and sample aspect ratio. More...
 
double frameRate (void) const
 
void getFrameRate (FrameRate &result) const
 
uint getRefFrames (void) const
 
uint64_t frameAUstreamOffset (void) const
 
uint64_t keyframeAUstreamOffset (void) const
 
uint64_t SPSstreamOffset (void) const
 
void use_I_forKeyframes (bool val)
 
bool using_I_forKeyframes (void) const
 
uint32_t GetTimeScale (void) const
 
uint32_t GetUnitsInTick (void) const
 
void parse_SPS (uint8_t *sps, uint32_t sps_size, bool &interlaced, int32_t &max_ref_frames)
 
void reset_SPS (void)
 
bool seen_SPS (void) const
 
bool found_AU (void) const
 

Static Public Member Functions

static QString NAL_type_str (uint8_t type)
 
static bool isKeySlice (uint slice_type)
 
static bool NALisSlice (uint8_t nal_type)
 

Private Types

enum  constants { EXTENDED_SAR = 255 }
 

Private Member Functions

void set_AU_pending (void)
 
bool new_AU (void)
 
void resetRBSP (void)
 
bool fillRBSP (const uint8_t *byteP, uint32_t byte_count, bool found_start_code)
 
void processRBSP (bool rbsp_complete)
 
bool decode_Header (GetBitContext *gb)
 
void decode_SPS (GetBitContext *gb)
 
void decode_PPS (GetBitContext *gb)
 
void decode_SEI (GetBitContext *gb)
 
void vui_parameters (GetBitContext *gb)
 

Private Attributes

bool m_auPending {false}
 
bool m_stateChanged {false}
 
bool m_seenSps {false}
 
bool m_auContainsKeyframeMessage {false}
 
bool m_isKeyframe {false}
 
bool m_iIsKeyframe {true}
 
uint32_t m_syncAccumulator {0xffffffff}
 
uint8_t * m_rbspBuffer {nullptr}
 
uint32_t m_rbspBufferSize {188 * 2}
 
uint32_t m_rbspIndex {0}
 
uint32_t m_consecutiveZeros {0}
 
bool m_haveUnfinishedNAL {false}
 
int m_prevFrameNum {-1}
 
int m_frameNum {-1}
 
uint m_sliceType {SLICE_UNDEF}
 
int m_prevPicParameterSetId {-1}
 
int m_picParameterSetId {-1}
 
int8_t m_prevFieldPicFlag {-1}
 
int8_t m_fieldPicFlag {-1}
 
int8_t m_prevBottomFieldFlag {-1}
 
int8_t m_bottomFieldFlag {-1}
 
uint8_t m_prevNALRefIdc {111}
 
uint8_t m_nalRefIdc {111}
 
uint8_t m_prevPicOrderCntType {0}
 
uint8_t m_picOrderCntType {0}
 
int m_prevPicOrderCntLsb {0}
 
int m_picOrderCntLsb {0}
 
int m_prevDeltaPicOrderCntBottom {0}
 
int m_deltaPicOrderCntBottom {0}
 
int m_prevDeltaPicOrderCnt [2] {0}
 
int m_deltaPicOrderCnt [2] {0}
 
uint8_t m_prevNalUnitType {UNKNOWN}
 
uint8_t m_nalUnitType {UNKNOWN}
 
uint m_prevIdrPicId {65536}
 
uint m_idrPicId {65536}
 
uint m_log2MaxFrameNum {0}
 
uint m_log2MaxPicOrderCntLsb {0}
 
uint m_seqParameterSetId {0}
 
uint8_t m_deltaPicOrderAlwaysZeroFlag {0}
 
uint8_t m_separateColourPlaneFlag {0}
 
int8_t m_frameMbsOnlyFlag {-1}
 
int8_t m_picOrderPresentFlag {-1}
 
int8_t m_redundantPicCntPresentFlag {0}
 
int8_t m_chromaFormatIdc {1}
 
uint m_numRefFrames {0}
 
uint m_redundantPicCnt {0}
 
uint m_picWidth {0}
 
uint m_picHeight {0}
 
uint m_frameCropLeftOffset {0}
 
uint m_frameCropRightOffset {0}
 
uint m_frameCropTopOffset {0}
 
uint m_frameCropBottomOffset {0}
 
uint8_t m_aspectRatioIdc {0}
 
uint m_sarWidth {0}
 
uint m_sarHeight {0}
 
uint32_t m_unitsInTick {0}
 
uint32_t m_timeScale {0}
 
bool m_fixedRate {false}
 
uint64_t m_pktOffset {0}
 
uint64_t m_auOffset {0}
 
uint64_t m_frameStartOffset {0}
 
uint64_t m_keyframeStartOffset {0}
 
uint64_t m_spsOffset {0}
 
bool m_onFrame {false}
 
bool m_onKeyFrame {false}
 

Detailed Description

Definition at line 68 of file H264Parser.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAX_SLICE_HEADER_SIZE 

Definition at line 71 of file H264Parser.h.

◆ NAL_unit_type

Enumerator
UNKNOWN 
SLICE 
SLICE_DPA 
SLICE_DPB 
SLICE_DPC 
SLICE_IDR 
SEI 
SPS 
PPS 
AU_DELIMITER 
END_SEQUENCE 
END_STREAM 
FILLER_DATA 
SPS_EXT 
NALU_prefix 
SPS_subset 
AUXILIARY_SLICE 
SLICE_EXTENSION 

Definition at line 76 of file H264Parser.h.

◆ SEI_type

Enumerator
SEI_TYPE_PIC_TIMING 
SEI_FILLER_PAYLOAD 
SEI_TYPE_USER_DATA_UNREGISTERED 
SEI_TYPE_RECOVERY_POINT 

Definition at line 97 of file H264Parser.h.

◆ SLICE_type

Enumerator
SLICE_P 
SLICE_B 
SLICE_I 
SLICE_SP 
SLICE_SI 
SLICE_P_a 
SLICE_B_a 
SLICE_I_a 
SLICE_SP_a 
SLICE_SI_a 
SLICE_UNDEF 

Definition at line 111 of file H264Parser.h.

◆ frame_type

Enumerator
FRAME 
FIELD_TOP 
FIELD_BOTTOM 

Definition at line 125 of file H264Parser.h.

◆ constants

enum H264Parser::constants
private
Enumerator
EXTENDED_SAR 

Definition at line 205 of file H264Parser.h.

Constructor & Destructor Documentation

◆ H264Parser() [1/2]

H264Parser::H264Parser ( void  )

Definition at line 93 of file H264Parser.cpp.

◆ H264Parser() [2/2]

H264Parser::H264Parser ( const H264Parser rhs)

◆ ~H264Parser()

H264Parser::~H264Parser ( void  )
inline

Definition at line 133 of file H264Parser.h.

Member Function Documentation

◆ addBytes()

uint32_t H264Parser::addBytes ( const uint8_t *  bytes,
const uint32_t  byte_count,
const uint64_t  stream_offset 
)

◆ Reset()

void H264Parser::Reset ( void  )

◆ NAL_type_str()

QString H264Parser::NAL_type_str ( uint8_t  type)
static

Definition at line 182 of file H264Parser.cpp.

◆ stateChanged()

bool H264Parser::stateChanged ( void  ) const
inline

◆ lastNALtype()

uint8_t H264Parser::lastNALtype ( void  ) const
inline

Definition at line 144 of file H264Parser.h.

◆ FieldType()

frame_type H264Parser::FieldType ( void  ) const
inline

◆ onFrameStart()

bool H264Parser::onFrameStart ( void  ) const
inline

◆ onKeyFrameStart()

bool H264Parser::onKeyFrameStart ( void  ) const
inline

◆ pictureWidth()

uint H264Parser::pictureWidth ( void  ) const
inline

Definition at line 157 of file H264Parser.h.

Referenced by DTVRecorder::FindH264Keyframes().

◆ pictureHeight()

uint H264Parser::pictureHeight ( void  ) const
inline

Definition at line 158 of file H264Parser.h.

Referenced by DTVRecorder::FindH264Keyframes().

◆ pictureWidthCropped()

uint H264Parser::pictureWidthCropped ( void  ) const

Definition at line 1436 of file H264Parser.cpp.

Referenced by aspectRatio(), and AvFormatDecoder::H264PreProcessPkt().

◆ pictureHeightCropped()

uint H264Parser::pictureHeightCropped ( void  ) const

Definition at line 1448 of file H264Parser.cpp.

Referenced by aspectRatio(), and AvFormatDecoder::H264PreProcessPkt().

◆ aspectRatio()

uint H264Parser::aspectRatio ( void  ) const

Computes aspect ratio from picture size and sample aspect ratio.

Definition at line 1342 of file H264Parser.cpp.

Referenced by DTVRecorder::FindH264Keyframes().

◆ frameRate()

double H264Parser::frameRate ( void  ) const

Definition at line 1316 of file H264Parser.cpp.

Referenced by AvFormatDecoder::H264PreProcessPkt().

◆ getFrameRate()

void H264Parser::getFrameRate ( FrameRate result) const

Definition at line 1327 of file H264Parser.cpp.

Referenced by DTVRecorder::FindH264Keyframes().

◆ getRefFrames()

uint H264Parser::getRefFrames ( void  ) const

Definition at line 1337 of file H264Parser.cpp.

Referenced by AvFormatDecoder::H264PreProcessPkt().

◆ frameAUstreamOffset()

uint64_t H264Parser::frameAUstreamOffset ( void  ) const
inline

Definition at line 169 of file H264Parser.h.

◆ keyframeAUstreamOffset()

uint64_t H264Parser::keyframeAUstreamOffset ( void  ) const
inline

◆ SPSstreamOffset()

uint64_t H264Parser::SPSstreamOffset ( void  ) const
inline

Definition at line 171 of file H264Parser.h.

◆ isKeySlice()

static bool H264Parser::isKeySlice ( uint  slice_type)
inlinestatic

Definition at line 174 of file H264Parser.h.

Referenced by decode_Header().

◆ NALisSlice()

static bool H264Parser::NALisSlice ( uint8_t  nal_type)
inlinestatic

Definition at line 182 of file H264Parser.h.

Referenced by addBytes(), and processRBSP().

◆ use_I_forKeyframes()

void H264Parser::use_I_forKeyframes ( bool  val)
inline

Definition at line 189 of file H264Parser.h.

Referenced by V4L2encRecorder::Open(), and AvFormatDecoder::SetIdrOnlyKeyframes().

◆ using_I_forKeyframes()

bool H264Parser::using_I_forKeyframes ( void  ) const
inline

Definition at line 190 of file H264Parser.h.

◆ GetTimeScale()

uint32_t H264Parser::GetTimeScale ( void  ) const
inline

Definition at line 192 of file H264Parser.h.

Referenced by DTVRecorder::FindH264Keyframes().

◆ GetUnitsInTick()

uint32_t H264Parser::GetUnitsInTick ( void  ) const
inline

Definition at line 194 of file H264Parser.h.

Referenced by DTVRecorder::FindH264Keyframes().

◆ parse_SPS()

void H264Parser::parse_SPS ( uint8_t *  sps,
uint32_t  sps_size,
bool interlaced,
int32_t &  max_ref_frames 
)

Definition at line 1036 of file H264Parser.cpp.

◆ reset_SPS()

void H264Parser::reset_SPS ( void  )
inline

Definition at line 199 of file H264Parser.h.

◆ seen_SPS()

bool H264Parser::seen_SPS ( void  ) const
inline

Definition at line 200 of file H264Parser.h.

◆ found_AU()

bool H264Parser::found_AU ( void  ) const
inline

Definition at line 202 of file H264Parser.h.

◆ set_AU_pending()

void H264Parser::set_AU_pending ( void  )
inlineprivate

Definition at line 207 of file H264Parser.h.

Referenced by addBytes(), and processRBSP().

◆ new_AU()

bool H264Parser::new_AU ( void  )
private

Definition at line 218 of file H264Parser.cpp.

Referenced by processRBSP().

◆ resetRBSP()

void H264Parser::resetRBSP ( void  )
private

Definition at line 337 of file H264Parser.cpp.

Referenced by addBytes(), and Reset().

◆ fillRBSP()

bool H264Parser::fillRBSP ( const uint8_t *  byteP,
uint32_t  byte_count,
bool  found_start_code 
)
private

Definition at line 344 of file H264Parser.cpp.

Referenced by addBytes().

◆ processRBSP()

void H264Parser::processRBSP ( bool  rbsp_complete)
private

Definition at line 554 of file H264Parser.cpp.

Referenced by addBytes().

◆ decode_Header()

bool H264Parser::decode_Header ( GetBitContext *  gb)
private

Definition at line 635 of file H264Parser.cpp.

Referenced by processRBSP().

◆ decode_SPS()

void H264Parser::decode_SPS ( GetBitContext *  gb)
private

Definition at line 831 of file H264Parser.cpp.

Referenced by parse_SPS(), and processRBSP().

◆ decode_PPS()

void H264Parser::decode_PPS ( GetBitContext *  gb)
private

Definition at line 1046 of file H264Parser.cpp.

Referenced by processRBSP().

◆ decode_SEI()

void H264Parser::decode_SEI ( GetBitContext *  gb)
private

Definition at line 1121 of file H264Parser.cpp.

Referenced by processRBSP().

◆ vui_parameters()

void H264Parser::vui_parameters ( GetBitContext *  gb)
private

Definition at line 1167 of file H264Parser.cpp.

Referenced by decode_SPS().

Member Data Documentation

◆ m_auPending

bool H264Parser::m_auPending {false}
private

Definition at line 228 of file H264Parser.h.

Referenced by found_AU(), processRBSP(), Reset(), and set_AU_pending().

◆ m_stateChanged

bool H264Parser::m_stateChanged {false}
private

Definition at line 229 of file H264Parser.h.

Referenced by addBytes(), processRBSP(), Reset(), and stateChanged().

◆ m_seenSps

bool H264Parser::m_seenSps {false}
private

Definition at line 230 of file H264Parser.h.

Referenced by decode_SPS(), processRBSP(), Reset(), reset_SPS(), and seen_SPS().

◆ m_auContainsKeyframeMessage

bool H264Parser::m_auContainsKeyframeMessage {false}
private

Definition at line 231 of file H264Parser.h.

Referenced by decode_SEI(), processRBSP(), and set_AU_pending().

◆ m_isKeyframe

bool H264Parser::m_isKeyframe {false}
private

Definition at line 232 of file H264Parser.h.

Referenced by decode_Header(), processRBSP(), and Reset().

◆ m_iIsKeyframe

bool H264Parser::m_iIsKeyframe {true}
private

Definition at line 233 of file H264Parser.h.

Referenced by decode_Header(), use_I_forKeyframes(), and using_I_forKeyframes().

◆ m_syncAccumulator

uint32_t H264Parser::m_syncAccumulator {0xffffffff}
private

Definition at line 235 of file H264Parser.h.

Referenced by addBytes(), and Reset().

◆ m_rbspBuffer

uint8_t* H264Parser::m_rbspBuffer {nullptr}
private

Definition at line 236 of file H264Parser.h.

Referenced by fillRBSP(), H264Parser(), processRBSP(), and ~H264Parser().

◆ m_rbspBufferSize

uint32_t H264Parser::m_rbspBufferSize {188 * 2}
private

Definition at line 237 of file H264Parser.h.

Referenced by fillRBSP(), and H264Parser().

◆ m_rbspIndex

uint32_t H264Parser::m_rbspIndex {0}
private

Definition at line 238 of file H264Parser.h.

Referenced by fillRBSP(), processRBSP(), and resetRBSP().

◆ m_consecutiveZeros

uint32_t H264Parser::m_consecutiveZeros {0}
private

Definition at line 239 of file H264Parser.h.

Referenced by fillRBSP(), and resetRBSP().

◆ m_haveUnfinishedNAL

bool H264Parser::m_haveUnfinishedNAL {false}
private

Definition at line 240 of file H264Parser.h.

Referenced by addBytes(), processRBSP(), and resetRBSP().

◆ m_prevFrameNum

int H264Parser::m_prevFrameNum {-1}
private

Definition at line 242 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_frameNum

int H264Parser::m_frameNum {-1}
private

Definition at line 243 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_sliceType

uint H264Parser::m_sliceType {SLICE_UNDEF}
private

Definition at line 244 of file H264Parser.h.

Referenced by decode_Header(), and Reset().

◆ m_prevPicParameterSetId

int H264Parser::m_prevPicParameterSetId {-1}
private

Definition at line 245 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_picParameterSetId

int H264Parser::m_picParameterSetId {-1}
private

Definition at line 246 of file H264Parser.h.

Referenced by decode_Header(), decode_PPS(), new_AU(), and Reset().

◆ m_prevFieldPicFlag

int8_t H264Parser::m_prevFieldPicFlag {-1}
private

Definition at line 247 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_fieldPicFlag

int8_t H264Parser::m_fieldPicFlag {-1}
private

Definition at line 248 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_prevBottomFieldFlag

int8_t H264Parser::m_prevBottomFieldFlag {-1}
private

Definition at line 249 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_bottomFieldFlag

int8_t H264Parser::m_bottomFieldFlag {-1}
private

Definition at line 250 of file H264Parser.h.

Referenced by decode_Header(), FieldType(), new_AU(), and Reset().

◆ m_prevNALRefIdc

uint8_t H264Parser::m_prevNALRefIdc {111}
private

Definition at line 251 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_nalRefIdc

uint8_t H264Parser::m_nalRefIdc {111}
private

Definition at line 252 of file H264Parser.h.

Referenced by addBytes(), new_AU(), and Reset().

◆ m_prevPicOrderCntType

uint8_t H264Parser::m_prevPicOrderCntType {0}
private

Definition at line 253 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_picOrderCntType

uint8_t H264Parser::m_picOrderCntType {0}
private

Definition at line 254 of file H264Parser.h.

Referenced by decode_Header(), decode_SPS(), new_AU(), and Reset().

◆ m_prevPicOrderCntLsb

int H264Parser::m_prevPicOrderCntLsb {0}
private

Definition at line 255 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_picOrderCntLsb

int H264Parser::m_picOrderCntLsb {0}
private

Definition at line 256 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_prevDeltaPicOrderCntBottom

int H264Parser::m_prevDeltaPicOrderCntBottom {0}
private

Definition at line 257 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_deltaPicOrderCntBottom

int H264Parser::m_deltaPicOrderCntBottom {0}
private

Definition at line 258 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_prevDeltaPicOrderCnt

int H264Parser::m_prevDeltaPicOrderCnt[2] {0}
private

Definition at line 259 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_deltaPicOrderCnt

int H264Parser::m_deltaPicOrderCnt[2] {0}
private

Definition at line 260 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_prevNalUnitType

uint8_t H264Parser::m_prevNalUnitType {UNKNOWN}
private

Definition at line 261 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_nalUnitType

uint8_t H264Parser::m_nalUnitType {UNKNOWN}
private

Definition at line 262 of file H264Parser.h.

Referenced by addBytes(), decode_Header(), lastNALtype(), new_AU(), processRBSP(), and Reset().

◆ m_prevIdrPicId

uint H264Parser::m_prevIdrPicId {65536}
private

Definition at line 263 of file H264Parser.h.

Referenced by new_AU(), and Reset().

◆ m_idrPicId

uint H264Parser::m_idrPicId {65536}
private

Definition at line 264 of file H264Parser.h.

Referenced by decode_Header(), new_AU(), and Reset().

◆ m_log2MaxFrameNum

uint H264Parser::m_log2MaxFrameNum {0}
private

Definition at line 266 of file H264Parser.h.

Referenced by decode_Header(), decode_SPS(), and Reset().

◆ m_log2MaxPicOrderCntLsb

uint H264Parser::m_log2MaxPicOrderCntLsb {0}
private

Definition at line 267 of file H264Parser.h.

Referenced by decode_Header(), decode_SPS(), and Reset().

◆ m_seqParameterSetId

uint H264Parser::m_seqParameterSetId {0}
private

Definition at line 268 of file H264Parser.h.

Referenced by decode_PPS(), and Reset().

◆ m_deltaPicOrderAlwaysZeroFlag

uint8_t H264Parser::m_deltaPicOrderAlwaysZeroFlag {0}
private

Definition at line 270 of file H264Parser.h.

Referenced by decode_Header(), decode_SPS(), and Reset().

◆ m_separateColourPlaneFlag

uint8_t H264Parser::m_separateColourPlaneFlag {0}
private

◆ m_frameMbsOnlyFlag

int8_t H264Parser::m_frameMbsOnlyFlag {-1}
private

Definition at line 272 of file H264Parser.h.

Referenced by decode_Header(), decode_SPS(), parse_SPS(), pictureHeightCropped(), and Reset().

◆ m_picOrderPresentFlag

int8_t H264Parser::m_picOrderPresentFlag {-1}
private

Definition at line 273 of file H264Parser.h.

Referenced by decode_Header(), decode_PPS(), and Reset().

◆ m_redundantPicCntPresentFlag

int8_t H264Parser::m_redundantPicCntPresentFlag {0}
private

Definition at line 274 of file H264Parser.h.

Referenced by decode_Header(), decode_PPS(), and Reset().

◆ m_chromaFormatIdc

int8_t H264Parser::m_chromaFormatIdc {1}
private

Definition at line 275 of file H264Parser.h.

Referenced by decode_SPS(), pictureHeightCropped(), pictureWidthCropped(), and Reset().

◆ m_numRefFrames

uint H264Parser::m_numRefFrames {0}
private

Definition at line 277 of file H264Parser.h.

Referenced by decode_SPS(), getRefFrames(), parse_SPS(), and Reset().

◆ m_redundantPicCnt

uint H264Parser::m_redundantPicCnt {0}
private

Definition at line 278 of file H264Parser.h.

Referenced by decode_Header(), and Reset().

◆ m_picWidth

uint H264Parser::m_picWidth {0}
private

Definition at line 281 of file H264Parser.h.

Referenced by decode_SPS(), pictureWidth(), pictureWidthCropped(), and Reset().

◆ m_picHeight

uint H264Parser::m_picHeight {0}
private

Definition at line 282 of file H264Parser.h.

Referenced by aspectRatio(), decode_SPS(), pictureHeight(), pictureHeightCropped(), and Reset().

◆ m_frameCropLeftOffset

uint H264Parser::m_frameCropLeftOffset {0}
private

Definition at line 283 of file H264Parser.h.

Referenced by decode_SPS(), and Reset().

◆ m_frameCropRightOffset

uint H264Parser::m_frameCropRightOffset {0}
private

Definition at line 284 of file H264Parser.h.

Referenced by decode_SPS(), pictureWidthCropped(), and Reset().

◆ m_frameCropTopOffset

uint H264Parser::m_frameCropTopOffset {0}
private

Definition at line 285 of file H264Parser.h.

Referenced by decode_SPS(), and Reset().

◆ m_frameCropBottomOffset

uint H264Parser::m_frameCropBottomOffset {0}
private

Definition at line 286 of file H264Parser.h.

Referenced by decode_SPS(), pictureHeightCropped(), and Reset().

◆ m_aspectRatioIdc

uint8_t H264Parser::m_aspectRatioIdc {0}
private

Definition at line 287 of file H264Parser.h.

Referenced by aspectRatio(), Reset(), and vui_parameters().

◆ m_sarWidth

uint H264Parser::m_sarWidth {0}
private

Definition at line 288 of file H264Parser.h.

Referenced by aspectRatio(), Reset(), and vui_parameters().

◆ m_sarHeight

uint H264Parser::m_sarHeight {0}
private

Definition at line 289 of file H264Parser.h.

Referenced by aspectRatio(), Reset(), and vui_parameters().

◆ m_unitsInTick

uint32_t H264Parser::m_unitsInTick {0}
private

Definition at line 290 of file H264Parser.h.

Referenced by frameRate(), getFrameRate(), GetUnitsInTick(), Reset(), and vui_parameters().

◆ m_timeScale

uint32_t H264Parser::m_timeScale {0}
private

Definition at line 291 of file H264Parser.h.

Referenced by frameRate(), getFrameRate(), GetTimeScale(), Reset(), and vui_parameters().

◆ m_fixedRate

bool H264Parser::m_fixedRate {false}
private

Definition at line 292 of file H264Parser.h.

Referenced by Reset(), and vui_parameters().

◆ m_pktOffset

uint64_t H264Parser::m_pktOffset {0}
private

Definition at line 294 of file H264Parser.h.

Referenced by addBytes(), processRBSP(), Reset(), and set_AU_pending().

◆ m_auOffset

uint64_t H264Parser::m_auOffset {0}
private

Definition at line 295 of file H264Parser.h.

Referenced by processRBSP(), Reset(), and set_AU_pending().

◆ m_frameStartOffset

uint64_t H264Parser::m_frameStartOffset {0}
private

Definition at line 296 of file H264Parser.h.

Referenced by frameAUstreamOffset(), processRBSP(), and Reset().

◆ m_keyframeStartOffset

uint64_t H264Parser::m_keyframeStartOffset {0}
private

Definition at line 297 of file H264Parser.h.

Referenced by keyframeAUstreamOffset(), processRBSP(), and Reset().

◆ m_spsOffset

uint64_t H264Parser::m_spsOffset {0}
private

Definition at line 298 of file H264Parser.h.

Referenced by processRBSP(), Reset(), and SPSstreamOffset().

◆ m_onFrame

bool H264Parser::m_onFrame {false}
private

Definition at line 299 of file H264Parser.h.

Referenced by addBytes(), onFrameStart(), processRBSP(), and Reset().

◆ m_onKeyFrame

bool H264Parser::m_onKeyFrame {false}
private

Definition at line 300 of file H264Parser.h.

Referenced by addBytes(), onKeyFrameStart(), processRBSP(), and Reset().


The documentation for this class was generated from the following files: