MP3 Diags - Advanced features
Description: End-user documentation for MP3 Diags, an MP3 analysis tool that also includes correction and tag editing functionality
Keywords: MP3, diags, diagnosis, tag editor, tagger, normalizer

Config - Others | User's guide - Advanced features | Limitations

In the Config - Others tab you can see in the middle of the window a "Misc" group. Inside it there are 3 checkboxes that allow you to add to the main window's toolbar three buttons that are invisible by default: "Export", "Debug", and "Sessions".

| The "Export" button allows you to save the data in 3 formats: XML, text, and M3U. The XML format is probably best suited for further processing, by importing the data into a database or a spreadsheet. The "text" format is intended more for human consumption. You can use it, for example, to compare files before and after applying some transformation. Exporting as M3U can be useful to listen in an external player to files that are filtered by some criteria, e.g. those found as "low quality", those having 2 images (so which will the player pick?), or whatever criteria you select.

| The "Debug" button opens up a new window where you can see trace messages from the last file scan (as long as you didn't close the application, because these are not stored on the disk, and provided that logging is enabled.) Another option that you can configure here is logging all the changes to a file. The log file is located in the same directory as the ".ini" session file

| The "Sessions" button allows you to keep several separate sets of folders containing MP3s, each set with its own settings. Pretty much everything that you see in the configuration dialog is stored "per session", the exception being the shell integration. Once the button is visible, you can click on it to see the "Sessions dialog", where you can add / remove / change sessions. Note that if you spent some time getting the settings right, you may want to use the "Save as ..." button, which will copy your settings to a new session.

Command-line options
Note: This part of the program's functionality is under development and might change. Among other things, there is little checking for the correctness of the arguments.
You can use these options to:

- Analyze several files or folders without opening the program's main window
- Apply a custom transformation list to several files or folders without opening the program's main window
- Start the GUI with a specific session, rather than the last one
- Create new sessions for a given folder

Parameter | Functionality
--- | ---
--help | Shows the list of valid parameters and exits. See below the Windows-specific notes about seeing the console output.
file and/or folder names | The program doesn't enter the GUI mode but either analyzes the files it was passed and prints the result to the console or applies a transformation list. It does the former if the --transf-list parameter is not passed and the latter if it is. See below the Windows-specific notes about seeing the console output.
--transf-list <number> | Runs the specified transformation list (1 to 4) on the files and/or directories passed.
--session <session_file> | Uses a specific session given by its session file (currently with an ".ini" extension). It is used in both GUI and CLI modes. If this parameter is not provided, MP3 Diags reopens the last open session in GUI mode or uses the settings in that session for CLI functionality.
--severity <folder_name> | Minimum severity to show when analyzing file or folder names; one of error, warning, support; default: warning.
--hidden-session <folder_name> | A session gets created inside the specified folder (if it doesn't already exist) and then the program starts up and uses that session; the session isn't stored in the session list but it is saved on disk, so running the same command again will just reuse the existing session.
--visible-session <folder_name> | Similar to --hidden-session but the session remains in the session list after the program exits.
--temp-session <folder_name> | Similar to --hidden-session but this is a temporary session, which gets created inside the temporary directory and is always removed from the session list and from the disk when the program exits.
--uninstall | Clears the session list and the global settings and removes the shell integration.

Transformation list notes:
If you want to do various kinds of processing, you might prefer to pick individual transformations rather than full lists. While this is not currently supported, the lists can go a pretty long way once you notice that they are session-specific. So what you can do is define several sessions that are meant to be used only from the CLI interface and have each of their 4 lists contain a single element. It's quite cumbersome, but if you think you'd need to do this often, you can wrap everything in a script that is more user-friendly. You'd have to create those sessions in GUI mode (or, well, edit .ini files manually.)
Running specific transformations directly might be implemented in the future if there's a real need for this.
Template notes:
The settings for the newly created sessions are copied from "templates". A template is just another session. Templates are set up in the Session dialog.
Running on Windows:
It seems that it's not possible in Windows to write some text output to the command prompt that was used to launch a GUI program. One solution for getting around this limitation is to use redirection, either to a file or through a filter like more. MP3 Diags comes with a script called MP3DiagsCLIQQQBRANCH_DQQQ.cmd which can be used instead of MP3DiagsWindowsQQQBRANCH_DQQQ.exe to create the illusion of outputting to the command prompt. (Well, this is not perfect, as it waits for the program to finish before displaying anything.)

Config - Others | User's guide - Advanced features | Limitations