MT#56782 pass format to format answer

Make it possible to make our fmtp= answer string based on the input
audio format.

Change-Id: I042561c3d4e7056624e1fd9ad2a20d6ddf116da2
pull/1640/head
Richard Fuchs 3 years ago
parent f2527c47bd
commit f40e3c0653

@ -446,7 +446,7 @@ reset:
rtp_payload_type_copy(&handler->dest_pt, dest); rtp_payload_type_copy(&handler->dest_pt, dest);
if (dest->codec_def->format_answer) if (dest->codec_def->format_answer)
dest->codec_def->format_answer(&handler->dest_pt); dest->codec_def->format_answer(&handler->dest_pt, &handler->source_pt);
handler->handler_func = handler_func_transcode; handler->handler_func = handler_func_transcode;
handler->packet_decoded = packet_decoded; handler->packet_decoded = packet_decoded;
handler->transcoder = 1; handler->transcoder = 1;

@ -3490,7 +3490,7 @@ static int evs_format_parse(struct rtp_codec_format *f, const str *fmtp) {
codeclib_key_value_parse(fmtp, true, evs_parse_format_cb, &f->parsed); codeclib_key_value_parse(fmtp, true, evs_parse_format_cb, &f->parsed);
return 0; return 0;
} }
static void evs_format_answer(struct rtp_payload_type *p) { static void evs_format_answer(struct rtp_payload_type *p, const struct rtp_payload_type *src) {
if (!p->format.fmtp_parsed) if (!p->format.fmtp_parsed)
return; return;

@ -91,7 +91,7 @@ typedef void select_encoder_format_f(encoder_t *, format_t *requested_format, co
typedef void select_decoder_format_f(decoder_t *); typedef void select_decoder_format_f(decoder_t *);
typedef int format_parse_f(struct rtp_codec_format *, const str *fmtp); typedef int format_parse_f(struct rtp_codec_format *, const str *fmtp);
typedef void format_answer_f(struct rtp_payload_type *); typedef void format_answer_f(struct rtp_payload_type *, const struct rtp_payload_type *);

Loading…
Cancel
Save