This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to generate the SPS/PPS info in H264enc?

Hi, all

My Version DVRRD K4.00.0.1 , DM8168; and I use REL.500.V.H264AVC.E.IVAHD.02.00.04.01 for encoding h264.

my question is : How to generate the SPS/PPS info in H264enc?

Thanks!

  • SPS/PPS info is already generated as part of every IDR frame in DVRRDK.

  • Thanks for your reply!

     Use Elecard,  there is sps/pps only before first I frame. other I frames, there is no sps/pps. why?

     I want add sps/pps before ervery I frame, what can I do?

    Thanks!

  • Confirm

    /dvr_rdk/mcfw/src_bios6/links_m3video/iva_enc/encLink_h264.c

    enclink_h264_set_static_params

    has below code

        /* We want SPS and PPS to be set for every intra frame. Hence configure the
         * the NALU control params to force encoder to insert SPS/PPS on every
         * I frame
         */
        staticParams->nalUnitControlParams.naluControlPreset =
                                                 IH264_NALU_CONTROL_USERDEFINED;
        ENCLINK_H264_SETNALU_MASK_SPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskIntraPicture);
        ENCLINK_H264_SETNALU_MASK_PPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskIntraPicture);

        ENCLINK_H264_SETNALU_MASK_SPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskIDRPicture);
        ENCLINK_H264_SETNALU_MASK_PPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskIDRPicture);
        ENCLINK_H264_SETNALU_MASK_SEI(staticParams->nalUnitControlParams.
                                                    naluPresentMaskIDRPicture);

        ENCLINK_H264_SETNALU_MASK_SPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskStartOfSequence);
        ENCLINK_H264_SETNALU_MASK_PPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskStartOfSequence);
        ENCLINK_H264_SETNALU_MASK_PPS(staticParams->nalUnitControlParams.
                                                    naluPresentMaskStartOfSequence);

    In your app for encLinkCreateParams confirm you are setting encodingPreset = XDM_USER_DEFINED

  • thankyou!

    I solved it by FORCEI .