X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fkdenlivesettingsdialog.cpp;h=affc5e1fc14271697832afd384cd8a37d0752ee4;hb=baee85e1b80475ee7a145c9752b51df6ba5b3ad7;hp=2a1ccaa273666fa9a23532b041a4d6140d27720b;hpb=73e4527d1abd954f088b317e59c8f0cfc1cd2e16;p=kdenlive diff --git a/src/kdenlivesettingsdialog.cpp b/src/kdenlivesettingsdialog.cpp index 2a1ccaa2..affc5e1f 100644 --- a/src/kdenlivesettingsdialog.cpp +++ b/src/kdenlivesettingsdialog.cpp @@ -75,6 +75,11 @@ KdenliveSettingsDialog::KdenliveSettingsDialog(QWidget * parent) : m_configCapture.setupUi(p4); m_page4 = addPage(p4, i18n("Capture"), "media-record"); m_configCapture.tabWidget->setCurrentIndex(KdenliveSettings::defaultcapture()); +#ifdef Q_WS_MAC + m_configCapture.tabWidget->setEnabled(false); + m_configCapture.kcfg_defaultcapture->setEnabled(false); + m_configCapture.label->setText(i18n("Capture is not yet available on OS X.")); +#endif QWidget *p5 = new QWidget; m_configShuttle.setupUi(p5); @@ -91,6 +96,10 @@ KdenliveSettingsDialog::KdenliveSettingsDialog(QWidget * parent) : QWidget *p6 = new QWidget; m_configSdl.setupUi(p6); + + // Disable drop B frames, see Kdenlive issue #1330 + m_configSdl.groupBox->setHidden(true); + m_page6 = addPage(p6, i18n("Playback"), "media-playback-start"); QWidget *p7 = new QWidget; @@ -112,6 +121,8 @@ KdenliveSettingsDialog::KdenliveSettingsDialog(QWidget * parent) : connect(m_configCapture.kcfg_video4vdevice, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); connect(m_configCapture.kcfg_video4adevice, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); + connect(m_configCapture.kcfg_video4vcodec, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); + connect(m_configCapture.kcfg_video4acodec, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); connect(m_configCapture.kcfg_video4vformat, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); connect(m_configCapture.kcfg_video4aformat, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); connect(m_configCapture.kcfg_video4size, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); @@ -207,12 +218,14 @@ void KdenliveSettingsDialog::initDevices() { // Fill audio drivers m_configSdl.kcfg_audio_driver->addItem(i18n("Automatic"), QString()); +#ifndef Q_WS_MAC m_configSdl.kcfg_audio_driver->addItem(i18n("OSS"), "dsp"); m_configSdl.kcfg_audio_driver->addItem(i18n("ALSA"), "alsa"); m_configSdl.kcfg_audio_driver->addItem(i18n("PulseAudio"), "pulse"); m_configSdl.kcfg_audio_driver->addItem(i18n("OSS with DMA access"), "dma"); m_configSdl.kcfg_audio_driver->addItem(i18n("Esound daemon"), "esd"); m_configSdl.kcfg_audio_driver->addItem(i18n("ARTS daemon"), "artsc"); +#endif if (!KdenliveSettings::audiodrivername().isEmpty()) for (int i = 1; i < m_configSdl.kcfg_audio_driver->count(); i++) { @@ -224,6 +237,7 @@ void KdenliveSettingsDialog::initDevices() // Fill video drivers m_configSdl.kcfg_video_driver->addItem(i18n("Automatic"), QString()); +#ifndef Q_WS_MAC m_configSdl.kcfg_video_driver->addItem(i18n("XVideo"), "x11"); m_configSdl.kcfg_video_driver->addItem(i18n("X11"), "x11_noaccel"); m_configSdl.kcfg_video_driver->addItem(i18n("XFree86 DGA 2.0"), "dga"); @@ -233,6 +247,7 @@ void KdenliveSettingsDialog::initDevices() m_configSdl.kcfg_video_driver->addItem(i18n("SVGAlib"), "svgalib"); m_configSdl.kcfg_video_driver->addItem(i18n("General graphics interface"), "ggi"); m_configSdl.kcfg_video_driver->addItem(i18n("Ascii art library"), "aalib"); +#endif // Fill the list of audio playback devices m_configSdl.kcfg_audio_device->addItem(i18n("Default"), QString()); @@ -392,9 +407,9 @@ void KdenliveSettingsDialog::slotUpdateShuttleDevice(int ix) void KdenliveSettingsDialog::rebuildVideo4Commands() { QString captureCommand; - if (!m_configCapture.kcfg_video4adevice->text().isEmpty()) captureCommand = "-f " + m_configCapture.kcfg_video4aformat->text() + " -i " + m_configCapture.kcfg_video4adevice->text(); + if (!m_configCapture.kcfg_video4adevice->text().isEmpty()) captureCommand = "-f " + m_configCapture.kcfg_video4aformat->text() + " -i " + m_configCapture.kcfg_video4adevice->text() + " -acodec " + m_configCapture.kcfg_video4acodec->text(); - captureCommand += " -f " + m_configCapture.kcfg_video4vformat->text() + " -s " + m_configCapture.kcfg_video4size->text() + " -r " + QString::number(m_configCapture.kcfg_video4rate->value()) + " -i " + m_configCapture.kcfg_video4vdevice->text(); + captureCommand += " -f " + m_configCapture.kcfg_video4vformat->text() + " -s " + m_configCapture.kcfg_video4size->text() + " -r " + QString::number(m_configCapture.kcfg_video4rate->value()) + " -i " + m_configCapture.kcfg_video4vdevice->text() + " -vcodec " + m_configCapture.kcfg_video4vcodec->text(); m_configCapture.kcfg_video4capture->setText(captureCommand); } @@ -407,13 +422,25 @@ void KdenliveSettingsDialog::updateSettings() KdenliveSettings::setDefault_profile(m_defaultPath); bool resetProfile = false; + bool updateCapturePath = false; if (m_configEnv.capturefolderurl->url().path() != KdenliveSettings::capturefolder()) { - kDebug() << "/// CAPT FOLDER UPDATED"; KdenliveSettings::setCapturefolder(m_configEnv.capturefolderurl->url().path()); - emit updateCaptureFolder(); + updateCapturePath = true; } + if (m_configCapture.kcfg_dvgrabfilename->text() != KdenliveSettings::dvgrabfilename()) { + KdenliveSettings::setDvgrabfilename(m_configCapture.kcfg_dvgrabfilename->text()); + updateCapturePath = true; + } + + if ((uint) m_configCapture.kcfg_firewireformat->currentIndex() != KdenliveSettings::firewireformat()) { + KdenliveSettings::setFirewireformat(m_configCapture.kcfg_firewireformat->currentIndex()); + updateCapturePath = true; + } + + if (updateCapturePath) emit updateCaptureFolder(); + QString value = m_configCapture.kcfg_rmd_alsa_device->itemData(m_configCapture.kcfg_rmd_alsa_device->currentIndex()).toString(); if (value != KdenliveSettings::rmd_alsadevicename()) { KdenliveSettings::setRmd_alsadevicename(value);