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
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr && sudo make install
- popd
script: cmake . && make && make test
script: cmake -DCMAKE_BUILD_TYPE=Release . && make && make test
env:
global:
- MAKEFLAGS="-j 2"
+1
View File
@@ -2,5 +2,6 @@ add_compile_options(-Wall -Wextra -pedantic)
add_subdirectory(libs)
add_subdirectory(lms)
add_subdirectory(tools)
+1
View File
@@ -3,6 +3,7 @@ add_subdirectory(auth)
add_subdirectory(av)
add_subdirectory(cover)
add_subdirectory(database)
add_subdirectory(metadata)
add_subdirectory(recommendation)
add_subdirectory(scanner)
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/>.
*/
#include "AvFormat.hpp"
#include "metadata/AvFormatParser.hpp"
#include <algorithm>
#include <iostream>
#include "av/AvInfo.hpp"
#include "utils/Logger.hpp"
#include "utils/String.hpp"
@@ -128,7 +127,7 @@ getArtists(const MetadataMap& metadataMap)
}
std::optional<Track>
AvFormat::parse(const std::filesystem::path& p, bool debug)
AvFormatParser::parse(const std::filesystem::path& p, bool debug)
{
Track track;
@@ -17,7 +17,7 @@
* along with LMS. If not, see <http://www.gnu.org/licenses/>.
*/
#include "TagLibParser.hpp"
#include "metadata/TagLibParser.hpp"
#include <taglib/asffile.h>
#include <taglib/id3v2tag.h>
@@ -19,13 +19,13 @@
#pragma once
#include "MetaData.hpp"
#include "metadata/IParser.hpp"
namespace MetaData
{
// Parse that makes use of AvFormat
class AvFormat : public Parser
class AvFormatParser : public IParser
{
public:
std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) override;
@@ -26,7 +26,6 @@
#include <set>
#include <vector>
//#include "utils/Utils.hpp"
#include "utils/UUID.hpp"
namespace MetaData
@@ -73,7 +72,7 @@ namespace MetaData
std::string copyrightURL;
};
class Parser
class IParser
{
public:
virtual std::optional<Track> parse(const std::filesystem::path& p, bool debug = false) = 0;
@@ -19,13 +19,13 @@
#pragma once
#include "MetaData.hpp"
#include "metadata/IParser.hpp"
namespace MetaData
{
// Parse that makes use of AvFormat
class TagLibParser : public Parser
class TagLibParser : public IParser
{
public:
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
impl/metadata/AvFormat.cpp
impl/metadata/TagLibParser.cpp
impl/MediaScanner.cpp
impl/MediaScannerStats.cpp
)
@@ -15,10 +13,9 @@ target_include_directories(lmsscanner PRIVATE
)
target_link_libraries(lmsscanner PRIVATE
lmsav
lmsdatabase
lmsmetadata
lmsutils
tag
)
target_link_libraries(lmsscanner PUBLIC
+1 -1
View File
@@ -29,10 +29,10 @@
#include <boost/asio/system_timer.hpp>
#include "scanner/IMediaScanner.hpp"
#include "database/ScanSettings.hpp"
#include "database/Session.hpp"
#include "metadata/TagLibParser.hpp"
#include "scanner/IMediaScanner.hpp"
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 "av/AvInfo.hpp"
#include "metadata/AvFormat.hpp"
#include "metadata/AvFormatParser.hpp"
#include "metadata/TagLibParser.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;
@@ -155,7 +154,7 @@ int main(int argc, char *argv[])
{
std::cout << "Using av:" << std::endl;
MetaData::AvFormat parser;
MetaData::AvFormatParser parser;
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