summaryrefslogtreecommitdiffstats
path: root/src/modules
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2006-04-15 15:26:42 +0000
committerLennart Poettering <lennart@poettering.net>2006-04-15 15:26:42 +0000
commit1fec416db7db4ba8d2d2dd250187939f0b06dbd7 (patch)
tree24d579381ac8c0096faeb93002d3976e2cea7e11 /src/modules
parent71227de8b233fd12568609a2ac393e432a7c4299 (diff)
* change default multicast address
* fix timestamp calculation git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@715 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/rtp/module-rtp-monitor.c7
-rw-r--r--src/modules/rtp/rtp.c7
-rw-r--r--src/modules/rtp/rtp.h3
3 files changed, 9 insertions, 8 deletions
diff --git a/src/modules/rtp/module-rtp-monitor.c b/src/modules/rtp/module-rtp-monitor.c
index 66332093..c153a9d5 100644
--- a/src/modules/rtp/module-rtp-monitor.c
+++ b/src/modules/rtp/module-rtp-monitor.c
@@ -61,9 +61,9 @@ PA_MODULE_USAGE(
"mtu=<maximum transfer unit> "
)
-#define DEFAULT_PORT 5666
+#define DEFAULT_PORT 5004
#define SAP_PORT 9875
-#define DEFAULT_DESTINATION "224.0.0.252"
+#define DEFAULT_DESTINATION "224.0.1.2"
#define MEMBLOCKQ_MAXLENGTH (1024*170)
#define DEFAULT_MTU 1024
#define SAP_INTERVAL 5000000
@@ -136,7 +136,6 @@ static void sap_event(pa_mainloop_api *m, pa_time_event *t, const struct timeval
pa_sap_send(&u->sap_context, 0);
- pa_log("SAP update");
pa_gettimeofday(&next);
pa_timeval_add(&next, SAP_INTERVAL);
m->time_restart(t, &next);
@@ -280,7 +279,7 @@ int pa__init(pa_core *c, pa_module*m) {
af == AF_INET ? (void*) &sa4.sin_addr : (void*) &sa6.sin6_addr,
"Polypaudio RTP Stream", port, payload, &ss);
- pa_rtp_context_init_send(&u->rtp_context, fd, 0, payload);
+ pa_rtp_context_init_send(&u->rtp_context, fd, 0, payload, pa_frame_size(&ss));
pa_sap_context_init_send(&u->sap_context, sap_fd, p);
pa_log_info("RTP stream initialized with mtu %u on %s:%u, SSRC=0x%08x, payload=%u, initial sequence #%u", mtu, dest, port, u->rtp_context.ssrc, payload, u->rtp_context.sequence);
diff --git a/src/modules/rtp/rtp.c b/src/modules/rtp/rtp.c
index a3e78d84..a3bce38b 100644
--- a/src/modules/rtp/rtp.c
+++ b/src/modules/rtp/rtp.c
@@ -35,7 +35,7 @@
#include "rtp.h"
-pa_rtp_context* pa_rtp_context_init_send(pa_rtp_context *c, int fd, uint32_t ssrc, uint8_t payload) {
+pa_rtp_context* pa_rtp_context_init_send(pa_rtp_context *c, int fd, uint32_t ssrc, uint8_t payload, size_t frame_size) {
assert(c);
assert(fd >= 0);
@@ -44,7 +44,8 @@ pa_rtp_context* pa_rtp_context_init_send(pa_rtp_context *c, int fd, uint32_t ssr
c->timestamp = 0;
c->ssrc = ssrc ? ssrc : (uint32_t) (rand()*rand());
c->payload = payload & 127;
-
+ c->frame_size = frame_size;
+
return c;
}
@@ -114,7 +115,7 @@ int pa_rtp_send(pa_rtp_context *c, size_t size, pa_memblockq *q) {
} else
k = 0;
- c->timestamp += skip;
+ c->timestamp += skip/c->frame_size;
if (k < 0) {
if (errno != EAGAIN) /* If the queue is full, just ignore it */
diff --git a/src/modules/rtp/rtp.h b/src/modules/rtp/rtp.h
index e925cc0e..39288158 100644
--- a/src/modules/rtp/rtp.h
+++ b/src/modules/rtp/rtp.h
@@ -34,9 +34,10 @@ typedef struct pa_rtp_context {
uint32_t timestamp;
uint32_t ssrc;
uint8_t payload;
+ size_t frame_size;
} pa_rtp_context;
-pa_rtp_context* pa_rtp_context_init_send(pa_rtp_context *c, int fd, uint32_t ssrc, uint8_t payload);
+pa_rtp_context* pa_rtp_context_init_send(pa_rtp_context *c, int fd, uint32_t ssrc, uint8_t payload, size_t frame_size);
int pa_rtp_send(pa_rtp_context *c, size_t size, pa_memblockq *q);
pa_rtp_context* pa_rtp_context_init_recv(pa_rtp_context *c, int fd);