Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > New and alternative a/v containers
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd February 2008, 23:32   #1  |  Link
David1105
Registered User
 
Join Date: Nov 2006
Posts: 116
MP4 Container

I have some MP4 files which have the first several bytes like the following:

...ftypMSNV...
...ftypisom...
...ftyp3gp4...
...ftypmp42...

Are they really Standard MP4 files? If so then why the bytes are different?
David1105 is offline   Reply With Quote
Old 23rd February 2008, 00:06   #2  |  Link
setarip_old
Registered User
 
setarip_old's Avatar
 
Join Date: Aug 2005
Posts: 16,267
Hi!

What programs did you use to create these files?
setarip_old is offline   Reply With Quote
Old 23rd February 2008, 00:10   #3  |  Link
David1105
Registered User
 
Join Date: Nov 2006
Posts: 116
People uploaded to my site.
David1105 is offline   Reply With Quote
Old 23rd February 2008, 14:54   #4  |  Link
Drachir
Teetrinker
 
Drachir's Avatar
 
Join Date: Jan 2002
Posts: 258
Quote:
Originally Posted by David1105 View Post
I have some MP4 files which have the first several bytes like the following:

...ftypMSNV...
...ftypisom...
...ftyp3gp4...
...ftypmp42...

Are they really Standard MP4 files? If so then why the bytes are different?
This are formats based at the "ISO base media file format".

Main ftyp "msnv":
Files for the Sony PSP with some additional information in uuid boxes.

