xmmsclient
index
/usr/local/lib/python2.6/dist-packages/xmmsclient/__init__.py

##

 
Package Contents
       
collections
consts
glib
propdict
sync
xmmsapi

 
Classes
       
__builtin__.object
xmmsapi.XMMS
xmmsapi.XMMSResult
xmmsapi.XMMSValue

 
class XMMS(__builtin__.object)
    This is the class representing the XMMS2 client itself. The methods in
this class may be used to control and interact with XMMS2.
 
  Methods defined here:
bindata_add(...)
bindata_add(data, cb=None) -> XMMSResult
 
Add a datafile to the server
@rtype: L{XMMSResult}
@return: The result of the operation.
bindata_list(...)
bindata_list(cb=None) -> XMMSResult
 
List all bindata hashes stored on the server
@rtype: L{XMMSResult}
@return: The result of the operation.
bindata_remove(...)
bindata_remove(hash, cb=None) -> XMMSResult
 
Remove a datafile from the server
@rtype: L{XMMSResult}
@return: The result of the operation.
bindata_retrieve(...)
bindata_retrieve(hash, cb=None) -> XMMSResult
 
Retrieve a datafile from the server
@rtype: L{XMMSResult}
@return: The result of the operation.
broadcast_collection_changed(...)
broadcast_collection_changed(cb=None) -> XMMSResult
 
Set a method to handle the collection changed broadcast
from the XMMS2 daemon.
@rtype: L{XMMSResult}
broadcast_config_value_changed(...)
broadcast_config_value_changed(cb=None) -> XMMSResult
 
Set a method to handle the config value changed broadcast
from the XMMS2 daemon.(i.e. some configuration value has
been modified) Updated data is sent whenever a config
value is modified.
@rtype: L{XMMSResult} (the modified config key and its value)
broadcast_configval_changed(...)
@deprecated
broadcast_mediainfo_reader_status(...)
broadcast_mediainfo_reader_status(cb=None) -> XMMSResult
 
Tell daemon to send you the status of the mediainfo reader
@rtype: L{XMMSResult}
@return: The result of the operation.
broadcast_medialib_entry_added(...)
broadcast_medialib_entry_added(cb=None) -> XMMSResult
 
Set a method to handle the medialib entry added broadcast
from the XMMS2 daemon. (i.e. a new entry has been added)
@rtype: L{XMMSResult}
broadcast_medialib_entry_changed(...)
broadcast_medialib_entry_changed(cb=None) -> XMMSResult
 
Set a method to handle the medialib entry changed broadcast
from the XMMS2 daemon.
Updated data is sent when the metadata for a song is updated
in the medialib.
@rtype: L{XMMSResult}
broadcast_playback_current_id(...)
broadcast_playback_current_id(cb=None) -> XMMSResult
 
Set a method to handle the playback id broadcast from the
XMMS2 daemon.
@rtype: L{XMMSResult}(UInt)
broadcast_playback_status(...)
broadcast_playback_status(cb=None) -> XMMSResult
 
Set a method to handle the playback status broadcast from the
XMMS2 daemon.
@rtype: L{XMMSResult}(UInt)
broadcast_playback_volume_changed(...)
broadcast_playback_volume_changed(cb=None) -> XMMSResult
 
Set a broadcast callback for volume updates
@rtype: L{XMMSResult}(UInt)
broadcast_playlist_changed(...)
broadcast_playlist_changed(cb=None) -> XMMSResult
 
Set a method to handle the playlist changed broadcast from the
XMMS2 daemon. Updated data is sent whenever the daemon's
playlist changes.
@rtype: L{XMMSResult}
broadcast_playlist_current_pos(...)
broadcast_playlist_current_pos(cb=None) -> XMMSResult
 
Set a method to handle the playlist current position updates
from the XMMS2 daemon. This is triggered whenever the daemon
jumps from one playlist position to another. (not when moving
a playlist item from one position to another)
@rtype: L{XMMSResult}
broadcast_playlist_loaded(...)
broadcast_playlist_loaded(cb=None) -> XMMSResult
 
Set a broadcast callback for loaded playlist event
@rtype: L{XMMSResult}(UInt)
coll_get(...)
coll_get(name, ns, cb=None) -> XMMSResult
 
Retrieve a Collection
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_idlist_from_playlist_file(...)
coll_idlist_from_playlist_file(path, cb=None) -> XMMSResult
 
