I am investigating an a/v sync issue of h264 + aac-LATM rtsp streaming.<br><br>The rtpmp4adepay retrieves 32bits rtptime from buffer header and passes rtptime to gst_base_rtp_depayload_push_ts()<br>According to the doc: child class might override set_gst_timestamp
to calculate GST timestamp from RTP timestamp.<br><pre class="programlisting"> /* non-pure function used to convert from RTP timestamp to GST timestamp<br> * this function is used by the child class before gst_pad_pushing */<br>
void (*set_gst_timestamp) (GstBaseRTPDepayload *filter, guint32 timestamp, GstBuffer *buf);<br></pre>But in fact, none of the child depay class overrides the function, instead, they are using gstbuffer timestamp from upstream.<br>
<br>My question is:<br>- How is the gst buffer timestamp generated and pass to rtpdepay?<br>- Why is rtptime not used to generate a gst buffer timestamp?<br><br>Thanks in advance!<br><br>- Dake<br><br>