Changeset View
Changeset View
Standalone View
Standalone View
src/bin/projectclip.h
Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Line(s) | 78 | public: | |||
---|---|---|---|---|---|
135 | * @returns true if producer was changed | 135 | * @returns true if producer was changed | ||
136 | * . */ | 136 | * . */ | ||
137 | bool setProducer(std::shared_ptr<Mlt::Producer> producer, bool replaceProducer); | 137 | bool setProducer(std::shared_ptr<Mlt::Producer> producer, bool replaceProducer); | ||
138 | 138 | | |||
139 | /** @brief Returns true if this clip already has a producer. */ | 139 | /** @brief Returns true if this clip already has a producer. */ | ||
140 | bool isReady() const; | 140 | bool isReady() const; | ||
141 | 141 | | |||
142 | /** @brief Returns this clip's producer. */ | 142 | /** @brief Returns this clip's producer. */ | ||
143 | Mlt::Producer *thumbProducer(); | 143 | std::shared_ptr< Mlt::Producer > thumbProducer(); | ||
144 | 144 | | |||
145 | /** @brief Recursively disable/enable bin effects. */ | 145 | /** @brief Recursively disable/enable bin effects. */ | ||
146 | void setBinEffectsEnabled(bool enabled) override; | 146 | void setBinEffectsEnabled(bool enabled) override; | ||
147 | 147 | | |||
148 | /** @brief Set properties on this clip. TODO: should we store all in MLT or use extra m_properties ?. */ | 148 | /** @brief Set properties on this clip. TODO: should we store all in MLT or use extra m_properties ?. */ | ||
149 | void setProperties(const QMap<QString, QString> &properties, bool refreshPanel = false); | 149 | void setProperties(const QMap<QString, QString> &properties, bool refreshPanel = false); | ||
150 | 150 | | |||
151 | /** @brief Get an XML property from MLT produced xml. */ | 151 | /** @brief Get an XML property from MLT produced xml. */ | ||
▲ Show 20 Lines • Show All 66 Lines • ▼ Show 20 Line(s) | 214 | public slots: | |||
218 | /** @brief Extract image thumbnails for timeline. */ | 218 | /** @brief Extract image thumbnails for timeline. */ | ||
219 | void slotExtractImage(const QList<int> &frames); | 219 | void slotExtractImage(const QList<int> &frames); | ||
220 | 220 | | |||
221 | private: | 221 | private: | ||
222 | /** @brief Generate and store file hash if not available. */ | 222 | /** @brief Generate and store file hash if not available. */ | ||
223 | const QString getFileHash(); | 223 | const QString getFileHash(); | ||
224 | /** @brief Store clip url temporarily while the clip controller has not been created. */ | 224 | /** @brief Store clip url temporarily while the clip controller has not been created. */ | ||
225 | QString m_temporaryUrl; | 225 | QString m_temporaryUrl; | ||
226 | Mlt::Producer *m_thumbsProducer; | 226 | std::shared_ptr<Mlt::Producer> m_thumbsProducer; | ||
227 | QMutex m_producerMutex; | 227 | QMutex m_producerMutex; | ||
228 | QMutex m_thumbMutex; | 228 | QMutex m_thumbMutex; | ||
229 | QFuture<void> m_thumbThread; | 229 | QFuture<void> m_thumbThread; | ||
230 | QList<int> m_requestedThumbs; | 230 | QList<int> m_requestedThumbs; | ||
231 | const QString geometryWithOffset(const QString &data, int offset); | 231 | const QString geometryWithOffset(const QString &data, int offset); | ||
232 | void doExtractImage(); | 232 | void doExtractImage(); | ||
233 | void updateTimelineClips(QVector<int> roles); | 233 | void updateTimelineClips(QVector<int> roles); | ||
234 | 234 | | |||
Show All 15 Lines |