Make rtp_parse_packet() always call the vfunc of the dynamic payload handler

if there is one. See "[PATCH] Realmedia / RTSP (RDT)" thread on ML.

Originally committed as revision 11493 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Ronald S. Bultje 2008-01-10 13:52:35 +00:00
parent 927688d6e0
commit b4e3330c12
1 changed files with 2 additions and 4 deletions

View File

@ -474,6 +474,8 @@ int rtp_parse_packet(RTPDemuxContext *s, AVPacket *pkt,
s->read_buf_index = 0;
return 1;
}
} else if (s->parse_packet) {
rv = s->parse_packet(s, pkt, &timestamp, buf, len);
} else {
// at this point, the RTP header has been stripped; This is ASSUMING that there is only 1 CSRC, which in't wise.
switch(st->codec->codec_id) {
@ -529,12 +531,8 @@ int rtp_parse_packet(RTPDemuxContext *s, AVPacket *pkt,
rv= 0;
break;
default:
if(s->parse_packet) {
rv= s->parse_packet(s, pkt, &timestamp, buf, len);
} else {
av_new_packet(pkt, len);
memcpy(pkt->data, buf, len);
}
break;
}