WMA and XMMS


Forum: Multimedia
Topic: WMA and XMMS
started by: reid_geo

Posted by reid_geo on Aug. 25 2006,03:54
Is anyone aware of a package that will add WMA playback capability to XMMS running under DSL 3.0.1?

I've fumbled through this with earlier versions of DSL, but am looking for a simple Synaptic or dpkg install.

As an aside, why does Linux in general shun WMA support?  I believe WMA is superior to MP3 in audio fidelity (although of course not as good as Ogg..)  Maybe its a licensing thing, but I wonder if it isn't just misplaced anti-Micro$oft sentiment.  That's kind of a cut-off-nose-to-spite-face thing, and it certainly alienates potential Linux/DSL users.

Posted by mikshaw on Aug. 25 2006,04:13
I think it's mostly because the continued support of proprietary closed file formats is counterproductive in an increasingly open source world.
Posted by reid_geo on Aug. 31 2006,05:18
Here is a way to remaster DSL 3.0.1 to include WMA support for XMMS.  I did this largely for my own edification.  Yes, I know there are other more elegant ways to accomplish this, (even though it is not politically correct in the linux community.)  No, I do not wish to convert thousands of wma files to ogg vorbis etc.

Thanks to all those who posted remastering HOWTOs on these forums and elsewhere.

Remastering Damn Small Linux 3.0.1 with XMMS Support for WMA
Using a Bootable CD and USB Drive

This is adapted from Phil Greenwood's great work here: < http://www.pcc.com/staff/phil/remasterdsl.txt > as well as a few other places including the DSL forums.  Here is a quote from Phil Greenwood's instructions: "Give credit where credit is due (Meo in the DSL forum and John Andrews and Robert Shingledecker at the DSL Organization)!"

Why a method that uses a bootable CD and USB key?  Because you can do this on a Windows PC.  All you need is to borrow a little HD space for a minute.

Be sure you have backed up any and all data you care about on both the computer and USB drive used in these instructions.

You will want to download an xmms-wma rpm before you start.  I put the RPM in C:\temp.  What worked for me was xmms-wma-1.0.5-1.1.fc3.rf.i386.rpm .

Requirements:
- bootable CD copy of DSL 3.0.1 (probably works with other versions)
- 512 MB of RAM.
- a USB drive with 256MB of available storage.  These instructions assume you have one and only one USB drive installed.
- a CD-RW (if you want to create a bootable CD)

Lines starting with the prompts “%” and “#” are commands you type in the terminal window, (but don't type the comments in parenthesis)

Start:
Insert the USB drive in a port.
Boot DSL from the CD, using the “dsl toram” option at the “boot:” prompt.
Open an ATerminal window, and become root:
%sudo  su

Create and mount an ext2 file system on the USB drive (wipes out all data):
#mkfs.ext2  /dev/sda1
#mount -rw  /dev/sda1  /mnt/sda1

Mount the CDROM:
- use the Desktop tool, or
#mount /dev/cdrom  /mnt/cdrom     (your device may vary, can't go into that here.  Use the Desktop tool if you can.)

Change directories to the USB file system:
# cd  /mnt/sda1

Make the directories needed:

#mkdir  source
#mkdir  newcd
#mkdir  newcd/KNOPPIX

Copy necessary files to directory /newcd:

#cp  -Rp  /mnt/cdrom/boot  newcd
#cp  -Rp  /mnt/cdrom/lost+found  newcd
#cp  -Rp  /mnt/cdrom/index.html  newcd

Copy the sources to the right directory (don't second-guess here, these paths are correct):

#cp  -Rp  /KNOPPIX/*  source
#cp  -Rp  /KNOPPIX/.bash_profile  source       (note period before “bash..”)

Add the xmms-wma library to the source directory on the USB drive.  (You did download the RPM onto the HD before you started didn't you?):

Mount the HD:
Use the Desktop tool, or
#mount  /dev/hda1  /mnt/hda1    (your device may vary, can't go into that here.  Use the Desktop tool if you can.)

Copy the RPM to the USB drive:
#cd  /mnt/sda1
#cp  /mnt/hda1/temp/xmms-wma-1.0.5-1.1.fc3.rf.i386.rpm .    (type this exactly, including the space and period at the end)
#rpm2cpio xmms* | cpio -i -d
This should extract libwma.so to usr/lib/xmms/Input on the USB drive.

Unmount the HD:
Use the Desktop tool or,
#umount /mnt/hda1

Copy the file to the source folder on the USB drive:
#cd source/usr/lib/xmms/Input
#cp /mnt/sda1/usr/lib/xmms/Input/libwma.so .  (type this exactly, including the space and period at the end)

Now you are ready to build your custom compressed image file:

From /mnt/sda1 type this (as one line of text):
#mkisofs -R source | create_compressed_fs - 65536 > newcd/KNOPPIX/KNOPPIX

Then change directories:
#cd /mnt/sda1/newcd

Create the iso you're going to burn to CD as follows. (the command is one long command line):

#mkisofs  -no-pad  -l  -r  -J  -no-emul-boot  -boot-load-size  4  -boot-info-table  -b boot/isolinux/isolinux.bin  -c boot/isolinux/boot.cat  -hide-rr-moved  -o mydsl.iso ../newcd          

If necessary copy the iso-file to somewhere so you can burn the newly built iso.
I just burned it directly from where I built it (/mnt/sda1/newcd).  Assuming your CD-RW is the same CD you booted DSL from, you will need to unmount the CDROM and remove it, and insert a blank CDR.

Use Desktop tool to unmount cdrom, or
#umount  /mnt/cdrom                  (again your device may vary)

#cd /mnt/sda1/newcd
#cdrecord -v -dummy -pad speed=8 dev=0,0,0 blank=fast  (this line might be optional)
#cdrecord -v speed=8 dev=0,0,0 mydsl.iso

The resulting bootable CD should be DSL 3.01, with WMA playing capability in xmms.

Posted by mikshaw on Aug. 31 2006,14:11
Quote
This is adapted from Phil Greenwood's great work here
I think you mean Meo's great work =o)

Posted by reid_geo on Sep. 01 2006,02:50
Quite right.  Here is a quote from Phil Greenwood's instructions, which I borrowed heavily from:  "Give credit where credit is due (Meo in the DSL forum and John Andrews and Robert Shingledecker at the DSL Organization)!"
Posted by Thinman on Sep. 03 2006,21:57
Get mplayer from multimedia and codecpak from system in mydsl i think that will work
Posted by Thinman on Sep. 03 2006,22:03
Get mplayer from multimedia (not the xfree or plugin) and get codecpak from system and that might do the trick.
Posted by reid_geo on Sep. 10 2006,03:35
Here is an efficient way to get WMA capability for the XMMS package in DSL 3.0.1:

- Boot DSL using the "toram" option (this procedure probably takes 256MB RAM minimum, maybe more).  Boot from your CD writer drive, hopefully it is cdrom1 (see mkmydsl below).

- create a directory like /home/dsl/remaster
- create a file myconf.tar.gz in ~/remaster, that contains these directories/files:

home
home/dsl
home/dsl/.xmms
home/dsl/.xmms/Plugins
home/dsl/.xmms/Plugins/Input
home/dsl/.xmms/Plugins/Input/libwma.so

- sudo su
- run mkmydsl (http://www.damnsmalllinux.org/talk/node/113)

The resulting DSL remaster will have wma playing capability.

I used the libwma.so from xmms-wma-1.0.5-1.1.fc3.rf.i386.rpm.
You can extract it with rpm2cpio xmms*|cpio -i -d.

Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.