diff --git a/doc/Manual.html b/doc/Manual.html index 4aa7da6e..71b5c8ff 100644 --- a/doc/Manual.html +++ b/doc/Manual.html @@ -64,24 +64,32 @@
The "Processing" dialogue is going to turn green, 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 red instead.
Did you know? 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.
Additional command-line options may be passed to LameXP when launching the application. You may do so, for example, by typing the complete command-line into the command prompt or by creating a shortcut with the desired command-line options. The basic command-line syntax of LameXP is as follows: Each command-line option has to start with a --
prefix. So if you intend to pass the option called "foo", then you actually need to type --foo
. Furthermore, while some command-line options are just flags, i.e. they can either be present or not (but that's it!), there also are command-line options that take an argument. The argument is appended directly to the option name to which it belongs to, but a =
sign must to be inserted as a separator. If, for example, you wish to set the command-line option "foo" to an argument value of "bar", then the proper syntax is --foo=bar
. Sometimes your argument value may contain whitespaces though, in which case the whole command-line option (name + argument) must be enclosed with double quotes. For example, in order to set the option "foo" to a value of "C:\Some File.bar" (note the space character between "Some" and "File"), the proper syntax is "--foo=C:\Some File.bar"
. Last but not least, please note that the same command-line option may appear multiple times on the command-line – whether that actually makes any sense depends on the individual option though.
Command-line options for adding files and/or folders:
+--add=filename
Adds the file specified by filename to the source files list. The filename should be a fully-qualified path. If you wish to add multiple files at once, you can simply include this option multiple times.
--add-folder=directory
Adds all supported files from the directory specified by directory to the source files list. The directory should be a fully-qualified path. Sub-directories are not considered.
--add-recursiver=directory
This option works just like the "add-folder" option, except that it works recursively, i.e. it does take into account sub-directories. Use this option with care, since a whole lot of files may be added.
Here are some examples on how to use the above command-line options correctly:
+Add one file:
LameXP.exe "--add=C:\Some Folder\Some File.mp3"
Add multiple files at once:
LameXP.exe "--add=C:\Some Folder\File #1.mp3" "--add=C:\Some Folder\File #2.mp3" "--add=C:\Some Folder\File #3.mp3"
Add a whole directory:
LameXP.exe "--add-folder=C:\Some Folder"
Command-line options for adjusting the graphical user-interface:
+--huge-font
Set the font scaling factor to 150%. Use this if you want much larger fonts.
--big-font
Set the font scaling factor to 125%. Use this if you want somewhat larger fonts.
--small-font
Set the font scaling factor to 87.5%. Use this if you want somewhat smaller fonts.
--tiny-font
Set the font scaling factor to 75%. Use this if you want much smaller fonts.
Command-line options that are intended for testing and debugging:
+--console
Enable the LameXP debug console. Use this option with "release" builds of LameXP, where the console is hidden by default.
--no-console
The opposite of the "console" option: Disable the LameXP debug console. Use this option with "pre-release" (beta) builds of LameXP, where the console is visible by default.
--force-cpu-no-64bit
Treat the CPU as if it did not support 64-Bit (x64) applications, even when it actually does so.
--force-cpu-no-sse
Treat the CPU as if it did not support any SSE extensions (SSE, SSE2, SSE3, SSSE3, SSSE4, etc), even when it actually does so.
--force-cpu-no-intel
Treat the CPU as if it was a non-Intel processor, even when the vendor tag indicates an Intel processor.
--ignore-compat-mode
Do not check whether the application is running with "compatibility mode" enabled. It's still not recommended to run with compatibility mode enabled!
Miscellaneous command-line options that may come in handy in certain situations:
+--kill
Exit all running instances of LameXP.
--force-kill
Exit all running instances of LameXP as quickly as possible, even if that incurs data loss. Use with extreme care!
Before you report any problems that you may have encountered with the LameXP software, please make sure that the problem can be reproduced with the latest release version of LameXP!
-The latest official release of the LameXP software can be obtained from one of the following official download mirrors:
It is highly recommended to download LameXP only from one of the official mirrors listed above. We are not responsible for the integrity and trustworthiness of LameXP downloads you may have received from other locations!
If you want to report any problems that you have encountered with the LameXP software, please provide as much details as possible. Diagnostic output can be especially helpful here!
If a certain encoding job has failed, you can double-click the failed job in the LameXP "Processing" dialogue, which will bring up a detailed log for that job. Use the "Copy to Clipboard" button to save that information.
In any case, the environment variable MUTILS_LOGFILE
may be used to specify a log file that will be created by LameXP. The information saved to the log file are the same as those available from the debug console.
Note: We highly recommend using a web-service like Gist, Pastie or Pastebin in order to share your diagnostic information. Please avoid posting long log files directly on the forums!
The recommended way to submit bug reports or feature requests to the LameXP developers is using the issue tracking system at our GitHub project site:
Note: 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 here!
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 Doom9's Forum:
Note: 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.
While LameXP originally was written in Delphi/Pascal, the current version 4 series of the software has been re-written in the C++ programming language. LameXP v4 uses the Qt cross-platform application framework and provides full Unicode support. Furthermore, LameXP is tightly coupled with the MUtilities library, a vast collection of "utility" routines and classes to extend the Qt framework. Build files are currently provided for Microsoft Visual Studio only. Linux support is currently provided via Wine; a native Linux port of LameXP is planned for a future version.
-The source code of the LameXP software is managed using the Git version control system. The Git repository can be cloned from one of the official Git mirrors:
git clone git://git.code.sf.net/p/lamexp/code LameXP
(Browse)
git clone git://repo.or.cz/MUtilities.git MUtilities
(Browse)
Remarks: In case you are new to Git or want to extend your knowledge, have a look at the Pro Git book by Scott Chacon! For Windows users, we highly recommend using MSYS Git in conjunction with the superb Tortoise Git front-end.
LameXP is currently being developed and built using the following development tools and libraries:
Visual Studio 2013 Update-4, running on Windows 7 with Service Pack 1
Pandoc – the Universal Document Converter
GnuPG – the GNU Privacy Guard v1.4.x
In order to create a "fully static" build of LameXP, i.e. a build that does not depend on any "external" DLL files (except for the obligatory operating system DLL's that you cannot get around), you'll need to compile Qt as "static" libraries. The official Qt web-site does provide pre-compiled Qt libraries. However, they only provide DLL versions, they do not provide "static" libraries. Consequently, you need to build the required "static" Qt libraries yourself. The following simple instructions should make it easy to build Qt from the sources and as "static" libraries:
Make sure Visual Studio 2013 with Update-4 (or later) is installed
Congratulations, you should now be prepared to build the Release_Static
configuration of LameXP 😊
Note: Static libraries only work with the exactly same compiler (version) they were built with!
This section tries to answer some of the most frequently asked questions. So if you have a question, please have a look at this section, before you send the question to us 😉
-A: Nope. LameXP is free software. You may use it free of charge and for any purpose, including commercial purposes, according to the terms of the GNU General Public License. The developers of LameXP will never ask you to pay for using the LameXP software. Also, several free download mirrors are provided. However, it was brought to our attention, that there are some third-party web-sites which offer payed downloads of LameXP, or provide LameXP downloads that have been infected with Adware – we do not cooperate with any of these web-sites! Therefore, please do not pay money for using or obtaining the LameXP software; the developers of LameXP will not benefit from this money. If anybody tries to make you pay money for for using or obtaining the LameXP software, this is fraud and you should not respond to this kind of offer!
-A: Yes. LameXP is free software. You may modify and/or redistribute it freely, according to the terms of the GNU General Public License. However, be aware that it is strictly forbidden to bundle the LameXP program files and/or the LameXP installation program with any kind of Adware, Spyware or PUP (potentially unwanted program). Usually, no additional permission will be needed. If, however, you wish to redistribute the LameXP software in a way that does not comply with the license terms, a written permission by the author of the LameXP software is required!
-A: LameXP is a non-profit project. The authors of the LameXP software do not accept any donations, in terms of money. If you wish to support the LameXP project, then you may do so by contributing translations, by improving the LameXP program code or by providing web-servers.
-A: Originally, the LameXP software was created as a very simple GUI front-end to the LAME MP3 command-line encoder. The original version of this software, released some time in 2004, did not support any encoders except for LAME, it did not support any input formats except for Wave Audio, it did not support any audio filters, it did not support multi-threading, it did not support Unicode file names and it did not handle meta information. Because the software was a front-end to LAME, because it was running on the Microsoft Windows operating system and because, back at that time, Windows XP was the most popular Windows version (by far), I decided to call the software "LAME front-end for Windows XP" – or, in short, LameXP. Note the most creative name, I have to admit. Anyway, more and more features have been added to the LameXP software over the years. Also, the software has been re-written from the scratch at least two times. Nonetheless, the original name of the software has been retained. This is partly because people have become used to that name, and partly because I simply haven't been able to come up with a better name…
-A: They are! The official LameXP binaries are digitally signed by PGP signatures, created using the GnuPG software. However, the LameXP binaries are not signed in a way that the Microsoft Windows operating system recognizes. Please note that Microsoft Windows does not currently recognize PGP (GnuPG) signatures. For this reason, Microsoft Windows may show a warning when trying to launch or install the LameXP software. Microsoft Windows will also complain that the LameXP program files originate from an "unknown publisher", despite they are signed.
So why are the LameXP binaries not signed in the way Microsoft Windows recognizes? This is because Microsoft Windows uses a hierarchical trust model: Windows trusts into a number of Certificate Authorities (CA), which are built into the operating system. These CA's can issue signing certificates, e.g., to software companies. The software company can then use its signing certificate to sign their binaries. Finally, Windows will verify the signature by using the corresponding signing certificate. And the signing certificate is verified using the built-in CA certificate. However, this system is flawed: First of all, CA's do not create signing certificates for free. Also these certificates are only valid for a limited period of time. LameXP is a non-profit project and therefore we can not afford buying new certificates in regular intervals. Secondly, and even more important, the whole system depends on the trustworthiness of the CA's. But, as we all (should) know by now, these CA's can be forced to create "bogus" certificates, e.g. by intelligence services or other governmental organizations. Please also see this blog post by "fefe" for an in-depth explanation.
If you want to verify the LameXP signatures yourself, then you may do so by using the Gpg4win software package, an easy-to-use distribution of the GnuPG software for Microsoft Windows. Of course you will also require the public key of the LameXP developers. The finperprint of the official GnuPG signing key is 3265784425BF2B394F67CE07106A413D6CF3FA22
and the corresponding public key block is provided in the following. If you are not familiar with the GnuPG software yet, please have a look at the Gpg4win compendium or the GnuPG manual.
A: LameXP does not connect to any web-server, except for the "automatic updates" feature. Of course, in order to check for new updates, LameXP unavoidably has to communicate with our update servers. However, in no event LameXP will search for updates without your consent. Also, LameXP will not send any personal information to the update server. Instead of uploading your information, e.g. your current program version, to the web-server, LameXP will download the update information from the update server and compare it to your installed version locally. Furthermore, all information and program files downloaded from the update servers are protected by PGP (GnuPG) signatures, in order to assure the authenticity and integrity of these files. Files with missing/invalid signature are going to be rejected, so (spoofing) attacks are prevented.
Note: Before LameXP actually tries to download information from our update servers, it will check your internet connection first. Only checking whether the update server is reachable does not suffice here. In case that the update server does not respond, this could mean that our servers are currently experiencing problems, but it could also mean that your Internet connection is failing. In order to distinguish these cases, LameXP will validate the Internet connection prior to connecting to the update server. For this purpose, LameXP contains a rather long list of "known" hosts, taken mostly from Alexa's Top 500 list. In order to validate the Internet connection, LameXP will pick a random host from the list and check whether that host can be reached. This process will be repeated, until a certain minimum number of "known" hosts have been reached successfully.
EOF