Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
IPTV: RTP - add pkt_cb to iptv_rtp_read() - for RTCP
  • Loading branch information
perexg committed May 28, 2015
1 parent 779874c commit e808234
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
3 changes: 2 additions & 1 deletion src/input/mpegts/iptv/iptv_private.h
Expand Up @@ -128,7 +128,8 @@ void iptv_udp_init ( void );
void iptv_rtsp_init ( void );
void iptv_pipe_init ( void );

ssize_t iptv_rtp_read ( iptv_mux_t *im, udp_multirecv_t *um );
ssize_t iptv_rtp_read ( iptv_mux_t *im, udp_multirecv_t *um,
void (*pkt_cb)(iptv_mux_t *im, uint8_t *buf, int len) );

#endif /* __IPTV_PRIVATE_H__ */

Expand Down
2 changes: 1 addition & 1 deletion src/input/mpegts/iptv/iptv_rtsp.c
Expand Up @@ -224,7 +224,7 @@ iptv_rtsp_read ( iptv_mux_t *im )
r = recv(im->mm_iptv_fd2, buf, sizeof(buf), MSG_DONTWAIT);
} while (r > 0);

r = iptv_rtp_read(im, um);
r = iptv_rtp_read(im, um, NULL);
if (r < 0 && ERRNO_AGAIN(errno))
r = 0;
return r;
Expand Down
8 changes: 6 additions & 2 deletions src/input/mpegts/iptv/iptv_udp.c
Expand Up @@ -93,7 +93,8 @@ iptv_udp_read ( iptv_mux_t *im )
}

ssize_t
iptv_rtp_read ( iptv_mux_t *im, udp_multirecv_t *um )
iptv_rtp_read ( iptv_mux_t *im, udp_multirecv_t *um,
void (*pkt_cb)(iptv_mux_t *im, uint8_t *pkt, int len) )
{
ssize_t len, hlen;
uint8_t *rtp;
Expand All @@ -115,6 +116,9 @@ iptv_rtp_read ( iptv_mux_t *im, udp_multirecv_t *um )
if (len < 12)
continue;

if (pkt_cb)
pkt_cb(im, rtp, len);

/* Version 2 */
if ((rtp[0] & 0xC0) != 0x80)
continue;
Expand Down Expand Up @@ -149,7 +153,7 @@ iptv_udp_rtp_read ( iptv_mux_t *im )
{
udp_multirecv_t *um = im->im_data;

return iptv_rtp_read(im, um);
return iptv_rtp_read(im, um, NULL);
}

/*
Expand Down

0 comments on commit e808234

Please sign in to comment.