uShare是一款提供dlna服务端的应用程序,可以支持如下格式:
- Video files : asf, avi, dv, divx, wmv, mjpg, mjpeg, mpeg, mpg, mpe,
mp2p, vob, mp2t, m1v, m2v, m4v, m4p, mp4ps, ts, ogm, mkv,
rmvb, mov, qt
- Audio files : aac, ac3, aif, aiff, at3p, au, snd, dts, rmi, mp1, mp2, mp3,
mp4, mpa, ogg, wav, pcm, lpcm, l16, wma, mka, ra, rm, ram
- Images files : bmp, ico, gif, jpeg, jpg, jpe, pcd, png, pnm, ppm,
qti, qtf, qtif, tif, tiff
- Playlist files : pls, m3u, asx
我的cubieboard2上安装的是debian系统,只提供了minidlna,因其不支持mkv, rmvb。所以换到uShare上试,毕竟多一个选择嘛。
uShare的安装只需要两个依赖包,libupnp和libdlna。libupnp可以使用aptitude安装,libdlna需要自己从源码安装。
安装libdlna
wget http://libdlna.geexbox.org/releases/libdlna-0.2.4.tar.bz2
tar xvf libdlna-0.2.4
./configure
sudo make install
修改libupnp
我直接使用aptitude安装1:1.6.17-1.2的libupnp6后,在编译ushare.c文件出现问题,这里需要修改/usr/include/upnp/upnp.h
vi /usr/include/upnp/upnp.h
//在606行的struct Upnp_Action_Request定义中,有个成员struct sockaddr_storage CtrlPtIPAddr;修改为
struct sockaddr CtrlPtIPAddr;
首先修改src/ushare.c文件
vi src/ushare.c //修改191行的ip = request->CtrlPtIPAddr.sa_data;修改为
ip = request->CtrlPtIPAddr.addr;
然后就可以编译了
./configure --enable-dlna
make
sudo make install