gstrtpbasepayload: set DEFAULT_PERFECT_RTPTIME to FALSE
Submitted by Håvard Graff (hgr)
Link to original bug (#761943)
Description
Created attachment 320983
patch
A very common pipeline is feeding an encoder inheriting from
GstAudioEncoder into a payloader inheriting from GstRtpBasePayload.
If this is the case, the rtp-timestamp will, if perfect_rtptime is TRUE,
reflect the amount of bytes in each packet, and not (like it should)
reflect the timestamp of the packets in the clock-rate domain.
Example:
20ms AAC packets with clock-rate of 90000, should have the rtp-timestamp
incrementing with 90000 * 20 / 1000 = 1800.
Currently, because perfect_rtptime is default TRUE, the AAC-packets
will be incrementing with the buffer-size of the packets, which is
typically 64000 * 20 / 1000 = 1280.
In the case that bitrate and clock-rate are the same (like with ALAW and
MULAW) it will work by chance, which is probably why it has not been
discovered earlier.
Patch 320983, "patch":
rtpbasepayload-default-perfect-rtp.patch