Acxi Versions Save

acxi is an audio conversion tool that helps sync lossless to lossy formats.

3.6.00

1 year ago

Another huge one, coupled with 3.5.06, which was almost big enough to warrant a new major version number (no major version change only because no actually new core feature were added, just many enhancements of existing features)

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Features:

  1. New core tool: --taglist/-L, with triggers a (create auto.tag), c (condensed mode taglist.tag), f (default, full mode taglist.tag), i (create info.txt file from tags), s (skip file exists tests, run in dry mode), w (write changes to file). These triggers are similar to those in -X/--infofix. Create screen/file output based on existing tags. Great for analyzing tags in directories, collection, etc, goes well with --duplicates, --analyze, and --checksum-verify.
  2. -A handles multiline tag values now, going along with -L also handling those.
  3. --autotag-file/--af lets you change default auto.tag file. This was an oversight, had forgotten to add that switch.
  4. Expanded --prefill/-E, now many more field names handled.
  5. Sync, -A, -L, added more per file only tags (that never apply to blocks of files, only 1)
  6. Big supported tags update for flac > mp3 tagging, that was what started this all off.
  7. Nice usability updates: --config, check existing acxi configs, added $patch_version to let you check development patch versions, like pinxi has.
  8. Added some synonyms for options, like --glob, where it makes sense to offer more ways to remember an option.
  9. Layout: added $line_result to give better indication that following data is the result of a query, it's like this: ::::::::::::::...
  10. Stopped -C,-M,-S being able to be run globally across a directory of releases, that's too risky, now source must be directory flacs are in to be run.
  11. Removed ogg as default syncing mode, ogg is deprecated, now forces user to set one explicitly, this also avoids horrible messes where you forgot to set it or something, and end up creating duplicate different lossy format by accident.
  12. Man, options updates.
  13. New doc docs/acxi-values.txt this tracks internally switches, hashes, scalars, etc, and also has --dbg values, which are now more granular. Removed global --debug switch, now all are granular via --dbg.
  14. Many code refactors and cleanups and fixes. See changelog if you are interested.

3.5.06

1 year ago

