diff --git a/modules/gui/qt/medialibrary/medialib.cpp b/modules/gui/qt/medialibrary/medialib.cpp index c0b06339a9..cdccf4b1b9 100644 --- a/modules/gui/qt/medialibrary/medialib.cpp +++ b/modules/gui/qt/medialibrary/medialib.cpp @@ -35,6 +35,9 @@ MediaLib::MediaLib(intf_thread_t *_intf, QObject *_parent) { m_event_cb.reset( vlc_ml_event_register_callback( m_ml, MediaLib::onMediaLibraryEvent, this ) ); + + /* https://xkcd.com/221/ */ + m_threadPool.setMaxThreadCount(4); } void MediaLib::addToPlaylist(const QString& mrl, const QStringList* options) diff --git a/modules/gui/qt/medialibrary/medialib.hpp b/modules/gui/qt/medialibrary/medialib.hpp index d7646ea999..2274c359cd 100644 --- a/modules/gui/qt/medialibrary/medialib.hpp +++ b/modules/gui/qt/medialibrary/medialib.hpp @@ -28,6 +28,7 @@ #include #include #include +#include #include @@ -65,6 +66,8 @@ public: vlc_medialibrary_t* vlcMl(); + QThreadPool &threadPool() { return m_threadPool; } + signals: void reloadStarted(); void reloadCompleted(); @@ -90,4 +93,5 @@ private: vlc_medialibrary_t* m_ml; std::unique_ptr> m_event_cb; + QThreadPool m_threadPool; };