
 amaroK - the audio player for KDE
===================================

There are many media players around these days, true. What's missing from most
players is a user interface, that doesn't get in the way of the user. How many
buttons do you have to press for simply adding some new tracks to the playlist?
amaroK tries to be a little different, providing a simple drag and drop
interface, that really makes playlist handling easy.


 FEATURES
==========

    * Quick and simple drag and drop playlist creation
    * Music library (built-in sqlite, MySQL or PostgreSQL )
    * Multiple backends supported (GStreamer, xine, NMM, Helix, MAS and aRts)
    * Plays all audio formats known to man
    * 10 band equalizer
    * Automatic cover art download using Amazon services
    * The unique and powerful stylable context browser
    * Automatic play-statistics generation (iRate style)
    * Full lyrics download
    * Learn about your music with integrated Wikipedia
    * Full Audioscrobbler support
    * Visualisations with libvisual
    * Streaming from any KIO source
    * Crossfading
    * Fully configurable OSD for track changes
    * K3B (CD-burning) integration
    * Podcast support
    * Powerful scripting interface
    * Complete DCOP Access
    * KDE integration
--------------------------------------------------------------------------------


 RELEASE NOTES
===============

amaroK can be unstable on certain Linux kernel versions with a Pentium 4
processor and HyperThreading enabled. Passing the kernel option "NOHT" at
boot time fixes these issues.
--------------------------------------------------------------------------------


 DEPENDENCIES
==============

Required
    * KDE-Libs 3.3
      http://www.kde.org

    * TagLib 1.4
      (metadata tagging library)
      http://freshmeat.net/projects/taglib

    * One of the multimedia frameworks listed below

Recommended
    * xine 1.0.0
      (multimedia framework)
      http://xinehq.de/

      OR

    * GStreamer-0.8.6 + GStreamer-Plugins-0.8.6
      (multimedia framework)
      http://gstreamer.net
      (Note: GStreamer 0.9.x is incompatible with amaroK)

Optional
    * aRts 1.3 + KDE-Multimedia 3.3
      (multimedia framework)
      http://www.kde.org

    * RealPlayer 10 or HelixPlayer 1.0
      (multimedia framework)
      http://www.real.com
      (Note: only HelixPlayer is exactly RealPlayer without MP3 support)

    * MAS 0.6.3
      (multimedia framework)
      http://www.mediaapplicationserver.net

    * NMM 0.7.0
      (multimedia framework)
      http://www.networkmultimedia.org

    * KDE-Base 3.3
      (needed for Konqueror Sidebar)
      http://www.kde.org

    * MySQL 4
      (faster database support)
      http://www.mysql.com

    * OpenGL accelerated X-Server
      (visualization rendering)

    * Libvisual 0.2.0 + SDL 1.2
      (visualization framework)
      http://libvisual.sf.net
      http://www.libsdl.org

    * ProjectM 0.96
      (visualization plugins for Libvisual or XMMS)
      http://xmms-projectm.sourceforge.net/

    * libtunepimp 0.3
      (automatic tagging support)
      http://www.musicbrainz.org/

    * XMMS 1.2 + XMMS visualization plugins
      (visualization plugins)
      http://xmms.org

    * K3B 0.11
      (CD burning support)
      http://www.k3b.org


Please note, if compiling from source you must also install the devel versions
of these packages.
--------------------------------------------------------------------------------


 IMPORTANT INSTALL INSTRUCTIONS
================================

In order to compile and install amaroK on your system, type the following in the
base directory of the amaroK distribution:


                % ./configure --prefix=`kde-config --prefix`
                % make
                % make install


Note: --enable-final is not guaranteed to work

Note: amaroK-1.3 will not compile on Mandriva LE2005 with KDE 3.3.2.  This is not
an amaroK related problem, and unfortunately we are powerless to help.  Mandriva
has backported fvisibility to their GCC which breaks compilation.  Alternatives
are either using the 1.2.x amaroK branch, or upgrading to KDE 3.4.

Packages for popular distributions are available at http://amarok.kde.org
--------------------------------------------------------------------------------


 INSTALLATION-FAQ
==================

Q: I have the required version of GStreamer installed but configure doesn't
   find it!
Q: I have pkg-config problems.
A: Here's an extract from the PKG-CONFIG man page:

     pkg-config retrieves information about packages from  special metadata
     files. These files are named after the package, with the extension
     .pc. By default, pkg-config looks in the directory prefix/lib/pkgconfig
     for these  files;  it will  also  look in the colon-separated list of
     directories specified by the PKG_CONFIG_PATH environment variable.

   So, do export PKG_CONFIG_PATH="/path/to/gstreamer-0.x.y.pc" and reconfigure.

Q: Can I improve amaroK's startup time?
A: The aRts engine is the slowest to load, using an alternative will help.
   Prelinking amaroK has spectacular results; however if you have binary openGL
   drivers (eg Nvidia drivers), you will need to compile amaroK --without-opengl
   in order to get the amarokapp binary to prelink (the amarok binary is not
   important here).
--------------------------------------------------------------------------------


 OTHER-FAQS
============

For answers to problems like "amaroK won't play any MP3s!" and "My MP3s skip
and stutter!" please visit:

   http://amarok.kde.org/
--------------------------------------------------------------------------------


 INFORMATION FOR PACKAGERS
===========================

For amaroK packages we suggest you build:

                % ./configure --disable-debug

There is a special option for packagers who wish to use the version of sqlite
that is distributed with their operating system:

                % ./configure --without-included-sqlite

It is also possible to build amaroK to use MySQL as the database backend. Using
MySQL makes the amaroK collection faster. We suggest not building sqlite into
amaroK if you plan to ship amaroK with a MySQL dependency.

However, the sqlite you ship MUST be threadsafe! Also amaroK will take longer
to start with this option since sqlite is not statically linked into the
amarok binary. The amaroK binary will be approximately 200kB smaller.

We suggest compiling Os, there is no particular part of amaroK that would
benefit from optimisation, so the smallest binary is probably the best route.

In order to limit the dependencies the amaroK package demands we suggest
splitting amaroK into the following packages:

   1. amaroK + one backend
   2. GStreamer-engine
   3. xine-engine
   4. aRts-engine
   5. amarok_xmmswrapper + amarok_libvisual

amaroK is modular and will be fully functional as long as one of 2, 3, or 4 is
also installed. Hence we suggest amaroK + one backend. Feel free to include the
helix, MAS and NMM engines if you can satisfy their dependencies.

amaroK ships with two binaries: amarok and amarokapp. The amarok binary is a
wrapper designed to speed up command line argument passing. amarokapp is the
real amaroK.

If you make packages for amaroK please let us know and we'll link to you on the
homepage (as long as you don't object).
--------------------------------------------------------------------------------


 CONTRIBUTING
==============

If you wish to contribute to amaroK, you should build it from SVN and subscribe
to the amarok-devel mailing list. The IRC channel is  also  a  place  where
it's  nice  to  be, since you can talk to other developers much easier, and
get instant notification of commits to the SVN. For instant email notification
of commits, visit http://commitfilter.kde.org/.
--------------------------------------------------------------------------------


WWW : http://amarok.kde.org
MAIL: amarok-devel@lists.sourceforge.net
IRC : irc.freenode.net, #amarok #amarok.de
