acxi man page

Page Updated: 2021-06-08
acxi version: 3.3.28

The following are the supported options of acxi. If your version of acxi is missing any of these options, update to the newest version, or file an issue report with your distro to have them update their acxi package.

ACXI(1) acxi manual ACXI(1)

acxi - Command line audio conversion tool

  • Syncing: acxi [-a {extensions}] [--clean] [--codec {aac|libfdk_aac2}] [--copy {extensions}] [-d {destination-path}] [--exclude] [--exclude-append {filename|extension}] [-f] [--fork {0-xx}] [-i {flac|raw|shn|wave}] [-o {flac|mp3|ogg|opus}] [-q {NUMBER]} [-s {source-path}]
  • Tagging: acxi [--autotag] [--autotag-create] [--autotag-create-single] [--autotag-create-multi {filename start ID}] [--aggregate {file name|extension}] [--image {cover image filename}] [--prefill] [--prefill-file {release info file name}] [--no-replaygain] [--recurse {-1-xx}] [--remove-images] [--remove-padding] [--start {0-xx}] [--tag {"TAG1%:tag value^^TAG2%:tag value"}]
  • Checksums: acxi [--checksum] [--checksum-delete] [--checksum-verify] [--no-ffp]
  • Output Controls: acxi [--basic] [--full] [--log {0-3}] [--quiet] [--verbose]
  • Miscellaneous: [-h] [-U] [-v] [--dot] [--no-dot]
  • Debugging: acxi [--debug] [--nlink] [--no-nlink] [--test]

acxi is a command line audio conversion program and audio processing program. It converts and syncs all desired source lossless files to the desired output format, and to adifferent directory location.

Supports lossless input formats aiff/flac/raw/shn/wav. Output formats are flac, ogg, opus, or mp3. aif/raw/shn can only output to flac. mp3 can only have flac as input format.

By default, it will also copy over most common filetypes like .gif, .jpg, .png, and .txt. You can change the defaults using a configuration file, or the -c or -a options..

The destination directory cannot be the same as the source directory, but it can be inside of the source directory.

It can also generate or verify md5 and ffp checksum files if required, as well as tag/embed images using auto.tag or --tag / --image [filename] methods.

acxi runs pretests on each start to make sure input and output directories are valid, conversion programs for input and output formatting programs are present, and other user values are correct.

For backward compatibility, acxi requires only Perl 5.010 (or newer), so it should run on anything. Several features (copy, make directory, find files) were moved from *nix commands to Perl native commands in version 3, which should make acxi fully platform agnostic.
  • AAC/M4A encoding requires ffmepg with either libfdk_aac (Debian/Ubuntu package: libfdk_aac2) or native ffmepg aac codec. Source file must be flac. To transfer tags, m4a must be used.
  • Ogg encoding requires oggenc (Debian/Ubuntu package: vorbis-tools).
  • Opus encoding requires opusenc (Debian/Ubuntu package: opus-tools).
  • MP3 encoding requires: lame and flac. Source file must be flac. MP3 encoding does not support wav or raw input formats.
  • SHN -> FLAC conversion requires the codec shorten and ffmpeg.
  • --autotag, --tag, and --image require metaflac for VORBIS tagging.
  • --checksum and --checksum-delete require ffmpeg and md5sum (or any comparable program that generates md5sums). Md5 generating logic may be moved to straight Perl to remove the md5 program requirement.
  • --checksum-verify require flac executable and md5sum (or any comparable program that generates md5 hashes).
  • -U Self-updater requires curl.

In theory, acxi 3.x should run on Windows and Macs, but I have not tested that, but as long as the source/destination directory paths and the application/configuration paths are correct, it should 'just work'.

For example: acxi -o mp3 or acxi -fo opus or acxi -d /home/you/music

Note that some options have long and short forms. The short form is used when available in examples in order to keep things simple.

All tagging or checksum options (-A, -C, -D, -E, -G, -I, -K, -M, -P, -R, -S, -T, -V) must have an explicit source (-s) location supplied to avoid errors.

--aggregate [filename|extension]
Collect all the auto.tag files in a source directory and send to a target directory. Useful to collect data for a large collection. You can supply a list of comma separated items: jpg,info.txt,myart.png

