PDA

View Full Version : New music player - Exaile!



Pages : [1] 2 3 4 5

synic
April 13th, 2006, 10:52 PM
I released Exaile 0.2b2 today. I really like Amarok, but I was hoping for a gtk+ alternative, so I started Exaile. I know ... I know, there are tons of media players out there, but I see this as a fun way to learn python and gtk+.

Some screenshots can be found here:

http://www.exaile.org

It's beta, but if you're bored, check it out. Here's what you'll need to do:



# sudo apt-get install python-gtk2 python-pysqlite2 python-pymad libgstreamer0.10 libgstreamer0.10-plugins-good python-gst0.10 python-pyogg
# wget http://www.exaile.org/files/exaile_0.2b4_i386.deb
# sudo dpkg -i exaile_0.2b4_i386.deb


.. and a new icon will show up in Applications->Sound and Video

Go to Tools->Library Manager, add your music directory, and away you go.

Optional: If you want mp3 support, install gstreamer0.10-plugins-ugly, and if you want wma, install gstreamer0.10-ffmpeg

Feedback and comments are appreciated!

-synic

Seaman
April 13th, 2006, 11:01 PM
It looks quite nice, you should try to get it into the repos.

A question, what does Exaile have that for example Banshee doesn't?

xXx 0wn3d xXx
April 13th, 2006, 11:01 PM
I like it :) Very nice.

synic
April 13th, 2006, 11:04 PM
re: banshee

It supports streams, automatic cover art, and queueing. I don't think the banshee version in breezy has these.

renzokuken
April 13th, 2006, 11:06 PM
install went fine

just importing my library now, i like the "random 100" function, gonna be the first thing i try.

ok, all working now, slapped on random 100 and first track up is Simple Minds - Dont You Forget About Me (Breakfast Club, awesome film)

anyways, all looks good, seems to have a bit more functionality than Listen which is good

EDIT: been playing for a bit now dude, i really like it, fast database, simple and effective

one question, how can i create a desktop launcher for this?

xXx 0wn3d xXx
April 13th, 2006, 11:17 PM
install went fine

just importing my library now, i like the "random 100" function, gonna be the first thing i try.

ok, all working now, slapped on random 100 and first track up is Simple Minds - Dont You Forget About Me (Breakfast Club, awesome film)

anyways, all looks good, seems to have a bit more functionality than Listen which is good

EDIT: been playing for a bit now dude, i really like it, fast database, simple and effective

one question, how can i create a desktop launcher for this?

Point the launcher to /home/USERNAME/exaile/exaile <= Replace the USERNAME with your username.

renzokuken
April 13th, 2006, 11:34 PM
that doesnt work....does the run file not need the "./" in front of it to start

could i not make a link to it in /usr/bin then launch ./exaile

or write a little bash script for it?

endersshadow
April 13th, 2006, 11:39 PM
that doesnt work....does the run file not need the "./" in front of it to start

could i not make a link to it in /usr/bin then launch ./exaile

or write a little bash script for it?

You just need to point it to the executable. Alternatively, you could do:

sudo ln -s /path/to/exaile /usr/bin/exaile

Then you'll be able to run it with just the command "exaile" (sans quotes) instead...going to install now :-D

First impressions:

I'm really impressed with this player. You did a fantastic job with the interface and the features. Below, I'm just collecting bugs that I've found and/or noticed for recordkeeping...but all in all fantastic job, and I'd love for this to continue to be improved!

-It doesn't show any other mounted drives in the Library Manager when you go to add a file. For example, I've got 2 other mounted partitions that I had to go through root (/) to get to...not really a problem, but it might leave users who aren't sure where those are mounted a bit confused at first.

-Customizable smart playlists would be an awesome feature.

-My playlists disappear when I have multiple tabs open and I scroll between them...they just...become blank...

synic
April 14th, 2006, 12:28 AM
-My playlists disappear when I have multiple tabs open and I scroll between them...they just...become blank...

Hrmm, if you have something typed into the filter box, it applies to all tabs - could this be what's happening?

Stormy Eyes
April 14th, 2006, 12:37 AM
Nice work so far, synic. I had to write a script to cd to the install directory, but that's no problem. I'd suggest tweaking the cover fetching routine. The first cover that amazon.com returns isn't always the right one. For example, I played Imaginos by Blue Oyster Cult, but for some reason, Exaile used the cover from Blind Guardian's Imaginations from the Other Side album. Granted, I can easily set a custom cover, but I'm a bit spoiled by gmusicbrowser's offering me a choice of covers.

synic
April 14th, 2006, 01:11 AM
Nice work so far, synic. I had to write a script to cd to the install directory, but that's no problem. I'd suggest tweaking the cover fetching routine. The first cover that amazon.com returns isn't always the right one. For example, I played Imaginos by Blue Oyster Cult, but for some reason, Exaile used the cover from Blind Guardian's Imaginations from the Other Side album. Granted, I can easily set a custom cover, but I'm a bit spoiled by gmusicbrowser's offering me a choice of covers.

You can right click on the cover to try a different search string. I'll have to take a gander at gmusicbrowser.

endersshadow
April 14th, 2006, 02:11 AM
Hrmm, if you have something typed into the filter box, it applies to all tabs - could this be what's happening?

Nah, it does it in a default state :-|

Lovechild
April 14th, 2006, 02:39 AM
I believe I'll stay with Rhythmbox for now because Exaile visually makes very little sense to me.

flange
April 14th, 2006, 03:17 AM
I think it looks nice. It has a very clean, uncluttered layout. I don't understand the metaphors for your tab icons, but overall I think it looks very appealing. If you can continue down the Amarok path without bringing in the (IMHO) clutter that Amarok suffers from, it would make an excellent addition to the GTK media players available. Great start!

synic
April 14th, 2006, 03:17 AM
I believe I'll stay with Rhythmbox for now because Exaile visually makes very little sense to me.

That's cool - I mostly wrote this to fit my needs - which I'm sure are mostly different than everyone elses.

synic
April 14th, 2006, 03:18 AM
I think it looks nice. It has a very clean, uncluttered layout. I don't understand the metaphors for your tab icons, but overall I think it looks very appealing. If you can continue down the Amarok path without bringing in the (IMHO) clutter that Amarok suffers from, it would make an excellent addition to the GTK media players available. Great start!

Yeah... I'm not an artist. I basically just took icons from other apps.

SO... if you are an artist, and want to help, let me know :)

flange
April 14th, 2006, 03:24 AM
Yeah... I'm not an artist. I basically just took icons from other apps.

SO... if you are an artist, and want to help, let me know :)

Sadly, no. I'm a techie. My girlfriend says I'm a good photographer, but I think she's way too biased. And that's about as artsy as I get.

I'd be far more likely to help with the Python coding, but even with that, I'm just beginning. I have some reasonable C/C++ experience, but I'm very rusty, and I'm just getting started with Python.

synic
April 14th, 2006, 03:32 AM
Sadly, no. I'm a techie. My girlfriend says I'm a good photographer, but I think she's way too biased. And that's about as artsy as I get.

I'd be far more likely to help with the Python coding, but even with that, I'm just beginning. I have some reasonable C/C++ experience, but I'm very rusty, and I'm just getting started with Python.

I think you'll really like it, especially after using C and C++. I've only been coding in it for ~3 months, and I already know it's my favorite language by far.

Ultimo Aliento
April 14th, 2006, 04:02 AM
Looks great !, i have a little problem adding my music folders with the library tool, the program say this :

loading songs
Running is False
/home/seccion9/Shared
/home/seccion9/Compartidos
/home/seccion9/Incomplete
File count: 4
Traceback (most recent call last):
File "/home/seccion9/exaile/xl/media.py", line 361, in read_tag
audio = mad.MadFile(self.loc)
IOError: Object must have a read method
Traceback (most recent call last):
File "/home/seccion9/exaile/xl/media.py", line 361, in read_tag
audio = mad.MadFile(self.loc)
IOError: Object must have a read method
Count is now: 4
loading songs
Traceback (most recent call last):
File "/home/seccion9/exaile/xl/librarychooser.py", line 85, in __OnRemove
del self.items[indexes[0]]
IndexError: tuple index out of range
Running is False

Then, i just chose one folder, Exaile indexed one song (of two possible), and when i try to play the song, the program crash.

Keep working in this program! looks promising :D

drummer
April 14th, 2006, 04:11 AM
It looks really nice in the screens, I'll certainly try it out one I get my computer fixed up :(

INMCM
April 14th, 2006, 04:37 AM
I get the same problem as Ultimo, except on a much larger scale. I added my library of ~33000 songs and watching the terminal I see lots of

Traceback (most recent call last):
File "/home/inmcm/exaile/xl/media.py", line 350, in read_tag
audio = mad.MadFile(self.loc)
IOError: Object must have a read method

at the end of scanning (very fast for the task it was given!!) I noticed the count was right

Count is now: 33602

but when I look at the track count in Exaile, it only shows 32919. 700ish track missing. I'm working on tracking down which tracks it baulked on, but it is taking some time with all these files to check.

Other than that, just needs to have some sort of tray thingie and it'll be super awesome!

jasay
April 14th, 2006, 05:12 AM
Hmm. I keep getting the following error:
$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1356, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above exception.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1385, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1381, in main
app.exaile = ExaileWindow(fr)
File "exaile.py", line 128, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/jasay/exaile/xl/media.py", line 43, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'
Any suggestions? Might I need different/additional dependencies since I'm using Dapper? I noticed a few guys are on Dapper as well. Was there anything you had to do differently than in the OP to get it to work?

doclivingston
April 14th, 2006, 07:10 AM
That's cool - I mostly wrote this to fit my needs - which I'm sure are mostly different than everyone elses.

Which is why we have so many different music players around - choice is a good thing.

Welcome to the ever-expanding club of music player hackers.

chronusdark
April 16th, 2006, 08:23 PM
looks great can we expect ipod support in the future?

oxEz
April 17th, 2006, 07:06 PM
I can confirm it works on Gentoo Linux. I had to emerge wxpython, wxgtk, pygtk, and PIL (Python Imaging Library), for the 'Image' module, otherwise Exaile doesn't start. (the package is named 'imaging' in portage tree).

GarethMB
April 17th, 2006, 08:03 PM
Right straight off this isn't picking up all my media on my PC. ; ;

Also, i beg anyone who is going to develop a media player...include a graphic EQ.
Its a shame that this isn't detecting all my music, because it seems to be the closest thing i've found yet to my favourite media player Musik Cube.


gareth@ubuntu:~/exaile$ cd exaile && ./exaile
bash: cd: exaile: Not a directory
gareth@ubuntu:~/exaile$ svn checkout svn://jbother.org/usr/local/svn/exaile
svn: 'exaile' is already a file/something else
gareth@ubuntu:~/exaile$ cd exaile && ./exaile
bash: cd: exaile: Not a directory
gareth@ubuntu:~/exaile$ exaile
bash: exaile: command not found
gareth@ubuntu:~/exaile$ ./exaile
loading songs
Importing /home/gareth/.exaile/saved_playlist.m3u
Running is False
/media/hda3/gareth/Music
File count: 178
Traceback (most recent call last):
File "/home/gareth/exaile/xl/tracks.py", line 248, in read_track
tr.read_tag()
File "/home/gareth/exaile/xl/media.py", line 404, in read_tag
f = ogg.vorbis.VorbisFile(self.loc)
TypeError: Argument 1 is not a filename or file object
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/home/gareth/exaile/xl/tracks.py", line 317, in run
for root, dirs, files in os.walk(dir):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 281, in walk
if isdir(join(top, name)):
File "/usr/lib/python2.4/posixpath.py", line 65, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 10: ordinal not in range(128)

Exanding
Exanding
Exanding
Running is True
Running is True
new thread created with Various - Kill Bill: Volume 1 [Enhanced] [Explicit Lyrics] [Soundtrack]
cover thread started
Thread done.... *shrug*, no covers found
Aborted cover thread
playing has been stopped on 'Sword Swings'
gareth@ubuntu:~/exaile$ ./exaile
loading songs
Importing /home/gareth/.exaile/saved_playlist.m3u
Running is False
/media/hda3/gareth/Music
File count: 178
Traceback (most recent call last):
File "/home/gareth/exaile/xl/tracks.py", line 248, in read_track
tr.read_tag()
File "/home/gareth/exaile/xl/media.py", line 404, in read_tag
f = ogg.vorbis.VorbisFile(self.loc)
TypeError: Argument 1 is not a filename or file object
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/home/gareth/exaile/xl/tracks.py", line 317, in run
for root, dirs, files in os.walk(dir):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 281, in walk
if isdir(join(top, name)):
File "/usr/lib/python2.4/posixpath.py", line 65, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 10: ordinal not in range(128)



Thats your bug.

kaamos
April 17th, 2006, 09:12 PM
This project looks great. Thanks for the effort!

ShanghaiTeej
April 18th, 2006, 10:17 AM
Installed it and am impressed. The queue manager aspect of Amarok is why I keep using it. Nice to see that same functionality in a Gnome music player. Ipod support would be wonderful!

graabein
April 18th, 2006, 10:39 AM
Looks interesting. I use XMMS and Banshee at the moment. Some questions:

1) Have you thought about adding toggle support for a smaller winamp-like GUI? You know, the best of two worlds?

