86 : m_rbspBuffer(new uint8_t[m_rbspBufferSize])
134 bool found_start_code)
140 required_size = ((required_size / 188) + 1) * 188;
143 auto *new_buffer =
new uint8_t[required_size];
145 if (new_buffer ==
nullptr)
148 LOG(VB_GENERAL, LOG_ERR,
149 "H2645Parser::fillRBSP: FAILED to allocate RBSP buffer!");
192 if (found_start_code)
203 LOG(VB_GENERAL, LOG_ERR,
204 QString(
"H2645Parser::fillRBSP: Found start code, rbsp_index "
205 "is %1 but it should be >4")
328 LOG(VB_RECORD, LOG_DEBUG,
329 QString(
"sarWidth %1 sarHeight %2")
379 LOG(VB_RECORD, LOG_DEBUG,
380 QString(
"VUI unitsInTick %1 timeScale %2 fixedRate %3")
477 return aspect.toFixed(1000000);
bitstream reader API header.
int get_ue_golomb()
Read an unsigned Exp-Golomb code in the range 0 to 8190 (2^13 - 2).
uint32_t get_bits(unsigned n)
Read 0-32 bits.
uint64_t m_frameStartOffset
bool m_separateColourPlaneFlag
uint32_t m_consecutiveZeros
virtual uint pictureWidthCropped(void) const =0
uint aspectRatio(void) const
Computes aspect ratio from picture size and sample aspect ratio.
uint m_frameCropBottomOffset
virtual uint pictureHeightCropped(void) const =0
uint m_frameCropLeftOffset
uint m_frameCropTopOffset
uint32_t m_syncAccumulator
uint64_t m_keyframeStartOffset
void vui_parameters(BitReader &br, bool hevc)
bool fillRBSP(const uint8_t *byteP, uint32_t byte_count, bool found_start_code)
uint m_frameCropRightOffset
uint32_t m_rbspBufferSize
static constexpr uint8_t kExtendedSar
C++ wrapper for FFmpeg libavutil AVRational.
#define LOG(_MASK_, _LEVEL_, _QSTRING_)