diff --git a/configure.ac b/configure.ac
index bb7364e9f24f9ec5bfcdc583404ecefa9dfb00ee..b31f330632631765ccd7507ff8e67b5fe99f95ee 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4283,7 +4283,7 @@ dnl Libnotify notification plugin
 dnl
 PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto])
 
-PKG_ENABLE_MODULES_VLC([MEDIALIBRARY], [medialibrary], [medialibrary >= 0.11.2], (medialibrary support), [auto])
+PKG_ENABLE_MODULES_VLC([MEDIALIBRARY], [medialibrary], [medialibrary >= 0.12.0], (medialibrary support), [auto])
 
 dnl
 dnl  Endianness check
diff --git a/modules/misc/medialibrary/medialibrary.cpp b/modules/misc/medialibrary/medialibrary.cpp
index 922f4234f7fe054a4e5fa03fc0858299fdc809e5..f699a1c036adc839a9e49cb0128fa4d5452269cb 100644
--- a/modules/misc/medialibrary/medialibrary.cpp
+++ b/modules/misc/medialibrary/medialibrary.cpp
@@ -150,10 +150,6 @@ void MediaLibrary::onMediaDeleted( std::set<int64_t> mediaIds )
     wrapEntityDeletedEventCallback( m_vlc_ml, mediaIds, VLC_ML_EVENT_MEDIA_DELETED );
 }
 
-void MediaLibrary::onMediaConvertedToExternal(std::set<int64_t>)
-{
-}
-
 void MediaLibrary::onArtistsAdded( std::vector<medialibrary::ArtistPtr> artists )
 {
     wrapEntityCreatedEventCallback<vlc_ml_artist_t>( m_vlc_ml, artists, VLC_ML_EVENT_ARTIST_ADDED );
@@ -416,6 +412,9 @@ MediaLibrary* MediaLibrary::create( vlc_medialibrary_module_t* vlc_ml )
     cfg.parserServices = {
         std::make_shared<MetadataExtractor>( VLC_OBJECT( vlc_ml ) )
     };
+    cfg.logLevel = var_InheritBool( VLC_OBJECT( vlc_ml ), "ml-verbose" ) ?
+                        medialibrary::LogLevel::Debug : medialibrary::LogLevel::Warning;
+    cfg.logger = std::make_shared<Logger>( VLC_OBJECT( vlc_ml ) );
 
     auto ml = NewMediaLibrary( dbPath.c_str(), mlFolderPath.c_str(), true, &cfg );
     if ( !ml )
@@ -429,10 +428,6 @@ MediaLibrary::MediaLibrary( vlc_medialibrary_module_t* vlc_ml,
     : m_vlc_ml( vlc_ml )
     , m_ml( ml )
 {
-    m_logger.reset( new Logger( VLC_OBJECT( m_vlc_ml ) ) );
-    m_ml->setVerbosity( var_InheritBool( VLC_OBJECT( m_vlc_ml ), "ml-verbose" ) ?
-                          medialibrary::LogLevel::Debug : medialibrary::LogLevel::Warning );
-    m_ml->setLogger( m_logger.get() );
 }
 
 bool MediaLibrary::Init()
diff --git a/modules/misc/medialibrary/medialibrary.h b/modules/misc/medialibrary/medialibrary.h
index 30a5ed1637f07c09f48c5785e2086a961d17ce72..ebeb9c1d37b53fd5d6556f8ebeb4e55424100192 100644
--- a/modules/misc/medialibrary/medialibrary.h
+++ b/modules/misc/medialibrary/medialibrary.h
@@ -189,7 +189,6 @@ private:
     MediaLibrary( vlc_medialibrary_module_t* vlc_ml, medialibrary::IMediaLibrary* ml );
 
     vlc_medialibrary_module_t* m_vlc_ml;
-    std::unique_ptr<Logger> m_logger;
     std::unique_ptr<medialibrary::IMediaLibrary> m_ml;
 
     vlc::threads::mutex m_mutex;
@@ -202,7 +201,6 @@ public:
     virtual void onMediaAdded(std::vector<medialibrary::MediaPtr> media) override;
     virtual void onMediaModified(std::set<int64_t> media) override;
     virtual void onMediaDeleted(std::set<int64_t> mediaIds) override;
-    virtual void onMediaConvertedToExternal(std::set<int64_t> mediaIds) override;
     virtual void onArtistsAdded(std::vector<medialibrary::ArtistPtr> artists) override;
     virtual void onArtistsModified(std::set<int64_t> artists) override;
     virtual void onArtistsDeleted(std::set<int64_t> artistsIds) override;