# The &noatun; Handbook

## Introduction

&noatun; is a fully-featured plugin-based media player for &kde;.

### Features

&noatun; is an elaborate front-end to &arts; — the Analog Real-Time Synthesizer. To add additional playobjects, go to http://noatun.kde.org/plugins.phtml, or http://mpeglib.sf.net. By default &arts; supports MP3 and MPEG-1. Vorbis is also supported if the Vorbis libraries were available during the compilation of &kde;.

## Using &noatun;

&noatun;, by default, starts with the Excellent user interface plugin. This plugin was chosen as it bears the most similarity to other &kde; applications.

&noatun; is unique in that no two installations are the same, and there is no standard interface, although there is a default one. You're free to mix-and-match your selection of plugins, and customize &noatun; until it is your ideal media player!

### Title Format

The &noatun; Preferences Window has an odd Title Format text box. You can enter a format string to customize how titles appear.

- Any text appears normally, unless it is within a `$( )`.

- The text within `$( )` will read the &noatun; property for the given item, and replace the text with it.

- If, within the `$( )` are quotes, the text within the quotes will be displayed normally, but only if the property of the name exists.

- The quotes may be either at the beginning of the `$( )`, at the end of it, or at both the end or the beginning

For example, `$(bitrate)` is replaced by the bitrate of the file, as loaded by the Metatag plugin. However, if you insert quotes into that field, the text within the quotes will be displayed: `$(bitrate"kbps")` for example will display the bitrate of the file, followed by the characters `"kbps"`. Neither will be displayed if the property bitrate does not exist.

## Using &noatun; Plugins

You can select different plugins by going to the Settings menu, and selecting Configure &noatun;.... Move to the Plugins page by selecting the appropriate list item. Then you can enable enable plugins by selecting the checkbox near their name. &noatun; requires at least one User-Interface plugin, and requires exactly one Playlist plugin.

### Milk Chocolate

Milk Chocolate is a small, simple User Interface. The buttons behave mostly like a CD-player, and the eject button opens the playlist. The sheet with a cross button removes the current playlist item, but does not delete the file from disk, and the arrow button sets the looping mode. A menu is available by &RMB; clicking anywhere in the window.

### Young Hickory

Young hickory is a plugin for the &kde; System Tray, the area near the clock, by default.

&RMB; clicking on the icon will show a small menu, and &LMB; clicking will toggle the visibility of your &noatun; user-interface windows. Note that playlists, for example, are not considered user-interfaces.

### HTML Playlist Export

This plugin will place your playlist in a nice HTML table. Its preferences page will allow you to set colors, background image, and enable the Hover mode, for changing colors when the cursor is over a link.

After setting options, the Actions menu's Export Playlist... will open a file dialog for you to select where to save the output.

### K-Jöfol Skins

The &noatun; K-Jöfol skin loader is a reimplementation of a &Windows; program under the same name.

&noatun;'s implementation has a few limitations, unfortunately. For instance the skins must be uncompressed on disk in order to load them.

To install a skin (in the &Windows; ZIP format) you can use the skin-installer that can be found in the preferences-dialog of &noatun;.

Because some skins are not packaged correctly and the skin-installer can not guess everything you can still follow these commands if installation of a certain skin failed:

    % cd $KDEHOME/share/apps/noatun
    % mkdir kjskins (if needed)
    % cd kjskins
    % mkdir new_skin ; cd new_skin
    % unzip /path/to/new_skin.zip

You can also make your own skins with the tutorial at http://www.angelfire.com/mo/nequiem/tutorial.html.

### The Split Playlist

The Split Playlist had a simple, classic-style design. Double clicking on an entry will play it (as will selecting it and pressing Enter). You can drag files and &URL;s in as well.

As of &kde; 3.0, the Split Playlist (SPL) stores its data in an &XML; format, but will automatically import the m3u list if the &XML; file does not exist. This means that you can write to the m3u file, and delete the &XML; file, to automatically generate playlists.

The name Split Playlist is a bit of a misnomer, as the list is not actually split. It results from the original design (back in the early &noatun; days) actually having it split.

### Winamp Skins

If you're actually using the Winamp skin, it should seem familiar to you. Clicking on the timer will toggle it between count-down and count-up mode. Selecting the Scope region under it will enable and disable the scope. You can also double click on the titlebar to toggle Windowshade mode. Right clicking (or clicking on the top-left icon will show the standard &noatun; toolbar.

