]> git.sesse.net Git - kdenlive/commitdiff
Screengrab with audio now!
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 22 Jul 2008 08:29:03 +0000 (08:29 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 22 Jul 2008 08:29:03 +0000 (08:29 +0000)
svn path=/branches/KDE4/; revision=2341

src/kdenlivesettings.kcfg
src/recmonitor.cpp
src/widgets/configcapture_ui.ui

index 78f42ea33f705cf831ca71ba011cf1f80970d02e..03e1ef1956ac32d0516af1ab750bb84eb87fc0ca 100644 (file)
       <default></default>
     </entry>
 
+    <entry name="screengrabenableaudio" type="Bool">
+      <label>ffmpeg arguments for x11 grab capture.</label>
+      <default>false</default>
+    </entry>
+
+    <entry name="screengrabaudiocapture" type="String">
+      <label>ffmpeg arguments for x11 grab capture.</label>
+      <default>-f oss -i /dev/dsp</default>
+    </entry>
+
     <entry name="screengrabcapture" type="String">
       <label>ffmpeg arguments for x11 grab capture.</label>
       <default>-f x11grab -r 15 -s %size -i :0.0%offset</default>
 
     <entry name="screengrabencoding" type="String">
       <label>ffmpeg arguments for x11 capture encoding.</label>
-      <default>-vcodec mpeg4 -acodec NULL</default>
+      <default>-vcodec mpeg4</default>
     </entry>
 
     <entry name="screengrabextension" type="String">
index dc9b5db22c7af4151fa55234a0af8735b939962c..f0b88734780daf5d4d0c2b99a6dd996036e5f71f 100644 (file)
@@ -342,6 +342,10 @@ void RecMonitor::slotRecord() {
                 const QRect rect = QApplication::desktop()->screenGeometry();
                 args = KdenliveSettings::screengrabcapture().replace("%size", QString::number(rect.width()) + "x" + QString::number(rect.height())).replace("%offset", QString());
                 kDebug() << "// capture params: " << args;
+               if (KdenliveSettings::screengrabenableaudio()) {
+                   // also capture audio
+                   m_captureArgs << KdenliveSettings::screengrabaudiocapture().simplified().split(' ');
+               }
                 m_captureArgs << args.simplified().split(' ') << KdenliveSettings::screengrabencoding().simplified().split(' ') << m_captureFile.path();
                 ui.video_frame->setText(i18n("Capturing..."));
                 m_isCapturing = true;
@@ -381,6 +385,10 @@ void RecMonitor::slotStartGrab(const QRect &rect) {
     if (height % 2 != 0) height--;
     QString args = KdenliveSettings::screengrabcapture().replace("%size", QString::number(width) + "x" + QString::number(height)).replace("%offset", "+" + QString::number(rect.x()) + "," + QString::number(rect.y()));
     kDebug() << "// capture params: " << args;
+    if (KdenliveSettings::screengrabenableaudio()) {
+       // also capture audio
+       m_captureArgs << KdenliveSettings::screengrabaudiocapture().simplified().split(' ');
+    }
     m_captureArgs << args.simplified().split(' ') << KdenliveSettings::screengrabencoding().simplified().split(' ') << m_captureFile.path();
     m_isCapturing = true;
     ui.video_frame->setText(i18n("Capturing..."));
index a1055eae3a7dbf8c9c8fc44429fd3fd2fa94e7db..452f1de217a1a3f386192deefc03f0b01db8d324 100644 (file)
@@ -5,8 +5,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>502</width>
-    <height>374</height>
+    <width>446</width>
+    <height>312</height>
    </rect>
   </property>
   <layout class="QGridLayout" name="gridLayout_3" >
@@ -45,7 +45,7 @@
       </size>
      </property>
      <property name="currentIndex" >
-      <number>0</number>
+      <number>2</number>
      </property>
      <widget class="QWidget" name="tab" >
       <property name="geometry" >
        <rect>
         <x>0</x>
         <y>0</y>
-        <width>486</width>
-        <height>270</height>
+        <width>430</width>
+        <height>238</height>
        </rect>
       </property>
       <attribute name="title" >
       </attribute>
       <layout class="QGridLayout" name="gridLayout_4" >
        <item row="0" column="0" >
+        <widget class="QCheckBox" name="kcfg_screengrabenableaudio" >
+         <property name="text" >
+          <string>Capture audio</string>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="2" >
+        <widget class="KLineEdit" name="kcfg_screengrabaudiocapture" />
+       </item>
+       <item row="1" column="0" colspan="2" >
         <widget class="QLabel" name="label_17" >
          <property name="text" >
-          <string>Capture params</string>
+          <string>Video capture params</string>
          </property>
         </widget>
        </item>
-       <item row="0" column="1" >
+       <item row="1" column="2" >
         <widget class="KLineEdit" name="kcfg_screengrabcapture" />
        </item>
-       <item row="1" column="0" >
+       <item row="2" column="0" >
         <widget class="QLabel" name="label_8" >
          <property name="sizePolicy" >
           <sizepolicy vsizetype="Preferred" hsizetype="Maximum" >
          </property>
         </widget>
        </item>
-       <item row="1" column="1" >
+       <item row="2" column="2" >
         <widget class="KLineEdit" name="kcfg_screengrabencoding" >
          <property name="sizePolicy" >
           <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
          </property>
         </widget>
        </item>
-       <item row="2" column="0" >
+       <item row="3" column="0" >
         <widget class="QLabel" name="label_10" >
          <property name="sizePolicy" >
           <sizepolicy vsizetype="Preferred" hsizetype="Maximum" >
          </property>
         </widget>
        </item>
-       <item row="2" column="1" >
+       <item row="3" column="2" >
         <widget class="KLineEdit" name="kcfg_screengrabextension" >
          <property name="sizePolicy" >
           <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
          </property>
         </widget>
        </item>
-       <item row="3" column="0" colspan="2" >
+       <item row="4" column="0" colspan="3" >
         <widget class="QCheckBox" name="kcfg_fullscreengrab" >
          <property name="text" >
           <string>Full screen capture</string>
          </property>
         </widget>
        </item>
-       <item row="4" column="1" >
+       <item row="5" column="1" colspan="2" >
         <spacer name="verticalSpacer_3" >
          <property name="orientation" >
           <enum>Qt::Vertical</enum>
      </widget>
     </widget>
    </item>
-   <item row="2" column="1" >
-    <spacer name="verticalSpacer" >
-     <property name="orientation" >
-      <enum>Qt::Vertical</enum>
-     </property>
-     <property name="sizeHint" stdset="0" >
-      <size>
-       <width>20</width>
-       <height>56</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
   </layout>
+  <zorder>label</zorder>
+  <zorder>kcfg_defaultcapture</zorder>
+  <zorder>tabWidget</zorder>
  </widget>
  <customwidgets>
   <customwidget>