Hi Ziqing, I've been doing some research, and I believe patch 2/6 (committed as 320383c594c4) is incorrect. GStreamer's "codec-data" field is an AVCDecoderConfigurationRecord, as defined by ISO/IEC 14496-15 (which you can see at [1]). MF_MT_MPEG_SEQUENCE_HEADER, on the other hand, seems to contain the raw SPS/PPS NALUs, start codes and all.
Since Microsoft uses Annex B everywhere, it shouldn't need the codec-data anyway, so I'm curious now why this was added—was there a need for it, or did you just add it on the assumption that the two attributes mapped to each other?
[1] https://doc-kurento.readthedocs.io/en/latest/knowledge/h264.html#gstreamer-c...