2) Can you browse by artist and albums like iTunes and Rythmbox?

3) How about Last.fm/Audioscrobbler plugin?

Good luck with this project! :D

synic
April 18th, 2006, 04:36 PM
Looks interesting. I use XMMS and Banshee at the moment. Some questions:

1) Have you thought about adding toggle support for a smaller winamp-like GUI? You know, the best of two worlds?

2) Can you browse by artist and albums like iTunes and Rythmbox?

3) How about Last.fm/Audioscrobbler plugin?

Good luck with this project! :D

1) I have thought about a mini-gui - so yeah, that'll be in in the future.
2) Yes
3) Already in and working like a charm (last.fm prefs)

synic
April 18th, 2006, 04:37 PM
looks great can we expect ipod support in the future?


Eventually. I'll probably add zen micro support, first (as I don't actually own an iPod).

Sheinar
April 18th, 2006, 05:38 PM
Edit: Nevermind, realised I was missing pyxml.

Pretty nice player. Shows a lot of promise. Most gtk music players make me want to scream at how much the interface stabs at my eyes (Rhythmbox for example.)

Seems to take quite a while longer than I'm used to to import my music though, but I assume that's because of SQLite. An option to use an alternative database would be nice.

Omnios
April 18th, 2006, 05:55 PM
Very interesting player though it crashed it looks real good. There is a few things missing in Linux and one of them is music file support where you can brouse through files and shares that contain music guess you could do a bookmark type thing where you can go through your music collection using files as I personaly and many others keep there genders in different files.

Also I am looking forward to Zen support though Gnomad2 is pretty good having a player that does it may be better.

synic
May 10th, 2006, 03:58 AM
Lots of changes.... including shoutcast directory support!

Last week someone broke into my car and stole my creative zen micro. (and various other items). I've finally gone to the dark side and purchased an iPod.

So... Exaile now has iPod support. Included in the svn repository is a python-gpod.deb for dapper in the debs/ dir.

Disclaimer: Exaile does not currently modify anything on the iPod as far as I can tell, however, there might be something I'm overlooking. Use at your own risk.

New screenshots can be seen at http://www.exaile.org

nalmeth
May 10th, 2006, 04:07 AM
How about lyric fetching? This is why listen is my music player right now.
Also, I would be at your feet if you made a "guitar player's" version that fetched tabulatures for songs as well.
I've always thought that would be REALLY COOL ;) ;) nudge nudge

synic
May 10th, 2006, 04:25 AM
Exaile will eventually support lyric fetching and wikipedia...

I like the idea of the tablature feature (I play the guitar too). Super idea, and yeah, I'll put it in as soon as I can. Do you have a preferred site for getting tabs? I use harmony-central...

On a side note: "listen" is a great player, and I think underused. So... here is a blatant ad: Seriously, check it out if you haven't already: http://listengnome.free.fr. I found it by accident whilst perusing the quodlibet site and had never heard of it before... which is suprising to me because it's such a nice app.

DoktorSeven
May 10th, 2006, 04:44 AM
This is a really cool player. So far, my only problem was that the preferences dialog wouldn't close with OK (therefore losing my preferences) because I didn't have iPod support:



Traceback (most recent call last):
File "/home/stephen/source/exaile/xl/prefs.py", line 369, in __Apply
panel.Apply()
File "/home/stephen/source/exaile/xl/prefs.py", line 134, in Apply
self.settings['ipod_mount'] = self.mount.GetValue()
AttributeError: 'iPodPrefs' object has no attribute 'mount'


As a quick solution I just hacked prefs.py, removing the references in def Apply(self) under the iPodPrefs class to the ipod values and replacing them with dummy values (0). Seems to work fine now.

Edit: I guess a more permanent solution would be to do the dummy values in an if not IPOD_AVAILABLE: block and have the real settings in the else: clause. But I'm lazy :)

synic
May 10th, 2006, 04:55 AM
Ah, thanks for the input. This should be fixed now.

nalmeth
May 10th, 2006, 05:08 AM
fretplay.com seems to have a lot of songs I'm looking for.
I don't like ultimateguitar with all the flash and crap, but it always bails me out when I start to hate it :)
I always thought harmony-central was kind of, weird? It does have a lot of tabs though.
Seriously man, you would be my god if you could pull this out.
I don't know much about programming, but I imagine the difficulty would be in getting a text friendly site with reliable tabs.
I will help you look around for an appropriate site for testing, if you'd like.
I agree listen is super, but one thing that really bugs me (and seems absent from exaile :) ) is the stupid white bar/panel in the middle, which takes up all that space, and doesn't even allow you to drag playlists into it to save, or anything. It drives me nuts lookin at it, but otherwise it's such a good player I can look past it.

mpmc
May 11th, 2006, 08:48 PM
Well, What can, I say.. Brilliant..

A few thing you could consider?

1: Add an option to auto play the track you've added to the playlist (Adding it to the top of the list to continue playback, next track etc)

2: Lyric Support, If you visit leoslyrics.com (Ask in the forums how to use his database He will email you, Or, I can give you the info, If you like, It's xml)

3: Mini GUI (Already requested)

4: Tray Icon... (really useful)

Other than those simple things, I love it... Just what I was looking for...

Keep it up, Loving the 'bloatless' feeling :-D

Edit:

Just noticed the program toolbar doesn't update correctly..

synic
May 11th, 2006, 09:24 PM
Thanks :)

There's actually already a tray icon, you just have to enable it in the preferences (wx design rules say you should have it disabled by default).

I emailed the leoslyrics admin, but never got a response - so yeah, if you have the info, that'd be great.

The rest will eventually be in there :)

easyease
May 12th, 2006, 12:27 AM
very nice thanks! just one thing......is there any way it can use streamripper to rip streams? youve done a great job of it. :-D

AndyCooll
May 12th, 2006, 12:30 AM
Would like to try it but alays get the following error. Anyone able to help me fix this?


root@snoopy:~# cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 1680, in main
bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 206, in __init__
Bus.__init__(self, Bus.TYPE_SESSION)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 71, in __init__
self._connection = dbus_bindings.bus_get(bus_type)
File "dbus_bindings.pyx", line 1501, in dbus_bindings.bus_get
DBusException: No reply within specified time
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1724, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1716, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 97, in __init__
session_bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 206, in __init__
Bus.__init__(self, Bus.TYPE_SESSION)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 71, in __init__
self._connection = dbus_bindings.bus_get(bus_type)
File "dbus_bindings.pyx", line 1501, in dbus_bindings.bus_get
dbus_bindings.DBusException: No reply within specified time

synic
May 12th, 2006, 04:43 PM
root@snoopy:~# cd exaile && ./exaile



Perhaps because you're running it as root? I'm really not sure.

GarethMB
May 12th, 2006, 06:05 PM
I cant import all of my library. I get this:


gareth@ubuntu:~$ cd exaile && ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1684, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
loading songs
mmkeys are available... running gtk.main()
Running is False
/media/hda3/gareth/Music
File count: 179
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/home/gareth/exaile/xl/tracks.py", line 368, in run
for root, dirs, files in os.walk(dir):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 291, in walk
for x in walk(path, topdown, onerror):
File "/usr/lib/python2.4/os.py", line 281, in walk
if isdir(join(top, name)):
File "/usr/lib/python2.4/posixpath.py", line 65, in join
path += '/' + b
UnicodeDecodeError: 'utf8' codec can't decode byte 0xa0 in position 10: unexpected code byte

Which is a shame because the interface seems really nice.

mpmc
May 12th, 2006, 09:38 PM
synic:

I've tried to send you the info but it bounces back (email)

I've added you to MSN, but your offline...

UbuWu
May 13th, 2006, 01:14 AM
Great work! With Dapper getting ready for release very soon, it would probably be a good idea to port it over to gstreamer 0.10 instead of 0.8.

ShanghaiTeej
May 13th, 2006, 04:17 AM
Love the player...

I was just wondering when podcast support might be available. Otherwise, I'm enjoying the work! Much Thanks.

zenwhen
May 13th, 2006, 04:22 AM
Great work! This is the first player other than MPD that handles my music library without crashing. :) I happen to really like the interface too.

yb1011
May 13th, 2006, 05:37 AM
Thanks synic! I really like this and hope you keep this up for Dapper :)

PS- Guys... is starting the player via the terminal the only way to run it? I cant see it in my menu and have no idea how to create a launcher for this player. Can someone explain it to me in noob terms? Please :)

Thank you.

ShanghaiTeej
May 13th, 2006, 08:58 AM
Thanks synic! I really like this and hope you keep this up for Dapper :)

PS- Guys... is starting the player via the terminal the only way to run it? I cant see it in my menu and have no idea how to create a launcher for this player. Can someone explain it to me in noob terms? Please :)

Thank you.

Well, you've probably noticed an Exaile folder in your Home folder now. All you have to do is drag the file "exaile" into your applications bar at the top (assuming you are using Gnome) and voila...you have a graphial link.

mikaPELL
May 15th, 2006, 07:42 PM
This happens when I try to load my database...

loading songs
mmkeys are available... running gtk.main()
Running is False
/home/mikapell/knato/mp3
File count: 0
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/home/mikapell/exaile/xl/tracks.py", line 368, in run
for root, dirs, files in os.walk(dir):
File "/usr/lib/python2.4/os.py", line 281, in walk
if isdir(join(top, name)):
File "/usr/lib/python2.4/posixpath.py", line 65, in join
path += '/' + b
UnicodeDecodeError: 'utf8' codec can't decode byte 0x86 in position 1: unexpected code byte



Except from the fact that I can't listen to my music, it truly looks great!

synic
May 15th, 2006, 08:47 PM
This happens when I try to load my database...

loading songs
mmkeys are available... running gtk.main()
Running is False
/home/mikapell/knato/mp3
File count: 0
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/home/mikapell/exaile/xl/tracks.py", line 368, in run
for root, dirs, files in os.walk(dir):
File "/usr/lib/python2.4/os.py", line 281, in walk
if isdir(join(top, name)):
File "/usr/lib/python2.4/posixpath.py", line 65, in join
path += '/' + b
UnicodeDecodeError: 'utf8' codec can't decode byte 0x86 in position 1: unexpected code byte



Except from the fact that I can't listen to my music, it truly looks great!

Hopefully this problem is fixed. It still might skip files with weird characters in the path name, so renaming the file will probably work

mikaPELL
May 17th, 2006, 06:25 PM
It worked great now. Your program rules!

Ob1
May 17th, 2006, 11:24 PM
Is your code open source or an executable file?

synic
May 17th, 2006, 11:59 PM
Is your code open source or an executable file?

Open source of course :)

tenshi-no-shi
May 18th, 2006, 08:29 PM
One problem I can see that needs to be fixed is well the library hates anything songs with spaces in it's name. All of my songs are like that, so I am going to have to rename EVERY song in my library to get is working (which I am not, since I only really listen to streams and mplayer in term is all I need for that), but other than that it looks promising, I will probably use it a lot more of the bugs are ironed out.

synic
May 18th, 2006, 08:43 PM
One problem I can see that needs to be fixed is well the library hates anything songs with spaces in it's name. All of my songs are like that, so I am going to have to rename EVERY song in my library to get is working (which I am not, since I only really listen to streams and mplayer in term is all I need for that), but other than that it looks promising, I will probably use it a lot more of the bugs are ironed out.

I have spaces in almost all of my filenames. What specific problem are you encountering?

tenshi-no-shi
May 18th, 2006, 11:42 PM
Strange, well anyways when I add my music folder to the music library list it finds all the files then promptly does not register any in the library.

zachtib
May 19th, 2006, 12:15 AM
i get this error (on dapper)


zach@notapowerbook:~/exaile$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1796, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1839, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1830, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 102, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/zach/exaile/xl/media.py", line 50, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'
zach@notapowerbook:~/exaile$

synic
May 19th, 2006, 12:16 AM
i get this error (on dapper)


zach@notapowerbook:~/exaile$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1796, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1839, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1830, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 102, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/zach/exaile/xl/media.py", line 50, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'
zach@notapowerbook:~/exaile$


To fix this error on Dapper, apt-get install gstreamer0.8-plugins and restart exaile.

synic
May 19th, 2006, 12:17 AM
Strange, well anyways when I add my music folder to the music library list it finds all the files then promptly does not register any in the library.

Are you running it from the command line? If so, do you see any errors?

Sheinar
May 19th, 2006, 12:37 AM
I keep getting this error when I try to run it on Arch.



Traceback (most recent call last):
File "exaile.py", line 1759, in main
bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 266, in __new__
return Bus.__new__(cls, Bus.TYPE_SESSION, use_default_mainloop, private)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 99, in __new__
bus._connection = dbus_bindings.bus_get(bus_type, private)
File "dbus_bindings.pyx", line 1695, in dbus_bindings.bus_get
DBusException: Unable to determine the address of the message bus
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1806, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1797, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 98, in __init__
session_bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 266, in __new__
return Bus.__new__(cls, Bus.TYPE_SESSION, use_default_mainloop, private)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 99, in __new__
bus._connection = dbus_bindings.bus_get(bus_type, private)
File "dbus_bindings.pyx", line 1695, in dbus_bindings.bus_get
dbus_bindings.DBusException: Unable to determine the address of the message bus

synic
May 19th, 2006, 02:38 AM
I keep getting this error when I try to run it on Arch.



