Added tools
This commit is contained in:
+1
-1
@@ -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"
|
||||
|
||||
@@ -2,5 +2,6 @@ add_compile_options(-Wall -Wextra -pedantic)
|
||||
|
||||
add_subdirectory(libs)
|
||||
add_subdirectory(lms)
|
||||
add_subdirectory(tools)
|
||||
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
+2
-3
@@ -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;
|
||||
|
||||
+1
-1
@@ -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>
|
||||
+2
-2
@@ -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;
|
||||
+1
-2
@@ -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;
|
||||
+2
-2
@@ -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,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
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
|
||||
add_subdirectory(metadata)
|
||||
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
if BUILD_TOOLS
|
||||
SUBDIRS = similarity similarity-parameters metadata
|
||||
endif
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
|
||||
add_executable(lms-metadata
|
||||
LmsMetadata.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(lms-metadata PRIVATE
|
||||
lmsmetadata
|
||||
)
|
||||
|
||||
install(TARGETS lms-metadata DESTINATION bin)
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user