Skip to content

Commit 2ab265e

Browse files
committed
Adds APE (Monkey's Audio) support to Symphonia
Integrates APE format and codec capabilities including demuxer, decoder, and APEv2 metadata reader Updates documentation to reflect new APE support across format tables and feature listings Adds package metadata, license file, and README for the symphonia-bundle-ape crate to prepare for publication
1 parent 1774e00 commit 2ab265e

File tree

4 files changed

+404
-2
lines changed

4 files changed

+404
-2
lines changed

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
<p>
2929
<strong>
30-
Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, ADPCM, AIFF, ALAC, CAF, FLAC, MKV, MP1, MP2, MP3, MP4, OGG, Vorbis, WAV, and WebM.
30+
Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, ADPCM, AIFF, ALAC, APE, CAF, FLAC, MKV, MP1, MP2, MP3, MP4, OGG, Vorbis, WAV, and WebM.
3131
</strong>
3232
</p>
3333

@@ -88,6 +88,7 @@ A status of *Excellent* is only assigned after the feature passes all compliance
8888
| Format | Status | Gapless* | Feature Flag | Default | Crate |
8989
|----------|-----------|----------|--------------|---------|-----------------------------|
9090
| AIFF | Great | Yes | `aiff` | No | [`symphonia-format-riff`] |
91+
| APE | Good | No | `ape` | No | [`symphonia-bundle-ape`] |
9192
| CAF | Good | No | `caf` | No | [`symphonia-format-caf`] |
9293
| ISO/MP4 | Great | No | `isomp4` | No | [`symphonia-format-isomp4`] |
9394
| MKV/WebM | Good | No | `mkv` | Yes | [`symphonia-format-mkv`] |
@@ -96,6 +97,7 @@ A status of *Excellent* is only assigned after the feature passes all compliance
9697

9798
\* Gapless playback requires support from both the demuxer and decoder.
9899

100+
[`symphonia-bundle-ape`]: https://docs.rs/symphonia-bundle-ape
99101
[`symphonia-format-caf`]: https://docs.rs/symphonia-format-caf
100102
[`symphonia-format-isomp4`]: https://docs.rs/symphonia-format-isomp4
101103
[`symphonia-format-mkv`]: https://docs.rs/symphonia-format-mkv
@@ -111,6 +113,7 @@ A status of *Excellent* is only assigned after the feature passes all compliance
111113
| AAC-LC | Great | No | `aac` | No | [`symphonia-codec-aac`] |
112114
| ADPCM | Good | Yes | `adpcm` | Yes | [`symphonia-codec-adpcm`] |
113115
| ALAC | Great | Yes | `alac` | No | [`symphonia-codec-alac`] |
116+
| APE (Monkey's Audio) | Good | No | `ape` | No | [`symphonia-bundle-ape`] |
114117
| HE-AAC (AAC+, aacPlus) | - | - | `he-aac` | No | [`symphonia-codec-aac`] |
115118
| HE-AACv2 (eAAC+, aacPlus v2) | - | - | `he-aac-v2` | No | [`symphonia-codec-aac`] |
116119
| FLAC | Excellent | Yes | `flac` | Yes | [`symphonia-bundle-flac`] |
@@ -124,6 +127,7 @@ A status of *Excellent* is only assigned after the feature passes all compliance
124127

125128
A `symphonia-bundle-*` package is a combination of a decoder and a native demuxer.
126129

130+
[`symphonia-bundle-ape`]: https://docs.rs/symphonia-bundle-ape
127131
[`symphonia-codec-aac`]: https://docs.rs/symphonia-codec-aac
128132
[`symphonia-codec-adpcm`]: https://docs.rs/symphonia-codec-adpcm
129133
[`symphonia-codec-alac`]: https://docs.rs/symphonia-codec-alac
@@ -144,6 +148,7 @@ All metadata readers are provided by the `symphonia-metadata` crate.
144148
| ID3v2 | Great |
145149
| ISO/MP4 | Great |
146150
| RIFF | Great |
151+
| APEv2 | Good |
147152
| Vorbis comment (FLAC) | Perfect |
148153
| Vorbis comment (OGG) | Perfect |
149154

symphonia-bundle-ape/Cargo.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
[package]
22
name = "symphonia-bundle-ape"
33
version = "0.5.5"
4-
description = "Pure Rust Monkey's Audio (APE) decoder and demuxer."
4+
description = "Pure Rust Monkey's Audio (APE) decoder and demuxer (a part of project Symphonia)."
55
homepage = "https://github.com/pdeljanov/Symphonia"
66
repository = "https://github.com/pdeljanov/Symphonia"
7+
authors = ["OMBS.IO Dev Team <dev@ombs.io>"]
78
license = "MPL-2.0"
9+
readme = "README.md"
10+
categories = ["multimedia", "multimedia::audio", "multimedia::encoding"]
11+
keywords = ["audio", "codec", "decoder", "ape", "monkey-audio"]
812
edition = "2018"
913
rust-version = "1.70"
1014

0 commit comments

Comments
 (0)