Traceback (most recent call last):
File "exaile.py", line 1759, in main
bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 266, in __new__
return Bus.__new__(cls, Bus.TYPE_SESSION, use_default_mainloop, private)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 99, in __new__
bus._connection = dbus_bindings.bus_get(bus_type, private)
File "dbus_bindings.pyx", line 1695, in dbus_bindings.bus_get
DBusException: Unable to determine the address of the message bus
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1806, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1797, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 98, in __init__
session_bus = dbus.SessionBus()
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 266, in __new__
return Bus.__new__(cls, Bus.TYPE_SESSION, use_default_mainloop, private)
File "/usr/lib/python2.4/site-packages/dbus/_dbus.py", line 99, in __new__
bus._connection = dbus_bindings.bus_get(bus_type, private)
File "dbus_bindings.pyx", line 1695, in dbus_bindings.bus_get
dbus_bindings.DBusException: Unable to determine the address of the message bus


Sounds like you don't have dbus running. I can't exactly remember how Arch's init system works, but it seems like it's /etc/rc.d/dbus start or something similar to get it going... if you have it installed.

I've just made an update that will make it so that exaile can run even if dbus isn't, you can svn update and try and see if that works. Note, that without dbus running, you'll probably end up getting multiple instances of exaile if you try to stream to it by clicking on a link in firefox or from streamtuner.

Adam

Sheinar
May 19th, 2006, 02:57 AM
I actually tried it with dbus a while ago and it still wouldn't run. A different error message though, so I guess at least the problem isn't from not running with dbus enabled. I probably should have posted the other one instead. Anyway...

With dbus:


