File opal-new-celt.patch of Package opal

Index: opal-3.6.8/plugins/audio/celt/celtcodec.c
===================================================================
--- opal-3.6.8.orig/plugins/audio/celt/celtcodec.c
+++ opal-3.6.8/plugins/audio/celt/celtcodec.c
@@ -61,7 +61,7 @@ static int init_mode(CELTContext *celt,
     return FALSE;
   }
 
-  celt_mode_info(celt->mode, CELT_GET_FRAME_SIZE, &celt->frame_size);
+  celt->frame_size = 960; /* default from tools/celtenc.c, is this always correct? */
   celt->bytes_per_packet = (codec->bitsPerSec * celt->frame_size/codec->sampleRate + 4) / 8;
 
   return TRUE;
@@ -159,7 +159,7 @@ static int celt_codec_encoder(const stru
 #elif HAVE_CELT_0_5_0_OR_0_6_0
   byteCount = celt_encode(celt->encoder_state, (celt_int16_t *)fromPtr, NULL, (char *)toPtr, celt->bytes_per_packet);
 #else
-  byteCount = celt_encode(celt->encoder_state, (void *)fromPtr, NULL, (unsigned char *)toPtr, celt->bytes_per_packet);
+  byteCount = celt_encode(celt->encoder_state, (void *)fromPtr, celt->frame_size, (unsigned char *)toPtr, celt->bytes_per_packet);
 #endif
   if (byteCount < 0) {
 	return 0;
@@ -190,7 +190,7 @@ static int celt_codec_decoder(const stru
 #if defined (HAVE_CELT_0_4_OR_SOONER) || defined (HAVE_CELT_0_5_0_OR_0_6_0)
   if (celt_decode(celt->decoder_state, (char *)fromPtr, *fromLen, (short *)toPtr) < 0)
 #else
-  if (celt_decode(celt->decoder_state, (unsigned char *)fromPtr, *fromLen, (short *)toPtr) < 0)
+  if (celt_decode(celt->decoder_state, (unsigned char *)fromPtr, *fromLen, (short *)toPtr, celt->frame_size) < 0)
 #endif
     return 0;
openSUSE Build Service is sponsored by