Enable the embedding of cover artwork for the Opus encoder, using the "--picture" parameter.

This commit is contained in:
LoRd_MuldeR 2015-08-19 22:49:43 +02:00
parent cd1bb73a93
commit f663dcc75f
19 changed files with 56 additions and 48 deletions

View File

@ -102,6 +102,7 @@ document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+e+'<\/'+'a'+'>');
<li>Updated GnuPG to v1.4.19 (2015-02-27), compiled with GCC 4.9.2<br /></li>
<li>Fixed potential deadlock in Cue Sheet import dialog when &quot;Browse...&quot; button is clicked<br /></li>
<li>Fixed function to restore the default Temp folder, if custom Temp folder doesn't exist anymore<br /></li>
<li>Enable the embedding of cover artwork for Opus encoder (opusenc), using the <code>--picture</code> option<br /></li>
<li>Some installer improvements have been implemented (especially in &quot;update&quot; mode)<br /></li>
<li>Full support for Windows 10 RTM (Build #10240)</li>
</ul>

View File

@ -19,6 +19,7 @@
* Updated GnuPG to v1.4.19 (2015-02-27), compiled with GCC 4.9.2
* Fixed potential deadlock in Cue Sheet import dialog when "Browse..." button is clicked
* Fixed function to restore the default Temp folder, if custom Temp folder doesn't exist anymore
* Enable the embedding of cover artwork for Opus encoder (opusenc), using the ``--picture`` option
* Some installer improvements have been implemented (especially in "update" mode)
* Full support for Windows 10 RTM (Build #10240)

View File

@ -3545,12 +3545,12 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation type="unfinished"></translation>
</message>

View File

@ -3528,12 +3528,12 @@
<translation>Update wird heruntergeladen, bitte gedulden Sie sich...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>Update ist bereit zur Installtion. Programm wird beendet...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>Update fehlgeschlagen. Bitte versuchen Sie es noch einmal!</translation>
</message>

View File

@ -3528,12 +3528,12 @@
<translation>Descargando actualización, espere por favor...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>Actualización lista para instalar. La aplicación se cerrará...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>Actualización fallida. ¡Por favor, vuelva a intentarlo o descárguelo manualmente!</translation>
</message>

View File

@ -3538,12 +3538,12 @@ Ouvrir le dossier récursivement...</translation>
<translation>La mise à jour est en cours de téléchargement, veuillez patienter...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>La mise à jour est prête à être installée. L&apos;application doit se fermer...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>La mise à jour a échoué. Veuillez essayer à nouveau ou télécharger manuellement !</translation>
</message>

View File

@ -3545,12 +3545,12 @@
<translation>A frissítés letöltése folyamatban van, kis türelmét kérjük...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>A frissítés készen áll a telepítésre. Az alkalmazás most kilép...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>A frissítés sikertelen volt. Próbálja újra, vagy töltse le manuálisan!</translation>
</message>

View File

@ -3528,12 +3528,12 @@
<translation type="unfinished">Aggiornamento in scaricamento, per favore sii paziente...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation type="unfinished">Aggiornamento pronto per l&apos;installazione. L&apos;Applicazione si chiuderà...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation type="unfinished">Aggiornamento Fallito. Per favore prova ancora o aggiorna manualmente!</translation>
</message>

View File

@ -3509,12 +3509,12 @@
<translation type="unfinished"> . ...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation type="unfinished"> . ...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation type="unfinished"> . !</translation>
</message>

View File

@ -3582,12 +3582,12 @@
<translation type="unfinished">Pobieranie aktualizacji w toku, prosze czekać...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation type="unfinished">Aktualizacja gotowa do instalacji. Teraz program zostanie zamknięty...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation type="unfinished">Aktualizacja zakończona niepowodzeniem. Prosze spróbować ponownie lub zainstalować ręcznie!</translation>
</message>

View File

@ -3554,12 +3554,12 @@
<translation>Скачиваю обновление...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>Обновление готово к установке. Завершение приложения...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translatorcomment>Фак май майнд</translatorcomment>
<translation>Не могу установить обновление в автоматическом режиме. Повторите попытку или установите обновление вручную!</translation>

View File

@ -3565,12 +3565,12 @@
<translation>Uppdatering laddas ner, vänta...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>Uppdatering klar att installeras. Programmet kommer att avslutas...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>Uppdateringen misslyckades. Försök igen, eller ladda ner manuellt!</translation>
</message>

View File

@ -3509,12 +3509,12 @@
<translation>,...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>.退...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>. !</translation>
</message>

View File

@ -3557,12 +3557,12 @@
<translation>Йде завантаження оновлення, будь ласка, зачекайте...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>Оновлення готове до встановлення. Буде здйснено закриття додатку...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation>Збій оновлення. Будь ласка, спробуйте ще раз або завантажте оновлення самостійно!</translation>
</message>

View File

@ -3509,12 +3509,12 @@
<translation>,...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="425"/>
<location filename="../../src/Dialog_Update.cpp" line="426"/>
<source>Update ready to install. Applicaion will quit...</source>
<translation>退...</translation>
</message>
<message>
<location filename="../../src/Dialog_Update.cpp" line="433"/>
<location filename="../../src/Dialog_Update.cpp" line="434"/>
<source>Update failed. Please try again or download manually!</source>
<translation> !</translation>
</message>

View File

@ -34,8 +34,8 @@
#define VER_LAMEXP_MINOR_HI 1
#define VER_LAMEXP_MINOR_LO 2
#define VER_LAMEXP_TYPE Beta
#define VER_LAMEXP_PATCH 3
#define VER_LAMEXP_BUILD 1781
#define VER_LAMEXP_PATCH 4
#define VER_LAMEXP_BUILD 1784
#define VER_LAMEXP_CONFG 1700
///////////////////////////////////////////////////////////////////////////////

View File

@ -82,8 +82,12 @@ const bool AbstractEncoder::needsTimingInfo(void)
//Does this text contain Non-ASCII characters?
bool AbstractEncoder::isUnicode(const QString &original)
{
QString asLatin1 = QString::fromLatin1(original.toLatin1().constData());
return (wcscmp(MUTILS_WCHR(original), MUTILS_WCHR(asLatin1)) != 0);
if(!original.isEmpty())
{
QString asLatin1 = QString::fromLatin1(original.toLatin1().constData());
return (wcscmp(MUTILS_WCHR(original), MUTILS_WCHR(asLatin1)) != 0);
}
return false;
}
//Remove "problematic" characters from tag

View File

@ -201,22 +201,22 @@ bool MP3Encoder::encode(const QString &sourceFile, const AudioFileModel_MetaInfo
bool bUseUCS2 = false;
if(!metaInfo.title().isEmpty() && isUnicode(metaInfo.title())) bUseUCS2 = true;
if(!metaInfo.artist().isEmpty() && isUnicode(metaInfo.artist())) bUseUCS2 = true;
if(!metaInfo.album().isEmpty() && isUnicode(metaInfo.album())) bUseUCS2 = true;
if(!metaInfo.genre().isEmpty() && isUnicode(metaInfo.genre())) bUseUCS2 = true;
if(!metaInfo.comment().isEmpty() && isUnicode(metaInfo.comment())) bUseUCS2 = true;
if(isUnicode(metaInfo.title())) bUseUCS2 = true;
if(isUnicode(metaInfo.artist())) bUseUCS2 = true;
if(isUnicode(metaInfo.album())) bUseUCS2 = true;
if(isUnicode(metaInfo.genre())) bUseUCS2 = true;
if(isUnicode(metaInfo.comment())) bUseUCS2 = true;
if(bUseUCS2) args << "--id3v2-ucs2"; //Must specify this BEFORE "--tt" and friends!
if(!metaInfo.title().isEmpty()) args << "--tt" << cleanTag(metaInfo.title());
if(!metaInfo.artist().isEmpty()) args << "--ta" << cleanTag(metaInfo.artist());
if(!metaInfo.album().isEmpty()) args << "--tl" <<cleanTag( metaInfo.album());
if(!metaInfo.genre().isEmpty()) args << "--tg" << cleanTag(metaInfo.genre());
if(!metaInfo.title().isEmpty()) args << "--tt" << cleanTag(metaInfo.title());
if(!metaInfo.artist().isEmpty()) args << "--ta" << cleanTag(metaInfo.artist());
if(!metaInfo.album().isEmpty()) args << "--tl" << cleanTag( metaInfo.album());
if(!metaInfo.genre().isEmpty()) args << "--tg" << cleanTag(metaInfo.genre());
if(!metaInfo.comment().isEmpty()) args << "--tc" << cleanTag(metaInfo.comment());
if(metaInfo.year()) args << "--ty" << QString::number(metaInfo.year());
if(metaInfo.position()) args << "--tn" << QString::number(metaInfo.position());
if(!metaInfo.cover().isEmpty()) args << "--ti" << QDir::toNativeSeparators(metaInfo.cover());
if(metaInfo.year()) args << "--ty" << QString::number(metaInfo.year());
if(metaInfo.position()) args << "--tn" << QString::number(metaInfo.position());
if(!metaInfo.cover().isEmpty()) args << "--ti" << QDir::toNativeSeparators(metaInfo.cover());
if(!m_configCustomParams.isEmpty()) args << m_configCustomParams.split(" ", QString::SkipEmptyParts);

View File

@ -176,13 +176,15 @@ bool OpusEncoder::encode(const QString &sourceFile, const AudioFileModel_MetaInf
args << QString("--bitrate") << QString::number(qBound(8, (m_configBitrate + 1) * 8, 256));
if(!metaInfo.title().isEmpty()) args << "--title" << cleanTag(metaInfo.title());
if(!metaInfo.artist().isEmpty()) args << "--artist" << cleanTag(metaInfo.artist());
if(!metaInfo.album().isEmpty()) args << "--album" << cleanTag(metaInfo.album());
if(!metaInfo.genre().isEmpty()) args << "--genre" << cleanTag(metaInfo.genre());
if(metaInfo.year()) args << "--date" << QString::number(metaInfo.year());
if(metaInfo.position()) args << "--comment" << QString("tracknumber=%1").arg(QString::number(metaInfo.position()));
if(!metaInfo.title().isEmpty()) args << "--title" << cleanTag(metaInfo.title());
if(!metaInfo.artist().isEmpty()) args << "--artist" << cleanTag(metaInfo.artist());
if(!metaInfo.album().isEmpty()) args << "--album" << cleanTag(metaInfo.album());
if(!metaInfo.genre().isEmpty()) args << "--genre" << cleanTag(metaInfo.genre());
if(metaInfo.year()) args << "--date" << QString::number(metaInfo.year());
if(metaInfo.position()) args << "--comment" << QString("tracknumber=%1").arg(QString::number(metaInfo.position()));
if(!metaInfo.comment().isEmpty()) args << "--comment" << QString("comment=%1").arg(cleanTag(metaInfo.comment()));
if(!metaInfo.cover().isEmpty()) args << "--picture" << QDir::toNativeSeparators(metaInfo.cover());
if(!m_configCustomParams.isEmpty()) args << m_configCustomParams.split(" ", QString::SkipEmptyParts);