Main ftyp "isom":
Files created by different tools without MPEG-4 Systems information. (It would be better to use this files only temporary, not for final distribution. The ISO base media file format should only be used as basis for other specification like "qt ",mp42","m4v ","3gp6", ...)

Main ftyp "3gp4":
3gp file format(basic profile of 3GP - release 4)

Main ftyp "mp42":
MP4 file format version 2 (Should contain MPEG-4 Systems information,else an other main ftyp makes more sense.)
__________________
Play GO ( http://en.wikipedia.org/wiki/Go_(board_game))
Drachir is offline   Reply With Quote
Old 25th February 2008, 09:23   #5  |  Link
mediator
Registered User
 
Join Date: Aug 2004
Posts: 133
Quote:
Main ftyp "mp42":
MP4 file format version 2 (Should contain MPEG-4 Systems information,else an other main ftyp makes more sense.)
"mp42" doesn't require the presence of MPEG-4 systems information. If, then at most mp41, which is the designator for the earlier version of MP4:

http://www.mp4ra.org/specs.html#MP4V2
mediator is offline   Reply With Quote
Old 25th February 2008, 10:11   #6  |  Link
Drachir
Teetrinker
 
Drachir's Avatar
 
Join Date: Jan 2002
Posts: 258
@mediator

For a file conformance to the "MP4 File Format"(ISO/IEC 14496-14) the Object Descriptor Framework is required.
A file without a Object Descriptor isn't a MP4 File.

If you don't want the Object Descriptor Framework, don't claim that the file is conformance to ISO/IEC 14496-14. Don't use "mp42" as main brand.

Quote:
from ISO/IEC 14496-14:2003

5 This section defines the boxes, and track reference types, which are defined for use in this file format and are not defined in the ISO Base Media File Format.

5.1 Object Descriptor Box

Box Type: ‘iods’
Container: Movie Box (‘moov’)
Mandatory: No
Quantity: Zero or one
This object contains an Object Descriptor or an Initial Object Descriptor.

There are a number of possible file types based on usage, depending on the descriptor:

Presentation, contains IOD which contains a BIFS stream (MP4 file)

Sub-part of a presentation, contains an IOD without a BIFS stream (MP4 file)

Sub-part of a presentation, contains an OD (MP4 file)

Free-form file, referenced by MP4 data references (free-format)

Sub-part of a presentation, referenced by an ES URL.

NOTE - The first three are MP4 files, a file referenced by a data reference is not necessarily an MP4 file, as it is free-format. Files referenced by ES URLs, by data references, or intended as input to an editing process, need not have an Object Descriptor Box.
Or read the text about the "ISO Base Media File Format" and the "MP4 File Format" here: http://www.chiariglione.org/mpeg/tec...4-ff/index.htm
Quote:
MP4 File Format

MP4 files are generally used to contain MPEG-4 media, including not only MPEG-4 audio and/or video, but also MPEG-4 presentations. When a complete or partial presentation is stored in an MP4 file, there are specific structures that document that presentation.
MPEG-4 presentations are scenes, described by the scene language MPEG-4 BIFS. Within those scenes media objects can be placed; these media objects might be audio, video, or entire sub-scenes. Each object is described by an object descriptor, and within the object descriptor the streams that make up that object are described. The entire scene is described by an initial object descriptor (IOD). This is stored in a special box within the movie atom in MP4 files. The scene and the object descriptors it uses are stored in tracks — a scene track, and an object descriptor track; for files that comprise a full MPEG-4 presentation this IOD and these two tracks are required.
Each stream is described by an elementary stream descriptor. When a complete scene is delivered, these are delivered as part of the object descriptor stream. However, for ease of composition, and to manage files that contain only media streams, these elementary stream descriptors are stored with the media streams themselves — in the descriptive track structures — in MP4 files.
The main difference between other "ISO Base Media File Format" based formats, and the MP4 File Format is the "Object Descriptor Framework".
__________________
Play GO ( http://en.wikipedia.org/wiki/Go_(board_game))

Last edited by Drachir; 25th February 2008 at 10:47.
Drachir is offline   Reply With Quote
Old 25th February 2008, 19:03   #7  |  Link
mediator
Registered User
 
Join Date: Aug 2004
Posts: 133
@Drachir: as cited by yourself from ISO 14496-14:

Quote:
Box Type: ‘iods’
Container: Movie Box (‘moov’)
Mandatory: No
Quantity: Zero or one
If the MP4-spec says, iods is not mandatory, then I assume this is part of the definition of MP4. Whereas if you look in ISO 14496-1, you will see that 'iods' is declared as mandatory there.

Since the whole MP4 systems framework didn't really see a breakthrough in acceptance in the past years, I assume the question for iods is more a philisophical one anyway: I assume any of todays MP4 players doesn't mind if iods is not there (have never seen otherwise)
mediator is offline   Reply With Quote
Old 25th February 2008, 19:33   #8  |  Link
Drachir
Teetrinker
 
Drachir's Avatar
 
Join Date: Jan 2002
Posts: 258
Take a look at case 3:
Sub-part of a presentation, contains an OD (MP4 file)

This is a MP4 file, there is an Object Descriptor. But in the file himself is no IOD.
You can compare this with the "ctts" box, which is only needed with B-Frames.
The "ctts" box is also not mandatory.

About ISO/IEC 14496-1, the oldest version I have is from 2002 and there is the IOD also not mandatory.

It is true that the systems framework isn't used much, but that is no reason to create non standard conformance files.
There should be no problem to create a new file brand/specification based at ISO/IEC 144496-12 if there is no brand which fit with the use case of a company.
3GPP and Apple(iTunes) did it, why not Nero? The way it now is, is in my opinion half-baked.
__________________
Play GO ( http://en.wikipedia.org/wiki/Go_(board_game))
Drachir is offline   Reply With Quote
Old 25th February 2008, 21:02   #9  |  Link
mediator
Registered User
 
Join Date: Aug 2004
Posts: 133
Quote:
Take a look at case 3:
Sub-part of a presentation, contains an OD (MP4 file)

This is a MP4 file, there is an Object Descriptor. But in the file himself is no IOD.
Can you establish step-by-step why a file without iods box should not be a valid MP4-file? I don't see how this could be concluded from case 3.

btw: according to you arguments MainConcept would also be producing non-compliant MP4-files, see e.g. their homepage.

I'm referring to the 2001 version of ISO 14496-1.
mediator is offline   Reply With Quote
Old 25th February 2008, 21:22   #10  |  Link
mediator
Registered User
 
Join Date: Aug 2004
Posts: 133
Regarding the ctts example: ctts is not mandatory in general, and taking this to iods, it would mean that iods is also not mandatory in general (so here we go).

btw: files from Sanyo Xacti camera's (major brand "mp42") also don't have "iods". And I think those files are perfectly ok and MP4-compliant.

Creating a longer list of counter-examples would just be a matter of time, I guess.

I think if iods would really be mandated by MP4, then the spec should tell so clearly. Right now it says "not mandatory".
mediator is offline   Reply With Quote
Old 25th February 2008, 21:55   #11  |  Link
Drachir
Teetrinker
 
Drachir's Avatar
 
Join Date: Jan 2002
Posts: 258
Quote:
Originally Posted by mediator View Post
...
I think if iods would really be mandated by MP4, then the spec should tell so clearly. Right now it says "not mandatory".
Well, I didn't expected to convince you from the need of the OD framework, if the main brand is set to "mp42". I don't say that it make sense in every use case. But if you don't need it, use an other main brand/specification(my opinion).

I don't think that a audio/video file(main ftyp "mp42") without IOD(OD framework) is spec compliant, but there we have a diffrent opinion.

I see no need for a MP4 file without OD framework, you could also use the QuickTime file format or the Matroska file format.
__________________
Play GO ( http://en.wikipedia.org/wiki/Go_(board_game))
Drachir is offline   Reply With Quote
Old 15th October 2012, 11:35   #12  |  Link
kylix999
Registered User
 
Join Date: Mar 2012
Posts: 4
can anyone tell me what words "isomavc1" and "isomavc1dash" mean ?
I was checking initialization file generated by gpac for mpeg dash content an I try to understand what actually those options mean. isomavc1dash is used by gpac, but I got some content with isomavc1 and does not work gpac reference player.
kylix999 is offline   Reply With Quote
Old 17th October 2012, 20:06   #13  |  Link
VFR maniac
Spinner of yarns
 
VFR maniac's Avatar
 
Join Date: May 2009
Posts: 164
isom: the file is compatible with features and structure of ISO Base Media file format version 1.
avc1: the file is compatible with features and structure of ISO Base Media file format version 1 + additional some features for AVC file format (ISO/IEC 14496-15) and MP4 file format (ISO/IEC 14496-14).
dash: the file is compatible with features and structure of ISO Base Media file format specifically designed for DASH (ISO/IEC 23009) including movie fragments and Segment Index.
__________________
僕と契約して、L-SMASH developerになってよ!
L-SMASH | L-SMASH Works | Opus-in-ISOBMFF specification and reference software
VFR maniac is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 04:48.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.