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;)