Note: This page is still under construction.
Introduction
Now that you've got Freevo installed, and you are ready to use it! This guide will take you through setting up all your variables in your freevo configuration file: local_conf.py.
The first thing you will need to do is pick your favorite editor, and open up the file. Remember that you only need to edit local_conf.py, not freevo_conf.py. Also any changes you make can be stored per user if the file is saved in the .freevo/ hidden directory in your home directory.
So, fire up a handy editor and take a look at the file. Scroll down a bit until you see the General freevo settings section. That's where we'll start first.
You'll notice that all the variables are already commented out. The values they are set to are the default values. If you want to leave them as they are, that's fine -- you won't need to do anything. If you do want to change them though, delete the pound sign (#) and all the blank space before the variable and then change the value. Let's look at them one by one:
Audio and Mixer Settings
AUDIO_DEVICE
This is the device node in your system's /dev directory that is used for playing sound. If you have ALSA with OSS emulation on your computer (a common setting), then set this to /dev/dsp or /dev/dsp0.
Check your filesystem first to see that one of those exist.
AUDIO_INPUT_DEVICE
The audio device node that Freevo will use to record your sound.
If you have a TV tuner card in your system with its own onboard audio recorder, then you will want to use that one. It will probably be /dev/dsp1. If, however, you are running an audio cable from your TV tuner card to your sound card, then you want to use the sound card's device -- the same that would be set above for AUDIO_DEVICE.
CONTROL_ALL_AUDIO
If set to 1, Freevo will manage all your audio mixer settings. Probably a good idea unless you want to manually manage everything yourself.
MAX_VOLUME
The maximum value for your audio device to output.
On some cards using ALSA, setting the value too high may cause some squelching or feedback, so 90 is a good safe value which should be plenty loud. Check your mixer to see what your current settings are. Some popular ones are kmix, alsamixer and aumix.
DEFAULT_VOLUME
The sound level you want Freevo to start at. 40 will probably be too low.
TV_IN_VOLUME
Sets the recorder volume for your TV card.
VCR_IN_VOLUME
Sets ... something.
DEV_MIXER
The mixer device node for your sound card (from AUDIO_DEVICE above). For most ALSA-OSS setups, the default of /dev/mixer should work.
System and Freevo Internal Settings
START_FULLSCREEN_X
Set this to 1 if you want Freevo to start in fullscreen mode instead of windowed mode.
While you would want this to run fullscreen on a dedicated media box, leave it set to 0 until everything is working correctly -- it makes it easier to switch back and forth between your Freevo window and the documentation that way.
CONFIRM_SHUTDOWN If set to 1, will display a small confirmation popup window when you select 'Shutdown' from the main Freevo menu. A lifesaver for those of us with fat fingers.
ROM_DRIVES
When set to None, this will automatically detect your read-only drives, such as your CD and DVD drives. In most cases you won't need to change this.
If you don't want Freevo to ever play anything from your drives, set the value to [] to disable detection completely.
Or, if you want to manually specify which drives to include, enter them in the format of the config file. An example would be:
ROM_DRIVES = [ ('/mnt/cdrom', '/dev/cdrom', 'CD ROM Drive') ]
HIDE_UNUSABLE_DISCS
Hide discs from the wrong menu (e.g. VCDs in audio menu) and empty discs.
ROM_SPEED
Attempt to set the speed of the ROM drive. A good value for keeping the drive silent while playing movies is 8.
ENABLE_SHUTDOWN_SYS
If set to 1, when you select Shutdown from the main Freevo menu, it will also turn off your computer completely (assuming you are running as root or have sudo privileges). Useful for standalone boxes.
MENU_ARROW_NAVIGATION (needs clarification)
Use arrow keys for back and select (alternate way of navigating).
USE_NETWORK
When set to 1, Freevo can query CDDB for album information, the IMDB for movie information, and Amazon.com for cover searches. If the computer isn't connected to the Internet, or you don't want to use those features, you can set this to 0.
OVERLAY_DIR
Default setting is fine.
UMASK
The only time you should change this from the default setting is if you run Freevo as one user, and want to modify or delete the recordings with another user.
Umask numbers create the octal chmod numbers by subtracting itself from 777. So if the umask is 022, then the files written will be chmod'ed 755. A umask of 002 would set them to 775.
PLAYLIST_SUFFIX
Default: m3u
The suffix to identify playlist files with. Leave this as the default unless you use a custom suffix for your playlists.
MMPYTHON_CREATE_MD5_ID
While it's always fun to turn on settings that you aren't sure what they do even though they sound cool, it's not necessary. You should only set this to 1 if you have problems with different discs having the same id.
MEDIAINFO_USE_MEMORY
Default setting is fine.
CACHE_IMAGES
Set to 1 to cache your images. Will use a lot of disc space, but it creates a huge speed enhancement.
Plugins
Freevo has a lot of modular plugins that you can enable or disable. For an initial setup, you won't need to change anything here. If you'd like to see a list of available plugins, just run freevo plugins -l.
Add plugins by using plugin.activate('plugin_name')
Remove them with plugin.remove('plugin_name')
The default settings should be fine, so don't worry about changing anything just yet -- get your Freevo running first.
If you are using an Hauppauge 150/250/350/500 PCI TV Tuner Card, then you will need to make some changes here:
plugin.remove('tv.generic_record') plugin_record = plugin.activate('tv.ivtv_record')
Directories
Once again, for an initial setup, nothing here needs to be changed to get your Freevo up and running. You can always come back and tweak these settings later, but the defaults should serve just fine.
DIRECTORY_SORT_BY_DATE
This setting controls how your files will be sorted in their directories. The default setting of 2 will sort your files in your TV recording directory by date recorded, but all other directories by filename alphabetically.
If you want all files in all folders sorted by date, set to 1.
For all files sorted alphabetically, set to 0.
DIRECTORY_REVERSE_SORT
If set to 1, directory items will be sorted in reverse order.
DIRECTORY_SMART_SORT
If set to 1, Freevo will ignore filenames starting with the word 'The' when sorting.
DIRECTORY_AUTOPLAY_SINGLE_ITEM
When browsing your folders in Freevo, if there is only one item in the folder, it will start playing that file instead of bringing up a list of items in the folder. Set to 0 to disable.
DIRECTORY_FORCE_SKIN_LAYOUT
Force the skin to use a specific layout number. -1 == no force. The layout toggle with DISPLAY will be disabled.
DIRECTORY_AUDIO_FORMAT_STRING
Format string for the audio item names. Possible strings: a = artist, n = tracknumber, t = title, y = year, f = filename
Be sure that your entire setting is enclosed in single quotes. Using the strings will use Python's format, so t would become %(t)s
DIRECTORY_USE_MEDIAID_TAG_NAMES
Use media id tags to generate the name of the item. This should be enabled all the time. It should only be disabled for directories with broken tags.
DIRECTORY_AUTOPLAY_ITEMS
Enable autoplay (see DIRECTORY_AUTOPLAY_SINGLE_ITEM above) for certain items.
To enable autoplay for audio and image files:
DIRECTORY_AUTOPLAY_ITEMS = [ 'audio', 'image' ]
To disable autoplay entirely:
DIRECTORY_AUTOPLAY_ITEMS = []
Movies
VIDEO_ITEMS
This is a list of folders where your movie files can be found, and the titles to display in your Freevo.
The variable is entered in order of title, file. If you are going to use your Freevo for watching videos other than your recorded TV (which is set later in TV_RECORD_DIR) or listening to your music (see AUDIO_ITEMS), then you will need to add them here.
Here's an example:
VIDEO_ITEMS = [ ('Action Flicks', '/var/media/movies/action') ]
If you want to add more than one directory, separate the two with commas, and add one per line for easy reading:
VIDEO_ITEMS = [ ('Action Flicks', '/var/media/movies/action'), ('Comedies', '/var/media/movies/comedy'), ('Dramas', '/var/media/movies/drama'), ('Cartoons', '/var/media/cartoons'), ('Kid\'s Shows', '/var/media/tv/children') ]
VIDEO_MPLAYER_SUFFIX and VIDEO_XINE_SUFFIX
A comma-separated list of files with their suffixes that the media player will display.
Unless you want to make any changes, the default is fine.
VIDEO_PREFERED_PLAYER
Your preferred video player. Make sure that your media player is installed correctly and that it can indeed play your media files. Default is fine -- mplayer is a great media player that can play nearly all media files.
VIDEO_ONLY_SCAN_DATADIR
Only scan OVERLAY_DIR and VIDEO_SHOW_DATA_DIR for fxd files containing information about a disc. If you only have the fxd files for discs in one of this directories (and subdirectories), set this to 1, it will speed up startup, 0 may be needed if you have fxd files with disc links in your normal movie tree.
Audio
AUDIO_ITEMS
Identical to the above, this is a list of folders where your audio files are kept, and the names to display in Freevo.
The variable is structured as:
AUDIO_ITEMS = [ ('DISPLAY_NAME', '/path/to/folder') ]
Here's an example:
AUDIO_ITEMS = [ ('Music Collection', '/var/media/music') ]
If you need more than one directory, separate them with commas. Adding one per line makes for easy reading:
AUDIO_ITEMS = [ ('Alternative', '/var/media/music/alternative'), ('Techno', '/var/media/music/techno'), ('R&B', '/var/media/music/rnb'), ('Hip-Hop', '/var/media/music/hiphop'), ('Hard Rock', '/var/media/music/rock'), ('Metal', '/var/media/music/metal'), ('Comic Stuff', '/var/media/music/comedy') ]
AUDIO_SUFFIX
A list of audio file suffixes which are to be seen as audio files. For example:
AUDIO_SUFFIX = [ 'mp3', 'ogg', 'wav','m4a', 'wma', 'aac', 'flac', 'mka' ]
AUDIO_COVER_REGEXP
Regular expression to match with CD cover file names.
AUDIO_SHOW_VIDEOFILES
Default: False
Allow video items to be displayed along with audio items if audio and video are mixed in the defined directories.
Image Viewer
IMAGE_ITEMS
Identical to VIDEO_ITEMS and AUDIO_ITEMS. The variable has the same structure.
IMAGE_SUFFIX
Identical to AUDIO_SUFFIX and having the same structure.
IMAGE_EXCLUDE
A list of file extensions to be excluded from display.
IMAGE_SSHOW_SUFFIX
Suffix of Slideshow files
IMAGEVIEWER_BLEND_MODE
When viewing images on screen, a blend effect can be used to transition from one image to the next. Possible values for this variable are:
- None = No blending
- -1 = Random blending
- 0 = Alpha Blending
- 1 = Wipe effect
IMAGEVIEWVER_REVERSED_IMAGES
Some images aren't rotated correctly. If images are rotated clockwise instead of counter-clockwise, this variable should be set to "1".
Games
GAMES_ITEMS
Although similar to the VIDEO_ITEMS and AUDIO_ITEMS variables, the structure differs greatly. An entry may look something like this:
GAMES_ITEMS = [ ('Super Nintendo', '/multimedia/games/snes/roms',('SNES', '/usr/bin/zsnes', '-1 6 -2 6 -m -r 3 -k 100 -cs -t', '', None )) ]
The variable is structured as shown below:
GAMES_ITEMS = [ ( '<NAME>', '<FOLDER>', ( '<TYPE>', '<COMMAND_PATH>', '<COMMAND_ARGS>', '<IMAGE_PATH>', [<FILE_SUFFIX_FOR_GENERIC>] ) ) ]
The variable items break down as follows: NAME = Name to be displayed in Freevo.
FOLDER = Path to the stored ROM, BIN, IMG or ISO images.
TYPE = Game type. May be any one of the following:
- MAME
- SNES
- GENERIC
COMMAND_PATH = Actual path to the game system executable
COMMAND_ARGS = Additional arguments to be passed to the game system
IMAGE_PATH = Path to images such as covers and screen caps for display when a game is highlighted.
Generic type games require the FILE_SUFFIX_FOR_GENERIC parameter to be set in order to work correctly. This parameter is a comma separated, single quoted list of valid file extensions for the particular game system.
An entry could look like:
GAMES_ITEMS = [ ('Oolite','/multimedia/games/oolite',('GENERIC','/usr/games/oolite','','',[ 'ool' ])), ('Arcade Games', '/multimedia/games/xmame/roms',('MAME', '/usr/games/xmame.SDL', '-fullscreen -jt 5 -jdev /dev/input/js*','', None)), ('Super Nintendo', '/multimedia/games/snes/roms',('SNES', '/usr/bin/zsnes', '-1 6 -2 6 -m -r 3 -k 100 -cs -t', '', None )), ('Sega Genesis', '/multimedia/games/genesis/roms/',('GENERIC', '/usr/bin/dgen', '-j -f -G 800x600', '', [ 'bin','zip' ] )), ('PlayStation One', '/multimedia/games/playstation/isos/',('GENERIC', '/usr/games/pcsx', '-nogui', '', [ 'img','bin','iso' ] )), ('Visual Boy Advance', '/multimedia/games/vba/roms/',('GENERIC', '/usr/bin/vba', '', '', [ 'gb','gba','gbc' ] )) ]
GAMES_NICE
How well do we want our game system to play with everyone else?
GAMES_MAME_CACHE
Path to an XML file containing the list of valid ROMs found for MAME. Freevo builds this file on it's own.
Headlines
HEADLINES_LOCATIONS
News from the 'Net. This has similar structure to several other variables and is set as follows:
HEADLINES_LOCATIONS = [('DISPLAY_NAME', 'URL/TO/NEWS/FEED')]
Need more feeds? Turn the variable into a comma seperated list similar to above.
Skins
SKIN_FORCE_TEXTVIEW_STYLE
SKIN_MEDIAMENU_FORCE_TEXTVIEW
On Screen Display
OSD_EXTRA_FONT_PATH
OSD_FONT_ALIASES
OSD_BUSYICON_TIMER
Sets the number of seconds before displaying the busy icon. In addition, the busy icon can be displayed immediately if there are over a certain number of entries in a directory. It has two arguments, the number of seconds and then the number of files. The defaults are 0.7 seconds and 200 files.
OSD_OVERSCAN_X
Controls the horizontal size of the Freevo interface, making the width smaller as the value increases. Zero is full edge-to-edge display and will almost always result in parts of the interface being off the visible portion of a television screen. Note that while this affects the graphics of the interface, it does not affect the background color of the skin. The color will continue to fill the entire screen no matter what overscan values are selected.
OSD_OVERSCAN_Y
Controls the vertical size of the Freevo interface, making the height smaller as the value increases. See OSD_OVERSCAN_X above for more details.
OSD_SDL_EXEC_AFTER_STARTUP
OSD_SDL_EXEC_AFTER_CLOSE
OSD_STOP_WHEN_PLAYING
Determines if the Freevo OSD system is shut down while fullscreen video applications are playing (xine or mplayer). Some output devices require this. The default setting depends on what video driver you are using:
- Enabled (stop OSD) - DirectFB, DFBMGA, DXR3, DGA
- Disabled (do not stop) - All others
(This is not immediately obvious from the local_conf.py file; it seems to indicate it is disabled by default)
In some cases when using DirectFB or DFBMGA, stopping the OSD will cause Freevo to stop listening for playback commands. This makes the playback applications appear to stop responding to input. In some cases a playback application that listens for both its own keyboard commands and slave commands on stdctl (such as mplayer) will only respond to its own key commands but not Freevo's key commands. This can sometimes be corrected by explicitly setting OSD_STOP_WHEN_PLAYING to 0.
OSD_DIM_TEXT
Determines if text that is too long for its display box is faded out smoothly. Otherwise, ellipses will be used to indicate more text that can't be fit.
Remote Control
LIRCRC
JOY_DEV
JOY_CMDS
The following entries add the ability to jump directly to a sub menu from any other menu:
- EVENTS['global']['TV'] = Event(MENU_GOTO_TV)
- EVENTS['global']['VIDEOS'] = Event(MENU_GOTO_VIDEOS)
- EVENTS['global']['MUSIC'] = Event(MENU_GOTO_MUSIC)
- EVENTS['global']['PICTURES'] = Event(MENU_GOTO_IMAGES)
- EVENTS['global']['GUIDE'] = Event(MENU_GOTO_TVGUIDE)
TVtime
TVTIME_CMD
MPlayer
MPLAYER_AO_DEV
MPLAYER_VO_DEV_OPTS
DVD_LANG_PREF
DVD_SUBTITLE_PREF
MPLAYER_NICE
MPLAYER_SOFTWARE_SCALER
MPLAYER_ARGS
MPLAYER_SEEK_TIMEOUT
MPLAYER_AUTOCROP
MPLAYER_SET_AUDIO_DELAY
MPLAYER_VF_INTERLACED
MPLAYER_VF_PROGRESSIVE
MPLAYER_VF_INTERLACED
MPLAYER_VF_PROGRESSIVE
Xine
XINE_VO_DEV
Default: ?
Choose from 'xv', 'xshm' and 'sdl' for Xine's video output.
XINE_COMMAND
Default: '%s --hide-gui -pq -g -B --geometry %sx%s+0+0 --no-splash' % (CONF.xine, CONF.width, CONF.height)
Run Xine with this command. The default command should be suited for most freevo setups.
XINE_ARGS_DEF
Default: ?
Pass these additional runtime arguments to Xine.
XINE_AO_DEV
Default: ?
Choose between 'alsa' and 'oss' for Xine's audio output.
TV
TV_RECORD_DIR
TV_SETTINGS
TV_DRIVER
TV_DEVICE
TV_INPUT
TV_OPTS
TV_SETTINGS
TIMESHIFT_ENCODE_CMD
TIMESHIFT_BUFFER
TV_CHANNEL_PROG
TV_DATFORMAT
TV_TIMEFORMAT
TV_DATETIMEFORMAT
TV_RECORDFILE_MASK
TV_RECORD_SCHEDULE
TV_RECORD_SERVER_IP
TV_RECORD_SERVER_PORT
VCR_AUDIO
TV_VIEW_SIZE
TV_REC_SIZE
TV_VIEW_OUTFMT
TV_REC_OUTFMT
VCR_CMD
TV_IVTV_OPTIONS
FREQUENCY_TABLE
VIDEO_GROUPS
TV_CHANNELS
XMLTV_GRABBER
XMLTV_SORT
XMLTV_DAYS
WWW Server
WWW_PORT
Default: 80
The port to have the internal webserver listen on. If you specify a port other than the default, you will have to enter that number in your URI's like so: http://127.0.0.1:8080/
WWW_USERS
Default: ?
Set up user-password combinations to give access to the internal webserver.
Example:
{ "user" : "password" }
Or:
{ "user1" : "password", "user2" : "password" }
WWW_GUIDE_INTERVAL
WWW_GUIDE_PRECISION
WWW_GUIDE_COLS
WWW_STYLESHEET
Default: styles/main.css
Unless you plan on customizing the appearance of the web frontend, you can leave this as the default. If you plan on doing some customizations, it is recommended that you make a backup first.
WWW_JAVASCRIPT
Internal Config
VIDEO_SHOW_REGEXP
ENABLE_NETWORK_REMOTE
REMOTE_CONTROL_HOST
REMOTE_CONTROL_PORT
XMLTV_FILE
LOCALE