Commit Graph

10 Commits

Author SHA1 Message Date
Gustavo Sverzut Barbieri 74ca53a96f enjoy: single instance using DBus name org.enlightenment.enjoy
Also provide minor Control interface, later to be extended with DB
management.



SVN revision: 63180
2011-09-04 23:27:15 +00:00
Gustavo Sverzut Barbieri 862f5dd781 enjoy: do some pending stuff, more events are supported.
SVN revision: 63165
2011-09-04 19:20:01 +00:00
Gustavo Sverzut Barbieri 5a1a5421b9 enjoy: version ABI.
SVN revision: 63155
2011-09-04 15:58:50 +00:00
Gustavo Sverzut Barbieri c39b9bd7d7 enjoy: remove done items.
SVN revision: 63154
2011-09-04 15:48:45 +00:00
Gustavo Sverzut Barbieri 7906d1486e enjoy: todo recommended order.
SVN revision: 62832
2011-08-25 19:25:49 +00:00
Gustavo Sverzut Barbieri ea1e80ef11 enjoy: update to-do list.
Want to help enjoy? There are plenty of things to do, at various
difficulty levels. I can help with mentoring, but I can't code them
all by myself. So let's publish ideas and hope people will contribute
:-)



SVN revision: 62828
2011-08-25 16:53:18 +00:00
Leandro Pereira bb825debb8 [enjoy] Improve cover art management/caching
This creates the "covers" table inside "media.db", to cache the path to
each album's cover art. With this, we significantly reduce the amount of
time required to open a previously-seen album screen. This has been
implemented primarily to support downloading cover art from LastFM
(and not hammering their servers or the user's bandwidth).

Currently, LastFM support is enabled by default and we're not complying
with their terms of service (we need to include a badge on our UI if
we're using their data -- that's why we have a "origin" column in the
"covers" database). The badge stuff will be fixed soon, and enabling/
disabling LastFM support will happen whenever we have some settings
dialog working.

SVN revision: 54605
2010-11-16 19:39:06 +00:00
Leandro Pereira 026715693f [enjoy] Add MPRIS support.
MPRIS stands for Media Player Remote Interfacing Specification. It is a DBUS
interface that lets other programs to control a media player.  This include
going to the next or previous songs, obtaining the track list, being
notified whenever a song starts to play, etc.  There are a couple of clients
out there, but standard programs like dbus-send and dbus-monitor can be used
also.

Spec 1.0 (http://www.mpris.org/1.0/spec.html) has been implemented, since
most clients only support it.  However, porting the current implementation
to the new spec shouldn't be too difficult.  The implementation is partial,
though, since more things should be implemented in Enjoy before MPRIS
support can make use of it.

SVN revision: 54439
2010-11-10 21:04:56 +00:00
Rafael Antognolli 0888cf64e9 Enjoy now uses lms to scan directories (only from cmd line yet).
SVN revision: 54143
2010-11-04 01:12:43 +00:00
Gustavo Sverzut Barbieri c010b3433f add basic enjoy code to svn.
WARNING: there is not much to see here yet! I'm just adding to svn as
people seems interested in help, and it is impossible to help without
the base code. IF YOU DON'T WANT TO HELP WITH CODE, DON'T EVEN BOTHER
COMPILING IT YET!

Enjoy is (will be) a music player fully based on Enlightenment
Foundation Libraries (EFL), the goal is to have a simple yet useful
music player that works on desktop and mobiles with the minimum set of
dependencies and maximum efficiency.

It is based on LightMediaScanner (my code[1]) to scan directories for
music and create a database and does so in a very and safe efficient
way by having a scanner process with lower nice priority. It is also
smart enough to hint to your kernel you'll not need the scanned files
anymore (posix_fadvise()) and thus it will not pollute your RAM with
useless file system cache.

So far it is not creating the database on its own, neither have a a
library manager to add/remove directories. In order to run Enjoy you
must first create your own database using "test" program from
lightmediascanner sources:

{{{
   cd lightmediascanner
   ./configure && make && make install
   mkdir -p $HOME/.config/enjoy/media.db
   ./src/bin/test -i 5000 -p id3 -s $HOME/Music $HOME/.config/enjoy/media.db
}}}

The GUI is pretty much ugly and needs huge work. It is almost fully
done in Edje, so C part is quite lean, however I did no Edje work yet,
just the basics to show something (uses r | g | b rectangles for
actions, you have to guess what's what ;-))


= HOW TO HELP =

Read TODO file.

If you're more like a coder:
 * src/bin/db.c follow the propsed stubs and db_songs_get() example;
 * src/bin/page.c add recursive paging with "folder" pages;
 * src/bin/win.c start/stop ecore_thread with lms_process() + lms_check();
 * src/bin/win.c write library manager: rescan collection (thread as
   above item), add directories, remove directories.

If you're more like an edje guy:
 * data/themes: follow eve's style, focus on the bottom toolbar, then
   the list items, then the page/songs. Use dummy icons (copy from eve
   or efenniht), we'll provide proper icons soon
 * add nowplaying screen
 * add volume using dragable (copy from efenniht's slider)


[1] download code from http://git.profusion.mobi/cgit.cgi/lightmediascanner.git/ or http://lms.garage.maemo.org/



SVN revision: 52658
2010-09-24 01:37:54 +00:00