Commit Graph

259 Commits

Author SHA1 Message Date
Bryan Schumaker
487e8c39be Move generic saving / loading functions
These belong under path/
2010-12-03 08:31:03 -05:00
Bryan Schumaker
80deb45a3e Move cache into path/
The cache modifies files, so it can be part of path/
2010-12-03 08:31:03 -05:00
Bryan Schumaker
1e7f63aa2d Moved backup.py to path/
This moves the backup functions to a more reasonable place.
2010-12-03 08:31:03 -05:00
Bryan Schumaker
d768e65a4f Web remote controls
I can play, pause, stop, and advance to the next song through the web
interface.
2010-12-03 08:30:15 -05:00
Bryan Schumaker
f30793f545 Album page improvements
I have improved the album art page.  It shows the songs in a given
album, and clicking the song will cause it to play.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
12238758a4 Web server improvements
The web server can now handle album art, ogg and mp3 files, and do it
all from functions within the class instead of external functions.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
adbac1c245 url formatting: don't escape the quote
We don't need to do this.  It causes problems with last.fm
2010-12-03 08:30:14 -05:00
Bryan Schumaker
f723d35eea library tag accessor functions
I have created functions to make it easy to get at titles and song ids
from known tags.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
fe2b5970b4 lastfm return None on error
lastfm album art fetching should return None if there is a problem
opening the image url.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
1ea1cae552 Web album display beginnings
I have begun working on a way to display information about albums.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
63ac3f3353 Break get request handling into parts
This makes it easier to format the requested path before replying to the
requester.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
2fdb568584 Added slogan
"Your music everywhere" reflects my goal of making my music available to
me everywhere I go.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
cd156db6fc Link to the library page. 2010-12-03 08:30:14 -05:00
Bryan Schumaker
6062a2e65e Library viewer
This gives the web interface a list of artists and albums currently in
the library.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
3275f435e8 Web server album art
The web server can now serve up album art from the artwork cache.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
5118829e78 Get artist and album lists from the library
This patch makes it easy to get an artist or album list out of the
library.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
36cf384cf2 Import trees from libsaria.trees 2010-12-03 08:30:14 -05:00
Bryan Schumaker
6d789fe070 Get artwork by (artist, album)
This makes it easier to find artwork using (artist, album) as a key.
This will probably be the best way to use artwork in the web interface.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
79ea4ab7a0 Renamed web_remote.py
web_server is a better name than web_remote, since I will be doing more
than just remote functions.
2010-12-03 08:30:14 -05:00
Bryan Schumaker
c11b824984 Managed to get index.html working on android 2010-12-03 08:30:13 -05:00
Bryan Schumaker
2ef4d146fc Added test.py
Right now, this file will make a table with all my music.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
b03ec4cffd Added favicon to html/ 2010-12-03 08:30:13 -05:00
Bryan Schumaker
50dd9d784f Added python support to web remote
Now I can write web pages in python!  Whoo!!
2010-12-03 08:30:13 -05:00
Bryan Schumaker
dcc5a937ae Added basename() to path
This will be useful for finding the file referred to by a path.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
0719a57270 Moved libsaria.path to a package
This is the beginning of moving file related code into a single package
and out of the main libsaria directory.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
bbcc87e518 Make sure playlist is initialized properly
This stops an error when ocarina is run with an empty library.  Because
the library is empty, the playlist was never being initialized.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
7c2c10cd50 Don't reload playlist every time it changes 2010-12-03 08:30:13 -05:00
Bryan Schumaker
bf8092e621 Removed Table() class
I don't know why this wasn't removed earlier.  It hasn't been used since
Ocarina 4.0
2010-12-03 08:30:13 -05:00
Bryan Schumaker
3798efd007 Removed Map()
I don't need the Map() class anymore
2010-12-03 08:30:13 -05:00
Bryan Schumaker
c80dfcdf27 Finish new prefrences moveover
I have renamed libsaria.prefs2 to libsaria.prefs
2010-12-03 08:30:13 -05:00
Bryan Schumaker
2d99d70066 Info pane with new prefs
The information pane uses the new preferences tree now.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
a051d5ac41 Volume through new preferences tree
The volume is now controlled through the preferences tree.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
3f3d111fba Random new preferences
The random feature uses the new preferences tree, rather than the
preferences map.
2010-12-03 08:30:13 -05:00
Bryan Schumaker
7f82a08a3a Ocarina window new preferences tree
The main window will set its size based on the new preferences tree,
instead of the old preferences map.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
de31941af1 Optimize rand_candidate
The set of searchable songs shouldn't change while selecting songs.  We
can determine which list of songs to look at up front and always use
that as an argument to rand_candidate()
2010-12-03 08:30:12 -05:00
Bryan Schumaker
2cd2f4f742 pause_after.py undefined do_pause error 2010-12-03 08:30:12 -05:00
Bryan Schumaker
83ebf78d2b Tree prefs test persistance 2010-12-03 08:30:12 -05:00
Bryan Schumaker
0b8223d224 Correctly get the preference tree when initializing 2010-12-03 08:30:12 -05:00
Bryan Schumaker
80d91c3b60 Load preference trees
Preference trees should be able to load from disk if associated with a
file.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
e56d2b807e Tree prefs test
This was used for developing the preferences tree.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
e7fc59a877 Libsaria initialization
I now initialize libsaria during import, rather than as a separate step
afterwards.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
1c5b1b85ba libsaria.collection cleanup
I found more places using libsaria.collection instead of
libsaria.sources
2010-12-03 08:30:12 -05:00
Bryan Schumaker
fcae32cec0 Add prefs2 variable / remove vars
The prefs2 structure is where I will store my new tree-based
preferences.  I'll use this for now until everything gets moved over.  I
also remove the vars variable since nothing uses it.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
0716c7a79c Preference trees
Preference trees are used to store various preferences.  Each component
can have its own set of preferences that use overlapping names.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
ac96553e25 Pause after in local variable
The pause after current track plugin should store its variables in
something local to the plugin and not in the libsaria.vars map.
2010-12-03 08:30:12 -05:00
Bryan Schumaker
701306fef6 libsaria sources change
Change files to reflect the rename of libsaria.collection to
libsaria.sources
2010-12-03 08:30:12 -05:00
Bryan Schumaker
caeb77e58c Rename libsaria.collection to libsaria.sources 2010-12-03 08:29:16 -05:00
Bryan Schumaker
e8fabe3401 Bind remote server by ip address
This should worke better than binding by hostname or 'localhost'
2010-12-03 08:29:16 -05:00
Bryan Schumaker
880e621fcb Make remote visible to outside world
I have to use socket.gethostname() to make the remote server available
to the outside world.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
4672711a47 Added remote plugin
This plugin will allow me to control Ocarina using an app on another
computer.
2010-12-03 08:29:16 -05:00