Creates the directories the files were found in in the destination directory.

If no extra argument is supplied, it will default to collecting all the auto.tag files in the source directory.

Sample 1 (collects all auto.tag files): acxi --aggregate -s my-music -d music-data

Sample 2 (collects all supplied filename): acxi --aggregate info.txt -s my-music -d music-data

Sample 3 (collects all files of type jpg): acxi --aggregate jpg -s my-music -d music-data

Sampe 4 (collects multiple values): acxi --aggregate jpg,info.txt,png -s my-music -d music-data

--append, -a {extensions}
Takes one or more comma separated extensions. Do not use whitespaces in this list. These will be appended on to the current list being used on a one time basis. This can be useful if you want to copy over a specific file type for one sync action without having to make a full list with -c.

Sample: acxi -a md5 will add md5 file type to copy list.

--autotag, -A
Requires specially formatted file, default name auto.tag, to be put into each music collection directory. See the file for explanations.

FLAC input files only. OGG/Opus may be added. Will search source directory for auto.tag and update each collection/album that has that file present with the tagging information contained in it.

Note that all existing tags are removed. Default is to preserve the existing REPLAYGAIN tags in the auto.tag file since the assumption is those were generated for a reason.

See github acxi page for a blank sample file, but make sure to use --autotag-create, --autotag-create-single, or --autotag-create-multi [prefix] because it's a LOT faster that way, and you don't have to find the file. These file builders also preserve existing REPLAYGAIN and WAVEFORMATEXTENSIBLE_CHANNEL_MASK data found in the track file.

Notes on IMAGE: Avoid using large images, and as far as I can tell, there's no point in using anything other than the standard 'cover' type image (type 3). Keep sizes down by optimizing the image down to around 30-60 KiB, 300-400 pixel width.

If you make a mistake, or want to undo the images, use --remove-images --autotag after updating the auto.tag file by either removing the value for IMAGE or changing the value. Most media players I tested on only pay attention to the main image, and only one of them. Don't use a flac file as a way to store large high resolution images as a general rule, it just makes the entire collection pointlessly bloated.

Can be used with -K or -D for all in one tag checksum actions.

See --tag or --image for updating/modifying existing FLAC comment values, or adding images to your FLAC files.

--autotag-create, -C
Creates the auto.tag file in the directory, and populates it with field names, and per track blocks that include the track file name so you can just fill out the fields you want. Not recommended.

if you use the --autotag-create-single or --autotag-create-multi options instead Will also populate the TRACKNUMBER and TRACKTOTAL fields.

All existing REPLAYGAIN tags for the audio files are preserved and used in the auto.tag file. If want to remove those, use the --no-replaygain option.

--autotag-create-multi, -M {file prefix}
Similar to autotag-create-single except it includes a prefix argument which is the unique per disk track file name ID. Uses % to indicate a number between 1 and 9, or @ to indicate an upper/lower case letter from A to Z.

Use together with -E (--prefill) To prepopulate the ALBUM, ARTIST, ALBUMARTIST, PERFORMER, DATE, YEAR, and TITLE fields as well.

Samples: -M d% [d1track02.flac]; -M d%- [d2-track04.flac]; -M % [112.flac]; -M 2015-03-21.d%. [2015-03-21.d1.track03.flac]

-M d@- [dAtrack02.flac]; -M d@- [dB-track04.flac];0; -M @ [a12.flac]; -M 2015-03-21.d@. [2015-03-21.da.track03.flac]

This will create prepopulated DISCTOTAL, per disk DISCNUMBER and TRACKTOTAL, and per track TRACKNUMBER fields. This saves a lot of time when tagging multi disk sets.

Caveat: does not work with per disk subfolders, sorry.

--autotag-create-single, -S
When creating auto.tag file, as well as populating the per track file names, it also fills in the TRACKTOTAL and TRACKNUMBER fields.

Do not use for multidisk recordings since the totals per disk and the track numbering for the second or more disks will be wrong, but for single disks, it will speed up slightly the time required to manually populate the auto.tag file.

