}
if (format == h265parse->format && align == h265parse->align) {
- gst_base_parse_set_passthrough (parse, TRUE);
+ /* do not set CAPS and passthrough mode if VPS/SPS/PPS have not been parsed */
+ if (h265parse->have_vps && h265parse->have_sps && h265parse->have_pps) {
+ gst_base_parse_set_passthrough (parse, TRUE);
- /* we did parse codec-data and might supplement src caps */
- gst_h265_parse_update_src_caps (h265parse, caps);
+ /* we did parse codec-data and might supplement src caps */
+ gst_h265_parse_update_src_caps (h265parse, caps);
+ }
} else if (format == GST_H265_PARSE_FORMAT_HVC1
|| format == GST_H265_PARSE_FORMAT_HEV1) {
/* if input != output, and input is hevc, must split before anything else */