|
|
@@ -33,6 +33,7 @@ |
|
|
|
static const AVOption options[] = { |
|
|
|
FF_RTP_FLAG_OPTS(RTPMuxContext, flags) |
|
|
|
{ "payload_type", "Specify RTP payload type", offsetof(RTPMuxContext, payload_type), AV_OPT_TYPE_INT, {.dbl = -1 }, -1, 127, AV_OPT_FLAG_ENCODING_PARAM }, |
|
|
|
{ "max_packet_size", "Max packet size", offsetof(RTPMuxContext, max_packet_size), AV_OPT_TYPE_INT, {.dbl = 0 }, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM }, |
|
|
|
{ NULL }, |
|
|
|
}; |
|
|
|
|
|
|
@@ -109,7 +110,12 @@ static int rtp_write_header(AVFormatContext *s1) |
|
|
|
s->first_rtcp_ntp_time = (s1->start_time_realtime / 1000) * 1000 + |
|
|
|
NTP_OFFSET_US; |
|
|
|
|
|
|
|
s->max_packet_size = s1->pb->max_packet_size; |
|
|
|
if (s->max_packet_size) { |
|
|
|
if (s1->pb->max_packet_size) |
|
|
|
s->max_packet_size = FFMIN(s->max_payload_size, |
|
|
|
s1->pb->max_packet_size); |
|
|
|
} else |
|
|
|
s->max_packet_size = s1->pb->max_packet_size; |
|
|
|
if (s->max_packet_size <= 12) { |
|
|
|
av_log(s1, AV_LOG_ERROR, "Max packet size %d too low\n", s->max_packet_size); |
|
|
|
return AVERROR(EIO); |
|
|
|