Use together with -E (--prefill) To prepopulate the ALBUM, ARTIST, ALBUMARTIST, PERFORMER, DATE, YEAR, and TITLE fields as well.

Single line per operation screen output, default value for acxi. Same as --log 1

--checksum, -K
Create .ffp and .md5 checksum files in your source directory. Checksum files are only created inside directories where flac files are found. Use --checksum-delete if you also want to delete existing checksum files before creating new ones. Only flac input type is supported.

This will not create md5 sums for for files in directories that do not contain flac files, because that creates a very complicated logical puzzle which is hard to accurately or reliably resolve in code.

Do not use together with other cleaning/syncing options. Can be used with -A.

--checksum-delete, -D
Will first delete all .md5, .md5.txt, .ffp, and .ffp.txt files before creating new checksum files. Note that some audio processing tools add .txt to the checksum file name, which creates undesirable outcomes since some tools that use .ffp or .md5 files don't recognize the files if they have the .txt extension added on.

I can think of very few reasons to want to preserve .ffp or .md5 files, since they should in general reflect what the actual files you have are.

Do not use together with other cleaning/syncing options. Can be used with -A.

--checksum-verify, -V
Will read existing .md5 files and compare md5 hash of files listed in the md5 file with the actual checksums of those files. Also will verify FLAC integrity (this is pretty slow, so be patient).

Note that when reading md5s, it does not matter if they are windows or *nix path styles (/ or ), it translates them to the one on your system. It also ignores line endings, which makes reading windows generated md5 files on *nix systems a breeze.

--clean [sync]
Clean directories and files from destination (compressed) directories which are not present in the source music directories. Will show you the directories or files to be removed before deleting them, and you have to confirm the deletion of each set two times before it will actually delete it. If used with optional value sync, will proceed to sync actions, otherwise exits after cleaning.

Take care with this one, if you have other compressed formats in your compressed directory than your default $OUTPUT_TYPE format, it will want to delete all those, so do not use this option unless your compressed directories are literal true copies of your source directories.

To confirm deletion of each group, you must first type 'delete' then hit enter, then type 'yes' to confirm the deletion. This should avoid errors and unintended deletions.

Note that this feature does not run in silent/quiet mode because it should never be used automatically, or without explicit confirmation by the user. It can be enabled using the CLEAN configuration option below so that acxi always cleans up before it starts syncing.

--codec {libfdk_aac|aac}
Currently only supported for aac/m4a output using ffmpeg.

--copy, -c {extensions}
Comma separated list of extensions for file types you want to sync to your lossy music directory. Overrides default values. Use lowercase, but it's case insensitive internally. Do not include the period in the extension.

Default values are: bmp doc docx gif jpg jpeg odt pdf png tif txt

If you use no value, it will not copy anything.

Sample: -c txt,pdf,png,jpg,jpeg,gif

All output available, including debugger data for some events. Same as --log 4

--destination, -d {path}
Full path to the directory where you want the processed lossy (eg, ogg) files to go.

Disables the default behavior when creating file/directory syncing/action lists of excluding dot files and directories (like /home/user/.config). Added by request, but use at your own risk, I take NO responsibility for any unintended consequences. Note that if you do find unintended consequences, you should be able to filter those out using additional --exclude lists.

--exclude, -x {items}
Exclude a list of unique strings separated by ^^, or a full path to an exclude file whose name includes the value set in $EXCLUDE_BASE.

Excludes sync/copy action to destination directory. Replaces EXCLUDE values if present. Anything matching in any part of the source directory file path will be excluded or removed from the destination directory.

If it's a path to a file of excludes, use one exclude string per line.

Sample: --exclude='artwork^^Daisy Queen^^Bon Jovi'

Sample: --exclude='/home/me/music/excludes/acxi-excludes-phone.txt

If you want to temporarily suspend exclude actions one time, use: --exclude='UNSET'

--exclude-append, -X {items}
Append an item to the list of excludes or file. Only accepts string values, not a file path.

Sample: --exclude-append='My Sharona^^Dancing Queen'

--force, -f
Overwrites all the mp3/ogg/opus/jpg/txt etc. files, even if they already exist. This is useful if you for example want to change compression quality on existing files.