[sheinar@nespithe exaile]$ dbus-launch ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1763, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 25, in __call__
ret = self._proxy_method (*args, **keywords)
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 102, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout)
File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1806, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1797, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 139, in __init__
self.__SetupLeft()
File "exaile.py", line 451, in __SetupLeft
self.radio_panel = panels.RadioPanel(self.tools_nb, self)
File "/home/sheinar/exaile/xl/panels.py", line 954, in __init__
cur.execute("SELECT radio_name FROM radio "
pysqlite2.dbapi2.OperationalError: no such table: radio

I'm assuming running a dbus enabled X session and running the program through dbus-launch wont make any difference.

synic
May 19th, 2006, 02:48 PM
I actually tried it with dbus a while ago and it still wouldn't run. A different error message though, so I guess at least the problem isn't from not running with dbus enabled. I probably should have posted the other one instead. Anyway...

With dbus:


[sheinar@nespithe exaile]$ dbus-launch ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1763, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 25, in __call__
ret = self._proxy_method (*args, **keywords)
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 102, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout)
File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1806, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1797, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 139, in __init__
self.__SetupLeft()
File "exaile.py", line 451, in __SetupLeft
self.radio_panel = panels.RadioPanel(self.tools_nb, self)
File "/home/sheinar/exaile/xl/panels.py", line 954, in __init__
cur.execute("SELECT radio_name FROM radio "
pysqlite2.dbapi2.OperationalError: no such table: radio

I'm assuming running a dbus enabled X session and running the program through dbus-launch wont make any difference.

Sounds like I've changed the SQL schema since you last used it. I'd rm ~/.exaile/music.db. Exaile will automatically create it again.

Sheinar
May 19th, 2006, 02:51 PM
Ah, that worked. Thanks. Simple.

jasay
May 19th, 2006, 04:26 PM
I've been getting the same error for a several days now. It looks exactly like Sheinar's (except for line #'s), but I don't have a music.db to delete (never did get it running to create one).
$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1816, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1859, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1850, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 144, in __init__
self.__SetupLeft()
File "exaile.py", line 468, in __SetupLeft
self.radio_panel = panels.RadioPanel(self.tools_nb, self)
File "/home/jasay/exaile/xl/panels.py", line 949, in __init__
cur.execute("SELECT radio_name FROM radio "
pysqlite2.dbapi2.OperationalError: no such table: radio

synic
May 19th, 2006, 05:57 PM
I've been getting the same error for a several days now. It looks exactly like Sheinar's (except for line #'s), but I don't have a music.db to delete (never did get it running to create one).
$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
Traceback (most recent call last):
File "exaile.py", line 1816, in main
iface.TestService("testing dbus service")
File "/usr/lib/python2.4/site-packages/dbus/proxies.py", line 79, in __call__
reply_message = self._connection.send_with_reply_and_block(message , timeout) File "dbus_bindings.pyx", line 458, in dbus_bindings.Connection.send_with_reply_and_block
DBusException: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "exaile.py", line 1859, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1850, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 144, in __init__
self.__SetupLeft()
File "exaile.py", line 468, in __SetupLeft
self.radio_panel = panels.RadioPanel(self.tools_nb, self)
File "/home/jasay/exaile/xl/panels.py", line 949, in __init__
cur.execute("SELECT radio_name FROM radio "
pysqlite2.dbapi2.OperationalError: no such table: radio


That message indicates that you /have/ to have a music.db: rm ~/.exaile/music.db - you wouldn't have gotten that far if you didn't have one.

synic
May 19th, 2006, 05:59 PM
UPDATED:

Exaile now has wikipedia search support for Artist and/or album, lyrics support via leoslyrics.com, and initial tablature support via fretplay.com.

The lyrics were pretty much the last feature I wanted in before I feature freeze to get rid of all the bugs and make a release.

Thanks for your help folks!

bored2k
May 19th, 2006, 06:04 PM
Does it support last.fm? That's a huge one.

jasay
May 19th, 2006, 06:26 PM
That message indicates that you /have/ to have a music.db: rm ~/.exaile/music.db - you wouldn't have gotten that far if you didn't have one.
Ah, I didn't see the hidden folder in your directions. Sorry. /Hangs head in shame.:oops:

Works great. Thanks a lot.:D

synic
May 19th, 2006, 06:49 PM
Does it support last.fm? That's a huge one.

Yeah

Lord Illidan
May 19th, 2006, 07:27 PM
Are you planning any visuals and the like?
Also, can we change lyrics engine?

My only problem is that it feels a bit sluggish. Is this down to python?

Otherwise, this seems like an awesome piece of work. When are you planning to release it in the repos?

I spoke too soon, it seems. Lyrics don't work.
It also failed to save music collection.

synic
May 19th, 2006, 09:36 PM
Are you planning any visuals and the like?
Also, can we change lyrics engine?

My only problem is that it feels a bit sluggish. Is this down to python?

Otherwise, this seems like an awesome piece of work. When are you planning to release it in the repos?

I spoke too soon, it seems. Lyrics don't work.
It also failed to save music collection.

When's the last time you ran an svn update? I only put the lyrics in today.

Lord Illidan
May 19th, 2006, 09:41 PM
When's the last time you ran an svn update? I only put the lyrics in today.

I installed it today.

synic
May 19th, 2006, 09:42 PM
I installed it today.

Try svn updating. When you say "don't work", how do you mean? It says it can't find them? What artist/songtitle are you trying?

patbuntu
May 20th, 2006, 01:48 AM
I want to try this. From the first post:



# apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst subversion
# svn checkout svn://jbother.org/usr/local/svn/exaile
# cd exaile && ./exaile


I get this:



pat@cube:~$ sudo apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst subversion
Password:
Reading package lists... Done
Building dependency tree... Done
python-wxgtk2.6 is already the newest version.
gstreamer0.8-mad is already the newest version.
python-gst is already the newest version.
The following extra packages will be installed:
libsvn0
Suggested packages:
subversion-tools db4.3-util
The following NEW packages will be installed
libsvn0 python-pymad python-pysqlite2 subversion
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 725kB of archives.
After unpacking 4432kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get: 1 http://gb.archive.ubuntu.com dapper/main libsvn0 1.3.1-3ubuntu1 [513kB]
Get: 2 http://gb.archive.ubuntu.com dapper/universe python-pymad 0.5.4-1ubuntu3 [5560B]
Get: 3 http://gb.archive.ubuntu.com dapper/main python-pysqlite2 2.0.5-1ubuntu1 [3012B]
Get: 4 http://gb.archive.ubuntu.com dapper/main subversion 1.3.1-3ubuntu1 [203kB]
Fetched 725kB in 5s (125kB/s)
Selecting previously deselected package libsvn0.
(Reading database ... 128215 files and directories currently installed.)
Unpacking libsvn0 (from .../libsvn0_1.3.1-3ubuntu1_i386.deb) ...
Selecting previously deselected package python-pymad.
Unpacking python-pymad (from .../python-pymad_0.5.4-1ubuntu3_all.deb) ...
Selecting previously deselected package python-pysqlite2.
Unpacking python-pysqlite2 (from .../python-pysqlite2_2.0.5-1ubuntu1_all.deb) ...
Selecting previously deselected package subversion.
Unpacking subversion (from .../subversion_1.3.1-3ubuntu1_i386.deb) ...
Setting up libsvn0 (1.3.1-3ubuntu1) ...

Setting up python-pymad (0.5.4-1ubuntu3) ...
Setting up python-pysqlite2 (2.0.5-1ubuntu1) ...
Setting up subversion (1.3.1-3ubuntu1) ...
pat@cube:~$ svn checkout svn://jbother.org/usr/local/svn/exaile
A exaile/.clean
A exaile/mutagen
A exaile/mutagen/_constants.py
A exaile/mutagen/apev2.py
A exaile/mutagen/mp3.py
A exaile/mutagen/__init__.py
A exaile/mutagen/id3.py
A exaile/mutagen/_vorbis.py
A exaile/mutagen/flac.py
A exaile/license.txt
A exaile/font.ttf
A exaile/xl
A exaile/xl/common.py
A exaile/xl/shoutcast.py
A exaile/xl/scrobbler.py
A exaile/xl/dbusinterface.py
A exaile/xl/prefs.py
A exaile/xl/media.py
A exaile/xl/xlmisc.py
A exaile/xl/__init__.py
A exaile/xl/covers.py
A exaile/xl/panels.py
A exaile/xl/trackslist.py
A exaile/xl/track.py
A exaile/xl/config.py
A exaile/xl/tracks.py
A exaile/db.sql
A exaile/mmkeys
A exaile/mmkeys/mmkeys.override
A exaile/mmkeys/mmkeys.defs
A exaile/mmkeys/MANIFEST
A exaile/mmkeys/mmkeys.c
A exaile/mmkeys/setup.py
A exaile/mmkeys/COPYING
A exaile/mmkeys/mmkeys.h
A exaile/mmkeys/mmkeysmodule.c
A exaile/mmkeys/README
A exaile/mmkeys/Makefile
A exaile/mmkeys.so
A exaile/images
A exaile/images/remove.png
A exaile/images/refresh.png
A exaile/images/player-play.png
A exaile/images/album.png
A exaile/images/genre.png
A exaile/images/player-volume.png
A exaile/images/delete.png
A exaile/images/track.png
A exaile/images/artist.png
A exaile/images/player-prev.png
A exaile/images/player-pause.png
A exaile/images/player-next.png
A exaile/images/folder.png
A exaile/images/nocover.png
A exaile/images/playlist_ipod.png
A exaile/images/media-audiofile.png
A exaile/images/player-stop.png
A exaile/images/exailelogo-sml.png
A exaile/images/clear.png
A exaile/images/add.png
A exaile/images/lite/icon.png
A exaile/images/ipod.png
A exaile/exaile
A exaile/debs
A exaile/debs/python-gpod_0.3-1_i386.deb
A exaile/exaile.py
Checked out revision 913.
pat@cube:~$ cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 28, in ?
from xl import *
File "/home/pat/exaile/xl/config.py", line 17, in ?
import fileinput, traceback, xlmisc
File "/home/pat/exaile/xl/xlmisc.py", line 18, in ?
import trackslist, tracks, covers, md5, threading, re
File "/home/pat/exaile/xl/trackslist.py", line 19, in ?
from xl import xlmisc, common, track, tracks
ImportError: cannot import name xlmisc


Now what?

Cheers

-Pat

synic
May 20th, 2006, 02:05 AM
I want to try this. From the first post:



# apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst subversion
# svn checkout svn://jbother.org/usr/local/svn/exaile
# cd exaile && ./exaile


I get this:



pat@cube:~$ sudo apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst subversion
Password:
Reading package lists... Done
Building dependency tree... Done
python-wxgtk2.6 is already the newest version.
gstreamer0.8-mad is already the newest version.
python-gst is already the newest version.
The following extra packages will be installed:
libsvn0
Suggested packages:
subversion-tools db4.3-util
The following NEW packages will be installed
libsvn0 python-pymad python-pysqlite2 subversion
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 725kB of archives.
After unpacking 4432kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get: 1 http://gb.archive.ubuntu.com dapper/main libsvn0 1.3.1-3ubuntu1 [513kB]
Get: 2 http://gb.archive.ubuntu.com dapper/universe python-pymad 0.5.4-1ubuntu3 [5560B]
Get: 3 http://gb.archive.ubuntu.com dapper/main python-pysqlite2 2.0.5-1ubuntu1 [3012B]
Get: 4 http://gb.archive.ubuntu.com dapper/main subversion 1.3.1-3ubuntu1 [203kB]
Fetched 725kB in 5s (125kB/s)
Selecting previously deselected package libsvn0.
(Reading database ... 128215 files and directories currently installed.)
Unpacking libsvn0 (from .../libsvn0_1.3.1-3ubuntu1_i386.deb) ...
Selecting previously deselected package python-pymad.
Unpacking python-pymad (from .../python-pymad_0.5.4-1ubuntu3_all.deb) ...
Selecting previously deselected package python-pysqlite2.
Unpacking python-pysqlite2 (from .../python-pysqlite2_2.0.5-1ubuntu1_all.deb) ...
Selecting previously deselected package subversion.
Unpacking subversion (from .../subversion_1.3.1-3ubuntu1_i386.deb) ...
Setting up libsvn0 (1.3.1-3ubuntu1) ...

Setting up python-pymad (0.5.4-1ubuntu3) ...
Setting up python-pysqlite2 (2.0.5-1ubuntu1) ...
Setting up subversion (1.3.1-3ubuntu1) ...
pat@cube:~$ svn checkout svn://jbother.org/usr/local/svn/exaile
A exaile/.clean
A exaile/mutagen
A exaile/mutagen/_constants.py
A exaile/mutagen/apev2.py
A exaile/mutagen/mp3.py
A exaile/mutagen/__init__.py
A exaile/mutagen/id3.py
A exaile/mutagen/_vorbis.py
A exaile/mutagen/flac.py
A exaile/license.txt
A exaile/font.ttf
A exaile/xl
A exaile/xl/common.py
A exaile/xl/shoutcast.py
A exaile/xl/scrobbler.py
A exaile/xl/dbusinterface.py
A exaile/xl/prefs.py
A exaile/xl/media.py
A exaile/xl/xlmisc.py
A exaile/xl/__init__.py
A exaile/xl/covers.py
A exaile/xl/panels.py
A exaile/xl/trackslist.py
A exaile/xl/track.py
A exaile/xl/config.py
A exaile/xl/tracks.py
A exaile/db.sql
A exaile/mmkeys
A exaile/mmkeys/mmkeys.override
A exaile/mmkeys/mmkeys.defs
A exaile/mmkeys/MANIFEST
A exaile/mmkeys/mmkeys.c
A exaile/mmkeys/setup.py
A exaile/mmkeys/COPYING
A exaile/mmkeys/mmkeys.h
A exaile/mmkeys/mmkeysmodule.c
A exaile/mmkeys/README
A exaile/mmkeys/Makefile
A exaile/mmkeys.so
A exaile/images
A exaile/images/remove.png
A exaile/images/refresh.png
A exaile/images/player-play.png
A exaile/images/album.png
A exaile/images/genre.png
A exaile/images/player-volume.png
A exaile/images/delete.png
A exaile/images/track.png
A exaile/images/artist.png
A exaile/images/player-prev.png
A exaile/images/player-pause.png
A exaile/images/player-next.png
A exaile/images/folder.png
A exaile/images/nocover.png
A exaile/images/playlist_ipod.png
A exaile/images/media-audiofile.png
A exaile/images/player-stop.png
A exaile/images/exailelogo-sml.png
A exaile/images/clear.png
A exaile/images/add.png
A exaile/images/lite/icon.png
A exaile/images/ipod.png
A exaile/exaile
A exaile/debs
A exaile/debs/python-gpod_0.3-1_i386.deb
A exaile/exaile.py
Checked out revision 913.
pat@cube:~$ cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 28, in ?
from xl import *
File "/home/pat/exaile/xl/config.py", line 17, in ?
import fileinput, traceback, xlmisc
File "/home/pat/exaile/xl/xlmisc.py", line 18, in ?
import trackslist, tracks, covers, md5, threading, re
File "/home/pat/exaile/xl/trackslist.py", line 19, in ?
from xl import xlmisc, common, track, tracks
ImportError: cannot import name xlmisc


Now what?

Cheers

-Pat


I apologize.. I'm getting ready for a release, so things are changing in the svn repository a bit. If you svn update now, it should work.

patbuntu
May 20th, 2006, 02:25 AM
Yep - works fine now. Imported 4603 tracks (for the record, listen got 4668, amarok got 4695).

Seems to work fine, good stuff:-D

Nice one

-Pat

GarethMB
May 20th, 2006, 10:25 AM
Ack!

gareth@gareth-laptop:~/exaile$ ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1877, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1868, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 111, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/gareth/exaile/xl/media.py", line 50, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'

croak77
May 20th, 2006, 07:38 PM
Thanks for your hard work. Cool player.

foxy123
May 21st, 2006, 04:10 PM
I've got the following error:

./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1877, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1868, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 111, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/alex/CVS/exaile/xl/media.py", line 50, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'


is svn version broken at the moment? I use Dapper by the way...

tenshi-no-shi
May 21st, 2006, 04:53 PM
Sweetness. I have been away for a couple of days and looking through the postings I found the answer to my own problem, I just had to delete the music.db and it worked fine.

groggyboy
May 21st, 2006, 09:19 PM
Downloaded it, it's populating my music library as we speak.

One annoyance so far: I try to keep my /Home directory nice 'n tidy. Is there any way I can get exaile to install somewhere else? Like wherever other programs get installed?

Otherwise its so far so good!

groggyboy

synic
May 21st, 2006, 10:12 PM
Downloaded it, it's populating my music library as we speak.

One annoyance so far: I try to keep my /Home directory nice 'n tidy. Is there any way I can get exaile to install somewhere else? Like wherever other programs get installed?

Otherwise its so far so good!

groggyboy

Yeah, hopefully soon I'll have a .deb ready that'll install it like you'd expect.

mmcmonster
May 23rd, 2006, 11:54 AM
Whenever I want to install from source something, I just put it in /usr/local/src/applicationname. I then create a symbolic link to the binary in /usr/local/bin (If the build doesn't create it already).

This way I can keep it out of /home while still keep track of what I installed manually.

Edit: I take that back. When I created the sym-link in /usr/local/bin, I got the following error:


python: can't open file 'exaile.py': [Errno 2] No such file or directory

synic
May 23rd, 2006, 02:13 PM
python: can't open file 'exaile.py': [Errno 2] No such file or directory[/QUOTE]

If you chmod +x exaile.py and make the symlink to that instead, it should work.

Harold P
May 24th, 2006, 01:42 AM
I would most definitely use this as a replacement for amaroK if I could hear something... I play and a song and nothing happens.

Help, please?

mrgnash
May 24th, 2006, 11:09 AM
I've got the following error:

./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1877, in ?
if __name__ == "__main__": main()
File "exaile.py", line 1868, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 111, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/alex/CVS/exaile/xl/media.py", line 50, in set_audio_sink
player.set_property("audio-sink", audio_sink)
AttributeError: 'NoneType' object has no attribute 'set_property'


is svn version broken at the moment? I use Dapper by the way...

Same error here too.

zAo
May 24th, 2006, 02:23 PM
And agian python... (like Listen)

To slow for me. Looks nice though!

synic
May 24th, 2006, 04:37 PM
I would most definitely use this as a replacement for amaroK if I could hear something... I play and a song and nothing happens.

Help, please?

Have you tried one of the different playback sinks in the preferences?

synic
May 24th, 2006, 04:37 PM
Same error here too.

For this error on Dapper, apt-get install gstreamer0.8-plugins

synic
May 24th, 2006, 04:40 PM
And agian python... (like Listen)

To slow for me. Looks nice though!

Yeah, like Listen and Quod Libet (both great IMHO).

Curious, the Python apps are slower than Amarok?

mrgnash
May 24th, 2006, 04:59 PM
Ah that did the trick :) Great player... only thing missing for me now is that it doesn't seem to have window borders under Compiz.

jasay
May 24th, 2006, 07:35 PM
Wow synic, this is really shaping up. I like it. :D

The only problem I have now is that it doesn't recognize the albums of my .ogg files. Do you have a bugtracker somewhere?

mrgnash: It works fine for me under compiz.:-k

Harold P
May 24th, 2006, 07:55 PM
Have you tried one of the different playback sinks in the preferences?
Hmm, yeah. I did it last night, and it didn't work. Weird. :-k

But it works now. :D

Thanks for the help!

P.S., two things:
http://img326.imageshack.us/img326/7933/screenshotexaileplayingactappa.png

How come all my album titles dissapeared? :( And, also, is there a way to remove certain details, like track # and rating?

synic
May 24th, 2006, 09:18 PM
Hmm, yeah. I did it last night, and it didn't work. Weird. :-k

But it works now. :D

Thanks for the help!

P.S., two things:
http://img326.imageshack.us/img326/7933/screenshotexaileplayingactappa.png

How come all my album titles dissapeared? :( And, also, is there a way to remove certain details, like track # and rating?

Yeah, that was a bug I introduced last night. rm ~/.exaile/music.db and refresh, and it'll fix it.

No, not yet there isn't a way to remove details (there will be).

foxy123
May 25th, 2006, 09:17 AM
For this error on Dapper, apt-get install gstreamer0.8-plugins
any plans to make it work with gstreamer 1.0? I do not mind to have both on my system as they live well togeher but still one wants to keep its system as tidy as possible...

synic
May 25th, 2006, 02:44 PM
any plans to make it work with gstreamer 1.0? I do not mind to have both on my system as they live well togeher but still one wants to keep its system as tidy as possible...

Yup

Harold P
May 25th, 2006, 10:13 PM
Okay, thanks. Deleting music database worked. The albums are all back. :)

Two things, could you perhaps make F2 a hotkey for editing track information and is it okay if I promote Exaile in my signature? ;)

synic
May 25th, 2006, 10:22 PM
Okay, thanks. Deleting music database worked. The albums are all back. :)

Two things, could you perhaps make F2 a hotkey for editing track information and is it okay if I promote Exaile in my signature? ;)

Yup and yup :)

synic
May 25th, 2006, 10:24 PM
any plans to make it work with gstreamer 1.0? I do not mind to have both on my system as they live well togeher but still one wants to keep its system as tidy as possible...

Ok, Exaile now /only/ works with Gstreamer 0.10. I'm doing this because by the time I actually feel that all the bugs are ironed out for the first release, Dapper will probably be out.

You'll need python-gst0.10, gstreamer0.10, gstreamer0.10-plugins-base, gstreamer0.10-plugins-good, and optionally (for mp3 support), gstreamer0.10-plugins-ugly.

Harold P
May 25th, 2006, 10:31 PM
Yup and yup :)

Can't wait! And... done! :p

foxy123
May 25th, 2006, 11:30 PM
Exaile! looks very sweet. It is quite obvious that it is in the beginning of its development, but I already like it.

hollywoodb
May 26th, 2006, 12:53 AM
hollywoodb@hollywoodb ~ $ svn checkout svn://jbother.org/usr/local/svn/exaile
Checked out revision 961.
hollywoodb@hollywoodb ~ $ cd exaile/
hollywoodb@hollywoodb ~/exaile $ ./exaile
Traceback (most recent call last):
File "exaile.py", line 36, in ?
import gobject, gst, dbus
ImportError: No module named dbus
hollywoodb@hollywoodb ~/exaile $


(dbus is running)

also, after installing required packages as per 1st post, it turned out I also needed python-imaging package.

zenwhen
May 26th, 2006, 01:20 AM
It is broken now:


zenwhen@sunball:~/exaile $ python exaile
File "exaile", line 3
python exaile.py $@
^
SyntaxError: invalid syntax

hollywoodb
May 26th, 2006, 02:43 AM
It is broken now:


zenwhen@sunball:~/exaile $ python exaile
File "exaile", line 3
python exaile.py $@
^
SyntaxError: invalid syntax

I'm getting that as well, when I run 'python exaile'

When I just run 'exaile' I get the dbus error two posts above

croak77
May 26th, 2006, 03:52 AM
You need python2.4-dbus.

nalmeth
May 26th, 2006, 04:14 AM
@ Synic,
Have you put any more thought into developing guitar tab fetching?
I have free time now-a-day's and will help you out anyway I can. Put me to work. Unfortunately you'd have to do the coding, I'm illiterate in this domain. I can help out in any other fashion.

Having this feature in a music player is my dream, I will throw out every other music player I have installed. Rather I will throw them in a pile, dump gas over them and... well you get the point.

What do you think about this?

eyesonly
May 26th, 2006, 05:00 AM
I would love to try the player but something went funny on the install

jbs@eyesonly:~$ cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 28, in ?
from xl import *
File "/home/jbs/exaile/xl/tracks.py", line 18, in ?
import common, media
File "/home/jbs/exaile/xl/media.py", line 21, in ?
import pygst
ImportError: No module named pygst
jbs@eyesonly:~/exaile$

Harold P
May 26th, 2006, 05:12 AM
I think I'm having the same problem too as mentioned above.

harold@ubuntu:~$ sudo apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst subversion
Reading package lists... Done
Building dependency tree... Done
python-wxgtk2.6 is already the newest version.
python-pysqlite2 is already the newest version.
python-pymad is already the newest version.
gstreamer0.8-mad is already the newest version.
python-gst is already the newest version.
subversion is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
harold@ubuntu:~$ svn checkout svn://jbother.org/usr/local/svn/exaile
Checked out revision 966.
harold@ubuntu:~$ cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 28, in ?
from xl import *
File "/home/harold/exaile/xl/tracks.py", line 18, in ?
import common, media
File "/home/harold/exaile/xl/media.py", line 21, in ?
import pygst
ImportError: No module named pygst
harold@ubuntu:~/exaile$


Weird... worked fine on my other ubuntu box. pygst is python-gst, correct?

croak77
May 26th, 2006, 07:06 AM
That's weird. It seemes python-gst in Breezy doesn't have pygst.py but python-gst0.10 on Dapper does.

croak77
May 26th, 2006, 07:17 AM
I got a couple feature requests: translucent background for OSD, resizable OSD ( sometimes letters get cut off ) and some type of message that reports LastFM submit worked or failed ( maybe there is one and I missed it). Thanks again for your hard work!!!

ronlybonly
May 26th, 2006, 07:22 AM
This app looks very promising! I'll have to check it out.

Starchild
May 26th, 2006, 01:57 PM
Same pygst problem here....

johnnyc
May 26th, 2006, 04:25 PM
VERY nice work synic!
The only issue I have with it is not being able to install python-gpod for ipod support.

Harold P
May 26th, 2006, 06:59 PM
I use breezy on my other ubuntu box and it worked fine. I don't see why it would be conflicting breezy-dapper wise.

jasay
May 26th, 2006, 07:50 PM
The only problem I have now is that it doesn't recognize the albums of my .ogg files.
Fixed. Thanks synic! 8)

