<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
<blockquote>
  <pre wrap=""><div class="moz-txt-sig">Message: 6
Date: Thu, 23 Apr 2009 09:37:50 +0100
From: Colin Guthrie <a class="moz-txt-link-rfc2396E"
 href="mailto:gmane@colin.guthr.ie">&lt;gmane@colin.guthr.ie&gt;</a>
Subject: Re: [pulseaudio-discuss] Pulseaudio server for playing 32-bit
        chroot sounds on 64-bit host machine
To: <a class="moz-txt-link-abbreviated"
 href="mailto:pulseaudio-discuss@mail.0pointer.de">pulseaudio-discuss@mail.0pointer.de</a>
Message-ID: <a class="moz-txt-link-rfc2396E"
 href="mailto:gsp9cu$ve9$1@ger.gmane.org">&lt;gsp9cu$ve9$1@ger.gmane.org&gt;</a>
Content-Type: text/plain; charset=UTF-8; format=flowed

'Twas brillig, and Ng Oon-Ee at 23/04/09 02:54 did gyre and gimble:
</div></pre>
  <blockquote>
    <pre wrap=""><span class="moz-txt-citetags">&gt; </span>Hi all, first post here but I've been following the list for quite a while.
<span class="moz-txt-citetags">&gt; </span>
<span class="moz-txt-citetags">&gt; </span>Been shifting to a 64-bit setup in Arch Linux, previously used it for a 
<span class="moz-txt-citetags">&gt; </span>while in Ubuntu with a multi-lib system but went back to 32-bit for a 
<span class="moz-txt-citetags">&gt; </span>variety of reasons, chiefly work-related. Now willing to try 64-bit 
<span class="moz-txt-citetags">&gt; </span>again, but with non-64 bit apps safely tucked away in a 32-bit chroot 
<span class="moz-txt-citetags">&gt; </span>instead of messing around with /lib32 stuff again.
<span class="moz-txt-citetags">&gt; </span>
<span class="moz-txt-citetags">&gt; </span>However, I'm not sure how to get PA to accept sounds from my 32-bit 
<span class="moz-txt-citetags">&gt; </span>chroot. The only help I've been able to find from this mailing list's 
<span class="moz-txt-citetags">&gt; </span>archives are a question and quick answer 
<span class="moz-txt-citetags">&gt; </span><a
 class="moz-txt-link-rfc2396E"
 href="http://www.mail-archive.com/pulseaudio-discuss@mail.0pointer.de/msg00141.html">&lt;http://www.mail-archive.com/pulseaudio-discuss@mail.0pointer.de/msg00141.html&gt;</a> 
<span class="moz-txt-citetags">&gt; </span>concerning permissions on /dev/shm, which are correct as referred to 
<span class="moz-txt-citetags">&gt; </span>there. In the Arch Linux forums, this thread 
<span class="moz-txt-citetags">&gt; </span><a
 class="moz-txt-link-rfc2396E"
 href="http://bbs.archlinux.org/viewtopic.php?pid=540619">&lt;http://bbs.archlinux.org/viewtopic.php?pid=540619&gt;</a> contains a 
