Subsections

Freevo Configuration

The following sections are extracted directly from the /etc/freevo/local_conf.py configuration file.

# local_conf.py

# see /usr/share/freevo/freevo_config.py for defaults

# see /etc/freevo/freevo.conf for programs and devices

CONFIG_VERSION = 5.15

LOCALE = 'utf8'

Audio settings

These are a list of settings for the audio

#AUDIO_DEVICE = '/dev/dsp'

MAJOR_AUDIO_CTRL = 'VOL'

CONTROL_ALL_AUDIO = 1

DEFAULT_VOLUME = 70

TV_IN_VOLUME = 80

VCR_IN_VOLUME = 60

RADIO_IN_VOLUME = 85

System settings

START_FULLSCREEN_X = 1

ENABLE_SHUTDOWN_SYS = 1

CONFIRM_SHUTDOWN = 1

SHUTDOWN_SYS_CMD = '/usr/local/bin/shutdownfreevo grub 2 yes'

CACHE_IMAGES = 1

UMASK = 002

ROM_DRIVES = [ ('/mnt/dvd', '/dev/dvd', 'DVD') ]

ROM_SPEED = 8

Changed event settings

EVENTS['menu']['REC'] = Event(MENU_CALL_ITEM_ACTION, arg='queue_a_track')

EVENTS['menu']['YELLOW'] = Event(MENU_CALL_ITEM_ACTION, arg='close_playlist')

EVENTS['video']['ENTER'] = Event(VIDEO_MANUAL_SEEK)

EVENTS['video']['REPLAY'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='seek -60')

EVENTS['video']['SKIP'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='seek +60')

EVENTS['video']['PLAY'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='speed_set 1.0')

EVENTS['video']['FFWD'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='speed_mult 2.0')