Create an idlist from a playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_list(...)
coll_list(name, ns="*", cb=None) -> XMMSResult
 
List collections
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_query_ids(...)
coll_query_ids(coll, start=0, leng=0, order=None, cb=None) -> XMMSResult
 
Retrive a list of ids of the media matching the collection
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_query_infos(...)
coll_query_infos(coll, fields, start=0, leng=0, order=None, groupby=None, cb=None) -> XMMSResult
 
Retrive a list of mediainfo of the media matching the collection
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_remove(...)
coll_remove(name, ns, cb=None) -> XMMSResult
 
Remove a collection on server.
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_rename(...)
coll_rename(oldname, newname, ns, cb=None) -> XMMSResult
 
Change the name of a Collection.
@rtype: L{XMMSResult}
@return: The result of the operation.
coll_save(...)
coll_save(coll, name, ns, cb=None) -> XMMSResult
 
Save a collection on server.
@rtype: L{XMMSResult}
@return: The result of the operation.
config_get_value(...)
config_get_value(key, cb=None) -> XMMSResult
 
Get the configuration value of a given key, from the daemon.
@rtype: L{XMMSResult}(String)
@return: The result of the operation.
config_list_values(...)
config_list_values(cb=None) -> XMMSResult
 
Get list of configuration keys on the daemon. Use
L{config_get_value} to retrieve the values corresponding to the
configuration keys.
@rtype: L{XMMSResult}(StringList)
@return: The result of the operation.
config_register_value(...)
config_register_value(valuename, defaultvalue, cb=None) -> XMMSResult
 
Register a new configvalue.
This should be called in the initcode as XMMS2 won't allow
set/get on values that haven't been registered.
@rtype: L{XMMSResult}
@return: The result of the operation.
config_set_value(...)
config_set_value(key, val, cb=None) -> XMMSResult
 
Set a configuration value on the daemon, given a key.
@rtype: L{XMMSResult}
@return: The result of the operation.
configval_get(...)
@deprecated
configval_list(...)
@deprecated
configval_register(...)
@deprecated
configval_set(...)
@deprecated
connect(...)
connect(path=None, disconnect_func=None)
 
Connect to the appropriate IPC path, for communication with the
XMMS2 daemon. This path defaults to /tmp/xmms-ipc-<username> if
not specified. Call this once you have instantiated the object:
 
C{import xmmsclient}
 
C{xmms = xmmsclient.XMMS()}
 
C{xmms.connect()}
 
...
 
You can provide a disconnect callback function to be activated
when the daemon disconnects.(e.g. daemon quit) This function
typically has to exit the main loop used by your application.
For example, if using L{loop}, your callback should call
L{exit_loop} at some point.
exit_loop(...)
exit_loop()
 
Exits from the L{loop} call
get_fd(...)
get_fd() -> int
 
Get the underlying file descriptor used for communication with
the XMMS2 daemon. You can use this in a client to ensure that
the IPC link is still active and safe to use.(e.g by calling
select() or poll())
@rtype: int
@return: IPC file descriptor
get_source_preference(...)
ioin(...)
ioin() -> bool
 
Read data from the daemon, when available. Note: This is a low
level function that should only be used in certain
circumstances. e.g. a custom event loop
ioout(...)
ioout() -> bool
 
Write data out to the daemon, when available. Note: This is a
low level function that should only be used in certain
circumstances. e.g. a custom event loop
loop(...)
loop()
 
Main client loop for most python clients. Call this to run the
client once everything has been set up. This function blocks
until L{exit_loop} is called.
medialib_add_entry(...)
medialib_add_entry(file, cb=None) -> XMMSResult
 
Add an entry to the MediaLib.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_add_entry_encoded(...)
medialib_add_entry_encoded(file, cb=None) -> XMMSResult
 
Add an entry to the MediaLib.
Exactly the same as #medialib_add_entry but takes
a encoded url instead.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_get_id(...)
medialib_get_id(url, cb=None) -> XMMSResult
 
Search for an entry (URL) in the medialib and return its ID
number.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_get_info(...)
medialib_get_info(id, cb=None) -> XMMSResult
 
@rtype: L{XMMSResult}(HashTable)
@return: Information about the medialib entry position
specified.
medialib_path_import(...)
medialib_path_import(path, cb=None) -> XMMSResult
 
Import metadata from all files recursively from the directory
passed as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_path_import_encoded(...)
medialib_path_import_encoded(path, cb=None) -> XMMSResult
 
