Added an option option to enforce Stereo Downmix.

This commit is contained in:
LoRd_MuldeR 2011-08-05 21:52:43 +02:00
parent 229357f77c
commit fbee147f07
17 changed files with 373 additions and 299 deletions

View File

@ -18,6 +18,7 @@ a:visited { color: #0000EE; }
<a name="4.02"></a>Changes between v4.02 and v4.03:<br><ul> <a name="4.02"></a>Changes between v4.02 and v4.03:<br><ul>
<li>Added an option to rename the output files (based on an user-defined pattern) <li>Added an option to rename the output files (based on an user-defined pattern)
<li>Added an option to enforce Stereo Downmix for Multi-Channel sources
<li>Added "built-in" WMA decoder (see <a href="http://forum.doom9.org/showthread.php?t=140273">this</a> thread for details) and removed all remnants of "old" decoder <li>Added "built-in" WMA decoder (see <a href="http://forum.doom9.org/showthread.php?t=140273">this</a> thread for details) and removed all remnants of "old" decoder
<li>Updated Qt runtime libraries to v4.8.0 Beta-1 (2011-07-19), compiled with MSVC 10.0 <li>Updated Qt runtime libraries to v4.8.0 Beta-1 (2011-07-19), compiled with MSVC 10.0
<li>Updated MediaInfo to v0.7.47 (2011-07-27), compiled with MSVC 10.0 <li>Updated MediaInfo to v0.7.47 (2011-07-27), compiled with MSVC 10.0

File diff suppressed because it is too large Load Diff

View File

@ -1618,6 +1618,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation>Verbotene Zeichen in Dateinamen:</translation> <translation>Verbotene Zeichen in Dateinamen:</translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation>Surround (Mehrkanal-Ton) Quellen auf Stereo heruntermischen</translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1617,6 +1617,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1627,6 +1627,10 @@ Ouvrir le dossier récursivement...</translation>
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1618,6 +1618,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1617,6 +1617,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1623,6 +1623,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1618,6 +1618,10 @@
<source>Characters forbidden in file names:</source> <source>Characters forbidden in file names:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MetaInfo</name> <name>MetaInfo</name>

View File

@ -1068,7 +1068,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>604</width> <width>604</width>
<height>1393</height> <height>1426</height>
</rect> </rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout_22"> <layout class="QGridLayout" name="gridLayout_22">
@ -1515,7 +1515,7 @@
</property> </property>
</spacer> </spacer>
</item> </item>
<item row="2" column="1" colspan="6"> <item row="4" column="1" colspan="6">
<spacer name="verticalSpacer_10"> <spacer name="verticalSpacer_10">
<property name="orientation"> <property name="orientation">
<enum>Qt::Vertical</enum> <enum>Qt::Vertical</enum>
@ -1547,6 +1547,29 @@
</property> </property>
</spacer> </spacer>
</item> </item>
<item row="3" column="1" colspan="6">
<widget class="QCheckBox" name="checkBoxForceStereoDownmix">
<property name="text">
<string>Enforce Stereo Downmix of Surround (Multi-Channel) Sources</string>
</property>
</widget>
</item>
<item row="2" column="1" colspan="6">
<spacer name="verticalSpacer_30">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>4</height>
</size>
</property>
</spacer>
</item>
</layout> </layout>
</item> </item>
</layout> </layout>

Binary file not shown.

View File

@ -29,8 +29,8 @@
#define VER_LAMEXP_MINOR_HI 0 #define VER_LAMEXP_MINOR_HI 0
#define VER_LAMEXP_MINOR_LO 3 #define VER_LAMEXP_MINOR_LO 3
#define VER_LAMEXP_TYPE Alpha #define VER_LAMEXP_TYPE Alpha
#define VER_LAMEXP_PATCH 7 #define VER_LAMEXP_PATCH 8
#define VER_LAMEXP_BUILD 621 #define VER_LAMEXP_BUILD 622
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// Tools versions // Tools versions

View File

@ -230,13 +230,14 @@ MainWindow::MainWindow(FileListModel *fileListModel, AudioFileModel *metaInfo, S
while(checkBoxNormalizationFilter->isChecked() != m_settings->normalizationFilterEnabled()) checkBoxNormalizationFilter->click(); while(checkBoxNormalizationFilter->isChecked() != m_settings->normalizationFilterEnabled()) checkBoxNormalizationFilter->click();
while(checkBoxAutoDetectInstances->isChecked() != (m_settings->maximumInstances() < 1)) checkBoxAutoDetectInstances->click(); while(checkBoxAutoDetectInstances->isChecked() != (m_settings->maximumInstances() < 1)) checkBoxAutoDetectInstances->click();
while(checkBoxUseSystemTempFolder->isChecked() == m_settings->customTempPathEnabled()) checkBoxUseSystemTempFolder->click(); while(checkBoxUseSystemTempFolder->isChecked() == m_settings->customTempPathEnabled()) checkBoxUseSystemTempFolder->click();
while(checkBoxRenameOutput->isChecked() != m_settings->renameOutputFilesEnabled()) checkBoxRenameOutput->click();
while(checkBoxForceStereoDownmix->isChecked() != m_settings->forceStereoDownmix()) checkBoxForceStereoDownmix->click();
lineEditCustomParamLAME->setText(m_settings->customParametersLAME()); lineEditCustomParamLAME->setText(m_settings->customParametersLAME());
lineEditCustomParamOggEnc->setText(m_settings->customParametersOggEnc()); lineEditCustomParamOggEnc->setText(m_settings->customParametersOggEnc());
lineEditCustomParamNeroAAC->setText(m_settings->customParametersNeroAAC()); lineEditCustomParamNeroAAC->setText(m_settings->customParametersNeroAAC());
lineEditCustomParamFLAC->setText(m_settings->customParametersFLAC()); lineEditCustomParamFLAC->setText(m_settings->customParametersFLAC());
lineEditCustomParamAften->setText(m_settings->customParametersAften()); lineEditCustomParamAften->setText(m_settings->customParametersAften());
lineEditCustomTempFolder->setText(QDir::toNativeSeparators(m_settings->customTempPath())); lineEditCustomTempFolder->setText(QDir::toNativeSeparators(m_settings->customTempPath()));
while(checkBoxRenameOutput->isChecked() != m_settings->renameOutputFilesEnabled()) checkBoxRenameOutput->click();
lineEditRenamePattern->setText(m_settings->renameOutputFilesPattern()); lineEditRenamePattern->setText(m_settings->renameOutputFilesPattern());
connect(sliderLameAlgoQuality, SIGNAL(valueChanged(int)), this, SLOT(updateLameAlgoQuality(int))); connect(sliderLameAlgoQuality, SIGNAL(valueChanged(int)), this, SLOT(updateLameAlgoQuality(int)));
connect(checkBoxBitrateManagement, SIGNAL(clicked(bool)), this, SLOT(bitrateManagementEnabledChanged(bool))); connect(checkBoxBitrateManagement, SIGNAL(clicked(bool)), this, SLOT(bitrateManagementEnabledChanged(bool)));
@ -270,6 +271,7 @@ MainWindow::MainWindow(FileListModel *fileListModel, AudioFileModel *metaInfo, S
connect(lineEditRenamePattern, SIGNAL(editingFinished()), this, SLOT(renameOutputPatternChanged())); connect(lineEditRenamePattern, SIGNAL(editingFinished()), this, SLOT(renameOutputPatternChanged()));
connect(lineEditRenamePattern, SIGNAL(textChanged(QString)), this, SLOT(renameOutputPatternChanged(QString))); connect(lineEditRenamePattern, SIGNAL(textChanged(QString)), this, SLOT(renameOutputPatternChanged(QString)));
connect(labelShowRenameMacros, SIGNAL(linkActivated(QString)), this, SLOT(showRenameMacros(QString))); connect(labelShowRenameMacros, SIGNAL(linkActivated(QString)), this, SLOT(showRenameMacros(QString)));
connect(checkBoxForceStereoDownmix, SIGNAL(clicked(bool)), this, SLOT(forceStereoDownmixEnabledChanged(bool)));
updateLameAlgoQuality(sliderLameAlgoQuality->value()); updateLameAlgoQuality(sliderLameAlgoQuality->value());
updateMaximumInstances(sliderMaxInstances->value()); updateMaximumInstances(sliderMaxInstances->value());
toneAdjustTrebleChanged(spinBoxToneAdjustTreble->value()); toneAdjustTrebleChanged(spinBoxToneAdjustTreble->value());
@ -2800,6 +2802,11 @@ void MainWindow::showRenameMacros(const QString &text)
QMessageBox::information(this, tr("Rename Macros"), message, tr("Discard")); QMessageBox::information(this, tr("Rename Macros"), message, tr("Discard"));
} }
void MainWindow::forceStereoDownmixEnabledChanged(bool checked)
{
m_settings->forceStereoDownmix(checked);
}
/* /*
* Maximum number of instances changed * Maximum number of instances changed
*/ */
@ -2879,6 +2886,7 @@ void MainWindow::resetAdvancedOptionsButtonClicked(void)
while(checkBoxUseSystemTempFolder->isChecked() == m_settings->customTempPathEnabledDefault()) checkBoxUseSystemTempFolder->click(); while(checkBoxUseSystemTempFolder->isChecked() == m_settings->customTempPathEnabledDefault()) checkBoxUseSystemTempFolder->click();
while(checkBoxAftenFastAllocation->isChecked() != m_settings->aftenFastBitAllocationDefault()) checkBoxAftenFastAllocation->click(); while(checkBoxAftenFastAllocation->isChecked() != m_settings->aftenFastBitAllocationDefault()) checkBoxAftenFastAllocation->click();
while(checkBoxRenameOutput->isChecked() != m_settings->renameOutputFilesEnabledDefault()) checkBoxRenameOutput->click(); while(checkBoxRenameOutput->isChecked() != m_settings->renameOutputFilesEnabledDefault()) checkBoxRenameOutput->click();
while(checkBoxForceStereoDownmix->isChecked() != m_settings->forceStereoDownmixDefault()) checkBoxForceStereoDownmix->click();
lineEditCustomParamLAME->setText(m_settings->customParametersLAMEDefault()); lineEditCustomParamLAME->setText(m_settings->customParametersLAMEDefault());
lineEditCustomParamOggEnc->setText(m_settings->customParametersOggEncDefault()); lineEditCustomParamOggEnc->setText(m_settings->customParametersOggEncDefault());
lineEditCustomParamNeroAAC->setText(m_settings->customParametersNeroAACDefault()); lineEditCustomParamNeroAAC->setText(m_settings->customParametersNeroAACDefault());

View File

@ -80,6 +80,7 @@ private slots:
void fileDownButtonClicked(void); void fileDownButtonClicked(void);
void fileUpButtonClicked(void); void fileUpButtonClicked(void);
void findFileContextActionTriggered(void); void findFileContextActionTriggered(void);
void forceStereoDownmixEnabledChanged(bool checked);
void gotoDesktopButtonClicked(void); void gotoDesktopButtonClicked(void);
void gotoHomeFolderButtonClicked(void); void gotoHomeFolderButtonClicked(void);
void gotoMusicFolderButtonClicked(void); void gotoMusicFolderButtonClicked(void);

View File

@ -35,6 +35,7 @@
#include "Encoder_AC3.h" #include "Encoder_AC3.h"
#include "Encoder_FLAC.h" #include "Encoder_FLAC.h"
#include "Encoder_Wave.h" #include "Encoder_Wave.h"
#include "Filter_Downmix.h"
#include "Filter_Normalize.h" #include "Filter_Normalize.h"
#include "Filter_Resample.h" #include "Filter_Resample.h"
#include "Filter_ToneAdjust.h" #include "Filter_ToneAdjust.h"
@ -645,6 +646,10 @@ void ProcessingDialog::startNextJob(void)
m_settings->prependRelativeSourcePath() m_settings->prependRelativeSourcePath()
); );
if(m_settings->forceStereoDownmix() && !encoder->requiresDownmix())
{
thread->addFilter(new DownmixFilter());
}
if((m_settings->samplingRate() > 0) && !nativeResampling) if((m_settings->samplingRate() > 0) && !nativeResampling)
{ {
if(SettingsModel::samplingRates[m_settings->samplingRate()] != currentFile.formatAudioSamplerate() || currentFile.formatAudioSamplerate() == 0) if(SettingsModel::samplingRates[m_settings->samplingRate()] != currentFile.formatAudioSamplerate() || currentFile.formatAudioSamplerate() == 0)

View File

@ -88,6 +88,7 @@ LAMEXP_MAKE_ID(shellIntegrationEnabled, "Flags/EnableShellIntegration");
LAMEXP_MAKE_ID(currentLanguage, "Localization/Language"); LAMEXP_MAKE_ID(currentLanguage, "Localization/Language");
LAMEXP_MAKE_ID(lameAlgoQuality, "AdvancedOptions/LAME/AlgorithmQuality"); LAMEXP_MAKE_ID(lameAlgoQuality, "AdvancedOptions/LAME/AlgorithmQuality");
LAMEXP_MAKE_ID(lameChannelMode, "AdvancedOptions/LAME/ChannelMode"); LAMEXP_MAKE_ID(lameChannelMode, "AdvancedOptions/LAME/ChannelMode");
LAMEXP_MAKE_ID(forceStereoDownmix, "AdvancedOptions/StereoDownmix/Force");
LAMEXP_MAKE_ID(bitrateManagementEnabled, "AdvancedOptions/BitrateManagement/Enabled"); LAMEXP_MAKE_ID(bitrateManagementEnabled, "AdvancedOptions/BitrateManagement/Enabled");
LAMEXP_MAKE_ID(bitrateManagementMinRate, "AdvancedOptions/BitrateManagement/MinRate"); LAMEXP_MAKE_ID(bitrateManagementMinRate, "AdvancedOptions/BitrateManagement/MinRate");
LAMEXP_MAKE_ID(bitrateManagementMaxRate, "AdvancedOptions/BitrateManagement/MaxRate"); LAMEXP_MAKE_ID(bitrateManagementMaxRate, "AdvancedOptions/BitrateManagement/MaxRate");
@ -278,7 +279,8 @@ LAMEXP_MAKE_OPTION_B(dropBoxWidgetEnabled, true)
LAMEXP_MAKE_OPTION_B(shellIntegrationEnabled, !lamexp_portable_mode()) LAMEXP_MAKE_OPTION_B(shellIntegrationEnabled, !lamexp_portable_mode())
LAMEXP_MAKE_OPTION_S(currentLanguage, defaultLanguage()) LAMEXP_MAKE_OPTION_S(currentLanguage, defaultLanguage())
LAMEXP_MAKE_OPTION_I(lameAlgoQuality, 3) LAMEXP_MAKE_OPTION_I(lameAlgoQuality, 3)
LAMEXP_MAKE_OPTION_I(lameChannelMode, 0); LAMEXP_MAKE_OPTION_I(lameChannelMode, 0)
LAMEXP_MAKE_OPTION_B(forceStereoDownmix, false)
LAMEXP_MAKE_OPTION_B(bitrateManagementEnabled, false) LAMEXP_MAKE_OPTION_B(bitrateManagementEnabled, false)
LAMEXP_MAKE_OPTION_I(bitrateManagementMinRate, 32) LAMEXP_MAKE_OPTION_I(bitrateManagementMinRate, 32)
LAMEXP_MAKE_OPTION_I(bitrateManagementMaxRate, 500) LAMEXP_MAKE_OPTION_I(bitrateManagementMaxRate, 500)

View File

@ -98,6 +98,7 @@ public:
LAMEXP_MAKE_OPTION_S(currentLanguage); LAMEXP_MAKE_OPTION_S(currentLanguage);
LAMEXP_MAKE_OPTION_I(lameAlgoQuality); LAMEXP_MAKE_OPTION_I(lameAlgoQuality);
LAMEXP_MAKE_OPTION_I(lameChannelMode); LAMEXP_MAKE_OPTION_I(lameChannelMode);
LAMEXP_MAKE_OPTION_B(forceStereoDownmix);
LAMEXP_MAKE_OPTION_B(bitrateManagementEnabled); LAMEXP_MAKE_OPTION_B(bitrateManagementEnabled);
LAMEXP_MAKE_OPTION_I(bitrateManagementMinRate); LAMEXP_MAKE_OPTION_I(bitrateManagementMinRate);
LAMEXP_MAKE_OPTION_I(bitrateManagementMaxRate); LAMEXP_MAKE_OPTION_I(bitrateManagementMaxRate);