FireFly Media Server › Firefly Media Server Forums › Firefly Media Server › Nightlies Feedback › Build firefly nightly on WL-500g › Reply To: Build firefly nightly on WL-500g
Hi Ron,
First feedback:
ipkg install http://ipkg.fireflymediaserver.org/wl500g/mt-daapd_svn-1529-1wl500_mipsel.ipk
ERROR: Cannot satisfy the following dependencies for mt-daapd:
libogg libvorbis libvorbis libogg libvorbisidec sqlite2 readline sqlite
So I missed some dependancies, no problem 😉
During the installation, I got the following message:
chown: unknown user name: guest
chown: unknown user name: guest
After installation (and off course adapting the config file) I tried to start the server.
For some strange reason, If I execute the daemon, this only takes 2 processes and the server is not up and running (cannot see server in itunes/soundbridge/web interface). I guess it has something to do with the authorizations for the user guest.
However, if I remove the songs.db and start it with the command
/opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf -f
the server was up & running (although in the foreground) and I could connect to it from iTunes and from my SB.
I again removed the songs.db and started the daemon, and this was the log.
2007-04-12 08:58:15 (00000400): Firefly Version svn-1529: Starting with debuglevel 7
2007-04-12 08:58:15 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/rsp.so (rsp/svn-1529)
2007-04-12 08:58:15 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/out-daap.so (daap/svn-1529)
2007-04-12 08:58:15 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1529)
2007-04-12 08:58:15 (00000400): Plugin loaded: ssc-script/svn-1529
2007-04-12 08:58:15 (00000400): Plugin loaded: daap/svn-1529
2007-04-12 08:58:15 (00000400): Plugin loaded: rsp/svn-1529
2007-04-12 08:58:15 (00000400): Starting rendezvous daemon
2007-04-12 08:58:15 (00000400): Starting signal handler
2007-04-12 09:00:20 (00000400): Error: enum_begin failed (error 1): Misc SQL Error: no such table: config
2007-04-12 09:00:20 (00000400): Can't get db version. New database?
2007-04-12 09:00:20 (00000400): Initializing database
2007-04-12 09:00:20 (00000400): Error: enum_begin failed (error 1): ?
2007-04-12 09:00:20 (00000400): Error: enum_begin failed (error 1): ?
2007-04-12 09:00:20 (00000400): Full reload...
2007-04-12 09:00:20 (00000400): Starting mp3 scan
<<< Here the scanning takes all my MP3's >>>
2007-04-12 09:07:25 (00000400): Starting playlist scan
2007-04-12 09:07:26 (00000400): Updating playlists
2007-04-12 09:07:33 (00000400): Scanned 5749 songs in 433 seconds
2007-04-12 09:07:33 (00000400): Starting web server from /opt/share/mt-daapd/admin-root on port 3689
2007-04-12 09:07:33 (00000400): Listening on port 3689
2007-04-12 09:07:34 (00000400): Starting server thread
If I then try to access the webinterface, I get the following items in my log
2007-04-12 09:08:05 (00000803): Read error: Is a directory
2007-04-12 09:11:36 (00000803): Thread 0: could not read: Connection reset by peer
2007-04-12 09:11:36 (00000c04): Read error: Is a directory
Can it also have something to do with the admin user (oleg’s firmware has no root user, only admin to my understanding)?
If I then kill the server and restart it, it keeps on hanging on the “initializing database” step:
2007-04-12 09:14:27 (00000400): Firefly Version svn-1529: Starting with debuglevel 7
2007-04-12 09:14:27 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/rsp.so (rsp/svn-1529)
2007-04-12 09:14:27 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/out-daap.so (daap/svn-1529)
2007-04-12 09:14:27 (00000400): Loaded plugin /opt/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1529)
2007-04-12 09:14:27 (00000400): Plugin loaded: ssc-script/svn-1529
2007-04-12 09:14:27 (00000400): Plugin loaded: daap/svn-1529
2007-04-12 09:14:27 (00000400): Plugin loaded: rsp/svn-1529
2007-04-12 09:14:27 (00000400): Starting rendezvous daemon
2007-04-12 09:14:27 (00000400): Starting signal handler
2007-04-12 09:14:27 (00000400): Initializing database
The Oleg firmware has by default (imo) only a “admin” account. I changed this in the config file (the runas parameter) but this didn’t help.
I guess it has something to do with authorizations (on the songs.db) ???
Any idea?
edit around 4 AM:
not true anymore, now it just passed the init db step, but I again have the problem with the “Read error: Is a directory”. So the same problem as Aborigine had, earlier this thread. Then you thought it was due to an old config file.
This is mine:
# $Id: mt-daapd.conf,v 1.3 2005/02/15 03:35:19 rpedde Exp $
#
# This is the mt-daapd config file.
#
# If you have problems or questions with the format of this file,
# direct your questions to [email protected].
#
# You can also check the website at http://mt-daapd.sourceforge.net,
# as there is a growing documentation library there, peer-supported
# forums and possibly more.
#
[general]
#
# web_root (required)
#
# Location of the admin web pages. If you installed from
# ipk, this is correct
#
web_root = /opt/share/mt-daapd/admin-root
#
# port (required)
#
# What port to listen on. It is possible to use a different
# port, but this is the default iTunes port
#
port = 3689
#
# admin_pw (required)
#
# This is the password to the administrative pages
#
# YOU SHOULD PROBABLY CHANGE THIS
#
admin_pw = d0dgethis
#
# db_dir (depricated)
#
# This is where mt-daapd stores its database of song information.
#
# If you installed this from .ipk, this is correct
#
#db_dir /opt/var/mt-daapd
#
# db_type/db_parms
#
# This specifies what kind of database you want, and where
# it should be kept. Valid db_types depend on what databases are
# compiled in, but can include "sqlite" and "sqlite3".
#
# db_parms is the parameters for that database backend. For sqlite and
# sqlite3, these parameters are the path to the database.
#
db_type = sqlite
db_parms = /opt/var/mt-daapd
#
# mp3_dir (required)
#
# Location of the mp3 files to share. This corresponds
# to a folder called "mp3" in the "DISK 1" share.
#
mp3_dir = /opt/share/mp3
#
# servername
#
# This is both the name of the server as advertised
# via rendezvous, and the name of the database
# exported via DAAP
#
# defaults to the hostname if not set
#
servername = gMusic
#
# runas (required)
#
# This is the user to drop privs to if running as
# root. If mt-daapd is not started as root, this
# configuration option is ignored. Notice that this
# must be specified whether the server is running
# as root or not.
#
# If you have not messed with permissions from
# the console, then this should work correctly
# without any strange chmods or anything.
#
runas = admin
#
# playlist (optional)
#
# This is the location of a playlist file.
# This is for Apple-style "Smart Playlists"
# See the mt-daapd.playlist file in the
# contrib directory for syntax and examples
#
# This doesn't control static playlists... these
# are controlled with the "process_m3u" directive
# below.
#
playlist = /opt/etc/mt-daapd/mt-daapd.playlist
#
# password (optional)
#
# This is the password required to listen to MP3 files
# i.e. the password that iTunes prompts for
#
#password=mp3
#
# extensions (optional)
#
# These are the file extensions that the daap server will
# try to index and serve. By default, it only indexes and
# serves .mp3 files. It can also server .m4a and .m4p files,
# and just about any other files, really. Unfortunately, while
# it can *attempt* to serve other files (.ogg?), iTunes won't
# play them. Perhaps this would be useful on Linux with
# Rhythmbox, once it understands daap. (hurry up!)
#
extensions = .mp3,.m4a,.m4p,.ogg,.flac
#
# ssc_extensions (optional)
#
# List of file extensions belonging to the files daap server
# performs internal format conversion and present to clients
# as WAV files. Extensions must also be present in 'extensions'
# configuration value, or files are not probed in the first
# place.
#
ssc_codectypes = ogg,flac,alac
#
# ssc_prog (optional)
#
# Program that is used in server side format conversion.
# Program must accept following command line syntax:
# ssc_prog filename offset
# Parameter filename is the real name of the file that is
# to be converted and streamed, offset is number of bytes
# that are skipped from the beginning of the _output_ file
# before streaming is started. The resulting wav file (or
# rest of the file after initial seek) is written to the
# standard output by the ssc_prog program. This is typically
# a script that is a front end for different conversion tools
# handling different formats.
#
ssc_prog = /opt/sbin/mt-daapd-ssc.sh
#
# logfile (optional)
#
# This is the file to log to. If this is not configured,
# then it will log to the syslog.
#
# Not that the -d switch will control the log verbosity.
# By default, it runs at log level 1. Log level 9 will churn
# out scads of useless debugging information. Values in between
# will vary the amount of logging you get.
#
logfile = /var/log/mt-daapd.log
#
# art_filename (optional)
#
# There is experimental support thanks to Hiren Joshi
# ([email protected]) for dynamically adding art to the id3v2
# header as it is streamed (!!). If you were using a music system
# like zina or andromeda, for example, with cover art called
# "_folderOpenImage.jpg", you could use the parameter
# art_file _folderOpenImage.jpg and if the file _folderOpenImage.jpg
# was located in the same folder as the .mp3 file, it would appear
# in iTunes. Cool, eh?
#
#art_filename = _folderOpenImage.jpg
#
# rescan_interval
#
# How often to check the file system to see if any mp3 files
# have been added or removed.
#
# if not specified, the default is 0, which disables background scanning.
#
# If background rescanning is disabled, a scan can still be forced from the
# "status" page of the administrative web interface
#
# Setting a rescan_interval lower than the time it takes to rescan
# won't hurt anything, it will just waste CPU, and make connect times
# to the daap server longer.
#
# We'll set it to 10 minutes
#
rescan_interval = 0
# always_scan
#
# The default behavior is not not do background rescans of the
# filesystem unless there are clients connected. The thought is to
# allow the drives to spin down unless they are in use. This might be
# of more importance in IDE drives that aren't designed to be run
# 24x7. Forcing a scan through the web interface will always work
# though, even if no users are connected.
always_scan = 0
#
# process_m3u
#
# By default m3u processing is turned off, since most m3u files
# sitting around in peoples mp3 directories have bad paths, and
# I hear about it. :)
#
# If you are sure your m3u files have good paths (i.e. unixly pathed,
# with relative paths relative to the directory the m3u is in), then
# you can turn on m3u processing by setting this directive to 1.
#
# I'm not sure "unixly" is a word, but you get the idea.
#
#process_m3u = 0
#
# scan_type
#
#
# This sets how aggressively mp3 files should be scanned to determine
# file length. There are three values:
#
# 0 (Normal)
# Just scan the first mp3 frame to try and calculate size. This will
# be accurate for most files, but VBR files without an Xing tag will
# probably have wildly inaccurate file times. This is the default.
#
# 1 (Aggressive)
# This checks the bitrates of 10 frames in the middle of the song.
# This will still be inaccurate for VBR files without an Xing tag,
# but they probably won't be quite as inaccurate as 0. This takes
# more time, obviously, although the time hit will only happen the
# first time you scan a particular file.
#
# 2 (Painfully aggressive)
# This walks through the entire song, counting the number of frames.
# This should result in accurate song times, but will take the most
# time. Again, this will only have to be incurred the first time
# the file is indexed.
#
# scan_type = 0
#
# compress
#
# Whether to use gzip content-encoding when transferring playlists etc.
# This was contributed as a patch by Ciamac Moallemi just prior to the 0.2.1
# release, and as such, hasn't gotten as much testing as other features.
#
# This feature should substantially speed up transfers of large databases
# and playlists, at least where bandwidth is limited.
#
# It will eventually default to 1, but currently it defaults to 0.
#
# DONT EVEN THINK OF ENABLING THIS ON THE SLUG. IT WILL
# DEGRADE PERFORMANCE MASSIVELY. It might even trigger the
# OOM killer, so just pretend this option isn't here.
#
# In fact, it's only here for the sake of completeness.
# compress = 0
[plugins]
plugin_dir = /opt/share/mt-daapd/plugins
plugins = rsp.so,ssc-script.so
To me, this seems to be okay.
However, I cannot access the webpages, nor the server, although the 4 processes are running.
To my opinion something to do with authorizations/executing user (as in foreground + creating new database makes firefly work perfectly), but not such a big specialist…
___________________________________