hollywoodb
May 26th, 2006, 10:05 PM
Awesome, I love this player ;)

couple things, I needed python-image and python2.4-dbus, might want to add those to dependencies... (I'm on dapper)


Feature requests:

pause/stop/player/next/previous hotkeys, so that I don't have to use the mouse to jump tracks

auto-sizing OSD (already mentioned I think)

adjustable columns in playlist, and addition of filename column (also already mentioned I believe)... I like to sort by filename, since tags are not always 100% correct, but my filenames are

Bugs:
I set alsasink as output, there were two alsasink options for some reason, whichever one I chose didn't work and exaile refused to start, perhaps on failed output cause it to default to gconf or oss and start with a message

Great work !

zenwhen
May 26th, 2006, 11:56 PM
I wish I had stopped updating. I can't use this awesome music player now.

synic
May 27th, 2006, 12:48 AM
@ Synic,
Have you put any more thought into developing guitar tab fetching?
I have free time now-a-day's and will help you out anyway I can. Put me to work. Unfortunately you'd have to do the coding, I'm illiterate in this domain. I can help out in any other fashion.

Having this feature in a music player is my dream, I will throw out every other music player I have installed. Rather I will throw them in a pile, dump gas over them and... well you get the point.

What do you think about this?

It actually fetches from fretplay.com right now. It doesn't always guess where to fetch them from correctly... I'm not sure what to do about that. It would be nice if there was a site that actually had an api for this.

synic
May 27th, 2006, 12:49 AM
VERY nice work synic!
The only issue I have with it is not being able to install python-gpod for ipod support.

I included the deb in the svn repository - it's debs/python-gpod-xxx.deb

synic
May 27th, 2006, 12:50 AM
Regarding the pygst import problems:

Exaile now uses gstreamer0.10, so you'll need to install python-gst0.10. This is available only in Dapper. I decided to upgrade now because by the time I release, Dapper will surely be out.

Harold P
May 27th, 2006, 02:03 AM
Oh, okay. :-D It's only a few days, I can wait--after all: I still have my breezy version on my other ubuntu box. :p

I guess I could provide a mirror to the breezy version when I get to my other house tomorrow night.

almahtar
May 27th, 2006, 06:52 AM
I've read through the thread and it sounds like quite an app. I'm working with a company that uses wxwidgets with their softare in C++, and I've been dying to learn python, so I think I'd like to join in on the dev. My problem, though, is this....



jonathan@Dragonfly:~/exaile$ ./exaile
Traceback (most recent call last):
File "exaile.py", line 44, in ?
xlmisc.log_exception()
File "/home/jonathan/exaile/xl/xlmisc.py", line 306, in log_exception
wx.CallAfter(__log_exception)
File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line 13257, in CallAfter
assert app is not None, 'No wx.App created yet'
AssertionError: No wx.App created yet


I followed all your original instructions and any recommendations I found later on. Up to this point nothing in this thread has worked. Any idea what's up? I'm awful at debugging python stuff as of yet.

Russty of Oz
May 27th, 2006, 12:49 PM
Hi,

I have got Exaile! installed and it looks great but it will only play mp3's! Can it play wma, wmv etc.? If so, how. I have the w32codecs installed.

Russty

Rikostan
May 27th, 2006, 02:17 PM
I installed it last night.. no issues at all and I love the simple interface that still gives me decent control of my rather large music collection.

synic
May 27th, 2006, 06:12 PM
Hi,

I have got Exaile! installed and it looks great but it will only play mp3's! Can it play wma, wmv etc.? If so, how. I have the w32codecs installed.

Russty

I just put support in for .wma. You'll need to install the gstreamer0.10-ffmpeg package for it to work.

Harold P
May 27th, 2006, 06:39 PM
I just put support in for .wma. You'll need to install the gstreamer0.10-ffmpeg package for it to work.
Are you going to add that to the first post as a dependancy, or leave it as an option?

synic
May 27th, 2006, 06:41 PM
Are you going to add that to the first post as a dependancy, or leave it as an option?

Just an option.

Minyaliel
May 27th, 2006, 06:42 PM
Nice work, being a former AmaroK addict, I love this :)

mynimal
May 27th, 2006, 08:19 PM
Man, this thing is chalk-full of features. Great player, but I just wish you could tweak the layout a bit, and it used icons from your current theme. Also, the panel at the top with the track info is a bit empty for its size; maybe you could move the buttons and progressbar underneath the "from (albumname) by (artistname)", since that's an empty row? I love the blacklist feature though, if this had hotkey settings I'd be all over it like a fly on butter.

For example, ratings hotkeys/arguments (exile --rating=#), playback toggling (exile --toggle), etc, would be great. They'd be very usable with custom buttons added to the gnome panel - I did that with Banshee, but it doesn't support the --rating=# thing. Well, there're some suggestions for ya. :P

Is there an option anywhere to customize the colmn sorting?

almahtar
May 27th, 2006, 09:54 PM
Hah... you're all killing me here. Sounds like a great product, but I'm still getting that error :-(

Russty of Oz
May 28th, 2006, 02:26 AM
I just put support in for .wma. You'll need to install the gstreamer0.10-ffmpeg package for it to work.

I looked in Synaptic and I have the gstreamer0.10 but there is no -ffmpeg package there. Where can I get it?

I am new to all this as you can no doubt tell.

Harold P
May 28th, 2006, 02:46 AM
I looked in Synaptic and I have the gstreamer0.10 but there is no -ffmpeg package there. Where can I get it?

I am new to all this as you can no doubt tell.
Are you using Dapper? It's not available on Breezy.

Russty of Oz
May 28th, 2006, 02:57 AM
Are you using Dapper? It's not available on Breezy.

Yes, I did the upgrade the other day.

Harold P
May 28th, 2006, 04:08 AM
http://packages.debian.org/unstable/libs/gstreamer0.10-ffmpeg

souled
May 28th, 2006, 05:02 AM
When trying to run the program, I'm getting this error:


eric@motherland:~/exaile$ /home/eric/exaile/exaile
Traceback (most recent call last):
File "exaile.py", line 44, in ?
xlmisc.log_exception()
File "/home/eric/exaile/xl/xlmisc.py", line 306, in log_exception
wx.CallAfter(__log_exception)
File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line 13257, in CallAfter
assert app is not None, 'No wx.App created yet'
AssertionError: No wx.App created yet


I can't find libgstreamer0.10-plugins-good in the repositories either...

kpolice
May 28th, 2006, 06:35 AM
When trying to run the program, I'm getting this error:


eric@motherland:~/exaile$ /home/eric/exaile/exaile
Traceback (most recent call last):
File "exaile.py", line 44, in ?
xlmisc.log_exception()
File "/home/eric/exaile/xl/xlmisc.py", line 306, in log_exception
wx.CallAfter(__log_exception)
File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line 13257, in CallAfter
assert app is not None, 'No wx.App created yet'
AssertionError: No wx.App created yet


I can't find libgstreamer0.10-plugins-good in the repositories either...

I get the same error message.

almahtar
May 28th, 2006, 08:05 AM
Yep, it's the same one I'm getting.

Russty of Oz
May 28th, 2006, 08:35 AM
http://packages.debian.org/unstable/libs/gstreamer0.10-ffmpeg

HOORAY!! IT WORKS!!

Thanks Harold! that did the trick. I am so relieved that it all works so well. Now at least Totem will play wma's.

Russty.

Russty of Oz
May 28th, 2006, 09:04 AM
I just put support in for .wma. You'll need to install the gstreamer0.10-ffmpeg package for it to work.

Well I now have the gstreamer0.10-ffmpeg package installed, but Exaile! still wont play .wma files. Have I forgot to do something? They now play in Totem player, but I really like the look and feel of Exaile!

Russty.

hollywoodb
May 28th, 2006, 02:05 PM
I'm getting the wx.App error now as well after updating:



hollywoodb@hollywoodb ~/exaile $ ~/bin/exaile_svn_fetch
Checked out revision 974.

hollywoodb@hollywoodb ~/exaile $ ./exaile
Traceback (most recent call last):
File "exaile.py", line 44, in ?
xlmisc.log_exception()
File "/home/hollywoodb/exaile/xl/xlmisc.py", line 306, in log_exception
wx.CallAfter(__log_exception)
File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line 13257, in CallAfter
assert app is not None, 'No wx.App created yet'
AssertionError: No wx.App created yet

hollywoodb@hollywoodb ~/exaile $

Harold P
May 28th, 2006, 05:52 PM
Here's the breezy version from like 4 days ago:

http://www.harold.liberty-host.com/exaile.tar.gz

Download it to your home directory, then extract it. then run this in terminal:


cd ~/exaile && ./exaile
Or, if you're too lazy to use command line then go into your home directory, open the exaile folder, and double click on exaile. You'll be prompted with this notice:

http://img100.imageshack.us/img100/4839/screenshotrunordisplay7xg.png

Click "Run".

Have fun... ;)

Edit: Umm, is it a bug that if you press X to close the window, it doesn't minimize to the tray? (It just closes the whole thing.) If it isn't, that'd be a nice feature. :)

Edit (2): In order for this to work, you have to have the correct dependencies installed:


apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst

Harold P
May 28th, 2006, 06:22 PM
When trying to run the program, I'm getting this error:


eric@motherland:~/exaile$ /home/eric/exaile/exaile
Traceback (most recent call last):
File "exaile.py", line 44, in ?
xlmisc.log_exception()
File "/home/eric/exaile/xl/xlmisc.py", line 306, in log_exception
wx.CallAfter(__log_exception)
File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line 13257, in CallAfter
assert app is not None, 'No wx.App created yet'
AssertionError: No wx.App created yet

I can't find libgstreamer0.10-plugins-good in the repositories either...
http://packages.debian.org/unstable/libs/gstreamer0.10-plugins-good

Does that help?

maxol
May 28th, 2006, 10:25 PM
[QUOTE=Harold P]Here's the breezy version from like 4 days ago:

http://www.harold.liberty-host.com/exaile.tar.gz

Download it to your home directory, then extract it. then run this in terminal:


cd ~/exaile && ./exaile


max@shiny:~$ cd ~/exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 19, in ?
import wx, wx.grid, sys, os, re, random, fileinput, gc, urllib, md5
ImportError: No module named wx

Dependency problem?

Harold P
May 28th, 2006, 11:01 PM
[quote=Harold P]Here's the breezy version from like 4 days ago:

http://www.harold.liberty-host.com/exaile.tar.gz

Download it to your home directory, then extract it. then run this in terminal:


cd ~/exaile && ./exaile


max@shiny:~$ cd ~/exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 19, in ?
import wx, wx.grid, sys, os, re, random, fileinput, gc, urllib, md5
ImportError: No module named wx

Dependency problem? Only use that one if you have breezy. Make sure you ran this:


sudo apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad gstreamer0.8-mad python-gst

before you try to run it.

maxol
May 29th, 2006, 09:57 AM
OK I'm using Dapper so I'll wait for the next release, looks good though.

Terracotta
May 29th, 2006, 11:00 AM
Looks nice, is it gnome specific, or is it just gtk+? I'm interested in using it in xfce,since Xmedia is horrible, and well amarok rocks so well kinda like this project.

Do you work together with amarok? Both projects could benefit from it I think.

Harold P
May 31st, 2006, 06:04 AM
Looks nice, is it gnome specific, or is it just gtk+? I'm interested in using it in xfce,since Xmedia is horrible, and well amarok rocks so well kinda like this project.

Do you work together with amarok? Both projects could benefit from it I think.
Works fine in XFCE. When's the next release?

madjo
May 31st, 2006, 02:05 PM
will there also be support for the media keys on logitech keyboards, or is there some trick that I can use to enable those keys?

synic
May 31st, 2006, 04:11 PM
will there also be support for the media keys on logitech keyboards, or is there some trick that I can use to enable those keys?

If you type make, make install, and then type exaile from the CLI, do you see the message "mmkeys are available"?

madjo
May 31st, 2006, 11:05 PM
Yes, it does, and apparently it accepts the "stop" key... but that is the only key it accepts. next, previous and play/pause do nothing for me.

I use a Logitech wireless itouch keyboard. If that makes any difference. :)