Import metadata from all files recursively from the directory
passed as argument. The 'path' argument has to be medialib encoded.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_property_remove(...)
medialib_property_remove(id, key, source=None, cb=None) -> XMMSResult
 
Remove a value from a medialib entry. Source is optional.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_property_set(...)
medialib_property_set(id, key, value, source=None, cb=None) -> XMMSResult
 
Associate a value with a medialib entry. Source is optional.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_rehash(...)
medialib_rehash(id=0, cb=None) -> XMMSResult
 
Force the medialib to check that metadata stored is up to
date.
@rtype: L{XMMSResult}
@return: The result of the operation.
medialib_remove_entry(...)
medialib_remove_entry(id, cb=None) -> XMMSResult
 
Remove an entry from the medialib.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_current_id(...)
playback_current_id(cb=None) -> XMMSResult
 
@rtype: L{XMMSResult}(UInt)
@return: The medialib id of the item currently selected.
playback_pause(...)
playback_pause(cb=None) -> XMMSResult
 
Instruct the XMMS2 daemon to pause playback.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_playtime(...)
playback_playtime(cb=None) -> XMMSResult
 
Return playtime on current file/stream. This is essentially a
more direct version of L{signal_playback_playtime}
@rtype: L{XMMSResult}(UInt)
@return: The result of the operation.(playtime in milliseconds)
playback_seek_ms(...)
playback_seek_ms(ms, whence=PLAYBACK_SEEK_SET, cb=None) -> XMMSResult
 
Seek to a time position in the current file or stream in playback.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_seek_ms_rel(...)
@deprecated
playback_seek_ms_rel(ms, cb=None) -> XMMSResult
 
Seek to a time position by the given offset in the current file or
stream in playback.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_seek_samples(...)
playback_seek_samples(samples, cb=None) -> XMMSResult
 
Seek to a number of samples in the current file or stream in playback.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_seek_samples_rel(...)
@deprecated
playback_seek_samples_rel(samples, cb=None) -> XMMSResult
 
Seek to a number of samples by the given offset in the
current file or stream in playback.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_start(...)
playback_start(cb=None) -> XMMSResult
 
Instruct the XMMS2 daemon to start playing the currently
selected file from the playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_status(...)
playback_status(cb=None) -> XMMSResult
 
Get current playback status from XMMS2 daemon. This is
essentially the more direct version of
L{broadcast_playback_status}. Possible return values are:
L{PLAYBACK_STATUS_STOP}, L{PLAYBACK_STATUS_PLAY},
L{PLAYBACK_STATUS_PAUSE}
@rtype: L{XMMSResult}(UInt)
@return: Current playback status(UInt)
playback_stop(...)
playback_stop(cb=None) -> XMMSResult
 
Instruct the XMMS2 daemon to stop playing the file
currently being played.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_tickle(...)
playback_tickle(cb=None) -> XMMSResult
 
Instruct the XMMS2 daemon to move on to the next playlist item.
@rtype: L{XMMSResult}
@return: The result of the operation.
playback_volume_get(...)
playback_volume_get(cb=None) -> XMMSResult
 
Get the playback for all channels
@rtype: L{XMMSResult}(UInt)
playback_volume_set(...)
playback_volume_set(channel, volume, cb=None) -> XMMSResult
 
Set the playback volume for specified channel
@rtype: L{XMMSResult}(UInt)
playlist_add_collection(...)
playlist_add_collection(coll, order, playlist=None, cb=None) -> XMMSResult
 
Add the content of a collection to the playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_add_encoded(...)
playlist_add_encoded(url, playlist=None, cb=None) -> XMMSResult
 
Add a path or URL to a playable media item to the playlist.
Playable media items may be files or streams.
The 'url' has to be medialib encoded.
Requires a string 'url' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_add_id(...)
playlist_add_id(id, playlist=None, cb=None) -> XMMSResult
 
Add a medialib id to the playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_add_url(...)
playlist_add_url(url, playlist=None, cb=None) -> XMMSResult
 
Add a path or URL to a playable media item to the playlist.
Playable media items may be files or streams.
Requires a string 'url' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_clear(...)
playlist_clear(playlist=None, cb=None) -> XMMSResult
 
Clear the playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_create(...)
playlist_create(playlist, cb=None) -> XMMSResult
 
Create a new playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_current_active(...)
playlist_current_active(cb=None) -> XMMSResult
 
