Documentation
Contents
- Qoobar features
- Qoobar interface
- Working with the Files Table
- Tags editing
- Working with cover art pictures
- Splitting files by CUE sheet
- Automatical filling in the tags
- Importing tags from the Internet
- Renaming files
- Adding ReplayGain info to files
- Qoobar Settings
- Appendix 1. Tags fields supported by Qoobar
- Appendix 2. Qoobar Shortcuts
- Appendix 3. Placeholders and functions
- Appendix 4. Regular expressions
Qoobar features
- Reading and writing of these standard tags: Composer, Album, Title, Performer (added to enhance classical music tags), Artist, Conductor, Orchestra, Subtitle, Key, Comment, Genre, Year, Track Number, Total Tracks, Album artist, Publisher, Mood, Beats per minute (Tempo), Original artist, Original lyricist, Lyricist, Original album, Lyrics, Music category (Grouping), Copyright, Disc number, Total discs, Remixed by, Encoded by, ISRC, URL, Rating.
- Adding your own tags for all supported file types.
- Full support for the following tag formats and file types:
- MP3 - id3v1, id3v2, APE tags
- TrueAudio - id3v1, id3v2 tags
- FLAC - Vorbis comments
- Ogg/Vorbis, Ogg/FLAC - Vorbis comments
- Speex - Vorbis comments
- Musepack - id3v1, APE tags
- WavPack - id3v1, APE tags
- Wma, Asf - Asf tags
- Mp4 - Mp4 tags
- APE - id3v1, APE tags.
- Wav - id3v2 tags
- Aiff - id3v2 tags
- Opus - Vorbis comments
- Dsf - id3v2 tags
- Tabbed interface: you can edit different folders in their own tab.
- Cover art reading, writing and importing from local filesystem.
- Automatic tags generating from files names and other tags.
- Powerful dialog for moving / copying / renaming files.
- Copying and pasting tags between different groups of files.
- Various operations for tags editing include: changing case, tags recoding, transliterating, removing diacritical marks.
- Full support of placeholders in renaming, filling, editing operations.
- Insertion of latin characters with diacritics from the Characters panel that contains a list of German, French, Spanish, Polish etc. additional symbols.
- Undo / redo system: You can undo (and redo) any your action separately for each opened tab.
The following actions can be undone:
- Changing tags in files
- Adding / removing / changing cover art pictures
- Importing tags from Discogs, Musicbrainz and freedb databases. You can search albums by selected files, by a CD in CD-ROM, or manually - by artist name and album title.
- Splitting of a CD image by the corresponding CUE file.
- Multilanguage interface with the immediate translation.
- Autocompletion for any tag.
- Tagging schemes that define how to read and write tags.
- ReplayGain support in Mp3, Mp4, Ogg Vorbis, Flac, Musepack, WavPack files.
- Command-line interface in Unix-like systems.
- Music files search in standard and user defined locations.
Qoobar interface
The Qoobar Menu
Menu File
- Add folder... - adds a directory with all its subdirectories Ctrl+O
- Add files... - adds a file / files Ctrl+Shift+O
- Split disc - splits an image of a musical disc (*.ape, *.flac, *.wav) by a cue sheet
- Search files... - searches music files on your computer and places them in a separate tab Ctrl+Shift+F
- Save current tab - saves all changes in the current tab Ctrl+S
- Save all tabs - saves all changes in all tabs
- Reread tags - rereads tags in selected files and undoes all unsaved changes
- Remove from the list - removes selected files from the current tab
- Clear the list - clears the current tab Ctrl+Del
- Exit - exits from Qoobar Ctrl+Del
Menu Edit
- Undo last operation Ctrl+Z
- Redo last operation Ctrl+Shift+Z or Ctrl+Y
- Cut - cuts selected tags of selected files Ctrl+X
- Copy - copies selected tags of selected files Ctrl+C
- Paste - pastes copied tags Ctrl+V
- Copy to clipboard - copies selected tags of selected files to the clipboardCtrl+Shift+C
- Paste from clipboard - pastes copied tags from the clipboardCtrl+Shift+V
- Clear all tags - clears all tags in the selected files
- Add new tag... - adds a new tag to selected files Ctrl+N
- Settings... - shows Qoobar settings dialog
Menu Tools
- Rename files... - renames / moves files according to its tags Ctrl+R
- Fill tags... - fills tags from file name, tags or Internet Ctrl+F
- Play selected - plays selected files in an external player Ctrl+P
- ReplayGain info... - adds or removes ReplayGain info from files
- Tags editing plugins installed with Qoobar
Menu Tabs
- New tab - adds a new tab Ctrl+T
- Close the tab - closes the current tab Ctrl+F4
- Close other tabs - closes all tabs except the current one
- Rename the tab... - opens the dialog to rename the tab
Menu Help
- Help - shows help on Qoobar F1
- About Qoobar - shows a brief info about the current version
- About Qt - shows the standard info about the Qt framework
- Check for updates... - searches for new versions available
The Upper Toolbar
- Add folder... - adds a directory with all its subdirectories Ctrl+O
- Add files... - adds a file / files Ctrl+Shift+O
- Split disc - splits an image of a musical disc (*.ape, *.flac, *.wav) by a cue sheet
- Save - saves all changes in the current tab Ctrl+S
- Reread tags - rereads tags in selected files and undoes all unsaved changes
- Undo / Redo last operation Ctrl+Z / Ctrl+Shift+Z or Ctrl+Y
- Rename files... - renames / moves files according to its tags Ctrl+R
- Fill tags... - fills tags from file name, tags or Internet Ctrl+F
- Delete all tags - deletes all tags in the selected files
- Clear the list - clears the current tab Ctrl+Del
- Play selected - plays selected files in an external player Ctrl+P
- Cut - cuts selected tags of selected files Ctrl+X
- Copy - copies selected tags of selected files Ctrl+C
- Paste - pastes copied tags Ctrl+V
- Add new tag... - adds a new tag to selected files Ctrl+N
The Files Table
The Folders Tree
The Tags Table
The Status Bar
The Status Bar shows:
- file name with full path
- file bitrate, sample rate, and number of channels
- file length (duration)
- total length of selected files.
Working with the Files Table
Files adding
You can add a folder with all its subfolders and musical files using the button
or shortcut Ctrl+O.
To add some files use the button
or shortcut Shift+Ctrl+O.
You can also drag&drop any folders and any files into the Qoobar window; or use command line like this:
qoobar "/home/I/music/first dir" /home/I/music/just_file.mp3
Using the Folder Tree you can easily browse your music library. The folder you click will be placed into the Files Table. To add a folder with all its subfolders and musical files right-click on this folder and choose "List this folder with all subfolders"
Files are always appended to the end of the current tab.
If the number of added files is less than 100, they will be automatically selected.
If some files you are adding are read-only, a warning message appears, and these files will be grayed-out in the Files table.
Files search
Pressing Ctrl+Shift+F (or menu File -> Search files) enables the files search. If the current tab is empty, the Search Bar shows in it, otherwise another tab will be opened with the Search Bar.
.
First of all you need to set up the search location(s). There is already one default location - your Music folder, but you can add as many other folders as you wish to perform search in them.
Next, type the text to search, f.e. Madonna (kidding, it will obviously be Pettersson), click 'Start search' and wait for the search to finish. If you have found enough files or just tired of waiting, click 'Stop search'.
You can specify additional search options in the menu of the search field. By default search is case-insensitive and diacritics are also ignored.
Files removing
To remove all files in the current tab click
.
Or click in the Files Table, press Ctrl+A, then Del.
Or just press Ctrl+Del.
To remove some of the added files select them and press Del.
When removing some not saved files, a simple dialog appears where you can choose whether to save changes or discard them:
.
Files removing clears the undo stack.
Files saving
To save all files in the current tab click
.
Or press Ctrl+S.
If you click on the icon in the leftmost column, all changes will be written in the file:
If you have selected only mp3 files, you can duplicate tags in the desirable formats. In the context menu choose "Mp3 tag types..." and the dialog appears:
Remember though that this dialog overrides global settings only for selected files, so if you want to set mp3 tag types once and for all, please use the Settings dialog.
Files saving clears the undo stack.
Other operations
- To reread files (and undo all changes) click
.
- To play selected files in an external player click
or press Ctrl+P. You should set the path to this player in the Qoobar settings dialog.
- To move files up and down the list use shortcuts Ctrl+Up / Ctrl+Down.
- To delete all tags from selected files click
. It removes all tags which Qoobar can read. You can undo the deletion.
- To move selected files into (an)other tab choose the desired tab name under the "Move to the tab..." item in the context menu.
Tags editing
First select one or several files in the Files table.
To set one tag for all selected files - click on this tag (f.e. on the "Artist" tag) and type a text.
To edit one tag file by file - double-click the tag.
To number tracks starting from 1 to N (N is the number of selected files)
- click on the "Track number" tag, type 1
and press Enter.
Note: If you type 01
, track numbers will be two-digit formatted: 01, 02 etc.
To remove some tags select these tags in the Tags Table and press Delete.
Copying and pasting tags
If you copy only one tag (only one line in the Tags Table), you can paste it where you want, even if you select other files.
If you copy several tags (Composer and Album, for example), you can only paste them into the same tags (though you can select other files).
You can paste some text from the clipboard into one selected tag.
Copying selected tags into the clipboard is also possible.
Operations with tags
There is a number of operations that you can use to edit tags. You can find them in the context menu:
- Change case - changes case to lower, upper, sentence-like etc. The equivalent functions:
$lower
,$upper
,$caps
,$caps2
. - Simplify whitespaces - removes leading, trailing and inner extra whitespaces. The equivalent function:
$simplify
- Remove diacritics - replaces latin characters with diacritical marks by plain ones. The equivalent functions:
$ansi
or$ascii
- Transliterate - replaces cyrillic (Russian) characters with latin ones according to
this scheme. The equivalent function:
$transliterate
. - Fix encoding - recodes tags written in local encodings (f.e. Russian Windows 1251, KOI8-R, and CP866) into UTF8.
Qoobar uses enca for guessing the tag encoding, so if you want a better guess, please set a preferable language in the Settings dialog.
The default enca guess language is Russian. The equivalent function:
$recode
.
Tags autocompletion
Qoobar can autocomplete any tag while you are typing some text. This feature is turned on by default only for composers, genres, and moods. If you want to turn on autocompletion for other tags, do it in the Settings dialog. You can also edit autocompletion lists in the Settings dialog.
There are two modes for adding completion variants: automatic and manual (the default one). To manually "remember" tag select it and use "collect for future use" action or shortcut Ctrl+H.
Tags are added automatically only when you are pressing Enter in the Tags Table or OK in the Edit Dialog.