You can install new skins by, in `$KDEHOME/share/apps/noatun/skins/winamp`, creating a folder for them, and then unzipping the skin in there. Winamp skin files with the extension `.wsz` can be treated as normal zip files. You may have to rename them first, however, to be able to unzip them.

### Metatag

Metatag is a plugin that loads information about a file through the use of KFile, the same mechanism that provides &konqueror; with those tooltips when you hover a mouse over files. Aside from loading the information, it supports editing it via the Actions' menu subitem Tag Editing. It supports editing of ID3 tags, as well as OggVorbis tags. It also reads the bitrate from files.

### Keyz

Carsten Pfeiffer decided to break with the long lived &noatun; tradition of naming a plugin in the most inaccurate way possible, as proven by both Milk-Chocolate, Young Hickory, and countless others. What's the value in just converting an S to a Z? Sounds like something American-English speakers would do!

However, just because the name is unoriginal doesn't mean this is any less of a plugin. Indeed, this one lets you assign keystrokes to some &noatun; actions. The real beauty is that these keystrokes work from anywhere, not just from &noatun;. So this may finally make those Multimedia Keyboards worthwhile.

### Infrared Control

If you have a remote control for your computer (such as those found on television cards with Brooktree tuners), and your infrared remote control is supported by LIRC, this should work. Like Keyz, the name is unexciting, but the plugin allows you to assign actions to button presses.

To assign an action to a keypress, load the plugin, go to the Infrared Control page in the &noatun; configuration window. Select the keypress in the list, and then choose the action to perform with the combo box below. If, in an action like Volume control, you want the action to be performed repeatedly, check the box and select the interval between actions.

If you have a TV card, a convenient trick is to assign the Mute button to Pause, thereby allowing you to mute your TV display application while unpausing &noatun;, and vice-versa, particularly useful in the case of commercials.

## Questions, Answers, and Tips

## Frequently-asked questions

The music skips a lot when moving windows.

You can have &arts; buffer more as follows:

- Start &kcontrol;

- Move to the Sound group

- Move to the Sound Server section

- Increase the response time—384ms is usually sufficient for most computers.

You may also consider running the soundserver with real-time priority if setting the response time doesn't help. Be aware that this can cause your system to lock-up.

I can't remove a playlist or user-interface from the plugins list.

Since &noatun; requires at least one user-interface loaded, and exactly one playlist, you have to add a new user-interface plugin before removing the old one. Adding a new playlist will automatically remove the old one.

Where can I get more plugins?

Third-party developers can submit their own plugins to the &noatun; web-site, where they can be downloaded by you, the users.

How do I write a &noatun; plugin?

Documentation, an API reference, and example source code is available at the &noatun; web-site. Also, in the spirit of Open Source software the source code to &noatun; and all default plugins is available.

## Credits and Licenses

Program copyright 2000-2002 Charles Samuels charles@kde.org

Documentation copyright 2002 Charles Samuels charles@kde.org

&noatun; has been brought to you by the following people:

- Charles Samuels charles@kde.org

- Neil Stevens multivac@fcmail.com

- Stefan Westerfeld stefan@space.twc.de

- Martin Vogt mvogt@rhrk.uni-kl.de

- Malte Starostik malte.starostik@t-online.de

- Nikolas Zimmermann wildfox@kde.org

- Stefan Schimanski 1Stein@gmx.de

&underFDL; &underBSDLicense;

## Installation

### How to obtain &noatun;

&install.intro.documentation;

### Requirements

&noatun; requires at least a Pentium 200 with &Linux;, a PowerPC with &Linux; 2.4.1 or later, or several other platforms. Support for more platforms will be available in later versions.

For a platform to be supported easily, it must have pthread support, and the OSS sound output system, however ALSA is supported under &Linux;.

### Compilation and Installation

&install.compile.documentation;

Should you run into any problems, please report them to the author at charles@kde.org.

If you have this documentation, you've probably already compiled &noatun;

## Glossary

Milk Chocolate

Milk Chocolate is a simple, minimalist user interface plugin

&arts;

&arts; is the Analog Real-time Synthesizer. A powerful media framework used by &noatun;

K-Jöfol

This plugin loads skins originally used under a &Windows; media player under the same name.

Keyz

Keyz allows you to assign keystrokes to actions in &noatun;

Young Hickory

Young Hickory is a system tray plugin.

Noatun

Kaiman is a plugin that loads skins from the media player GQMPEG. Kaiman is also &noatun;'s predecessor, and was distributed with &kde; for &kde; 2.0. When &noatun; was introduced in &kde; 2.1, Kaiman's skin loader became a &noatun; plugin.

&documentation.index;