--fork, -F {0-xx}
Uses Perl module Parallel::ForkManager to allow for forking of audio file conversions actions. This can speed up your syncing a lot depending on how many threads your CPU can support and how many you assign with this option.

Supports integer values 0 or greater, but tests show 1 is slower than not using forking at all. 0 is default, and disables forking.

Some debugging features will be slightly distorted if fork is used, but it is only cosmetic.

See also configuration file option FORK if you want to set this permanently.

Please note that this can have strange consequences if you run it on a huge job, even if you use only half your threads, the system can still act strange as a result of running it with multiple forks.

Full screen output, including full verbosity of flac / oggenc / opusenc / lame conversion tools for flac, mp3, ogg, or opus output. Same as --log 3

--help, -h
This help menu.

--image, -I {cover image file name|remove}
Flac only. Use only on a single directory. Takes the supplied cover image file and embeds it into the existing flac files. Use with --remove-images if you want to remove existing embedded images. If this option is not used, it will not add images to the file if images are found in it (image embedding is cumulative in FLAC files).

Do not use if you are using an auto.tag file, thise is is intended only to add an image to an already tagged .flac file without retagging it.

Only use .png or .jpg image types, otherwise the results may be inconsistent. If you use the value 'remove' all embedded images and their padding will be removed.

Only run this in a single recording directory, do not use globally!!

Sample: acxi -s ./ --image='cover.jpg'

Sample: acxi -s ./ --image remove

Sample: acxi -s ./ -I cover.jpg --remove-images

--input, -i {aif|flac|raw|shn|wav}
Input type. Supported types: flac, wav, raw, shn.

aif/raw/shn - only support flac output.

shn - requires the shorten codec, which you usually have to build yourself unless you can find a package for it. Use --log 3 to test the first time to make sure you have shorten codec installed.

Some other input types may be active for testing purposes occasionally, but acxi does not promote, advocate, or officially support those types (like mp3 to flac).

Supports flac to flac for cases where you might want to redo flac files to known quality/compression levels, or redo them using current flac codecs.

Tags transfer from AIF files that are tagged to FLAC files in my tests.

--log {0-4}
Dynamically set LOG_LEVEL. Helps for debugging certain types of issues where you might want to see the full level 3 debugging information from audio codec conversions for example.

0 - shuts off all output except errors. Same as --quiet.

1 - basic single line output. Same as --basic.

2 - more verbose output. Same as --verbose.

3 - full output, incuding all conversion tool output. Same as --full.

4 - debug output, includes some extra debugging data. Don't use in general. Same as --debug.

Set $File::Find::dont_use_nlink = 0. Default is 1. Only change this if you have a reason to do so. Setting value to 0 may make cifs type file system reads fail, on a samba network share for example. If you encounter issues with the default value, please post an issue on the acxi github page.

See this PerlMonks thread for an explanation:

Overrides user configuration DOT. Basically restores default behavior for acxi in terms of skipping all dot files. Only useful if you have set DOT to true in your configuration file and want to do a one time override of that setting.

Skips FLAC ffp checks and generation on --checksum, --checksum-delete, and --checksum-verify. Useful if you have already verified or created ffp/flac data and only want to check md5 sums.

Set $File::Find::dont_use_nlink = 1. This is the default value. See --nlink for details.

Remove any existing REPLAYGAIN and WAVEFORMATEXTENSIBLE_CHANNEL_MASK tags when creating a new auto.tag file. See --autotag-create for details.

--output, -o {aac|flac|m4a|mp3|ogg|opus}
Output type. Supported types: aac, flac, ogg, opus, m4a, mp3

aac - only supports flac input type, To preserve flac tags, use m4a.

flac - only supports flac, shn, or raw input types.

m4a - only supports flac input type, Container around aac data. Use if you want to preserve flac tags in your aac audio file.

mp3 - only supports flac input type

--prefill, -E
Will attempt to populate auto.tag file using data from info.txt file located in flac directory. Note that the data must have an extremely specific syntax for the prefill feature to work:

* Band name must be first line in file.

* Date must be iso YYYY-MM-DD formatted, and must be the first thing on its line, and must be in first 5 lines of file.

