# &kaffeine; Handbook

## Kaffeine Shell

### The Start Window

Start Window Screenshot

Provides fast access to the most important media sources.

### The Playlist Window

&kaffeine; Playlist Window Screenshot

Kaffeine supports multiple playlists. Choose the active one with the "Playlist" selector. You can easily drag some files or folders from the file browser and drop it on the playlist to enqueue or drop it on the player window to create a new playlist. To change playlist name edit it and confirm with Return.

You can find all playlist related functions in the Playlist-Menu and the context-menu (right-click on playlist).

### The Discs Window

&kaffeine; Discs Window Screenshot

Here you can start Audio CD, DVD or VCD. You can even rip and encode audio tracks to be stored on your hard disk.

### The DVB Window

DVB Window Screenshot

Kaffeine supports Digital Video Broadcasting devices supported by linuxtv drivers. This window is only visible if Kaffeine find a DVB device at startup. If you have a DVB device and Kaffeine doesn't find it, make sure the driver is loaded and your device recognized. (Further information can be found at www.linuxtv.org)

You can find all DVB related functions in the DVB-Menu.

#### Configuration

Configuration Screenshot

Select Menu->DVB->Configure DVB... to open the DVB config dialog. In order to get your device(s) working in Kaffeine, you have to choose a "source" in the list. If you have a DISEqC switch, choose a source for each satellite.

The Recording page allow you to choose where programs are saved to disk.

#### Getting channels

Channels Screenshot

Open the Channels dialog from the DVB-Menu. There, click the Start scan button to start scanning the network for available channels. This can take a while, so be patient ... When done, select the channels you want to add to your channels list and click Add selected or use the filters and click Add filtered (e.g. check "Free to air" and "TV" to add all fta TV).

When added to channels list, channels are automatically assigned a number. To change this number, right click on the channel name and choose Edit ... from the popup menu. This number will allow you to zap using keypad.

#### Viewing live

Live TV Screenshot

To zap to a channel, you can either double-click on a channel name in the DVB window or use keypad (or remote control with kdelirc) to enter the channel number. Entered digit are displayed in the top left corner of the Player window. You can also hit pageUp/pageDown to zap to previous/next.

You can now see your favorite program. Kaffeine also displays some informations about this channel using OSD. You can later hit "O" to see it again. (Hit "O" twice to display current program description).

Now, what if your phone suddenly ring and you absolutely don't want to miss this crucial moment of the movie ? Don't worry. Just hit pause. Kaffeine will pause and immediately start to save the stream to your harddisk. Later, hit play and the program will continue from where you left it. To return to live, just rezap to this channel.

#### Electronic Program Guide

EPG Screenshot

Menu->DVB->EPG... brings up the Electronic Program Guide window, displaying current/next programs. Left click on an entry to display the detailed description of the program. Scheduled events for a given channel are displayed when you right click on one of the channel entry and select View all programs from the context menu.

Double click on an entry to zap to that channel.

#### Recording

Recording Screenshot

Kaffeine offers you several way of recording.

When you are viewing a live program, you can simply choose Menu->DVB->Instant record to immediately start recording this program. The duration is defined in the Recording page of the DVB config dialog, but you can modify it on the fly from the Timers dialog (Menu->DVB->Timers...). Just select the program and click Edit button to change the duration.

You can also create a timer from the EPG window. Right click on a program entry and select Add to timers from the context menu. In this case, the timer is created using Begin margin and End margin defined in the Recording page of the DVB config dialog. So, start time is set to [start time given by EPG]-[begin margin] and duration is set to [duration given by EPG]+[begin margin]+[end margin].

Finally, you can create a new timer by hand. Open the Timers dialog, click on the New button and fill in required informations.

Note that all timers can be deleted, even if running. Open the Timers dialog, select the program and click the Delete button. Of course, deleting a running timer doesn't delete the file on the disk.

#### Playing a record

Simply open the file and Kaffeine will start playing. That's all !

#### Broadcasting

Broadcasting Screenshot

Kaffeine can broadcast several DVB channels (being on the same multiplex) on a lan.

Open the DVB config dialog and go to the Broadcasting page to set address and ports.

Menu->DVB->Broadcasting... opens the broadcasting editor. Select a channel in the Available channels list, and click the Add button to add it to the Broadcasting list. The Available channels list is now filled with channels on the same multiplex. You can now use multi-selection to add channels. Click OK button to start broadcasting.

To stop broadcasting, open the dialog and click OK with an empty list.

### The DVB Client Window

DVB Client Window Screenshot

To enable DVB client, you have to check the box in the Kaffeine configuration dialog. There you must also set address and ports. It will create a new tab labeled Dvb client showing a list of actually broadcasted channels (if any). Double click on a channel name to start playing it. DVB client also support time shifting (just hit pause).

## Player Parts

You'll find all available player parts in Settings-Player Engine.

### The Kaffeine Part

Kaffeine-Part Screenshot

This is the default, xine based, full featured player part for Kaffeine. Plays almost everything...

#### About xine

xine is a free multimedia player. It plays back CDs, DVDs, and VCDs. It also decodes multimedia files like AVI, MOV, WMV, and MP3 from local disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. Detailed info about xine features: http://xine.sourceforge.net

