Re: Theora 1.0 final release!

"[email protected]" <[email protected]>
Newsgroups gmane.comp.multimedia.ogg.theora.devel
Message-ID <ccbc6dd90811120307n123d2c6dv7a90c18ec652c7eb__39615.3214657263$1226488153$gmane$org@mail.gmail.com>
Fixed, attached.
I'm not sure this fix is optimal though: if there's no sync point,
it sends everything. That's the reason the stream was blocking
on skeleton.
Tested with libshout's example.c and XMMS.

_______________________________________________
theora-dev mailing list
[email protected]
http://lists.xiph.org/mailman/listinfo/theora-dev
icecast-skeleton.diff (text/x-patch, 1 KB)
diff -ru /mnt/dvd/svn/xiph/icecast/src/format.c ./src/format.c
--- /mnt/dvd/svn/xiph/icecast/src/format.c	2008-09-12 11:55:46.000000000 +0100
+++ ./src/format.c	2008-11-11 18:46:33.000000000 +0000
@@ -98,6 +98,7 @@
 static void find_client_start (source_t *source, client_t *client)
 {
     refbuf_t *refbuf = source->burst_point;
+    refbuf_t *refbuf_start;
 
     /* we only want to attempt a burst at connection time, not midstream
      * however streams like theora may not have the most recent page marked as
@@ -116,6 +117,7 @@
         }
     }
 
+    refbuf_start = refbuf;
     while (refbuf)
     {
         if (refbuf->sync_point)
@@ -128,6 +130,15 @@
         }
         refbuf = refbuf->next;
     }
+
+    if (!refbuf)
+    {
+        DEBUG0("good sync point not found, starting anywhere anyway");
+        client_set_queue (client, refbuf_start);
+        client->check_buffer = format_advance_queue;
+        client->write_to_client = source->format->write_buf_to_client;
+        client->intro_offset = -1;
+    }
 }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.