* Location can be 1 or more lines not starting with 19|20XX on lines 2-5.

* No non Band name, Date, Location info can be on first lines of file before first blank line.

* Performers list must be preceded by a line starting with Band:, Lineup:, Line-up:, or Band Lineup, Band Line-up, and must be followed by a blank line, with no empty lines between performers.

* Track numbers must start with either X-X., X-XX. (for multidisc), X. or XX. where X is a number. The number of tracks listed must correspoond to the total number of actual track files present. If they do not match in counts, acxi will exit with an error.

Should always be run in the flac folder with -s./ or unexpected results could occur.

Use together with -M or -S to prepopulate the ALBUM, ARTIST, ALBUMARTIST, PERFORMER, DATE, YEAR, and TITLE fields as well. Note that ALBUMARTIST is filled with ARTIST name.

Use the --test option to make sure the data will prefill as expected before actually creating the auto.tag file.

Samples: acxi -s./ -ES; acxi -s./ -EM d%- [d2-track04.flac];

--prefill-file {file name}
An alternate file name to use for prefill. Note that file MUST be .txt, and should not be anything other than ASCII or UTF8, otherwise you will get ungood results.

--quality, -q {number}
Set compression quality level.

aac/m4a - n can be an integer between 10-500 (bitrate). 500 is largest file/highest quality.

flac - n can be an integer between 0-8, 0 is largest file / fastest conversion time, 8 is smallest file, longest time. Note that tests show there is very little point in using anything over 4.

mp3 - n can be an integer between 0-9 (variable bit rate), 0 is largest file / highest quality.

ogg - n can be between -1 and 10. 10 is the largest file/highest quality. Fractions are allowed, e.g. -o ogg -q 7.54

opus - n can be an integer between 6-256 (bitrate). 256 is largest file/highest quality.

Note that using a higher or lower quality than you used to create the compressed files will not result in redoing those files unless you use the -f / --force option to force the overwrite of the existing files.

--quiet, --silent
Turns off all screen output, except for error messages. Same as --log 0

--recurse {number}
There may be cases where you want a certain action to NOT recurse beyond the number of steps you supply as an argument for this option. Default recursion level is infinite (-1). If you use 0, it will only return files for the current directory.

This can be useful if you for example do not want to create ffp or md5, or sync files in a sub directory.

In general, use the --test option to verify the results are what you expected before actually proceeding with this option for real.

--remove-images, -R
Use with --autotag or --image. Will remove all embedded image data, and the associated padding, prior to tagging (and adding new image if applicable) audio file. Note that simply removing image data will leave the padding in place, which makes the file get bigger each time a new image is added.

This is the full command required to fully restore a flac file size. Failure to use --dont-use-padding leaves the file size unchanged.

metaflac --remove --block-type=PICTURE,PADDING --dont-use-padding file.flac

--remove-padding, -P
Use with --autotag and --tag if you want to remove padding. My tests showed inconclusive results with this, and it slows down the tagging a lot, especially over network connections.

--source, -s {path}
Path to the top-most directory containing your source files (eg, flac).

--start {number}
This option is ONLY used with the auto.tag file creation options: -M, -S and -C.

For creating the track number tag, start auto.tag track numbering at a different value than default 1. This lets you handle cases where there was for example:


This will subtract 1 from track totals, so output is as expected, say for 0 start, then 1-14 tracks, you will see 14/14 when your media player shows x/yy counts for track listings.

For values greater than 1, will add that number to the real found track totals, so that, for example, if first track is 03.flac, you will see 15/15 for track 15.flac as you'd expect.

These are not normal circumstances, but they do happen, so now you can handle those. Check your work carefully, check the auto.tag file

Note: some media players get confused by the track tag number 0, I beileve they are doing a type of if not test, and the 0 registers in some cases as not, so the player may show no track number, not the expected 0.

In general, use the --test option to verify the results are what you expected before actually proceeding with this option for real.

--tag, -T {"TAG1%:tag value^^TAG2%:tag value"}
Modify one or more tags in a single recording or group of recordings. FLAC only, use standard FLAC tag values for best results. Separate TAG and tag value with %:, and separate tag/value sets with ^^. This lets you retag entire blocks of artist/recordings at once if you only want to modify (or create) one or more FLAC tags.

