int sm_vmptx_propagate_rtcp_sr_ntp(struct sm_vmptx_propagate_rtcp_sr_ntp_parms *propp)
typedef struct sm_vmptx_propagate_rtcp_sr_ntp_parms { tSMVMPtxId vmptx; /* in */ tSM_UT64 localtimeref; /* in */ tSM_UT64 ntp_timestamp; /* in */ } SM_VMPTX_PROPAGATE_RTCP_SR_NTP_PARMS;
RTCP sender reports (SRs) include an RTP timestamp and a 64 bit NTP time with this NTP time indicating the wallclock time corresponding to the sample with the given RTP timestamp. For SR associated with a VMP[tx] this NTP time is normally the time of the epoch in which that packet would be emitted. This call sets an adjustment to cause each RTCP SR NTP time to be an earlier time in order to allow the relation between NTP time and a given sample to be maintained when forwarding an RTP signal from a VMP[rx] via a signal pipeline to a VMP[tx]. The passed in ntp_timestamp needs to be calculated by the application, normally using a received RTCP sender report NTP time, and the difference between RTCP SR RTP timestamp and the RTP timestamp obtained on occurrence of sm_vmprx_status() kSMVMPrxStatusJBResync, as a basis for the calculation.
0 if call completed successfully, otherwise a standard error such as:
This function is part of the Prosody RTP processing API.