linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Endiness and sideffect fixes for XMMS
@ 2000-08-27  0:01 Henry Worth
  2000-08-27 22:24 ` [XMMS-DEVEL] " Haavard Kvaalen
  2000-08-28 12:44 ` Geert Uytterhoeven
  0 siblings, 2 replies; 3+ messages in thread
From: Henry Worth @ 2000-08-27  0:01 UTC (permalink / raw)
  To: linuxppc-dev@lists.linuxppc.org

[-- Attachment #1: Type: text/plain, Size: 2757 bytes --]


Attached are bzip2'd diffs for xmms-1.2.2 to fix some endiness
and macro side-effect problems needed on the LinuxPPC platform.
Included:

xmms/input.c and Output/diskwriter/diskwriter.c

  Various glib byteswap macros called with an argument having
  side-effects (pointer post-increment). The macros expand
  the argument multiple times resulting in the pointer
  being incremented well beyond the end of the buffer. On x86
  these macros expand to asm code that may not have the
  problem, and of course won't even be invoked for common
  LE .wav and CD data formats. Causes seg faults in
  some cases and corrupt visualzation data in others.

  Also, a statement in diskwriter makes order of evaluation
  assumptions not guaranteed by C.

esd output plugin

  Patches from Takashi Oe <toe@unlserve.unl.edu> add
  endiness and sign corrections for esd. I changed the byte
  swap routines to use the glib macros generally used in
  xmms. Sign conversions and 8-bit data haven't had any
  real testing as the wav and sndfile input plugins
  aren't working well (sndfile plugin/lib exhibits
  endiness problems on all formats and the wav plugin
  doesn't recognize many 8-bit wavs on either PPC or
  x86 -- an input plugin using the mature multi-platform
  audiofile lib would sure be useful, for testing if
  nothing else).


Notes for LinuxPPC users:

Dependencies on xmms1.2.2 will require updating the
Gnome related libs to the 1.2.2+ level. On LinuxPPC
these have been very unstable, but 1.2.8 (Helix)
seems to finally be pretty stable (xmms CPU load
is also cut significantly and the memory leaks appear
to be tamed -- 1.2.7 was really bad). These patches
could probably be adapted without too much effort to
earlier versions of xmms if you want to minimize updates.

These dependencies will also drag in the later esound
packages which don't work well with the dmasound drivers
(playing only 1-in-n blocks for a very fast playback --
even with esdplay). The backport of Ian Sandoe's new
dmasound drivers seems to fix, or more likely cover-up,
the problem (see his call for testers on the linuxppc-dev
list). The alternative is to use OSS output (won't work
currently on Pismo with LE data -- e.g. CD's and .wav's)
or try forcing the use of the older (pre-ALSA?) esd.

With these patches -- and if you can get a stable
combination of Gnome libs, esound, and dmasound...
-- the xmms-cdread input plugin
<ftp://mud.stack.nl/pub/OuterSpace/willem/> will work
reliably instead of seg-faulting in xmms/input.c and
the LE CD data will be converted to NE for esd. This
provides a CDDA GUI player for the newer Mac models
that lack analog connections to the CD/DVD (the
alternative is command-line use of cdparanoia with
the -Z option piped into play).

Henry

[-- Attachment #2: xmms.diff2.bz2 --]
[-- Type: application/octet-stream, Size: 1787 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [XMMS-DEVEL] Endiness and sideffect fixes for XMMS
  2000-08-27  0:01 Endiness and sideffect fixes for XMMS Henry Worth
@ 2000-08-27 22:24 ` Haavard Kvaalen
  2000-08-28 12:44 ` Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: Haavard Kvaalen @ 2000-08-27 22:24 UTC (permalink / raw)
  To: Henry Worth; +Cc: linuxppc-dev@lists.linuxppc.org


On Sat, 26 Aug 2000, Henry Worth wrote:

> Attached are bzip2'd diffs for xmms-1.2.2 to fix some endiness
> and macro side-effect problems needed on the LinuxPPC platform.

Patch applied.  Thanks.

--
Håvard Kvålen ** http://home.sol.no/~havardk/

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Endiness and sideffect fixes for XMMS
  2000-08-27  0:01 Endiness and sideffect fixes for XMMS Henry Worth
  2000-08-27 22:24 ` [XMMS-DEVEL] " Haavard Kvaalen
@ 2000-08-28 12:44 ` Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2000-08-28 12:44 UTC (permalink / raw)
  To: Henry Worth; +Cc: linuxppc-dev@lists.linuxppc.org


On Sat, 26 Aug 2000, Henry Worth wrote:
> Attached are bzip2'd diffs for xmms-1.2.2 to fix some endiness
> and macro side-effect problems needed on the LinuxPPC platform.

Please create unified diffs (`diff -u') when submitting patches. Plain context
diffs are too hard for my eyes :-)

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2000-08-28 12:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-08-27  0:01 Endiness and sideffect fixes for XMMS Henry Worth
2000-08-27 22:24 ` [XMMS-DEVEL] " Haavard Kvaalen
2000-08-28 12:44 ` Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).