Returns the name of the current active playlist
@rtype: L{XMMSResult}
playlist_current_pos(...)
playlist_current_pos(playlist=None, cb=None) -> XMMSResult
 
Returns the current position in the playlist. This value will
always be equal to, or larger than 0. The first entry in the
list is 0.
@rtype: L{XMMSResult}
playlist_insert_collection(...)
playlist_insert_collection(pos, coll, order, playlist=None, cb=None) -> XMMSResult
 
Insert the content of a collection to the playlist.
Requires an int 'pos' and an int 'id' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_insert_encoded(...)
playlist_insert_encoded(pos, url, playlist=None, cb=None) -> XMMSResult
 
Insert a path or URL to a playable media item to the playlist.
Playable media items may be files or streams.
Requires an int 'pos' and a string 'url' as argument.
 
The 'url' should be encoded to this function.
 
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_insert_id(...)
playlist_insert_id(pos, id, playlist=None, cb=None) -> XMMSResult
 
Insert a medialib to the playlist.
Requires an int 'pos' and an int 'id' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_insert_url(...)
playlist_insert_url(pos, url, playlist=None, cb=None) -> XMMSResult
 
Insert a path or URL to a playable media item to the playlist.
Playable media items may be files or streams.
Requires an int 'pos' and a string 'url' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_list(...)
playlist_list(cb=None) -> XMMSResult
 
Lists the playlists
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_list_entries(...)
playlist_list_entries(playlist=None, cb=None) -> XMMSResult
 
Get the current playlist. This function returns a list of IDs
of the files/streams currently in the playlist. Use
L{medialib_get_info} to retrieve more specific information.
@rtype: L{XMMSResult}(UIntList)
@return: The current playlist.
playlist_load(...)
playlist_load(playlist=None, cb=None) -> XMMSResult
 
Load the playlist as current playlist
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_move(...)
playlist_move(cur_pos, new_pos, playlist=None, cb=None) -> XMMSResult
 
Moves a playlist entry to a new position.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_radd(...)
playlist_radd(url, playlist=None, cb=None) -> XMMSResult
 
Add a directory to the playlist.
Requires a string 'url' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_radd_encoded(...)
playlist_radd_encoded(url, playlist=None, cb=None) -> XMMSResult
 
Add a directory to the playlist.
Requires a string 'url' as argument.
'url' argument has to be medialib encoded.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_remove(...)
playlist_remove(playlist=None, cb=None) -> XMMSResult
 
Remove the playlist from the server
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_remove_entry(...)
playlist_remove_entry(id, playlist=None, cb=None) -> XMMSResult
 
Remove a certain media item from the playlist.
Requires a number 'id' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_rinsert(...)
playlist_rinsert(pos, url, playlist=None, cb=None) -> XMMSResult
 
Insert a directory in the playlist.
Requires an int 'pos' and a string 'url' as argument.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_rinsert_encoded(...)
playlist_rinsert_encoded(pos, url, playlist=None, cb=None) -> XMMSResult
 
Insert a directory in the playlist.
Requires an int 'pos' and a string 'url' as argument.
 
'url' argument has to be medialib encoded.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_set_next(...)
playlist_set_next(position, cb=None) -> XMMSResult
 
Sets the position to move to, next, in the playlist. Calling
L{playback_tickle} will perform the jump to that position.
@rtype: L{XMMSResult}
playlist_set_next_rel(...)
playlist_set_next_rel(position, cb=None) -> XMMSResult
 
Sets the position in the playlist. Same as L{playlist_set_next}
but sets the next position relative to the current position.
You can do set_next_rel(-1) to move backwards for example.
@rtype: L{XMMSResult}
playlist_shuffle(...)
playlist_shuffle(playlist=None, cb=None) -> XMMSResult
 
Instruct the XMMS2 daemon to shuffle the playlist.
@rtype: L{XMMSResult}
@return: The result of the operation.
playlist_sort(...)
playlist_sort(props, playlist=None, cb=None) -> XMMSResult
 
Sorts the playlist according to the properties specified.
@rtype: L{XMMSResult}
@return: The result of the operation.
plugin_list(...)
plugin_list(typ, cb=None) -> XMMSResult
 
Get a list of loaded plugins from the server
@rtype: L{XMMSResult}
@return: The result of the operation.
quit(...)
quit(cb=None) -> XMMSResult
 
Tell the XMMS2 daemon to quit.
@rtype: L{XMMSResult}
@return: The result of the operation.
set_need_out_fun(...)
set_need_out_fun(fun)
set_source_preference(...)
signal_mediainfo_reader_unindexed(...)
signal_mediainfo_reader_unindexed(cb=None) -> XMMSResult
 