oh and another thing, when I press 'stop'. the Titlebar still shows "Exaile playing [song name]" :)

henriquemaia
June 1st, 2006, 06:06 AM
Hi,

The program looks awesome. Great work. It's a pleasure to have an good Amarok alternative.

One thing: can the close button behaviour be changed to work as Amarok's? (not closing the app, but hidding it into the notification area)

nalmeth
June 1st, 2006, 06:24 AM
It actually fetches from fretplay.com right now. It doesn't always guess where to fetch them from correctly... I'm not sure what to do about that. It would be nice if there was a site that actually had an api for this.
Hey, thanks for implementing this synic, I figured you were busy with other feature request's and bug squashing so I didn't want to press you with it.

I tried exaile out the other day, but happened to get AIGLX going the same day, so I didn't use exaile very much. I will do some testing tomorrow night (during work :) ) and let you know how it's working for me + my songs.

I'll look around for a better site too.

Cheers

:cool:

Harold P
June 1st, 2006, 06:43 AM
Now that I have Dapper working, I'm definitely giving this thing a try... AGAIN! :)

xmastree
June 1st, 2006, 10:12 AM
It's still pretty beta, but if you're bored, check it out. Here's what you'll need to do:



# apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad libgstreamer0.10 libgstreamer0.10-plugins-good python-gst0.10 subversion python-pyogg
# svn checkout svn://jbother.org/usr/local/svn/exaile
# cd exaile && ./exaile

Erm...

Couldn't find package libgstreamer0.10
I pressed on regardless, but:

bash: svn: command not found :confused:

Harold P
June 1st, 2006, 10:15 AM
Erm...

Couldn't find package libgstreamer0.10 I pressed on regardless, but:

bash: svn: command not found :confused:
svn = subversion

apt-get subversion

xmastree
June 1st, 2006, 10:43 AM
svn = subversion

apt-get subversion

Thanks.


chris@xmastree:~$ cd exaile && ./exaile
Traceback (most recent call last):
File "exaile.py", line 28, in ?
from xl import *
File "/home/chris/exaile/xl/tracks.py", line 18, in ?
import common, media, db
File "/home/chris/exaile/xl/media.py", line 22, in ?
import pygst
ImportError: No module named pygst
chris@xmastree:~/exaile$

vrih
June 1st, 2006, 01:02 PM
apt-get install python-wxgtk2.6 python-pysqlite2 python-pymad python-gst0.10 subversion python-pyogg

xmastree
June 1st, 2006, 03:57 PM
python-wxgtk2.6 is already the newest version.
python-pysqlite2 is already the newest version.
E: Couldn't find package python-gst0.10Not looking good so far, think I'll stick with what works.

xeta
June 1st, 2006, 06:36 PM
BRILLIANT PLAYER! I love it!


1 item I think it needs....pandora support.

Ability to play pandora feeds without having to use their crappy interface. Keep up the good work.

blue_thunder
June 1st, 2006, 08:23 PM
Beautiful player! Great set-up! My one issue: no support for .m4a like Rhythmbox.

synic
June 2nd, 2006, 08:51 PM
Not looking good so far, think I'll stick with what works.

Only works on Dapper.

xeta
June 2nd, 2006, 10:36 PM
Has anyone figured out how to link it from the task bar?

xmastree
June 3rd, 2006, 05:06 AM
Only works on Dapper.
Ah, Ok... I'll try it again when I upgrade.

Harold P
June 3rd, 2006, 05:10 AM
Has anyone figured out how to link it from the task bar?
It's under some of the preference options. :P It says something like "Show icon in taskbar" something like that...

croak77
June 3rd, 2006, 08:10 AM
Has anyone figured out how to link it from the task bar?

Do you want a notification area icon or an application launcher? Like Harold P said there is an option in Preferences -> General -> Apperance -> Show Tray Icon. If you want an application launcher on the panel, Right Click on panel select Add To Panel, select Custum Application Launcher, fill in the name etc., under command use 'python /path/to/exaile.py' For a menu item Right Click on Applications menu and select edit menu, highlight Sound & Video, select File -> New Entry from the top menu and it's the same command 'python /path/to/exaile.py'.

synic
June 3rd, 2006, 01:43 PM
Has anyone figured out how to link it from the task bar?

Also, if you type 'make && make install' in the exaile source directory, it will show up in your Applications->Sound and Video menu.

Adam

topyli
June 5th, 2006, 08:12 AM
I love this player. What I'd like to see is command line control a la Rhythmbox and friends (exaile --next, exaile --previous...) I'm using keytouch to configure my multimedia keyboard and the default GNOME keyboard shortcut bindings don't work well together with it. I'm sure people who use a simple window managers like fluxbox would appreciate this too.

Alternatively, if someone knows how to send mm_key signals to exaile via the command line, that would solve this problem as well.

eKoeS
June 5th, 2006, 02:24 PM
Only works on Dapper.
I've Ubuntu Dapper, but exaile does not work for me (svn sources) . :???:

ekoes@ubuntu:~/Dati/exaile$ ./exaile
Traceback (most recent call last):
File "exaile.py", line 19, in ?
import wx, wx.grid, sys, os, re, random, fileinput, gc, urllib, md5
ImportError: No module named wx
I've read something about python-wxgtk2.6, but I have already installed this package.

synic
June 5th, 2006, 05:30 PM
I love this player. What I'd like to see is command line control a la Rhythmbox and friends (exaile --next, exaile --previous...) I'm using keytouch to configure my multimedia keyboard and the default GNOME keyboard shortcut bindings don't work well together with it. I'm sure people who use a simple window managers like fluxbox would appreciate this too.

Alternatively, if someone knows how to send mm_key signals to exaile via the command line, that would solve this problem as well.

--next
--prev
--stop
--play (also pauses)

evand
June 6th, 2006, 04:15 AM
is there a way to transfer files to/from the ipod, or just view/play?

topyli
June 6th, 2006, 11:41 AM
--next
--prev
--stop
--play (also pauses)
I've built packages from the current svn. running "exaile --next" or "exaile --play" starts a new exaile instance for me...

synic
June 6th, 2006, 03:05 PM
I've built packages from the current svn. running "exaile --next" or "exaile --play" starts a new exaile instance for me...

Hrmm, give it an svn update and it should work.

synic
June 6th, 2006, 03:05 PM
is there a way to transfer files to/from the ipod, or just view/play?

Not yet, but eventually.

topyli
June 6th, 2006, 04:10 PM
(Re: Command line control)

Hrmm, give it an svn update and it should work.
Yes it works now! Thanks.

synic
June 7th, 2006, 09:50 PM
Exaile 0.2b released! See the first post or the freshmeat project page (http://freshmeat.net/projects/exaile/?branch_id=64911&release_id=229075) for details.

--synic

mrvw0169
June 7th, 2006, 10:03 PM
Wow, it looks amazing... can't wait to try this out as soon as Dell sends me back my laptop... No, even better, I'll just boot up a live CD to give Exaile a go once I get home since it looks so good.

Keep up the good work!

croak77
June 7th, 2006, 11:33 PM
Just tried out the deb file. Everything worked well. One question, do you plan to add any optins to deal with compilations? Amarok puts them in Various Artists by default and was wondering if it is possible to do the same or maybe a way to select an album and mark it as a compilation.

synic
June 7th, 2006, 11:38 PM
Just tried out the deb file. Everything worked well. One question, do you plan to add any optins to deal with compilations? Amarok puts them in Various Artists by default and was wondering if it is possible to do the same or maybe a way to select an album and mark it as a compilation.

Yes, that will probably be in 0.3.

xplode_me
June 8th, 2006, 01:52 AM
Just to say that exaile is my player since i knew it existed (SVN version 0.1(?))...

IT rocks synic! :D

Dylan103
June 8th, 2006, 02:18 AM
Any idea?


oem@ubuntu:~$ cd exaile && ./exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .ser vice files
Traceback (most recent call last):
File "exaile.py", line 41, in ?
import gtk, mmkeys
ImportError: No module named mmkeys

***** You can safely ignore the above error.
Error reading settings file, using defaults.
Traceback (most recent call last):
File "exaile.py", line 1899, in ?
main()
File "exaile.py", line 1888, in main
exaile = ExaileWindow(fr)
File "exaile.py", line 110, in __init__
media.set_audio_sink(self.settings.get('audio_sink ', 'esdsink'))
File "/home/harold/exaile/xl/media.py", line 49, in set_audio_sink
AttributeError: 'NoneType' object has no attribute 'set_property'



Thanks in advance,
Dylan

amunimanghi
June 8th, 2006, 03:28 AM
when i installed it i went to sound and video=>exaile nothing happend. i typed exaile in the terminal and this is what i got
manghi@ubuntu:~$ exaile
Traceback (most recent call last):
File "/usr/bin/exaile", line 28, in ?
from xl import *
File "/usr/share/exaile/xl/tracks.py", line 18, in ?
import common, media, db
File "/usr/share/exaile/xl/common.py", line 19, in ?
from pysqlite2.dbapi2 import OperationalError
ImportError: No module named pysqlite2.dbapi2
manghi@ubuntu:~$

croak77
June 8th, 2006, 06:54 AM
when i installed it i went to sound and video=>exaile nothing happend. i typed exaile in the terminal and this is what i got
manghi@ubuntu:~$ exaile
Traceback (most recent call last):
File "/usr/bin/exaile", line 28, in ?
from xl import *
File "/usr/share/exaile/xl/tracks.py", line 18, in ?
import common, media, db
File "/usr/share/exaile/xl/common.py", line 19, in ?
from pysqlite2.dbapi2 import OperationalError
ImportError: No module named pysqlite2.dbapi2
manghi@ubuntu:~$


Is python-pysqlite2 installed?

thomashauk
June 8th, 2006, 12:37 PM
A few bug reports.
First the box to choose where the OSD is positioned does not disapper if you close the preferences while on OSD.
Second the artists list should update after adding music to the libary or refressing the libary because it currently lokks as if it has failed.
Also, alhough this may be more of a feture request, there need to be a way of rejecting album artwork if it is wrong and there is no other available.

synic
June 8th, 2006, 04:49 PM
A few bug reports.
First the box to choose where the OSD is positioned does not disapper if you close the preferences while on OSD.
Second the artists list should update after adding music to the libary or refressing the libary because it currently lokks as if it has failed.
Also, alhough this may be more of a feture request, there need to be a way of rejecting album artwork if it is wrong and there is no other available.

1) Ah, good catch, I'll get it fixed.
2) Ok, this has been put in
3) You can change the cover manually by right clicking on it

thomashauk
June 8th, 2006, 05:46 PM
The gstreemer-good package installed but now winges that it is broken.



gstreamer0.10-plugins-good: Depends: libc6 (>= 2.3.6-6) but 2.3.6-0ubuntu20 is to be installed
Depends: libdbus-1-2 (>= 0.61) but 0.60-6ubuntu8 is to be installed
Depends: libgcc1 (>= 1:4.1.0) but 1:4.0.3-1ubuntu5 is to be installed
Depends: liboil0.3 (>= 0.3.8) but 0.3.7-0ubuntu5 is to be installed
Depends: libstdc++6 (>= 4.1.0) but 4.0.3-1ubuntu5 is to be installed

](*,)

maxol
June 8th, 2006, 06:22 PM
Great player, using it now.

One slight problem, the tray icon is appearing on the desktop instead of in the tray.

(screenshot attached)

synic
June 8th, 2006, 06:36 PM
The gstreemer-good package installed but now winges that it is broken.



gstreamer0.10-plugins-good: Depends: libc6 (>= 2.3.6-6) but 2.3.6-0ubuntu20 is to be installed
Depends: libdbus-1-2 (>= 0.61) but 0.60-6ubuntu8 is to be installed
Depends: libgcc1 (>= 1:4.1.0) but 1:4.0.3-1ubuntu5 is to be installed
Depends: liboil0.3 (>= 0.3.8) but 0.3.7-0ubuntu5 is to be installed
Depends: libstdc++6 (>= 4.1.0) but 4.0.3-1ubuntu5 is to be installed

](*,)

Sounds like you have non-ubuntu repos in your sources.list

synic
June 8th, 2006, 06:37 PM
Great player, using it now.

One slight problem, the tray icon is appearing on the desktop instead of in the tray.

(screenshot attached)

You have to have the notification area applet added to your panel.

maxol
June 8th, 2006, 08:47 PM
Thanks synic, fixed.

Exaile is just what I wanted. I've tried Listen etc but found them too busy and always ended going back to Rhythmbox but I think I will be sticking with Exaile.

mpmc
June 8th, 2006, 10:26 PM
Installed exaile, tried to run it & got:


Traceback (most recent call last):
File "/usr/bin/exaile", line 28, in ?
from xl import *
File "/usr/share/exaile/xl/tracks.py", line 18, in ?
import common, media, db
File "/usr/share/exaile/xl/media.py", line 20, in ?
import urllib, xlmisc
File "/usr/share/exaile/xl/xlmisc.py", line 18, in ?
import trackslist, tracks, covers, md5, threading, re
File "/usr/share/exaile/xl/covers.py", line 21, in ?
import Image
ImportError: No module named Image


I'm running xfce

amunimanghi
June 8th, 2006, 11:17 PM
Is python-pysqlite2 installed?

