Downmix filter will now check if the input already is Mono/Stereo, so we can safely invoke the filter for ALL sources.
This commit is contained in:
parent
ea4b30a12a
commit
dae4def2fa
@ -23,6 +23,7 @@ a:visited { color: #0000EE; }
|
||||
<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 language files (big thank-you to all contributors !!!)
|
||||
<li>Improved "downmix" filter by using explicit channel mappings for each number of input channels
|
||||
<li>Fixed Cue Sheet import for tracks with certain characters in the title
|
||||
<li>Workaround for malicious "anti-virus" programs that prevent innocent applications from functioning
|
||||
<li>Enabled "Aero Glass" theme in installer and web-update program (Vista and Windows 7 only)
|
||||
|
@ -2413,77 +2413,77 @@
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="215"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="213"/>
|
||||
<source>Done.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="215"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="213"/>
|
||||
<source>Aborted!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="215"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="213"/>
|
||||
<source>Failed!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="230"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="228"/>
|
||||
<source>Encoding</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="233"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="231"/>
|
||||
<source>Filtering</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="236"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="234"/>
|
||||
<source>Decoding</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="259"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="257"/>
|
||||
<source>The source audio file could not be found:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="266"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="264"/>
|
||||
<source>The source audio file could not be opened for reading:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="292"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="290"/>
|
||||
<source>The target output directory doesn't exist and could NOT be created:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="300"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="298"/>
|
||||
<source>The target output directory is NOT writable:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="310"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="308"/>
|
||||
<source>Unknown File Name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="312"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="310"/>
|
||||
<source>Unknown Title</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="313"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="311"/>
|
||||
<source>Unknown Artist</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="314"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="312"/>
|
||||
<source>Unknown Album</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Thread_Process.cpp" line="316"/>
|
||||
<location filename="../../src/Thread_Process.cpp" line="314"/>
|
||||
<source>Unknown Comment</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -29,8 +29,8 @@
|
||||
#define VER_LAMEXP_MINOR_HI 0
|
||||
#define VER_LAMEXP_MINOR_LO 3
|
||||
#define VER_LAMEXP_TYPE Alpha
|
||||
#define VER_LAMEXP_PATCH 8
|
||||
#define VER_LAMEXP_BUILD 626
|
||||
#define VER_LAMEXP_PATCH 9
|
||||
#define VER_LAMEXP_BUILD 628
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Tools versions
|
||||
|
@ -649,7 +649,7 @@ void ProcessingDialog::startNextJob(void)
|
||||
);
|
||||
|
||||
//Add audio filters
|
||||
if(m_settings->forceStereoDownmix() && ((currentFile.formatAudioChannels() > 2) || (currentFile.formatAudioChannels() == 0)))
|
||||
if(m_settings->forceStereoDownmix())
|
||||
{
|
||||
thread->addFilter(new DownmixFilter());
|
||||
}
|
||||
|
@ -46,6 +46,13 @@ bool DownmixFilter::apply(const QString &sourceFile, const QString &outputFile,
|
||||
unsigned int channels = detectChannels(sourceFile, abortFlag);
|
||||
emit messageLogged(QString().sprintf("--> Number of channels is: %d\n", channels));
|
||||
|
||||
if((channels == 1) || (channels == 2))
|
||||
{
|
||||
messageLogged("Skipping downmix!");
|
||||
qDebug("Dowmmix not required for Mono or Stereo input, skipping!");
|
||||
return false;
|
||||
}
|
||||
|
||||
QProcess process;
|
||||
QStringList args;
|
||||
|
||||
|
@ -135,7 +135,7 @@ void ProcessThread::processFile()
|
||||
}
|
||||
|
||||
//Do we need Stereo downmix?
|
||||
if(m_encoder->requiresDownmix() && ((m_audioFile.formatAudioChannels() > 2) || (m_audioFile.formatAudioChannels() == 0)))
|
||||
if(m_encoder->requiresDownmix())
|
||||
{
|
||||
insertDownmixFilter();
|
||||
}
|
||||
@ -173,29 +173,27 @@ void ProcessThread::processFile()
|
||||
}
|
||||
}
|
||||
|
||||
//Apply all filters
|
||||
//Apply all audio filters
|
||||
if(bSuccess)
|
||||
{
|
||||
while(!m_filters.isEmpty())
|
||||
{
|
||||
QString tempFile = generateTempFileName();
|
||||
AbstractFilter *poFilter = m_filters.takeFirst();
|
||||
m_currentStep = FilteringStep;
|
||||
|
||||
if(bSuccess)
|
||||
{
|
||||
connect(poFilter, SIGNAL(statusUpdated(int)), this, SLOT(handleUpdate(int)), Qt::DirectConnection);
|
||||
connect(poFilter, SIGNAL(messageLogged(QString)), this, SLOT(handleMessage(QString)), Qt::DirectConnection);
|
||||
|
||||
m_currentStep = FilteringStep;
|
||||
bSuccess = poFilter->apply(sourceFile, tempFile, &m_aborted);
|
||||
|
||||
if(bSuccess)
|
||||
if(poFilter->apply(sourceFile, tempFile, &m_aborted))
|
||||
{
|
||||
sourceFile = tempFile;
|
||||
handleMessage("\n-------------------------------\n");
|
||||
}
|
||||
}
|
||||
|
||||
handleMessage("\n-------------------------------\n");
|
||||
delete poFilter;
|
||||
}
|
||||
}
|
||||
|
||||
//Encode audio file
|
||||
if(bSuccess)
|
||||
|
Loading…
Reference in New Issue
Block a user