pacpl − Perl Audio Converter, a multi purpose converter/ripper/tagger
pacpl −−to <format> <options> [file(s)/directory(s)]
Perl Audio Converter
A Linux CLI tool for converting multiple audio types from one format to another.
It supports the following audio formats:
3G2, 3GP, 8SVX, AAC, AC3, ADTS, AIFF, AL, AMB, AMR, APE, AU, AVR, BONK, CAF, CDR, CVU, DAT, DTS, DVMS, F32, F64, FAP, FLA, FLAC, FSSD, GSRT, HCOM, IMA, IRCAM, LA, MAT, MAUD, MAT4, MAT5, M4A, MP2, MP3, MP4, MPC, MPP, NIST, OFF, OFR, OFS, OPUS, OGA, OGG, PAF, PRC, PVF, RA, RAM, RAW, RF64, SD2, SF, SHN, SMP, SND, SOU, SPX, SRN, TAK, TTA, TXW, VOC, VMS, VQF, W64, WAV, WMA, and WV.
It can also extract audio from the following video extensions:
RM, RV, ASF, DivX, MPG, MKV, MPEG, AVI, MOV, OGM, OGV, QT, VCD, SVCD, M4V, NSV, NUV, PSP, SMK, VOB, FLV, WEBM and WMV.
Parallel Processing, a CD ripping function with CDDB support, batch conversion, tag preservation for most supported formats, independent tag reading & writing, service menus for KDE Dolphin/Konqueror, GNOME Nautilus script, and action scripts for Nemo/Thunar are also provided.
−t, −−to format
set encode format for the input file(s) or directory(ies). you can see a complete list of supported encode formats by using the −−formats option.
recursively scan and convert input folder(s) to destination format.
when recursively converting a directory, preserve the input folders directory structure in the specified output directory. such as:
pacpl −−to ogg −r −p /home/mp3s −−outdir /home/oggs
in the example
above, let’s assume the directory structure was:
the output directory will now
with all files in each sub-folder converted to ogg.
−o, −−only format
only convert files matching extension. this option is useful when you have a directory or batch of files with mixed audio types and only need to convert one specific type.
do not re-encode files with extensions matching the destination extension. instead...copy them to the output folder, or skip to the next file.
simultanious jobs to run at once. the default limit is set
to 4 in pacpl.conf. You can modify this value on the fly
using −−jobs=<num> or set it perminately
in the configuration file
−f, −−formats show a list of supported encode/decode formats.
−h, −−help show the short help menu.
−l, −−longhelp display the complete list of options.
−−version show version and licensing information.
to turn off default encoder options use −−defopts 0. this option gives you more control when using the −−eopts command.
defopts is set to 1 by default. you can also toggle this option in /etc/pacpl/pacpl.conf.
this option allows you to use encoder options not implemented by pacpl. an example would be:
pacpl −−to mp4 −−eopts="−c 44100 −I 1,2" YourFile.mp3
this option allows you to use decoder options not implemented by pacpl. an example would be:
pacpl −−to mpc −−dopts="−−start 60" YourFile.ogg
set the output file name to name.
place all encoded files in directory.
show what would be done without actually converting anything. this is a good way to trouble shoot, or to see what would be done without actually touching your files.
replace the output file if it already exists.
adjusts volume levels of audio files.
this allows you to specify normalize options not implemented by pacpl
remove source/input file after the conversion process has finished.
specify an alternate encoder for the selected output file(s)
you can see a list of supported encoders by using the following:
pacpl −−encoder format
specify an alternate decoder for the selected input file(s)
you can see a list of supported decoders by using the following:
pacpl −−decoder format
show detailed information about the encoding process and what’s actually being done.
set the bitrate to num. default is 128. this option does not apply to all formats.
set the frequency to num. default is 44100. this option does not apply to all formats.
set the number of audio channels in the output file to num. this option does not apply to all formats.
see sox(1). this option only applies to the following:
AIFF, AU, SND, RAW, VOC, SMP, AVR, and CDR
compression level to num. fastest −0, highest
−8, default −2
1 = fast
2 = simple
3 = medium (default)
4 = high
5 = extra high,
compression level to num.
1000 = fast
2000 = normal
3000 = high (default)
4000 = extra high
5000 = insane
set ogg quality level to num. −1, very low and 10 very high, default 3
set speex quality level to num. 0−10, default 8 (use −−bitrate <num> when using ffmpeg/avconv as encoder)
set aac, mp4, m4a, or m4b quality level to num. default 300
quality level to str.
thumb low quality/internet, (typ. 58... 86 kbps)
radio medium ( MP3 ) quality, (typ. 112...152 kbps − default)
standard high quality (dflt), (typ. 142...184 kbps)
xtreme extreme high quality, (typ. 168...212 kbps)
compression mode to str. normal, extra, and extranew
modes are recommended for general use. available options
set off/ofr/ofs optimization level to str.
specify the optimization level in the engine. In order to achieve optimal compression at all sample types, sample rates, and audio content, the core compression engine has the possibility to find the optimal values for its parameters, at the cost of slightly increased compression time only. The default recommended value is fast. do not use normal (or even high or best) for this parameter unless encoding time does not matter and you want to obtain the smallest possible file for a given compression mode. The difference between the optimize levels fast and best (which is up to three times slower than fast) is very small, generally under 0.05%, but may be also larger in some rare cases. Note that the none optimize level is forced by the encoder to fast optimize level for the extra, best, highnew, extranew, and bestnew modes.
set bonk down sampling ratio. default 2
set bonk quantanization level. default 1.0
set bonk predictor size. default 128
tagging outside of the encoding process can only be performed on the following audio types:
set artist information to str.
set title information to str.
set track information to num.
set year/date information to num.
set album information to str.
set genre information to str.
set comment information to str.
show tagging information for file. multiple files can be specified at once.
tracks separated by comma or all from current disc.
pacpl −−rip all −−to flac
pacpl −−rip 1,3,9,15 −−to flac
disable cddb. use this option if you do not want tagging based on cddb.
disable cddb interactivity. this is enabled by default.
set naming scheme to str. default is %ar − %ti
%ar = artist
%ti = song title
%tr = track
%yr = year
%ab = album
set device to device. default is /dev/dvd
show cddb information for current disc.
ffmpeg(1) lame(1) oggenc(1)
flac(1) shorten(1) faac(1) faad(1) mpcenc(1)
mpcdec(1) mplayer(1) speexenc(1) speexdec(1)
sndfile-convert(1) normalize(1) cdparanoia(1)
opusenc(1) opusdec(1) wavpack(1) ffmpeg(1)
Report all bugs to Philip Lyons (vorzox [AT] gmail.com)
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
Copyright (C) 2005−2018 Philip Lyons (vorzox [AT] gmail.com)