LameXP/doc/Manual.html

419 lines
53 KiB
HTML
Raw Normal View History

2014-12-22 14:44:09 +01:00
<!DOCTYPE html>
<html>
<head>
2014-12-22 14:44:09 +01:00
<meta charset="utf-8">
<meta name="generator" content="pandoc">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>LameXP Audio-Encoder Front-End Manual</title>
<style type="text/css">code{white-space: pre;}</style>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style type="text/css">
<!--
body { font-family: "Times New Roman", Times, serif; color: #000000; background-color: #FFFFFF; }
tt, pre, code { font-family: Courier New, Courier, mono; background-color: #EDF3F7; padding: 1px; }
h1:not(:first-child) { margin-top: 2.25em; }
h2 { margin-top: 2.0em; }
h3, h4 { margin-top: 1.75em; }
a { color: #0000BB; text-decoration: none; }
a:visited { color: #0000BB; text-decoration: none; }
a:active { color: #0000FF; text-decoration: none; }
a:hover { color: #0000FF; text-decoration: underline; }
-->
</style>
</head>
<body>
2014-12-22 14:44:09 +01:00
<header>
<h1 class="title">LameXP Audio-Encoder Front-End Manual</h1>
</header>
<nav id="TOC">
<ul>
<li><a href="#introduction"><span class="toc-section-number">1</span> Introduction</a><ul>
<li><a href="#platform-support"><span class="toc-section-number">1.1</span> Platform Support</a></li>
<li><a href="#output-formats-encoders"><span class="toc-section-number">1.2</span> Output Formats (Encoders)</a></li>
<li><a href="#input-formats-decoders"><span class="toc-section-number">1.3</span> Input Formats (Decoders)</a></li>
</ul></li>
<li><a href="#leagl-information"><span class="toc-section-number">2</span> Leagl Information</a><ul>
<li><a href="#third-party-software"><span class="toc-section-number">2.1</span> Third-party Software</a></li>
<li><a href="#license-terms"><span class="toc-section-number">2.2</span> License Terms</a></li>
</ul></li>
<li><a href="#install-instructions"><span class="toc-section-number">3</span> Install Instructions</a><ul>
<li><a href="#install-the-lamexp-software"><span class="toc-section-number">3.1</span> Install the LameXP Software</a><ul>
<li><a href="#setup-program"><span class="toc-section-number">3.1.1</span> Setup Program</a></li>
<li><a href="#zip-package"><span class="toc-section-number">3.1.2</span> ZIP Package</a></li>
</ul></li>
<li><a href="#portable-mode"><span class="toc-section-number">3.2</span> Portable Mode</a><ul>
<li><a href="#enable-the-portable-mode"><span class="toc-section-number">3.2.1</span> Enable the Portable Mode</a></li>
<li><a href="#disable-the-portable-mode"><span class="toc-section-number">3.2.2</span> Disable the Portable Mode</a></li>
</ul></li>
<li><a href="#install-the-aac-encoder"><span class="toc-section-number">3.3</span> Install the AAC Encoder</a><ul>
<li><a href="#nero-digital-aac-encoder"><span class="toc-section-number">3.3.1</span> Nero Digital AAC Encoder</a></li>
<li><a href="#qaac-apple-aac-encoder"><span class="toc-section-number">3.3.2</span> QAAC (Apple AAC) Encoder</a></li>
2014-12-22 14:44:09 +01:00
</ul></li>
</ul></li>
<li><a href="#tutorial-step-by-step-guide"><span class="toc-section-number">4</span> Tutorial (Step-by-Step Guide)</a><ul>
<li><a href="#source-files"><span class="toc-section-number">4.1</span> Source Files</a></li>
<li><a href="#output-directory"><span class="toc-section-number">4.2</span> Output Directory</a></li>
<li><a href="#compression-settings"><span class="toc-section-number">4.3</span> Compression Settings</a></li>
<li><a href="#processing"><span class="toc-section-number">4.4</span> Processing</a></li>
</ul></li>
<li><a href="#help-support"><span class="toc-section-number">5</span> Help &amp; Support</a><ul>
<li><a href="#download-mirrors"><span class="toc-section-number">5.1</span> Download Mirrors</a></li>
<li><a href="#diagnostic-output"><span class="toc-section-number">5.2</span> Diagnostic Output</a></li>
<li><a href="#bugtracker"><span class="toc-section-number">5.3</span> Bugtracker</a></li>
<li><a href="#support-forum"><span class="toc-section-number">5.4</span> Support Forum</a></li>
</ul></li>
<li><a href="#developer-center"><span class="toc-section-number">6</span> Developer Center</a><ul>
<li><a href="#source-code-access"><span class="toc-section-number">6.1</span> Source Code Access</a></li>
<li><a href="#build-prerequisites"><span class="toc-section-number">6.2</span> Build Prerequisites</a></li>
<li><a href="#qt-as-static-libraries"><span class="toc-section-number">6.3</span> Qt as Static Libraries</a></li>
</ul></li>
<li><a href="#f.a.q.-frequently-asked-questions"><span class="toc-section-number">7</span> F.A.Q. (Frequently Asked Questions)</a></li>
2014-12-22 14:44:09 +01:00
</ul>
</nav>
<h1 id="introduction"><span class="header-section-number">1</span> Introduction</h1>
<p>LameXP is a graphical user-interface (front-end) for various of audio encoders: It allows you to convert your audio files from one audio format to another one in the most simple way. Despite its name, LameXP is <strong>not</strong> only a front-end for the LAME MP3 encoder, but supports a wide range of <em>output formats</em>, including MP3, Ogg Vorbis, Opus, AAC/MP4, FLAC, AC-3 and Wave Audio. The number of supported <em>input formats</em> is even bigger! Furthermore LameXP <strong>not</strong> only runs on Windows XP, but also on Windows 7, 8 and 10 as well as many other operating systems.</p>
2014-12-22 14:44:09 +01:00
<p><img src="http://lamexp.sourceforge.net/lamexp.png" alt="LameXP" /></p>
<p>Since all the encoders and decoders that are used by the LameXP software are already <em>built-in</em> (with one exception), you do <strong>not</strong> need to install any additional software, such as &quot;Codecs&quot;, &quot;Filters&quot; or &quot;Plug-ins&quot;, on your computer. Everything works &quot;out of the box&quot;. You can even use LameXP as a &quot;portable&quot; application, i.e. you can run LameXP directly off your USB stick. Moreover, LameXP was designed for <em>batch processing</em>. This means that you can convert a huge number of audio files, e.g. a complete album or even your entire music collection, in just a single step. At the same time, LameXP is able to process several audio files <em>concurrently</em>, so it can take full advantage of modern <em>multi-core</em> processors! However, LameXP is <strong>not</strong> only optimized for speed, it also provides excellent sound quality by using the most sophisticated audio encoders currently available.</p>
<p>In addition to that, LameXP provides full support for <em>meta information</em>, including cover artwork. So when converting your audio files with LameXP, any existing meta information will be retained to the highest possible extent. Of course, there also is an easy-to-use <em>meta-tag editor</em> for adding new meta information or managing the existing meta information. On top of it all, LameXP provides full <em>Unicode support</em>, for meta information as well as file names, thus problems with &quot;intentional&quot; character sets are avoided. Likewise, thanks to our <em>translators</em>, the user-interface of the LameXP software is available in many different languages, including English, German, Spanish and Chinese. Last but not least, LameXP supports a number of post-processing filters, including sample rate conversion, normalization (gain adjustment), tone adjustment as well as down-mixing.</p>
2014-12-22 14:44:09 +01:00
<h2 id="platform-support"><span class="header-section-number">1.1</span> Platform Support</h2>
<p><strong>Tier #1:</strong> LameXP is currently being developed on the following platforms:</p>
<ul>
<li>Microsoft Windows 8.1, 32-Bit and 64-Bit editions<br /></li>
<li>Microsoft Windows 7 with Service Pack 1, 32-Bit and 64-Bit editions<br /></li>
<li>Microsoft Windows XP with Service Pack 3 <strong>(see remarks)</strong></li>
2014-12-22 14:44:09 +01:00
</ul>
<p><strong>Tier #2:</strong> The following platforms should work too, but aren't tested extensively:</p>
<ul>
<li>Microsoft Windows 10, 32-Bit and 64-Bit editions<br /></li>
<li>Microsoft Windows 8.0, 32-Bit and 64-Bit editions<br /></li>
<li>Microsoft Windows Vista with Service Pack 2, 32-Bit and 64-Bit editions<br /></li>
<li>Microsoft Windows XP x64 Edition with Service Pack 2<br /></li>
<li>Microsoft Windows Server 2008 with Service Pack 2<br /></li>
<li>Microsoft Windows Server 2008 R2 with Service Pack 1<br /></li>
<li>GNU/Linux (e.g. Ubuntu 12.04), using Wine v1.4+</li>
2014-12-22 14:44:09 +01:00
</ul>
<p>The following <em>legacy</em> platforms are <strong>not</strong> actively supported any longer:</p>
2014-12-22 14:44:09 +01:00
<ul>
<li>Microsoft Windows 2000<br /></li>
<li>Microsoft Windows NT 4.0<br /></li>
<li>Microsoft Windows Millennium Edition<br /></li>
<li>Microsoft Windows 98<br /></li>
<li>Microsoft Windows 95</li>
</ul>
<p> <br /><em>Remarks:</em> Windows XP has reached &quot;end of life&quot; on April 8th, 2014. This means that Microsoft has stopped all support for Windows XP. Thus <strong>no</strong> updates or bugfixes are made available to regular Windows XP users since that date, <strong>not</strong> even security fixes! Thus, all the security vulnerabilities that have been discovered <em>after</em> the deadline and all the security vulnerabilities that are going to be discovered in the future will <em>persists</em> forever! Consequently, using Windows XP has become a severe security risk, and the situation is only going to get worse. While LameXP will continue to support Windows XP (note that Service Pack 3 is required!) for the foreseeable future, we <em>highly</em> recommend everybody to update to a less antiquated system now. Windows XP support will be discontinued in a future version, when most users have migrated to a contemporary system.</p>
2014-12-22 14:44:09 +01:00
<h2 id="output-formats-encoders"><span class="header-section-number">1.2</span> Output Formats (Encoders)</h2>
<p>Currently the following output formats (audio encoders) are supported by LameXP:</p>
<ul>
<li><a href="http://www.vorbis.com/">Ogg Vorbis</a> by <a href="http://www.xiph.org/">Xiph.org</a>, using the OggEnc2/libvorbis encoder with <a href="http://www.xiph.org/">aoTuV</a> [built-in]<br /></li>
<li><a href="http://www.opus-codec.org/">Opus Interactive Audio Codec</a> by Xiph.org and Mozilla, using the <a href="http://git.xiph.org/?p=opus-tools.git;a=summary">Opus-Tools</a> [built-in]<br /></li>
<li><a href="http://en.wikipedia.org/wiki/MP3">MPEG Audio-Layer III (MP3)</a>, using the <a href="http://lame.sourceforge.net/">LAME</a> encoder [built-in]<br /></li>
<li><a href="http://en.wikipedia.org/wiki/Advanced_Audio_Coding">Advanced Audio Coding (AAC)</a>, using <a href="http://www.nero.com/deu/company/about-nero/nero-aac-codec.php">Nero AAC</a> or <a href="https://sites.google.com/site/qaacpage/">QAAC</a> encoder [<em>separate download</em>]<br /></li>
<li><a href="https://xiph.org/flac/">Free Lossless Audio Codec (FLAC)</a> [built-in]<br /></li>
<li><a href="http://www.atsc.org/cms/index.php/standards/standards/48-atsc-a52-standard">ATSC A/52 (aka &quot;AC-3&quot;)</a>, using the <a href="http://aften.sourceforge.net/">Aften</a> encoder [built-in]<br /></li>
<li><a href="http://www.monkeysaudio.com/">Monkey's Audio (APE)</a>, lossless audio compression [built-in]<br /></li>
<li>DCA, using the <a href="https://gitorious.org/dtsenc/dtsenc">DCA Enc</a> encoder software (still experimental) [built-in]<br /></li>
<li>Uncompressed PCM / Waveform Audio File (WAV/RIFF)</li>
</ul>
<h2 id="input-formats-decoders"><span class="header-section-number">1.3</span> Input Formats (Decoders)</h2>
<p>Currently the following input formats (audio decoders) are supported by LameXP:</p>
<ul>
<li>AC-3 (ATSC A/52), using Valib decoder [built-in]<br /></li>
<li>Advanced Audio Coding (AAC), using FAAD decoder [built-in]<br /></li>
<li>Apple Lossless (ALAC) [built-in]<br /></li>
<li>Apple/SGI AIFF [built-in]<br /></li>
<li>Avisynth, audio only [requires Avisynth 2.5.x to be installed]<br /></li>
<li>Digital Theater System, using Valib decoder [built-in]<br /></li>
<li>Free Lossless Audio Codec (FLAC) [built-in]<br /></li>
<li>Microsoft ADPCM [built-in]<br /></li>
<li>Monkey's Audio (APE) [built-in]<br /></li>
<li>MPEG Audio-Layer I (MP1), using mpg123 decoder [built-in]<br /></li>
<li>MPEG Audio-Layer II (MP2), using mpg123 decoder [built-in]<br /></li>
<li>MPEG Audio-Layer III (MP3), using mpg123 decoder [built-in]<br /></li>
<li>Musepack [built-in]<br /></li>
<li>Opus Audio Codec [built-in]<br /></li>
<li>Shorten [built-in]<br /></li>
<li>Speex [built-in]<br /></li>
<li>Sun/NeXT Au [built-in]<br /></li>
<li>The True Audio (TTA) [built-in]<br /></li>
<li>Uncompressed PCM / Waveform Audio File (WAV/RIFF) [built-in]<br /></li>
<li>WavPack Hybrid Lossless Audio [built-in]<br /></li>
<li>Windows Media Audio (WMA), using wma2wav [built-in]</li>
</ul>
<h1 id="leagl-information"><span class="header-section-number">2</span> Leagl Information</h1>
<p>The LameXP software was developed, from the scratch, by LoRd_MuldeR <script type="text/javascript">
<!--
h='&#x47;&#x4d;&#88;&#46;&#100;&#x65;&#62;';a='&#64;';n='&#60;&#x4d;&#x75;&#108;&#100;&#x65;&#82;&#50;';e=n+a+h;
document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'&lt;MuldeR2@GMX.de&gt;'+'<\/'+'a'+'>');
// -->
</script><noscript>&#60;&#x4d;&#x75;&#108;&#100;&#x65;&#82;&#50;&#64;&#x47;&#x4d;&#88;&#46;&#100;&#x65;&#62;&#32;&#40;&#60;&#x4d;&#x75;&#108;&#100;&#x65;&#82;&#50;&#32;&#x61;&#116;&#32;&#x47;&#x4d;&#88;&#32;&#100;&#x6f;&#116;&#32;&#100;&#x65;&#62;&#x29;</noscript>. Consequently, all copyrights on the LameXP software exclusively belong to LoRd_MuldeR. The right to use, modify and redistribute the LameXP software <em>according to the license terms</em> is granted to everybody. Please see below for license details! If you want to use the LameXP software in a way that is <em>not</em> covered by the license terms, e.g. if you want to include the LameXP software (or parts of it) in a <em>proprietary</em> software, written permission by LoRd_MuldeR is required.</p>
<p>More OpenSource projects by LoRd_MuldeR can be found at <a href="http://muldersoft.com/">http://muldersoft.com/</a> and <a href="https://github.com/lordmulder">https://github.com/lordmulder</a>. Please do <strong>not</strong> send e-mail to LoRd_MuldeR directly, if the problem or suggestion can be discussed on the support forums or on the issue tracker!</p>
<h2 id="third-party-software"><span class="header-section-number">2.1</span> Third-party Software</h2>
<p>It has to be noticed that LameXP uses a number of <em>third-party</em> applications and libraries. The copyright on these third-party tools belongs to the individual authors. <em>All</em> third-party tools that are included in the official distribution packages of LameXP are distributed in accordance with the respective software license. For legal reasons, some of the third-party tools can <em>not</em> be redistributed along with LameXP and therefore need to be obtained separately. For more details on the third-party tools that are used by the LameXP software, please refer to the &quot;Third-party software&quot; tab in the &quot;About&quot; dialogue. Moreover, various people have contributed translations to the LameXP project. These translation are redistributed with permission of the respective contributor. For more information about our contributors, please refer to the &quot;Contributors&quot; tab in the &quot;About&quot; dialogue.</p>
<h2 id="license-terms"><span class="header-section-number">2.2</span> License Terms</h2>
<p>LameXP is <a href="http://en.wikipedia.org/wiki/Free_software_movement"><em>free software</em></a>, released under the terms of the <a href="http://www.gnu.org/licenses/gpl-2.0.html"><em>GNU General Public License</em> (GPL), version 2</a>. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. In contrast, the GPL is designed to guarantee your freedom to share and change all versions of the software. In other words, the GPL ensures that free software will remain free for all of its users. LameXP adds some additional terms in order to keep your computer safe from unwanted software. See the <em>GNU General Public License</em> for more details!</p>
<pre><code>LameXP - Audio Encoder Front-End
Copyright (C) 2004-2014 LoRd_MuldeR &lt;MuldeR2@GMX.de&gt;
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</code></pre>
<p> <br /><strong>Addendum:</strong> When distributing binaries of the LameXP software, it is <em>strictly forbidden</em> to bundle the LameXP program files and/or the LameXP installation program with any kind of <em>Adware</em>, <em>Spyware</em> or <em>PUP (potentially unwanted program)</em>, including, but not limited to, any downloaders, dialers, browser toolbars/extensions or restricted shareware/demo programs. It is, however, perfectly legitimate to bundle LameXP with other <em>OpenSource</em> programs, according to the OSI (Open Source Initiative). Finally, it is also legitimate to bundle LameXP with <em>commercial software</em>, as long as that software does <em>not</em> meet the criteria of <em>Adware</em>, <em>Spyware</em> or <em>PUP</em>. If you bundle the LameXP software with another software, you are <em>required</em> to make sure that the user is provided with an easy way to install and start the LameXP software separately from that other software.</p>
<h1 id="install-instructions"><span class="header-section-number">3</span> Install Instructions</h1>
<p>This chapter explains how to install the LameXP software on your computer. If LameXP has already been installed on your computer, you may skip this chapter.</p>
<h2 id="install-the-lamexp-software"><span class="header-section-number">3.1</span> Install the LameXP Software</h2>
<p>Distribution packages of the LameXP software is provided in two different flavours: a self-running <strong>setup program</strong> and a <strong>ZIP package</strong>. For regular users, using the <em>setup program</em> is highly recommended!</p>
<h3 id="setup-program"><span class="header-section-number">3.1.1</span> Setup Program</h3>
<p>In order to start the installation process, simply double-click on the downloaded LameXP <strong>setup program</strong>, e.g. <code>LameXP.yyyy-mm-dd.Release-Static.Build-xxxx.exe</code>.</p>
<p><em>Note:</em> Shortly after launching the setup program, an <a href="http://en.wikipedia.org/wiki/User_Account_Control">UAC</a> (User Access Control) dialogue may appear. This is a standard Windows security feature, so don't worry! You have to choose &quot;Yes&quot;, if you wish to continue the installation process.</p>
<p><img src="img/lamexp/setup_1a.png" alt="Figure" /></p>
<p> <br />Now simply follow the instructions of the setup wizard, which will guide you through the installation process…</p>
<p><em>Note:</em> Please do <strong>not</strong> change the &quot;Destionation Folder&quot;, unless you know exactly what you are doing. The &quot;Destionation Folder&quot; cannot be changed, when <em>upgrading</em> an existing LameXP installation.</p>
<p><img src="img/lamexp/setup_1b.png" alt="Figure" /></p>
<p> <br />Congratulation, LameXP has been installed successfully on your computer!</p>
<p><em>Note:</em> If you keep the &quot;Run LameXP …&quot; option enabled and click on the &quot;Finish&quot; button, the LameXP software will be launched immediately.</p>
<p><img src="img/lamexp/setup_1c.png" alt="Figure" /></p>
<h3 id="zip-package"><span class="header-section-number">3.1.2</span> ZIP Package</h3>
<p>If you decided for the <strong>ZIP package</strong>, you need to open the downloaded ZIP file, e.g. <code>LameXP.yyyy-mm-dd.Release-Static.Build-xxxx.zip</code>, in your favourite file archive software (we recommend using <a href="http://www.7-zip.org/">7-Zip</a> or <a href="http://www.rarlab.com/download.htm">WinRAR</a>).</p>
<p><img src="img/lamexp/setup_2a.png" alt="Figure" /></p>
<p> <br />This step may be slightly different, depending on what file archive software (e.g. 7-Zip or WinRAR) you are using. Select <strong>all</strong> files in the LameXP ZIP archive and <em>extract</em> them to a new/empty directory of your choice.</p>
<p><em>Note:</em> It is very important that you have write-access to the chosen destination directory. So make sure that you choose a directory where the required access rights are granted!</p>
<p><img src="img/lamexp/setup_2b.png" alt="Figure" /></p>
<p> <br />Congratulation, LameXP has been installed successfully on your computer! Now double-click on the <code>LameXP.exe</code> program file in order to launch the application!</p>
<p><img src="img/lamexp/setup_2c.png" alt="Figure" /></p>
<h2 id="portable-mode"><span class="header-section-number">3.2</span> Portable Mode</h2>
<p>First of all, it is important to note that there is <strong>no</strong> such thing as a <em>separate</em> &quot;portable version&quot; or &quot;portable edition&quot; of the LameXP software. Instead, <strong>all</strong> versions of the LameXP software always <em>are</em> &quot;portable&quot; in the sense that the LameXP software is <em>fully self-contained</em> and thus <strong>no</strong> additional dependencies (libraries, frameworks, codecs or whatsoever) need to be installed on the computer separately. Or, in other words, the LameXP software is designed to work &quot;out of the box&quot;. And this applies regardless of whether you choose the setup program or the ZIP package!</p>
<p>Nonetheless, the LameXP software supports a so-called &quot;portable mode&quot;, which can be enabled or disabled at any time. By default, i.e. when the &quot;portable mode&quot; is <strong>not</strong> enabled, LameXP will store all of its configuration files in the current user's <a href="http://en.wikipedia.org/wiki/Environment_variable#Windows"><code>%APPDATA%</code></a> directory. This is the correct way of storing <em>user-specific</em> configuration files on a modern multi-user operating system. Some users, however, may wish to use LameXP as a <em>portable application</em>. For example, they may wish to run the LameXP software directly off an USB flash drive and do that on many <em>different</em> machines. In this particular situation, storing the configuration files in the <em>same</em> location where the LameXP program file resides (e.g. on the USB flash drive), instead of the local <code>%APPDATA%</code> directory, may come in handy! And that is exactly what LameXP does when the &quot;portable mode&quot; is <em>enabled</em>.</p>
<h3 id="enable-the-portable-mode"><span class="header-section-number">3.2.1</span> Enable the Portable Mode</h3>
<p>If you fully understand what the consequences of the &quot;portable mode&quot; are and still want to <em>enable</em> this mode, then simply <strong>rename</strong> the LameXP program file form <code>LameXP.exe</code> to <code>LameXP-Portable.exe</code>. You must exit LameXP, before you can rename the program file!</p>
<p><em>Note:</em> By default, the LameXP installation directory is either <code>C:\Program Files (x86)\MuldeR\LameXP</code> or <code>C:\Program Files\MuldeR\LameXP</code>. However, this can be changed by the user during the setup process.</p>
<p><img src="img/lamexp/setup_3a.png" alt="Figure" /></p>
2014-12-27 00:08:56 +01:00
<h4 id="warning"><span class="header-section-number">3.2.1.1</span> Warning</h4>
<p>While the &quot;portable mode&quot; is in effect, it is the <em>user's</em> responsibility to ensure that LameXP will be provided with the proper access rights to save/load its configuration files to/from the LameXP program directory!</p>
<p>Note that the directories <code>C:\Program Files (x86)</code> and <code>C:\Program Files</code> usually are &quot;protected&quot; by the operating system, so LameXP may <strong>not</strong> be able to write into these directories.</p>
<h3 id="disable-the-portable-mode"><span class="header-section-number">3.2.2</span> Disable the Portable Mode</h3>
<p>If you wish to <em>disable</em> the &quot;portable mode&quot; again, then all you need to do is <strong>renaming</strong> the LameXP program file form <code>LameXP-Portable.exe</code> back to <code>LameXP.exe</code>. You must exit LameXP, before you can rename the program file!</p>
<p><em>Note:</em> After the &quot;portable mode&quot; has been <em>disabled</em>, any configurations files that may have been created in the LameXP installation directory will <strong>no</strong> longer be recognized. Therefore, you can delete these files safely…</p>
<h2 id="install-the-aac-encoder"><span class="header-section-number">3.3</span> Install the AAC Encoder</h2>
2014-12-23 15:34:53 +01:00
<p>For legal reasons, the AAC (Advanced Audio Coding) encoder can <strong>not</strong> be included in the official LameXP distribution packages. Therefore, you need to download and install the AAC encoder <em>manually</em>. Don't worry, it's easy!</p>
<p>LameXP can use the <strong>Nero Digital</strong> AAC encoder as well as the <strong>QAAC</strong> (Apple iTunes/QuickTime) encoder. This chapter describes how to set up one of these AAC encoders for use with the LameXP software.</p>
<p><em>Note:</em> If you are uncertain which AAC encoder to choose, please be aware that the QAAC encoder may produce slightly better sound quality, according to <a href="http://listening-tests.hydrogenaud.io/igorc/aac-96-a/results.html">listening tests</a>, while the Nero Digital encoder is less hassle to install.</p>
<h3 id="nero-digital-aac-encoder"><span class="header-section-number">3.3.1</span> Nero Digital AAC Encoder</h3>
<p>First of all, you need to download the Nero AAC encoder from the official Nero Digital web-site. The download is free of charge:</p>
<ul>
<li><a href="http://www.nero.com/eng/company/about-nero/nero-aac-codec.php">http://www.nero.com/eng/company/about-nero/nero-aac-codec.php</a><br /></li>
<li><a href="http://www.free-codecs.com/download/Nero_AAC_Codec.htm">http://www.free-codecs.com/download/Nero_AAC_Codec.htm</a></li>
</ul>
<p> <br />Simply scroll down, click the &quot;I agree&quot; button, and enter <code>user@example.com</code> when asked for an e-mail address. Finally, click the &quot;Download&quot; button, which initates the download of the required <code>NeroAACCodec-1.5.1.zip</code> file.</p>
<p><em>Note:</em> Although the ZIP file is called <code>NeroAACCodec-1.5.1.zip</code>, it actually contains version <strong>1.5.4.0</strong> of the Nero AAC encoder software. Please check the included <code>changelog.txt</code> to verify this!</p>
<p><img src="img/lamexp/setup_4a.png" alt="Figure" /></p>
<p> <br />Now open the downloaded ZIP file with your favourite file archive software (we recommend using <a href="http://www.7-zip.org/">7-Zip</a> or <a href="http://www.rarlab.com/download.htm">WinRAR</a>) and navigate to the &quot;win32&quot; sub-directory.</p>
<p><img src="img/lamexp/setup_4b.png" alt="Figure" /></p>
<p> <br />Finally, <em>extract</em> all the three files <code>neroAacDec.exe</code>, <code>neroAacEnc.exe</code> and <code>neroAacTag.exe</code> into the LameXP installation directory. That is the directory where your LameXP executable file, i.e. the <code>LameXP.exe</code>, is located.</p>
<p><em>Note:</em> By default, the LameXP installation directory is either <code>C:\Program Files (x86)\MuldeR\LameXP</code> or <code>C:\Program Files\MuldeR\LameXP</code>. However, this can be changed by the user during the setup process.</p>
<p><img src="img/lamexp/setup_4c.png" alt="Figure" /></p>
<p> <br />Once the required Nero AAC files have been put into the proper place, simply <em>restart</em> LameXP in order to enable the AAC encoding support!</p>
<h3 id="qaac-apple-aac-encoder"><span class="header-section-number">3.3.2</span> QAAC (Apple AAC) Encoder</h3>
<p>Getting the Apple/QuickTime AAC encoder ready involves <em>two</em> separate steps: In the first place we will install the QAAC encoder, and in the second place we will install the Apple AAC encoder libraries.</p>
<h4 id="install-qaac-encoder"><span class="header-section-number">3.3.2.1</span> Install QAAC Encoder</h4>
<p>First of all, you need to download the <a href="https://github.com/nu774/qaac">QAAC</a> application, which provides a CLI font-end to the Apple/QuickTime AAC encoder. QAAC is provided as an <em>Add-in</em> for LameXP and is available from the following locations:</p>
<ul>
<li><a href="http://sourceforge.net/projects/lamexp/files/Miscellaneous/Add-ins/qaac/">http://sourceforge.net/projects/lamexp/files/Miscellaneous/Add-ins/qaac/</a><br /></li>
<li><a href="http://muldersoft.com/misc/lamexp/add-ins/qaac/">http://muldersoft.com/misc/lamexp/add-ins/qaac/</a></li>
</ul>
<p> <br />Now open the downloaded ZIP file, e.g. <code>LameXP.qaac-addin.yyyy-mm-dd.zip</code>, with your favourite file archive software (we recommend using <a href="http://www.7-zip.org/">7-Zip</a> or <a href="http://www.rarlab.com/download.htm">WinRAR</a>) to find the required QAAC program files.</p>
<p><em>Note:</em> The LameXP software generally expects the <strong>latest</strong> version of the QAAC add-in; and the QAAC add-in is designed to work with the <strong>latest</strong> version of the LameXP software. Make sure your files are up-to-date!</p>
<p><img src="img/lamexp/setup_5a.png" alt="Figure" /></p>
<p> <br />Please <em>extract</em> all the three files, the program <code>qaac.exe</code> plus its DLLs <code>libsoxr.dll</code> and <code>libsoxconvolver.dll</code>, into the LameXP installation directory. That is the directory where your LameXP executable file, i.e. the <code>LameXP.exe</code>, is located.</p>
<p><em>Note:</em> By default, the LameXP installation directory is either <code>C:\Program Files (x86)\MuldeR\LameXP</code> or <code>C:\Program Files\MuldeR\LameXP</code>. However, this can be changed by the user during the setup process.</p>
<p><img src="img/lamexp/setup_5b.png" alt="Figure" /></p>
<h4 id="install-apple-aac-encoder-libraries"><span class="header-section-number">3.3.2.2</span> Install Apple AAC Encoder Libraries</h4>
<p>Next, the actual Apple/QuickTime AAC encoder libraries, which are part of the so-called &quot;Apple Application Support&quot; package, need to be installed on your computer. QAAC can <em>not</em> work without these libraries!</p>
<p>The required &quot;Apple Application Support&quot; package is included, for example, in the official setup packages of <em>QuickTime</em> or <em>iTunes</em> for Windows, which can be obtained from the Apple web-site free of charge:</p>
<ul>
<li><a href="https://www.apple.com/quicktime/download/">https://www.apple.com/quicktime/download/</a><br /></li>
<li><a href="https://www.apple.com/itunes/download/">https://www.apple.com/itunes/download/</a></li>
</ul>
<p> <br />Since you usually do <strong>not</strong> want to <em>install</em> the complete QuickTime (or iTunes) software on your computer, please only <em>download</em> the QuickTime (or iTunes) setup package, but do <strong>not</strong> actually <em>run</em> the installer!</p>
<p>Instead, open the QuickTimer setup program, i.e. <code>QuickTimeInstaller.exe</code>, with your favourite file archive software (we recommend using <a href="http://www.7-zip.org/">7-Zip</a> or <a href="http://www.rarlab.com/download.htm">WinRAR</a>) and <em>extract</em> the required <code>AppleApplicationSupport.msi</code> package.</p>
<p><img src="img/lamexp/setup_5c.png" alt="Figure" /></p>
<p> <br />After the &quot;Apple Application Support&quot; setup package has been extracted, you can launch it by double-clicking on the <code>AppleApplicationSupport.msi</code> file. Then simply follow the installer's instructions.</p>
<p><img src="img/lamexp/setup_5d.png" alt="Figure" /></p>
<p> <br />Once the QAAC encoder as well as the Apple AAC encoder libraries (&quot;Apple Application Support&quot;) have been installed properly, simply <em>restart</em> LameXP in order to enable the AAC encoding support!</p>
<p><em>Note:</em> You may run <code>qaac.exe --check</code> from the <a href="http://en.wikipedia.org/wiki/Cmd.exe">command prompt</a> to ensure that QAAC has been set up correctly. Expected output is <code>qaac 2.xx, CoreAudioToolbox x.x.x.x</code>.</p>
<h1 id="tutorial-step-by-step-guide"><span class="header-section-number">4</span> Tutorial (Step-by-Step Guide)</h1>
<p>This tutorial will teach you, step by step, how to convert your audio files using the LameXP software. The tutorial assumes that LameXP is already installed on your computer.</p>
<h2 id="source-files"><span class="header-section-number">4.1</span> Source Files</h2>
<p>First of all, you need to add all <strong>source files</strong> that you want to convert. So switch to the &quot;Source Files&quot; tab, just in case that tab is not active already, and then click the &quot;Add File(s)&quot; button.</p>
<p><img src="img/lamexp/tutorial_1a.png" alt="Figure" /></p>
<p> <br />This will bring up a standard file selection dialogue. Now simply select the files that you want to add and click the &quot;Open&quot; button. You can repeat this step multiple times, e.g. to add files from different directories.</p>
<p><img src="img/lamexp/tutorial_1b.png" alt="Figure" /></p>
<p> <br />All files you have added, so far, will show up in the list. You can click the &quot;Remove&quot; button to remove a single file from the list or &quot;Clear&quot; to remove them all. Click the &quot;Show details&quot; button to show details about a file.</p>
<p><img src="img/lamexp/tutorial_1c.png" alt="Figure" /></p>
<p> <br /><em>Did you know?</em> Files can also be added via <a href="http://en.wikipedia.org/wiki/Drag_and_drop">Drag &amp; Drop</a>. Just grab the files that you want to add in your Explorer window and drop them onto the LameXP main window (or onto the LameXP &quot;dropbox&quot; widget).</p>
<h2 id="output-directory"><span class="header-section-number">4.2</span> Output Directory</h2>
<p>Next, you need to choose the <strong>output directory</strong>, i.e. the directory where the converted files will be saved. Switch to the &quot;Output Directory&quot; tab and choose the desired output directory from the directory tree view.</p>
<p><em>Note:</em> There are several quick navigation buttons below, which will allow you to jump quickly to your personal &quot;Home&quot; folder, &quot;Desktop&quot; folder and &quot;Music&quot; folder, respectively.</p>
<p><img src="img/lamexp/tutorial_2a.png" alt="Figure" /></p>
<p> <br />Sometimes you may wish to store the converted files in a <em>new</em> (sub-)folder. In this case, simply click the &quot;Make New Folder&quot; button, enter the desired folder name and hit the &quot;OK&quot; button.</p>
<p><img src="img/lamexp/tutorial_2b.png" alt="Figure" /></p>
<p> <br />The new folder is going to be created inside the current directory and will be selected automatically. You can repeat this step multiple times in order to created nested sub-folders.</p>
<p><img src="img/lamexp/tutorial_2c.png" alt="Figure" /></p>
<p> <br /><em>Did you know?</em> If you enable the &quot;Save output files in the same directory where the input file is located&quot; option, each output file will be saved to the same location where the corresponding source file resides.</p>
<h2 id="compression-settings"><span class="header-section-number">4.3</span> Compression Settings</h2>
<p>Finally, you need to choose your <strong>compression settings</strong>. First, and most important, you must decide for an output <em>audio format (encoder)</em>. Depending on your needs and preferences, you can choose between <a href="http://en.wikipedia.org/wiki/MP3">MP3</a>, <a href="http://en.wikipedia.org/wiki/Vorbis">Ogg/Vorbis</a>, <a href="http://en.wikipedia.org/wiki/Opus_%28audio_format%29">Opus</a>, <a href="http://en.wikipedia.org/wiki/Advanced_Audio_Coding">AAC/MP4</a>, <a href="https://xiph.org/flac/">FLAC</a> and others.</p>
<p><em>Note:</em> If you are uncertain which audio format to choose, then <a href="http://lifehacker.com/5927052/whats-the-difference-between-all-these-audio-formats-and-which-one-should-i-use">this article</a> by Lifehacker is a good starting point. Also see the <a href="http://en.wikipedia.org/wiki/Comparison_of_audio_coding_formats">comparison of audio coding formats</a> on Wikipedia. If still uncertain, just go with good old MP3 😉</p>
<p><img src="img/lamexp/tutorial_3a.png" alt="Figure" /></p>
<p> <br />Once you have decided for an audio format, you need to choose a <em>rate-control</em> mode next. The available rate-control modes include VBR (quality-base variable bitrate), ABR (average bitrate) and CBR (constant bitrate). Not all modes are available for all audio formats.</p>
<p><em>Note:</em> If you are uncertain which rate-control mode to chose, the guideline is that VBR mode should be preferred over ABR mode whenever possible. And CBR mode generally should be avoided. See also Wikipedia's article on <a href="http://en.wikipedia.org/wiki/Variable_bitrate">variable bitrate</a> encoding.</p>
<p><img src="img/lamexp/tutorial_3b.png" alt="Figure" /></p>
<p> <br />Last but not least, you need to choose the desired target <em>bitrate</em> or <em>quality-level</em>. Put simply, this controls the &quot;quality vs. file size&quot; trade-off. You choose a target quality-level in case of VBR mode, and you choose a target (average) bitrate in case of ABR or CBR mode.</p>
<p><em>Note:</em> If you are uncertain which bitrate or quality-level to choose, bare in mind that a higher bitrate (or a better quality level) results in better audio quality, but also produces larger files and vice versa. &quot;Level 2&quot; or &quot;192 kbps&quot; is a typical choice for MP3.</p>
<p><img src="img/lamexp/tutorial_3c.png" alt="Figure" /></p>
<p> <br /><em>Did you know?</em> You can click on the &quot;Reset&quot; link at any time in order to reset all available settings for all available encoders to their factory defaults.</p>
<h2 id="processing"><span class="header-section-number">4.4</span> Processing</h2>
<p>When everything has been set up properly, the time has come to actually start the encoding process. So simply click the &quot;Encode Now&quot; button in order to get going!</p>
<p><img src="img/lamexp/tutorial_4a.png" alt="Figure" /></p>
<p> <br />This will bring up the &quot;Processing&quot; dialogue. LameXP will now convert all your audio files on the list. Depending on the number of audio files and depending on the performance of your system, this may take several minutes, so please be patient 😉</p>
<p><em>Note:</em> In order to leverage the power &quot;multi-core&quot; processors and thus massively speed-up the encoding process, LameXP will run multiple encoding jobs in parallel provided that your system has multiple processor cores and that there are enough encoding jobs left in the queue.</p>
<p><img src="img/lamexp/tutorial_4b.png" alt="Figure" /></p>
<p> <br />The &quot;Processing&quot; dialogue is going to turn <em>green</em>, as soon as all encoding jobs have finished successfully. If anything went wrong, e.g. if one of the encoding jobs failed for some reason, it will turn <em>red</em> instead.</p>
<p><img src="img/lamexp/tutorial_4c.png" alt="Figure" /></p>
<p> <br /><em>Did you know?</em> You can double-click on a completed (or failed) job in the list, in order to bring up a dialogue with all details about the specific job. This is especially useful, if something went wrong.</p>
<h1 id="help-support"><span class="header-section-number">5</span> Help &amp; Support</h1>
<p>Before you report any problems that you may have encountered with the LameXP software, please make sure that the problem can be <em>reproduced</em> with the <strong>latest</strong> release version of LameXP!</p>
<h2 id="download-mirrors"><span class="header-section-number">5.1</span> Download Mirrors</h2>
2014-12-22 14:44:09 +01:00
<p>The latest <em>official</em> release of the LameXP software can be obtained from one of the following <em>official</em> download mirrors:</p>
<ul>
<li><a href="https://github.com/lordmulder/LameXP/releases/latest">https://github.com/lordmulder/LameXP/releases/latest</a><br /></li>
<li><a href="http://sourceforge.net/projects/lamexp/files/">http://sourceforge.net/projects/lamexp/files/</a><br /></li>
<li><a href="https://lamexp.codeplex.com/releases/">https://lamexp.codeplex.com/releases/</a><br /></li>
<li><a href="https://bitbucket.org/lord_mulder/lamexp/downloads">https://bitbucket.org/lord_mulder/lamexp/downloads</a><br /></li>
<li><a href="https://www.assembla.com/spaces/lamexp/documents">https://www.assembla.com/spaces/lamexp/documents</a><br /></li>
<li><a href="http://www.free-codecs.com/lamexp_download.htm">http://www.free-codecs.com/lamexp_download.htm</a><br /></li>
<li><a href="http://www.videohelp.com/tools/LameXP">http://www.videohelp.com/tools/LameXP</a></li>
</ul>
2014-12-27 00:08:56 +01:00
<p> <br />It is <em>highly recommended</em> to download LameXP <em>only</em> from one of the official mirrors listed above. We are <strong>not</strong> responsible for the integrity and trustworthiness of LameXP downloads you may have received from other locations!</p>
<h2 id="diagnostic-output"><span class="header-section-number">5.2</span> Diagnostic Output</h2>
<p>If you want to report any problems that you have encountered with the LameXP software, please provide as much details as possible. <em>Diagnostic output</em> can be especially helpful here!</p>
<ul>
<li><p>If a certain encoding job has failed, you can double-click the failed job in the LameXP &quot;Processing&quot; dialogue, which will bring up a detailed <em>log</em> for that job. Use the &quot;Copy to Clipboard&quot; button to save that information.</p></li>
2014-12-27 00:08:56 +01:00
<li><p>You can launch the LameXP application with the additional <a href="http://en.wikipedia.org/wiki/Command-line_interface">command-line</a> parameter <code>--console</code> in order to enable the LameXP <em>debug console</em>, which provides many information on what is going on &quot;behind the scenes&quot;.</p></li>
<li><p>The <a href="http://en.wikipedia.org/wiki/Environment_variable">environment variable</a> <code>MUTILS_LOGFILE</code> may be used to specify a <em>log file</em> that will be created by LameXP. The information that are saved to the log file are the same as those available from the debug console.</p></li>
</ul>
<p> <br /><em>Note:</em> We highly recommend using a web-service like <a href="https://gist.github.com/">Gist</a>, <a href="http://pastie.org/">Pastie</a> or <a href="http://pastebin.com/">Pastebin</a> in order to share your diagnostic information. Please avoid posting long log files directly on the forums!</p>
<h2 id="bugtracker"><span class="header-section-number">5.3</span> Bugtracker</h2>
2014-12-22 14:44:09 +01:00
<p>The recommended way to submit <em>bug reports</em> or <em>feature requests</em> to the LameXP developers is using the <em>issue tracking system</em> at our GitHub project site:</p>
<ul>
<li><a href="https://github.com/lordmulder/LameXP/issues">https://github.com/lordmulder/LameXP/issues</a></li>
</ul>
<p> <br /><em>Note:</em> In order to use the issue tracking system, you need to log in with your GitHub account. Creating a GitHub account is easy and completely free of charge, simply click <a href="https://github.com/join">here</a>!</p>
<h2 id="support-forum"><span class="header-section-number">5.4</span> Support Forum</h2>
2014-12-22 14:44:09 +01:00
<p>If you want to discuss the development of the LameXP software, help other users or receive help from other users, please use the LameXP thread at <em>Doom9's</em> Forum:</p>
<ul>
<li><a href="http://forum.doom9.org/showthread.php?t=157726">http://forum.doom9.org/showthread.php?t=157726</a> English<br /></li>
<li><a href="http://forum.gleitz.info/showthread.php?t=37956">http://forum.gleitz.info/showthread.php?t=37956</a> German</li>
</ul>
<p> <br /><em>Note:</em> Due to the massive amount of spam attacks, Doom9 has established strict anti-spam measures. Therefore, it takes a few days until your account will be approved.</p>
<h1 id="developer-center"><span class="header-section-number">6</span> Developer Center</h1>
2014-12-22 14:44:09 +01:00
<p>While LameXP originally was written in Delphi/Pascal, the current version 4 series of the software has been re-written in the <a href="http://en.wikipedia.org/wiki/C%2B%2B"><strong>C++</strong></a> programming language. LameXP v4 uses the <a href="http://www.qt.io/"><em>Qt cross-platform application framework</em></a> and provides full <a href="http://en.wikipedia.org/wiki/Unicode"><em>Unicode</em></a> support. Furthermore, LameXP is tightly coupled with the <a href="https://github.com/lordmulder/MUtilities"><em>MUtilities</em></a> library, a vast collection of &quot;utility&quot; routines and classes to extend the Qt framework. Build files are currently provided for <em>Microsoft Visual Studio</em> only. Linux support is currently provided via <a href="https://www.winehq.org/"><em>Wine</em></a>; a native Linux port of LameXP is planned for a future version.</p>
<h2 id="source-code-access"><span class="header-section-number">6.1</span> Source Code Access</h2>
<p>The source code of the <strong>LameXP</strong> software is managed using the <a href="http://git-scm.com/"><em>Git</em></a> version control system. The Git repository can be <em>cloned</em> from one of the official Git mirrors:</p>
2014-12-22 14:44:09 +01:00
<ul>
<li><p><code>git clone git://git.code.sf.net/p/lamexp/code LameXP</code> (<a href="http://sourceforge.net/p/lamexp/code/">Browse</a>)</p></li>
<li><p><code>git clone https://github.com/lordmulder/LameXP.git LameXP</code> (<a href="https://github.com/lordmulder/LameXP">Browse</a>)</p></li>
<li><p><code>git clone https://git01.codeplex.com/lamexp LameXP</code> (<a href="https://lamexp.codeplex.com/SourceControl/latest">Browse</a>)</p></li>
<li><p><code>git clone https://bitbucket.org/lord_mulder/lamexp.git LameXP</code> (<a href="https://bitbucket.org/lord_mulder/lamexp/src">Browse</a>)</p></li>
<li><p><code>git clone git://git.assembla.com/lamexp.git LameXP</code> (<a href="https://www.assembla.com/code/lamexp/git/nodes">Browse</a>)</p></li>
<li><p><code>git clone git://gitorious.org/lamexp/lamexp.git LameXP</code> (<a href="http://gitorious.org/lamexp/lamexp/trees/master">Browse</a>)</p></li>
<li><p><code>git clone git://repo.or.cz/LameXP.git LameXP</code> (<a href="http://repo.or.cz/w/LameXP.git">Browse</a>)</p></li>
2014-12-22 14:44:09 +01:00
</ul>
<p> <br />The source code of the <strong>MUtilities</strong> library is managed using the <a href="http://git-scm.com/"><em>Git</em></a> version control system. The Git repository can be <em>cloned</em> from one of the official Git mirrors:</p>
2014-12-22 14:44:09 +01:00
<ul>
<li><p><code>git clone git://git.code.sf.net/p/mutilities/code MUtilities</code> (<a href="http://sourceforge.net/p/mutilities/code/">Browse</a>)</p></li>
<li><p><code>git clone https://github.com/lordmulder/MUtilities.git MUtilities</code> (<a href="https://github.com/lordmulder/MUtilities">Browse</a>)</p></li>
<li><p><code>git clone https://git01.codeplex.com/mutilities MUtilities</code> (<a href="https://mutilities.codeplex.com/SourceControl/latest">Browse</a>)</p></li>
<li><p><code>git clone https://bitbucket.org/lord_mulder/mutilities.git MUtilities</code> (<a href="https://bitbucket.org/lord_mulder/mutilities/src">Browse</a>)</p></li>
<li><p><code>git clone git://git.assembla.com/mutilities.git MUtilities</code> (<a href="https://www.assembla.com/code/mutilities/git/nodes">Browse</a>)</p></li>
<li><p><code>git clone git://gitorious.org/mutilities/mutilities.git MUtilities</code> (<a href="http://gitorious.org/mutilities/mutilities/trees/master">Browse</a>)</p></li>
<li><p><code>git clone git://repo.or.cz/MUtilities.git MUtilities</code> (<a href="http://repo.or.cz/w/MUtilities.git">Browse</a>)</p></li>
2014-12-22 14:44:09 +01:00
</ul>
<p> <br /><em>Remarks:</em> In case you are new to Git or want to extend your knowledge, have a look at the <a href="http://git-scm.com/book/en/v2"><em>Pro Git</em></a> book by Scott Chacon! For Windows users, we highly recommend using <a href="http://msysgit.github.com/"><em>MSYS Git</em></a> in conjunction with the superb <a href="http://tortoisegit.googlecode.com/"><em>Tortoise Git</em></a> front-end.</p>
<h2 id="build-prerequisites"><span class="header-section-number">6.2</span> Build Prerequisites</h2>
2014-12-22 14:44:09 +01:00
<p>LameXP is currently being developed and built using the following development tools and libraries:</p>
<ul>
<li><p><a href="http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx">Visual Studio 2013 Update-4</a>, running on Windows 7 with Service Pack 1</p></li>
<li><p><a href="http://download.qt.io/archive/qt/4.8/">Qt libraries 4.8.6</a> for Windows (pre-compiled Qt libraries for Visual Studio 2013 can be found <a href="http://sourceforge.net/projects/lamexp/files/Miscellaneous/Qt%20Libraries/"><strong>here</strong></a>)</p></li>
<li><p>Windows Platform SDK v7.1A, included with Visual Studio 2013 or Visual Studio 2012</p></li>
<li><p>The minimum supported <em>build</em> platform is Windows 7 (x86 and x64)</p></li>
</ul>
<p> <br />In order to create LameXP release packages, using the included deployment scripts, you need the following additional tools:</p>
<ul>
<li><p><a href="http://www.7-zip.org/">7-Zip</a> file archiver with a high compression ratio</p></li>
<li><p><a href="http://nsis.sourceforge.net/">NSIS</a> Nullsoft Scriptable Install System (<a href="http://www.scratchpaper.com/"><em>Unicode version</em></a> recommended!)</p>
<ul>
<li><a href="http://nsis.sourceforge.net/StdUtils_plug-in">StdUtils</a> plug-in<br /></li>
<li><a href="http://nsis.sourceforge.net/LockedList_plug-in">LockedList</a> plug-in<br /></li>
<li><a href="http://nsis.sourceforge.net/Inetc_plug-in">Inetc</a> plug-in<br /></li>
<li><a href="http://forums.winamp.com/showthread.php?t=329990">Aero</a> plug-in</li>
</ul></li>
<li><p><a href="http://upx.sourceforge.net/">UPX</a> the Ultimate Packer for eXecutables</p></li>
<li><p><a href="http://johnmacfarlane.net/pandoc/">Pandoc</a> the Universal Document Converter</p></li>
<li><p><a href="ftp://ftp.gnupg.org/gcrypt/binary/">GnuPG</a> the GNU Privacy Guard v1.4.x</p></li>
</ul>
<h2 id="qt-as-static-libraries"><span class="header-section-number">6.3</span> Qt as Static Libraries</h2>
2014-12-22 14:44:09 +01:00
<p>In order to create a &quot;fully static&quot; build of LameXP, i.e. a build that does <em>not</em> depend on any &quot;external&quot; DLL files (except for the obligatory operating system DLL's that you cannot get around), you'll need to compile Qt as &quot;static&quot; libraries. The official Qt web-site <em>does</em> provide pre-compiled Qt libraries. However, they only provide DLL versions, they do <em>not</em> provide &quot;static&quot; libraries. Consequently, you need to build the required &quot;static&quot; Qt libraries yourself. The following simple instructions should make it easy to build Qt from the sources and as &quot;static&quot; libraries:</p>
<ol>
<li><p>Make sure <em>Visual Studio 2013</em> with Update-4 (or later) is installed</p></li>
<li><p>Make sure <em>Strawberry Perl </em>for Windows and <em>Python 2.7</em> are installed</p></li>
<li><p>Download and extract the <em>Qt 4.8.x</em> source code package (e.g. to <code>C:\QtSources\4.8.x</code>)</p></li>
<li><p>Edit the file <code>mkspecs\win32-msvc2010\qmake.conf</code> from your Qt Sources directory as follows:</p>
<ul>
<li><code>Old: QMAKE_CFLAGS_RELEASE = -O2 -MD</code><br /></li>
<li><code>New: QMAKE_CFLAGS_RELEASE = -O2 -MT &lt;more optimization flags here&gt;</code><br /></li>
<li><code>Old: QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi</code><br /></li>
<li><code>New: QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi &lt;more optimization flags here&gt;</code></li>
</ul></li>
<li><p>Open a new command window (<code>cmd.exe</code>) use this very same console for all upcoming steps!</p></li>
<li><p>Add <em>Strawberry Perl</em> to your PATH (e.g. <code>set PATH=C:\strawberry\perl\bin;%PATH%</code>)</p></li>
<li><p>Add <em>Python 2.7</em> to your PATH (e.g. <code>set PATH=C:\python27;%PATH%</code>)</p></li>
<li><p>Run <code>vcvarsall.bat x86</code> form your Visual C++ install directory - within the same console!</p></li>
<li><p>Change the current directory to the <em>Qt Sources</em> path (e.g. <code>C:\QtSources\4.8.x</code>)</p></li>
<li><p>Run <code>configure.exe -release -static -ltcg -qt-zlib -qt-libpng -qt-libjpeg -qt-libtiff -qt-libmng</code></p>
<ul>
<li>Hint: For Visual Studio 2013 you currently need to add <code>-platform win32-msvc2012</code> too</li>
</ul></li>
<li><p>Now the makefiles should have been generated, so simply enter <code>nmake /B</code> and be patient - voilà!</p></li>
<li><p>The build process is going to take good amount of time. Once it is done, make sure you got all needed libs:</p>
<ul>
<li><code>lib\qtmain.lib</code><br /></li>
<li><code>lib\QtCore.lib</code><br /></li>
<li><code>lib\QtGui.lib</code><br /></li>
<li><code>lib\QtSvg.lib</code><br /></li>
<li><code>lib\QtXml.lib</code><br /></li>
<li><code>plugins\imageformats\qico.lib</code><br /></li>
<li><code>plugins\imageformats\qsvg.lib</code><br /></li>
<li><code>plugins\imageformats\qtga.lib</code></li>
</ul></li>
<li><p>Put all the static *.lib files into the <code>Prerequisites\qt4_static\lib</code> directory</p></li>
<li><p>ImageFormat plugins go to <code>Prerequisites\qt4_static\plugins\imageformats</code></p></li>
<li><p>Congratulations, you should now be prepared to build the <code>Release_Static</code> configuration of LameXP 😊</p></li>
</ol>
<p> <br /><em>Note:</em> Static libraries only work with the exactly same compiler (version) they were built with!</p>
<h1 id="f.a.q.-frequently-asked-questions"><span class="header-section-number">7</span> F.A.Q. (Frequently Asked Questions)</h1>
2014-12-22 14:44:09 +01:00
<p><strong>TODO</strong></p>
<p> <br /> <br /><strong>EOF</strong></p>
2014-12-22 14:44:09 +01:00
</body>
</html>