aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-12-19 17:30:41 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-12-19 17:30:41 +0000
commite8d99698c23b1d8ac4a396635e9af60d52a12229 (patch)
tree00572f714497b467d5eb96524b1c8ada552b5734
parent5f99afc31569637ac29935b2073e943ac1c2414b (diff)
downloadqmmp-e8d99698c23b1d8ac4a396635e9af60d52a12229.tar.gz
qmmp-e8d99698c23b1d8ac4a396635e9af60d52a12229.tar.bz2
qmmp-e8d99698c23b1d8ac4a396635e9af60d52a12229.zip
more ffmpeg formats support (including ape); ffmpeg plugin settings
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@692 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/Input/cue/settingsdialog.h2
-rw-r--r--src/plugins/Input/ffmpeg/CMakeLists.txt6
-rw-r--r--src/plugins/Input/ffmpeg/decoder_ffmpeg.cpp7
-rw-r--r--src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp36
-rw-r--r--src/plugins/Input/ffmpeg/detailsdialog.ui126
-rw-r--r--src/plugins/Input/ffmpeg/ffmpeg.pro15
-rw-r--r--src/plugins/Input/ffmpeg/settingsdialog.cpp95
-rw-r--r--src/plugins/Input/ffmpeg/settingsdialog.h46
-rw-r--r--src/plugins/Input/ffmpeg/settingsdialog.ui137
9 files changed, 363 insertions, 107 deletions
diff --git a/src/plugins/Input/cue/settingsdialog.h b/src/plugins/Input/cue/settingsdialog.h
index 0f5535905..0f3ae1f87 100644
--- a/src/plugins/Input/cue/settingsdialog.h
+++ b/src/plugins/Input/cue/settingsdialog.h
@@ -22,7 +22,6 @@
#include <QDialog>
-
#include "ui_settingsdialog.h"
/**
@@ -42,7 +41,6 @@ public slots:
private:
void findCodecs();
-
Ui::SettingsDialog ui;
QList<QTextCodec *> codecs;
diff --git a/src/plugins/Input/ffmpeg/CMakeLists.txt b/src/plugins/Input/ffmpeg/CMakeLists.txt
index 1ae7b4172..7bdcdc0c0 100644
--- a/src/plugins/Input/ffmpeg/CMakeLists.txt
+++ b/src/plugins/Input/ffmpeg/CMakeLists.txt
@@ -5,7 +5,6 @@ cmake_minimum_required(VERSION 2.4.7)
if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
@@ -71,12 +70,14 @@ SET(libffmpeg_SRCS
decoder_ffmpeg.cpp
decoderffmpegfactory.cpp
detailsdialog.cpp
+ settingsdialog.cpp
)
SET(libffmpeg_MOC_HDRS
decoderffmpegfactory.h
decoder_ffmpeg.h
detailsdialog.h
+ settingsdialog.h
)
SET(libffmpeg_RCCS translations/translations.qrc)
@@ -89,7 +90,8 @@ QT4_WRAP_CPP(libffmpeg_MOC_SRCS ${libffmpeg_MOC_HDRS})
SET(libffmpeg_UIS
- detailsdialog.ui
+ detailsdialog.ui
+ settingsdialog.ui
)
QT4_WRAP_UI(libffmpeg_UIS_H ${libffmpeg_UIS})
diff --git a/src/plugins/Input/ffmpeg/decoder_ffmpeg.cpp b/src/plugins/Input/ffmpeg/decoder_ffmpeg.cpp
index c1b5ac2e2..49c13da9f 100644
--- a/src/plugins/Input/ffmpeg/decoder_ffmpeg.cpp
+++ b/src/plugins/Input/ffmpeg/decoder_ffmpeg.cpp
@@ -87,9 +87,7 @@ void DecoderFFmpeg::flush(bool final)
while ((! done && ! m_finish) && output()->recycler()->full())
{
mutex()->unlock();
-
output()->recycler()->cond()->wait(output()->recycler()->mutex());
-
mutex()->lock ();
done = user_stop;
}
@@ -193,18 +191,15 @@ void DecoderFFmpeg::deinit()
void DecoderFFmpeg::run()
{
-// mpc_uint32_t vbrAcc = 0;
-// mpc_uint32_t vbrUpd = 0;
uint8_t *inbuf_ptr;
int out_size, size;
AVPacket pkt;
mutex()->lock ();
- if (! inited)
+ if (!inited)
{
mutex()->unlock();
-
return;
}
mutex()->unlock();
diff --git a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
index 22f16799e..7ed9d4b78 100644
--- a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
+++ b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp
@@ -19,6 +19,7 @@
***************************************************************************/
#include <QtGui>
+#include <QSettings>
extern "C"
{
@@ -41,6 +42,7 @@ extern "C"
}
#include "detailsdialog.h"
+#include "settingsdialog.h"
#include "decoder_ffmpeg.h"
#include "decoderffmpegfactory.h"
@@ -49,8 +51,15 @@ extern "C"
bool DecoderFFmpegFactory::supports(const QString &source) const
{
-
- return (source.right(4).toLower() == ".wma");
+ QSettings settings(QDir::homePath()+"/.qmmp/qmmprc", QSettings::IniFormat);
+ QStringList filters = settings.value("FFMPEG/filters","*.wma").toStringList();
+ foreach(QString filter, filters)
+ {
+ QRegExp regexp(filter, Qt::CaseInsensitive, QRegExp::Wildcard);
+ if (regexp.exactMatch(source))
+ return TRUE;
+ }
+ return FALSE;
}
bool DecoderFFmpegFactory::canDecode(QIODevice *) const
@@ -60,13 +69,15 @@ bool DecoderFFmpegFactory::canDecode(QIODevice *) const
const DecoderProperties DecoderFFmpegFactory::properties() const
{
+ QSettings settings(QDir::homePath()+"/.qmmp/qmmprc", QSettings::IniFormat);
+ QStringList filters = settings.value("FFMPEG/filters","*.wma").toStringList();
DecoderProperties properties;
properties.name = tr("FFMPEG Plugin");
- properties.filter = "*.wma";
- properties.description = tr("WMA Files");
+ properties.filter = filters.join(" ");
+ properties.description = tr("FFMPEG Formats");
//properties.contentType = "";
properties.hasAbout = TRUE;
- properties.hasSettings = FALSE;
+ properties.hasSettings = TRUE;
properties.noInput = TRUE;
properties.protocols = "file";
return properties;
@@ -114,14 +125,23 @@ QObject* DecoderFFmpegFactory::showDetails(QWidget *parent, const QString &path)
return d;
}
-void DecoderFFmpegFactory::showSettings(QWidget *)
-{}
+void DecoderFFmpegFactory::showSettings(QWidget *parent)
+{
+ SettingsDialog *s = new SettingsDialog(parent);
+ s->show();
+}
void DecoderFFmpegFactory::showAbout(QWidget *parent)
{
QMessageBox::about (parent, tr("About FFmpeg Audio Plugin"),
tr("Qmmp FFmpeg Audio Plugin")+"\n"+
- tr("Suppored formats: WMA")+"\n"+
+ QString(tr("Compiled against libavformat-%1.%2.%3 and libavcodec-%4.%5.%6"))
+ .arg(LIBAVFORMAT_VERSION_MAJOR)
+ .arg(LIBAVFORMAT_VERSION_MINOR)
+ .arg(LIBAVFORMAT_VERSION_MICRO)
+ .arg(LIBAVCODEC_VERSION_MAJOR)
+ .arg(LIBAVCODEC_VERSION_MINOR)
+ .arg(LIBAVCODEC_VERSION_MICRO)+"\n"+
tr("Writen by: Ilya Kotov <forkotov02@hotmail.ru>"));
}
diff --git a/src/plugins/Input/ffmpeg/detailsdialog.ui b/src/plugins/Input/ffmpeg/detailsdialog.ui
index 0dd6741cb..d74cdde01 100644
--- a/src/plugins/Input/ffmpeg/detailsdialog.ui
+++ b/src/plugins/Input/ffmpeg/detailsdialog.ui
@@ -6,7 +6,7 @@
<x>0</x>
<y>0</y>
<width>545</width>
- <height>374</height>
+ <height>343</height>
</rect>
</property>
<property name="windowTitle" >
@@ -39,25 +39,13 @@
</size>
</property>
<property name="title" >
- <string>ASF Info</string>
+ <string>Audio Info</string>
</property>
<layout class="QGridLayout" >
- <property name="leftMargin" >
+ <property name="margin" >
<number>9</number>
</property>
- <property name="topMargin" >
- <number>9</number>
- </property>
- <property name="rightMargin" >
- <number>9</number>
- </property>
- <property name="bottomMargin" >
- <number>9</number>
- </property>
- <property name="horizontalSpacing" >
- <number>6</number>
- </property>
- <property name="verticalSpacing" >
+ <property name="spacing" >
<number>6</number>
</property>
<item row="4" column="1" >
@@ -159,7 +147,7 @@
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
- <property name="sizeHint" >
+ <property name="sizeHint" stdset="0" >
<size>
<width>74</width>
<height>151</height>
@@ -179,73 +167,48 @@
</sizepolicy>
</property>
<property name="title" >
- <string>WMA Tag</string>
+ <string>Metadata</string>
</property>
- <layout class="QGridLayout" >
- <property name="leftMargin" >
- <number>8</number>
- </property>
- <property name="topMargin" >
- <number>8</number>
- </property>
- <property name="rightMargin" >
- <number>8</number>
- </property>
- <property name="bottomMargin" >
- <number>8</number>
- </property>
- <property name="horizontalSpacing" >
- <number>6</number>
- </property>
- <property name="verticalSpacing" >
- <number>6</number>
- </property>
- <item row="6" column="1" >
- <widget class="QPushButton" name="pushButton" >
- <property name="enabled" >
- <bool>false</bool>
- </property>
- <property name="text" >
- <string>Save</string>
- </property>
- </widget>
- </item>
- <item row="4" column="3" >
- <widget class="QLineEdit" name="trackLineEdit" />
- </item>
- <item row="4" column="2" >
- <widget class="QLabel" name="label_26" >
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="0" column="0" >
+ <widget class="QLabel" name="label_21" >
<property name="text" >
- <string>Track number:</string>
+ <string>Title:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
- <item row="4" column="1" >
- <widget class="QLineEdit" name="yearLineEdit" />
+ <item row="0" column="1" colspan="3" >
+ <widget class="QLineEdit" name="titleLineEdit" />
</item>
- <item row="4" column="0" >
- <widget class="QLabel" name="label_25" >
+ <item row="1" column="0" >
+ <widget class="QLabel" name="label_22" >
<property name="text" >
- <string>Year:</string>
+ <string>Artist:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
- <item row="5" column="0" >
- <widget class="QLabel" name="label_27" >
+ <item row="1" column="1" colspan="3" >
+ <widget class="QLineEdit" name="artistLineEdit" />
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="label_23" >
<property name="text" >
- <string>Genre:</string>
+ <string>Album:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
+ <item row="2" column="1" colspan="3" >
+ <widget class="QLineEdit" name="albumLineEdit" />
+ </item>
<item row="3" column="0" >
<widget class="QLabel" name="label_24" >
<property name="text" >
@@ -256,48 +219,45 @@
</property>
</widget>
</item>
- <item row="2" column="0" >
- <widget class="QLabel" name="label_23" >
+ <item row="3" column="1" colspan="3" >
+ <widget class="QLineEdit" name="commentLineEdit" />
+ </item>
+ <item row="4" column="0" >
+ <widget class="QLabel" name="label_25" >
<property name="text" >
- <string>Album:</string>
+ <string>Year:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
- <item row="1" column="0" >
- <widget class="QLabel" name="label_22" >
+ <item row="4" column="1" >
+ <widget class="QLineEdit" name="yearLineEdit" />
+ </item>
+ <item row="4" column="2" >
+ <widget class="QLabel" name="label_26" >
<property name="text" >
- <string>Artist:</string>
+ <string>Track number:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
- <item row="0" column="0" >
- <widget class="QLabel" name="label_21" >
+ <item row="4" column="3" >
+ <widget class="QLineEdit" name="trackLineEdit" />
+ </item>
+ <item row="5" column="0" >
+ <widget class="QLabel" name="label_27" >
<property name="text" >
- <string>Title:</string>
+ <string>Genre:</string>
</property>
<property name="alignment" >
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
- <item row="0" column="1" colspan="3" >
- <widget class="QLineEdit" name="titleLineEdit" />
- </item>
- <item row="1" column="1" colspan="3" >
- <widget class="QLineEdit" name="artistLineEdit" />
- </item>
- <item row="2" column="1" colspan="3" >
- <widget class="QLineEdit" name="albumLineEdit" />
- </item>
- <item row="3" column="1" colspan="3" >
- <widget class="QLineEdit" name="commentLineEdit" />
- </item>
<item row="5" column="1" colspan="2" >
<widget class="QLineEdit" name="genreLineEdit" />
</item>
@@ -309,7 +269,7 @@
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
- <property name="sizeHint" >
+ <property name="sizeHint" stdset="0" >
<size>
<width>111</width>
<height>20</height>
diff --git a/src/plugins/Input/ffmpeg/ffmpeg.pro b/src/plugins/Input/ffmpeg/ffmpeg.pro
index 6763c2cf3..5580d32e1 100644
--- a/src/plugins/Input/ffmpeg/ffmpeg.pro
+++ b/src/plugins/Input/ffmpeg/ffmpeg.pro
@@ -1,17 +1,20 @@
include(../../plugins.pri)
-FORMS += detailsdialog.ui
+FORMS += detailsdialog.ui \
+ settingsdialog.ui
HEADERS += decoderffmpegfactory.h \
detailsdialog.h \
- decoder_ffmpeg.h
+ decoder_ffmpeg.h \
+ settingsdialog.h
SOURCES += detailsdialog.cpp \
decoder_ffmpeg.cpp \
- decoderffmpegfactory.cpp
+ decoderffmpegfactory.cpp \
+ settingsdialog.cpp
QMAKE_CLEAN = ../libffmpeg.so
-TARGET=$$PLUGINS_PREFIX/Input/ffmpeg
+TARGET =$$PLUGINS_PREFIX/Input/ffmpeg
QMAKE_CLEAN =$$PLUGINS_PREFIX/Input/libffmpeg.so
@@ -41,8 +44,8 @@ TRANSLATIONS = translations/ffmpeg_plugin_ru.ts \
RESOURCES = translations/translations.qrc
-isEmpty (LIB_DIR){
-LIB_DIR = /lib
+isEmpty(LIB_DIR){
+ LIB_DIR = /lib
}
target.path = $$LIB_DIR/qmmp/Input
INSTALLS += target
diff --git a/src/plugins/Input/ffmpeg/settingsdialog.cpp b/src/plugins/Input/ffmpeg/settingsdialog.cpp
new file mode 100644
index 000000000..58e11b54a
--- /dev/null
+++ b/src/plugins/Input/ffmpeg/settingsdialog.cpp
@@ -0,0 +1,95 @@
+/***************************************************************************
+ * Copyright (C) 2008 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QDir>
+#include <QStringList>
+
+extern "C"
+{
+#if defined HAVE_FFMPEG_AVFORMAT_H
+#include <ffmpeg/avformat.h>
+#elif defined HAVE_LIBAVFORMAT_AVFORMAT_H
+#include <libavformat/avformat.h>
+#else
+#include <avformat.h>
+#endif
+
+
+#if defined HAVE_FFMPEG_AVCODEC_H
+#include <ffmpeg/avcodec.h>
+#elif defined HAVE_LIBAVCODEC_AVCODEC_H
+#include <libavcodec/avcodec.h>
+#else
+#include <avcodec.h>
+#endif
+}
+
+#include "settingsdialog.h"
+
+SettingsDialog::SettingsDialog(QWidget *parent)
+ : QDialog(parent)
+{
+ ui.setupUi(this);
+ setAttribute(Qt::WA_DeleteOnClose);
+ QSettings settings(QDir::homePath()+"/.qmmp/qmmprc", QSettings::IniFormat);
+ QStringList filters;
+ filters << "*.wma" << "*.ape";
+ filters = settings.value("FFMPEG/filters", filters).toStringList();
+ avcodec_init();
+ avcodec_register_all();
+ av_register_all();
+ ui.wmaCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_WMAV1));
+ ui.wmaCheckBox->setChecked(filters.contains("*.wma") && avcodec_find_decoder(CODEC_ID_WMAV1));
+ ui.apeCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_APE));
+ ui.apeCheckBox->setChecked(filters.contains("*.ape") && avcodec_find_decoder(CODEC_ID_APE));
+ ui.ttaCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_TTA));
+ ui.ttaCheckBox->setChecked(filters.contains("*.tta") && avcodec_find_decoder(CODEC_ID_TTA));
+ ui.alacCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_ALAC));
+ ui.alacCheckBox->setChecked(filters.contains("*.alac") && avcodec_find_decoder(CODEC_ID_ALAC));
+ ui.aacCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_AAC));
+ ui.aacCheckBox->setChecked(filters.contains("*.aac") && avcodec_find_decoder(CODEC_ID_AAC));
+ ui.mp4CheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_AAC));
+ ui.mp4CheckBox->setChecked(filters.contains("*.m4a") && avcodec_find_decoder(CODEC_ID_AAC));
+ ui.raCheckBox->setEnabled(avcodec_find_decoder(CODEC_ID_RA_288));
+ ui.raCheckBox->setChecked(filters.contains("*.ra") && avcodec_find_decoder(CODEC_ID_RA_288));
+
+}
+
+
+SettingsDialog::~SettingsDialog()
+{
+}
+
+void SettingsDialog::accept()
+{
+ QStringList filters;
+ if (ui.wmaCheckBox->isChecked())
+ filters << "*.wma";
+ if (ui.apeCheckBox->isChecked())
+ filters << "*.ape";
+ if (ui.ttaCheckBox->isChecked())
+ filters << "*.tta";
+ if (ui.alacCheckBox->isChecked())
+ filters << "*.alac";
+ QSettings settings(QDir::homePath()+"/.qmmp/qmmprc", QSettings::IniFormat);
+ settings.setValue("FFMPEG/filters", filters);
+ QDialog::accept();
+}
diff --git a/src/plugins/Input/ffmpeg/settingsdialog.h b/src/plugins/Input/ffmpeg/settingsdialog.h
new file mode 100644
index 000000000..5617642ac
--- /dev/null
+++ b/src/plugins/Input/ffmpeg/settingsdialog.h
@@ -0,0 +1,46 @@
+/***************************************************************************
+ * Copyright (C) 2008 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+#ifndef SETTINGSDIALOG_H
+#define SETTINGSDIALOG_H
+
+#include <QDialog>
+
+#include "ui_settingsdialog.h"
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class SettingsDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ SettingsDialog(QWidget *parent = 0);
+
+ ~SettingsDialog();
+
+public slots:
+ virtual void accept();
+
+private:
+ Ui::SettingsDialog ui;
+
+};
+
+#endif
diff --git a/src/plugins/Input/ffmpeg/settingsdialog.ui b/src/plugins/Input/ffmpeg/settingsdialog.ui
new file mode 100644
index 000000000..5f182fcce
--- /dev/null
+++ b/src/plugins/Input/ffmpeg/settingsdialog.ui
@@ -0,0 +1,137 @@
+<ui version="4.0" >
+ <class>SettingsDialog</class>
+ <widget class="QDialog" name="SettingsDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>302</width>
+ <height>286</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>FFMPEG Plugin Settings</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="1" column="0" >
+ <spacer name="horizontalSpacer" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>178</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QDialogButtonBox" name="buttonBox" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Maximum" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="standardButtons" >
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="2" >
+ <widget class="QGroupBox" name="groupBox" >
+ <property name="title" >
+ <string>Formats</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout" >
+ <item>
+ <widget class="QCheckBox" name="wmaCheckBox" >
+ <property name="text" >
+ <string>Windows Media Audio</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="apeCheckBox" >
+ <property name="text" >
+ <string>Monkey's Audio</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="ttaCheckBox" >
+ <property name="text" >
+ <string>True Audio</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="alacCheckBox" >
+ <property name="text" >
+ <string>ALAC (Apple Lossless Audio Codec)</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="aacCheckBox" >
+ <property name="text" >
+ <string>ADTS AAC</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="mp4CheckBox" >
+ <property name="text" >
+ <string>MPEG-4 AAC</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="raCheckBox" >
+ <property name="text" >
+ <string>RealAudio 1.0/2.0</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>SettingsDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>214</x>
+ <y>167</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>103</x>
+ <y>160</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>SettingsDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>269</x>
+ <y>174</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>148</x>
+ <y>169</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>