[icecast] ices and VBR mp3s?

Benninghoff, John John.Benninghoff at Rbcdain.com
Mon Mar 25 17:41:44 UTC 2002



> > The response I got at the time from Brendan Cully:
> 
> He's the man in the know, so what he says is probably true.  Maybe if
> you asked him nicely he'd cook up a small patch for you :)
> 
> jack.
> 

I worked out a patch for ices-0.2.2 that forces ices to *always* re-encode the stream if Reencode is enabled:

--- CUT HERE ---
--- src/stream.c.orig	Thu Jul 26 12:01:55 2001
+++ src/stream.c	Thu Mar  7 22:01:51 2002
@@ -174,9 +174,9 @@
 
 #ifdef HAVE_LIBLAME
   if (ices_config.reencode)
-    /* only actually decode/reencode if the bitrate of the stream != source */
     for (stream = ices_config.streams; stream; stream = stream->next)
-      if (stream->bitrate != source->bitrate) {
+/* ALWAYS reencode -- bypass bitrate checking */
+{
         decode = 1;
         ices_reencode_reset ();
       }
@@ -207,11 +207,9 @@
       while (do_sleep) {
         rc = olen = 0;
         for (stream = ices_config.streams; stream; stream = stream->next) {
-	  /* don't reencode if the source is MP3 and the same bitrate */
-	  if (!stream->reencode || (source->read &&
-				    (stream->bitrate == source->bitrate))) {
+	  /* ALWAYS reencode */
+	  if (!stream->reencode)
             rc = stream_send_data (stream, ibuf, len);
-	  }
 #ifdef HAVE_LIBLAME
           else {
             if (samples > 0)
@@ -261,8 +259,8 @@
 
 #ifdef HAVE_LIBLAME
   for (stream = ices_config.streams; stream; stream = stream->next)
-    if (stream->reencode && (!source->read ||
-	(source->bitrate != stream->bitrate))) {
+    if (stream->reencode)
+{
       len = ices_reencode_flush (stream, obuf, sizeof (obuf));
       if (len > 0)
         rc = shout_send_data (&stream->conn, obuf, len);
--- CUT HERE ---

--- >8 ----
List archives:  http://www.xiph.org/archives/
icecast project homepage: http://www.icecast.org/
To unsubscribe from this list, send a message to 'icecast-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Icecast mailing list