### The GStreamer Part

GStreamer-Part Screenshot

A simple player part based on GStreamer. GStreamer homepage: http://gstreamer.freedesktop.org

## Command Line Options

Usage:

    kaffeine

    f
    pw
    ax
    d

    --fullscreen
    --play
    --audiodriver
    --videodriver
    --device
    --verbose
    --wizard
    file

`-f,--fullscreen` | Starts &kaffeine; in fullscreen mode.
`-p,--play` | Starts with last played track.
`-a,--audiodriver (argument)` | Sets the audio driver. Arguments can be: alsa, arts, oss, ...
`-x,--videodriver (argument)` | Sets the video driver. Arguments can be: xv, xshm, dxr3 ,...
`-d,--device (argument)` | Sets the Audio-CD/VCD/DVD path to (argument).
`--verbose` | Outputs more debug messages.
`-w,--wizard` | Runs installation wizard.
`file...` | Files to play. Can be local files, a directory, an URL or "AudioCD", "VCD", "DVD".

## The DCOP Interface

### Overview

You can use the DCOP interface in two kinds: From inside another application with `TDEApplication::dcopClient()->send( "kaffeine", "KaffeineIface", "pause()" )` or from command line with `dcop kaffeine KaffeineIface openURL best_song_of_the_world.mp3`.

### Functions

#### KaffeineIface Object

`void openURL(TQString URL)` | Opens and plays the given URL.
`void appendURL(TQString URL)` | Appends the URL to current playlist.
`void playAudioCD()` | Starts playing Audio CD.
`void playVCD()` | Starts playing Video CD.
`void playDVD()` | Starts playing DVD.
`void play()` | (Re)Starts playback.
`bool isPlaying()` | Returns "true" or "false" on command line.
`void pause()` | Toggles pause/playback.
`void next()` | Plays next playlist entry/chapter/DVB channel.
`void previous()` | Plays previous playlist entry/chapter/DVB channel.
`void stop()` | Stops playback.
`TQString title()` | Returns the title of the current track.
`TQString getFileName()` | Returns filename of current track.
`int getLength()` | Returns length of current track in seconds.
`int getTimePos()` | Returns current stream position in seconds.
`void quit()` | Quits Kaffeine.
`void random()` | Toggles between random and normal play.
`void fullscreen()` | Toggles between fullscreen and windowed mode.
`void posPlus()` | Increases stream position.
`void posMinus()` | Decreases stream position.
`void volUp()` | Increases volume.
`void volDown()` | Decreases volume.
`void mute()` | Toggles mute on/off.
`void setNumber(int number)` | Select DVB channel/playlist entry by number.
`void dvbOSD()` | Toggles DVB-OSD on/off.

#### KaffeinePartIface Object

`int getContrast()` | Returns current contrast.
`void setContrast(int contrast)` | Sets contrast (0..65535).
`int getBrightness()` | Returns current brightness.
`void setBrightness(int brightness)` | Sets brightness (0..65535).
`void dvdMenuUp()` | DVD Menu: Cursor up.
`void dvdMenuDown()` | DVD Menu: Cursor down.
`void dvdMenuLeft()` | DVD Menu: Cursor left.
`void dvdMenuRight()` | DVD Menu: Cursor right.
`void dvdMenuSelect()` | DVD Menu: Selects the menu item pointed by the cursor.
`void dvdMenuToggle()` | Toggles DVD menu on/off.
`void aspectRatioAuto()` | Automatic aspect ratio.
`void aspectRatio4_3()` | Sets aspect ratio to 4:3.
`void aspectRatioAnamorphic()` | Sets aspect ratio to 16:9.
`void aspectRatioSquare()` | Sets aspect ratio to 1:1.
`void aspectRatioDVB()` | Sets aspect ratio to 2.11:1.
`void zoomIn()` | Zooms picture in.
`void zoomOut()` | Zooms picture out.
`void zoomOff()` | Disables zoom.

## Keybindings

You can configure shortcuts using Settings-Configure Shortcuts.

## Questions and Answers

If Kaffeine hangs on start recompile/reinstall with cmake option -D WITH_XINIT_WORKAROUND="ON".

You may have a look at the xine FAQ at http://xine.sourceforge.net/faq.

For Questions use the TrinityDesktop users mailinglist.

## Reporting BUGS

Before you report a bug, please first make sure the bug has not been reported yet in the (former) bug tracking system at https://bugs.trinitydesktop.org. Also have a look into the mailinglist archives at https://mail.trinitydesktop.org/mailman3/hyperkitty/list/users@trinitydesktop.org/.

To report bugs/issues, please use the upstream development place at the TDE Gitea Workspace for Kaffeine.

When you submit a bug, please include all of the following information:

- versions of Kaffeine, xine, TDE, X11

- the backtrace from KDE's Crash Manager

- console output (you can use --verbose to get more)

## Copyright and License

Program copyright 2003-2005, The Kaffeine Authors

Documentation copyright 2003-2005, Jürgen Kofler kaffeine@gmx.net, Christophe Thommeret hftom@free.fr

&underFDL; &underGPL;
&documentation.index;