Skip to content

Commit

Permalink
Add support for ALAC in MP4
Browse files Browse the repository at this point in the history
> ALAC audio inside MP4 files was what you usually got when you set up iTunes
> to do lossless rips back in the day, and it still has the advantage of being
> the easiest way to get lossless music onto an iPod without a firmware replacement.

Closes #96
  • Loading branch information
cyanreg committed Dec 18, 2024
1 parent 8cae5f5 commit 462a71c
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,7 @@ The output encoding(s) can be set via the `-o` option as a comma-separated list.
| `mp3` | Standard MP3 files | `.mp3` | :heavy_check_mark: | VBR, use -b to adjust the bitrate, default is 256 (kbps) |
| `vorbis` | Standard Ogg/Vorbis files (in an OGG container) | `.ogg` || Use -b to adjust the bitrate, default is 256 (kbps) |
| `wav` | Standard WAV files | `.wav` || 16-bit little endian signed audio, or 32-bit in HDCD mode |
| `alac_mp4` | Standard MP4 files (with ALAC encoding) | `.mp4` | :heavy_check_mark: | Always uses maximum compression |
| `aac_mp4` | Standard MP4 files (with AAC encoding) | `.mp4` | :heavy_check_mark: | Use -b to adjust the bitrate, default is 256 (kbps) |
| `opus_mp4` | Standard MP4 files (with Opus encoding) | `.mp4` | :heavy_check_mark: | Use -b to adjust the bitrate, default is 256 (kbps) |
| `pcm` | Raw audio, 16-bits, two channel, little-endian | `.raw` || |
Expand Down
1 change: 1 addition & 0 deletions src/cyanrip_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ const cyanrip_out_fmt crip_fmt_info[] = {
[CYANRIP_FORMAT_WAVPACK] = { "wavpack", "WV", "wv", "wv", 0, 3, 1, AV_CODEC_ID_WAVPACK, },
[CYANRIP_FORMAT_VORBIS] = { "vorbis", "OGG", "ogg", "ogg", 0, 0, 0, AV_CODEC_ID_VORBIS, },
[CYANRIP_FORMAT_ALAC] = { "alac", "ALAC", "m4a", "ipod", 0, 2, 1, AV_CODEC_ID_ALAC, },
[CYANRIP_FORMAT_ALAC_MP4] = { "alac_mp4", "ALAC", "mp4", "mp4", 1, 2, 1, AV_CODEC_ID_ALAC, },
[CYANRIP_FORMAT_WAV] = { "wav", "WAV", "wav", "wav", 0, 0, 1, AV_CODEC_ID_NONE, },
[CYANRIP_FORMAT_OPUS_MP4] = { "opus_mp4", "OPUS", "mp4", "mp4", 1, 10, 0, AV_CODEC_ID_OPUS, },
[CYANRIP_FORMAT_PCM] = { "pcm", "PCM", "pcm", "s16le", 0, 0, 1, AV_CODEC_ID_NONE, },
Expand Down
1 change: 1 addition & 0 deletions src/cyanrip_main.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ enum cyanrip_output_formats {
CYANRIP_FORMAT_AAC,
CYANRIP_FORMAT_WAVPACK,
CYANRIP_FORMAT_ALAC,
CYANRIP_FORMAT_ALAC_MP4,
CYANRIP_FORMAT_MP3,
CYANRIP_FORMAT_VORBIS,
CYANRIP_FORMAT_WAV,
Expand Down

0 comments on commit 462a71c

Please sign in to comment.