Adding your own tag
You can add your own tag to the selected files. Click
or press Ctrl+N.
A dialog appears:

Type a tag name with latin characters and underscores. Then click OK. The newly added tag will be appended to the Tags Table.
If you don't add something in the newly added tag, it will be lost.
Placeholders and functions
If you want to join different tags together or add some text to a tag just in one operation,
you can make use of placeholders. A placeholder is a variable that contains a tag or other info of one file.
Placeholders begin with '%', followed by one latin letter, for example %t
for title, %a
for album, %n
for track number, and so on.
The full list of available placeholders can be found in Appendix 3.
Examples
Scheme | Source | Result | ||
---|---|---|---|---|
%n. %t
|
|
track titles: 1. title 2. another title 3. the third title |
||
%N. %t |
|
track titles: 01. title 02. another title 03. the third title |
||
[%n. ]%t |
|
track titles: 1. title 2. another title the third title |
||
appended text - %t |
track titles: title another title the third title |
track titles: appended text - title appended text - another title appended text - the third title |
Functions are similar to that of Foobar. They help to automate and simplify work with tags. For example, to simplify files renaming
you can make use of $last_word
function, which returns the last word of its argument. So if you have the conductor set to
"Sergiu Celibidache", the rename pattern may look like %a ($last_word(%d))/%N. %t
,
which gives us f.e. "Symphony No.6 A-Dur (Celibidache)/01. Maestoso.flac" (guess what composer it is :)).
You can use nested functions: $upper($replace(%A, an, the))
replaces all occurrences of "an" by "the" in the artist tag
and returns uppercased result. $upper($lw(%c))
returns an uppercase of the last word in the composer tag.
You can use brackets [ ] to remove sections if the function result is empty, f.e.
[Section from 2nd to 20th character of album is $section(%a,2,20)]
will be removed if the album tag is shorter
than 2 characters.
The full list of functions can be found in Appendix 3.
Note: Not all functions works identical to their Foobar equivalents, please test it before using.
Using autonumbering function
In rare cases there may be a necessity to add some highly structured text to a tag. For example, when you are editing some opera and want to add text like "Act 1. Scene 1." etc. It can be quite tedious to type all these acts and scenes manually. Instead use the autonumbering function:
{startNumber-endNumber, someNumber:repeatNTimes, someOtherNumber:repeatMTimes; otherStartNumber, m1:k1, m2:k2}
Let's see an example. Suppose we have 'raw' track titles of Debussy's opera "Pelleas and Melisande". We want to structure them by giving each track title a description: "Act 1. Scene 2. Title" and so on. So we have:
Original titles | What we want to get |
---|---|
Je ne pourrai plus sortir de cette forêt Qu'est-ce qui brille ainsi, au fond de l'eau? Interlude (Orchestre) Voici ce qu'il écrit à son frère Pelléas: ''Un soir, je l'ai trouvée'' Je n'en dis rien Grand-père, j'ai reçu en même temps que la lettre de mon frère Interlude (Orchestre) Il fait sombre dans les jardins Hoé! Hisse hoé! Hoé! Hoé! Vous ne savez pas où je vous ai menée? C'est au bord d'une fontaine aussi qu'il vous a trouvée? Interlude (Orchestre) Ah! Ah! Tout va bien, cela ne sera rien Je suis... je suis malade ici Il est vrai que ce château est très vieux et très sombre |
Act 1. Scene 1. Je ne pourrai plus sortir de cette forêt Act 1. Scene 1. Qu'est-ce qui brille ainsi, au fond de l'eau? Act 1. Scene 1. Interlude (Orchestre) Act 1. Scene 2. Voici ce qu'il écrit à son frère Pelléas: ''Un soir, je l'ai trouvée'' Act 1. Scene 2. Je n'en dis rien Act 1. Scene 2. Grand-père, j'ai reçu en même temps que la lettre de mon frère Act 1. Scene 2. Interlude (Orchestre) Act 1. Scene 3. Il fait sombre dans les jardins Act 1. Scene 3. Hoé! Hisse hoé! Hoé! Hoé! Act 2. Scene 1. Vous ne savez pas où je vous ai menée? Act 2. Scene 1. C'est au bord d'une fontaine aussi qu'il vous a trouvée? Act 2. Scene 1. Interlude (Orchestre) Act 2. Ah! Ah! Tout va bien, cela ne sera rien Act 2. Je suis... je suis malade ici Act 2. Il est vrai que ce château est très vieux et très sombre |
Let's compose our functions according to what we want to achieve:
Acts number from 1, Act 1 lasts 9 tracks, Act 2 lasts 6 tracks, so we have:
For acts: {1, 1:9, 2:6}
Act 1 consists of 3 scenes, where Scene 1 contains 3 tracks, Scene 2 - 4 tracks, and Scene 3 - 2 tracks. Then Act 2 begins, so we need to start numeration from the beginning (thus ';'). Scene 1 of Act 1 contains 3 tracks, so we get
For scenes: {1-3, 1:3, 2:4, 3:2; 1-1, 1:3}
We do not need Scene 2 in Act 2, so we should use square brackets:
Act {1, 1:9, 2:6}. [Scene {1-3, 1:3, 2:4, 3:2; 1-1, 1:3}. ]%t
Type this text into the title tag to achieve our goal!
Tip: You can omit commas: {1-3 1:3 2:4 3:2; 1-1 1:3}
.
More examples: we have selected 7 files
Function | What we get file by file |
---|---|
{} | 1, 2, 3, 4, 5, 6, 7 |
{1} | 1, 2, 3, 4, 5, 6, 7 |
{2} | 2, 3, 4, 5, 6, 7, 8 |
{1-5} | 1, 2, 3, 4, 5, _, _ |
{2-5} | 2, 3, 4, 5, _, _, _ |
{1, 1:2} | 1, 1, 2, 3, 4, 5, 6 |
{1, 1:2, 2:3} | 1, 1, 2, 2, 2, 3, 4 |
{1-3, 1:2, 2:3; 1, 1:2} | 1, 1, 2, 2, 2, 1, 1 |
Here _ means "nothing" and not underscore.
The Edit Dialog
When you double-click any tag in the Tags Table, the edit dialog appears:
The toolbar contains buttons for quick access to tags editing operations described earlier. The button "Collect for future use" helps adding tag values to autocomplete lists.
The first line: this line contains the text that will be written into all selected files. On the image above all titles are different, so the first line is empty. If you type some text here, it will overwrite the values below.Multiple values: different text for different files. If you change any line here, the first line will be cleared.
The left-most panel contains various characters with diacritics. It can be hidden if not necessary.
Also a list of characters can be edited in the Qoobar settings.
To insert some character place the cursor where needed and left-click the character.
To insert its upper case variant click the character while holding down the Shift key.
The Legend button gives you access to placeholders which can be used just like here.
Autofilling track numbers. If you are editing track numbers you can autonumber them by typing 1 in the first line. If you are editing other tags please use the autonumbering function.
Using tags autocompletion: The autocompletion is available here as well.
Filling in tags: To quickly "parse" parts of a tag into other tags use the context menu:
Set this text into...: sets the selected text into all selected files as 'Artist' (f.e.).
Set this block into...: extracts similar texts in other rows of 'Multiple values' and sets them as 'Artist' (f.e.). To see what text will be selected in other rows select some text in the current row while holding down Ctrl key.
Find & Replace: Press Ctrl+F to show the find & replace panel.
You can navigate through the table by clicking buttons or using shortcuts: F3 (Ctrl+G in Linux) - find next, Shift+F3 (Shift+Ctrl+G in Linux) - find previous.
The Options button allows you to specify some search options:
- Case Sensitive
- Whole Words Only
- Use Regular Expressions. The available regular expressions are listed in Appendix 4.
Working with Cover Art pictures
Qoobar supports reading and writing of embedded pictures for all file types. You can also cut/copy picture from one group of selected files and paste it into other files. Tags importing from Discogs and Musicbrainz also imports cover art picture, if there is such. You can edit cover art type and description in the panel shown below:

and also undo / redo any changes in the picture info.
If you click on the picture, a dialog with full-size picture appears. To close it click on the picture again.
You can also resize the imported picture to desired width and height.
Exporting pictures to a hard drive is also supported. You can choose between JPG and PNG file formats.
Splitting files by CUE sheet
If you have a disc image (ape or flac or wav) and a cue file with it, Qoobar
can split it to separate tracks, just click
.
If you don't have shntool, flac and mac programs, install them.
- In Linux you should install flac and shntool from your repository. The mac deb package can be downloaded from http://members.iinet.net.au/~aidanjm/mac-3.99-u4_b3-1_i386.deb. For other systems please visit http://etree.org/shnutils/shntool/.
- Qoobar installer for Windows and Mac is distributed with all necessary executables.
If you have ffmpeg installed on your computer, you can choose the output files format. By default the format is flac, but you can set it to be m4a (ALAC codec), m4a (AAC codec), ogg, wma, wavpack, tta, speex, opus or mp3. I recommend to set 'alac' in Mac OS X and 'flac' in other systems, as they are lossless formats.
Note: By default all lossy formats are encoded with bitrate 320kb/s. If you want to change the bitrate, edit splitandconvert.sh or splitandconvert.bat script file and change the line "bitrate=320K" (or "set bitrate=320K").
Since ffmpeg is rather heavy, it is not shipped with the Qoobar installation. On Windows you can download ffmpeg.exe from http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-latest-win32-static.7z. Download the archive, unpack it and put ffmpeg.exe into the Qoobar installation folder.
On Mac OS X you can install it:
- using HomeBrew: brew install ffmpeg
- using MacPorts: sudo port install ffmpeg
- download it from ffmpegmac.net and place the executable into qoobar.app/Contents/Resources/ folder.
In Linux simply use your software manager.
Automatic filling in the tags
You can fill in the tags of selected files from their names or other tags. Select one or more files
and click the button
or press Ctrl+F. A dialog will appear:

1. Choose a source - file names, clipboard or one of tags.
2. Set a filename pattern (use / and \ to set folders). You can use all the non-read-only placeholders listed in Appendix 3. They can also be found under the "Legend" button.
All other characters will be treated as delimiters. And don't use patterns with no delimiter between two placeholders.
Use the %%
combination if you want to skip some part of a file name. For example,
if you have, say, 50 files "Unknown Artist - 1 - some_meaningful_title_1", "Unknown Artist - 2 - some_meaningful_title_2" etc.
and you only want to extract Titles, use this pattern: %% - %% - %t
.
3. Unselect files you don't want to change. Note that old tags are shown grayed.
4. Press OK.
Importing tags from the Internet
You can import tags of an album from the Internet.
Qoobar can search tags in freedb, Discogs, Musicbrainz and other databases, depending on the installed plugins.
Click the button
and the dialog will appear:
1. Choose the server. You need to have at least one download plugin installed - Discogs, freedb, GD3 or Musicbrainz.
2. Choose the search mode - by the lengths of selected files, by CD in CD-ROM, or manually - by artist name and album title.
3. Click "Start" and wait a little. The list of found albums will appear in the left panel.
4. Choose an album (just click on it) and wait while its details are being downloaded. Be patient here: if you are searching in Discogs and Musicbrainz, cover art pictures can require some time to be downloaded.
5. Uncheck tags which you do not want to import and click OK.
Renaming files
To open the Renaming files dialog click the button
or press Ctrl+R.
Qoobar supports three rename operations:
- File rename / move
- File copy
- Folder rename
The first two operations allow you to change file names, create nested folders etc. The latter one is intended for folder renaming without any touching of file names. In this mode some rename options are disabled by default.
The ordinary workflow is as follows:
- Choose the desired operation.
- Choose the output folder. If you don't select one, files will be written in their original locations. In "folder rename" mode the output folder is always the folder one level up, so this option is disabled.
- Set a file renaming pattern (use slash / or backslash \ to create subfolders). You can use all placeholders and functions listed in
Appendix 3. They can also be found under the "Legend" button.
There are three predefined patterns. You can edit these patterns in the Settings dialog. Any pattern you use will be added to the patterns list for later use.
If some tag is empty, the special character will be inserted instead. But you can enclose empty tags in brackets [], and this section will be removed from the file name.
In "folder rename" mode subfolders creation is not allowed, and all slashes and backslashes will be replaced by "_". Adjust the additional processing of file names.
The special Windows symbols in tags are replaced by default as follows:
- Question ? will be removed
- Double quotes " will be replaced with two single ones ''
- Greater/lesser characters < > will be replaced with parentheses ( )
- Slash / and backslash \ are used to create subfolders, but in tags they will be replaced with the special character (underscore _ by default)
- Characters | : * will be replaced by underscore
You can specify the maximum file name length. But whatever the value all file names in Windows are truncated to 255 characters.
Example:
%c (1905-1975)/%a/[%N. ]%t
for ogg file containing tags
- Composer="Bela Bartok",
- Album="Microkosmos",
- Track number=2,
- Title = "Ostinato"
the new file name will be
"Bela Bartok (1905-1975)/Microcosmos/02. Ostinato.ogg"
If you remove the track number, the new file name will be
"Bela Bartok (1905-1975)/Microcosmos/Ostinato.ogg"
Adding ReplayGain info to files
Qoobar can help you replaygain your musical files. This feature is not yet completely implemented, so only the following file type are supported: mp3, mp4/m4a, musepack, flac, ogg, wavpack.
Qoobar so far uses external utilities to do ReplayGain scanning, so if you are using one of Unixes, you need to install these utilities from your repository: mp3gain for mp3 files, aacgain for mp4/m4a files, vorbisgain for ogg files, metaflac for flac files, mpcgain and replaygain for mpc files, and wvgain for wavpack files. You can check whether all utilities can be found by Qoobar in the Utilities page of the Settings dialog. The Windows installation of Qoobar already has all necessary utilities.
Qoobar so far cannot replaygain the following file types: ape, wma, wav, speex, tta, oga, aiff.
Scanning for ReplayGain info:
- Select files, as many as you want. Qoobar will sort these files according to their type, so you cannot scan a folder that contains both mp3 and flac files as a single album.
- In the context menu or the "Tools" menu click "ReplayGain info...". If some files you have selected
have not saved changes, a dialog will appear with the suggestion to save them.
Please save these files if you want to proceed. Then
a dialog appears:
- Now you can use one of the buttons to start scanning:
- Scan per file track gain - All files you have selected will be scanned independently.
- Scan as a single album - All files you have selected will be scanned as one album regardless of their position or the "Album" tag.
- Scan as albums (by tags) - All files you have selected will be sorted according to their "Album" tag and scanned by groups.
- Scan as albums (by folders) - All files you have selected will be sorted according to their position and scanned by groups.
- Remove replaygain tags from files - The replaygain info will be removed from files.
Note 1: Qoobar can skip already scanned files. Just click on the "Skip already scanned files" checkbox.
Note 2: If you are encountering messages like "Couldn't find file" or "The FLAC file could not be opened", open the Qoobar settings dialog and on the Utilities page set the "Copy files into temp folder before replaygaining them" option.
Note 3: Using of external utilities is not a good way to do scanning. Maybe in some distant releases I will implement a unified algorithm just like one Foobar uses.
Qoobar Settings
You can reset all settings to their defaults by clicking the "Reset Settings" button in the bottom left corner.
Interface.
- Use undo / redo - this option lets you switch on/off the undo system.
- Automatically fill a tag in all selected files when pasting a single line: if this feature is on, you can select one file, copy its tags, then select several files and paste the copied tags right into all files, not only the 1st of them.
- Show folder tree - shows/hides the Folder Tree in the main window.
- Hide Tab bar with only one tab - If this option is set, the Tab bar will automatically be hidden if less than 2 tabs are opened.
- Characters: characters with diacritical marks of the Tags Edit dialog - edit the text to add or remove characters. You can also change the font if characters are too small or not recognisable.
- User interface language - the user interface language.
Autocompletion.
- Collect text - choose automatic / manual text collecting.
- Completion style - here you can choose whether completion matches the whole string or just the last word in it.
- The table below: switch on/off autocompletion for different tag types and edit lists of variants.
Tags Writing
- Save changes when closing Qoobar - check this item to automatically save all unsaved files, both selected and not selected.
- Simplify whitespaces when saving files - if you find it tedious to manually remove extra spaces, tabs etc., check this item, and Qoobar will do it automatically. Qoobar also always skips Comments and Lyrics tags.
- Write tags separated by ; in different fields - This option works only for flac, ape, ogg, oga, spx files. If you check on this option, the string "some text;another text;some other text" will be written not as one field "ARTIST=some text;another text;some other text" but as three different fields "ARTIST=some text", "ARTIST=another text", "ARTIST=some other text".
- Mp3 files - there you can choose which tags to read and write.
- ID3v2 tags version - the default version of ID3v2 tags when saving.
- Ogg / Speex files - you can choose into which tag to write your cover - the old one (COVERART) or the new preferred one (METADATA_BLOCK_PICTURE).
- ID3v1 tags - there you can choose how to duplicate ID3v2 tags into ID3v1.
- Transliterate Russian words - if you set this option, all
Cyrillic letters in id3v1 tags will be replaced according to this scheme:
а a р r б b с s в v т t г g у u д d ф f е, ё e х kh ж zh ц c з z ч ch и i ш sh й j щ x к k ъ w л l ы y м m ь j н n э eh о o ю yu п p я ya
Patterns
- Renaming patterns - here you can edit the list of patterns which will be available when you rename files.
Tagging schemes - here you can choose which scheme to use for tags reading and writing. There are one default scheme (you cannot edit this scheme) and 4 more schemes, which you can change: Tag&Rename, Mp3tag, Iain Lamb's scheme, Musicbrainz Picard.
You can edit scheme, clone or remove it (except the default one). If you click on the "Edit" button, a dialog will appear:
You can change the scheme name in the first line. The table sets the correspondence between Qoobar tags and various fields for 5 tag formats. If you want to set several fields for one tag separate them by semicolon, f.e. in the default scheme the tag "Total tracks" are written into APE files into 3 different fields:
TOTALTRACKS;TRACKNUMBER;TRACKTOTAL
.If you set the same field for "Track number" and "Total tracks" tags, f.e.
TRACKNUMBER
, the resulting field value will be written as "track_number/total_tracks", and vice versa, when reading the fieldTRACKNUMBER
with the value "02/10" it will be parsed as "Track number=02", "Total tracks=10".There are some peculiarities for ID3v2, Asf and Mp4 formats:
- ID3v2: Use prefix
TXXX:
for non-standard text fields,WXXX:
for non-standard web URLs, andCOMM:
for custom comments. - Mp4: Use prefix
----:com.apple.iTunes:
for your non-standard fields. The grayed internal fields are handled internally by Qoobar and cannot be changed. - Asf: The grayed internal fields are handled internally by Qoobar and cannot be changed.
- ID3v2: Use prefix
Utilities
- Player command - the external player name (with the full path optionally).
- CD-ROM device - type here the path to the CD-ROM Qoobar can read (or left this field blank if you have only one CD-ROM).
- Cue files encoding - the default encoding to use for reading cue files.
- External programs - here you can find out if all external programs are properly found by Qoobar.
- Default language to use with the enca utility - the language that enca uses to guess the encoding of the wrong written tags (f.e. when reading id3v2 tags of mp3 file that was previously saved with Windows-1251 encoding).
- Copy files into temp folder before replaygaining them - if this option is set, the files you are scanning for replaygain info will be copied to the temp directory first, processed and finally moved back.
Network
Here you can set proxy parameters if you use a proxy server.
Plugins
Here you can view installed plugins. They are divided into two groups:
- Download plugins - list of sources used in the Fill dialog.
- Tags editing plugins - list of plugins under the Tools menu.
Appendix 1. The default tagging scheme supported by Qoobar
The table contains all fields that Qoobar read and write in 5 different tag types: ID3v2.4, APE, Xiph, Asf, MP4.
Internal means that this field is stored in the file without any field key.
ID3v2.4 fields | Vorbis comments | APE fields | Asf fields | MP4 fields | |
---|---|---|---|---|---|
Composer | TCOM | COMPOSER | COMPOSER | WM/Composer | ©wrt |
Album | TALB | ALBUM | ALBUM | WM/AlbumTitle | ©alb |
Original Album | TOAL | ORIGINALALBUM | ORIGINALALBUM | WM/OriginalAlbumTitle | ----:com.apple.iTunes:ORIGINALALBUM |
Title | TIT2 | TITLE | TITLE | Internal | ©nam |
Subtitle 1 | TIT3 | SUBTITLE | SUBTITLE | WM/SubTitle | subt |
Music Category 2 | TIT1 | GROUPING | GROUPING | WM/ContentGroupDescription | ©grp |
Artist | TPE1 | ARTIST | ARTIST | Internal | ©ART |
Original Artist | TOPE | ORIGINALARTIST | ORIGINALARTIST | WM/OriginalArtist | ©ope |
Performer | TXXX:PERFORMER | PERFORMER | PERFORMER | foobar2000/PERFORMER | ----:com.apple.iTunes:PERFORMER |
Comment | COMM: | DESCRIPTION; COMMENT |
COMMENT | Internal | ©cmt |
Genre | TCON | GENRE | GENRE | WM/Genre | ©gen |
Year | TDRC | DATE | DATE | WM/Year | ©day |
Track Number | TRCK | TRACK; TRACKNUMBER; TRACKNUM |
TRACKNUMBER | WM/TrackNumber | trkn |
Total Tracks | TRCK | TOTALTRACKS; TRACKNUMBER; TRACKTOTAL |
TOTALTRACKS; TRACKNUMBER |
WM/TrackNumber; TotalTracks |
trkn |
Conductor | TPE3 | CONDUCTOR | CONDUCTOR | WM/Conductor | cond |
Orchestra | TXXX:ORCHESTRA3 | ORCHESTRA | ORCHESTRA | Orchestra3 | ----:com.apple.iTunes:ORCHESTRA |
Publisher | TPUB | LABEL | LABEL | WM/Publisher | labl |
Copyright | TCOP | COPYRIGHT | COPYRIGHT | Internal | ©cpy;cprt |
Mood | COMM:MusicMatch_Mood; PRIV:WM/Mood |
MOOD | MOOD | WM/Mood | mood |
Beats Per Minute | TBPM | BPM | BPM | WM/BeatsPerMinute | tmpo |
Lyricist 4 | TEXT | LYRICIST | LYRICIST | WM/Writer | lyrt |
Original Lyricist | TOLY | ORIGINALLYRICIST | ORIGINALLYRICIST | WM/OriginalLyricist | olyr |
Lyrics | USLT | LYRICS | LYRICS | WM/Lyrics | ©lyr |
Key 5 | TKEY | KEY | KEY | WM/InitialKey | ----:com.apple.iTunes:KEY |
Cover art | APIC | COVERART / METADATA_BLOCK_PICTURE6 |
Cover Art (front) | WM/Picture | covr |
Disc number | TPOS | DISCNUMBER | DISCNUMBER | WM/PartOfSet | disk |
Total discs | TXXX:TOTALDISCS; TPOS |
TOTALDISCS; DISCNUMBER |
TOTALDISCS; DISCNUMBER |
foobar2000/TOTALDISCS; WM/PartOfSet |
disk |
Encoded by | TENC | ENCODEDBY | ENCODEDBY | WM/EncodedBy; WM/CodedBy |
©enc |
Remixed by | TPE4 | VERSION | VERSION | WM/ModifiedBy | rmix |
Rating 7 | POPM; COMM:MusicMatch_Preference |
RATING | RATING | WM/SharedUserRating | -- |
ISRC | TSRC | ISRC | ISRC | WM/ISRC | ISRC |
URL | WXXX: | URL | URL | WM/URL | ©url |
Album artist | TXXX:ALBUMARTIST; TPE23 |
ALBUM ARTIST | ALBUM ARTIST | WM/AlbumArtist; AlbumArtist3 |
aART |
1 The opus number of the composition (Beethoven's 8th Symphony has opus number 93) or years of writing or something else.
2 The music form of your music, for example for the Mozart's opera "Die Zauberflote" Music category will be "Opera", for Rachmaninov's 2nd concerto the music form is "Piano Concerto" or "Concerto for piano and symphony orchestra" and so on.
3 These fields do not follow the id3v2 specification, which provides "TPE2" for orchestra/band/ensemble etc. But due to consistency with Tag&Rename the tag "Orchestra" is now written in TXXX:ORCHESTRA, and the tag "Album artist" goes to TPE2. Wma files have the same difficulty.
4 The author of opera libretto, of song words etc.
5 The tonality of a composition, for example Beethoven's Fifth Symphony has the key (tonality) C Minor (c-moll, ut mineur etc.).
Appendix 2. Qoobar Shortcuts
Shortcut | Action |
---|---|
Ctrl+A | In the files table: Select all files In the tags table: Select all tags |
Ctrl+C | Copy selected tags |
Shift+Ctrl+C | Copy selected tags into clipboard |
Ctrl+Down | Move selected files down |
Ctrl+F | In the main window: Fill tags with the information from files names In the tags editing dialog: Start search & replace |
Shift+Ctrl+F | Search for music files on your computer |
Ctrl+G | In the tags editing dialog: Find next (in Gnome and maybe KDE) |
Shift+Ctrl+G | In the tags editing dialog: Find previous (in Gnome and maybe KDE) |
Ctrl+H | Add selected tags to the autocompletion list |
Ctrl+N | Add a new tag to the selected files |
Ctrl+O | Add a folder with music files (with all subfolders) |
Shift+Ctrl+O | Add a file / files |
Ctrl+P | Play selected files in an external player |
Ctrl+Q | Exit from Qoobar |
Ctrl+R | Rename selected files |
Ctrl+S | Save all files in the current tab |
Ctrl+T | New tab |
Ctrl+Up | Move selected files up |
Ctrl+V | Paste copied tags |
Shift+Ctrl+V | Paste text from clipboard into a selected tag |
Ctrl+W | Close current tab (in Gnome and maybe in KDE) |
Ctrl+X | Cut selected tags |
Ctrl+Y | Redo the last change (in Windows) |
Ctrl+Z | Undo the last change |
Shift+Ctrl+Z | Redo the last change (in Gnome and maybe in KDE) |
Del | In the files table: Remove selected files from the list In the tags table: Delete selected tags |
Ctrl+Del | Clear the files table of the current tab |
F1 | Help on Qoobar |
F3 | In the tags editing dialog: Find next (in Windows) |
Shift+F3 | In the tags editing dialog: Find previous (in Windows) |
Ctrl+F4 | Close current tab (in Windows) |
Appendix 3. Placeholders and functions
This table contains all placeholders that you can use when renaming files and filling or editing tags.
Placeholder | Meaning | Comments |
---|---|---|
%c | composer | |
%a | album | |
%t | title | |
%p | performer | |
%A | artist | |
%d | conductor | |
%o | orchestra | |
%s | subtitle | |
%k | key | |
%C | comment | |
%g | genre | |
%y | year | |
%n | track number | Format: 1, 2, 3, ...10, 11, 12 etc. |
%N | track number | Format: 01, 02, 03, ...10, 11, 12 etc. |
%T | total tracks | |
%u | album artist | |
%G | musical category | |
%P | publisher | |
%X | copyright | |
%m | mood | |
%B | tempo | |
%w | lyricist | |
%W | lyrics | |
%D | disc number | |
%S | total discs | |
%e | encoded by | |
%x | remixed by | |
%R | rating | |
%O | original album | |
%v | original artist | |
%i | original lyricist | |
%U | URL | |
%I | ISRC | |
%b | bitrate | read only |
%l | length | For example: 14:53, read only |
%L | length in seconds | For example: 431, read only |
%r | sample rate | read only |
%h | number of channels | read only |
%f | filename without extension | read only |
%F | filename with extension | read only |
%z | filename with path and extension | read only |
%Z | file path | read only |
%E | filename extension | read only |
%% | not necessary field | If you want to skip some text while parsing a file name |
Functions that can be used along with placeholders.
Syntax | Description | Example |
---|---|---|
$last_word(X) $lastword(X) $lw(X) |
Returns the last word of the argument. | $last_word(%c) |
$first_word(X) $firstword(X) $fw(X) |
Returns the first word of the argument. | $first_word(%c) |
$nth_word(X,n) $nthword(X,n) $nw(X,n) |
Returns the n-th word of the first argument. If the second argument is empty, returns the first word of the first argument. | $nw(%p) $nthword(%p,3) |
$time(X) $time() |
Returns the current time formatted as X. The available options are:h the hour without a leading zero (0 to 23 or 1 to 12 if AM/PM display)hh the hour with a leading zero (00 to 23 or 01 to 12 if AM/PM display)H the hour without a leading zero (0 to 23, even with AM/PM display)
HH the hour with a leading zero (00 to 23, even with AM/PM display)m the minute without a leading zero (0 to 59)mm the minute with a leading zero (00 to 59)s the second without a leading zero (0 to 59)ss the second with a leading zero (00 to 59)z the milliseconds without leading zeroes (0 to 999)zzz the milliseconds with leading zeroes (000 to 999)AP or A use AM/PM display. A/AP will be replaced by either "AM" or "PM".ap or a use am/pm display. a/ap will be replaced by either "am" or "pm".t the timezone (for example "CEST").If X is empty, "hh:mm:ss" is used. |
$time() $time(hh:mm:ss:zzz) $time(h ap) |
$date(X) $date() |
Returns the current date formatted as X. The available options are:d the day as number without a leading zero (1 to 31)dd the day as number with a leading zero (01 to 31)ddd the abbreviated localized day name (e.g. 'Mon' to 'Sun').dddd the long localized day name (e.g. 'Monday' to 'Sunday').M the month as number without a leading zero (1 to 12)MM the month as number with a leading zero (01 to 12)MMM the abbreviated localized month name (e.g. 'Jan' to 'Dec'). MMMM the long localized month name (e.g. 'January' to 'December').yy the year as two digit number (00 to 99)yyyy the year as four digit number.If X is empty, "MMM d yyyy" is used. |
$date() $date(dddd, MM.dd.yy) |
$lower(X) | Converts X to lowercase. | $lower(%A) |
$upper(X) | Converts X to uppercase. | $upper(%a) |
$caps(X) | Converts first letter in every word of X to uppercase, and all other letters to lowercase, e.g. “blah BLAH” ⇒ “Blah Blah”. | $caps(%t) |
$caps2(X) | Similar to $caps, but leaves uppercase letters as they are, e.g. “blah BLAH” ⇒ “Blah BLAH”. | $caps2(%t) |
$num(X, Y) | Displays X as a number and pads with zeros up to Y characters (useful for track numbers etc). If Y is empty, pads to 2 characters. | $num(%n,3) $num(%n) (equals to %N) |
$char(X) | Inserts Unicode character no. X. | $char(9674) $char(0x25CA) |
$index(X) | Returns index of the file in the selected files starting from X. If X is empty, indexing starts from 1. | $index() $index(0) |
$section(X,Y,Z) $substr(X,Y,Z) | Returns section of X from Y through Z. Indexing starts from 1. Y and Z can either be numbers or strings. | $section(%c,4,10) $section(%c,0,blah) |
$abbr(X) $abbr(X,Y) |
Returns an abbreviation of X if X is longer than Y characters; otherwise returns full value of X. If Y is empty, returns an abbreviation of X. | $abbr(%A) |
$ansi(X) |
Returns X with all characters not present in current system codepage replaced with closest matches. | $ansi(Renée Fleming) |
$ascii(X) |
Returns X with all non-ASCII characters replaced with closest ASCII matches. | $ascii(Renée Fleming) |
$if(X,Y,Z) |
If X contains at least one present field, executes/displays Y, otherwise executes/displays Z. | $if(%A,%A,Unknown Artist) |
$if2(X,Y) |
Same as $if(X,X,Y). | $if2(%A,Unknown Artist) |
$if3(X,Y,Z,...) |
Returns the first of parameters that contains at least one present field. | |
$trim(X) |
Trims leading/trailing space characters from X. | $trim(%t) |
$replace(X,Y,Z) |
Replaces all occurrences of string Y in string X with string Z. | $replace(%A,_, ) |
$repeat(X,N) |
Repeats X N times. | $repeat( ,4) |
$stripprefix(X,Y,Z,...) $stripprefix(X) |
Removes the specified prefixes from X. If Y, Z etc. are empty, removes “A”, “An” and “The” prefixes from X. | $stripprefix(%A) |
$swapprefix(X,Y,Z,...) $swapprefix(X) |
Moves the specified prefixes to the end of X. If Y, Z etc. are empty, moves “A”, “An” and “The” prefixes to the end of X. | $swapprefix(%A) |
$simplify(X) |
Simplifies leading, trailing and internal whitespaces in X. | $simplify(%t) |
$transliterate(X,N) |
Transliterates Russian characters. | $transliterate(%A) |
$recode(X,Y) $recode(X) |
Changes encoding of X to Y. If Y is empty, uses enca to guess the encoding. | $recode(%A,ISO-8859-3) |
$ifequal(A,B,C,D) |
If the number A is equal to the number B, executes/returns C, otherwise executes/returns D. | $ifequal($index(),3,%p,%A) |
$ifgreater(A,B,C,D) |
If the number A is greater than the number B, executes/returns C, otherwise executes/returns D. | $ifgreater($index(),3,%p,%A) |
$iflonger(A,B,C,D) |
If the string A is longer than B characters, executes/returns C, otherwise executes/returns D. | $iflonger(%A,10,$abbr(%A),%A) equals to $abbr(%A,10) |
$select(N,A,B,C,...) |
Returns N-th of A,B,C… parameters. | |
$cut(X,N) |
Returns first N characters from the left of the string X. Same as $left(X,N) | $cut(%A,10) |
$left(X,Y) |
Returns first N characters from the left of the string X. Same as $cut(X,N) | $left(%A,10) |
$fix_eol(X) $fix_eol(X,Y) |
Truncates multiline strings, adding ” (…)” (version 1) or Y (version 2) at the end. | $fix_eol(%W,...) |
$insert(A,B,N) |
Inserts string B into string A after N characters. | $insert(%A,artist:,0) |
$len(X) |
Returns length of the string X in characters. | $len(%A) |
$roman(X) |
Formats the integer number X as roman numeral. X must be greater than 0. | $roman($index()) |
Appendix 4. Regular expressions
A regular expression is a pattern for matching sub-strings in a text. Qoobar supports regular expressions provided by the QRegExp class, which is modelled on Perl's regexp language. Here is only a brief description of expressions, quantifiers, and assertions that can be useful in your search.
Characters and Abbreviations for Sets of Characters | |
---|---|
\a | matches the ASCII bell (BEL, 0x07). |
\f | matches the ASCII form feed (FF, 0x0C). |
\n | matches the ASCII line feed (LF, 0x0A, Unix newline). |
\r | matches the ASCII carriage return (CR, 0x0D). |
\t | matches the ASCII horizontal tab (HT, 0x09). |
\v | matches the ASCII vertical tab (VT, 0x0B). |
\xhhhh | matches the Unicode character corresponding to the hexadecimal number hhhh (between 0x0000 and 0xFFFF). |
\0ooo | (i.e., \zero ooo) matches the ASCII/Latin1 character for the octal number ooo (between 0 and 0377). |
. | (dot) matches any character (including newline). |
\d | matches a digit. |
\D | matches a non-digit. |
\s | matches a whitespace character. |
\S | Matches a non-whitespace character. |
\w | Matches a word character (letter, number, marks, or '_'). |
\W | Matches a non-word character. |
\n | The n-th backreference, e.g. \1, \2, etc. |
Sets of Characters, grouping | |
[abc] | matches 'a' or 'b' or 'c'. |
[^abc] | matches anything but 'a' or 'b' or 'c'. |
[a-e] | matches a range of characters from 'a' to 'e'. |
(E|N) | matches expression E or expression N, where E and N can be complex. |
Quantifiers | |
E? | matches zero or one occurrences of E. |
E+ | matches one or more occurrences of E. |
E* | matches zero or more occurrences of E. |
E{n} | matches exactly n occurrences of E. |
E{n,} | matches at least n occurrences of E. |
E{,m} | matches at most m occurrences of E. |
E{n,m} | matches at least n and at most m occurrences of E. |
To apply a quantifier to more than just the preceding character,
use parentheses to group characters together in an expression. For example, tag+ matches a 't' followed by an 'a' followed by at least one 'g', whereas (tag)+ matches at least one occurrence of 'tag' | |
Assertions | |
^ | The caret signifies the beginning of the string.
If you wish to match a literal ^ you must escape it by writing \\^ . |
$ | The dollar signifies the end of the string. If you wish to match a literal $ you must escape it by writing \$. |
\b | A word boundary. |
\B | A non-word boundary. This assertion is true wherever \b is false. |
(?=E) | Positive lookahead. This assertion is true if the expression
matches at this point in the regexp. For example, const(?=\s+char)
matches 'const' whenever it is followed by 'char',
as in 'static const char *'. (Compare with const\s+char , which
matches 'static const char *'.) |
(?!E) | Negative lookahead. This assertion is true
if the expression does not match at this point in the regexp. For example, const(?!\s+char) matches 'const' except when it
is followed by 'char'.. |