PDA

View Full Version : AlienBBC and Mac installation instructions.



Daniel Cohen
2004-12-02, 15:46
As noted, I have got a long way towards getting AlienBBC to work on
my Mac, but there are still major issues. It seems worthwhile,
though, to post my instructions so that others can see if they run
into the same problems. These instructions are essentially the same
as those on the AlienBBC site, but modified to be more Mac-like.

Even though these instructions will need modification, it's likely to
be a matter of downloading another file or editing some further
lines, they are certainly close to being correct. I haven't bothered
about the RealPlayer part of the original instructions because, as
far as I can see, the relevant item (cook,bundle) is part of the
installation of mplayer.

WARNING. Some of the downloads can take quite a long time, even on
broadband, and the installation, though it's automated, may take a
very long time.

Step 1. Install the Developer Tools (on your installation CDs) and
X11 (also on the CDs with Panther. Looking at
http://www.apple.com/macosx/features/x11/download/, I don't think a
Jaguar version is available).

Step 2. Go to http://fink.sourceforge.net/ and follow the
instructions for downloading Fink. Fink provides a version for OS X
of many useful Unix programs.

The download and installation is mostly automated, but you will, I
think, have to answer various Yes/No questions during the process, so
you can't be away from your computer too much.

Fink comes with FinkCommander, a GUI for installation of software.

Step 3. Use FinkCommander to download and install the following:

lame
madplayer
mplayer
HTML::Parser

In FinkCommander's preferences, under Fink check "use unstable
packages" (as mplayer seems to be unstable at the time of writing)
and under Commander you will probably want to check "always choose
default response to prompts", so that installation can proceed
without you being there.

The main FinkCommander window is divided into two parts. In the upper
part is a list of packages with descriptions. You may find others
that interest you, for instance anacron will take care of system
maintenance even if the computer is asleep at the scheduled time. To
install a package, click to select it, go to Binary in the menus and
use Install if available. If it is greyed out, go to Source in the
menus and select Install.

After that it all goes forward, with detailed information in the
lower half of the window. One of the reasons things can take a long
time is that each package may require some subsidiary packages
downloaded and installed also. Also, during the compilation phase
there may be no obvious activity going on.

Step 4. Download and decompress AlienBBC. You will get a folder
containing the file alienstream (which is no longer needed), a file
transcoder_proxy.pl, and a folder Plugins.

For the rest of the procedure, there are slight differences
depending on whether you have installed SlimServer for all users or
just for one user.

If you have installed it for all users, it will be in
/Library/PreferencePanes but if installed for only one it is in
~/Library/PreferencePanes.

Whichever Library it is in will also have a folder SlimDevices. If
this folder does not already have a subfolder labelled Plugins, move
(or copy, if you prefer) the Plugins folder of AlienBBC into the
SlimDevices folder. If a Plugins folder already exists move or copy
the contents of the AlienBBC Plugins folder (which will be a folder
named Alien) into the Plugins folder in SlimDevices.

Edit transcodery_proxy.pl according to the instructions in the next
step. Then Control-click on the SlimServer preference pane to get a
contextual menu, and choose "Show package contents". Open the
subfolder 'server' of Contents. Copy (option-drag), not move,
transcoder_proxy.pl into this folder.

Note. The reason for editing the file in its place and then copying
it rather than moving is that I think, though I am not sure, that an
upgrade of SlimServer will delete it from the contents of the new
version. If you have kept it, you can then copy it in again. By
contrast, the contents of SlimDevices doesn't get destroyed in an
update.

Step 5. You now need to edit a couple of files using your favourite
text editor. There is an issue with line endings, as Unix ends its
lines with a Line Feed and Mac OS ends lines with a Carriage Return.
Your text editor needs to give you the choice. For editing, it is
simplest to first convert all line feeds to carriage returns (this is
the default preference in Tex-Edit-Plus, which I use. Other text
editors will have their own ways of doing this, perhaps from a Tools
menu item). This provides a more readable file than the original.
Edit the file, and VERY IMPORTANT convert the carriage returns back
into line feeds and save the file.

Edit transcoder_proxy.pl so that the first line reads
#!/usr/bin/perl -w
-I/Library/PreferencePanes/SlimServer.prefPane/Contents/server/CPAN

if you have installed SlimServer for all users,

and so that it reads
#!/usr/bin/perl -w
-I/Users/yourusername/Library/PreferencePanes/SlimServer.prefPane/Contents/server/CPAN

if you have installed it for one user only. Here, of course,
'yourusername' needs to be replaced by the actual user name.

Note. My contextual menu items includes "Copy path to clipboard", but
I'm not sure if this is an Apple item or a third-party item. If you
have this item, instead of typing in the path, you may simply want to
go to CPAN (as previously, control-click on the preference pane and
"Show package contents" to get to it), copy its path to the clipboard
and paste it into the text.

In the Config block of transcoder_proxy.pl, in the line beginning my
@encoder_search_paths add the location of lame. This is likely to be
/usr/local/bin/lame or else /sw/bin/lame. Don't forget " at beginning
and end, and a comma separating two places if you want to allow it to
look at both places. If you can't see the file (and /usr is invisible
normally), just do Command-F, remembering to look for visible and
invisible files, to find out where it is.

The other bit of editing needed is to edit Plugin.pm (which is inside
SlimDevices/Plugins/Alien) so that the line beginning my $proxy_path
points to the actual path to transcoder_proxy.pl. It should be either

my $proxy_path =
"/Library/PreferencePanes/SlimServer.prefPane/Contents/server/transcoder_proxy.pl

or

my $proxy_path =
"/Users/yourusername/Library/PreferencePanes/SlimServer.prefPane/Contents/server/transcoder_proxy.pl

where, as before, 'yourusername' should be replaced by your actual
user name. Don't forget the semi-colon at the end of the line.

That's all that's required, except for whatever is needed to solve
the problems I had.

Problems. First, running SlimServer in the usual way, the AlienBBC
just doesn't appear.

Try stopping Slimserver and starting it again by the command line.
That is, open Terminal and type in the full path to slimserver.pl and
press Return (As before, you may be able to get the path by a
contextual menu item of "Copy path to clipboard").
You may want to try making the line ...slimserver.pl --d_plugins as
this will give more information about what is happening.

When I did this, I got AlienBBC appearing both under Internet Radio
on the Squeezebox, and as a new item in the Web interface, under
server settings, from where I could navigate to various BBC pages.

I could get as far as finding a stream, pressing Play, and getting
the message "connecting to ...". But it just got stuck there,
repeatedly flashing up this message but not actually playing anything.

Notes. When AlienBBC is updated, you will need to edit the new
transcoder_proxy.pl, and put the new copy of Alien in the Plugins
folder and edit the new plugin.pm.
When SlimServer is updated, you will need to recopy
transcoder_proxy.pl from its original place into its place in the
preference pane.



--
Daniel Cohen