Bryan Schumaker
9be5b10112
libsaria: Clear cur_id when loading file
...
This allows me to return the correct attributes for a random song loaded
by the user.
2011-06-23 10:21:24 -04:00
Bryan Schumaker
f87f5f25cf
libsaria: Run server based on stored stetting
...
I have a toggle_state() function to toggle the server and save the state
for the next session.
2011-06-18 14:09:27 -04:00
Bryan Schumaker
868359a4a4
libsaria: Catch errors when writing cache files
...
The user doesn't want to see these...
2011-06-18 13:27:21 -04:00
Bryan Schumaker
e6ba5c3139
libsaria: Remove path from library
...
I need to delete it, save the library, and rebulid the tree and index.
2011-06-18 11:22:24 -04:00
Bryan Schumaker
083cbf738c
libsaria: Added function for listing the library
...
This makes it easier for the gui to know what is in the library.
2011-06-18 11:09:44 -04:00
Bryan Schumaker
e055976e07
libsaria: Start server in a try / except block
...
I can catch the exception and print out a nicer message this way.
2011-06-18 10:24:45 -04:00
Bryan Schumaker
72f7ec90eb
libsaria: Remove unused function
...
I don't need the file_empty() function in the cache anymore
2011-06-18 09:44:34 -04:00
Bryan Schumaker
7319767ac3
libsaria: Don't automatically create cache file
...
The cache filler function will pass back a string to be written to this
file. If this string != None, then I create the file and fill it.
2011-06-18 09:39:55 -04:00
Bryan Schumaker
e6849dc5cd
libsaria: Only delete empty cache files
...
For some reason I was trying to delete files that don't even exist in
the cache! This was stupid and caused an error. Now I only delete
empty files
2011-06-18 09:28:53 -04:00
Bryan Schumaker
97902d0730
libsaria: Remove print statement
...
I added it for debugging. I don't need it anymore.
2011-06-17 23:53:01 -04:00
Bryan Schumaker
e8e0c5d743
libsaria: Return album art as part of all_attrs()
...
If the album art exists, I might as well return it so it can be set in
the main gtk thread. If it doesn't exist, I'll trigger a web search for
it.
2011-06-17 23:42:20 -04:00
Bryan Schumaker
851c7251a2
libsaria: Wrong variable initialization
...
Finding attributes for songs not in the library will run if "found"
is initialized to False instead of True...
2011-06-17 23:21:23 -04:00
Bryan Schumaker
12cb9a900a
libsaria: Switch most code to use all_attrs()
...
all_attrs() is my new way of doing things, so it makes sense to use it
now.
2011-06-17 20:23:32 -04:00
Bryan Schumaker
2c341085b4
libsaria: Add sources.get_cur_id()
...
I think a function for finding the current song id will be useful if I
want to remove the old get_attrs() function...
2011-06-17 20:02:11 -04:00
Bryan Schumaker
645b70b33c
libsaria: Introduce libsaria.sources.all_attrs()
...
This patch introduces a new function "all_attrs()" which will return a
dictionary containing all the attributes for the current song. To help
the gui, I pass this dictionary during an on_load() callback.
2011-06-17 19:47:04 -04:00
Bryan Schumaker
5a735aa625
libsaria: Clear cur_id correctly
...
I do this if the song isn't found in the library, rather than as part of
opening a track from disk.
2011-06-16 18:53:27 -04:00
Bryan Schumaker
8f3c4b7c6f
libsaria: Fix library browser web page
...
It needs to use the new library functions to avoid an error.
2011-06-16 18:19:42 -04:00
Bryan Schumaker
9bc22e0d1d
Begin Ocarina 4.9
2011-06-16 18:19:22 -04:00
Bryan Schumaker
05ae0a2505
Ocarina 4.8
2011-06-16 11:15:45 -04:00
Bryan Schumaker
23781e24a8
libsaria: Sometimes the server doesn't exist
...
I shouldn't try shutting down the web server if it hasn't been imported.
This will only lead to an error...
2011-06-16 11:15:01 -04:00
Bryan Schumaker
0e5bd0d908
libsaria: Fix library updating
...
I need to reindex and rebuild the tree on each update. I also need to
notify the front-end that things have changed.
2011-06-09 09:44:40 -04:00
Bryan Schumaker
e0ad57c541
libsaria: Fix playing songs from outside of library
...
The song was loading, but attributes weren't updating. I also use this
patch to begin playback when a song is loaded (I was tired of manually
pressing play every time)
2011-06-09 08:35:02 -04:00
Bryan Schumaker
071257d77d
libsaria: Fix saving playlists
...
I was still using old functions, rather than my new ones.
2011-05-29 18:22:29 -04:00
Bryan Schumaker
1f84f2755b
libsaria: Fix playlist num_visible()
...
When the playlist is changed, I need to test song ids against the
visible set to get the correct number
2011-05-29 14:59:29 -04:00
Bryan Schumaker
884c55cdd5
libsaria: Fix queue num_visible()
...
When songs are removed from the queue, they should also be removed from
the visible set, otherwise num_visible() will never change.
2011-05-29 14:59:15 -04:00
Bryan Schumaker
c9dee00727
libsaria: Actually add libsaria.sources.attrs
...
I forgot to add this file a few commits ago... oops...
2011-05-28 16:15:07 -04:00
Bryan Schumaker
0a644752a4
libsaria: Add in play count dattr
...
I want to track how often songs are played. This patch gives me the
ability to do that.
2011-05-28 16:13:02 -04:00
Bryan Schumaker
49f7829706
libsaria: Add dynamic attributes
...
Dynamic attributes are attributes of a track that can change during run
time (like status, playcount, etc). I only initialize these when they
are first set, and I save after each change.
This patch adds in the dattr framework and the "like" dattr.
2011-05-28 16:04:42 -04:00
Bryan Schumaker
114ac13c7a
libsaria: Added TODO idea to playlist
...
I want to do type checking after loading objects. This can be done once
during storage.load_obj, rather than after load_obj
2011-05-28 15:40:19 -04:00
Bryan Schumaker
1cbb1fb969
libsaria: Remove more path code
2011-05-26 16:04:07 -04:00
Bryan Schumaker
07c673fa47
libsaria: Remove unused libsaria.path code
...
I eventually want to get rid of this directory, so removing this code
helps.
2011-05-26 15:55:59 -04:00
Bryan Schumaker
e59a613499
libsaria: Remove Source() class
...
Nothing uses it anymore, so it can be removed.
2011-05-26 09:25:56 -04:00
Bryan Schumaker
6398b3dd9a
libsaria: Find attributes for songs not in library
...
I use the same Track() class that the library does. I have to create
an instance of this class each time the function is called, but this is
ok since it is not the case I am trying to optimize for.
2011-05-26 09:18:43 -04:00
Bryan Schumaker
b7a45a3e18
libsaria: Controls need to import libsaria
...
I don't know why I didn't already do this...
2011-05-26 09:02:06 -04:00
Bryan Schumaker
38b075a701
libsaria: Turn get_attrs_id into a function pointer
...
I was doing an extra python lookup every time this function was used.
Turning it into a function pointer should cut down on this.
2011-05-25 21:22:23 -04:00
Bryan Schumaker
756c98285b
libsaria: Only shutdown server when server exists
...
I now always call the shutdown() function to close the server. This
function checks if the server pointer has been set, and if it has it
calls the server's shutdown() function.
2011-05-25 21:09:43 -04:00
Bryan Schumaker
c79677e77a
libsaria: Initialize controls on import
...
This avoids an unnecessary function call, it also makes things easier to
read and maintain.
2011-05-25 21:07:53 -04:00
Bryan Schumaker
d41286c83c
libsaria: Import lastfm during import
...
I was doing this during an init() function. It should be more efficient
to just do this right away.
2011-05-25 21:00:07 -04:00
Bryan Schumaker
e2c4d78fa8
libsaria: Remove oldlibrary
...
Nothing uses it anymore, so it can be removed.
2011-05-25 20:50:46 -04:00
Bryan Schumaker
46b7f35224
libsaria: Remove oldlibrary from startup
...
Now it is no longer being imported anywhere. I think I can remove it
now...
2011-05-25 20:48:32 -04:00
Bryan Schumaker
6bc6235e01
libsaria: Remove unused import pointers
2011-05-24 08:06:03 -04:00
Bryan Schumaker
9505373198
libsaria: inc_count() in sources
...
Doesn't do anything yet, but it will eventually (once I start tracking
dynamic attrs)
2011-05-24 08:02:18 -04:00
Bryan Schumaker
6b0ccce530
libsaria: Remove oldlibrary from export code
2011-05-24 07:58:47 -04:00
Bryan Schumaker
d8f47e8d4d
libsaria: Remove new_source() functions
...
I have new functions for creating the library, so this (and associated
callbacks) are no longer needed.
2011-05-23 10:07:19 -04:00
Bryan Schumaker
913ee9f931
libsaria: Remove library export and import
...
Using export / import functions for library updates can be a pain. I
don't plan on changing the library file format any time soon, so I don't
need to keep this code around.
2011-05-23 10:04:05 -04:00
Bryan Schumaker
c4629024a6
libsaria: Add ids to queue visible set
...
When adding songs to the queue, we also need to add the ids to the
visible set if they are visible. Without this step, we won't have an
easy way of knowing how many IDs are visible.
2011-05-23 09:18:30 -04:00
Bryan Schumaker
d7ba67ee38
libsaria: Remove oldlibrary usage from playlist
...
The idea is to remove this from everywhere. The playlist is a good
start.
2011-05-23 09:05:56 -04:00
Bryan Schumaker
de1acd8a23
libsaria: Playlist filtering and next() fixes
...
I removed the old playlist filtering code, since I now have a generic
way of doing this. I also fixed the next function to use the revised
get_attrs() function.
2011-05-22 10:14:10 -04:00
Bryan Schumaker
bfeeb7f568
libsaria: Correct library num_visible()
...
Simply return the length of matching songs in the index.
2011-05-22 09:45:10 -04:00
Bryan Schumaker
39198ff2ce
libsaria: Set initial matching ids
...
This should be initialized to the set of all ids to begin with. That
way everything will match.
2011-05-22 09:34:30 -04:00
Bryan Schumaker
cb162bfa9f
libsaria: Remove callback print statement
...
This was just to make sure it was being triggered.
2011-05-22 09:28:04 -04:00
Bryan Schumaker
3f8cba6f16
libsaria: Do filtering through sources
...
This allows me to set filter text and trigger a callback.
2011-05-22 09:24:53 -04:00
Bryan Schumaker
248dd283ff
libsaria: Filter library
...
This reduces the number of visible songs that the user sees on the UI.
2011-05-21 22:28:12 -04:00
Bryan Schumaker
eea3118012
libsaria: Test song visibility through sources
...
It queries the library, but the playlist and the queue should be able to
use this too. Then they don't each need to track what is currently
visible.
2011-05-21 22:05:23 -04:00
Bryan Schumaker
f676b5b44d
libsaria: Added library index
...
This makes it easier to search for songs.
2011-05-21 21:40:32 -04:00
Bryan Schumaker
297775896e
libsaria: Sources play song id
...
I find the filepath using the new library, rather than having the
library play the song. I only really want the library for managing
collected music. It shouldn't touch music playback at all.
2011-05-21 16:14:08 -04:00
Bryan Schumaker
17d83d8fff
libsaria: Reset library
...
This clears the entire library and creates an empty tag tree.
2011-05-21 15:42:59 -04:00
Bryan Schumaker
c74f9680b2
libsaria: Load saved library on startup
...
I want to load the library and create a tree representing the entire
library on startup.
2011-05-21 15:27:58 -04:00
Bryan Schumaker
45600e8a2d
libsaria: Save library after update
...
I want to write this out to stable storage so the user doesn't need to
rescan every time they want to listen to music.
2011-05-21 08:26:04 -04:00
Bryan Schumaker
254483dd5b
libsaria: Added library getattrs
...
I search for attributes using the new library first. If the song isn't
found in the new library, then I fall back on the old library.
2011-05-21 08:19:59 -04:00
Bryan Schumaker
66d5314b6e
libsaria: Create tree from library
...
I do this at runtime, rather than at scan time, to cut down on storage
space required to store the library.
2011-05-21 08:02:04 -04:00
Bryan Schumaker
b1d8ba7653
libsaria: Remove old ids from library
...
If the song was deleted it should be removed.
This patch also addse in the Track() class that should have been in the
last patch.
2011-05-21 08:01:13 -04:00
Bryan Schumaker
a4988a0b28
libsaria: Add new songs to the library
...
I scan a directory and collect fileids for each file. If the fileid
doesn't exist in the library yet, I'll find the tags and add to the
dictionary.
2011-05-21 07:44:11 -04:00
Bryan Schumaker
a1722eafb3
libsaria: Find list of files to add to library
...
I put them all into a dictionary for use later.
2011-05-21 07:26:30 -04:00
Bryan Schumaker
8debb4a508
libsaria: Began library scanning routines
...
I can add a new path to a dictionary, but I don't do any actual scanning
yet. Instead, I just print out each path in the library.
2011-05-21 07:16:00 -04:00
Bryan Schumaker
39c9a7cca8
libsaria: Added new library directory
...
I'm going to let everything expand across several directories. It'll be
neater this way.
2011-05-20 21:43:35 -04:00
Bryan Schumaker
531ceb2c17
libsaria: Rename library.py to oldlibrary.py
...
I want to preserve the old library as I slowly introduce the new one.
This should help.
2011-05-20 21:22:21 -04:00
Bryan Schumaker
0d75d4f7d9
Began Ocarina 4.8
2011-05-20 20:50:30 -04:00
Bryan Schumaker
dd040252a4
Ocarina 4.7
2011-05-20 08:24:13 -04:00
Bryan Schumaker
6d01a1cbc8
libsaria: Fix playlist filtering
...
The variables "filtered" and "visible" are global, so we need to tell
the function that it shouldn't create local variables.
2011-05-16 12:04:28 -04:00
Bryan Schumaker
e0dd940671
libsaria: Don't write empty text to client
2011-05-15 15:58:21 -04:00
Bryan Schumaker
c02bffb652
libsaria: Web server controls playback
...
I can choose songs to play by clicking rows in an html table. I also
write text to the client as it becomes available, rather than doing it
all at once.
2011-05-15 15:39:14 -04:00
Bryan Schumaker
7ffd4e14fd
libsaria: Added RPC pages
...
For now, I can play and pause. I'll eventually add more operations to
the list.
2011-05-15 13:49:02 -04:00
Bryan Schumaker
2a6b04e328
libsaria: Began new web server
...
The new web server will be built in to libsaria, rather than existing as
a plugin. This allows me to break it into multiple files for easier
use. For now, the server is only active when version.__dev__ == True.
2011-05-15 13:41:47 -04:00
Bryan Schumaker
93a785dafa
libsaria: list_source() takes a function pointer
...
I was taking a flag that I used to determine which list func to call. I
think it is simpler to take a function pointer passed from either
list_playlist() or list_queue()
2011-05-15 11:36:07 -04:00
Bryan Schumaker
76975ecead
libsaria: Fix spacing in playlist
2011-05-15 11:02:14 -04:00
Bryan Schumaker
32a1e96af0
libsaria: Remove unused global statements and imports
...
With my recent cleanups, I don't need these statements anymore. To do
this, I also had to move tracking recent songs to next.py
2011-05-15 10:59:31 -04:00
Bryan Schumaker
6d5ca5d416
libsaria: Rename queue and playlist list functions
...
I rename them from list() to list_ids() so that it doesn't clobbel the
list constructor.
2011-05-15 10:53:31 -04:00
Bryan Schumaker
b4eb7c15c5
libsaria: Remove unused playlist functions
...
I have more generic play_id() and load_id() functions now, so the
playlist specific implementations haven't been used in a long time. I
don't think I need them anymore.
2011-05-15 10:50:39 -04:00
Bryan Schumaker
b56fb6768f
libsaria: Track current file in audio
...
I use this for determining the pipeline state. get_property() wasn't
working as well as I hoped it would.
2011-05-15 10:43:57 -04:00
Bryan Schumaker
5a781479cd
libsaria: Move rand_next() to playlist's next.py
...
This keeps code for picking the next song in one place. I also cleaned
up rand_next() while I was at it.
2011-05-15 10:30:22 -04:00
Bryan Schumaker
898f843ee0
libsaria: Check that sources have an id before looking up a file
...
If next() in libsaria.sources doesn't get an id from the queue or
playlist, then we shouldn't try to look up a filepath. We return None
instead.
2011-05-15 10:28:24 -04:00
Bryan Schumaker
e3af5800b0
libsaria: Check that next() returns a file
...
If next doesn't return a file, we shouldn't try to load something. That
would just be silly.
2011-05-15 10:26:38 -04:00
Bryan Schumaker
67369e88a7
libsaria: Don't change audio pipeline state if no file loaded
...
I only want to change to gst.STATE_PLAYING or gst.STATE_PAUSED if the
pipeline currently has a file loaded. Not doing this can cause an
exception in position() when get_state() returns gst.STATE_READY instead
of gst.STATE_NULL.
2011-05-15 10:23:24 -04:00
Bryan Schumaker
0f78c7b80c
libsaria: Add idea to playlist
...
I want one file to grab the lock and another with functions to call with
the lock held.
2011-05-14 08:29:55 -04:00
Bryan Schumaker
a3af3d053d
libsaria: New sequential next function for playlist
...
The new function exists in its own file to keep things simpler. Based
on the current song id, it finds the index in the playlist and returns
the next visible song.
2011-05-14 08:15:05 -04:00
Bryan Schumaker
0a1160f618
libsaria: Rename playlist's next() function
...
This is to prepare for creating a new file "next.py" dedicated to
choosing the next song. I also use this as an opportunity to pass the
current song id to the next function.
2011-05-14 07:48:11 -04:00
Bryan Schumaker
a950f06e10
libsaria: Don't always keep a set of visible songs
...
If the playlist isn't filtered there isn't much of a point in keeping
around a set of visible songs.
2011-05-13 22:54:27 -04:00
Bryan Schumaker
9056daae93
libsaria: Remove playlist startup() function
...
I should be able to do this on import, so it doesn't need its own
function.
2011-05-13 08:27:59 -04:00
Bryan Schumaker
202e75430e
libsaria: Add comment to playlist save()
...
The lock should be held while saving. Save should normally be called by
a function that already holds the lock, though.
2011-05-13 08:19:50 -04:00
Bryan Schumaker
ad7f780671
libsaria: Load playlist on import
...
I was doing this during startup already, so I might as well do it here.
2011-05-13 08:07:47 -04:00
Bryan Schumaker
194b436886
libsaria: Clean up playlist init
...
I removed some code that really didn't need to be used. I also moved
around some of the imports to make the file easier to follow.
2011-05-13 08:03:00 -04:00
Bryan Schumaker
e6a7b94c57
libsaria: Always get attributes from library
...
Attributes are stored in the library, so it makes sense to get them
there.
2011-05-13 08:00:00 -04:00
Bryan Schumaker
132a66271c
libsaria: Move playlist load, save, and reset functions
...
I moved them to playlist.py so they can grab the lock and safely do
stuff. I save after adding or removing song ids. I also save after
resetting the playlist.
2011-05-12 22:34:36 -04:00
Bryan Schumaker
8b51871225
libsaria: Playlist uses new list functions
...
They were built in to the sources/ layer in 4.6. It makes sense to use
them for the playlist.
2011-05-12 08:25:44 -04:00
Bryan Schumaker
2afabfcf21
libsaria: remove ids from playlist (improved!)
...
I moved this to my new file. I grab the lock, remove each id, and then
unlock.
2011-05-12 08:11:35 -04:00
Bryan Schumaker
8bd914802e
libsaria: Move playlist's list to new file
...
It will be easier to work with from a new file, especially after I put
in functions for doing basic operations on it.
2011-05-11 23:05:47 -04:00
Bryan Schumaker
e2be97165e
libsaria: Move playlist to new directory
...
This will help me manage it better. My next task is to explode it into
multiple files.
2011-05-11 22:43:32 -04:00
Bryan Schumaker
43b162d007
libsaria: Bump version
...
I am now developing Ocarina 4.7
2011-05-11 22:31:28 -04:00
Bryan Schumaker
4e3d98ab61
Ocarina 4.6
2011-05-11 22:19:00 -04:00
Bryan Schumaker
83d8c18772
libsaria: I missed some references to thread.py
...
These should be removed. I don't know how I missed this up until this
point
2011-05-11 22:18:01 -04:00
Bryan Schumaker
86f4aca8f3
libsaria: Remove old threads.py module
...
Everything in here can easily be duplicated with one line of python
code. Keeping this file does a good job at increasing complexity.
2011-05-08 10:58:41 -04:00
Bryan Schumaker
22168d2998
libsaria: Remove old init_src() function
...
I don't even remember the last time this was used. Why bother keeping
it around?
2011-05-08 10:15:02 -04:00
Bryan Schumaker
3ceb62c0de
libsaria: Remove old walk_queue() function
...
I've replaced it with a more generic function that should be able to
handle the library and playlist, too (yay for code reuse!).
2011-05-08 10:10:43 -04:00
Bryan Schumaker
d30eaeea50
libsaria: Generic list_source() function
...
This function will loop over the entire source and collect attributes
for each id. The resulting list will be returned to the caller. I also
added a list_queue() function so the user doesn't need to pass the QUEUE
flag.
2011-05-08 09:56:11 -04:00
Bryan Schumaker
5c056191f2
libsaria: Filter queue
...
Filtering lists makes it easier to find specific songs.
2011-05-07 22:31:11 -04:00
Bryan Schumaker
c9a57bf4be
libsaria: Initialize queue on import
...
I don't actually need to have an init() function. Everything can be
done on import, so everything should be done on import.
2011-05-07 22:06:02 -04:00
Bryan Schumaker
186830e268
libsaria: Remove unused queue save function
...
I never actually used this... I may enable saving the queue later, but
it's not important now.
2011-05-07 21:52:59 -04:00
Bryan Schumaker
5d336d4815
libsaria: Added queue_changed callback
...
This callback is used when ids are either added or removed from the
queue.
2011-05-07 18:52:24 -04:00
Bryan Schumaker
93f2f6b918
libsaria: Remove unused queue functions
...
These haven't been used in a long, long time. I don't even know why
they're still there.
2011-05-07 18:49:17 -04:00
Bryan Schumaker
0908588325
libsaria: Generic next() in sources
...
The sources module should choose between picking the next song from the
playlist or the queue. It should also be in charge of tracking the
current song id.
2011-05-07 18:15:35 -04:00
Bryan Schumaker
d99e7a4955
libsaria: Do locking in queue.py
...
Now I don't need to worry about forgetting to get the lock somewhere
else.
2011-05-07 18:13:31 -04:00
Bryan Schumaker
2c185dec83
libsaria: Move actual queue to new file
...
I pulled out the queue and put it in a new file. I also created simple
add, remove, pop and reset functions.
2011-05-07 17:56:07 -04:00
Bryan Schumaker
c35b452ec3
libsaria: Move queue to subdirectory
...
I am going to explode queue.py into multiple files, so a subdirectory
will help keep manage everything.
2011-05-07 17:29:40 -04:00
Bryan Schumaker
3fd94e4ddd
libsaria: Set cache basedir when storage imported
...
I want to set this once, so I don't need to keep looking it up.
2011-05-07 17:15:06 -04:00
Bryan Schumaker
e2233e4106
libsaria: Remove old cache code
...
I've replaced it with a cache implemented in libsaria/storage. The new
cache should be easier to use (or at least easier to maintain and
understand).
2011-05-07 17:10:20 -04:00
Bryan Schumaker
bafdc6ef20
libsaria: Manually set artwork through a copy_in_file() function
...
I created this function in the cache to make a generic way to copy
outside files into the cache tree. It makes sense to do this in the
cache, since I want to keep everything self-contained.
2011-05-07 16:49:41 -04:00
Bryan Schumaker
2a78d870ee
libsaria: Set artwork from a local file
...
I set it in the new cache, rather than using the old one.
2011-05-07 16:45:04 -04:00
Bryan Schumaker
0f1b5550aa
libsaria: Change cache_func() argument order
...
I want to pass the file object last, I just think it looks better.
2011-05-07 15:58:33 -04:00
Bryan Schumaker
797063c492
libsaria: Fill cache in new function
...
This keeps things easy to read
2011-05-07 15:58:33 -04:00
Bryan Schumaker
a7c7b85fdb
libsaria: Get album art through new cache
...
I am working on replacing my old cache functions with something easier
to use. I can now get album art out of the new cache.
2011-05-07 15:58:33 -04:00
Bryan Schumaker
904b475363
libsaria: Began new cache functions
...
I think the new cache will be more generic, and should work for just
about anything. We'll see.
2011-05-07 15:58:33 -04:00
Bryan Schumaker
c1a2d74f7c
libsaria: Move version information to new file
...
A bit of separation is good here, and it should help with managing the
code.
2011-05-07 15:58:33 -04:00
Bryan Schumaker
40084f4c68
Ocarina 4.5.1
2011-05-07 15:56:47 -04:00
Bryan Schumaker
4d2558a693
Ocarina 4.5
2011-05-06 22:21:20 -04:00
Bryan Schumaker
b06b11cafc
libsaria: Set volume during startup
...
This restores the volume to the level during the last session. Before
this, it was defaulting to max volume.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
975b153bea
libsaria: Remove event.py
...
I've been looking forward to this. The last several commits have
replaced the generic event system with a hardcoded callback system.
This should be more efficient, easier to understand, and easier to
follow. I feel it is a better solution.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
78f6d4b76b
libsaria: Manually parse user input on startup
...
I was doing this through an event after loading the library. Now I call
the function manually on startup.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
e64f93ef39
libsaria: New library source callback
...
Triggered upon scanning a new path to add to the library.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
bc54ef0a98
libsaria: Add a load_playlist() callback
...
Called when playlists are loaded from file.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
96b237631e
libsaria: Remove POSTSETART event
...
Nothing was listening for it, and I am removing the event system soon
anyway
2011-05-01 12:46:17 -04:00
Bryan Schumaker
a6bd531aee
ocarina: Fetch image during load
...
I also set absolute sizes for album art. Scaling to size 1 was causing
scale_simple() to block forever.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
d0198cdd1a
libsaria: Get artwork when songs are loaded
...
I may change this to something that has to be requested by the front
end, rather than always fetching it. We'll see.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
889e17fab9
libsaria: Remove event system from controls
...
This is a big step forward for reving the event system entirely.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
34dcb7998f
libsaria: Add in absolute seeking by percentage
...
I give a percentage and gstreamer will seek to that position in the
song.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
90901846e4
libsaria: Find string representing song pos based on prcnt
...
I can pass a percentage to get_time_at() and it will return a string
representing the time at that spot in the audio stream.
2011-05-01 12:46:17 -04:00
Bryan Schumaker
3cb39f3fcd
libsaria: Fix seeking through gui buttons
2011-05-01 12:46:16 -04:00
Bryan Schumaker
e59243e51b
libsaria: Set volume callback
2011-05-01 12:46:16 -04:00
Bryan Schumaker
99771a34fb
libsaria: on_like() callback
...
This replaces the LIKE event for setting if the user likes the current
song.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
69481ffa70
libsaria: Shut down gstreamer on exit
...
This gives gstreamer a chance to clean up while exiting.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
6e6705736e
libsaria: Add a load_file() callback
2011-05-01 12:46:16 -04:00
Bryan Schumaker
4e66cca423
libsaria: Set volume using new preferences
...
I somehow missed this earlier...
2011-05-01 12:46:16 -04:00
Bryan Schumaker
6c73a9c43a
libsaria: Remove STOP event
...
I can double up on the pause callback in place of a stop callback.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
7879c53fe7
libsaria: Created pause callback
...
This replaces the (PRE, POST)PAUSE events
2011-05-01 12:46:16 -04:00
Bryan Schumaker
b562fff0ed
libsaria: Began implementing better callback system
...
The event system was evil, hard to use, and hard to follow. This patch
is the beginning of a new, more straightforward system.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
6855fb6b2d
libsaria: Remove unused module list
...
I had a list of modules defined as __all__, but I don't think anything
used it. It was time for it to go.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
fca5fd1bae
libsaria: Remove old audio code
...
I had commented it out while introducing the new stuff. I should be
able to safely remove it now.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
8574cda529
libsaria: Ported over Ocarina 5.0 audio functions
...
The new audio code I developed makes more sense and should be easier to
work with. It makes sense to port it over.
2011-05-01 12:46:16 -04:00
Bryan Schumaker
9f0d8efbb7
libsaria: playlist uses correct prefs.get() function
...
I forgot to change it over from get_pref()
2011-05-01 12:46:16 -04:00
Bryan Schumaker
3dc0b208cf
libsaria: Integrate new preferences and storage code
...
This patch re-enables most of the libsaria startup procedures. To allow
this, I had to switch over to the new preferences and object storage
code I recently came up with.
2011-05-01 12:46:16 -04:00