I have ported MPD into OSD, in the before OSD version, mpd can work well
in OSD, that is, through gmpc(an mpd client) it can find the playlist
and play the ogg audio file, the sound comes from the OSD;
But there is a problem existing when I use the latest OSD version, that
is, gmpc can find the playlist, but when starting to play one ogg music,
error happens on OSD, the error messages are showed as followings:(which
show in OSD console)
bufmgr_get_buffer:227> BUFMGR(KM):: id 4: Buffer manager not
initialized.
bufmgr_hold_buffer:352> BUFMGR(KM): Buffer manager not initialized.
bufmgr_release_buffer:291> BUFMGR(KM): Buffer manager not initialized.
bufmgr_get_buffer:227> BUFMGR(KM):: id 4: Buffer manager not
initialized.
bufmgr_hold_buffer:352> BUFMGR(KM): Buffer manager not initialized.
bufmgr_release_buffer:291> BUFMGR(KM): Buffer manager not initialized.
.....(the same error message looping as the above)
----following is my setup steps:------------
port mpd to OSD steps:
1. compile and install libao
check out libao through: svn co http://svn.xiph.org/trunk/ao
That will create a directory containing the ao source named 'ao' in the current directory.
Next you need to download the patch which can be found Here. Save that patch into the ao directory that was created above. Now move into the ao directory and apply the patch/
cd ao
patch -p1 < ao-svn-nms-r1.patch
Now we need to edit src/plugins/nms/Makefile.am (assuming you're in the ao directory), you can do this with your favorite editor. The path to Neuros-Cooler/include and Neuros-Cooler/src/plugin need to be changed to where your Neuros-Cooler is checked out. When done editing, save the file and exit.
Next, go back to the ao directory and run the autogen.sh script.
./autogen.sh
The above script requires autoconf, automake 1.6 or later, aclocal 1.6 or later, and libtool. After this script runs its time to do a normal cross compile on libao.
then, compile and make:
CC=arm-linux-gcc ./configure --host=arm-linux --prefix=$INSTALL_MOD_PATH --disable-esd --disable-arts
make
make install
2. compile and install ogg; compile and install Tremor:
first, check out these two from followings:
* libogg sources: svn co http://svn.xiph.org/trunk/ogg/
* tremor sources: svn co http://svn.xiph.org/trunk/Tremor/
then go to ogg(Tremor) directory and run the autogen.sh script.
./autogen.sh
Cross-compile these in that order and intall them to the ODS's filesystem.
CC=arm-linux-gcc ./configure --host=arm-linux --prefix=$INSTALL_MOD_PATH
make
make install
3. compile and install mpd:
To get the mpd sources, I again recommend using the code in Subversion (at the time I did this with may1937, the latest release did not support libao).
svn co https://svn.musicpd.org/mpd/trunk/
then go to mpd directory and run the autogen.sh script.
./autogen.sh
Then cross-compile.
CC=arm-linux-gcc ./configure --host=arm-linux --build=i686-linux --prefix=/home/jack/neuros-bsp/rootfs/fs/ --disable-oss --with-tremor --enable-ao --disable-oggflac --disable-audiofile --includedir=/home/jack/neuros-bsp/rootfs/fs/include --libdir=/home/jack/neuros-bsp/rootfs/fs/lib
make
make install
----Thank you for your suggestion or advice;)