EVENTS['video']['REW'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing seek -30')

EVENTS['video']['LANG'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='switch_audio')

EVENTS['video']['SUBTITLE'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='vobsub_lang')

EVENTS['video']['CH+'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='sub_pos -1')

EVENTS['video']['CH-'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='sub_pos +1')

EVENTS['video']['GREEN'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='audio_delay +0.05')

EVENTS['video']['YELLOW'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='audio_delay -0.10')

EVENTS['video']['GUIDE'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='screenshot')

EVENTS['video']['LEFT'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing seek -0.1')

EVENTS['video']['RIGHT'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing frame_step +1.0')

EVENTS['video']['UP'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing seek +0.5')

EVENTS['video']['DOWN'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing seek -0.5')

EVENTS['video']['SELECT'] = Event(VIDEO_SEND_MPLAYER_CMD, arg='pausing edl_mark')

Plugins and settings

idlebar

plugin.activate('idlebar')

plugin.activate('idlebar.tv', level = 20)

plugin.activate('idlebar.cdstatus', level = 20)

plugin.activate('idlebar.holidays', level = 20)

plugin.activate('idlebar.clock', level = 50, args='%a %d %H:%M')

plugin.activate('idlebar.wakeup', level = 20)

wakeup plugin settings

WAKEUP_SERVER_UID = 0

WAKEUP_SERVER_GID = 0

WAKEUP_SERVER_HOST = '127.0.0.1'

WAKEUP_SERVER_PORT = 18002

WAKEUP_CONFIGFILE = '/etc/nvram-wakeup.conf'

WAKEUP_SHUTDOWN_DELAY = 2

WAKEUP_SHUTDOWN_TIME = 20

WAKEUP_REBOOT_TIME = 10

WAKEUP_AT_FALLBACK = [

'RelativeDateTime(days=0, hour=9,minute=0,second=0)',

'RelativeDateTime(days=1, hour=9,minute=0,second=0)',

]

plugin.activate('wakeupclient')

weather plugin settings

PLUGIN_WEATHER_LOCATIONS = [ ('SZXX0033', 1) ]

plugin.activate('weather', level = 45)

plugin.activate('directory.Dirwatcher')

plugin.activate('audio.playlist', args = ('/freevo/playlists','Playlist %m:%d'))

AUDIO_BACKUP_DIR = '/freevo/music'

CD_RIP_PN_PREF = '%(artist)s/%(album)s/%(track)s - %(song)s'

CD_RIP_LAME_OPTS = '-vbr-new -b 192 -h'

plugin.activate('audio.cdbackup')

plugin.activate('audio.coversearch')

plugin.activate('video.dvdimage')

radio plugin settings

plugin.activate('audio.radioplayer')

plugin.activate('audio.radio')

RADIO_CMD = '/usr/bin/ivtv-radio -d /dev/radio0 -i /dev/video24'

RADIO_STATIONS = [

(u'DRS 1', '94.80'),

(u'DRS 2', '95.60'),

(u'DRS 3', '97.40'),

(u'VIRUS', '104.30'),

(u'Radio Rumantsch', '96.00'),

(u'DRS Musigwälle', '106.40'),

(u'Radio Swiss Classic', '106.90'),

(u'Radio Swiss Pop', '107.30'),

(u'Radio Swiss Jazz', '96.30'),

(u'Radio 24', '102.90'),

(u'Energy Zürich', '101.10'),

(u'Radio Zürisee', '90.20'),

(u'Radio LoRa', '88.10'),

(u'Radio Sunshine', '106.10'),

(u'Radio Argovia', '103.90'),

(u'Radio Top (Reg. Winterthur)', '105.40'),

(u'Radio Tropic', '98.70'),

(u'Radio Eviva', '92.80'),

(u'RSR 1 (La première)', '97.70'),

(u'RSR 2 (Espace 2)', '98.30'),

(u'RSR 3 (Couleur 3)', '99.00'),

(u'France Culture', '101.90'),

(u'France Inter', '100.70'),

(u'France Musique', '99.40'),

(u'RSI 1 (Rete 1)', '96.80'),

(u'Österreich 1', '91.40'),

(u'Österreich 2', '92.10'),

(u'RSI 2 (Rete 2)', '93.50'),

(u'SWR 1 BW', '88.50'),

(u'SWR 2 BW', '89.00'),

(u'SWR 3', '89.50'),

(u'SWR 4 BW', '87.80'),

(u'Bayern 1', '93.10'),

(u'RSI 3 (Rete 3)', '92.40'),

(u'Bayern 3', '93.80'),

(u'Bayern 4 Klassik', '94.20'),

(u'Deutschlandfunk', '89.80'),

(u'Radio Monte Carlo Swiss', '95.10'),

(u'Radio 105 Network', '105.10'),

(u'Life Channel', '107.60'),

(u'Voice of America', '91.00'),

(u'BBC World Service', '90.70'),

(u'Klassik Radio', '103.30'),

(u'Swiss Music Radio', '104.60')

]

Headlines plugin settings

plugin.activate('headlines', level = 40)

HEADLINES_LOCATIONS = [

(u'BBC Front Page', 'http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml'),

(u'BBC World', 'http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/world/rss.xml'),

(u'BBC Technology', 'http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/technology/rss.xml'),

(u'ZDNet Linux', 'http://feeds.zdnet.co.uk/rss/0,39026141,10000004c,00.htm'),

(u'Tagesschau','http://www.tagesschau.de/newsticker.rdf'),

(u'Spiegel Online','http://www.spiegel.de/schlagzeilen/rss/0,5291,,00.xml'),

(u'Faz.net','http://www.faz.net/s/Rub/Tpl~Epartner~SRss_.xml'),

(u'Netzeitung.de','http://www.netzeitung.de/export/news/rss/titelseite.xml'),

(u'Stern.de','http://www.stern.de/standard/rss.php?channel = all'),

(u'Pressedienst, News, Analysen zu Inet-Marketing + Suchmaschinen','http://www.marketingman.de/rss.php'),

(u'Geo.de','http://www.geo.de/rss/GEO/index.xml'),

(u'TheGeek.de - Coding, Culture and Arts','http://www.thegeek.de/blog/rss2.php'),

(u'Heise News','http://www.heise.de/newsticker/heise.rdf'),

(u'Heise Security','http://www.heise.de/security/news/news.rdf'),

(u'Heise Mobil','http://www.heise.de/mobil/newsticker/heise.rdf'),

(u'Pro-Linux','http://www.pl-forum.de/backend/pro-linux.rdf'),

(u'Telepolis','http://www.heise.de/tp/news-xl.rdf'),

(u'php-homepage.de','http://www.php-homepage.de/backend/rss/1.0/'),

(u'Polarluft - Neue Webseiten und Online-Artikel zum Thema Computer und Internet','http://www.polarluft.de/all.rss')

]

Other plugin settings

plugin.activate('shoppingcart')

plugin.activate('usb')

for t in ('video', 'audio', 'image'):

plugin.activate('usbstorage', type=t, args=('Drive USB', '/media/usbdrive1'))

plugin.activate('fxditem.Mimetype')

plugin.activate('playlist.Mimetype')

plugin.activate('vfd')

plugin.activate('df')

plugin.remove('tv.generic_record')

plugin_record = plugin.activate('tv.vbi2srt_record')

directory settings

OVERLAY_DIR = '/var/freevo/overlay'

DIRECTORY_REVERSE_SORT = 1

DIRECTORY_SMART_SORT = 1

DIRECTORY_AUTOPLAY_SINGLE_ITEM = 1

DIRECTORY_FORCE_SKIN_LAYOUT = -1

DIRECTORY_USE_MEDIAID_TAG_NAMES = 1

#a = artist, n = tracknumber, t = title, y = year, f = filename

DIRECTORY_AUDIO_FORMAT_STRING = '%(t)s'

DIRECTORY_CREATE_PLAYLIST = [ 'audio', 'image' ]

DIRECTORY_ADD_PLAYLIST_FILES = [ 'audio', 'image' ]

DIRECTORY_AUTOPLAY_ITEMS = [ 'audio', 'image' ]

DIRECTORY_ADD_RANDOM_PLAYLIST = [ 'audio' ]

DIRECTORY_AUTOPLAY_ITEMS = [ ]

video settings

VIDEO_MPLAYER_SUFFIX = [

'avi', 'mpg', 'mpeg', 'wmv', 'bin', 'rm',

'divx', 'ogm', 'vob', 'asf', 'm2v', 'm2p',

'mp4', 'viv', 'nuv', 'mov', 'iso', 'img',

'nsv', 'mkv', 'ts'

]

VIDEO_XINE_SUFFIX = [

'avi', 'mpg', 'mpeg', 'rm', 'divx', 'ogm',

'asf', 'm2v', 'm2p', 'mp4', 'mov', 'cue',

'ts', 'iso', 'vob'

]

VIDEO_ITEMS = [

('TV', '/freevo/tv'),

('Movies', '/freevo/movies'),

]

VIDEO_SHOW_DATA_DIR = '/freevo/tv'

audio settings

AUDIO_ITEMS = [

('Music Collection', '/freevo/music'),

]

AUDIO_COVER_REGEXP = 'front|-f'

AUDIO_PREFERED_PLAYER = 'mplayer'

AUDIO_SHOW_VIDEOFILES = True

image settings

IMAGE_ITEMS = [

('Image Collection', '/freevo/images'),

('Slide Shows', '/freevo/slides'),

]

IMAGEVIEWER_BLEND_MODE = 0

IMAGEVIEWER_DURATION = 6

game settings

GAMES_ITEMS = None

on screen display settings

OSD_DEFAULT_FONTNAME = 'Vera.ttf'

OSD_DEFAULT_FONTSIZE = 18

OSD_EXTRA_FONT_PATH = [ '/usr/share/fonts/truetype/' ]

OSD_FONT_ALIASES = { 'Arial_Bold.ttf' : 'VeraBd.ttf' }

OSD_OVERSCAN_X = 40

OSD_OVERSCAN_Y = 40

mplayer settings

MPLAYER_VO_DEV = CONF.display

#MPLAYER_AO_DEV = 'alsa:device=plug=digital'

MPLAYER_AO_DEV = 'alsa'

MPLAYER_ARGS_DEF = (('-autosync 100 -osd-duration 2000 -menu -nolirc -autoq 100 -screenw %s '

+ '-screenh %s -fs -subpos 92 -vf screenshot') % (CONF.width, CONF.height))

DVD_LANG_PREF = None

DVD_SUBTITLE_PREF = None

MPLAYER_NICE = -10

MPLAYER_ARGS = {

'dvd' : '-cache 8192',

'vcd' : '-cache 4096',

'cd' : '-cache 1024 -cdda speed = 2',

'tv' : '-nocache ',

'ivtv' : '-cache 8192',

'mpeg' : '-cache 8192 -subfont-text-scale 4 -utf8 -edl /tmp/mpeg.edl',

'avi' : '-cache 5000 -subfont-text-scale 4 -utf8 -idx -edl /tmp/avi.edl',

'rm' : '-cache 5000 -forceidx',

'rmvb' : '-cache 5000 -forceidx',

'webcam' : 'tv:// -tv driver = v4l:width=640:height=480:device=/dev/video1',

'default': '-cache 4096 -subfont-text-scale 4 -utf8 -edl /tmp/default.edl'

}

xine settings

XINE_VO_DEV = 'xv'

XINE_COMMAND = '%s -hide-gui -pq -g -B -geometry %sx%s+0+0 -no-splash' % (CONF.xine, CONF.width, CONF.height)

XINE_AO_DEV = 'alsa'

tv settings

TV_LOGOS = '/var/freevo/logos'

TV_RECORD_DIR = '/freevo/record'

TV_DRIVER = 'v4l2'

TV_DEVICE = '/dev/video0'

TV_INPUT = 4

TV_DRIVER_2 = 'v4l2'

TV_DEVICE_2 = '/dev/video1'

TV_INPUT_2 = 0

TV_OPTS = '-vop pp=ci'

TV_SETTINGS = '%s television %s %s' % (CONF.tv, CONF.chanlist, TV_DEVICE)

TV_DATEFORMAT = '%e-%b'

TV_TIMEFORMAT = '%H:%M'

TV_DATETIMEFORMAT = '%A %d %b %I:%M %p'

TV_RECORDFILE_MASK = '%%Y%%m%%d_%%H%%M %(progname)s - %(title)s'

TV_RECORD_SCHEDULE = '/var/freevo/record_schedule.xml'

TV_RECORD_SERVER_UID = 0

TV_RECORD_SERVER_GID = 100

TV_RECORD_PADDING = 3 * 60

TIMESHIFT_BUFFER_SIZE = 128

TIMESHIFT_ENCODE_CMD = 'mp1e -m3 -c%s -p%s -r14,100' % (TV_SETTINGS.split()[3], AUDIO_INPUT_DEVICE)

TIMESHIFT_BUFFER = '%s/timeshift.mpeg' % FREEVO_CACHEDIR

VCR_AUDIO = (

#':alsa:adevice=hw.0,0' +

':alsa' +

':amode = 1' +

':audiorate = 32000' +

':buffersize = 64')

TV_VIEW_SIZE = (720, 576)

TV_REC_SIZE = (640, 480)

TV_VIEW_OUTFMT = 'yuy2'

TV_REC_OUTFMT = 'yuy2'

VCR_CMD = (CONF.mencoder + ' ' +

'tv:// ' +

'-tv driver = %s:input=%d' % (TV_DRIVER, TV_INPUT) +

':norm = %s' % CONF.tv +

':channel = %(channel)s' +

':chanlist = %s' % CONF.chanlist +

':width = %d:height=%d' % (TV_REC_SIZE[0], TV_REC_SIZE[1]) +

':outfmt = %s' % TV_REC_OUTFMT +

':device = %s' % TV_DEVICE +

VCR_AUDIO +

' -ovc lavc -lavcopts ' +

'vcodec = mpeg4' +

':vbitrate = 1200:' +

'keyint = 30 ' +

'-oac mp3lame -lameopts ' +

'br = 128:cbr:mode=3 ' +

'-ffourcc divx ' +

'-endpos %(seconds)s ' +

'-o %(filename)s')

ivtv driver settings

TV_IVTV_OPTIONS = {

'input' : 4,

'resolution' : '720x576',

'aspect' : 2,

'audio_bitmask' : 0xE9,

'bframes' : 3,

'bitrate_mode' : 0,

'bitrate' : 8000000,

'bitrate_peak' : 9600000,

'dnr_mode' : 3,

'dnr_spatial' : 0,

'dnr_temporal' : 0,

'dnr_type' : 0,

'framerate' : 0,

'framespergop' : 12,

'gop_closure' : 1,

'pulldown' : 0,

'stream_type' : 14,

}

video groups

VIDEO_GROUPS = [

VideoGroup(vdev = '/dev/video0',

adev = '/dev/adsp',

input_type = 'tuner',

input_num = 4,

tuner_norm = CONF.tv,

tuner_chanlist = CONF.chanlist,

desc = 'PVR-350 Video Group',

group_type = 'ivtv',

recordable = True),

VideoGroup(vdev = '/dev/video1',

adev = None,

input_type = 'webcam',

desc = 'Logitech Quickcam',

group_type = 'webcam1',

recordable = False),

]

tv channels

TV_CHANNELS = [

('bbcprime.com', u'BBC Prime', 'K32', '', '0', '881'),

('cnn.com', u'CNN Int.', 'S13'),

('kika.de', u'KiKa', 'K21', ('1234567','0600','2059')),

('arte.de', u'Arte', 'K21', ('1234567','2100','2359'),

('1234567',u'0000','0559'), 0, 150),

('C1.sfdrs.ch', u'SF 1', 'K05', '', '0', '777'),

('C2.sfdrs.ch', u'SF 2', 'K10', '', '0', '777'),

('sfi.sfdrs.ch', u'SFinfo', 'K35'),

('C138.bluewin.ch', u'3+', 'S15'),

('bloomberg.com', u'Bloomberg', 'S23'),

('eurosport.de', u'Eurosport', 'S17'),

('C1.orf.at', u'ORF 1', 'S05', '', '0', '777'),

('C2.orf.at', u'ORF 2', 'K34', '', '0', '777'),

('C3sat.de', u'3sat', 'S10', '', '0', '777'),

('sat1.ch', u'SAT 1', 'S19', '', '0'),

('ard.de', u'ARD', 'K09', '', '0', '150'),

('kabel1.de', u'kabel eins', 'S04', '', '0', '149'),

('C3.br-online.de', u'Bayern 3', 'K29', '', '0', '150'),

('prosieben.ch', u'PRO 7', 'K27', '', '0', '149'),

('vox.de', u'VOX', 'K30', '', '0'),

('rtl.ch', u'RTL', 'K06', '', '0'),

('rtl2.de', u'RTL 2', 'K22'),

('super-rtl.de', u'Super RTL', 'S26'),

('wdr.de', u'WDR', 'S31', '', '0', '150'),

('zdf.de', u'ZDF', 'K11', '', '0', '777'),

('dsf.com', u'DSF', 'K24', '', '0'),

('n-tv.de', u'n-tv', 'K28', '', '0'),

('toponline.ch', u'Tele Züri', 'S09', '', '0'),

('swr.de', u'Südwest Fernsehen BW', 'S14', '', '0'),

('startv.ch', u'Star TV', 'S07', '', '0'),

('u1tv.ch', u'U1 TV STATION', 'S33', '', '0'),

('mtv.co.uk', u'MTV', 'S20', '', '0'),

('vivatv.ch', u'VIVA', 'S24', '', '0'),

('hse24.de', u'HSE24', 'S11', '', '0'),

('tf1.fr', u'TF 1', 'S12', '', '0'),

('france2.fr', u'France 2', 'S28', '', '0'),

('C1.tsr.ch', u'TSR 1', 'K07', '', '0'),

('C2.tsr.ch', u'TSR 2', 'K37', '', '0'),

('tv5.org', u'TV5 Monde', 'K31', '', '0'),

('raiuno.rai.it', u'RAI UNO', 'S08', '', '0'),

('C1.rtsi.ch', u'TSI 1', 'K08', '', '0'),

('C2.rtsi.ch', u'TSI 2', 'S18', '', '0'),

('canale5.it', u'Canale 5', 'K25', '', '0'),

('tve.es', u'TVE Int.', 'K12', '', 0, '0', '888'),

('telem1.ch', u'Tele M1**', 'S06', '', '0'),

('webcam', u'WebCam', '0', '', '1'),

]

tv frequencies

FREQUENCY_TABLE = {

'K32' : 559250,

'S13' : 246250,

'K34' : 575250,

'K21' : 471250,

'K05' : 175500,

'K10' : 211000,

'K35' : 583250,

'S23' : 319250,

'S17' : 274500,

'S05' : 133250,

'S15' : 260350,

'S10' : 168500,

'S27' : 351250,

'S19' : 288500,

'K09' : 203750,

'S04' : 126250,

'K29' : 535250,

'K27' : 519250,

'K30' : 543250,

'K06' : 182750,

'K22' : 479250,

'S26' : 343250,

'S31' : 383250,

'K11' : 218000,

'K24' : 495250,

'K31' : 551250,

'K28' : 527250,

'S09' : 161500,

'S14' : 253250,

'S07' : 147250,

'S33' : 399250,

'S20' : 295750,

'S24' : 327250,

'S11' : 232000,

'S12' : 239250,

'S28' : 359250,

'K07' : 189750,

'K37' : 599250,

'K25' : 503250,

'S08' : 154500,

'K08' : 196750,

'S18' : 281500,

'K12' : 225000,

'S16' : 267500,

'S06' : 140250,

}

xmltv settings

The xmltv grabber is failing as the process takes so long that the connection breaks and breaks the grab.

XMLTV_FILE = '/var/freevo/TV.xml'

XMLTV_GRABBER = 'tv_grab_ch'

XMLTV_SORT = 'tv_sort'

XMLTV_DAYS = 15

remote control

The remote control helper doesn't seem to work

ENABLE_NETWORK_REMOTE = 1

REMOTE_CONTROL_HOST = '127.0.0.1'

REMOTE_CONTROL_PORT = 16310

web browser settings

WWW_PORT = 80

WWW_USERS = { 'freevo' : 'freevo' }

debug settings

# Debugging settings

WAKEUP_DEBUG = 0

CHILDAPP_DEBUG = 1

MPLAYER_DEBUG = 1

TIME_DEBUG = 0

DEBUG = 0


Duncan Webb 2006-09-19 (generated by LaTeX2HTML Version 2002-2-1)