rtpenc: Add an option for not sending RTCP packets
Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
parent
ff311c0918
commit
7337484ed2
@ -388,8 +388,9 @@ static int rtp_write_packet(AVFormatContext *s1, AVPacket *pkt)
|
|||||||
|
|
||||||
rtcp_bytes = ((s->octet_count - s->last_octet_count) * RTCP_TX_RATIO_NUM) /
|
rtcp_bytes = ((s->octet_count - s->last_octet_count) * RTCP_TX_RATIO_NUM) /
|
||||||
RTCP_TX_RATIO_DEN;
|
RTCP_TX_RATIO_DEN;
|
||||||
if (s->first_packet || ((rtcp_bytes >= RTCP_SR_SIZE) &&
|
if ((s->first_packet || ((rtcp_bytes >= RTCP_SR_SIZE) &&
|
||||||
(ff_ntp_time() - s->last_rtcp_ntp_time > 5000000))) {
|
(ff_ntp_time() - s->last_rtcp_ntp_time > 5000000))) &&
|
||||||
|
!(s->flags & FF_RTP_FLAG_SKIP_RTCP)) {
|
||||||
rtcp_send_sr(s1, ff_ntp_time());
|
rtcp_send_sr(s1, ff_ntp_time());
|
||||||
s->last_octet_count = s->octet_count;
|
s->last_octet_count = s->octet_count;
|
||||||
s->first_packet = 0;
|
s->first_packet = 0;
|
||||||
|
@ -65,11 +65,13 @@ typedef struct RTPMuxContext RTPMuxContext;
|
|||||||
|
|
||||||
#define FF_RTP_FLAG_MP4A_LATM 1
|
#define FF_RTP_FLAG_MP4A_LATM 1
|
||||||
#define FF_RTP_FLAG_RFC2190 2
|
#define FF_RTP_FLAG_RFC2190 2
|
||||||
|
#define FF_RTP_FLAG_SKIP_RTCP 4
|
||||||
|
|
||||||
#define FF_RTP_FLAG_OPTS(ctx, fieldname) \
|
#define FF_RTP_FLAG_OPTS(ctx, fieldname) \
|
||||||
{ "rtpflags", "RTP muxer flags", offsetof(ctx, fieldname), AV_OPT_TYPE_FLAGS, {.dbl = 0}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
{ "rtpflags", "RTP muxer flags", offsetof(ctx, fieldname), AV_OPT_TYPE_FLAGS, {.dbl = 0}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
||||||
{ "latm", "Use MP4A-LATM packetization instead of MPEG4-GENERIC for AAC", 0, AV_OPT_TYPE_CONST, {.dbl = FF_RTP_FLAG_MP4A_LATM}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
{ "latm", "Use MP4A-LATM packetization instead of MPEG4-GENERIC for AAC", 0, AV_OPT_TYPE_CONST, {.dbl = FF_RTP_FLAG_MP4A_LATM}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
||||||
{ "rfc2190", "Use RFC 2190 packetization instead of RFC 4629 for H.263", 0, AV_OPT_TYPE_CONST, {.dbl = FF_RTP_FLAG_RFC2190}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
{ "rfc2190", "Use RFC 2190 packetization instead of RFC 4629 for H.263", 0, AV_OPT_TYPE_CONST, {.dbl = FF_RTP_FLAG_RFC2190}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
||||||
|
{ "skip_rtcp", "Don't send RTCP sender reports", 0, AV_OPT_TYPE_CONST, {.dbl = FF_RTP_FLAG_SKIP_RTCP}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "rtpflags" }, \
|
||||||
|
|
||||||
void ff_rtp_send_data(AVFormatContext *s1, const uint8_t *buf1, int len, int m);
|
void ff_rtp_send_data(AVFormatContext *s1, const uint8_t *buf1, int len, int m);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user