Shaka Packager SDK
Public Types | Public Member Functions | List of all members
shaka::media::Nalu Class Reference

#include <nalu_reader.h>

Public Types

enum  H264NaluType {
  H264_Unspecified = 0 , H264_NonIDRSlice = 1 , H264_IDRSlice = 5 , H264_SEIMessage = 6 ,
  H264_SPS = 7 , H264_PPS = 8 , H264_AUD = 9 , H264_EOSeq = 10 ,
  H264_FillerData = 12 , H264_SPSExtension = 13 , H264_PrefixNALUnit = 14 , H264_SubsetSPS = 15 ,
  H264_DepthParameterSet = 16 , H264_Reserved17 = 17 , H264_Reserved18 = 18 , H264_CodedSliceExtension = 20 ,
  H264_Reserved22 = 22
}
 
enum  H265NaluType {
  H265_TRAIL_N = 0 , H265_TRAIL_R = 1 , H265_TSA_N = 2 , H265_TSA_R = 3 ,
  H265_STSA_N = 4 , H265_STSA_R = 5 , H265_RASL_R = 9 , H265_RSV_VCL_N10 = 10 ,
  H265_RSV_VCL_R15 = 15 , H265_BLA_W_LP = 16 , H265_IDR_W_RADL = 19 , H265_IDR_N_LP = 20 ,
  H265_CRA_NUT = 21 , H265_RSV_IRAP_VCL22 = 22 , H265_RSV_IRAP_VCL23 = 23 , H265_RSV_VCL31 = 31 ,
  H265_VPS = 32 , H265_SPS = 33 , H265_PPS = 34 , H265_AUD = 35 ,
  H265_EOS = 36 , H265_EOB = 37 , H265_FD = 38 , H265_PREFIX_SEI = 39 ,
  H265_RSV_NVCL41 = 41 , H265_RSV_NVCL44 = 44 , H265_UNSPEC48 = 48 , H265_UNSPEC55 = 55
}
 
enum  CodecType { kH264 , kH265 }
 

Public Member Functions

bool Initialize (CodecType type, const uint8_t *data, uint64_t size)
 
const uint8_t * data () const
 This is the pointer to the Nalu data, pointing to the header.
 
uint64_t header_size () const
 The size of the header, e.g. 1 for H.264.
 
uint64_t payload_size () const
 Size of this Nalu minus header_size().
 
int ref_idc () const
 
int nuh_layer_id () const
 
int nuh_temporal_id () const
 
int type () const
 
bool is_aud () const
 
bool is_vcl () const
 
bool is_video_slice () const
 Slice data partition NALs are not considered as slice NALs.
 
bool can_start_access_unit () const
 

Detailed Description

For explanations of each struct and its members, see H.264 specification at http://www.itu.int/rec/T-REC-H.264.

Definition at line 26 of file nalu_reader.h.

Member Function Documentation

◆ type()

int shaka::media::Nalu::type ( ) const
inline

H264NaluType and H265NaluType enums may be used to compare against the return value.

Definition at line 112 of file nalu_reader.h.


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