github.com/bluenviron/mediacommon@v1.9.3/pkg/codecs/h265/is_random_access.go (about)

     1  package h265
     2  
     3  // IsRandomAccess checks whether the access unit is a random access point.
     4  func IsRandomAccess(au [][]byte) bool {
     5  	for _, nalu := range au {
     6  		typ := NALUType((nalu[0] >> 1) & 0b111111)
     7  		switch typ {
     8  		case NALUType_IDR_W_RADL, NALUType_IDR_N_LP, NALUType_CRA_NUT:
     9  			return true
    10  		}
    11  	}
    12  	return false
    13  }