Removes all existing tags of that type before updating since FLAC just adds the new tag to the already existing set of tags by default.

Sample: acxi -s ./ --tag "GENRE%:Heavy Metal^^ARTIST%:Black Sabbath"

If tag value is UNSET it will just remove that tag and its contents.

Sample: acxi -s ./ --tag "COMMENT%:UNSET^^ARTIST%:Black Sabbath"

Test your configurations, copy, sync, checksum, and tagging actions without actually doing the operations. Activates --full as well for more complete output.

--update, -U
Self updater, will update acxi and its man page. Non GNU/LInux will probably require changing the default values, which are set in USER VARIABLES for curl, acxi and man page acxi.1. Requires curl.

Without full verbosity of full, no flac/oggenc/opusenc/lame for mp3, ogg, or opus conversion process screen output, but more verbose than default. Same as --log 2

--version, -v
Show acxi version.

You can see by running acxi -h the configuration file locations.

acxi will read its configuration/initialization files in the following order.

/etc/acxi.conf contains the default configurations. These can be overridden by user configurations found in one of the following locations. If $XDG_CONFIG_HOME/acxi.conf exists, it use it, else if $HOME/.conf/acxi.conf exists, it will use it, and as a last default, the legacy location $HOME/.acxi.conf is used, i.e.:

$XDG_CONFIG_HOME/acxi.conf > $HOME/.conf/acxi.conf > $HOME/.acxi.conf

$CONFIG_DIRECTORY - Sample: $CONFIG_DIRECTORY='/path/to/configuration/directory'

NOTE: only use this method if you are running Windows, or any OS without $HOME or $XDG_CONFIG_HOME environmental variables, or if you want the configuration file to be located somewhere else.

This value must be set on top of acxi in the USER MODIFIABLE VALUES section because that is what it will use to locate the configuration file. acxi will look for acxi.conf inside that directory. This path value will override/ignore all other configuration files.

The following corresponds to the USER MODIFIABLE VALUES section in the top comment header of acxi.

The following set your system path for the required applications:

COMMAND_FFMPEG - Sample: COMMAND_FFMPEG=/usr/bin/ffmpeg (default path)

COMMAND_FLAC - Sample: COMMAND_FLAC=/usr/bin/flac (default path)

COMMAND_LAME - Sample: COMMAND_LAME=/usr/bin/lame (default path)


COMMAND_OGG - Sample: COMMAND_OGG=/usr/bin/oggenc (default path)

COMMAND_OPUS - Sample: COMMAND_OPUS=/usr/bin/opusenc (default path)


CLEAN - Sample: CLEAN=true Switches on/off --clean sync to apply cleaning action to your destination directories. Accepted values: [enable|on|true|yes] or [disable|off|false|no]. Default is false.


This the original, working, like flac, wav, etc.


This is the processed compressed music files, ie, ogg, opus, or mp3. Destination cannot be the same as Source directory, although it can be inside of the source directory.


DOT - Disables default behavior of skipping all files starting with a .. Takes values true or false. Note that false is the acxi default so there's no point in using that.

EXCLUDE - Sample (if list): EXCLUDE=artwork^^Daisy Queen^^Bon Jovi

Sample (if exclude file): EXCLUDE=/home/me/music/excludes/acxi-excludes-phone.txt

Excludes these matches from destination directory in sync or clean operations.

EXCLUDE_BASE - Sample: EXCLUDE_BASE=massive-exclude-list

This is the part of the file name minus the .txt that will be matched to see if it's an exclude list or an exclude file. Default: acxi-excludes

This lets you use multiple exclude files, as long as they all contain the value found in EXCLUDE_BASE acxi will know it's an exclude file, not a list.

The following are NOT case sensitive,ie flac/FLAC, txt/TXT will be found. INPUT_TYPE and OUTPUT_TYPE will be forced to lower case internally.

Changing quality levels will not redo existing files.

CODEC_AAC - Sample (default value): CODEC_AAC=libfdk_aac



