Python library to write, read, and verify transparency metadata in audio files for AI transparency compliance.
Project description
TransparentMeta
TransparentMeta is the standard for compliance with AI audio transparency legislation with metadata.
It's an open-source Python library developed by Transparent Audio. It allows users to add and verify cryptographically signed metadata in audio files.
TransparentMeta helps generative AI companies comply with AI transparency laws, such as the EU AI Act and the California AI Transparency Act. By using cryptographic signing, robust file validation, and a modular SDK, users can label AI-generated audio content with transparent metadata simply and effectively.
🗣️ Community
- 🗨️ Join the Transparent Audio Discord for real-time support and discussion
- 🐛 If you discover bugs, please report them in the GitHub issue tracker
🚀 Features
- Add cryptographically signed transparency metadata to MP3 and WAV files
- Read and verify metadata to detect AI-generated audio
- Key pair generation and signature verification built-in
- Simple Python SDK for easy integration in your application
- 100% test coverage via unit and integration tests
🔧 Use Cases
- Speech synthesis and voice cloning labeling output with transparency metadata
- Generative AI music and sound effects tagging output with metadata and attribution
- Compliance with EU AI Act & California AI Transparency Act
- Building trusted pipelines with verifiable audio provenance
📦 Installation
From PyPi
Installing TransparentMeta from PyPI using pip is the recommended way:
pip install transparentmeta
From Source
Or, you can install directly from the repository. This project uses Poetry for dependency management. You’ll need to install Poetry first.
To install TransparentMeta from source code run:
git clone https://github.com/Transparent-Audio/transparentmeta.git
cd transparentmeta
make install
To install in development mode, after cloning the repository, run:
make install_dev
make install and make install_dev wrap relevant Poetry commands. They can
be found along with other useful commands in the Makefile.
📚 Getting Started
- Check the getting started guide in the documentation to pick up the basic functionality of TransparentMeta in 5 minutes
- Check the
/examplesfolder for quick usage examples. Start by reading the README.md file inside the folder - For a more thorough introduction to TransparentMeta, check the tutorials in the documentation
- If you're a visual learner, watch the video tutorials on YouTube
📖 Documentation
Check full documentation on Read the Docs.
📂 Project Structure
transparentmeta/- Main library codeexamples/- Example scripts and usagetests/- Unit and integration testsdocs/- Sphinx documentationMakefile- Useful commands for development
🧩 Dependencies
TransparentMeta relies on the following core libraries:
- mutagen – for reading and writing audio metadata (MP3, WAV, etc.)
- cryptography – for generating and verifying digital signatures
- pydantic – for data validation and data structures
You can find all dependencies in pyproject.toml.
✅ Running tests and quality checks
To run tests, linting, and type checks, use:
make checklist
🐍 Python version
TransparentMeta supports Python 3.12 and above. Ensure you have a compatible version installed.
📝 License
This project is licensed under GPL-3.0 or later. See the LICENSE file for details.
✍️ Contribution
While we don’t currently accept contributions, we plan to set up the necessary infrastructure to do so in the future. If you’re interested in contributing, please contact us.
📬 Contact
If you have any pressing questions or issues, please write to Transparent Audio's CTO Valerio Velardo at valerio@transparentaudio.ai.
The best way to get support or suggest requests is by joining the Transparent Audio Discord
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file transparentmeta-0.1.0.tar.gz.
File metadata
- Download URL: transparentmeta-0.1.0.tar.gz
- Upload date:
- Size: 34.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19aded7401c4615a46c47a8b6db60e93ab8f7a385073da37453fb5e9034281f7
|
|
| MD5 |
b46622f2037eab98ad56246270a62022
|
|
| BLAKE2b-256 |
65aa591330657067cc13643d7cc27d667864c5ea3c58059bb51032d36176e75e
|
File details
Details for the file transparentmeta-0.1.0-py3-none-any.whl.
File metadata
- Download URL: transparentmeta-0.1.0-py3-none-any.whl
- Upload date:
- Size: 55.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4e15b78b8b9327f0441fb3ad3a4061b7e3bd7c9a0741e9a4d226c3551021280
|
|
| MD5 |
870721d6e8c781b20eda16a71e4f1110
|
|
| BLAKE2b-256 |
95cff8ea0e668b484559ffc26500ee99400352155025dc3997cebf23f3fcb5c3
|