1. 参考00_video_decode sample
可以参考Jetson上如下decode sample
/usr/src/jetson_multimedia_api/samples/00_video_decode
每个NAL以起始代码0x00000001或0x000001开始。
宏查找开始代码:
#define IS_NAL_UNIT_START(buffer_ptr) (!buffer_ptr[0] && !buffer_ptr[1] && \
!buffer_ptr[2] && (buffer_ptr[3] == 1))
#define IS_NAL_UNIT_START1(buffer_ptr) (!buffer_ptr[0] && !buffer_ptr[1] && \
(buffer_ptr[2] == 1))
下一个字节包含NAL的类型。
(1)对于H264,需要读取(字节& 0x1f)的值来获得类型:
enum Nal_Unit_Type
{
NAL_UNIT_EXTERNAL = 0,
NAL_UNIT_CODED_SLICE = 1,
NAL_UNIT_CODED_SLICE_DATAPART_A = 2,