/* Ċ Ġ* ĠCopyright Ġ 2 0 0 2 - 2 0 1 9 ĠD rew ĠNo akes Ġand Ġcontributors Ċ Ġ* Ċ Ġ* ĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* ĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* ĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠĠĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* ĠĠĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ* Ċ Ġ* ĠMore Ġinformation Ġabout Ġthis Ġproject Ġis Ġavailable Ġat : Ċ Ġ* Ċ Ġ* ĠĠĠ Ġhttps :// d rew no akes . com / code / ex if / Ċ Ġ* ĠĠĠ Ġhttps :// github . com / d rew no akes / metadata - extractor Ċ Ġ*/ Ċ package Ġcom . d rew . metadata . mp 4 Ċ Ċ import Ġcom . d rew . metadata . Directory Ċ import Ġjava . util .* Ċ Ċ open Ġclass ĠM p 4 Directory Ġ: ĠDirectory () Ġ{ ĊĠ Ġoverride Ġval ĠtagName Map : ĠHashMap < Int , ĠString > Ġ= ĠComp anion . tagName Map ĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġconst Ġval ĠTAG _ CRE ATION _ TIME Ġ= Ġ 0 x 0 1 0 0 ĊĠĠĠ Ġconst Ġval ĠTAG _ MO DIF ICATION _ TIME Ġ= Ġ 0 x 0 1 0 1 ĊĠĠĠ Ġconst Ġval ĠTAG _ TIME _ SCALE Ġ= Ġ 0 x 0 1 0 2 ĊĠĠĠ Ġconst Ġval ĠTAG _ DURATION Ġ= Ġ 0 x 0 1 0 3 ĊĠĠĠ Ġconst Ġval ĠTAG _ DURATION _ SECONDS Ġ= Ġ 0 x 0 1 0 4 ĊĠĠĠ Ġconst Ġval ĠTAG _ PREFERRED _ RATE Ġ= Ġ 0 x 0 1 0 5 ĊĠĠĠ Ġconst Ġval ĠTAG _ PREFERRED _ VOLUME Ġ= Ġ 0 x 0 1 0 6 ĊĠĠĠ Ġconst Ġval ĠTAG _ PRE VIEW _ TIME Ġ= Ġ 0 x 0 1 0 8 ĊĠĠĠ Ġconst Ġval ĠTAG _ PRE VIEW _ DURATION Ġ= Ġ 0 x 0 1 0 9 ĊĠĠĠ Ġconst Ġval ĠTAG _ POST ER _ TIME Ġ= Ġ 0 x 0 1 0 A ĊĠĠĠ Ġconst Ġval ĠTAG _ SELECTION _ TIME Ġ= Ġ 0 x 0 1 0 B ĊĠĠĠ Ġconst Ġval ĠTAG _ SELECTION _ DURATION Ġ= Ġ 0 x 0 1 0 C ĊĠĠĠ Ġconst Ġval ĠTAG _ CURRENT _ TIME Ġ= Ġ 0 x 0 1 0 D ĊĠĠĠ Ġconst Ġval ĠTAG _ NEXT _ TRACK _ ID Ġ= Ġ 0 x 0 1 0 E ĊĠĠĠ Ġconst Ġval ĠTAG _ TRANS FORMATION _ MATRIX Ġ= Ġ 0 x 0 1 0 F ĊĠĠĠ Ġconst Ġval ĠTAG _ ROT ATION Ġ= Ġ 0 x 0 2 0 0 ĊĠĠĠ Ġconst Ġval ĠTAG _ MEDIA _ TIME _ SCALE Ġ= Ġ 0 x 0 3 0 6 ĊĠĠĠ Ġconst Ġval ĠTAG _ MAJOR _ B RAND Ġ= Ġ 1 ĊĠĠĠ Ġconst Ġval ĠTAG _ MINOR _ VERSION Ġ= Ġ 2 ĊĠĠĠ Ġconst Ġval ĠTAG _ COMPAT IBLE _ B RAN DS Ġ= Ġ 3 ĊĠĠĠ Ġprotected Ġval ĠtagName Map Ġ= ĠHashMap < Int , ĠString >() ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠ ĠtagName Map [ TAG _ MAJOR _ B RAND ] Ġ= Ġ" Major ĠBrand " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ MINOR _ VERSION ] Ġ= Ġ" Minor ĠVersion " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ COMPAT IBLE _ B RAN DS ] Ġ= Ġ" Compatible ĠBr ands " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ CRE ATION _ TIME ] Ġ= Ġ" Creation ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ MO DIF ICATION _ TIME ] Ġ= Ġ" Modification ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ TIME _ SCALE ] Ġ= Ġ" Media ĠTime ĠScale " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ DURATION ] Ġ= Ġ" Duration " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ DURATION _ SECONDS ] Ġ= Ġ" Duration Ġin ĠSecond s " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ PREFERRED _ RATE ] Ġ= Ġ" Preferred ĠRate " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ PREFERRED _ VOLUME ] Ġ= Ġ" Preferred ĠVolume " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ PRE VIEW _ TIME ] Ġ= Ġ" Preview ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ PRE VIEW _ DURATION ] Ġ= Ġ" Preview ĠDuration " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ POST ER _ TIME ] Ġ= Ġ" Post er ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ SELECTION _ TIME ] Ġ= Ġ" Selection ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ SELECTION _ DURATION ] Ġ= Ġ" Selection ĠDuration " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ CURRENT _ TIME ] Ġ= Ġ" Current ĠTime " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ NEXT _ TRACK _ ID ] Ġ= Ġ" Next ĠTrack ĠID " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ TRANS FORMATION _ MATRIX ] Ġ= Ġ" Transformation ĠMatrix " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ ROT ATION ] Ġ= Ġ" Rotation " ĊĠĠĠĠĠ ĠtagName Map [ TAG _ MEDIA _ TIME _ SCALE ] Ġ= Ġ" Media ĠTime ĠScale " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġval Ġname : ĠString ĊĠĠĠ Ġget () Ġ= Ġ" MP 4 " ĊĊĠ Ġinit Ġ{ ĊĠĠĠ Ġset Descriptor ( Mp 4 Descriptor < Mp 4 Directory >( this )) ĊĠ Ġ} Ċ } Ċ