xcfa_cli(1) This program is an implementation of xcfa in command line.


xcfa_cli is an application for conversion, normalization, reconfiguring wav files and cut audio files ...
What xcfa_cli can do:

  - replaygain on files: flac, mp3, ogg, wavpack

  - conversions:
        - from files:

                wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3

        - to files:

               wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac

       - conversion settings for file management:

               flac, ape, wavpack, ogg, m4a, aac, mpc, mp3

  - management tags

  - management cue wav file

  - manipulation of the frequency, track and bit wav files

  - standardization on files: wav, mp3, ogg

  - cuts (split) wav files

  - displaying information on files


xcfa_cli [ -i "file.*" ][ -d wav,mpc,... ][ OPTIONS ]


Verbose mode
-h --help
Print help mode and quit
-i <"file.type"> --input <"file.type">
Input name file to convert in inverted commas: --input "*.flac"
Type input files: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3
-o <path_dest/> --output <path_dest/>
Destination folder. By default in the source file folder.
-d <wav,flac,ape,...> --dest <wav,flac,ape,...>
Destination file: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac
-r --recursion
Recursive search
-e --ext2src
Extract in the source folder. This option is useful with '--recursion'
--nice <priority>
Change the priority of running processes in the interval: 0 .. 20

Management options with default parameters:
--op_flac <"-5">
--op_ape <"c2000">
--op_wavpack <"-y -j1">
--op_ogg <"--quality=3">
--op_m4a <"-q 100">
--op_aac <"48">
--op_mpc <"--verbose --overwrite --insane">
--op_mp3 <"-h --nohist --noreplaygain -b 128">

Displays information about the files:
Displays time, level dBFS, frequency/track/quantification
Displays tags
Displays head

Management tags:
The tags will not be carried
--tag_album <"tags">
Tag of album
--tag_artist <"tags">
Tag of artist
--tag_title <"tags">
Tag of title
--tag_number <"tags">
Tag of number
--tag_genre <"tags">
Tag of genre
--tag_year <"tags">
Tag of year
--tag_comment <"tags">
Tag of comment
--tag_description <"tags">
Tag of description

Management cue file:
-c <info|extract> --cue <info|extract>

info Provides information on a WAV or CUE file.
extract Extract all tracks of a WAV file.

Management split:
-s <hh:mm:ss> --split <hh:mm:ss>
Mark the beginning of the file to be cut.
-l <sec> --length <sec>
Specifies the length of the file to cut with the seconds parameter.

Changing the settings of a WAV file:
-f <num> --frequency <num>
Changing the frequency: 8000, 22000, 32000, 44056, 44100, 48000, 88200, 96000 or other
-t <num> --track <num>
Changing the number of tracks: 1, 2, 4, 6
-q <num> --quantification <num>
Changing the quantification: 8, 16, 24, 32, 64

Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK
-g <clear|album|track> --replaygain <clear|album|track>
FLAC [ clear | album ]
MP3 [ clear | album | track ]
OGG [ clear | album | track ]
WAVPACK [ clear | album | track ]

Normalize: static modification for next files: MP3, WAV, OGG
See an excellent article by @Dzef on standardization: http://ubunteros.tuxfamily.org/spip.php?article159

Action on a single file.
Maximum volume amplification for each file.
Increase the overall level of the signal so as to bring the level to 0 dBFS peak without changing dynamics.

Action on a group of files.
Maximum volume boost for a group of files in accordance with the level of differences between each of them.
If the maximum level of one or more files is already at 0 dBFS, the level of all the selected files remain unchanged after normalization. So this mode can be safely used almost systematically.
--mix_rms_album <dBFS>

Action on a group of files.
Adjusting the average volume for a group of files respecting average level of the differences between each of them.
The selecting a value for a file modifies the other files in the group.
--fix_rms <dBFS>

Action on a single file.
Adjusting the average volume of each file.. The selecting a value for a file.


The options of conversions of externals programs can be seen from the manpages: $ man prog or $ prog --help
See: op_flac, op_ape, op_wavpack,op_ogg, op_m4a, op_aac, op_mpc, op_mp3

EXAMPLES convertion

$ xcfa_cli --input "file.wav" -d ogg --dest flac,mpc --output newfolder/
$ xcfa_cli --input "*.wav" --dest ogg,flac,mp3 --output newfolder/ --recursive --op_mp3 "--preset fast extreme"
$ xcfa_cli --input "*.*" -d mp3 --split 00:00:00 -l 30 -o newfolder/ --verbose --frequency 44100 --track 2 --quantification 16

CONVERSION example with two inputs

$ xcfa_cli --input "file.wav" --input "other_file.mp3" -d ogg --dest flac,mpc, --output newfolder/


$ xcfa_cli --input "file.wav" --split_info
$ xcfa_cli --input "file.wav" -d ogg,mpc --split 00:00:32 --length 22 --output newfolder/
$ xcfa_cli --input "file.wav" -d ogg,mpc --split 00:01:00 --length 22 --output newfolder/

EXAMPLES setting wav

$ xcfa_cli -i "file.wav" -d wav -o newfolder/ --frequency 96000 --track 6 --quantification 32 --verbose

EXAMPLES replaygain:

$ xcfa_cli -i "*.*" --replaygain clear
$ xcfa_cli -i "*.*" --replaygain album

EXAMPLES normalize:

$ xcfa_cli -i "*.*" --info_files
$ xcfa_cli -i "*.*" --peak_album
$ xcfa_cli -i "*.*" --peak
$ xcfa_cli -i "*.*" --mix_rms_album -10
$ xcfa_cli -i "*.*" --fix_rms -4


$ xcfa_cli -i "*.*" --info_files --info_tags --info_head


$ xcfa_cli -i "file.cue" --cue info
$ xcfa_cli -i "file.cue" --cue extract
$ xcfa_cli -i "file.wav" --cue info
$ xcfa_cli -i "file.wav" --cue extract


xcfa_cli is developed by BULIN Claude