aboutsummaryrefslogtreecommitdiffstats
path: root/packages/libxine/libxine-1.0.0-beta12/libxine-libvorbis.patch
blob: f52754d6a79d3a273e558445cc116135f9deaf60 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Copyright (C) 2002, Fred Boulay <dilb@handhelds.org>
Licensed under GPL v2

--- src/libvorbis/xine_decoder.c.orig	2002-12-18 01:35:37.000000000 +0100
+++ src/libvorbis/xine_decoder.c	2002-12-18 01:35:48.000000000 +0100
@@ -34,7 +34,7 @@
 #include "buffer.h"
 
 #include <ogg/ogg.h>
-#include <vorbis/codec.h>
+#include <tremor/ivorbiscodec.h>
 
 #define MAX_NUM_SAMPLES 4096
 
--- src/libvorbis/xine_decoder.c.orig	2002-12-19 17:09:30.000000000 +0100
+++ src/libvorbis/xine_decoder.c	2002-12-19 17:09:35.000000000 +0100
@@ -202,7 +202,7 @@ static void vorbis_decode_data (audio_de
  
   } else if (this->output_open) {
 
-    float **pcm;
+    int **pcm;
     int samples;
 
     if(vorbis_synthesis(&this->vb,op)==0) 
@@ -221,9 +221,9 @@ static void vorbis_decode_data (audio_de
 	 interleave */
       for(i=0;i<this->vi.channels;i++){
 	ogg_int16_t *ptr=audio_buffer->mem+i;
-	float  *mono=pcm[i];
+      int *mono=pcm[i];
 	for(j=0;j<bout;j++){
-	  int val=mono[j]*32767.f;
+        int val=mono[j]>>9;
 	  /* might as well guard against clipping */
 	  if(val>32767){
 	    val=32767;