COPY_TYPES - Sample: COPY_TYPES=doc,docx,bmp,jpg,jpeg Use this to override the default file types acxi will sync. Set to 'none', if you only want to sync the music files, not copy over images, text files, etc.

QUALITY_AAC - Sample: QUALITY_AAC=320 Supported values: 10 to 500. 500 is the largest file size / highest quality. Applies to aac and m4a.

QUALITY_FLAC - Sample: QUALITY_FLAC=5 Supported values: 0-8. 0 is the largest file size / fastest to run. 5 to 8 shows only a tiny decrease in file size but a huge increase in time to process, so 4 is a good balance in general.

QUALITY_MP3 - Sample: QUALITY_MP3=2 Supported values: 0-9. 0 is the largest file size / highest quality.

QUALITY_OGG - Sample: QUALITY_OGG=8.25q Supported values: -1 to 10. 10 is the largest file size / highest quality. Supports fractions.

QUALITY_OPUS - Sample: QUALITY_OPUS=256 Supported values: 6-256. 256 is the largest file size / highest quality / best bitrate.

These only apply to the --autotag option, and set a different name for the default auto.tag filename. The filename must be unique and never occur in any other context in your music collection files.

INFO_FILE - Sample (default value): INFO_FILE=info.txt

info.txt - The filename in the flac directory being processed that will be used to populate the auto.tag fields.

TAG_FILE - Sample: TAG_FILE=autotags.tag

auto.tag - The filename to be used to autotag. Default is auto.tag. Filename must be unique, and must not be found anywhere else in your collection. Do not change unless you have a very good reason to.

These only apply to the --checksum option, and set a different name than the default file names used in the top section of acxi. Note that the names should not include an extension, since that is added on automatically.

FFP_FILE - Sample: FPP_FILE=fingerprint This is the name of the generated .ffp file, not including the .ffp extension, you want your flac ffp files to have.

MD5_FILE - Sample: MD5_FILE=checksum This is the name of the generated .md5 file, not including the .md5 extension, you want your md5 checksum files to have.

The following are advanced options which should only be used if you know what you are doing:

DONT_USE_NLINK - Sample: DONT_USE_NLINK=0 This sets File::Find::dont_use_nlink to 0 or 1. 1 is default. Generally you should be using 1, but in certain cases 0 may be faster. Test using the --nlink option to disable nlink, and see that option for more information.

FORK - Sample: FORK=4 This uses Perl's Parallel::ForkManager and accepts values of 0 or more. Note that 0 will not create a fork. See --fork for details. Using this will speed up your syncing a lot if you have more than a 1 core CPU.

You can change LOG_LEVEL either at the top of the acxi file itself, or in the configuration file, by setting the verbosity/debugging level to what you want.

Sample: LOG_LEVEL=3

0 - quiet/silent - no output at all (except for errors).

1 - basic - single line per operation. This is the default, so you don't need to change it.

2 - verbose - but without the actual conversion data from codecs

3 - full - all available information. Note: with -F / --fork conversion output may be ordered somewhat randomly since it shows each thread's results as it completes as well as when it started.

4 - debug - all available plus some specialized debugging information.

These are only for the -U self updater feature. The path defaults must be changed for non-GNU/Linux systems in most cases.

COMMAND_CURL - Sample: COMMAND_CURL=/usr/local/bin

MAN_DIRECTORY - Sample: SELF_DIRECTORY=/usr/share/man/man1 This is the directory the man page is in.

SELF_DIRECTORY - Sample: SELF_DIRECTORY=/usr/bin This is the directory that acxi is in.

Please report bugs using the following resources.

Issue Report
File an issue report:
Post on acxi forums:
You can also visit channel: #smxi to post issues.

acxi is a fork and full rewrite of

Copyright (c) Harald Hope, 2010-2021

Forking logic: prupert. 2019-07

MP3 tagging: Odd Eivind Ebbesen - - <oddebb at gmail dot com>

Copyright (c) ( 2004 - Jason L. Buberel -

Copyright (c) ( 2007 - Evan Boggs -

Thanks for trying acxi out, I hope it's useful to you.

2021-06-08 acxi