Reworked the project layout
This commit is contained in:
-115
@@ -1,115 +0,0 @@
|
||||
|
||||
AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip
|
||||
|
||||
SUBDIRS = test .
|
||||
|
||||
bin_PROGRAMS = lms
|
||||
|
||||
lms_SOURCES = \
|
||||
$(top_srcdir)/main/main.cpp \
|
||||
$(top_srcdir)/av/CodecContext.cpp \
|
||||
$(top_srcdir)/av/Common.cpp \
|
||||
$(top_srcdir)/av/Dictionary.cpp \
|
||||
$(top_srcdir)/av/FormatContext.cpp \
|
||||
$(top_srcdir)/av/InputFormatContext.cpp \
|
||||
$(top_srcdir)/av/Stream.cpp \
|
||||
$(top_srcdir)/config/ConfigReader.cpp \
|
||||
$(top_srcdir)/cover/CoverArt.cpp \
|
||||
$(top_srcdir)/cover/CoverArtGrabber.cpp \
|
||||
$(top_srcdir)/database/Artist.cpp \
|
||||
$(top_srcdir)/database/Genre.cpp \
|
||||
$(top_srcdir)/database/Release.cpp \
|
||||
$(top_srcdir)/database/MediaDirectory.cpp \
|
||||
$(top_srcdir)/database/Track.cpp \
|
||||
$(top_srcdir)/database/DatabaseHandler.cpp \
|
||||
$(top_srcdir)/database/SqlQuery.cpp \
|
||||
$(top_srcdir)/database/Video.cpp \
|
||||
$(top_srcdir)/database/User.cpp \
|
||||
$(top_srcdir)/database-updater/DatabaseUpdater.cpp \
|
||||
$(top_srcdir)/database-updater/Checksum.cpp \
|
||||
$(top_srcdir)/logger/Logger.cpp \
|
||||
$(top_srcdir)/metadata/AvFormat.cpp \
|
||||
$(top_srcdir)/metadata/Utils.cpp \
|
||||
$(top_srcdir)/remote/server/Connection.cpp \
|
||||
$(top_srcdir)/remote/server/ConnectionManager.cpp \
|
||||
$(top_srcdir)/remote/server/AudioCollectionRequestHandler.cpp \
|
||||
$(top_srcdir)/remote/server/AuthRequestHandler.cpp \
|
||||
$(top_srcdir)/remote/server/MediaRequestHandler.cpp \
|
||||
$(top_srcdir)/remote/server/RequestHandler.cpp \
|
||||
$(top_srcdir)/remote/server/Server.cpp \
|
||||
$(top_srcdir)/service/ServiceManager.cpp \
|
||||
$(top_srcdir)/service/DatabaseUpdateService.cpp \
|
||||
$(top_srcdir)/service/UserInterfaceService.cpp \
|
||||
$(top_srcdir)/service/RemoteServerService.cpp \
|
||||
$(top_srcdir)/transcode/AvConvTranscoder.cpp \
|
||||
$(top_srcdir)/transcode/Format.cpp \
|
||||
$(top_srcdir)/transcode/Parameters.cpp \
|
||||
$(top_srcdir)/transcode/InputMediaFile.cpp \
|
||||
$(top_srcdir)/ui/LmsApplication.cpp \
|
||||
$(top_srcdir)/ui/LmsHome.cpp \
|
||||
$(top_srcdir)/ui/auth/LmsAuth.cpp \
|
||||
$(top_srcdir)/ui/audio/AudioWidget.cpp \
|
||||
$(top_srcdir)/ui/audio/AudioDatabaseWidget.cpp \
|
||||
$(top_srcdir)/ui/audio/AudioMediaPlayerWidget.cpp \
|
||||
$(top_srcdir)/ui/audio/SearchFilterWidget.cpp \
|
||||
$(top_srcdir)/ui/audio/TableFilterWidget.cpp \
|
||||
$(top_srcdir)/ui/audio/TrackWidget.cpp \
|
||||
$(top_srcdir)/ui/common/DirectoryValidator.cpp \
|
||||
$(top_srcdir)/ui/common/SessionData.cpp \
|
||||
$(top_srcdir)/ui/resource/AvConvTranscodeStreamResource.cpp \
|
||||
$(top_srcdir)/ui/video/VideoWidget.cpp \
|
||||
$(top_srcdir)/ui/video/VideoDatabaseWidget.cpp \
|
||||
$(top_srcdir)/ui/video/VideoMediaPlayerWidget.cpp \
|
||||
$(top_srcdir)/ui/video/VideoParametersDialog.cpp \
|
||||
$(top_srcdir)/ui/settings/Settings.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsAccountFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsAudioFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsDatabaseFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsFirstConnectionFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsMediaDirectories.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsMediaDirectoryFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsUserFormView.cpp \
|
||||
$(top_srcdir)/ui/settings/SettingsUsers.cpp
|
||||
|
||||
nodist_lms_SOURCES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
BUILT_SOURCES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
MOSTLYCLEANFILES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
|
||||
%.pb.cc %.pb.h: $(top_srcdir)/remote/proto/%.proto
|
||||
$(PROTOC) --proto_path=$(top_srcdir)/remote/proto/ --cpp_out=$(builddir)/ $^
|
||||
|
||||
lms_CXXFLAGS=-DBOOST_LOG_DYN_LINK -std=c++11 -Wall -I$(top_srcdir)/boost/ -I$(top_srcdir)/ui -I$(top_srcdir)/remote
|
||||
|
||||
@@ -1,22 +1,21 @@
|
||||
LMS - Lightweight Media Server
|
||||
|
||||
|
||||
LMS is a free media streaming software, released on the GPLv3 license.
|
||||
It allows you to access your music and your videos using the following built-in services:
|
||||
- Web server
|
||||
- TCP/SSL server using a Protocol Buffers format (see https://github.com/google/protobuf/)
|
||||
|
||||
LMS is written entirely in C++. Therefore, it is suitable to run on embedded devices, where space and/or memory are limited.
|
||||
Please note the media files are transcoded on-the-fly: this reduces compatibility issues but may need a lot of computation power, at least for HD videos.
|
||||
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
|
||||
- "Winamp-style" interface
|
||||
- Audio/Video transcode (including downsampling), based on the libav project (see https://www.libav.org/)
|
||||
- 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 trasncoded.
|
||||
|
||||
I) DEPENCIES
|
||||
|
||||
Debian packages:
|
||||
@@ -50,7 +49,7 @@ Generate a self signed certificate:
|
||||
IV) RUNNING
|
||||
|
||||
In the build directory:
|
||||
# ./lms lms.conf
|
||||
# ./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.
|
||||
|
||||
@@ -142,6 +142,7 @@ AC_CHECK_LIB([wt],
|
||||
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
src/Makefile
|
||||
test/Makefile])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
+109
@@ -0,0 +1,109 @@
|
||||
bin_PROGRAMS = lms
|
||||
|
||||
lms_SOURCES = \
|
||||
$(srcdir)/main/main.cpp \
|
||||
$(srcdir)/av/CodecContext.cpp \
|
||||
$(srcdir)/av/Common.cpp \
|
||||
$(srcdir)/av/Dictionary.cpp \
|
||||
$(srcdir)/av/FormatContext.cpp \
|
||||
$(srcdir)/av/InputFormatContext.cpp \
|
||||
$(srcdir)/av/Stream.cpp \
|
||||
$(srcdir)/config/ConfigReader.cpp \
|
||||
$(srcdir)/cover/CoverArt.cpp \
|
||||
$(srcdir)/cover/CoverArtGrabber.cpp \
|
||||
$(srcdir)/database/Artist.cpp \
|
||||
$(srcdir)/database/Genre.cpp \
|
||||
$(srcdir)/database/Release.cpp \
|
||||
$(srcdir)/database/MediaDirectory.cpp \
|
||||
$(srcdir)/database/Track.cpp \
|
||||
$(srcdir)/database/DatabaseHandler.cpp \
|
||||
$(srcdir)/database/SqlQuery.cpp \
|
||||
$(srcdir)/database/Video.cpp \
|
||||
$(srcdir)/database/User.cpp \
|
||||
$(srcdir)/database-updater/DatabaseUpdater.cpp \
|
||||
$(srcdir)/database-updater/Checksum.cpp \
|
||||
$(srcdir)/logger/Logger.cpp \
|
||||
$(srcdir)/metadata/AvFormat.cpp \
|
||||
$(srcdir)/metadata/Utils.cpp \
|
||||
$(srcdir)/remote/server/Connection.cpp \
|
||||
$(srcdir)/remote/server/ConnectionManager.cpp \
|
||||
$(srcdir)/remote/server/AudioCollectionRequestHandler.cpp \
|
||||
$(srcdir)/remote/server/AuthRequestHandler.cpp \
|
||||
$(srcdir)/remote/server/MediaRequestHandler.cpp \
|
||||
$(srcdir)/remote/server/RequestHandler.cpp \
|
||||
$(srcdir)/remote/server/Server.cpp \
|
||||
$(srcdir)/service/ServiceManager.cpp \
|
||||
$(srcdir)/service/DatabaseUpdateService.cpp \
|
||||
$(srcdir)/service/UserInterfaceService.cpp \
|
||||
$(srcdir)/service/RemoteServerService.cpp \
|
||||
$(srcdir)/transcode/AvConvTranscoder.cpp \
|
||||
$(srcdir)/transcode/Format.cpp \
|
||||
$(srcdir)/transcode/Parameters.cpp \
|
||||
$(srcdir)/transcode/InputMediaFile.cpp \
|
||||
$(srcdir)/ui/LmsApplication.cpp \
|
||||
$(srcdir)/ui/LmsHome.cpp \
|
||||
$(srcdir)/ui/auth/LmsAuth.cpp \
|
||||
$(srcdir)/ui/audio/AudioWidget.cpp \
|
||||
$(srcdir)/ui/audio/AudioDatabaseWidget.cpp \
|
||||
$(srcdir)/ui/audio/AudioMediaPlayerWidget.cpp \
|
||||
$(srcdir)/ui/audio/SearchFilterWidget.cpp \
|
||||
$(srcdir)/ui/audio/TableFilterWidget.cpp \
|
||||
$(srcdir)/ui/audio/TrackWidget.cpp \
|
||||
$(srcdir)/ui/common/DirectoryValidator.cpp \
|
||||
$(srcdir)/ui/common/SessionData.cpp \
|
||||
$(srcdir)/ui/resource/AvConvTranscodeStreamResource.cpp \
|
||||
$(srcdir)/ui/video/VideoWidget.cpp \
|
||||
$(srcdir)/ui/video/VideoDatabaseWidget.cpp \
|
||||
$(srcdir)/ui/video/VideoMediaPlayerWidget.cpp \
|
||||
$(srcdir)/ui/video/VideoParametersDialog.cpp \
|
||||
$(srcdir)/ui/settings/Settings.cpp \
|
||||
$(srcdir)/ui/settings/SettingsAccountFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsAudioFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsDatabaseFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsFirstConnectionFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsMediaDirectories.cpp \
|
||||
$(srcdir)/ui/settings/SettingsMediaDirectoryFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsUserFormView.cpp \
|
||||
$(srcdir)/ui/settings/SettingsUsers.cpp
|
||||
|
||||
nodist_lms_SOURCES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
BUILT_SOURCES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
MOSTLYCLEANFILES = \
|
||||
$(builddir)/auth.pb.cc \
|
||||
$(builddir)/auth.pb.h \
|
||||
$(builddir)/collection.pb.cc \
|
||||
$(builddir)/collection.pb.h \
|
||||
$(builddir)/common.pb.cc \
|
||||
$(builddir)/common.pb.h \
|
||||
$(builddir)/media.pb.cc \
|
||||
$(builddir)/media.pb.h \
|
||||
$(builddir)/messages.pb.cc \
|
||||
$(builddir)/messages.pb.h
|
||||
|
||||
%.pb.cc %.pb.h: $(srcdir)/remote/proto/%.proto
|
||||
$(PROTOC) --proto_path=$(srcdir)/remote/proto/ --cpp_out=$(builddir)/ $^
|
||||
|
||||
lms_CXXFLAGS=-DBOOST_LOG_DYN_LINK -std=c++11 -Wall -I$(top_srcdir) -I$(srcdir)/ui -I$(srcdir)/remote
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user