A huge upgrade to infofix/prefill logic, along with many other smaller and not so small enhancements. These make using -E/--prefill much faster, and it now requires far less manual intervention when prepping an info file for use as prefill data source.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Features:

  1. Checksum delete: added more file extensions and ids to delete, mostly old shntool junk, but also robots.txt and index.htm and other stray downloader junk.
  2. -U 3 for updater, allows updating from smxi.org
  3. --no-ssl disable ssl certificate checks for -U.
  4. Added --dry-run, --dry for --test.
  5. Added --copy-append for --append/-a to make it consistent in alternate syntaxes.
  6. Infofix: -X now replaces tabs with spaces, those are always messy
  7. Infofix: -Xa new starter trigger syntax to start track numbering for cases when there are no track/song numbers.
  8. Infofix: -Xc fix Windows cp-1252 characters, not all of them, but the main offenders like magic quotes, ellipses, n,m dashes.
  9. Infofix: -Xd, -Xk - added test, switch for dd/mm/yyyy type date formats, but only works when file contains dd > 12.
  10. Infofix: -Xk triggers d, adds day of week in parentheses after iso date.
  11. Infofix: -Xn failed to handle track numbers like 23:. Also added more supported numbering formats, like d1t23.
  12. Infofix: -Xv triggers q, adds to quality report flac ffp verification.
  13. Infofix: -X0 removes characters before content, good for copy/paste etc of data from info file.
  14. Infofix/Prefill: made both support --prefill-file/--info-file for alternate file names. Short forms --if / --pf.
  15. Infofix/Prefill: now you can add terminator markers to track numbers. Works with -E, -Xn, -Xt, -Xm.
  16. Prefill: strips ;, % from track end along with *, those are special codes from some live archive projects.
  17. Prefill: loosened first location of Lineup/band type performers list, now can start closer to top block.
  18. Prefill: added many prefill field name types, see changelog. Also added some auto append to Album name generation for Etree id, shnid, Type:.
  19. Prefill: added --prefill-tag/--pt to let you add one time, or via configuration item, tags to use those values to prefill.
  20. Sync: was translating ` to ' but that leads --clean to keep thinking that's a different file, removed that translation.
  21. Help, man updates for the above changes and fixes and updates.

3.5.05

1 year ago

A quick point release, a few cleanups, new sample acxi.conf file included, which may or may not be of use to people. Also added LICENSE.txt file, which is needed for packagers.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Features:

  1. Removed stray debugger from 3.5.04
  2. Added yyyy/mm/dd syntax option for -Xd date fix.
  3. Fixed mp3 to support decimals and min quality value 9.999, it was integer only before.
  4. Added sample acxi.conf file, to go along with sample auto.tag file.
  5. Man page edits, fixes, typos, updates to be more clear for some options.
  6. Added LICENSE.txt file, for GPL v3 or later.

3.5.04

1 year ago

A quick bug/fix release. Plus more prefill field names.

Ran into problems with how -Z and -Xq were handling 0 sample audio source files, -Xq crashed on divide by 0 error, and -Z failed to list the 0 data file in the analysis output.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

  1. Fixed -Xq Perl crash on 0 size/duration.
  2. Fixed process_metaflac()/process_ffprobe() to only show errors on -Xq, except for the basic failed command error handler. -Xq now 3. exits with error message, so it doesn't write to the info file, and -Z prints the file info and the ALERT messages as intended.
  3. Added to sub print_size option to print Byte count, not just KiB as minimum value. That avoids printing out 0 KiB for a file with say 86 B of meta data, like a FLAC file.
  4. Some code refactors in this area to make it easier to read and understand and debug.
  5. Extended -E/--prefill field name detections to enable many common auto.tag tag names, like GENRE, PRODUCER, COMPOSER, ALBUM. The goal is to allow the info file to completely populate the auto.tag file with no need to do any edits at all.

3.5.03

1 year ago

Improved --prefill/-E to use existing top block field names in info file to prefill artist, venue, location, date, and producer tags if present. Pretty much just this one feature was improved, with some code refactors as well. Due to user generated field names, it will take a few releases to get the set good enough to capture most user's choices, but the starting set of matches should be fine.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Main features:

  • Added dynamic detection of field name: value pairs on top data block of info.txt type file, if present, switches to use field name/value tests for ARTIST, LOCATION, VENUE, DATE tags.
  • Started process of moving away from passing arrays back and forth, to use array references more consistently. This will take some releases to do, and is not a priority.
  • Some more code reorganization and cleanup to make it easier to follow and read, top variable assignments better organized.

3.5.02

2 years ago

Some finalizing of new features and small issue/bug fixes.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Main features:

  1. FLAC to m4a conversion bug fix
  2. Added dithering and --dither options to improve high bit rate to lower bit rate resampling. Also added more clear output when resampling so you can see what is being used and applied.
  3. For -Z, added more bad data warnings, too short track time warning.
  4. Very nice new --prefill addition, --multiartist, allows correctly tagging based on artist/title in info file, using a given separator. Big improvement in usability for mulitartist releases, particularly ones that were not tagged correctly.
  5. Man and help updates for these changes.

3.5.01

2 years ago

Some finalizing of new features and small issue/bug fixes.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

Main features:

  1. --clean requires full paths to be safely used, that is now enforced.
  2. -Z/-Xq now can be used with any input type, not just flac.
  3. --resample is completed with explicit dither type and also --dither {types} option. ffmpeg does not use dither when resampling by default, now uses shibata for all resamples below 24 bit depth, in others words, at least 99.9% of all users of acxi for resampling.
  4. Added support for standard distro override: /etc/acxi.conf.d/acxi.conf - why not?
  5. More internal refactors and cleanups to make code easier to maintain and use long term.

And that's it, these are the expected small glitch fixes, and fine-tunings for the 3.5.01 primary release. All appears shipshape,, all features are complete to the level that I think it matters to most users, including myself, so maybe will slow again now until new needs or issues arise.

3.5.00

2 years ago

Last sets of cleanup changes and features and updates for 3.5.00 release. This finalizes all the features that were launched since 3.4.00. This turned out to be much more than expected, thus the bump to next major number.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

  1. One good change, disconnected -v [0-3], --test, and --debug completely, added internal debug flag, was using -v4 as debug, but that led to forcing output in ways I didn't like, same for --test, which previously tripped -v3. Now you use each to do the specific thing it does.
  2. One small update to -X, added 'l' (el, not eye), which sets to lower case globally, but tries to upper case first sentence starters. For extra messy and verbose but uppercased info files. That roughly completes must stuff you need for info file processing.
  3. Also for -X, made a nice visual improvement, changed the cluttered looking line starter 'Fix: ' to '|: ' for non writing actions, and to '| ' for writing actions. That looks way neater, and also creates a nice ascii box effect containing the info line output.
  4. More doc fixes, man, help, readme, changelog, those are now better for documentation overall, and more useful for a new users I think, or hope. Well, for the right new users, hopefully the wrong ones won't like acxi and will look elsewhere.
  5. Code: more cleanups and fixes, bringing acxi up to my current standards, why not? Makes code easier to work with. Also dumped the man page updater validation method and replaced it with the same inxi uses, commented out .\" EOL string test at end of file. That's a groff comment, so it doesn't show, and will always be at end of file.

And that's it, hopefully these changes will be it for a while, but you never know, features come along demanding attention, but this last set is really good, so hopefully 3.5.01 will just be glitch or bug fixes and maybe a fine tuning or two.

3.4.01

2 years ago

Big update, lots of fixes, new features, enhanced features, cleaned up output, you name it, this one has it! Huge usability and processing improvements, with a focus on large bulk processing actions, and with -g globbing option, running bulk actions on a subset of directories.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

New features and main fixes:

  1. Output is much cleaner, with irrelevant parts removed, indentations cleaned up for much better bulk processing output.
  2. Error handlers and validation were improved, and cleaned up, and refactored a bit to make easier to maintain, and to make logic easier to follow.
  3. New feature: --duplicates/--dupes - detect duplicate flac ffp hash signatures in collection, helps to locate repeated recordings under different names etc, and to find repeated tracks within a recording.
  4. New feature: --analyze/-Z - do basic flac analsys, time per track, size per track, average kbs per track, and also summary totals for directory containing the flacs. Verbosity options -v2,3 wrap to key: value pair per line, and add more items.
  5. New feature: --source-glob/-g - invaluable for working on blocks of recordings within a larger set, allows globbing patterns to be applied to the primary --source, and then for the supported actions (almost all except -E and ---clean) to only be carried out on those recording directories. Note -v2 also activates ffp hash in output.
  6. Enhanced feature: --checksum-ffps/--ffps - short form, and enhanced, for printout out all ffps in requested block/directory of recordings.
  7. New feature: --resample, and --resample-override - finally, allows for resampling for example 24 bit, 96khz sampling rate flacs to 16:48 for example. See changelog or man page for explanations. Run -Z first to find what the flacs really are, then use the appropriate resampling rate/bit depth.
  8. Man, help menu updates for new features, cleanups, made output nicer and easier to parse and read.
  9. Code: ongoing refactors, cleanups, etc. Created several new classes/packages for new features, which were cluttering up Autotag and Checksum packages. That helped enable some of the new features as well.

3.4.00

2 years ago

A few major changes and collecting of previous 3.3.xx changes, which together were many new features, some quite significant, warranted 3.4.xx starting. Note that the changelog, not these release notes, is now the primary source for change information. The release comments here will only be a short summary of the full changes changes.

See acxi.changelog for full details: https://github.com/smxi/acxi/raw/stable/acxi.changelog

  1. The primary change document is now acxi.changelog, and that is what you should look at for complete release notes. The changelog was completely redone, much easier to scan and select which changes are of interest to you, and now also is similar to the inxi.changelog, which has also been redone. Both now are the authoritative change documents for their respective projects.

  2. Bugs: --start had bug with start counts; -s [item directory] failed on some options/use cases, like -A or -X

  3. Fixes: -Xd date fixes upgrade; -Xn numbering syntax handling upgraded, -E changed to look for track numbering earlier in info file.

  4. Enhancements: --no-md5 added to compliment --no-ffp; -Xq added to add quality block; --info-rating added to allow users to set their desired quality level.

  5. Changes: removed --log, --basic, --full, --verbose, replaced with --verbosity/-v [0-4]; to free -v, removed -v as shortcut for --version; changed internal and config variable LOG_LEVEL to VERBOSITY (acxi will continue respecting/using the old syntax, but it's deprecated now)

  6. Documentation: updated man, -h to reflect these changes, and fixed various other glitches and unclear things.

  7. Code: code cleanup, removed unnecessary white space; refactored similar features to use similar logic; changed internal $LOG_LEVEL to $VERBOSITY (log level was always confusing since acxi does not log, it was only referring to screen output verbosity); added space after # to support geany/scyte code editor glitch with code folding.