i did sudo apt-get install python-pysqlite2, but it has A LOT of dependencies. I dont get it.



manghi@ubuntu:~$ sudo apt-get install python-pysqlite2
Password:
Reading package lists... Done
Building dependency tree... Done
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
exaile: Depends: libcairo2 (>= 1.0.2-2) but 1.0.2-0ubuntu1.1 is to be installed
Depends: libglib2.0-0 (>= 2.10.0) but 2.8.3-0ubuntu1 is to be installed
Depends: libpango1.0-0 (>= 1.12.2) but 1.10.1-0ubuntu1 is to be installed
Depends: python-pymad
Depends: libgstreamer0.10-0 but it is not installable
Depends: gstreamer0.10-plugins-base but it is not installable
Depends: gstreamer0.10-plugins-good but it is not installable
Depends: python-gst0.10 but it is not installable
Depends: gstreamer0.10-esd but it is not installable
Depends: gstreamer0.10-alsa but it is not installable
python-pysqlite2: Depends: python2.4-pysqlite2 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
manghi@ubuntu:~$

synic
June 9th, 2006, 01:24 AM
Installed exaile, tried to run it & got:



I'm running xfce

Sorry, you need python2.4-imaging. This dep will be removed in the next release.

synic
June 9th, 2006, 01:25 AM
i did sudo apt-get install python-pysqlite2, but it has A LOT of dependencies. I dont get it.



manghi@ubuntu:~$ sudo apt-get install python-pysqlite2
Password:
Reading package lists... Done
Building dependency tree... Done
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
exaile: Depends: libcairo2 (>= 1.0.2-2) but 1.0.2-0ubuntu1.1 is to be installed
Depends: libglib2.0-0 (>= 2.10.0) but 2.8.3-0ubuntu1 is to be installed
Depends: libpango1.0-0 (>= 1.12.2) but 1.10.1-0ubuntu1 is to be installed
Depends: python-pymad
Depends: libgstreamer0.10-0 but it is not installable
Depends: gstreamer0.10-plugins-base but it is not installable
Depends: gstreamer0.10-plugins-good but it is not installable
Depends: python-gst0.10 but it is not installable
Depends: gstreamer0.10-esd but it is not installable
Depends: gstreamer0.10-alsa but it is not installable
python-pysqlite2: Depends: python2.4-pysqlite2 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
manghi@ubuntu:~$


Sounds like there's something wrong with your package db or sources... are you mixing repos?

amunimanghi
June 9th, 2006, 01:40 AM
Sounds like there's something wrong with your package db or sources... are you mixing repos?


i checked and im not mixing any repos.

croak77
June 9th, 2006, 03:12 AM
i checked and im not mixing any repos.

Are you on Breezy or Dapper? Looks like you're on Breezy and you used the Exaile .deb which requires Dapper packages.

nalmeth
June 9th, 2006, 04:12 AM
Synic, I've been more busy than usual lately, so I've only now got the time to test exaile out with tab fetching, but I can't find the option? How do you do it? Did you remove the feature? I installed on my PC with the deb.

I have a whole day off tomorrow, I can test her out a lot tomorrow.

If the feature's been removed, can you send me a .deb with it included or something?

I have a whole range of music that I think will be good to test its usability.

OLGA might be more comprehensive than fretplay, but there are so many other sites too. What is the criteria for a good tab site for this function?

amunimanghi
June 9th, 2006, 04:27 AM
Are you on Breezy or Dapper? Looks like you're on Breezy and you used the Exaile .deb which requires Dapper packages.

I'm on Breezy. Does this mean it only works on Dapper. I'm going to upgrade really soon. I can wait. :D

xmastree
June 9th, 2006, 12:21 PM
I tried it on Breezy, reported my problems here and was told it only works on Dapper. It's somewhere back in the thread, I don't blame you for not spotting it though...

thomashauk
June 9th, 2006, 04:21 PM
Sounds like you have non-ubuntu repos in your sources.list

But I haven't although the .deb of gstreamer plugins was the one you pointed to earlier which was from the debian repos.


EDIT Scrach that I've found a repo with a Ubuntu compatable one

synic
June 9th, 2006, 04:59 PM
Synic, I've been more busy than usual lately, so I've only now got the time to test exaile out with tab fetching, but I can't find the option? How do you do it? Did you remove the feature? I installed on my PC with the deb.

I have a whole day off tomorrow, I can test her out a lot tomorrow.

If the feature's been removed, can you send me a .deb with it included or something?

I have a whole range of music that I think will be good to test its usability.

OLGA might be more comprehensive than fretplay, but there are so many other sites too. What is the criteria for a good tab site for this function?

Right click on the track, and go to "Track Information"

MeneK
June 9th, 2006, 07:28 PM
Exaile is simple and nice. Great work.

But, could you have a look at this screenshot?

10949

Some files seem to have their ID3 tags corrupted when I'm using Exaile. They looked right in Rhythmbox, but after modifying some of the tags with Exaile, then the opposite happened: the modified files looked right in Exaile and wrong in Rhythmbox, and also in FooBar2000, when I boot with winXP.

I'm using Ubuntu 6.06, and my music library is on a FAT32 partition.

Thanks!

kblake007
June 10th, 2006, 10:14 AM
This media player is so cool I can hardly stand it. !!! Nice worK

mpmc
June 10th, 2006, 01:19 PM
There a few dependencies missing if your using Xubuntu

Python2.4-dbus
Python2.4-imaging
Python2.4-libxml2
Python-pyogg

Are missing on the default install..
-----------------------------------------------------------------------
Also there is a bug, when changing tracks, It doesn't attempt to fetch the lyrics.... you have to reload the playlist

darehanl
June 10th, 2006, 03:58 PM
Looks good. I'm seriously considering switching:-)

Just a few bug reports/requests:

Dependency python-pyvorbis seems to be missing. But that's all I needed to add, the rest was taken care of by apt.
Whenever I click "Set custom Image," the file browser opens in /usr/share/exaile. It would be nice if the file browser open from where it was last opened, or the directory the music file is in.
Eventual support for internationalization (gettext). I'd love to translate Exaile.

synic
June 10th, 2006, 04:27 PM
There a few dependencies missing if your using Xubuntu

Python2.4-dbus
Python2.4-imaging
Python2.4-libxml2
Python-pyogg

Are missing on the default install..
-----------------------------------------------------------------------
Also there is a bug, when changing tracks, It doesn't attempt to fetch the lyrics.... you have to reload the playlist

Ah, I'll add these deps.

I'm not sure what you mean about fetching lyrics?

synic
June 10th, 2006, 04:44 PM
Dependency python-pyvorbis seems to be missing. But that's all I needed to add, the rest was taken care of by apt.
Ok, this is now in the control file

Whenever I click "Set custom Image," the file browser opens in /usr/share/exaile. It would be nice if the file browser open from where it was last opened, or the directory the music file is in.
Done

Eventual support for internationalization (gettext). I'd love to translate Exaile.
I've actually been programming with gettext, so I'll get back to you when I have everything ready for that :)



Your changes are in SVN and will be in the next release.

--synic

synic
June 10th, 2006, 04:57 PM
Ok. I think I've got pyggettext2.4 sorta figured out, so I'm guessing this is what translators will need:

http://synic.ath.cx/messages.pot

Thanks,

--synic

rshd301
June 10th, 2006, 06:54 PM
First off, superb player.....however, one small issue I have concerning tags. I have spent a lot of time ensuring that my MP3 tags are correct using Easy Tag and in Amarok all appear as they should. Trouble is, in Exaile, none of my album names have come across. The artist, track number, genre etc all are there but no album name. Any ideas ???

MeneK
June 10th, 2006, 08:14 PM
Exaile is simple and nice. Great work.

But, could you have a look at this screenshot?

10949

Some files seem to have their ID3 tags corrupted when I'm using Exaile. They looked right in Rhythmbox, but after modifying some of the tags with Exaile, then the opposite happened: the modified files looked right in Exaile and wrong in Rhythmbox, and also in FooBar2000, when I boot with winXP.

I'm using Ubuntu 6.06, and my music library is on a FAT32 partition.

Thanks!

I've just discovered that Windows Media Player 10 doesn't reconigse the same tags than Exaile, while they seem perfect with Rhythmbox or FooBar2000.

T313C0mun1s7
June 10th, 2006, 09:37 PM
I have not sat and read all 10 (22 in linear display mode) pages, so I am sorry if I repeat anything that was already mentioned.

I am thinking of figguring out if I can get Nero to work under WINE, but until I am able to do that I really liked that I could just drag a Winamp type (as in m3u or pls) playlist into Listen and then hit the button to Burn a CD.

I have not been able to drag and drop files or playlists into Exaile. I don't know if this is a function of Exaile or something else, but it would be a nice feature. Also, it would be nice when I am in a playlist to be able to rightclick in the playlist and get an option to browse my filesystem for media files or playlist files to add to the current playlist. Finally, a feature to burn CDs such as Listen has would be a nice addition.

Thank you for such a great app. It really was so much more than I expected when I decided to give it a try. It is much more like a Ver 2.x app than a 0.02b app. Great work.

arnieboy
June 11th, 2006, 03:57 AM
First of all:
I am on Dapper and I tried version 0.2b
This player is very impressive and is the best of the lot currently in my opinion.
A few bugs which need to be addressed in the radio section:
1) Exaile is unable to retrieve radio stations in some shoutcast genres like "80's" (not the only one).
2) Everytime, I double click on a radio genre, it opens a new tab. A check should be added to make sure that if a tab is already open for one genre, it should not get re-opened in a new tab if clicked again and preferably, the tab in which it was already open should gain focus.

I am sure the author has already planned to add buttons for "shuffle", "loop" etc in future releases.

This player should become the defacto Gnome media manager in the near future.

Good luck :)

T313C0mun1s7
June 11th, 2006, 04:46 AM
This player should become the defacto Gnome media manager in the near future.


Yes, I agree. I Strongly Agree.

JMO707
June 11th, 2006, 06:43 AM
Damn. Its so amuzingly functional.

Not an only "just-fancy" thing. Its cuasi-perfect.

Keep on it (seriously)

darehanl
June 11th, 2006, 11:10 AM
A few notes while translating (I'll finish by tommorrow, I think).


Around line 475, there's an empty string.

#: xl/trackslist.py:75 xl/trackslist.py:602
msgid ""
msgstr ""
msginit gives an error because of this.

At exaile.py:255, Last means playlist that was last played, right?

At exaile.py:336, does "prevent from being added to the library on rescan" mean the tracks will be removed from the library on rescan? I'm not too sure what this sentence means.

Is there any difference between a library and a collection?

When asking the user "Blacklisting the selected tracks..." I personally think the choices should be
Cancel Blacklist



----
Also, when I "View Full Image" of a very large (> 800x600) image, the image covers the whole screen and won't go away. I had to alt+drag the image to find the X button.

synic
June 11th, 2006, 06:10 PM
[QUOTE=darehanl]A few notes while translating (I'll finish by tommorrow, I think).


Around line 475, there's an empty string.
-- this should be fixed if you refresh the messages.pot

At exaile.py:255, Last means playlist that was last played, right?
-- Yes

At exaile.py:336, does "prevent from being added to the library on rescan" mean the tracks will be removed from the library on rescan? I'm not too sure what this sentence means.
-- It means that the track will never be in the library, even if you rescan your collection

Is there any difference between a library and a collection?
-- No

shrimphead
June 11th, 2006, 07:38 PM
awesome player I love it, I used to use KDE purely for amarok (I hate running qt apps in a gtk environemt too) and this is exactly what I was looking for.

I haven't used it extensively yet, I only installed it a half hour ago, but the first thing that jumps out at me is that it doesn't remember it's position between instances. It would be awesome if there was an option to start in full screen or something.

synic
June 11th, 2006, 08:21 PM
awesome player I love it, I used to use KDE purely for amarok (I hate running qt apps in a gtk environemt too) and this is exactly what I was looking for.

I haven't used it extensively yet, I only installed it a half hour ago, but the first thing that jumps out at me is that it doesn't remember it's position between instances. It would be awesome if there was an option to start in full screen or something.

Ah, it actually does remember the position and size... problem is that it only remembers when you resize or move the window (these events are not triggered when you maxmize). I'll add a listener to the maximize event, and it will be available in the next release.

Bogart
June 11th, 2006, 09:41 PM
I'm using it in Arch Linux and it works fine except I can't listen to shoutcast feeds. I don't get any error, just nothing happens, no sound. The feeds work fine in xmms, but not in exaile. I installed all dependencies suggested, but could I miss some gstreamer plugin or something? Does it require gstreamer-ffmpeg to stream these radio feeds? However, opening exaile in a terminal and opening a shoutcast playlist previously downloaded doesn't give any error message.

Apart from that, great player ! Really good. I love it. Great work, thanks !

synic
June 11th, 2006, 10:50 PM
I'm using it in Arch Linux and it works fine except I can't listen to shoutcast feeds. I don't get any error, just nothing happens, no sound. The feeds work fine in xmms, but not in exaile. I installed all dependencies suggested, but could I miss some gstreamer plugin or something? Does it require gstreamer-ffmpeg to stream these radio feeds? However, opening exaile in a terminal and opening a shoutcast playlist previously downloaded doesn't give any error message.

Apart from that, great player ! Really good. I love it. Great work, thanks !

Do you see any messages in the terminal when you run it?

Bogart
June 11th, 2006, 11:19 PM
Nothing special apart from the dbus error that tell me I can ignore it. Here is the output when opening exaile and then trying to open a shoutcast playlist:

[alberto@localhost ~]$ exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
[audioscrobbler] logging in
[audioscrobbler] Sleeping for 1 secs
loading songs
Importing /home/alberto/shoutcast-playlist.pls

And there it stops and does nothing else... It's strange 'cause i can listen to my local files without a problem.

Sheinar
June 11th, 2006, 11:26 PM
I'm using it in Arch Linux and it works fine except I can't listen to shoutcast feeds.
Same problem here.

synic
June 12th, 2006, 12:34 AM
Nothing special apart from the dbus error that tell me I can ignore it. Here is the output when opening exaile and then trying to open a shoutcast playlist:

[alberto@localhost ~]$ exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
[audioscrobbler] logging in
[audioscrobbler] Sleeping for 1 secs
loading songs
Importing /home/alberto/shoutcast-playlist.pls

And there it stops and does nothing else... It's strange 'cause i can listen to my local files without a problem.

Can you paste the contents of that file?

synic
June 12th, 2006, 12:38 AM
First of all:
I am on Dapper and I tried version 0.2b
This player is very impressive and is the best of the lot currently in my opinion.
A few bugs which need to be addressed in the radio section:
1) Exaile is unable to retrieve radio stations in some shoutcast genres like "80's" (not the only one).
2) Everytime, I double click on a radio genre, it opens a new tab. A check should be added to make sure that if a tab is already open for one genre, it should not get re-opened in a new tab if clicked again and preferably, the tab in which it was already open should gain focus.


