double dar() const;
/** @brief Returns sample aspect ratio. */
double sar() const;
+ /** @brief If monitor is active, refresh it. */
+ void refreshIfActive();
+ /** @brief Start the MLT monitor consumer. */
+ void startConsumer();
/*
* Playlist manipulation.
Mlt::Producer *checkSlowMotionProducer(Mlt::Producer *prod, QDomElement element);
int mltInsertClip(ItemInfo info, QDomElement element, Mlt::Producer *prod, bool overwrite = false, bool push = false);
bool mltUpdateClip(Mlt::Tractor *tractor, ItemInfo info, QDomElement element, Mlt::Producer *prod);
- void mltCutClip(int track, GenTime position);
+ bool mltCutClip(int track, GenTime position);
void mltInsertSpace(QMap <int, int> trackClipStartList, QMap <int, int> trackTransitionStartList, int track, const GenTime &duration, const GenTime &timeOffset);
int mltGetSpaceLength(const GenTime &pos, int track, bool fromBlankStart);
bool mltResizeClipEnd(ItemInfo info, GenTime clipDuration);
bool mltResizeClipStart(ItemInfo info, GenTime diff);
- bool mltResizeClipCrop(ItemInfo info, GenTime diff);
+ bool mltResizeClipCrop(ItemInfo info, GenTime newCropStart);
bool mltMoveClip(int startTrack, int endTrack, GenTime pos, GenTime moveStart, Mlt::Producer *prod, bool overwrite = false, bool insert = false);
bool mltMoveClip(int startTrack, int endTrack, int pos, int moveStart, Mlt::Producer *prod, bool overwrite = false, bool insert = false);
bool mltRemoveClip(int track, GenTime position);
static bool getBlackMagicOutputDeviceList(KComboBox *devicelist);
/** @brief Frame rendering is handeled by Kdenlive, don't show video through SDL display */
void disablePreview(bool disable);
+ int requestedSeekPosition;
private:
void slotOsdTimeout();
/** @brief Process the clip info requests (in a separate thread). */
void processFileProperties();
+ /** @brief A clip with multiple video streams was found, ask what to do. */
+ void slotMultiStreamProducerFound(const QString path, QList<int> audio_list, QList<int> video_list, stringMap data);
+
+ void slotCheckSeeking();
signals:
void refreshDocumentProducers(bool displayRatioChanged, bool fpsChanged);
/** @brief A proxy clip is missing, ask for creation. */
void requestProxy(QString);
+ /** @brief A multiple stream clip was found. */
+ void multiStreamFound(const QString &,QList<int>,QList<int>,stringMap data);
/** @brief A frame's image has to be shown.
* Used in Mac OS X. */
void showImageSignal(QImage);
void showAudioSignal(const QByteArray &);
+ void addClip(const KUrl &, stringMap);
+ void checkSeeking();
public slots: