View Full Version : ftyps.com
stegre
6th December 2006, 08:12
In attempting to update GSpot for better MP4 handling (available soon), I got very frustrated with the lack of information and total confusion concerning values for values for "ftyp" in MP4 files. There's theoretically a "registration authority", though less than half the ones now being used are "registered". In fact Nero single-handedly practically doubled the number of such ftyp codes in one fell swoop (and didn't document or register any of them) - the only place on the internet I could find those documented is this single doom9 post (http://forum.doom9.org/showthread.php?p=823818#post823818) (thx Falco!) Some are so obscure that when I typed, for example, ftyp jp20 into Google not only did I get but just one match – this was the page I got (http://www.mit.edu/~ddcc/spiderme/upto4chars.html). That's when I knew things were really bad!
So to make a long story short, I've rather painstakingly collected together "every known 'ftyp' code" (but by all means let me know anyone has more!). I happened to notice that the domain "ftyps.com" was actually available, registered it and put together this two page website; anyone who is interested in such things should feel free to take a look. Comments welcome.
http://ftyps.com/
SeeMoreDigital
6th December 2006, 10:52
There was this (slightly earlier) post by Cera (aka: Falco) too: -
http://forum.doom9.org/showthread.php?p=823723#post823723
Is "ftyp" an abbreviation for something?
Drachir
6th December 2006, 12:27
Is "ftyp" an abbreviation for something?
It's an abbreviation for File Type Box/Atom.
For more info take a look into the ISO base media file format (ISO/IEC 14496-12)
Hyper Shinchan
7th December 2006, 11:56
Anyway I think that you had really a great idea, I'll give all the support that I can to complete this list of ftyps!
First of all you forgot 3gp7 (and derivated) brands, then it seems that you also forgot 3gr6 and 3gs6 (they are applicable to 3gp7 of course with the different number).
I think that 3gp1,3gp2,3gp3 definitely don't exist coz the file format was only introduced in release 4 of 3GPP.
Recently (well, at march 2006) it was finalized 3g2b the second release of 3GPP2 with AVC,AAC Plus and other codecs adding.
I haven't ever seen a JP20 brand, but it exist the jp2%20 brand (like in the mp4ra website I mean a white space with 20, it's important to set it, "M4A" isn't the same of "M4A " in the mp4 world).
In the JPEG2000 specs exist alos "jpx " and "jpm ".
Anyway I'dl like to precise one thing. JPEG2000 file format were derivated from QT file format, but they aren't temporal based, they just use an atom/box hierarchy (and they have also a magic number before of the ftyp: 00000018). So it can be confusing to include these ftyp in GSpot.
Ah, mmp4 is used as major brand, you can create a sample with QT (or I can create one if you wish).
An other ftyp used by Japanese mobile phones is:
kddi: used by KDDI mobile phone for 3GPP2 http://translate.google.com/translate?hl=en&sl=ja&u=http://www.au.kddi.com/ezfactory/tec/spec/ezmovie01.html&sa=X&oi=translate&resnum=2&ct=result&prev=/search%3Fq%3Damc%2Bkddi%26hl%3Den%26lr%3D%26client%3Dfirefox-a%26rls%3Dorg.mozilla:en-US:official%26sa%3DG
Some Sony mobile phone uses "mqt%20" brand (as major brand, and qt%20%20 and mqt%20 as compatible brands). They are basically MPEG-4 visual and AAC in a MOV file, but they are quite hard to recreate for some reason. Of course they call it Mobile QuickTime.
stegre
8th December 2006, 07:26
Thanks! Great info. I'm working on an update now, it'll be posted in a few days.
CruNcher
8th December 2006, 13:24
im not sure but i think last time i looked in the Sony PSP Firm i saw a ftyp called MGV could be MagicGate Protected Content ?
stegre
13th December 2006, 16:37
The site is pretty fixed up now (http://www.ftyps.com/). Hyper Shinchan: I was able to confirm every one you mentioned by general research, standards specifications and/or creating my own samples; they've all been added to the list with the relevant info. Thanks again. CruNcher: I couldn't find anything on Sony 'MGV ' except on a Japanese webpage where it was shown as part of a some directory structure on a Sony memory stick. If you ever run into a sample or more info, please let me know. I have, though, added Sony 'MQT ' (as mentioned by Hyper Shinchan). There used in Sony ".mqv" files - I actually created some of those with QT Pro. And SMD... I addded a well needed "what is an ftyp?" page as well :)
Now I'm getting back to updating GSpot for all this & other stuff.
CruNcher
14th December 2006, 18:00
@stegre i think what i stumbled over in the PSP Firm is this
http://www.pspvideo9.com/forums/viewtopic.php?p=28639&sid=c2714b093ea1a55713535055e49a3df5
so the ftyp for the Encrypted MP4 Video Container
Hyper Shinchan
16th December 2006, 11:43
@stegre i think what i stumbled over in the PSP Firm is this
http://www.pspvideo9.com/forums/viewtopic.php?p=28639&sid=c2714b093ea1a55713535055e49a3df5
so the ftyp for the Encrypted MP4 Video Container
I'd like to see a file (but it's quite hard that I'll have the chanche). From this post I can assume that MGV is the file extension but not the ftyp.
Maybe can you indicate me where it says that it's the ftyp (I've searched it quicly)?
Hyper Shinchan: I was able to confirm every one you mentioned by general research, standards specifications and/or creating my own samples
O.K.! Sorry, but I didn't provide source about my infos coz I didn't have enough time to search them.
I have, though, added Sony 'MQT ' (as mentioned by Hyper Shinchan). There used in Sony ".mqv" files - I actually created some of those with QT Pro.
How? You created mqv MQT files with QT? Which version of qt allows it? I have the 7.1.3 Pro and I don't think that it can do that:eek: ! Maybe an older (a 6?)?
bond
16th December 2006, 15:09
why dont you simply display the ftyps? its not like they are very important
stegre
21st December 2006, 07:36
Oh, I am going to display the ftyp code(s), with the textual description right next to it (see screenshots below). I may or may not display all the "compatible types" as you see there now. In any event, the "ftyp code" vs. "description" mapping will be built right into GSpot's .dat file just like 4cc's are and other stuff is; it's not like you'll need to reference the web page or anything.
The problem was I couldn't find any source of info with which to compile such a database (the mapping of the ftyp codes to their descriptions), so I collected/derived all the info myself (with some helpful contributions by some posters in this thread). So, while I was at it, I just made the webpage as a "side project"; a "public service", if you will - so that no one else who needs such a list will have to go thru the trouble I did. Unlike the abundance of websites with fourcc tables, the info on ftyp's just really isn't out there.
The ftyp info may not be "important" in a critical sense, but I think many people will certainly find it of interest. In the best cases, it'll tell you both "what the file was made by" and "what it was made for".
This is how it looks now for a few test files. I'll release this version of GSpot prob in the next week or so.
http://headbands.com/gspot/v26x/images/ftyps.png
CruNcher
21st December 2006, 07:49
@Hyper Shinchan & stegre
ehh sorry my fault it's not the ftpy it's the file extension shown in the firmware the ftyp is the same as for the normal Sony Mp4 files (MSNV) only difference is the file extension.
SeeMoreDigital
21st December 2006, 10:58
The ftyp info may not be "important" in a critical sense, but I think many people will certainly find it of interest. In the best cases, it'll tell you both "what the file was made by" and "what it was made for".What I'm about to say may be a bit paranoid but.... my area of concern is that certain companies could use FTYP tagging as a tool to effectively lock out encodes that have not been created by approved encoding tools!
For example: The iPod could be programmed to reject encodes that have not been generated by iTunes or QuickTime Pro. And NeroDigital Certificated devices could be programmed to reject encodes that have not been generated by Recode2
Cheers
Hyper Shinchan
21st December 2006, 11:43
What I'm about to say may be a bit paranoid but.... my area of concern is that certain companies could use FTYP tagging as a tool to effectively lock out encodes that have not been created by approved encoding tools!
For example: The iPod could be programmed to reject encodes that have not been generated by iTunes or QuickTime Pro. And NeroDigital Certificated devices could be programmed to reject encodes that have not been generated by Recode2
Cheers
Well, at the moment hardware device doesn't look at the ftyp (at least not in a restrective way), at least the device that I have or that I've heard about.
Anyway ftyp give important infos on how the file "should" be parsed, I mean info on the codec that the reader is supposed to support. Anyway it's just an informative notice (but indeed useful).
At the moment for that purpose those company that sell ISOMedia compatible device uses or UUID boxes (SONY in the past and Apple for VGA resolution video), or put their own boxes (like the ndrm used by Nero that I don't really understand if it's really a drm mechanism).
@stegre: it looks great that snap that you have posted, anyway I've a pair of suggestions:
1. For the M4A%20 brand you've used as description "Apple ITunes AAC-LC (.M4A) Audio", it's also the description used by MPlayer, but it's not really exact. Files with that brand (especially as major brand, in that case it was used as compatible brand in a .m4v) could also contain Apple ALAC codec (the so called Apple Lossless), so it's not always true that it's AAC-LC.
2. You've added support for the display of ITunes metadata, could you add support also for 3GPP assets (they are derivated from the cprt box of the ISO MPEG-4 part 12 specs, they are described in 26.244 specs of 3GPP).
http://www.3gpp.org/ftp/Specs/html-info/26244.htm
@Hyper Shinchan & stegre
ehh sorry my fault it's not the ftpy it's the file extension shown in the firmware the ftyp is the same as for the normal Sony Mp4 files (MSNV) only difference is the file extension.
Don't worry about it.
CruNcher
21st December 2006, 16:36
Well, at the moment hardware device doesn't look at the ftyp (at least not in a restrective way), at least the device that I have or that I've heard about.
Don't forget before Firmware 2.80 that's exactly the way Sony Computer Entertainment restricted Playback of other MP4 (APPLE) files on the PSP and only opened that because of customer demand, they are missuseing it allready for their purposes of making stuff non interoperable to each other.
The other would be DRM fact is digital life for the consumer in the coming years is gonna be bound on companies their devices and what they allow in their firmware, and we have rarely access to that, we really need Open Firmwares. Or we gonna have alot of begging, crying and praying todo, if we wan't something to get supported in the future from a competitor.
The PS3 would be another good example even if i didn't tested it yet but officialy it says it only can support Main Profile for standard users, but we all know that Blue-Ray is able todo High Profile so why do they restrict such stuff on the average joey customer level is behind me, but same for Microsoft and the Xbox 360 it gets restricted for the customer in it's capabilities wherever it can, and nobody can tell me it would be more effort to make such stuff available to users (lol), it's more effort to restrict it in the first place. Or look @ Samsung and their Players no Customer Content Playback allowed @ the moment on their Next-Gen CE devices (first firmware it still worked), for me it looks like they wan't extra money in the future for such capabilities from us.
SeeMoreDigital
21st December 2006, 16:56
Don't forget before Firmware 2.80 that's exactly the way Sony restricted Playback of other MP4 (APPLE) files on the PSP and only opened that because of customer demand, they are missuseing it allready for their purposes of making stuff non interoperable to each other.Indeed,
I seem to remember some owners of NeroDigital "Standard" Certificated players mentioning that they were unable play encodes generated with "ndsc" (Nero Digital Cinema) descriptors, despite the fact their encodes contained 720x576 pixels or less....
CruNcher
21st December 2006, 17:06
@SeeMoreDigital
yep also the PSP resolution restriction (customer get only higher resolutions if they pay for it) is a perfect example with what restrictions companies are playing @ the moment and average joey has no idea of this (so please spread the word everywhere), only we have but they try to restrict us from lifting such imoral restrictions by adding alot of security stuff arround it :(
bond
21st December 2006, 22:23
The ftyp info may not be "important" in a critical sense, but I think many people will certainly find it of interest. In the best cases, it'll tell you both "what the file was made by" and "what it was made for".indeed
regarding the compatible ftyps, you might always display "isom", "mp42" and "avc1" because those are the official ones
SeeMoreDigital
21st December 2006, 23:19
regarding the compatible ftyps, you might always display "isom", "mp42" and "avc1" because those are the official onesAgreed...
And very useful for all us folks who are used to working with MP4Box....
MPEG-4 Part-10 in MP4
* Movie Info *
Timescale 600 - Duration 00:00:50.760
Fragmented File no - 2 track(s)
File Brand ndss - version 0
Created: GMT Thu Dec 21 22:07:29 2006
File has root IOD
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 4 (0x2a)
No streams included in root OD
Track # 1 Info - TrackID 1 - TimeScale 25000 - Duration 00:00:50.760
Media Info: Language "English" - Type "vide" - Sub Type "avc1" - 1269 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 720 x 576 - Profile Main @ Level 4
Pixel Aspect Ratio 64:45 - Indicated track size 1024 x 576
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 24000 - Duration 00:00:50.176
Media Info: Language "English" - Type "soun" - Sub Type "mp4a" - 1176 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 6 Channel(s) - SampleRate 24000 - SBR SampleRate 48000
Synchronized on stream 1
MPEG-4 Part-2 in MP4
* Movie Info *
Timescale 600 - Duration 00:00:50.760
Fragmented File no - 4 track(s)
File Brand mp42 - version 1
Created: GMT Thu Dec 21 22:26:26 2006
File has root IOD
Scene PL 0x01 - Graphics PL 0x01 - OD PL 0x01
Visual PL: Simple Profile @ Level 3 (0x03)
Audio PL: AAC Profile @ Level 4 (0x2a)
Track # 1 Info - TrackID 201 - TimeScale 25000 - Duration 00:00:50.760
Media Info: Language "Undetermined" - Type "vide" - Sub Type "mp4v" - 1269 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x20
MPEG-4 Visual Size 720 x 576 - Simple Profile @ Level 3
Pixel Aspect Ratio 64:45 - Indicated track size 1024 x 576
Synchronized on stream 1
Track # 2 Info - TrackID 101 - TimeScale 48000 - Duration 00:00:50.197
Media Info: Language "English" - Type "soun" - Sub Type "mp4a" - 2353 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 6 Channel(s) - SampleRate 48000
Synchronized on stream 1
Track # 3 Info - TrackID 2 - TimeScale 600 - Duration 00:00:01.000
Track is present in Root OD
Media Info: Language "Undetermined" - Type "odsm" - Sub Type "mp4s" - 1 samples
MPEG-4 Config: ObjectDescriptor Stream - ObjectTypeIndication 0x01
Synchronized on stream 1
Track # 4 Info - TrackID 1 - TimeScale 600 - Duration 00:00:01.000
Track is present in Root OD
Media Info: Language "Undetermined" - Type "sdsm" - Sub Type "mp4s" - 1 samples
MPEG-4 Config: SceneDescription Stream - ObjectTypeIndication 0x02
BIFS Scene description - Command stream
Self-synchronized
Cheers
stegre
22nd December 2006, 05:03
I have, though, added Sony 'MQT ' (as mentioned by Hyper Shinchan). There used in Sony ".mqv" files - I actually created some of those with QT Pro.How? You created mqv MQT files with QT? Which version of qt allows it? I have the 7.1.3 Pro and I don't think that it can do that:eek: ! Maybe an older (a 6?)?
I have a little catching up to do on this thread here, anyway, with regard to the above I went back and checked and it looks like the .mqv sample I created was not with QT directly, but I had to do a perform a secondary step on a QT encoded 3GP file. No re-encoding - it just have its "atoms rearranged" (haha, I love the way that sounds). Anyway, I used the 3GP_Converter (http://www.nurs.or.jp/~calcium/3gpp/3GP_Converter034.zip) from this page (http://www.nurs.or.jp/~calcium/3gpp/) (Google translation link here (http://translate.google.com/translate?u=http%3A%2F%2Fwww.nurs.or.jp%2F%7Ecalcium%2F3gpp%2F&langpair=ja%7Cen&hl=en&safe=off&ie=UTF-8&oe=UTF-8&prev=%2Flanguage_tools)) as shown below. Run "setup.exe" first & choose English, which changes it to English (duh), then choose MQV as shown on the left. When you hit apply, it fires up the other app, I chose the bottom selection there as shown on the right; I then dropped a QT encoded 3gp4 file on it (HS, this app should be right up your alley if you haven't seen it before). Anyway, it worked, you can see the ftyp below in GSpot and the result was playable in either QT (I'm using 7.1.4 Pro) and also fine played via DirectShow thru either the Haali Media Splitter or Gabest MP4 Splitter connecting to ffdshow and CoreAAC decoders for the video & audio respectively.
http://www.headbands.com/gspot/v26x/images/mqt.png
Hyper Shinchan
3rd January 2007, 18:13
I have a little catching up to do on this thread here, anyway, with regard to the above I went back and checked and it looks like the .mqv sample I created was not with QT directly, but I had to do a perform a secondary step on a QT encoded 3GP file. No re-encoding - it just have its "atoms rearranged" (haha, I love the way that sounds). Anyway, I used the 3GP_Converter (http://www.nurs.or.jp/~calcium/3gpp/3GP_Converter034.zip) from this page (http://www.nurs.or.jp/~calcium/3gpp/) (Google translation link here (http://translate.google.com/translate?u=http%3A%2F%2Fwww.nurs.or.jp%2F%7Ecalcium%2F3gpp%2F&langpair=ja%7Cen&hl=en&safe=off&ie=UTF-8&oe=UTF-8&prev=%2Flanguage_tools)) as shown below. Run "setup.exe" first & choose English, which changes it to English (duh), then choose MQV as shown on the left. When you hit apply, it fires up the other app, I chose the bottom selection there as shown on the right; I then dropped a QT encoded 3gp4 file on it (HS, this app should be right up your alley if you haven't seen it before). Anyway, it worked, you can see the ftyp below in GSpot and the result was playable in either QT (I'm using 7.1.4 Pro) and also fine played via DirectShow thru either the Haali Media Splitter or Gabest MP4 Splitter connecting to ffdshow and CoreAAC decoders for the video & audio respectively.
http://www.headbands.com/gspot/v26x/images/mqt.png
Okay! I was a fan of that program, and infact I've discovered about that using it. It also report some other strange ftyp in its ini file, but I think that they are really rare.
Anyway another nice thing to add is a parsing for the mp4 files to see the the structure of the video stream (that utility that shows you the frame type and their order). It's quite useful. But it works only with avi, mpeg and raw streams for now.
stegre
25th March 2007, 06:26
Hey, I got an email from the "director of ftyps", if you will, about my ftyps.com (http://ftyps.com/) website. I wouldn't normally post a private email, but this is basically a request to do so. It's also rather complimentary, to boot ;). So I'll put it here and also put a similar equivalent on the site itself as soon as I get a chance to update it. I won't post any email addresses as text - for spam control reasons (something both MP4RA and I both did on our sites) but the actual registration URL is here (http://www.mp4ra.org/request.html), should anyone reading this be in a position to make such a request.
I believe some Doom9 forum members here are engineers for Nero (?). <== This means you! or your bosses, anyway!) One look at my list and you can see that Nero is the biggest culprit of "inventing" new types without bothering to register them!. I think it would be to everyone's advantage if Nero makes this small effort; compliance with standards organizations and their related "registration authorities" is helpful to all of us.
I love your list and admire your energy! I am the admin for mp4ra.org, and I only do registrations when requested (that's the way an RA runs), but it is free. If you could put a note on your web site saying that the RA is (a) definitive and (b) free, and that people inventing codes really OUGHT to register them, that would be great. Let me know if I can help...
--
David Singer
Apple Computer/QuickTime
bond
25th March 2007, 10:59
the thing is nero doesnt want to register/make public their private stuff
why?
because they want to earn money by "inventing" private things and selling those to third parties
edit: if you are smart, you (stegre) might reverse engineer it and register it on mp4ra ;)
SeeMoreDigital
25th March 2007, 12:08
I suppose Nero could argue that it does not see the point informing the mp4ra/Apple Computers (ie: one of its competitors) of its codes!
bond
25th March 2007, 12:12
as i understand it mp4ra is not apple, but an official mpeg institution. but of course making things public on mp4ra makes things public
stegre
27th March 2007, 03:42
Yes, the MP4RA is, and I quote, "run on behalf of the International Organization for Standardization, ISO, and supports in particular the working groups WG11 (MPEG) and WG01 (JPEG)".
Regarding Nero, there isn't much "reverse engineering" to be done, and to the extent there is/was for Nero, it’s already been done and posted on this Doom9 post (http://forum.doom9.org/showthread.php?p=823818#post823818) before I even got involved (as I mentioned earlier in this thread). Realizing that the ftyp indicates "intended usage" and that Nero publicly describes their ten usage "profiles", I assume the post's author, "cera" aka "Falco", created one of each profile type and looked at what four letters the encoder put in that field.
In fact, I've created an enhanced version of their "profile table" (http://ftyps.com/nero_profiles.html) as it exists on their site with the just the ftyps added. As you can see, it's not all very secretive or cryptic, the codes are have an obvious alphabetic relationship to the profiles. I just think they should register them as I explained on another new page on the site (http://ftyps.com/mp4reg.html) where I posted the email, along with my commentary. I also updated the site with the screenshot of how the codes provide useful information (http://ftyps.com/gspot.html) - the current v2.70a version does have this feature now; I finally got a few months after starting this thread & then making the website.
BTW, all that said, Nero is in fact a little over-paranoid about reverse engineering; they are the only company currently (and only like the third I've ever seen) who put "debugger traps" in their codecs (and not just the encoders! some of their regular MPEG decoders & stuff). This is really annoying as I have to uninstall their products to just to run GSpot in debug mode even though I have no interest in disassembling their codecs. But this is O/T for here...
Mtz
27th March 2007, 06:28
I think the Nero standards regarding audio will be modified again because of implementing AC3 in MP4.
enjoy,
Mtz
vBulletin® v3.8.4, Copyright ©2000-2010, Jelsoft Enterprises Ltd.