コード例 #1
0
void VideoEditor::setSourceFileName(QString sourceFileName)
{
    if (sourceFileName.startsWith("file:"))
        sourceFileName = QUrl(sourceFileName).toLocalFile();

    if (m_video == NULL || m_video->sourceUrl() == sourceFileName)
        return;

    Tardis::instance()->enqueueAction(Tardis::VideoSetSource, m_video->id(), m_video->sourceUrl(), sourceFileName);
    m_video->setSourceUrl(sourceFileName);

    if (m_video->isPicture())
    {
        QPixmap img(sourceFileName);
        if (!img.isNull())
        {
            m_video->setResolution(img.size());
            m_video->setTotalDuration(1000);
            slotMetaDataChanged("Resolution", QVariant(img.size()));
            slotMetaDataChanged("Duration", 1000);
        }
    }
    else
    {
        if (sourceFileName.contains("://"))
            m_mediaPlayer->setMedia(QUrl(sourceFileName));
        else
            m_mediaPlayer->setMedia(QUrl::fromLocalFile(sourceFileName));
    }

    emit sourceFileNameChanged(sourceFileName);
    emit mediaInfoChanged();
    emit functionNameChanged(m_video->name());
    emit loopedChanged();
}
コード例 #2
0
ファイル: audioeditor.cpp プロジェクト: mcallegari/qlcplus
void AudioEditor::setFunctionID(quint32 ID)
{
    m_audio = qobject_cast<Audio *>(m_doc->function(ID));
    FunctionEditor::setFunctionID(ID);
    if (m_audio != nullptr)
        connect(m_audio, SIGNAL(totalDurationChanged()),
                this, SIGNAL(mediaInfoChanged()));
}
コード例 #3
0
ファイル: audioeditor.cpp プロジェクト: mcallegari/qlcplus
void AudioEditor::setSourceFileName(QString sourceFileName)
{
    if (sourceFileName.startsWith("file:"))
        sourceFileName = QUrl(sourceFileName).toLocalFile();

    if (m_audio == nullptr || m_audio->getSourceFileName() == sourceFileName)
        return;

    Tardis::instance()->enqueueAction(Tardis::AudioSetSource, m_audio->id(), m_audio->getSourceFileName(), sourceFileName);
    m_audio->setSourceFileName(sourceFileName);
    emit sourceFileNameChanged(sourceFileName);
    emit mediaInfoChanged();
    emit functionNameChanged(m_audio->name());
    emit loopedChanged();
}
コード例 #4
0
void VideoEditor::slotMetaDataChanged(QString key, QVariant data)
{
    qDebug() << "Got meta data:" << key;
    infoMap.insert(key, data);
    emit mediaInfoChanged();
}
コード例 #5
0
void VideoEditor::slotDurationChanged(qint64 duration)
{
    infoMap.insert("Duration",Function::speedToString(duration));
    m_video->setTotalDuration(duration);
    emit mediaInfoChanged();
}