1) For some reason there are no stations under "80's" on shoutcast, even if you browse shoutcast.com in firefox. I'm not sure why this is.

2) I will add this in.

Adam

Bogart
June 12th, 2006, 01:21 PM
The file is just a playlist downloaded from shoutcast to test opening it locally. Here are the contents:

[playlist]
numberofentries=5
File1=http://207.200.96.227:80/stream/1028
Title1=(#1 - 315/3155) S K Y . F M - Classical & Flamenco Guitar - a mix of classical, spanish, and flamenco guitar
Length1=-1
File2=http://207.200.96.227:8000
Title2=(#2 - 105/1000) S K Y . F M - Classical & Flamenco Guitar - a mix of classical, spanish, and flamenco guitar
Length2=-1
File3=http://207.200.96.229:8016
Title3=(#3 - 110/1000) S K Y . F M - Classical & Flamenco Guitar - a mix of classical, spanish, and flamenco guitar
Length3=-1
File4=http://207.200.96.228:80/stream/1028
Title4=(#4 - 760/2207) S K Y . F M - Classical & Flamenco Guitar - a mix of classical, spanish, and flamenco guitar
Length4=-1
File5=http://205.188.215.226:8020
Title5=(#5 - 81/100) S K Y . F M - Classical & Flamenco Guitar - a mix of classical, spanish, and flamenco guitar
Length5=-1
Version=2

It's strange. Exaile's radio works fine in Ubuntu live-CD... In Arch I'm using Xfce instead of Gnome, but that shouldn't be a problem I guess... And opening that same file in xmms works fine here too.

darehanl
June 12th, 2006, 05:05 PM
Got the po file done. I don't speak python, so I don't know how to apply this, though.

synic
June 12th, 2006, 05:27 PM
Got the po file done. I don't speak python, so I don't know how to apply this, though.

Ok, I've put this in svn. You'll have to type 'make' to convert the .po files to .mo. If you could svn update and let me know if it worked?

Thanks,

--synic

ChaKy
June 12th, 2006, 09:42 PM
I am having this error, while trying to start player after install:


chaky@ubuntu:~/Downloads$ exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "/usr/bin/exaile", line 1918, in ?
main()
File "/usr/bin/exaile", line 1908, in main
exaile = ExaileWindow(fr)
File "/usr/bin/exaile", line 70, in __init__
self.DBConnect()
File "/usr/bin/exaile", line 484, in DBConnect
self.db = db.DBManager("%s%smusic.db" %
File "/usr/share/exaile/xl/db.py", line 20, in __init__
cur.execute("PRAGMA synchronize=OFF")
pysqlite2.dbapi2.Warning: You can only execute one statement at a time.

Bogart
June 12th, 2006, 09:59 PM
I found the problem. A plugin called gstreamer-neon is needed to listen to http streams from shoutcast. I think this plugin belongs to plugins-bad pack, but for whatever reason it's not included in the arch's gstreamer0.10-bad pack and you have to install it independently.

It's all good now. Thanks ! :)

synic
June 13th, 2006, 12:25 AM
I am having this error, while trying to start player after install:


chaky@ubuntu:~/Downloads$ exaile
Introspect error: The name org.exaile.DBusInterface was not provided by any .service files
***** You can safely ignore the above error.
Traceback (most recent call last):
File "/usr/bin/exaile", line 1918, in ?
main()
File "/usr/bin/exaile", line 1908, in main
exaile = ExaileWindow(fr)
File "/usr/bin/exaile", line 70, in __init__
self.DBConnect()
File "/usr/bin/exaile", line 484, in DBConnect
self.db = db.DBManager("%s%smusic.db" %
File "/usr/share/exaile/xl/db.py", line 20, in __init__
cur.execute("PRAGMA synchronize=OFF")
pysqlite2.dbapi2.Warning: You can only execute one statement at a time.


Not really sure about this one. It happens every time you try to start exaile?

Adam

ChaKy
June 13th, 2006, 09:12 AM
Not really sure about this one. It happens every time you try to start exaile?

Adam

Yes, it happens every time.

topyli
June 13th, 2006, 10:28 PM
I'm using the 0.2b package from the home page. It works perfectly and I haven't yet stopped loving this player very hard. :)

One thing that makes me wonder us high CPU usage though. I have an old 900MHz box with 256M RAM so these things are easy to notice. When the Exaile UI is visible, My CPU usage is steadily at 50% (this raises CPU temp and fan noise, which is annoying). With Exaile minimized to the notification area, CPU usage is immediately cut down to around 10-20%.

This is strange, the process is running and music playing all the time so I can't imagine why drawing the Exaile window would be so expensive...

Bogart
June 14th, 2006, 01:10 PM
One thing that makes me wonder us high CPU usage though. I have an old 900MHz box with 256M RAM so these things are easy to notice. When the Exaile UI is visible, My CPU usage is steadily at 50% (this raises CPU temp and fan noise, which is annoying). With Exaile minimized to the notification area, CPU usage is immediately cut down to around 10-20%.

This is strange, the process is running and music playing all the time so I can't imagine why drawing the Exaile window would be so expensive...

I noticed the same thing. When Exaile is visible or even minimized to the taskbar it uses about 20% of my CPU (on a P4 2.6 Ghz). Only closing it to the tray icon gets the CPU usage down to 2% or so.

synic
June 14th, 2006, 10:17 PM
I'm using the 0.2b package from the home page. It works perfectly and I haven't yet stopped loving this player very hard. :)

One thing that makes me wonder us high CPU usage though. I have an old 900MHz box with 256M RAM so these things are easy to notice. When the Exaile UI is visible, My CPU usage is steadily at 50% (this raises CPU temp and fan noise, which is annoying). With Exaile minimized to the notification area, CPU usage is immediately cut down to around 10-20%.

This is strange, the process is running and music playing all the time so I can't imagine why drawing the Exaile window would be so expensive...

I've done some updates that /may/ fix this problem for you. I've committed them to svn, so if you want to update and let me know...

Thanks,

Adam

Bogart
June 15th, 2006, 01:11 PM
I've done some updates that /may/ fix this problem for you. I've committed them to svn, so if you want to update and let me know...

Thanks,

Adam

I updated from svn and the CPU usage problem is fixed. Thanks !

Another thing: I added to my music folder some files that are UTF-8 encoded, while the rest are ISO-8859-1 (my default encoding) and they don't appear in my collection after rescanning the folder (QuodLibet can read them, though, so I guess it's possible to read files with different encondings).

mzilhao
June 15th, 2006, 03:15 PM
very nice player! i've been using Rhythmbox and Listen and i'm really enjoying Exaile.
one thing, though: how can i add more (non shoutcast) radio streams?

great work!

Harold P
June 15th, 2006, 03:20 PM
Loving the .deb :D

topyli
June 15th, 2006, 04:14 PM
I updated from svn and the CPU usage problem is fixed. Thanks !


Yes! Just built the latest SVN and suddenly COU usage is down to around 20% regardless of the Exaile UI being visible or minimized to tray. Exaile seems to use around 7 to 12% (on my 900MHz box) which is very good for a python program I guess. Thanks synic, Exile's level of awesomeness is getting higher by the day :)

INMCM
June 15th, 2006, 06:25 PM
Synic - have you ever looked into using Psyco (http://psyco.sourceforge.net/) to improve performance in Exaile? I've heard it can work "miracles" in speeding up python code.

Bogart
June 16th, 2006, 01:35 PM
Synic - have you ever looked into using Psyco (http://psyco.sourceforge.net/) to improve performance in Exaile? I've heard it can work "miracles" in speeding up python code.

For what I've heard, Psyco improves performance (sometimes dramatically), but it uses more RAM and is a bit less stable. Given the nature of Exaile, I don't think that performance (meaning runtime speed) is as important as RAM usage or stability.

However, it's said to be very easy to use (no code changes, AFAIK) so nothing is lost by trying it, I guess...

synic
June 16th, 2006, 03:56 PM
Synic - have you ever looked into using Psyco (http://psyco.sourceforge.net/) to improve performance in Exaile? I've heard it can work "miracles" in speeding up python code.

I just put it in, so if you want to update and try it out...

nalmeth
June 17th, 2006, 07:15 AM
Now using 0.2 deb, and already a lot of things fixed from old binary release.

Tab fetching is the bomb, even if it doesn't always work. I find if I rename the tags for title and album, it will sometimes work, but often still not.

I seem to remember you said the API situation was poor with fretplay, does this explain the searching problem? Could it be that there are tabs for the songs and the API fails to corrolate them with the search? I know fretplay has a lot more metallica than anything, (One of the guys behind the site is a huge metallica buff and runs encyclopedia metallica (encycmet)). As a result I get tabs for most any Metallica song I have.

Are you still using fretplay?

One more thing for now, is it possible to have the track information tab refresh when a new song starts? You have to close the tab and open a new one for info on the new song.

:cool: Lovin' the (AFAIK) first ever tab fetching music player :cool:

AThomsen
June 17th, 2006, 01:02 PM
deleted

pgmario
June 17th, 2006, 01:18 PM
Very good work, Exaile runs very stable here and has some great features!

One more thing for now, is it possible to have the track information tab refresh when a new song starts? You have to close the tab and open a new one for info on the new song.That's what I would like to see, too. It would be much more convenient that way, I think.

Another useful feature which I use in Amarok all the time are custom dynamic playlists with filters like "all songs with a rating of higher than X".

Exaile is already the best non-KDE player, and it's pretty damn close to Amarok.

Very well done, keep it up!

nalmeth
June 17th, 2006, 10:49 PM
synic, another thing.

for the dependencies you have described to install before the .deb, libgstreamer0.10 and libgstreamer0.10-plugins-good don't exist.


sdcb@vaiobuntu:~$ apt-cache search libgstreamer
libgstreamer-plugins-base0.10-0 - GStreamer libraries from the "base" set
libgstreamer-plugins-base0.10-dev - GStreamer development files for libraries from the "base" set
libgstreamer0.10-0 - Core GStreamer libraries and elements
libgstreamer0.10-0-dbg - Core GStreamer libraries and elements
libgstreamer0.10-dev - GStreamer core development files
libgstreamer-gconf0.8-0 - GConf support for GStreamer
libgstreamer-gconf0.8-dev - Development files for GConf support for GStreamer
libgstreamer-plugins0.8-0 - Various GStreamer libraries and library plugins
libgstreamer-plugins0.8-dev - Development files for various GStreamer library and library plugins
libgstreamer0.8-0 - Core GStreamer libraries, plugins, and utilities
libgstreamer0.8-dev - GStreamer development libraries and headers
libgstreamer0.8-ruby - GStreamer 0.8 bindings for the Ruby language Should the items in bold be installed? What functionality does this add? Exaile seems to run fine without (same situation on my PC, all repositories are enabled BTW).

EDIT: Funny, I already have the items in bold installed. Might just want to adjust your dependency directions

topyli
June 18th, 2006, 06:34 PM
I don't like the Last.fm player, so I'm using Lastfmproxy (http://vidar.gimp.org/lastfmproxy/) so I can listen to my Last.fm stations with *cough*Exaile!*cough* my favorite player. :)

By adding the lastfmproxy URL and a dummy URL (localhost:1881/skip) into my Last.fm station in Exaile, I can skip songs. (pressing "next track" twice). However, it might be nice to include proper last.fm playback support with all the functions: skip, ban, love at least.

Might actually be pretty easy by cannibalizing code from the LastamaroK (http://kde-apps.org/content/show.php?content=39883) plugin, which is itself based on lastfmproxy :)

metafile
June 18th, 2006, 11:36 PM
Have you thought about equalizer? This is one of the crucial reasons for me to use amaroK.