c4e00f8a394adaf036b67eec2a9472b7cb01cbfa
LMS - Lightweight Media Server LMS is a free media streaming software, released under the GPLv3 license. It allows you to access your music and your videos using an https web interface. Features: - User management - Fast "Winamp-style" interface - Audio/Video transcode (including downsampling), based on the libav project (see https://www.libav.org/). - Custom API to access data using Protocol Buffers format over TCP/SSL (see https://github.com/google/protobuf/ and src/remote/proto) Please note LMS is still under development and will gain more features in the future. An android application is being developped as well. LMS is written entirely in C++. Therefore, it is suitable to run on embedded devices, where space and/or memory are limited. Please note some media files may require significant CPU usage to be transcoded. I) DEPENDENCIES Debian packages: g++ autoconf automake libboost-dev libavcodec-dev libwtdbosqlite-dev libwthttp-dev libwtdbo-dev libwt-dev libprotobuf-dev libconfig++-dev libprotobuf-dev protobuf-compiler libjpeg8-dev libavcodec-dev libavformat-dev libavutil-dev Warning: your distrib may provide an outdated wt library. Using the latest Wt (>= 3.3.3) is highly recommended (see http://www.webtoolkit.eu/wt) II) BUILD # autoreconf -vfi # mkdir build # cd build # ../configure (configure will complain if a mandatory library is missing) # make III) Setting up SSL materials (required by the SSL server and the web server) This is just a self-signed certificate example, you can set up a real CA if you want to. Generate a dh file: # openssl dhparam -out dh2048.pem 2048 Generate a self signed certificate: # openssl req -x509 -out cert.pem -keyout privkey.pem -newkey rsa:4096 IV) RUNNING In the build directory: # ./src/lms lms.conf Create the lms.conf file using the etc/lms.sample.conf - "ui.resources.approot" has to refer to the ui/approot/ directory. - "ui.resources.docroot" has to refer to the ui/docroot/ directory You must also link Wt's docroot (usually located in /usr/share/Wt) into that directory. Example: # ln -s /var/lms/docroot/resources /usr/share/Wt/resources Depending on your SSL parameters, you may be asked for the PEM passphrase to unlock the private key.
Description
Lightweight Music Server. Access your self-hosted music using a web interface.
http://lms-demo.poupon.dev
16 MiB
Languages
C++
98.7%
CMake
0.7%
JavaScript
0.3%
Python
0.2%