]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - audiod.c
sched: Use built-in instead of open-coded timeout helpers.
[paraslash.git] / audiod.c
index 012f6344e7120f2cc4e17992d0719252a51ed0cd..668b0f744cf316d3c1b8ad916845831f3c88b2d0 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -191,7 +191,7 @@ int get_audio_format_num(const char *name)
  * It has to to take into account that probably the stream was not started at
  * the beginning of the file, that the clock between the server and the client
  * host may differ and that playback of the stream was delayed, e.g. because
- * the prebuffer filter is used in the filter chain of the given slot.
+ * the prebuffer filter is used in the filter configuration of the given slot.
  *
  * If no writer is active in the given slot, or \a slot_num is negative
  * (indicating that para_audiod runs in standby mode), an approximation based
@@ -358,6 +358,8 @@ static void close_receiver(int slot_num)
        btr_free_node(s->receiver_node->btrn);
        free(s->receiver_node);
        s->receiver_node = NULL;
+       tv_add(now, &(struct timeval)EMBRACE(0, 200 * 1000),
+               &a->restart_barrier);
 }
 
 static void writer_cleanup(struct writer_node *wn)
@@ -863,7 +865,8 @@ static int init_default_filters(void)
                 * If udp is used to receive this audiod format, add fecdec as
                 * the first filter.
                 */
-               if (strcmp(afi[i].receiver->name, "udp") == 0) {
+               if (strcmp(afi[i].receiver->name, "udp") == 0 ||
+                               strcmp(afi[i].receiver->name, "dccp") == 0) {
                        tmp = para_strdup("fecdec");
                        add_filter(i, tmp);
                        free(tmp);