Commit d3536678 authored by Luca Abeni's avatar Luca Abeni

Do not use RTP_MAX_PACKET_LENGTH in the RTP muxer

Originally committed as revision 17022 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent dcd913d9
...@@ -65,6 +65,10 @@ static int rtp_write_header(AVFormatContext *s1) ...@@ -65,6 +65,10 @@ static int rtp_write_header(AVFormatContext *s1)
max_packet_size = url_fget_max_packet_size(s1->pb); max_packet_size = url_fget_max_packet_size(s1->pb);
if (max_packet_size <= 12) if (max_packet_size <= 12)
return AVERROR(EIO); return AVERROR(EIO);
s->buf = av_malloc(max_packet_size);
if (s->buf == NULL) {
return AVERROR(ENOMEM);
}
s->max_payload_size = max_packet_size - 12; s->max_payload_size = max_packet_size - 12;
s->max_frames_per_packet = 0; s->max_frames_per_packet = 0;
...@@ -344,6 +348,15 @@ static int rtp_write_packet(AVFormatContext *s1, AVPacket *pkt) ...@@ -344,6 +348,15 @@ static int rtp_write_packet(AVFormatContext *s1, AVPacket *pkt)
return 0; return 0;
} }
static int rtp_write_trailer(AVFormatContext *s1)
{
RTPMuxContext *s = s1->priv_data;
av_freep(&s->buf);
return 0;
}
AVOutputFormat rtp_muxer = { AVOutputFormat rtp_muxer = {
"rtp", "rtp",
NULL_IF_CONFIG_SMALL("RTP output format"), NULL_IF_CONFIG_SMALL("RTP output format"),
...@@ -354,4 +367,5 @@ AVOutputFormat rtp_muxer = { ...@@ -354,4 +367,5 @@ AVOutputFormat rtp_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
rtp_write_header, rtp_write_header,
rtp_write_packet, rtp_write_packet,
rtp_write_trailer,
}; };
...@@ -46,7 +46,7 @@ struct RTPMuxContext { ...@@ -46,7 +46,7 @@ struct RTPMuxContext {
unsigned int last_octet_count; // TODO: move into statistics (outgoing) unsigned int last_octet_count; // TODO: move into statistics (outgoing)
int first_packet; int first_packet;
/* buffer for output */ /* buffer for output */
uint8_t buf[RTP_MAX_PACKET_LENGTH]; uint8_t *buf;
uint8_t *buf_ptr; uint8_t *buf_ptr;
int max_frames_per_packet; int max_frames_per_packet;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment