rtpsession: update caps in the source
Inform the source when caps changed. This was removed in the port to 1.0 leaving the source unaware of the clock-rate and unable to interpollate rtp timestamps for SR packets.
This commit is contained in:
parent
f4eef3f48d
commit
f17db5c4ed
@ -1785,6 +1785,8 @@ gst_rtp_session_setcaps_send_rtp (GstPad * pad, GstRtpSession * rtpsession,
|
|||||||
GST_DEBUG_OBJECT (rtpsession, "setting internal SSRC to %08x", ssrc);
|
GST_DEBUG_OBJECT (rtpsession, "setting internal SSRC to %08x", ssrc);
|
||||||
rtp_session_set_internal_ssrc (priv->session, ssrc);
|
rtp_session_set_internal_ssrc (priv->session, ssrc);
|
||||||
}
|
}
|
||||||
|
rtp_session_update_send_caps (priv->session, caps);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2454,6 +2454,26 @@ ignore:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* rtp_session_update_send_caps:
|
||||||
|
* @sess: an #RTPSession
|
||||||
|
* @caps: a #GstCaps
|
||||||
|
*
|
||||||
|
* Update the caps of the sender in the rtp session.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
rtp_session_update_send_caps (RTPSession * sess, GstCaps * caps)
|
||||||
|
{
|
||||||
|
g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
|
||||||
|
g_return_val_if_fail (GST_IS_CAPS (caps), GST_FLOW_ERROR);
|
||||||
|
|
||||||
|
GST_LOG ("received caps %" GST_PTR_FORMAT, caps);
|
||||||
|
|
||||||
|
RTP_SESSION_LOCK (sess);
|
||||||
|
rtp_source_update_caps (sess->source, caps);
|
||||||
|
RTP_SESSION_UNLOCK (sess);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* rtp_session_send_rtp:
|
* rtp_session_send_rtp:
|
||||||
* @sess: an #RTPSession
|
* @sess: an #RTPSession
|
||||||
|
@ -333,6 +333,7 @@ GstFlowReturn rtp_session_process_rtcp (RTPSession *sess, GstBuffer
|
|||||||
guint64 ntpnstime);
|
guint64 ntpnstime);
|
||||||
|
|
||||||
/* processing packets for sending */
|
/* processing packets for sending */
|
||||||
|
void rtp_session_update_send_caps (RTPSession *sess, GstCaps *caps);
|
||||||
GstFlowReturn rtp_session_send_rtp (RTPSession *sess, gpointer data, gboolean is_list,
|
GstFlowReturn rtp_session_send_rtp (RTPSession *sess, gpointer data, gboolean is_list,
|
||||||
GstClockTime current_time, GstClockTime running_time);
|
GstClockTime current_time, GstClockTime running_time);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user