haudiotagger 2.0.0 copy "haudiotagger: ^2.0.0" to clipboard
haudiotagger: ^2.0.0 copied to clipboard

Read and write audio metadata in Flutter. Supports MP3, FLAC, OGG, MP4, WAV, AIFF, and more. Powered by Rust for fast, reliable performance.

[hAudiotagger]

hAudiotagger

Rust-powered audio metadata for Flutter

pub.dev CI MIT License Downloads Live Demo Coverage


Read, write, and edit audio metadata across Android, iOS, Linux, macOS, Windows, and Web. Built on lofty via flutter_rust_bridge.

Install #

dependencies:
  haudiotagger: ^2.0.0

Quick Start #

import 'package:haudiotagger/haudiotagger.dart';

// Read
final tag = await Haudiotagger.read('/path/to/song.mp3');
print(tag?.title);

// Write
await Haudiotagger.write('/path/to/song.mp3', Tag(
  title: 'My Song',
  artist: 'Artist',
  album: 'Album',
));

// Update (preserves other fields)
await Haudiotagger.update('/path/to/song.mp3', TagChanges(
  album: 'New Album',
));

// Batch
final result = await Haudiotagger.batchWrite(paths, tag);

Features #

Feature Platforms
Read / write metadata (title, artist, album, art, lyrics...) All
Partial updates — change one field without touching others All
Batch operations with progress callbacks All
Custom tags (TXXX, Vorbis) All
ID3v2 version control (v2.3 / v2.4) All
Audio properties (duration, bitrate, codec...) All
Validate & normalize metadata All
Copy / merge tags with configurable strategy All
ReplayGain (track/album gain/peak) All
Chapters (ID3v2 CHAP frames for MP3) All
Extended metadata (MusicBrainz, AcoustID, ISRC, 60+ fields) All
Read single field (readField — faster than full read) All
Read pictures (all or by type, without full read) All
TagPipeline — 56-rule transformation engine All
Format & rename files from metadata All

Supported Formats #

Format Read Write Tags
MP3 Yes Yes ID3v2, ID3v1, APE
FLAC Yes Yes Vorbis Comments, ID3v2*
MP4 / M4A Yes Yes iTunes ilst
Ogg Vorbis Yes Yes Vorbis Comments
Opus Yes Yes Vorbis Comments
AAC Yes Yes ID3v2, ID3v1
WAV Yes Yes ID3v2, RIFF INFO
AIFF Yes Yes ID3v2, Text Chunks
APE Yes Yes APE, ID3v2*, ID3v1
WavPack Yes Yes APE, ID3v1

* Read only due to lack of official support

Performance #

Operation 1 File 100 Files
Read 500 f/s 1,282 f/s
Batch Write 29 f/s 197 f/s
Batch Update 25 f/s 197 f/s

Note

Native file-path API with rayon parallelism. Benchmarked on Linux with 100 distinct MP3 files (~8 MB each).

Documentation #

View Full Documentation

Page Description
Getting Started Installation, setup, web configuration
Examples Real-world use cases with code
API Reference Complete method & type documentation
Extended Metadata MusicBrainz, ISRC, 60+ fields
Chapters Podcast & audiobook chapter support
TagPipeline 56-rule transformation engine
Web Setup Cross-origin isolation & WASM config
Platform Notes Platform-specific considerations
FAQ Common questions & troubleshooting

Documentation also available on Github Wiki

Live Demo #

Try hAudiotagger in your browser — no install required:

hAudiotagger Web Demo

Note

On the web, use *FromBytes variants (e.g. readFromBytes, writeToBytes). See Web Setup for details.

Requirements #

  • Flutter >= 3.0.0
  • Dart SDK >= 3.6.0

License #

hAudiotagger is open-source software licensed under the MIT License.

See the LICENSE file for more information.

❤️ Support #

hAudiotagger is open-source software licensed under the MIT License.

If hAudiotagger helps you build something cool, consider:

  • ⭐ Starring the repository
  • 🐛 Reporting bugs
  • 💡 Suggesting improvements
  • 🤝 Contributing code
  • 📦 Sharing the package with other Flutter developers

Every bit of support helps keep the project moving forward.


Made with ❤️ and 🦀 by Hirdaya Shrestha

27
likes
0
points
2.3k
downloads

Documentation

Documentation

Publisher

verified publisherhirdaya-shrestha.com.np

Weekly Downloads

Read and write audio metadata in Flutter. Supports MP3, FLAC, OGG, MP4, WAV, AIFF, and more. Powered by Rust for fast, reliable performance.

Repository (GitHub)
View/report issues

Topics

#metadata #audio #audio-tagging #web-audio #metadata-extraction

License

unknown (license)

Dependencies

ffi, flutter, flutter_rust_bridge, freezed_annotation, plugin_platform_interface

More

Packages that depend on haudiotagger

Packages that implement haudiotagger