Comments (1)
For MP4 the tag names are atom names and limited to 4 characters. mutagen truncates the given name.
What you really should do is use the proper atom names. You hit a bit of a lucky punch here, as titl
seems to be an atom name interpreted by exiftools. But in case of audio files to store the track title the expected atom name is actually ©nam
(yes, that's a copyright symbol as first character). Take a look at e.g. https://picard-docs.musicbrainz.org/downloads/MusicBrainz_Picard_Tag_Map.html for some common atom names as typically used.
If you want a simple way to set or read some tags with readable names have a look at mutagen's EasyMP4 class, which is similar to the EasyMP3 one. With it you could do something like this.
from mutagen.easymp4 import EasyMP4
f = EasyMP4('test.m4a')
f.tags["title"] = "foo"
f.tags["album"] = "bar"
f.save()
The you will get something like this:
% mutagen-inspect test.m4a
-- test.m4a
- MPEG-4 audio (AAC LC), 0.11 seconds, 14376 bps (audio/mp4)
©alb=bar
©nam=foo
©too=FAAC 1.24
Or maybe if you want some generic abstraction to use the same approach and names across different tagging formats have a look at the MediaFIle library, which adds a format independent wrapper API over mutagen.
from mutagen.
Related Issues (20)
- Help with implementing ID3v3.2 spec in dart
- album metadata is not being written to when using EasyID3 HOT 4
- ffmpeg + ogg vorbis: header remain warning HOT 1
- Duration not displayed for some MPEG-4 audio files.
- Writing new ID3 tags to .aiff files HOT 5
- Can I sort by track number? HOT 1
- IOError (not enough bytes) in read_full() on WAV file with extended ID3 header HOT 4
- EasyID3 is not used for wav files
- mid3v2 produces file that mutagen can't read again HOT 1
- AcoustID Fingerprint HOT 2
- mutagen - 1.47.0 - Error with reading FLAC tags and values HOT 7
- Bad chapter timestamps for Mp4 files HOT 2
- Please use built-in enums HOT 1
- Errors with opus files previously tagged with picard/mutagen HOT 5
- Writing Library Tag HOT 2
- collections renamed to collections.abc HOT 1
- Register all public exports as public
- mid3v2 crashes with "UnicodeEncodeError: surrogates not allowed" on files with accented characters in the filename
- A
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mutagen.