<span class="moz-txt-citetags">&gt; </span>discussion on this, but without any clear statements on how the OP 
<span class="moz-txt-citetags">&gt; </span>actually got his system to work. I've done the most obvious thing, which 
<span class="moz-txt-citetags">&gt; </span>is to install 32-bit pulse in the chroot, but am unclear about what to 
<span class="moz-txt-citetags">&gt; </span>do beyond that. Further advise in that thread refers to pulse over a 
<span class="moz-txt-citetags">&gt; </span>network, and I'm not sure whether that's required, since its within the 
<span class="moz-txt-citetags">&gt; </span>same machine, after all.
<span class="moz-txt-citetags">&gt; </span>
<span class="moz-txt-citetags">&gt; </span>Thanks to any who can give me pointers in this matter. Some miscellenous 
<span class="moz-txt-citetags">&gt; </span>(sp?) things I noticed, when I try to run pulseaudio from the chroot I 
<span class="moz-txt-citetags">&gt; </span>get errors with lots of things not being able to startup, which only go 
<span class="moz-txt-citetags">&gt; </span>away on removing them from /etc/pulse/default.pa, these are:-
<span class="moz-txt-citetags">&gt; </span>module-device-restore
<span class="moz-txt-citetags">&gt; </span>module-stream-restore
<span class="moz-txt-citetags">&gt; </span>module-card-restore
<span class="moz-txt-citetags">&gt; </span>module-hal-detect
<span class="moz-txt-citetags">&gt; </span>module-bluetooth-discover
<span class="moz-txt-citetags">&gt; </span>module-{esound,native}-protocol-unix
<span class="moz-txt-citetags">&gt; </span>module-gconf
<span class="moz-txt-citetags">&gt; </span>The rest load up, leaving me with with module-default-device-restore, 
<span class="moz-txt-citetags">&gt; </span>module-rescue-streams, module-null-sink, and module-always-sink only.
<span class="moz-txt-citetags">&gt; </span>
<span class="moz-txt-citetags">&gt; </span>Also, when I run pulseaudio in the chroot, I notice /tmp contains two 
<span class="moz-txt-citetags">&gt; </span>folders named pulse-XXXXXXXX, so I'm guessing that the pulseaudio daemon 
<span class="moz-txt-citetags">&gt; </span>in the chroot doesn't know that there's already a daemon running and is 
<span class="moz-txt-citetags">&gt; </span>trying to take control of system devices, hence why I have to disable so 
<span class="moz-txt-citetags">&gt; </span>many modules since its failure to grab what pulseaudio (64bit) has 
<span class="moz-txt-citetags">&gt; </span>already taken causes errors.
<span class="moz-txt-citetags">&gt; </span>
<span class="moz-txt-citetags">&gt; </span>Thank you all for your time.
    </pre>
  </blockquote>
  <br>
Well, firstly, I'm not sure why you're using a chroot... I've been <br>
running 64 bit mandriva for several years and it's quite simple to <br>
install 32bit apps and libraries under a 64 bit system (the library <br>
packages never conflict between 32/64 systems). I've got several 32 bit
  <br>
sound producing apps and they all work fine.<br>
  <br>
Regardless of that, if you are using a chroot, you don't need a
"server" <br>
as per your subject, you just need the 32 bit pulse libraries. If you <br>
want alsa applications to work you'll need the 32 bit alsa libraries
and <br>
the 32 bit alsa pulse plugin.<br>
  <br>
As you said earlier you'll want to make the /dev/shm stuff work on your
  <br>
chroot to get best performance.<br>
  <br>
Remember that you do not want to run a second instance of the
pulseaudio <br>
deamon. There should only be one of these for your user, and it may as <br>
well be the 64 bit one.<br>
  <br>
Col<br>
</blockquote>
<br>
Am not sure whether top/bottom-posting is the way to go, please advise.<br>
<br>
Anyway, from your answer I suppose that making /dev/shm work means
ensuring that it exists and is world-read/write-able? My ls -la /dev |
grep shm returns:-<br>
<blockquote>drwxrwxrwt&nbsp; 2 root root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80 2009-04-23 17:30 shm<br>
</blockquote>
Presumably this should be correct.<br>
<br>
So, the results of paplay -v /usr/share/sounds/alsa/Side-Right.wav from
a terminal in the 64-bit install:-<br>
<blockquote>Using sample spec 's16le 1ch 48000Hz'<br>
Connection established.<br>
Stream successfully created<br>
Playback stream drained.<br>
Draining connection to server.<br>
</blockquote>
The same command, run from the 32-bit chroot:-<br>
<blockquote>Using sample spec 's16le 1ch 48000Hz'<br>
Connection failure: Connection terminated<br>
</blockquote>
So, somehow, the Pulse server/daemon won't allow the 32bit chroot to
play. The user within the chroot is identical to the user outside it,
with membership in audio, pulse, pulse-access, and pulse-rt. If I try
with user 'root' from the 32bit chroot, its the same result except for
an additional complaint about /home/&lt;user_name&gt; not belonging to
the user. Is there anything else I could try, some sort of permissions
thing with the server I could change?<br>
<br>
Finally, thanks for your quick response, Colin.<br>
</body>
</html>