MP4 trouble

That' all well and good but I think what most people in this thread are looking for are answers and possible solutions for getting these MP4 files tagged for other players.

Same here.

Most of what I've learned about mp4 files has come from Doom9. Their FAQ has this about tagging:

Hopefully Florian will come back to this thread and let us know if he needs more info about our files or players. I tried checking on this site to see if there was any info about how mp3tag wrote mp4 files but I couldn't find anything.

As far as I know, MP3tag only writes iTunes compliant MP4 tags. There are no options for changing how it writes MP4 tags, unlike the various options it provides for MP3 tagging. It is very frustrating at times figuring out compatibility issues. In general, we need a set of standards that everyone will follow, but until that happens we will continue to have issues such as this one. Florian can answer this question, but I assume that the reason Mp3tag is only iTunes compliant is because the majority of MP4 users are iPod/iTunes users.

Wow, this program is absolutely terrible. Not only did it not work for me, but all the information needs to be manually entered into error-prone lines of DOS syntax? Completely impractical, unless I'm misunderstanding something here...

Jevicci, You've been spoilt by Mp3tag, as have we all! :wink:

Well, if you have better way or program to supply atom information, then please inform us all? Since I know of no other program that shows me how the atoms are written, I really could give 2 sh?ts what it looks like and if it is DOS. It's practical if you don't have anything else and supplies the information needed. Please enlighten us with your alternatives?

MP3tag is a terrific, and easy way to tag audio files. It is my tagging program of choice, but it does not show the atom structure to which it writes the tag names and data. I only use AtomicParsley for the -t and -T options. I only need this due to the inconsistencies of players reading MP4 tags, which is what this topic is all about.

Open Notepad and place these two lines of data inside it
atomicparsley %1 -t
@Pause
Save it as "APtagchk.bat" or something similar. You can then drag any MP4 file over it and it will run the program.
P.S. Make sure that AtomicParsley.exe is in your environment Path.

Yeah, I guess I have been spoiled by Mp3tag and I didn't mean to offend anyone by disparaging Atomic Parsley. I just want to be able to have my songs display properly on my player. It seems I shouldn't need to start prying apart the files themselves and puzzling out their atomic structure (excuse the pun) in order to achieve this. I do appreciate the help. I'm just venting. Seems so many things like this are needlessly complicated.

I tried your suggestion and it says "'atomicparsley' is not recognized as an internal or external command, operable program or batch file." I guess I'm just over my head here. Thanks anyway!

drbeachboy said that the program has to be in your %PATH%, so something like C:, C:\WINDOWS or whatever other directories are in %PATH% (you could write echo %path% in a command line window to have the directories in %PATH% listed).

Since this is a tagging issue, it has a lot to do with how the tags are written. Writing to the atoms is a part of that process. I don't fully understand it, but if you see differences at that level then there is at least a chance that that is where the problem may be. I did not take issue with what you thought about AP, but more with the "impractical" part. Sure, I'd love a GUI version to make running and reading it easier. I just don't know of any, so if DOS is the only way, then DOS it is.

Your issue with the AP batch file is probably in your PATH statement. AP needs to be in a folder in your PATH. If you place AtomicParsley.exe in the Windows folder that should make it work.

The wording is rather ambiguous. It says

Compatible format: AAC encoded by iTunes

which I suspect means, "if you use software other than iTunes, you're on your own". However, we do not know where the problem lies. It could be a bug in the player or an incomplete implementation of the spec. It could be a bug in MP3TAG that doesn't worry iPods; there are any number of possibilities.

Thanks for your contribution and an introduction to the AtomicParsley tool which will be useful in analysing the problem. In response to Jevicci's point, I don't think AtomicParsley was ever intended as a tagging utility for general use. It is indeed about as friendly as a cornered rat but designed for deep analysis of problems such as ours. There are many better tools for everyday use, but not that provide the level of analysis needed here. The right tool for the right job.

OK, got it to work. Thanks. Here are the results:

Atom "trkn" contains: 1
Atom "tmpo" contains: 0
Atom "gnre" contains: Rock
Atom "calb" contains: OK Computer
Atom "cART" contains: Radiohead
Atom "----" [iTunNORM] contains:  000011BC 00001C58 000066F1 0000AD99 0003AF45 00025057 00008000 00008000 00004AD7 00004500
Atom "cnam" contains: Airbag
Atom "ctoo" contains: iTunes v4.7.0.42, QuickTime 6.5.2
Atom "cwrt" contains: Colin Greenwood/Ed O'Brien/Jonny Greenwood/Phil Selway/Thom Yorke
Atom "cday" contains: 1997

Now, what does this information tell me exactly? Again, sorry for being so clueless here.

In this case, it tells me that you used the -t option, and that as far as I see your data was written to the correct fields that iTunes uses. If you run the -T option, you will be able tell if the tag was written to the begining or to the end of the file.

OK. Here's the results with the -T option:

Atom ftyp @ 0 of size: 32, ends @ 32
Atom moov @ 32 of size: 52485, ends @ 52517
     Atom mvhd @ 40 of size: 108, ends @ 148
     Atom trak @ 148 of size: 51789, ends @ 51937
         Atom tkhd @ 156 of size: 92, ends @ 248
         Atom mdia @ 248 of size: 51689, ends @ 51937
             Atom mdhd @ 256 of size: 32, ends @ 288
             Atom hdlr @ 288 of size: 34, ends @ 322
             Atom minf @ 322 of size: 51615, ends @ 51937
                 Atom smhd @ 330 of size: 16, ends @ 346
                 Atom dinf @ 346 of size: 36, ends @ 382
                     Atom dref @ 354 of size: 28, ends @ 382
                 Atom stbl @ 382 of size: 51555, ends @ 51937
                     Atom stsd @ 390 of size: 103, ends @ 493
                         Atom mp4a @ 406 of size: 87, ends @ 493
                             Atom esds @ 442 of size: 51, ends @ 493
                     Atom stts @ 493 of size: 24, ends @ 517
                     Atom stsc @ 517 of size: 40, ends @ 557
                     Atom stsz @ 557 of size: 49028, ends @ 49585
                     Atom stco @ 49585 of size: 2352, ends @ 51937
     Atom udta @ 51937 of size: 580, ends @ 52517
         Atom meta @ 51945 of size: 572, ends @ 52517
             Atom hdlr @ 51957 of size: 34, ends @ 51991
             Atom ilst @ 51991 of size: 526, ends @ 52517
                 Atom trkn @ 51999 of size: 32, ends @ 52031
                     Atom data @ 52007 of size: 24, ends @ 52031
                 Atom tmpo @ 52031 of size: 26, ends @ 52057
                     Atom data @ 52039 of size: 18, ends @ 52057
                 Atom gnre @ 52057 of size: 26, ends @ 52083
                     Atom data @ 52065 of size: 18, ends @ 52083
                 Atom calb @ 52083 of size: 35, ends @ 52118
                     Atom data @ 52091 of size: 27, ends @ 52118
                 Atom cART @ 52118 of size: 33, ends @ 52151
                     Atom data @ 52126 of size: 25, ends @ 52151
                 Atom ---- @ 52151 of size: 162, ends @ 52313
                     Atom mean @ 52159 of size: 28, ends @ 52187
                     Atom name @ 52187 of size: 20, ends @ 52207
                     Atom data @ 52207 of size: 106, ends @ 52313
                 Atom cnam @ 52313 of size: 30, ends @ 52343
                     Atom data @ 52321 of size: 22, ends @ 52343
                 Atom ctoo @ 52343 of size: 57, ends @ 52400
                     Atom data @ 52351 of size: 49, ends @ 52400
                 Atom cwrt @ 52400 of size: 89, ends @ 52489
                     Atom data @ 52408 of size: 81, ends @ 52489
                 Atom cday @ 52489 of size: 28, ends @ 52517
                     Atom data @ 52497 of size: 20, ends @ 52517
Atom free @ 52517 of size: 4096, ends @ 56613
Atom mdat @ 56613 of size: 4555927, ends @ 4612540
------------------------------------------------------
Total size: 4612540 bytes; 47 atoms total. AtomicParsley version: 0.9.0 (utf16)
Media data: 4555927 bytes; 56613 bytes all other atoms (1.227% atom overhead).
Total free atom space: 4096 bytes; 0.089% waste. Padding available: 4096 bytes.
------------------------------------------------------

What does this mean?

@ pluto

Compatible format: AAC encoded by iTunes

Was the file that reads ok encoded and tagged by iTunes or Winamp, or another program?

By Winamp. The tags are fine until MP3TAG gets its hands on them. After that, they are unreadable. The important question, therefore, is what is MP3TAG doing to render the tags unreadable on the Pioneer player?

Considering the "Compatible format: AAC encoded by iTunes", does an iTunes tagged file read OK in the Pioneer unit?

Unfortunately I can't really add something new to this thread.

From my experience, different programs and devices interpret the de-facto standards differently. I even encountered applications that would only read tags, if the frames (or atoms how they're called with MP4) conform to a specific order. My guess is also, that the Pioneer device requires a specific order of (possibly only specific) atoms -- but this is only a vague guess and it seems tedious to me to try to circumvent this limitations by application-specific workarounds.

Hi Florian,

You may be correct about the order thing, because there is an order difference between pluto's files tagged with MP3tag and with Winamp.

It tells me that the tag was written at the beginning of the file, hence the 52,000 series of numbers. Had the file been written at the end of the file, the number series would be something like in the 300,000's.

It would be great if you could give us some options for writing the tags, such as at the beginning or at the end. It would also be nice to have the option to write either or both of the two tagging formats ("meta" atom or "udta" atom).

But it sounds like that's not going to happen.

So what do you do with that information in the pursuit of getting the song to display properly in your player?

Apparently, in pluto's case, Pioneer reads udta tags that are at the beginning of the file, so Pioneer must read the tags in a certain order, which in my opinion is not standard. The only thing I can tell you is to try and tag your file(s) with iTunes and see if your player can read them. If it can't then MP3tag probably never will either. If it can read them, then post back and let Florian know. If iTunes tags can be read, then maybe he can figure out what is going on. It's going to take some experimenting to get to the bottom of this issue.

I don't think that Florian ever claimed that MP3tag was anything but a iTunes style MP4 tagger. Out of all the programs that I have on my computer, I don't have any combination that tag in the same fashion. That goes for MP3, as well as MP4. It's just a mess and very frustrating at times to deal with it.