Tell daemon to send you the number of unindexed files in the mlib
@rtype: L{XMMSResult}
@return: The result of the operation.
signal_playback_playtime(...)
signal_playback_playtime(cb=None) -> XMMSResult
 
Set a method to handle the playback playtime signal from the
XMMS2 daemon.
@rtype: L{XMMSResult}(UInt)
want_ioout(...)
want_ioout() -> bool
xform_media_browse(...)
xform_media_browse(url, cb=None) -> XMMSResult
 
Browse files from xform plugins.
@rtype: L{XMMSResult}
@return: The result of the operation.
xform_media_browse_encoded(...)
Browse files from xform plugins.
@rtype: L{XMMSResult}
@return: The result of the operation.

Data and other attributes defined here:
__new__ = <built-in method __new__ of type object at 0x7f4692717580>
T.__new__(S, ...) -> a new object with type S, a subtype of T
__pyx_vtable__ = <PyCObject object at 0x7f469373c490>

 
class XMMSResult(__builtin__.object)
    Class containing the results of some operation
 
  Methods defined here:
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
iserror(...)
@return: Whether the result represents an error or not.
@rtype: Boolean
value(...)
wait(...)
Wait for the result from the daemon.

Data and other attributes defined here:
__new__ = <built-in method __new__ of type object at 0x7f4692716760>
T.__new__(S, ...) -> a new object with type S, a subtype of T
__pyx_vtable__ = <PyCObject object at 0x7f469373c3c8>

 
class XMMSValue(__builtin__.object)
     Methods defined here:
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
get_bin(...)
Get data from the result structure as binary data.
@rtype: string
get_coll(...)
Get data from the result structure as a Collection.
@rtype: Collection
get_dict(...)
@return: A dictionary containing media info.
get_error(...)
@return: Error string from the result.
@rtype: String
get_int(...)
Get data from the result structure as an int.
@rtype: int
get_list(...)
@return: A list of dicts from the result structure.
get_propdict(...)
@return: A source dict.
get_string(...)
Get data from the result structure as a string.
@rtype: string
get_type(...)
Return the type of data contained in this result.
The return value is one of the OBJECT_CMD_ARG_* constants.
is_error(...)
@return: Whether the value represents an error or not.
@rtype: Boolean
iserror(...)
@deprecated
@return: Whether the value represents an error or not.
@rtype: Boolean
value(...)
Return value of appropriate data type contained in this result.
This can be used instead of most get_* functions in this class.

Data and other attributes defined here:
__new__ = <built-in method __new__ of type object at 0x7f4692716500>
T.__new__(S, ...) -> a new object with type S, a subtype of T
__pyx_vtable__ = <PyCObject object at 0x7f469373c288>

 
Functions
       
userconfdir_get(...)
Get the user configuration directory, where XMMS2 stores its
user-specific configuration files. Clients may store their
configuration under the 'clients' subdirectory. This varies from
platform to platform so should always be retrieved at runtime.

 
Data
        COLLECTION_CHANGED_ADD = 0
COLLECTION_CHANGED_REMOVE = 3
COLLECTION_CHANGED_RENAME = 2
COLLECTION_CHANGED_UPDATE = 1
PLAYBACK_STATUS_PAUSE = 2
PLAYBACK_STATUS_PLAY = 1
PLAYBACK_STATUS_STOP = 0
PLAYLIST_CHANGED_ADD = 0
PLAYLIST_CHANGED_CLEAR = 4
PLAYLIST_CHANGED_INSERT = 1
PLAYLIST_CHANGED_MOVE = 5
PLAYLIST_CHANGED_REMOVE = 3
PLAYLIST_CHANGED_SHUFFLE = 2
PLAYLIST_CHANGED_SORT = 6
PLAYLIST_CHANGED_UPDATE = 7
PLUGIN_TYPE_ALL = 0
PLUGIN_TYPE_OUTPUT = 1
PLUGIN_TYPE_XFORM = 2
VALUE_TYPE_BIN = 5
VALUE_TYPE_COLL = 4
VALUE_TYPE_DICT = 7
VALUE_TYPE_ERROR = 1
VALUE_TYPE_INT32 = 2
VALUE_TYPE_LIST = 6
VALUE_TYPE_NONE = 0
VALUE_TYPE_STRING = 3