webrtc_gst_slot_s *source = (webrtc_gst_slot_s *)data;
int i;
int j;
+ unsigned int pt;
RET_IF(source == NULL, "source is NULL");
_remove_probe_from_pad_for_pause(source, i);
_remove_probe_from_pad_for_render(source, i);
- if (source->av[i].pt > 0)
- _return_payload_type(source->webrtc, source->av[i].pt);
+ pt = source->av[i].pt;
+ if (pt >= MIN_DYNAMIC_PAYLOAD_TYPE && !source->av[i].pt_set_by_api)
+ _return_payload_type(source->webrtc, pt);
_destroy_looopback_render_pipeline(source, i);
g_free(source->av[i].payloader_factory_name);
for (j = 0; j < source->av[i].num_of_codecs; j++) {
- if (source->av[i].multiple_codecs[j].pt > 0)
- _return_payload_type(source->webrtc, source->av[i].multiple_codecs[j].pt);
+ pt = source->av[i].multiple_codecs[j].pt;
+ if (pt >= MIN_DYNAMIC_PAYLOAD_TYPE && !source->av[i].multiple_codecs[j].pt_set_by_api)
+ _return_payload_type(source->webrtc, pt);
}
}