X11.app and XMMS
Hi all. I've decided to reinstall X11 Fink etc just for certain things. One of those things is XMMS. The X Multimedia System. I wanna open it from X11.app's Applications shortcut menu and XMMS opens just fine but then it can't find the sound driver etc no matter what I do. Here's what I posted to the X11 Apple mailing list:
Well.. any suggestions? = )
Quote:
Update on the situation:
When I try typing 'xmms' at my xterm prompt it loads the sound just fine but it uses the Built-in Audio component. I want it to use ESD. Here's what happens when I type ESD at my prompt:
[MacOSXRules:~] bob% esd
using device Built-in audio controller for output:
with sample rate 44100.000000, 2 channels and 32-bit sample
using device Built-in audio controller for input:
with sample rate 44100.000000, 2 channels and 32-bit sample
I want that to happen when I select XMMS from the Applications shortcut menu in X11.app. When I try and do that it complains no matter what I do. Any suggestions?
On Sunday, September 28, 2003, at 11:20 PM, gheller@hellermedia.com wrote:
How do I get ESD to start up without having to add it to my .xinitrc file? If I dont do that my XMMS doesnt find my sound card and complains that it's not set up correctly blah blah.... I'm running on Mac OS X 10.2.8 with X11b3. Also two other things: I don't think Quartz-WM is starting either.. Whenever I try and open up an Xterm it comes up as a white box on the upper left of my screen. The same happens with XMMS' WIndows.
Update on the situation:
When I try typing 'xmms' at my xterm prompt it loads the sound just fine but it uses the Built-in Audio component. I want it to use ESD. Here's what happens when I type ESD at my prompt:
[MacOSXRules:~] bob% esd
using device Built-in audio controller for output:
with sample rate 44100.000000, 2 channels and 32-bit sample
using device Built-in audio controller for input:
with sample rate 44100.000000, 2 channels and 32-bit sample
I want that to happen when I select XMMS from the Applications shortcut menu in X11.app. When I try and do that it complains no matter what I do. Any suggestions?
On Sunday, September 28, 2003, at 11:20 PM, gheller@hellermedia.com wrote:
How do I get ESD to start up without having to add it to my .xinitrc file? If I dont do that my XMMS doesnt find my sound card and complains that it's not set up correctly blah blah.... I'm running on Mac OS X 10.2.8 with X11b3. Also two other things: I don't think Quartz-WM is starting either.. Whenever I try and open up an Xterm it comes up as a white box on the upper left of my screen. The same happens with XMMS' WIndows.
Well.. any suggestions? = )
Comments
lemme know how xmms is on OSX, I want and MP3 player that uses 0% CPU and itunes is nowhere near that. Also, I use it to (by default) save streams to disk, so I can save all my rad protonradio.com streams and pluck out the good tracks.
#!/bin/sh
if [ ps aux | grep esd | grep -v grep ]; then
echo "esd is already running."
else
echo "starting esd..."
esd&
echo "esd is running."
fi
xmms&
note: that ps->grep(x2) test may not be the best way to check for a running program.
now, instead of having xmms be the menu item, save that (or a similar) script somewhere, give it execute permissions, then put it as the menu item.
-
also, i've had a lot of trouble with xmms/esd and iTunes in the passed. i think back in iTunes v3 or v2, once i started esd, iTunes couldn't reclaim audio. And I would quickly tire of xmms and want to go back to iTunes. it would often require a restart, or would force me to continue using xmms. xmms being such a dirty program, you may want to consider waiting around a few weeks until my new mp3 player comes out.
esd -port 16001 &
Originally posted by Brad
I think you need the port flag as well. Try this:
esd -port 16001 &
Thanks Brad and 1337 Hax0r! You did it. Leet: you ask about how XMMS runs on OS X? Well here's a screenshot of my terminal running TOP:
Notice that you need to have X11 installed and running to use it as there isn't an XMMS Aqua (yet). I like XMMS because it's skinable and it's cool. I hear it can play MPEG movies. I have yet to try that. It's sorta like the WinAmp that the Mac never got. Here's a screenshot of my XMMS with its current skin:
Now Brad: when I popped in "esd -port 16001 &" will that add esd to the programs that start when I log in or would I have to manually start it up again?
Thuh freak: I'm an amateur compared to you with that script writing stuff so if I had to do that you'd have to basically write it for me. Heh.
P.S. The terminal text in the first screenshot should be green text on a black background. Matrix style. But for some reason the color got distorted. Oh well. Thanks again all.
Originally posted by thuh Freak
ok, in my post, notice the <code> section (starts with '#!/bin/sh ends with xmms&'), replace the 'esd&' line with Brad's 'esd -port 16001 &'. then copy and paste the whole thing into a file, save it in your home folder. pop into terminal, and change permissions on it like this: 'chmod +x nameOfSavedFile'. now move it somewhere useable, like '/usr/local/bin' or something, like this: 'sudo mkdir -p /usr/local/bin;sudo cp nameOfSavedFile /usr/local/bin'. Now, edit the x11 menu to use '/usr/local/bin/nameOfSavedFile' instead of xmms. (for all the previous replace 'nameOfSavedFile' with the name of the file you saved.) To run xmms use the new menu item (and possibly remove the xmms one). It'll spawn esd if it needs to, then it'll startup xmms.
Well what Brad told me to do seems to have worked. I logged out and logged back in to test it and ESD was still running. I hope it runs when I restart....
Originally posted by Proud iBook Owner 2k2
Well what Brad told me to do seems to have worked. I logged out and logged back in to test it and ESD was still running. I hope it runs when I restart....
well, it won't be running when u restart. you have to start it yourself (or write a startup script). it does, as you've noticed, survive through log outs/ins. i was playing around with esd yesterday (on my gnu/linux box), and i noticed that it will quit itself if it can't hit the sound card (you may want to test this yourself). so, you should be safe trying to reopen it whenever you want. if you run xmms and you can't get sound to work with esd, just pop into terminal and run 'esd -port 16001&'. you can probably make a menu item for it in x11 too.
Originally posted by thuh Freak
well, it won't be running when u restart. you have to start it yourself (or write a startup script). it does, as you've noticed, survive through log outs/ins. i was playing around with esd yesterday (on my gnu/linux box), and i noticed that it will quit itself if it can't hit the sound card (you may want to test this yourself). so, you should be safe trying to reopen it whenever you want. if you run xmms and you can't get sound to work with esd, just pop into terminal and run 'esd -port 16001&'. you can probably make a menu item for it in x11 too.
Could you be so kind as to write me a startup script?
Though, it doesn't keep running after you restart the computer.
[MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking build system type... powerpc-apple-darwin6.8
checking host system type... powerpc-apple-darwin6.8
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... no
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -p
checking for a sed that does not truncate output... /usr/bin/sed
checking whether ln -s works... yes
checking how to recognise dependent libraries... file_magic Mach-O dynamically linked shared library
checking command to parse /usr/bin/nm -p output... ok
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... no
checking dlfcn.h presence... no
checking for dlfcn.h... no
checking for ranlib... ranlib
checking for strip... strip
checking for objdir... .libs
checking for gcc option to produce PIC... -fno-common
checking if gcc PIC flag -fno-common works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking whether the linker (/usr/bin/ld) supports shared libraries... yes
checking how to hardcode library paths into programs... unsupported
checking whether stripping libraries is possible... no
checking dynamic linker characteristics... darwin6.8 dyld
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether -lc should be explicitly linked in... yes
creating libtool
checking for ANSI C header files... (cached) yes
checking for an ANSI C-conforming const... yes
checking for Ogg... yes
checking for Vorbis... yes
checking for libcurl... yes
checking for libmad (>= 0.12.0)... yes
checking for liblame... yes
checking for wx-config... no
checking for xmms-config... /sw/bin/xmms-config
checking for gawk... (cached) gawk
checking for XMMS - version >= 1.2.4... yes
checking for glib-config... no
checking for GLIB - version >= 1.2.2... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: error: *** GLIB >= 1.2.2 not installed - please install first ***
Notice I started with [MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config. I did what it told me and it still doesn't wanna find where glib is... Any suggestions? Brad? Thuh Freak? Anyone?
Originally posted by Proud iBook Owner 2k2
Okay well now I'm trying to compile a DSP plugin for XMMS and I'm ALMOST there but it can't find my glib installation no matter what I do. Here's the terminal output:
[MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config
...
checking for glib-config... no
checking for GLIB - version >= 1.2.2... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: error: *** GLIB >= 1.2.2 not installed - please install first ***
Notice I started with [MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config. I did what it told me and it still doesn't wanna find where glib is... Any suggestions? Brad? Thuh Freak? Anyone?
You can get glib pre-compiled from here:
http://www.myersdaily.org/joseph/not...5a52d1ccb1217a
It is a bzip2 file, so you will have to expand with
% cat glib-1.2.10-ppc-comp.tar.bz2.* | bzip2 -d | tar -xf -
and then go into that directory and type
% sudo make install
I assume you know how to do this kind of thing?
If the directories /usr/local/* do not exist, then they will need to be created first.
Originally posted by cookies
You can get glib pre-compiled from here:
http://www.myersdaily.org/joseph/not...5a52d1ccb1217a
It is a bzip2 file, so you will have to expand with
% cat glib-1.2.10-ppc-comp.tar.bz2.* | bzip2 -d | tar -xf -
and then go into that directory and type
% sudo make install
I assume you know how to do this kind of thing?
If the directories /usr/local/* do not exist, then they will need to be created first.
I have it installed... but I don't know how to tell it where it is.... I want it to look in /sw/lib but I don't know how to tell it that.
Originally posted by Proud iBook Owner 2k2
Could you be so kind as to write me a startup script?
#!/bin/sh
esd -p 16001 &
Thats your script (pretty simple, eh?). Now, the trick is to make it run on startup. Mac OS X and darwin have this interesting way of handling startup scripts. In /Library/StartupItems (and /System/Library/StartupItems/), there are folder with various names. Inside each of those folders is a file with the exact name as the folder it contains. That is the startup script. So, make the /Library/StartupScripts/ESD/ directory (sudo mkdir -p /Library/StartupScripts/ESD/) (note: we use /Library/.. because we want this program to start regardless of users, and not in /System/.. because it is not Apple-made). Copy the code section, from above, into a file named 'ESD' (note the capital letters). Move the file into /Library/StartupScripts/ESD/. Now, another trick about Mac OS X startup scripts, is you have to have a StartupParameters.plist file in there (actually, I'm not sure if its required, but it can't hurt). The contents of this file should look like this:
{
Description = "Enlightened Sound Daemon";
Provides = ("esd");
Requires = ("");
Uses = ("");
OrderPreference = "Last";
Messages = {
start = "Starting Enlightened Sound Daemon";
stop = "Stopping Enlightened Sound Daemon";
};
}
The different values are easy enough to understand. Items within parenthesis, are arrays (in this simplistic example, an array of 1 item), other items are scalar strings. This file should be in the /Library/StartupItems/ESD folder, next to the script.
Now, the final step, is to make the script executable. In terminal type:
sudo chmod +x /Library/StartupItems/ESD/ESD
Originally posted by Proud iBook Owner 2k2
Okay well now I'm trying to compile a DSP plugin for XMMS and I'm ALMOST there but it can't find my glib installation no matter what I do. Here's the terminal output:
[MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config
...
Notice I started with [MacOSXRules:~/oddcastv2_xmms-2.0.0] gasparhe% ./configure --prefix=/usr/local/bin/glib-config. I did what it told me and it still doesn't wanna find where glib is... Any suggestions? Brad? Thuh Freak? Anyone?
actually, ur --prefix isn't right. --prefix is where you want the final program to be installed (when you do 'sudo make install'). what they were saying is IF glib-config is installed in your prefix, then make sure that "PREFIX/bin is in your path..."; in your case, glib-config is probably not in PREFIX (since, A: your building this thing your self, so ur prefix should be /usr/local. b: you shouldn't force the prefix into /sw/ [which would probably match glib-config] because the fink system wouldn't know how to handle anything you installed inside /sw/). whenever i get a problem with ./configure (ie, it doesn't work), i open up config.log. This file tends to be long (so please spare us the full contents). If you jump to the end, then slowly back off a page at a time, you'll (hopefully) find the problem part. There should be a few lines in sh-style, that explain what ./configure was trying to do when it error'd out. In your case it should mention the glib-config program. If you give us those lines (plus like 5 or 10 on either side of them), I should be able to help you out a bit more.
edit: i was just thinking. and you may have already tried this, but its worth a try. './configure --help'. it should print out all kinds of help info. it may not all make sense, but if you notice anything about glib, post those lines here and we may be able to figure it out.