TI中文支持网
TI专业的中文技术问题搜集分享网站

关于H264编码数据中SPS,PPS,SEI,IDR等内容的问题

群内的朋友们好!

   我使用的平台是ipnc rdk 3.8 , 我在h264编码的有关NALU参数设置如下:

staticParams->nalUnitControlParams.naluControlPreset = IH264_NALU_CONTROL_USERDEFINED;

    staticParams->nalUnitControlParams.naluPresentMaskStartOfSequence = 0x21A0;
    staticParams->nalUnitControlParams.naluPresentMaskIDRPicture = 0x21E0;
    staticParams->nalUnitControlParams.naluPresentMaskIntraPicture = 0x2102;
    staticParams->nalUnitControlParams.naluPresentMaskEndOfSequence = 0xC00;

然后我保存了h264的编码帧数据,发现输出的帧数基本大致如下:

00000000h: 00 00 00 01 27 64 00 32 AD 84 05 45 62 B8 AC 54 ; ….'d.2瓌.Eb脯T

00000010h: 71 08 0A 8A C5 71 58 A8 E2 10 24 85 21 39 3C 9F ; q..娕qXㄢ.$?9<?
00000020h: 27 E4 FE 4F C9 F2 79 B9 B3 4D 08 12 42 90 9C 9E ; '濑O沈y钩M..B悳?
00000030h: 4F 93 F2 7F 27 E4 F9 3C DC D9 A6 17 2A 05 82 5A ; O擈'澌<苜?*.俍
00000040h: 6C 80 00 01 F4 00 00 61 A8 70 00 00 C3 50 00 0C ; l€..?.a╬..肞..
00000050h: 35 05 EF 75 94 00 00 00 01 28 FE 04 62 C0 00 00 ; 5.飖?…(?b?.
00000060h: 00 01 06 00 07 81 2C EB 00 32 A5 40 01 07 00 00 ; …..??2….
00000070h: 3C 00 00 03 00 04 80 00 00 00 01 25 88 80 00 14 ; <…..€….%垁..
00000080h: 00 80 8F F1 6D 5F 38 89 BC D2 A2 6D 61 7E C3 1D ; .€忨m_8壖尧ma~?
00000090h: CB F5 DF 15 9D 69 6A A1 C2 85 E6 7B 32 50 6B 00 ; 缩?漣j÷呮{2Pk.
000000a0h: FC AD DB 95 FE DC 5D 9F 4E AE                   ; 蹠]烴?

所采集的帧数据中都有

00 00 00 01 27     : SPS数据

00 00 00 01 28     :   PPS数据

00 00 00 01 25      :  IDR数据

00 00 00 01 06       :  SEI数据

想请教下群内的朋友, 怎样设置H264的参数我才能将SPS, PPS, IDR, SEI这些内容分成单独的帧输出呢?

我的意思就是一帧中只存在00 00 00 01 27 (SPS),然后另外一帧中只存在00 00 00 01 28(PPS),然后另外一帧中只存在00 00 00 01 25(IDR), ..

因为这样混合在一帧中输出,导致有些NVR无法解码播放出来.先谢谢了.

Ternence_Hsu:

你好;

        你现在的输出模式就是 slice 的输出模式;还有一种模式是按固定的size输出;

        你现在只需要把 VCODEC_FRAME_TYPE_I_FRAME 数据包 自己写程序分解出 pps sps sei idr 就可以了; 

        

赞(0)
未经允许不得转载:TI中文支持网 » 关于H264编码数据中SPS,PPS,SEI,IDR等内容的问题
分享到: 更多 (0)