diff --git a/README.md b/README.md index 82f7d33..bbdd022 100644 --- a/README.md +++ b/README.md @@ -45,24 +45,19 @@ Scan a root directory for audiobook folders and convert them to M4B files in par ## Getting Started -Ensure the following dependencies are installed: [ffmpeg](https://ffmpeg.org) and [mp4v2](https://mp4v2.org/). +The following tools must be installed and available in `PATH`: -```bash -# For RPM-based systems (Fedora, RHEL, CentOS) -sudo dnf install ffmpeg libmp4v2 - -# For Debian-based systems (Ubuntu, Debian) -sudo apt install ffmpeg -``` +- [ffmpeg](https://ffmpeg.org) *(optionally with [libfdk_aac](https://github.com/mstorsjo/fdk-aac) for higher-quality VBR encoding)* +- [mp4v2](https://mp4v2.org/) *(mp4chaps, mp4art)* +- [awk](https://linux.die.net/man/1/awk), [sed](https://linux.die.net/man/1/sed), [bc](https://linux.die.net/man/1/bc) -To install the scripts, run: +*Installation:* ```bash +# Installs to /usr/local/sbin/ make install ``` -This installs the scripts to `/usr/local/sbin/`. - ## m4bify `m4bify` creates M4B audiobook by processing files in the specified directory, sorting them alphabetically to ensure the correct playback order. Chapters can be organized either as file-based, where each audio file becomes its own chapter named using metadata or filenames, or directory-based, where each top-level subdirectory is treated as a chapter, combining all its audio files, including those in nested folders, into one. @@ -86,7 +81,7 @@ m4bify [--help] [-d | --chapters-from-dirs] [-b | --bitrate ] - `-d`, `--chapters-from-dirs`: Treats each top-level subdirectory as a chapter. - `-b `, `--bitrate `: Sets the audio encoding bitrate. Supported values: - `k` - Fixed bitrate (e.g. "32k", "128k") - - `vbr` - VBR Very High + - `vbr` - VBR Very High *(default)* - `alac` - [Apple Lossless Audio Codec](https://en.wikipedia.org/wiki/Apple_Lossless_Audio_Codec) - `--help`: Displays usage instructions and exits. diff --git a/m4bify.sh b/m4bify.sh index c8f2048..bb1d13b 100755 --- a/m4bify.sh +++ b/m4bify.sh @@ -40,7 +40,7 @@ # - mp4chaps For adding chapter metadata to the final M4B file. # - mp4art For adding in a cover image to the final M4A file before converting it to M4B. -readonly VERSION="v0.3.7" +readonly VERSION="v0.3.8" # Color schema for pretty print readonly NC='\033[0m' # No Color @@ -177,6 +177,12 @@ function print_usage { echo -e " ${COLORS[CMD]}ffprobe${NC} - Used for analyzing audio file properties." echo -e " ${COLORS[CMD]}mp4chaps${NC} - Needed for chapter metadata manipulation." echo -e " ${COLORS[CMD]}mp4art${NC} - Adds cover image to audio book." + echo -e " ${COLORS[CMD]}awk${NC} - Text processing." + echo -e " ${COLORS[CMD]}sed${NC} - Stream editing." + echo -e " ${COLORS[CMD]}bc${NC} - Arithmetic operations." + echo -e "" + echo -e " Optional:" + echo -e " ${COLORS[CMD]}libfdk_aac${NC} - Enables higher-quality VBR encoding (via ffmpeg)." echo -e "" } diff --git a/m4bulk.sh b/m4bulk.sh index 4684424..2401e1f 100755 --- a/m4bulk.sh +++ b/m4bulk.sh @@ -46,7 +46,7 @@ # - Logs for each audiobook conversion will be saved in the same directory as the source audiobooks. # - Customize worker threads and m4bify options to optimize for system resources and project requirements. -readonly VERSION="v0.3.7" +readonly VERSION="v0.3.8" # Color schema for pretty print readonly NC='\033[0m' # No Color