Added tools

This commit is contained in:
emeric
2020-02-14 13:53:46 +01:00
parent ed3d728c02
commit d06dfde187
16 changed files with 56 additions and 38 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ before_install:
- git checkout 4.1.0 - git checkout 4.1.0
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr && sudo make install - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr && sudo make install
- popd - popd
script: cmake . && make && make test script: cmake -DCMAKE_BUILD_TYPE=Release . && make && make test
env: env:
global: global:
- MAKEFLAGS="-j 2" - MAKEFLAGS="-j 2"
+1
View File
@@ -2,5 +2,6 @@ add_compile_options(-Wall -Wextra -pedantic)
add_subdirectory(libs) add_subdirectory(libs)
add_subdirectory(lms) add_subdirectory(lms)
add_subdirectory(tools)
+1
View File
@@ -3,6 +3,7 @@ add_subdirectory(auth)
add_subdirectory(av) add_subdirectory(av)
add_subdirectory(cover) add_subdirectory(cover)
add_subdirectory(database) add_subdirectory(database)
add_subdirectory(metadata)
add_subdirectory(recommendation) add_subdirectory(recommendation)
add_subdirectory(scanner) add_subdirectory(scanner)
add_subdirectory(som) add_subdirectory(som)
+25
View File
@@ -0,0 +1,25 @@
add_library(lmsmetadata SHARED
impl/AvFormatParser.cpp
impl/TagLibParser.cpp
)
target_include_directories(lmsmetadata INTERFACE
include
)
target_include_directories(lmsmetadata PRIVATE
include
)
target_link_libraries(lmsmetadata PRIVATE
lmsav
tag
)
target_link_libraries(lmsmetadata PUBLIC
lmsutils
)
install(TARGETS lmsmetadata DESTINATION lib)
@@ -17,13 +17,12 @@
* along with LMS. If not, see <http://www.gnu.org/licenses/>. * along with LMS. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "AvFormat.hpp" #include "metadata/AvFormatParser.hpp"
#include <algorithm> #include <algorithm>
#include <iostream> #include <iostream>
#include "av/AvInfo.hpp" #include "av/AvInfo.hpp"
#include "utils/Logger.hpp" #include "utils/Logger.hpp"
#include "utils/String.hpp" #include "utils/String.hpp"
@@ -128,7 +127,7 @@ getArtists(const MetadataMap& metadataMap)
} }
std::optional<Track> std::optional<Track>
AvFormat::parse(const std::filesystem::path& p, bool debug) AvFormatParser::parse(const std::filesystem::path& p, bool debug)
{ {
Track track; Track track;
@@ -17,7 +17,7 @@
* along with LMS. If not, see <http://www.gnu.org/licenses/>. * along with LMS. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "TagLibParser.hpp" #include "metadata/TagLibParser.hpp"
#include <taglib/asffile.h> #include <taglib/asffile.h>
#include <taglib/id3v2tag.h> #include <taglib/id3v2tag.h>
@@ -19,13 +19,13 @@
#pragma once #pragma once
#include "MetaData.hpp" #include "metadata/IParser.hpp"
namespace MetaData namespace MetaData
{ {
// Parse that makes use of AvFormat // Parse that makes use of AvFormat
class AvFormat : public Parser class AvFormatParser : public IParser
{ {
public: public:
std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) override; std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) override;
@@ -26,7 +26,6 @@
#include <set> #include <set>
#include <vector> #include <vector>
//#include "utils/Utils.hpp"
#include "utils/UUID.hpp" #include "utils/UUID.hpp"
namespace MetaData namespace MetaData
@@ -73,7 +72,7 @@ namespace MetaData
std::string copyrightURL; std::string copyrightURL;
}; };
class Parser class IParser
{ {
public: public:
virtual std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) = 0; virtual std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) = 0;
@@ -19,13 +19,13 @@
#pragma once #pragma once
#include "MetaData.hpp" #include "metadata/IParser.hpp"
namespace MetaData namespace MetaData
{ {
// Parse that makes use of AvFormat // Parse that makes use of AvFormat
class TagLibParser : public Parser class TagLibParser : public IParser
{ {
public: public:
std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) override; std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) override;
+1 -4
View File
@@ -1,7 +1,5 @@
add_library(lmsscanner SHARED add_library(lmsscanner SHARED
impl/metadata/AvFormat.cpp
impl/metadata/TagLibParser.cpp
impl/MediaScanner.cpp impl/MediaScanner.cpp
impl/MediaScannerStats.cpp impl/MediaScannerStats.cpp
) )
@@ -15,10 +13,9 @@ target_include_directories(lmsscanner PRIVATE
) )
target_link_libraries(lmsscanner PRIVATE target_link_libraries(lmsscanner PRIVATE
lmsav
lmsdatabase lmsdatabase
lmsmetadata
lmsutils lmsutils
tag
) )
target_link_libraries(lmsscanner PUBLIC target_link_libraries(lmsscanner PUBLIC
+1 -1
View File
@@ -29,10 +29,10 @@
#include <boost/asio/system_timer.hpp> #include <boost/asio/system_timer.hpp>
#include "scanner/IMediaScanner.hpp"
#include "database/ScanSettings.hpp" #include "database/ScanSettings.hpp"
#include "database/Session.hpp" #include "database/Session.hpp"
#include "metadata/TagLibParser.hpp" #include "metadata/TagLibParser.hpp"
#include "scanner/IMediaScanner.hpp"
namespace Scanner { namespace Scanner {
+4
View File
@@ -0,0 +1,4 @@
add_subdirectory(metadata)
-4
View File
@@ -1,4 +0,0 @@
if BUILD_TOOLS
SUBDIRS = similarity similarity-parameters metadata
endif
+11
View File
@@ -0,0 +1,11 @@
add_executable(lms-metadata
LmsMetadata.cpp
)
target_link_libraries(lms-metadata PRIVATE
lmsmetadata
)
install(TARGETS lms-metadata DESTINATION bin)
+3 -4
View File
@@ -25,8 +25,7 @@
#include <Wt/WDate.h> #include <Wt/WDate.h>
#include "av/AvInfo.hpp" #include "metadata/AvFormatParser.hpp"
#include "metadata/AvFormat.hpp"
#include "metadata/TagLibParser.hpp" #include "metadata/TagLibParser.hpp"
#include "utils/StreamLogger.hpp" #include "utils/StreamLogger.hpp"
@@ -52,7 +51,7 @@ std::ostream& operator<<(std::ostream& os, const MetaData::Album& album)
void parse(MetaData::Parser& parser, const std::filesystem::path& file) void parse(MetaData::IParser& parser, const std::filesystem::path& file)
{ {
using namespace MetaData; using namespace MetaData;
@@ -155,7 +154,7 @@ int main(int argc, char *argv[])
{ {
std::cout << "Using av:" << std::endl; std::cout << "Using av:" << std::endl;
MetaData::AvFormat parser; MetaData::AvFormatParser parser;
parse(parser, file); parse(parser, file);
} }
-14
View File
@@ -1,14 +0,0 @@
bin_PROGRAMS = lms-metadata
lms_metadata_SOURCES = \
$(srcdir)/LmsMetadata.cpp \
$(top_srcdir)/src/av/AvInfo.cpp \
$(top_srcdir)/src/metadata/AvFormat.cpp \
$(top_srcdir)/src/metadata/TagLibParser.cpp \
$(top_srcdir)/src/utils/Logger.cpp \
$(top_srcdir)/src/utils/StreamLogger.cpp \
$(top_srcdir)/src/utils/String.cpp \
$(top_srcdir)/src/utils/UUID.cpp
lms_metadata_CXXFLAGS=-std=c++17 -I$(top_srcdir)/src -D_REENTRANT