ISO_IEC_1449614_20031115
ISO/EC14496-14:2003(E
Contents
Page
Foreword
Introduction
0.1
Derivation
...a
vvvv
0.2nterchange...….
0.3Contentcreation
∴V
0.4Streamedpresentation…….….….….….….….….….….…yi
Scope.....
Normativereferences
3
StorageofMPEG~4.…,…
3.1ElementaryStreamTracks….,,…,…
日面日
3.2
TrackIdentifiers
3.3Synchronizationofstreams
3.4Composition…
3.5HandlingofFlexMux…..........….………
Fileidentification
Additionstothebasemediaformat
5.1ObjectDescriptorBox
345566778
5.2TrackReferenceTypes
5.3Trackheaderbox
5.4HandlerReferenceTypes
5.5
MPEG-4Mediaheaderboxes
5.6SampleDescriptionBoxes
5.7DegradationPriorityValues
10
Templatefieldsused....
∴10
AnnexA(informative)Patentstatements……
oISO/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E)
Foreword
iso(theInternationalOrganizationforStandardizationandlEc(theInternationalElectrotechnical
Commission)formthespecializedsystemforworldwidestandardization.Nationalbodiesthataremembersof
ISoorIEcparticipateinthedevelopmentofInternationalStandardsthroughtechnicalcommittees
establishedbytherespectiveorganizationtodealwithparticularfieldsoftechnicalactivity.ISOandIEC
technicalcommitteescollaborateinfieldsofmutualinterest.Otherinternationalorganizations,governmental
andnon-governmental,inliaisonwithISoandIEC,alsotakepartinthework.Inthefieldofinformation
technology:ISOandIEChaveestablishedajointtechnicalcommittee,ISO/ECJTC1
InternationalStandardsaredraftedinaccordancewiththerulesgivenintheISo/ECDirectives,Part2
ThemaintaskofthejointtechnicalcommitteeistoprepareInternationalStandards.DraftInternational
Standardsadoptedbythejointtechnicalcommitteearecirculatedtonationalbodiesforvoting.Publicationas
anInternationalStandardrequiresapprovalbyatleast75ofthenationalbodiescastingavote
So/EC14496-14waspreparedbyJointTechnicalCommitteeISO/ECJTC1,Informationtechnology,
SubcommitteeSC29,Codingofaudio,picture,multimediaandhypermediainformation
ISo/EC14496consistsofthefollowingparts,underthegeneraltitleInformationtechnology-Codingof
audio-visualobjects
Part1:Systems
Part2:Visual
Part3:Audio
Part4:Conformancetesting
Part5:Referencesoftware
Part6:DeliveryMultimediaIntegrationFramework(DMIF
Part7:Optimizedreferencesoftwareforcodingofaudio-visualobjects
Part8:Carriageof/SO/EC14496contentsover/Pnetworks
Part9:Referencehardwaredescription
Part10:AdvancedvideoCoding(AVC)
Part11:Scenedescriptionandapplicationengine
Part12/sobasemediafileformat
Part13:IntellectualPropertyManagementandProtection(IPMP)extensions
Part14:MP4fileformat
Part15:AdvancedVideoCoding(Avc)fileformat
Part16:AnimationFrameworkeXtension(AFX
OISo/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E
Introduction
0.1Derivation
ThisspecificationdefinesMP4asaninstanceoftheISoMediaFileformat[Iso/EC14496-12andISonEC
15444-12
ThegeneralnatureoftheIsoMediaFileformatisfullyexercisedbyMP4.MPEG-4presentationscanbe
highlydynamic,andthereisaninfrastructure-theobjectDescriptorFramework-whichservestomanage
theobjectsandstreamsinapresentation.AnInitialObjectDescriptorservesasthestartingpointforthis
framework.IntheusagemodesdocumentedintheISoMediaFile,anInitialobjectDescriptorwouldnormall
bepresent,asshowninthefollowingdiagrams
0.2Interchange
Thefollowingdiagramgivesanexampleofasimpleinterchangefile,containingtwostreams
Figure1-Simpleinterchangefile
0.3Contentcreation
nthefollowingdiagram,asetoffilesbeingusedintheprocessofcontentcreationisshown
oISO/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E)
Figure2-ContentCreationFile
0.4Streamedpresentation
Thefollowingdiagramshowsapresentationpreparedforstreamingoveramultiplexingprotocol,onlyonehint
trackisrequired
Figure3-HintedPresentationforStreaming
OISo/EC2003-Allrightsreserved
INTERNATIONALSTANDARD
ISO/EC14496-14:2003(E)
Informationtechnology-Codingofaudio-visualobjects
Part14
MP4fileformat
1Scope
ThisInternationalstandarddefinesthemp4fileformatasderivedfromtheisobasemediafileformat
2Normativereferences
Thefollowingreferenceddocumentsareindispensablefortheapplicationofthisdocument.Fordated
references,onlytheeditioncitedapplies.Forundatedreferences,thelatesteditionofthereferenced
document(includinganyamendments)applies
ISO/EC14496-1:2001,Informationtechnology-Codingofaudio-visualobjects-Part1:Systems
ISO/EC14496-12:Informationtechnology-Codingofaudio-visualobjects-Part12:/sobasemediafile
format(technicallyidenticaltoISO/EC15444-12)
3StorageofMPEG-4
3.1ElementaryStreamTracks
3.1.1ElementaryStreamData
Tomaintainthegoalsofstreamingprotocolindependence,themediadataisstoredinitsmost'naturalformat
andnotfragmented.Thisenableseasylocalmanipulationofthemediadata.Thereforemedia-dataisstored
asaccessunits,arangeofcontiguousbytesforeachaccessunit(asingleaccessunitisthedefinitionofa
sampleforanMPEG-4mediastream).Thisgreatlyfacilitatesthefragmentationprocessusedinhinttracks
Thefileformatcandescribeandusemediadatastoredinotherfiles,howeverthisrestrictionstillapplies
Thereforeifafileistobeusedwhichcontains'pre-fragmented'mediadata(egaFlexMuxstreamondisc
themediadatawillneedtobecopiedtore-formtheaccessunits,inordertoimportthedataintothisfile
format
Thisistrueforallstreamtypesinthisspecification,includingsuch'meta-informationstreamsasObject
DescriptorandtheClockReference.Theconsequencesofthisare,onthepositiveside,thatthefileformat
treatsallstreamsequally;onthenegativeside,thismeansthatthereare'internalcross-linksbetweenthe
streams.Thismeansthataddingandremovingstreamsfromapresentationwillinvolvemorethanaddingor
deletingthetrackanditsassociatedmedia-data.Notonlymustthestreambeplacedinorremovedfrom,the
scene,butalsotheobjectdescriptorstreammayneedupdating
Foreachtrack,theentireES-descriptorisstoredasthesampledescriptionordescriptions.The
SLConfigDescriptorforthemediatrackshallbestoredinthefileusingadefaultvalue(predefined=2),excep
whentheElementaryStreamdescriptorreferstoastreamthroughaurl,i.e.thereferredstreamisoutside
thescopeoftheMP4file.InthatcasetheSLConfigDescriptorisnotconstrainedtothispredefinedvalue
oISO/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E)
Inatransmittedbit-streamtheaccessunitsintheslpacketsaretransmittedonbyteboundaries.this
meansthathinttrackswillconstructSLPacketheadersusingtheinformationinthemediatracks,andthehint
trackswillreferencetheaccessunitsfromthemediatrack.Theplacementoftheheaderduringhintingis
possiblewithoutbitshifting,aseachSLPacketandcorrespondingcontainedaccessunitwillbothstarton
byteboundaries
3.1.2ElementaryStreamDescriptors
TheESDescriptorforastreamwithinthescopeofthemP4fileasdescribedinthisdocumentisstoredinthe
sampledescriptionandthefieldsandincludedstructuresarerestrictedasfollows
EsID-settooasstoredwhenbuiltintoastreamthelower16bitsofthetrackidareused
treamDependenceFlagsetto0asstored;ifadependencyexists,itisindicatedusingatrack
referenceoftype'dpnd
URLflag-keptuntouched,i.esettofalse,asthestreamisinthefile,notremote
SLConfigDescriptor-ispredefinedtype2
OCRStreamFlag-settofalseinthefile
TheESDescriptorforastreamreferencedthroughanESURLisstoredinthesampledescriptionandthe
fieldsandincludedstructuresarerestrictedasfollows
ESID-settooasstoredwhenbuiltintoastreamthelower16bitsofthetrackidareused
streamDependenceFlag-settoOasstored;ifadependencyexists,itisindicatedusingatrack
referenceoftype'dpnd
URLflag-keptuntouched,i.e.settotrue,asthestreamisnotinthefile
SLConfigDescriptor-keptuntouched
OCRStreamFlagsettofalseinthefil
lotethattheQoSDescriptoralsomayneedre-writingfortransmissionasitcontainsinformationaboutPDU
sizesetc
3.1.3ObjectDescriptors
TheinitialobjectdescriptorandobjectdescriptorstreamsarehandledspeciallywithinthefileformatObject
descriptorscontainESdescriptors,whichinturncontainstreamspecificinformation.Inaddition,tofacilitate
editing,theinformationaboutatrackisstoredasanESDescriptorinthesampledescriptionwithinthattrack
Itmustbetakenfromthere,re-writtenasappropriate,andtransmittedaspartoftheODstreamwhenthe
presentationisstreamed
Asaconsequence,ESdescriptorsarenotstoredwithintheODtrackorinitialobjectdescriptor.Instead,the
initialobjectdescriptorhasadescriptorusedonlyinthefile,containingsolelythetrackIDoftheelementary
stream.Whenused,anappropriatelyre-writtenESDescriptorfromthereferencedtrackreplacesthis
descriptorLikewise,odtracksarelinkedtoestracksbytrackreferencesWhereanesdescriptorwouldbe
usedwithintheODtrack,anotherdescriptorisused,whichagainoccursonlyinthefile.Itcontainstheindex
ntothesetofmpodtrackreferencesthatthisOdtrackownsAsuitablyre-writtenESDescriptorreplacesitby
hehintingofthistrack
OISo/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E
TheEsIDIncisusedintheobjectDescriptorBo
classESIDIncextendsBaseDescriptorbit(8)tagESIDIncTagf
nsignedint(32)TrackID;/IDofthetracktouse
三S工D工ncTag=0x0Eisreservedforfi1eformatusage,
Theesidrefisusedintheodstream
classEsIdRefextendsBaseDescriptorbit(8)tag=ESIDRefTagI
bit(16)refindex;/trackef.indexofthetracktouse
SIDRefTag=0xoFisreservedforfileformatusage
MP4IODTag-0xl0isreservedforfileformatusage
MP4ODTag-0x11isreservedforfileformatusage
IPIDescrpointerRefrag=0x12isreservedforfileformatusage
EsDescrRemcveRefrag=0x07isreservedforfileformatusage(commandtag)
NOTETheabovetagvaluesaredefinedin82.2.2Table1and8.2.3.2Table2oftheMPEG-4SystemsSpecification
andtheactualvaluesshouldbereferencedfromthosetables
ahintermayneedtosendmoreODeventsthanactuallyoccurintheOdtrack:forexample,ifthe
EsdescriptionchangesatatimewhenthereisnoeventintheOdtrack.Ingeneral,anyODeventsexplicitly
authoredintotheodtrackshouldbesentalongwiththosenecessarytoindicateotherchanges.TheES
descriptorsentintheOdtrackistakenfromthedescriptionofthetemporallynextsampleintheEstrack(in
decodingtime
3.2TrackIdentifiers
Thetrackidentifiersusedinanmp4fileareuniquewithinthatfile;notwotracksmayusethesameidentifier.
Eachelementarystreaminthefileisstoredasamediatrack.Inthecaseofanelementarystream,thelower
wobytesofthefour-bytetrackIdshallbesettotheelementarystreamidentifier(ES_ID).theuppertwo
bytesofthetrack_IDarezerointhiscase.Hinttracksmayusetrackidentifiervaluesinthesamerange,ifthis
numberspaceisadequate(whichitgenerallyis).However,hinttrackidentifiersmayalsouselargervaluesof
trackidentifier,astheiridentifiersarenotmappedtoelementarystreamidentifiers.Thusverylarge
presentationsmayusetheentire16-bitnumberspaceforelementarystreamidentifiers
Thenexttrackidentifiervaluefoundinnexttrackidinthemoviebox,asdefinedintheisobase
MediaFormat,generallycontainsavalueonegreaterthanthelargesttrackidentifiervaluefoundinthefile
Thisenableseasygenerationofatrackidentifierundermostcircumstances.However,ifthisvalueisequalto
orlargerthan65535,andanewmediatrackistobeadded,thenasearchmustbemadeinthefileforafree
trackidentifier.Ifthevalueisall1s(32-bitmaxint)thenthissearchisneededforalladditions
Ifitisdesiredtoaddatrackwithaknowntrackidentifier(elementarystreamidentifier)thenthefilemustbe
searchedtoensurethatthereisnoconflict.Notethathinttrackscanbere-numberedfairlyeasilywhilemore
careshouldbetakenwithmediatracksastheremaybereferencestotheiresid(trackiD)inothertracks
IfhinttrackshavetrackIDsoutsidetheallowedrangeforelementarystreamtrackS,thennexttrackID
documentsthenextavailablehinttrackID.Sincethisislargerthan65535,asearchwillthenalwaysbe
neededtofindavalidelementarystreamtrackiD
Iftwopresentationsaremerged,thentheremaybeconflictbetweentheirtrackIDs.Inthatcase,oneormore
trackswillhavetobere-numberedtherearetwoactionstobetakenhere
Changingtheidofthetrackitself,whichiseasy(trackIDinthetrackheader)
Changingpointerstoit
oISO/EC2003-Allrightsreserved
ISO/EC14496-14:2003(E)
Thepointersmayonlyoccurinthefileformatstructureitself.thefileformatusestrackIDsonlythroughtrack
references,whichareeasilyfoundandmodified.TrackIDsbecomeEsIDsintheMPEG-4data,andEs_IDs
occurwithintheODStream.SinceallpointerstoESIDsintheOdstreamarereplacedbymeansoftrack
references,thereisnoneedtoinspecttheOdstreamforcross-referenceswithinMPEG-4streams
Inthefileformat,ESDescriptorRemovecommandandIPlDescrPointerdescriptorareconvertedto
ESDescrRemoveRefandIPlDescrPointerRefby
changingthetagvaluetoESDescrRemoveRefTagorIPIDescrPointerRefTagrespectively;
changinganyEs_idtotheappropriatetrackreferenceindex(usingreferencesoftypempodandipr
respectively-see5.2)
Whenhintingorserving,thetagvalueandtrackreferenceindexchangesshallbereversed
3.3Synchronizationofstreams
Intheabsenceofexplicitdeclarationstothecontrary,tracks(streams)comingfromthesamefileshallbe
presentedsynchronized.Thismeansthathintersand/orserversmusteitherpickoneofthestreamstoserve
astheocrsourcefortheothersoraddanocrstreamtoassociateallthestreamswithittrackreferences
oftype'sync'maybeusedinthefiletodefeatthedefaultbehavior.InMPEG-4theOCRStreamFlagand
OCRESIDfieldsintheESDescriptorgovernthesynchronizationrelationships.ThemappingofMP4
structuresintothosefieldsshallobeythefollowingrules
TheMPEG-4ESDescriptor,asstoredinthefile,usuallycontainsOCRStreamFlagsettoFALSE,and
noOCRESID.IfanOCRESIDisset,itisignored
Ifatrack(stream)containsatrackreferenceoftype'sync'whosevalueis0,thenthehinterorserver
shallsettheOCRStreamFlagfieldintheMPEG-4ESDescriptortoFaLsEandshallnotinsertany
OCREsIDfield.Thismeansthatthisstreamisnotsynchronizedtoanotherbutotherstreamsmay
besynchronizedtoit
Ifatrack(stream)containsatrackreferenceoftype'syncwhosevalueisnot0,thenthehinteror
servershallsettheOCRStreamFlagfieldintheMPEG-4ESDescriptortoTRUEandshallinsertan
OCRESIDfieldwiththesamevaluecontainedinthe'trackreference.Thismeansthatthis
streamissynchronizedtothestreamindicatedintheocrEsID.otherstreamsmayalsobe
synchronizedtothesamestream,eitherexplicitlyorimplicitI
Ifatrack(stream)doesnotcontainatrackreferenceoftype'sync,thenthedefaultbehaviorapplies
ThehinterorservershallsettheOCRStreamFlagfieldintheMPEG-4ESDescriptortoTRUEand
shallinsertanocresidfieldwithavalueselectedbasedontherulesbelowthismeansthatthis
streamissynchronizedtothestreamindicatedintheOCRESID.Therulesforselectingthe
OCRESDareasfollows
Ifnotrack(stream)inthefile
trackreferenceoftype'sync,thenthehinterpicksone
TrackldandusesthatvaluefortheoCrESIdfieldofallESDescriptors.Thereisonepossible
exceptionwheretheEsDescriptorofthestreamwhichcorrespondstothattrackld,forwhichthe
OCRStreamFlagmaybesettoFALSE
oIfoneormoretracks(streams)inthefilecontainatrackreferenceoftypesync,andallsuchtrack
referencesindicateconsistentlyasingleTrackld,thenthehinterusesthatTrackld.Inatrack
referenceoftype'sync'thevalue0isequivalenttotheTrackldofthetrackitself
oIftwoormoretracks(streams)inthefilecontainatrackreferenceoftype'sync,andsuchtrack
referencesdonotindicateasingletrackld,thenthehintercannotmakeadeterministicselection
andthebehaviorisundefined.Inatrackreferenceoftype'sync'thevalue0isequivalenttothe
Trackldofthetrackitself
OISo/EC2003-Allrightsreserved
下载地址
用户评论