# Advanced configuration

This micro-HOWTO describes some of the more advanced settings available in the &kplayer; Settings dialog that you can open using the Configure &kplayer; command on the Settings menu.

## General settings

Resize main window automatically

  By default &kplayer; resizes the main window automatically unless it is maximized or full screen. When &kplayer; loads and starts playing a new video, it scales it in increments of 50% of the original video size until the video width reaches the Minimum initial video width setting. It also automatically resizes the window to maintain the video aspect if that option is turned on.

  If you would like to avoid automatic resizing and always keep the window the size you make it, turn this option off. &kplayer; will then maintain the video aspect by constraining the video within the window, as if the window was maximized for example. You will also want to turn this option off if you get problems coming back from full screen mode, like endless flickering for example. But in that case you should also report the bug following instructions in the Reporting bugs micro-HOWTO.

## Playlist settings

Start playing new entries immediately

  This option is turned on by default, so &kplayer; will start playing new entries you add to the playlist by using Open or Open URL commands on the File menu, or dragging and dropping files onto &kplayer; window, or launching files in &konqueror; etc. If you turn it off, the files will still be put on the currently playing list, but will not be played until their turn comes.

Allow duplicate entries

  By default &kplayer; will remove duplicate entries from the playlist when adding new entries. Turning the option on allows you to have duplicate entries on your playlist. Duplicate means that the entries' URLs are exactly the same.

Cache size limit

  &kplayer; will remember the properties of any files or URLs it has played, even when they are removed from the playlist. It will only start forgetting old file properties after a large number of files have been played. This setting controls that number, by default it is 1000. This has nothing to do with &mplayer; cache, look on the Advanced page for that.

## Control settings

Always remember the following settings for each file

  &kplayer; 0.5 and later comes with the ability to set a good number of different options on a per file or URL basis. Those options are called file properties. The File properties micro-HOWTO has more information.

  On this page you can choose the properties that will be remembered automatically for each file or URL. By default &kplayer; will remember audio delay, subtitle delay and subtitle URL (except autoloaded subtitles).

Remember for current file any changes made with &Shift;

  Alternatively, you can make &kplayer; remember a setting for the current file by holding the &Shift; key while changing that setting. For example, if you have a video file that needs too much resources to play correctly on your system, you can hold &Shift; and choose a frame dropping setting on the Player menu. &kplayer; will then use that setting for this file only, and will continue using the default setting for all other files.

## Progress and seeking control settings

Seek amount

  This option allows you to choose how much &kplayer; will seek forward or backward when you use the seek commands on the Player menu. You can set the amounts in percentages of the video length or in seconds.

## Volume and video control settings

Adjustment amount

  This is the amount by which a setting like volume or contrast will change when you use commands like Increase Volume or Decrease Contrast on the Player menu.

## Audio and video settings

Driver

  This option allows you to choose the video or audio output that &mplayer; will use. The recommended outputs are XVideo for video and OSS or ALSA for audio. Right next to it there is a check box that tells &mplayer; to use a different output if the chosen one fails.

Device

  For some output types you can also specify the device that &mplayer; will use for output. For other output types this sets the output subtype instead. For still other output types this setting may not be meaningful at all. You can find the details on the mplayer(1) manpage.

Codec

  This sets the decoder and codec &mplayer; will use for decoding the video or audio. Right next to it there is a check box that tells &mplayer; to use a different codec if the chosen one fails. The Codec option is not of much use anymore since &kplayer; 0.5 introduced file properties and the ability to set the codec for each file or URL individually.

## Video settings

Scaler

  When using a video output that does not support hardware scaling, like X11, this option sets the scaler type to use. Since normally you would use XVideo or another video output that supports hardware scaling, this option will have no effect. But if you use X11 output or otherwise enable software scaler, you can play around with this option to see what setting gives you the best results. Bicubic and bicubic spline are supposed to give smooth picture in most cases.

Double buffering

  This option is enabled by default. It gives smoother video in most cases.

Direct rendering

  This option may give better performance. However, it will not work with double buffering, and also causes subtitles to be jerky. It is disabled by default.

## Advanced settings

Additional command line arguments

  In this field you can place additional command line options you want to pass to &mplayer; when playing this URL. For example, to deinterlace a DVD put a video filtering option like `-vf pullup` here for a `dvd://1` URL. Choose the append option to add the options you put here to the ones you enter on the Advanced page in the &kplayer; Settings dialog, or the set to option to override them.

Frame drop

  If your system is too slow to play your files properly, this option will tell &mplayer; to drop some frames. This option is not of much use anymore, since &kplayer; 0.5 introduced file properties and the ability to set the frame dropping option on per file or URL basis. Just hold down &Shift; key when selecting a frame dropping option from the Player menu, and &kplayer; will remember it for the current file or URL.

Cache

  This is probably the most tricky of &mplayer; options. It is especially important when playing directly from a &kde; I/O Slave. Although most audio files will play fine with only 64 kilobyte cache, such a small cache will cause problems with many video files. For maximum compatibility the default cache size in &kplayer; is one megabyte. However, some slow media types like DVD, VCD, NFS, Samba, etc. may sometimes require much larger cache like eight megabytes. On the other hand, low bitrate media like online radio stations may need smaller cache so they start playing more quickly. Also, according to &mplayer; crashing message, non-interleaved AVI files may need cache to be turned off. As usual, you can set the Cache option for each individual file or URL in its File Properties.

Build new index

  If a file does not have an index or has a broken one, so seeking is not functional, you can try setting this option to see if it gives an improvement. Turning it on usually does not hurt, but the force setting should only be set in the properties of an individual file or URL.

Use temporary file for playing from KIOSlave

  This option will only have effect when using a &kde; I/O Slave. By default it is turned off, so data is sent to &mplayer; through a named pipe. This works most of the time, the only disadvantage being that seeking is not possible and the time length will usually be unknown. If playing directly from a &kde; I/O Slave does not work for you, turn this option on. Then &kplayer; will download and save the file locally before playing it. This will take more time and also take up some disk space temporarily, but it will make length detection and seeking possible. This option is also available in file properties, so you can change it for individual files and URLs.

Use KIOSlave for HTTP, FTP, SMB

  Those three URL types can be played either directly by &mplayer; or using a &kde; I/O Slave. All three options are turned off by default, so the URLs are passed to &mplayer; directly. But for example &mplayer; 1.0-pre4 was released with FTP support broken all the way down, so if that is the &mplayer; version you are using, you will want to turn the FTP option on, so &kplayer; uses the FTP I/O Slave. The same &mplayer; version also had broken handling of URL encoded characters like a space, so you would either turn this option on for HTTP as well, or turn on the &kde; I/O Slave option in the file properties for any HTTP URL that has a character like that in it. Also Samba support in &mplayer; is still listed as experimental, so if you did not compile it in or if it does not work for you, turn the SMB option on.