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.

DM8168解码高清H264兼容性问题



大家好,我用DM8168的开发板测试解码H264的流的时候,发现1920*1080p的可以正常解码,但是1920*1080i的确不能解码,请问是不支持吗?还是要做其他设置,另外,即使好多能够解码的,比如一些标清,B帧送到HDMI显示顺序不对,他是按照解码出来的顺序送的,但是显然有些不对,请问,有解决办法吗?

  • 请检查解码参数是否设置正确.

  • 感谢Feng Dong的回复,我查阅代码,找到Decoder的CreateParams有如下设置,但是我尝试设置修改了几个并没有效果,请问哪几个是?

    typedef struct DecLink_ChCreateParams
    {
        UInt32 format;
        /**< Codec profile */
        Int32 profile;
        /**< Video coding format */
        Int32 targetMaxWidth;
        /**< Target frame width of the decoder */
        Int32 targetMaxHeight;
        /**< Target frame height of the decoder */
        Int32 displayDelay;
        /**< Max number of frames delayed by decoder */
        DecLink_ChDynamicParams defaultDynamicParams;
        /**< default dynamic params for decoder */
        UInt32 fieldMergeDecodeEnable;
        /**< Enable this option to decode 2 fields in same Decode link call
         * ie. both Top & Bottom field in same ouput buffer with Top filed
         * followed by bottom field data in field seperated mode */
        UInt32 processCallLevel;
        /**< Specifies if process call is done frame level or field level */
        UInt32 numBufPerCh;
        /**< Number of buffer to allocate per channel */
        Int32 dpbBufSizeInFrames;
        /**< Size of the decoder picture buffer.If application
         *   knows the max number of reference frames in the
         *   stream to be fed to the decoder, it can set this
         *   value to enable reduced memory consumption.
         *   Application should set this value to default
         *   if it doesn't care about this parameter
         */
         UInt32 algCreateStatus;
        /**< App can only configure this variable with two below values
         *         DEC_LINK_ALG_CREATE_STATUS_DONOT_CREATE -> 0
         *         DEC_LINK_ALG_CREATE_STATUS_CREATE -> 1
         *   If 0: Only the partial channel get created, neither codec instance
         *         nor the output buffers will be get created. App will be
         *         able to make this channel fully functional dynamically by
         *         calling DEC_LINK_CMD_CREATE_CHANNEL API
         *   If 1: Fully functional channel will be created with Both codec
         *         instance and the output buffers created, reday to operate
         */
    } DecLink_ChCreateParams;