Metadata-Version: 2.4
Name: m4a2wav
Version: 0.1.1
Summary: Convert .m4a audio files to lossless .wav via ffmpeg.
Author-email: Martin <no@email.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/sinuose/m4a2wav
Project-URL: Issues, https://github.com/sinuse/m4a2wav/issues
Keywords: audio,m4a,wav,ffmpeg,conversion,cli
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Sound/Audio :: Conversion
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# m4a2wav

A tiny CLI that converts `.m4a` audio files to `.wav` (PCM) via ffmpeg.

The decode itself is lossless: PCM output at the source's native sample rate and
channel layout. The original AAC compression in the `.m4a` cannot be undone — this
just ensures the `.m4a → .wav` step adds no further quality loss.

## Install

```
pip install m4a2wav
```

Requires `ffmpeg` on `PATH`.

- macOS: `brew install ffmpeg`
- Debian/Ubuntu: `sudo apt install ffmpeg`
- Windows: `winget install ffmpeg` or `choco install ffmpeg`

## Usage

```
m4a2wav file1.m4a [file2.m4a ...]   # convert specific files
m4a2wav -all                         # convert every .m4a in the current folder
```

Files whose target `.wav` already exists are skipped, so re-runs are idempotent.

## Notes

- Output is 16-bit signed little-endian PCM (`pcm_s16le`). For 24- or 32-bit PCM,
  edit the `-c:a` flag in `cli.py`.
- No resampling or channel downmixing is performed.
- Source files are never modified or deleted.

## License

MIT.
