From 4e25f81d1273d88bf6f2a9b7e23af8c4389e5690 Mon Sep 17 00:00:00 2001 From: Manfred Tremmel Date: Sat, 20 Dec 2003 19:51:48 +0000 Subject: solved some big-endian problemes CVS patchset: 5928 CVS date: 2003/12/20 19:51:48 --- src/audio_out/audio_arts_out.c | 6 ++++-- src/demuxers/demux_ogg.c | 11 ++++++++++- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/audio_out/audio_arts_out.c b/src/audio_out/audio_arts_out.c index 0379e1567..22f7ea3c2 100644 --- a/src/audio_out/audio_arts_out.c +++ b/src/audio_out/audio_arts_out.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: audio_arts_out.c,v 1.23 2003/12/14 22:13:22 siggi Exp $ + * $Id: audio_arts_out.c,v 1.24 2003/12/20 19:51:48 manfredtremmel Exp $ */ #ifndef __sun /* _XOPEN_SOURCE causes build prob's on sunos */ @@ -42,6 +42,7 @@ #include "xine_internal.h" #include "xineutils.h" #include "audio_out.h" +#include "bswap.h" #define AO_OUT_ARTS_IFACE_VERSION 8 @@ -92,7 +93,8 @@ static void ao_arts_volume(void *buffer, int length, int volume) { while (length--) { v=(int) ((*(data) * volume) / 100); - *(data++)=(v>32767) ? 32767 : ((v<-32768) ? -32768 : v); + *(data)=(v>32767) ? 32767 : ((v<-32768) ? -32768 : v); + *(data++)=LE_16(data); } } /* End volume control */ diff --git a/src/demuxers/demux_ogg.c b/src/demuxers/demux_ogg.c index a2833d0a9..7255d415e 100644 --- a/src/demuxers/demux_ogg.c +++ b/src/demuxers/demux_ogg.c @@ -19,7 +19,7 @@ */ /* - * $Id: demux_ogg.c,v 1.125 2003/12/10 01:18:36 miguelfreitas Exp $ + * $Id: demux_ogg.c,v 1.126 2003/12/20 19:51:48 manfredtremmel Exp $ * * demultiplexer for ogg streams * @@ -61,6 +61,7 @@ #include "xine_internal.h" #include "xineutils.h" #include "demux.h" +#include "bswap.h" #define CHUNKSIZE 8500 #define PACKET_TYPE_HEADER 0x01 @@ -840,13 +841,21 @@ static void demux_ogg_send_header (demux_ogg_t *this) { memcpy(&locsubtype, &op.packet[9], 4); memcpy(&locsize, &op.packet[13], 4); + locsize = LE_32(&locsize); memcpy(&loctime_unit, &op.packet[17], 8); + loctime_unit = LE_64(&loctime_unit); memcpy(&locsamples_per_unit, &op.packet[25], 8); + locsamples_per_unit = LE_64(&locsamples_per_unit); memcpy(&locdefault_len, &op.packet[33], 4); + locdefault_len = LE_32(&locdefault_len); memcpy(&locbuffersize, &op.packet[37], 4); + locbuffersize = LE_32(&locbuffersize); memcpy(&locbits_per_sample, &op.packet[41], 2); + locbits_per_sample = LE_16(&locbits_per_sample); memcpy(&locwidth, &op.packet[45], 4); + locwidth = LE_32(&locwidth); memcpy(&locheight, &op.packet[49], 4); + locheight = LE_32(&locheight); lprintf ("direct show filter created stream detected, hexdump:\n"); #ifdef LOG -- cgit v1.2.3