Class sh::tools::thumbnailproviders::FfmpegVideoThumbnailProvider

class sh::tools::thumbnailproviders::FfmpegVideoThumbnailProvider : public QObject, public sh::tools::ThumbnailProvider

Thumbnail provider for videos using the ffmpeg tool.

Public Functions

FfmpegVideoThumbnailProvider()
void getThumbnail(sh::filesystem::Operation *operation, std::shared_ptr<sh::filesystem::FilesystemNode> node, QString contentType, int width, int height, QIcon *icon) override

Public Static Functions

void doInitialize()
void doShutdown()

Private Members

QString pathToFfmpegTool
QString pathToFfprobeTool
const QRegularExpression reDuration
QMutex mutexReDuration

Private Static Attributes

std::shared_ptr<sh::configuration::ConfigurationValue> cfgvalFfmpegPath = sh::configuration::ConfigurationManager::instance()->registerConfigValue("sh::tools::thumbnailproviders::FfmpegVideoThumbnailProvider.FfmpegPath", "/usr/bin/ffmpeg", sh::configuration::ConfigurationValue::valueTypeLocalFilePath(), QObject::tr("Path to the 'ffmpeg' tool"), sh::configuration::ConfigurationCategory::CategoryExternalTools, QObject::tr("This tool is possibly used for getting infos about video files."))