@archipelagolab/lobi 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/APEv2Parser-FYYGMFPI.js +15 -0
- package/dist/APEv2Parser-FYYGMFPI.js.map +7 -0
- package/dist/AiffParser-JHSDQA7T.js +194 -0
- package/dist/AiffParser-JHSDQA7T.js.map +7 -0
- package/dist/AsfParser-TPCQDEJB.js +620 -0
- package/dist/AsfParser-TPCQDEJB.js.map +7 -0
- package/dist/DsdiffParser-CGD3C3TL.js +192 -0
- package/dist/DsdiffParser-CGD3C3TL.js.map +7 -0
- package/dist/DsfParser-3UTIJVNF.js +114 -0
- package/dist/DsfParser-3UTIJVNF.js.map +7 -0
- package/dist/FlacParser-HLLYPJ76.js +16 -0
- package/dist/FlacParser-HLLYPJ76.js.map +7 -0
- package/dist/MP4Parser-SM7HYL3Z.js +1145 -0
- package/dist/MP4Parser-SM7HYL3Z.js.map +7 -0
- package/dist/MatroskaParser-X7WRZ6D4.js +662 -0
- package/dist/MatroskaParser-X7WRZ6D4.js.map +7 -0
- package/dist/MpegParser-KXQEC6KD.js +652 -0
- package/dist/MpegParser-KXQEC6KD.js.map +7 -0
- package/dist/MusepackParser-NURI46TG.js +331 -0
- package/dist/MusepackParser-NURI46TG.js.map +7 -0
- package/dist/OggParser-5IYVBXPS.js +448 -0
- package/dist/OggParser-5IYVBXPS.js.map +7 -0
- package/dist/WavPackParser-RTEHKSJH.js +209 -0
- package/dist/WavPackParser-RTEHKSJH.js.map +7 -0
- package/dist/WaveParser-3R2NLXGP.js +300 -0
- package/dist/WaveParser-3R2NLXGP.js.map +7 -0
- package/dist/auth-presence.js +2 -2
- package/dist/channel-plugin-api.js +68 -68
- package/dist/chunk-2GFROLI2.js +261 -0
- package/dist/chunk-2GFROLI2.js.map +7 -0
- package/dist/chunk-2IQWKATM.js +127 -0
- package/dist/chunk-2IQWKATM.js.map +7 -0
- package/dist/chunk-2V6Y4CAN.js +25 -0
- package/dist/chunk-2V6Y4CAN.js.map +7 -0
- package/dist/chunk-2WHRUMOM.js +321 -0
- package/dist/chunk-2WHRUMOM.js.map +7 -0
- package/dist/chunk-3GIK7SAA.js +109 -0
- package/dist/chunk-3GIK7SAA.js.map +7 -0
- package/dist/chunk-3OXOEMBS.js +123 -0
- package/dist/chunk-3OXOEMBS.js.map +7 -0
- package/dist/chunk-3R4ATE4Q.js +176 -0
- package/dist/chunk-3R4ATE4Q.js.map +7 -0
- package/dist/chunk-4CFQNJ7F.js +7 -0
- package/dist/chunk-4CFQNJ7F.js.map +7 -0
- package/dist/chunk-4COI4L2Y.js +31 -0
- package/dist/chunk-4COI4L2Y.js.map +7 -0
- package/dist/chunk-4EKKDVG3.js +1662 -0
- package/dist/chunk-4EKKDVG3.js.map +7 -0
- package/dist/chunk-4L2QI6AY.js +71 -0
- package/dist/chunk-4L2QI6AY.js.map +7 -0
- package/dist/chunk-4OXPPDV6.js +676 -0
- package/dist/chunk-4OXPPDV6.js.map +7 -0
- package/dist/chunk-4QTZHELX.js +51 -0
- package/dist/chunk-4QTZHELX.js.map +7 -0
- package/dist/chunk-4U42OJMK.js +217 -0
- package/dist/chunk-4U42OJMK.js.map +7 -0
- package/dist/chunk-4WCKVGQ5.js +193 -0
- package/dist/chunk-4WCKVGQ5.js.map +7 -0
- package/dist/chunk-4XXERLFH.js +95 -0
- package/dist/chunk-4XXERLFH.js.map +7 -0
- package/dist/chunk-4ZY2BOQ4.js +123 -0
- package/dist/chunk-4ZY2BOQ4.js.map +7 -0
- package/dist/chunk-57ROEOHB.js +183 -0
- package/dist/chunk-57ROEOHB.js.map +7 -0
- package/dist/chunk-5BQ6LLNU.js +39 -0
- package/dist/chunk-5BQ6LLNU.js.map +7 -0
- package/dist/chunk-63QTHDJL.js +52 -0
- package/dist/chunk-63QTHDJL.js.map +7 -0
- package/dist/chunk-65UUVZ6B.js +151 -0
- package/dist/chunk-65UUVZ6B.js.map +7 -0
- package/dist/chunk-6COVTMAO.js +3586 -0
- package/dist/chunk-6COVTMAO.js.map +7 -0
- package/dist/chunk-6EYPDJUD.js +34 -0
- package/dist/chunk-6EYPDJUD.js.map +7 -0
- package/dist/chunk-6HDYPVA4.js +15 -0
- package/dist/chunk-6HDYPVA4.js.map +7 -0
- package/dist/chunk-6OP3FK5F.js +266 -0
- package/dist/chunk-6OP3FK5F.js.map +7 -0
- package/dist/chunk-6RBDFNSX.js +88 -0
- package/dist/chunk-6RBDFNSX.js.map +7 -0
- package/dist/chunk-6TWWCETB.js +70 -0
- package/dist/chunk-6TWWCETB.js.map +7 -0
- package/dist/chunk-6WFHPMUF.js +17 -0
- package/dist/chunk-6WFHPMUF.js.map +7 -0
- package/dist/chunk-77BEEAPD.js +86 -0
- package/dist/chunk-77BEEAPD.js.map +7 -0
- package/dist/chunk-77JJ6QJK.js +50 -0
- package/dist/chunk-77JJ6QJK.js.map +7 -0
- package/dist/chunk-7BIUNV33.js +62 -0
- package/dist/chunk-7BIUNV33.js.map +7 -0
- package/dist/chunk-7L37R42D.js +52 -0
- package/dist/chunk-7L37R42D.js.map +7 -0
- package/dist/chunk-7ZP3KYVO.js +104 -0
- package/dist/chunk-7ZP3KYVO.js.map +7 -0
- package/dist/chunk-ARGF232V.js +32 -0
- package/dist/chunk-ARGF232V.js.map +7 -0
- package/dist/chunk-ATCJOK3K.js +24 -0
- package/dist/chunk-ATCJOK3K.js.map +7 -0
- package/dist/chunk-AUUABFHL.js +124 -0
- package/dist/chunk-AUUABFHL.js.map +7 -0
- package/dist/chunk-B3NTODO7.js +57 -0
- package/dist/chunk-B3NTODO7.js.map +7 -0
- package/dist/chunk-BM7J2W36.js +86 -0
- package/dist/chunk-BM7J2W36.js.map +7 -0
- package/dist/chunk-CEB5S2Z5.js +127 -0
- package/dist/chunk-CEB5S2Z5.js.map +7 -0
- package/dist/chunk-CEKNTCJD.js +177 -0
- package/dist/chunk-CEKNTCJD.js.map +7 -0
- package/dist/chunk-CGFDIH77.js +94 -0
- package/dist/chunk-CGFDIH77.js.map +7 -0
- package/dist/chunk-CPLEC5LJ.js +26 -0
- package/dist/chunk-CPLEC5LJ.js.map +7 -0
- package/dist/chunk-D4GYYYMW.js +155 -0
- package/dist/chunk-D4GYYYMW.js.map +7 -0
- package/dist/chunk-D64CZG54.js +78 -0
- package/dist/chunk-D64CZG54.js.map +7 -0
- package/dist/chunk-DSGPDHF2.js +737 -0
- package/dist/chunk-DSGPDHF2.js.map +7 -0
- package/dist/chunk-EBXHW7ZO.js +108 -0
- package/dist/chunk-EBXHW7ZO.js.map +7 -0
- package/dist/chunk-EO35SCFP.js +7 -0
- package/dist/chunk-EO35SCFP.js.map +7 -0
- package/dist/chunk-ER2XTD2S.js +271 -0
- package/dist/chunk-ER2XTD2S.js.map +7 -0
- package/dist/chunk-ERXO3674.js +54 -0
- package/dist/chunk-ERXO3674.js.map +7 -0
- package/dist/chunk-F43CC2X2.js +49 -0
- package/dist/chunk-F43CC2X2.js.map +7 -0
- package/dist/chunk-F64TXVJJ.js +158 -0
- package/dist/chunk-F64TXVJJ.js.map +7 -0
- package/dist/chunk-F6APWSAA.js +51 -0
- package/dist/chunk-F6APWSAA.js.map +7 -0
- package/dist/chunk-F7LNS7G3.js +235 -0
- package/dist/chunk-F7LNS7G3.js.map +7 -0
- package/dist/chunk-FCNWR7ZX.js +16352 -0
- package/dist/chunk-FCNWR7ZX.js.map +7 -0
- package/dist/chunk-FFCG5NRU.js +87 -0
- package/dist/chunk-FFCG5NRU.js.map +7 -0
- package/dist/chunk-FJFC6CRR.js +446 -0
- package/dist/chunk-FJFC6CRR.js.map +7 -0
- package/dist/chunk-FK6RGYBB.js +46 -0
- package/dist/chunk-FK6RGYBB.js.map +7 -0
- package/dist/chunk-FMY6KXK6.js +251 -0
- package/dist/chunk-FMY6KXK6.js.map +7 -0
- package/dist/chunk-FPH56SCM.js +21 -0
- package/dist/chunk-FPH56SCM.js.map +7 -0
- package/dist/chunk-FVSH4Z6T.js +173 -0
- package/dist/chunk-FVSH4Z6T.js.map +7 -0
- package/dist/chunk-FVWBLEAD.js +44 -0
- package/dist/chunk-FVWBLEAD.js.map +7 -0
- package/dist/chunk-FYSARMGS.js +93 -0
- package/dist/chunk-FYSARMGS.js.map +7 -0
- package/dist/chunk-FZJOJ6P4.js +28 -0
- package/dist/chunk-FZJOJ6P4.js.map +7 -0
- package/dist/chunk-G46GHNDU.js +4890 -0
- package/dist/chunk-G46GHNDU.js.map +7 -0
- package/dist/chunk-G4TIS2SC.js +56 -0
- package/dist/chunk-G4TIS2SC.js.map +7 -0
- package/dist/chunk-GGWS7NQP.js +247 -0
- package/dist/chunk-GGWS7NQP.js.map +7 -0
- package/dist/chunk-GRBJYAYF.js +129 -0
- package/dist/chunk-GRBJYAYF.js.map +7 -0
- package/dist/chunk-GXDQGBA2.js +106 -0
- package/dist/chunk-GXDQGBA2.js.map +7 -0
- package/dist/chunk-H2HY73I6.js +122 -0
- package/dist/chunk-H2HY73I6.js.map +7 -0
- package/dist/chunk-H5MLA6PA.js +29 -0
- package/dist/chunk-H5MLA6PA.js.map +7 -0
- package/dist/chunk-H7KAUMBC.js +635 -0
- package/dist/chunk-H7KAUMBC.js.map +7 -0
- package/dist/chunk-HGHU3TVL.js +174 -0
- package/dist/chunk-HGHU3TVL.js.map +7 -0
- package/dist/chunk-HJ5E2JRL.js +88 -0
- package/dist/chunk-HJ5E2JRL.js.map +7 -0
- package/dist/chunk-HJW3CKZL.js +94 -0
- package/dist/chunk-HJW3CKZL.js.map +7 -0
- package/dist/chunk-HKF5EBER.js +418 -0
- package/dist/chunk-HKF5EBER.js.map +7 -0
- package/dist/chunk-HLUR35G5.js +30 -0
- package/dist/chunk-HLUR35G5.js.map +7 -0
- package/dist/chunk-HNIW2NZU.js +120 -0
- package/dist/chunk-HNIW2NZU.js.map +7 -0
- package/dist/chunk-HSXRCP25.js +171 -0
- package/dist/chunk-HSXRCP25.js.map +7 -0
- package/dist/chunk-I26OPZLO.js +28 -0
- package/dist/chunk-I26OPZLO.js.map +7 -0
- package/dist/chunk-I7JJQ4BQ.js +30 -0
- package/dist/chunk-I7JJQ4BQ.js.map +7 -0
- package/dist/chunk-IJ6Y4W7F.js +392 -0
- package/dist/chunk-IJ6Y4W7F.js.map +7 -0
- package/dist/chunk-IJH4NOQ4.js +18 -0
- package/dist/chunk-IJH4NOQ4.js.map +7 -0
- package/dist/chunk-IMHRZQRH.js +76 -0
- package/dist/chunk-IMHRZQRH.js.map +7 -0
- package/dist/chunk-JB6ZQEVR.js +465 -0
- package/dist/chunk-JB6ZQEVR.js.map +7 -0
- package/dist/chunk-JCWNMWNY.js +102 -0
- package/dist/chunk-JCWNMWNY.js.map +7 -0
- package/dist/chunk-JGIZPU2Y.js +39 -0
- package/dist/chunk-JGIZPU2Y.js.map +7 -0
- package/dist/chunk-JIU4FXA7.js +485 -0
- package/dist/chunk-JIU4FXA7.js.map +7 -0
- package/dist/chunk-JU2Y33DB.js +60 -0
- package/dist/chunk-JU2Y33DB.js.map +7 -0
- package/dist/chunk-JVLRI4RU.js +62 -0
- package/dist/chunk-JVLRI4RU.js.map +7 -0
- package/dist/chunk-JZ3AVNZC.js +44117 -0
- package/dist/chunk-JZ3AVNZC.js.map +7 -0
- package/dist/chunk-K3HEWOHN.js +30 -0
- package/dist/chunk-K3HEWOHN.js.map +7 -0
- package/dist/chunk-K5EK4WZV.js +7 -0
- package/dist/chunk-K5EK4WZV.js.map +7 -0
- package/dist/chunk-KAWXMSYC.js +58 -0
- package/dist/chunk-KAWXMSYC.js.map +7 -0
- package/dist/chunk-KEGPHS4C.js +80 -0
- package/dist/chunk-KEGPHS4C.js.map +7 -0
- package/dist/chunk-KXXVR3DC.js +244 -0
- package/dist/chunk-KXXVR3DC.js.map +7 -0
- package/dist/chunk-L5T6XUDP.js +412 -0
- package/dist/chunk-L5T6XUDP.js.map +7 -0
- package/dist/chunk-LIFXTQ4U.js +7287 -0
- package/dist/chunk-LIFXTQ4U.js.map +7 -0
- package/dist/chunk-LMD5UTKM.js +169 -0
- package/dist/chunk-LMD5UTKM.js.map +7 -0
- package/dist/chunk-LTXNC6JX.js +27 -0
- package/dist/chunk-LTXNC6JX.js.map +7 -0
- package/dist/chunk-LUGTGPT6.js +138 -0
- package/dist/chunk-LUGTGPT6.js.map +7 -0
- package/dist/chunk-LZQFDJNW.js +300 -0
- package/dist/chunk-LZQFDJNW.js.map +7 -0
- package/dist/chunk-M4VQPIF4.js +5853 -0
- package/dist/chunk-M4VQPIF4.js.map +7 -0
- package/dist/chunk-M64QE4QC.js +64 -0
- package/dist/chunk-M64QE4QC.js.map +7 -0
- package/dist/chunk-MJ2GW6SU.js +163 -0
- package/dist/chunk-MJ2GW6SU.js.map +7 -0
- package/dist/chunk-MYSK3SIM.js +55 -0
- package/dist/chunk-MYSK3SIM.js.map +7 -0
- package/dist/chunk-N46MIZXB.js +154 -0
- package/dist/chunk-N46MIZXB.js.map +7 -0
- package/dist/chunk-N53537P6.js +31 -0
- package/dist/chunk-N53537P6.js.map +7 -0
- package/dist/chunk-N5CTFOLX.js +40 -0
- package/dist/chunk-N5CTFOLX.js.map +7 -0
- package/dist/chunk-NIFG55CE.js +52 -0
- package/dist/chunk-NIFG55CE.js.map +7 -0
- package/dist/chunk-NJ63ALPX.js +7 -0
- package/dist/chunk-NJ63ALPX.js.map +7 -0
- package/dist/chunk-NZVHE4IT.js +3101 -0
- package/dist/chunk-NZVHE4IT.js.map +7 -0
- package/dist/chunk-O7ORICEC.js +82 -0
- package/dist/chunk-O7ORICEC.js.map +7 -0
- package/dist/chunk-OBMBAM3N.js +73 -0
- package/dist/chunk-OBMBAM3N.js.map +7 -0
- package/dist/chunk-OJJBD5K3.js +45 -0
- package/dist/chunk-OJJBD5K3.js.map +7 -0
- package/dist/chunk-OKDOVX4B.js +699 -0
- package/dist/chunk-OKDOVX4B.js.map +7 -0
- package/dist/chunk-OVMDMCZ5.js +241 -0
- package/dist/chunk-OVMDMCZ5.js.map +7 -0
- package/dist/chunk-OVU43GJK.js +63 -0
- package/dist/chunk-OVU43GJK.js.map +7 -0
- package/dist/chunk-P3TMARA6.js +18 -0
- package/dist/chunk-P3TMARA6.js.map +7 -0
- package/dist/chunk-PLMOTQ42.js +335 -0
- package/dist/chunk-PLMOTQ42.js.map +7 -0
- package/dist/chunk-Q6H5OV2R.js +180 -0
- package/dist/chunk-Q6H5OV2R.js.map +7 -0
- package/dist/chunk-QAR5POXD.js +472 -0
- package/dist/chunk-QAR5POXD.js.map +7 -0
- package/dist/chunk-R5S76YR5.js +12 -0
- package/dist/chunk-R5S76YR5.js.map +7 -0
- package/dist/chunk-R7ZBOXPS.js +163 -0
- package/dist/chunk-R7ZBOXPS.js.map +7 -0
- package/dist/chunk-RAL3KX76.js +239 -0
- package/dist/chunk-RAL3KX76.js.map +7 -0
- package/dist/chunk-RHITG64O.js +50 -0
- package/dist/chunk-RHITG64O.js.map +7 -0
- package/dist/chunk-RK5HZFP6.js +111 -0
- package/dist/chunk-RK5HZFP6.js.map +7 -0
- package/dist/chunk-RQ26XXFS.js +45 -0
- package/dist/chunk-RQ26XXFS.js.map +7 -0
- package/dist/chunk-RSA7PKZH.js +187 -0
- package/dist/chunk-RSA7PKZH.js.map +7 -0
- package/dist/chunk-RTSINQ4T.js +78 -0
- package/dist/chunk-RTSINQ4T.js.map +7 -0
- package/dist/chunk-SH6Y4CGQ.js +175 -0
- package/dist/chunk-SH6Y4CGQ.js.map +7 -0
- package/dist/chunk-SHBAAFFH.js +74 -0
- package/dist/chunk-SHBAAFFH.js.map +7 -0
- package/dist/chunk-SPNSM6SB.js +36 -0
- package/dist/chunk-SPNSM6SB.js.map +7 -0
- package/dist/chunk-SQUHLLK5.js +125 -0
- package/dist/chunk-SQUHLLK5.js.map +7 -0
- package/dist/chunk-SWWK35VQ.js +84 -0
- package/dist/chunk-SWWK35VQ.js.map +7 -0
- package/dist/chunk-TC5ZVFV6.js +292 -0
- package/dist/chunk-TC5ZVFV6.js.map +7 -0
- package/dist/chunk-TFD7ZIYD.js +105 -0
- package/dist/chunk-TFD7ZIYD.js.map +7 -0
- package/dist/chunk-TH6ONRWT.js +516 -0
- package/dist/chunk-TH6ONRWT.js.map +7 -0
- package/dist/chunk-TMQMQ67T.js +81 -0
- package/dist/chunk-TMQMQ67T.js.map +7 -0
- package/dist/chunk-TPYWUZOR.js +178 -0
- package/dist/chunk-TPYWUZOR.js.map +7 -0
- package/dist/chunk-U2O4LE6S.js +22 -0
- package/dist/chunk-U2O4LE6S.js.map +7 -0
- package/dist/chunk-U44IVNP2.js +91 -0
- package/dist/chunk-U44IVNP2.js.map +7 -0
- package/dist/chunk-UDDWLWKZ.js +82 -0
- package/dist/chunk-UDDWLWKZ.js.map +7 -0
- package/dist/chunk-UMMPB6FL.js +506 -0
- package/dist/chunk-UMMPB6FL.js.map +7 -0
- package/dist/chunk-UP42ACP7.js +27 -0
- package/dist/chunk-UP42ACP7.js.map +7 -0
- package/dist/chunk-UPEF7ETP.js +92 -0
- package/dist/chunk-UPEF7ETP.js.map +7 -0
- package/dist/chunk-VBDLTKI2.js +130 -0
- package/dist/chunk-VBDLTKI2.js.map +7 -0
- package/dist/chunk-VCWIKEJ7.js +7 -0
- package/dist/chunk-VCWIKEJ7.js.map +7 -0
- package/dist/chunk-VPQICZQR.js +93 -0
- package/dist/chunk-VPQICZQR.js.map +7 -0
- package/dist/chunk-VRBJNFPL.js +114 -0
- package/dist/chunk-VRBJNFPL.js.map +7 -0
- package/dist/chunk-VUU5KFH3.js +38 -0
- package/dist/chunk-VUU5KFH3.js.map +7 -0
- package/dist/chunk-VVBL5CFF.js +7 -0
- package/dist/chunk-VVBL5CFF.js.map +7 -0
- package/dist/chunk-VYZEQ6KY.js +22 -0
- package/dist/chunk-VYZEQ6KY.js.map +7 -0
- package/dist/chunk-WBPQVWSU.js +198 -0
- package/dist/chunk-WBPQVWSU.js.map +7 -0
- package/dist/chunk-WS6HWBKT.js +30 -0
- package/dist/chunk-WS6HWBKT.js.map +7 -0
- package/dist/chunk-XOZPOHLG.js +233 -0
- package/dist/chunk-XOZPOHLG.js.map +7 -0
- package/dist/chunk-XR7DPSNX.js +195 -0
- package/dist/chunk-XR7DPSNX.js.map +7 -0
- package/dist/chunk-XYH4JC3U.js +7 -0
- package/dist/chunk-XYH4JC3U.js.map +7 -0
- package/dist/chunk-YB5UCHLN.js +314 -0
- package/dist/chunk-YB5UCHLN.js.map +7 -0
- package/dist/chunk-YF5DYD3X.js +97 -0
- package/dist/chunk-YF5DYD3X.js.map +7 -0
- package/dist/chunk-YGVQZCE7.js +30 -0
- package/dist/chunk-YGVQZCE7.js.map +7 -0
- package/dist/chunk-YNHADHHS.js +138 -0
- package/dist/chunk-YNHADHHS.js.map +7 -0
- package/dist/chunk-YOAMBAM2.js +70 -0
- package/dist/chunk-YOAMBAM2.js.map +7 -0
- package/dist/chunk-YWE5AQPZ.js +258 -0
- package/dist/chunk-YWE5AQPZ.js.map +7 -0
- package/dist/chunk-YWHH3MB6.js +1405 -0
- package/dist/chunk-YWHH3MB6.js.map +7 -0
- package/dist/chunk-YZ6F5N7R.js +455 -0
- package/dist/chunk-YZ6F5N7R.js.map +7 -0
- package/dist/chunk-ZFGRQIB6.js +38 -0
- package/dist/chunk-ZFGRQIB6.js.map +7 -0
- package/dist/chunk-ZGAUVPAB.js +14 -0
- package/dist/chunk-ZGAUVPAB.js.map +7 -0
- package/dist/chunk-ZGCATLM5.js +18 -0
- package/dist/chunk-ZGCATLM5.js.map +7 -0
- package/dist/chunk-ZSOPE7DO.js +92 -0
- package/dist/chunk-ZSOPE7DO.js.map +7 -0
- package/dist/chunk-ZY247PXY.js +135 -0
- package/dist/chunk-ZY247PXY.js.map +7 -0
- package/dist/cli-metadata.js +3 -3
- package/dist/contract-api.js +64 -64
- package/dist/dist-DVBXHDB4.js +549 -0
- package/dist/dist-DVBXHDB4.js.map +7 -0
- package/dist/helper-api.js +6 -6
- package/dist/index.js +8 -9
- package/dist/index.js.map +1 -1
- package/dist/magic-string.es-ITIPPYGW.js +1315 -0
- package/dist/magic-string.es-ITIPPYGW.js.map +7 -0
- package/dist/package.json +1 -1
- package/dist/plugin-entry.handlers.runtime-JLRK5XTV.js +20 -0
- package/dist/plugin-entry.handlers.runtime-JLRK5XTV.js.map +7 -0
- package/dist/runtime-api.js +9 -9
- package/dist/rust-crypto-7KS7OJ3F.js +5323 -0
- package/dist/rust-crypto-7KS7OJ3F.js.map +7 -0
- package/dist/secret-contract-api.js +3 -3
- package/dist/setup-entry.js +2 -3
- package/dist/setup-entry.js.map +1 -1
- package/dist/src/account-selection.js +5 -5
- package/dist/src/actions.js +18 -18
- package/dist/src/approval-auth.js +19 -19
- package/dist/src/approval-handler.runtime.js +55 -55
- package/dist/src/approval-ids.js +3 -3
- package/dist/src/approval-native.js +22 -22
- package/dist/src/approval-reactions.js +2 -2
- package/dist/src/auth-precedence.js +2 -2
- package/dist/src/channel-account-paths.js +3 -3
- package/dist/src/channel.js +68 -68
- package/dist/src/channel.runtime.js +51 -51
- package/dist/src/cli-metadata.js +2 -2
- package/dist/src/cli.js +63 -63
- package/dist/src/config-adapter.js +18 -18
- package/dist/src/config-schema.js +2 -2
- package/dist/src/directory-live.js +27 -27
- package/dist/src/doctor-contract.js +3 -3
- package/dist/src/doctor.js +24 -24
- package/dist/src/env-vars.js +2 -2
- package/dist/src/exec-approval-resolver.js +2 -2
- package/dist/src/exec-approvals.js +20 -20
- package/dist/src/group-mentions.js +20 -20
- package/dist/src/legacy-crypto-inspector-availability.js +2 -2
- package/dist/src/legacy-crypto.js +18 -18
- package/dist/src/legacy-state.js +16 -16
- package/dist/src/matrix/account-config.js +2 -2
- package/dist/src/matrix/accounts.js +16 -16
- package/dist/src/matrix/actions/client.js +30 -30
- package/dist/src/matrix/actions/devices.js +32 -32
- package/dist/src/matrix/actions/limits.js +2 -2
- package/dist/src/matrix/actions/messages.js +37 -37
- package/dist/src/matrix/actions/pins.js +36 -36
- package/dist/src/matrix/actions/polls.js +31 -31
- package/dist/src/matrix/actions/profile.js +32 -32
- package/dist/src/matrix/actions/reactions.js +32 -32
- package/dist/src/matrix/actions/room.js +32 -32
- package/dist/src/matrix/actions/summary.js +9 -9
- package/dist/src/matrix/actions/types.js +3 -3
- package/dist/src/matrix/actions/verification.js +37 -37
- package/dist/src/matrix/actions.js +51 -51
- package/dist/src/matrix/active-client.js +2 -2
- package/dist/src/matrix/async-lock.js +2 -2
- package/dist/src/matrix/backup-health.js +2 -2
- package/dist/src/matrix/client/config-runtime-api.js +3 -3
- package/dist/src/matrix/client/config-secret-input.runtime.js +1 -1
- package/dist/src/matrix/client/config.js +13 -13
- package/dist/src/matrix/client/create-client.js +14 -14
- package/dist/src/matrix/client/env-auth.js +14 -14
- package/dist/src/matrix/client/file-sync-store.js +17 -17
- package/dist/src/matrix/client/logging.js +5 -5
- package/dist/src/matrix/client/migration-snapshot.runtime.js +2 -2
- package/dist/src/matrix/client/private-network-host.js +2 -2
- package/dist/src/matrix/client/runtime.js +2 -2
- package/dist/src/matrix/client/shared.js +16 -16
- package/dist/src/matrix/client/storage.js +8 -8
- package/dist/src/matrix/client/types.js +1 -1
- package/dist/src/matrix/client-bootstrap.js +5 -5
- package/dist/src/matrix/client-resolver.test-helpers.js +2 -2
- package/dist/src/matrix/client.js +19 -19
- package/dist/src/matrix/config-paths.js +2 -2
- package/dist/src/matrix/config-update.js +4 -4
- package/dist/src/matrix/credentials-read.js +8 -8
- package/dist/src/matrix/credentials-write.runtime.js +1 -1
- package/dist/src/matrix/credentials.js +10 -10
- package/dist/src/matrix/deps.js +2 -2
- package/dist/src/matrix/device-health.js +2 -2
- package/dist/src/matrix/direct-management.js +6 -6
- package/dist/src/matrix/direct-room.js +2 -2
- package/dist/src/matrix/draft-stream.js +27 -27
- package/dist/src/matrix/encryption-guidance.js +7 -7
- package/dist/src/matrix/errors.js +2 -2
- package/dist/src/matrix/format.js +3 -3
- package/dist/src/matrix/legacy-crypto-inspector.js +3 -4
- package/dist/src/matrix/legacy-crypto-inspector.js.map +1 -1
- package/dist/src/matrix/media-errors.js +2 -2
- package/dist/src/matrix/media-text.js +2 -2
- package/dist/src/matrix/monitor/access-state.js +3 -3
- package/dist/src/matrix/monitor/ack-config.js +4 -4
- package/dist/src/matrix/monitor/allowlist.js +2 -2
- package/dist/src/matrix/monitor/auto-join.js +3 -3
- package/dist/src/matrix/monitor/config.js +31 -31
- package/dist/src/matrix/monitor/context-summary.js +5 -5
- package/dist/src/matrix/monitor/direct.js +7 -7
- package/dist/src/matrix/monitor/events.js +14 -14
- package/dist/src/matrix/monitor/handler.js +70 -70
- package/dist/src/matrix/monitor/handler.test-helpers.js +71 -71
- package/dist/src/matrix/monitor/inbound-dedupe.js +11 -11
- package/dist/src/matrix/monitor/index.js +100 -100
- package/dist/src/matrix/monitor/legacy-crypto-restore.js +8 -8
- package/dist/src/matrix/monitor/location.js +5 -5
- package/dist/src/matrix/monitor/media.js +4 -4
- package/dist/src/matrix/monitor/mentions.js +3 -3
- package/dist/src/matrix/monitor/reaction-events.js +30 -30
- package/dist/src/matrix/monitor/recent-invite.js +4 -4
- package/dist/src/matrix/monitor/replies.js +27 -27
- package/dist/src/matrix/monitor/reply-context.js +6 -6
- package/dist/src/matrix/monitor/room-history.js +2 -2
- package/dist/src/matrix/monitor/room-info.js +3 -3
- package/dist/src/matrix/monitor/rooms.js +3 -3
- package/dist/src/matrix/monitor/route.js +6 -6
- package/dist/src/matrix/monitor/runtime-api.js +2 -2
- package/dist/src/matrix/monitor/startup-verification.js +9 -9
- package/dist/src/matrix/monitor/startup.js +3 -3
- package/dist/src/matrix/monitor/status.js +4 -4
- package/dist/src/matrix/monitor/sync-lifecycle.js +3 -3
- package/dist/src/matrix/monitor/task-runner.js +2 -2
- package/dist/src/matrix/monitor/thread-context.js +6 -6
- package/dist/src/matrix/monitor/threads.js +4 -4
- package/dist/src/matrix/monitor/types.js +3 -3
- package/dist/src/matrix/monitor/verification-events.js +7 -7
- package/dist/src/matrix/monitor/verification-utils.js +2 -2
- package/dist/src/matrix/outbound-media-runtime.js +3 -3
- package/dist/src/matrix/poll-summary.js +4 -4
- package/dist/src/matrix/poll-types.js +3 -3
- package/dist/src/matrix/probe.js +3 -3
- package/dist/src/matrix/probe.runtime.js +19 -19
- package/dist/src/matrix/profile.js +2 -2
- package/dist/src/matrix/reaction-common.js +2 -2
- package/dist/src/matrix/sdk/crypto-bootstrap.js +9 -9
- package/dist/src/matrix/sdk/crypto-facade.js +2 -2
- package/dist/src/matrix/sdk/crypto-node.runtime.js +2 -3
- package/dist/src/matrix/sdk/crypto-node.runtime.js.map +1 -1
- package/dist/src/matrix/sdk/crypto-runtime.js +16 -16
- package/dist/src/matrix/sdk/decrypt-bridge.js +5 -5
- package/dist/src/matrix/sdk/event-helpers.js +2 -2
- package/dist/src/matrix/sdk/http-client.js +7 -7
- package/dist/src/matrix/sdk/idb-persistence-lock.js +2 -2
- package/dist/src/matrix/sdk/idb-persistence.js +5 -5
- package/dist/src/matrix/sdk/idb-persistence.test-helpers.js +1 -1
- package/dist/src/matrix/sdk/logger.js +3 -3
- package/dist/src/matrix/sdk/read-response-with-limit.js +2 -2
- package/dist/src/matrix/sdk/recovery-key-store.js +6 -6
- package/dist/src/matrix/sdk/transport.js +5 -5
- package/dist/src/matrix/sdk/types.js +1 -1
- package/dist/src/matrix/sdk/verification-manager.js +5 -5
- package/dist/src/matrix/sdk/verification-status.js +2 -2
- package/dist/src/matrix/sdk.js +31 -31
- package/dist/src/matrix/send/client.js +4 -4
- package/dist/src/matrix/send/formatting.js +7 -7
- package/dist/src/matrix/send/media.js +12 -12
- package/dist/src/matrix/send/targets.js +7 -7
- package/dist/src/matrix/send/types.js +3 -3
- package/dist/src/matrix/send.js +26 -26
- package/dist/src/matrix/session-store-metadata.js +3 -3
- package/dist/src/matrix/startup-abort.js +2 -2
- package/dist/src/matrix/sync-state.js +2 -2
- package/dist/src/matrix/target-ids.js +2 -2
- package/dist/src/matrix/thread-bindings-shared.js +2 -2
- package/dist/src/matrix/thread-bindings.js +34 -34
- package/dist/src/matrix-migration.runtime.js +22 -22
- package/dist/src/migration-config.js +15 -15
- package/dist/src/migration-snapshot-backup.js +2 -2
- package/dist/src/migration-snapshot.js +21 -21
- package/dist/src/onboarding.js +37 -37
- package/dist/src/onboarding.test-harness.js +2 -2
- package/dist/src/outbound.js +27 -27
- package/dist/src/plugin-entry.runtime.js +3 -3
- package/dist/src/profile-update.js +35 -35
- package/dist/src/record-shared.js +2 -2
- package/dist/src/resolve-targets.js +28 -28
- package/dist/src/resolver.js +2 -2
- package/dist/src/runtime-api.js +2 -2
- package/dist/src/runtime.js +2 -2
- package/dist/src/secret-contract.js +3 -3
- package/dist/src/session-route.js +19 -19
- package/dist/src/setup-bootstrap.js +46 -46
- package/dist/src/setup-config.js +18 -18
- package/dist/src/setup-contract.js +2 -2
- package/dist/src/setup-core.js +19 -19
- package/dist/src/setup-surface.js +38 -38
- package/dist/src/startup-maintenance.js +23 -23
- package/dist/src/storage-paths.js +2 -2
- package/dist/src/test-helpers.js +1 -1
- package/dist/src/test-mocks.js +2 -2
- package/dist/src/test-runtime.js +3 -3
- package/dist/src/tool-actions.js +62 -62
- package/dist/src/tool-actions.runtime.js +62 -62
- package/dist/src/types.js +1 -1
- package/dist/test-api.js +68 -68
- package/dist/thread-bindings-runtime.js +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FourCcToken,
|
|
3
|
+
tryParseApeHeader
|
|
4
|
+
} from "./chunk-2WHRUMOM.js";
|
|
5
|
+
import "./chunk-H7KAUMBC.js";
|
|
6
|
+
import {
|
|
7
|
+
uint8ArrayToHex
|
|
8
|
+
} from "./chunk-WBPQVWSU.js";
|
|
9
|
+
import {
|
|
10
|
+
BasicParser,
|
|
11
|
+
UINT16_LE,
|
|
12
|
+
UINT24_LE,
|
|
13
|
+
UINT32_LE,
|
|
14
|
+
UINT8,
|
|
15
|
+
Uint8ArrayType,
|
|
16
|
+
makeUnexpectedFileContentError,
|
|
17
|
+
require_src
|
|
18
|
+
} from "./chunk-4EKKDVG3.js";
|
|
19
|
+
import {
|
|
20
|
+
__toESM,
|
|
21
|
+
init_shims
|
|
22
|
+
} from "./chunk-G4TIS2SC.js";
|
|
23
|
+
|
|
24
|
+
// ../../node_modules/music-metadata/lib/wavpack/WavPackParser.js
|
|
25
|
+
init_shims();
|
|
26
|
+
|
|
27
|
+
// ../../node_modules/music-metadata/lib/wavpack/WavPackToken.js
|
|
28
|
+
init_shims();
|
|
29
|
+
var SampleRates = [
|
|
30
|
+
6e3,
|
|
31
|
+
8e3,
|
|
32
|
+
9600,
|
|
33
|
+
11025,
|
|
34
|
+
12e3,
|
|
35
|
+
16e3,
|
|
36
|
+
22050,
|
|
37
|
+
24e3,
|
|
38
|
+
32e3,
|
|
39
|
+
44100,
|
|
40
|
+
48e3,
|
|
41
|
+
64e3,
|
|
42
|
+
88200,
|
|
43
|
+
96e3,
|
|
44
|
+
192e3,
|
|
45
|
+
-1
|
|
46
|
+
];
|
|
47
|
+
var BlockHeaderToken = {
|
|
48
|
+
len: 32,
|
|
49
|
+
get: (buf, off) => {
|
|
50
|
+
const flags = UINT32_LE.get(buf, off + 24);
|
|
51
|
+
const res = {
|
|
52
|
+
// should equal 'wvpk'
|
|
53
|
+
BlockID: FourCcToken.get(buf, off),
|
|
54
|
+
// 0x402 to 0x410 are valid for decode
|
|
55
|
+
blockSize: UINT32_LE.get(buf, off + 4),
|
|
56
|
+
// 0x402 (1026) to 0x410 are valid for decode
|
|
57
|
+
version: UINT16_LE.get(buf, off + 8),
|
|
58
|
+
// 40-bit total samples for entire file (if block_index == 0 and a value of -1 indicates an unknown length)
|
|
59
|
+
totalSamples: (
|
|
60
|
+
/* replace with bigint? (Token.UINT8.get(buf, off + 11) << 32) + */
|
|
61
|
+
UINT32_LE.get(buf, off + 12)
|
|
62
|
+
),
|
|
63
|
+
// 40-bit block_index
|
|
64
|
+
blockIndex: (
|
|
65
|
+
/* replace with bigint? (Token.UINT8.get(buf, off + 10) << 32) + */
|
|
66
|
+
UINT32_LE.get(buf, off + 16)
|
|
67
|
+
),
|
|
68
|
+
// 40-bit total samples for entire file (if block_index == 0 and a value of -1 indicates an unknown length)
|
|
69
|
+
blockSamples: UINT32_LE.get(buf, off + 20),
|
|
70
|
+
// various flags for id and decoding
|
|
71
|
+
flags: {
|
|
72
|
+
bitsPerSample: (1 + getBitAllignedNumber(flags, 0, 2)) * 8,
|
|
73
|
+
isMono: isBitSet(flags, 2),
|
|
74
|
+
isHybrid: isBitSet(flags, 3),
|
|
75
|
+
isJointStereo: isBitSet(flags, 4),
|
|
76
|
+
crossChannel: isBitSet(flags, 5),
|
|
77
|
+
hybridNoiseShaping: isBitSet(flags, 6),
|
|
78
|
+
floatingPoint: isBitSet(flags, 7),
|
|
79
|
+
samplingRate: SampleRates[getBitAllignedNumber(flags, 23, 4)],
|
|
80
|
+
isDSD: isBitSet(flags, 31)
|
|
81
|
+
},
|
|
82
|
+
// crc for actual decoded data
|
|
83
|
+
crc: new Uint8ArrayType(4).get(buf, off + 28)
|
|
84
|
+
};
|
|
85
|
+
if (res.flags.isDSD) {
|
|
86
|
+
res.totalSamples *= 8;
|
|
87
|
+
}
|
|
88
|
+
return res;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
var MetadataIdToken = {
|
|
92
|
+
len: 1,
|
|
93
|
+
get: (buf, off) => {
|
|
94
|
+
return {
|
|
95
|
+
functionId: getBitAllignedNumber(buf[off], 0, 6),
|
|
96
|
+
// functionId overlaps with isOptional flag
|
|
97
|
+
isOptional: isBitSet(buf[off], 5),
|
|
98
|
+
isOddSize: isBitSet(buf[off], 6),
|
|
99
|
+
largeBlock: isBitSet(buf[off], 7)
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
function isBitSet(flags, bitOffset) {
|
|
104
|
+
return getBitAllignedNumber(flags, bitOffset, 1) === 1;
|
|
105
|
+
}
|
|
106
|
+
function getBitAllignedNumber(flags, bitOffset, len) {
|
|
107
|
+
return flags >>> bitOffset & 4294967295 >>> 32 - len;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// ../../node_modules/music-metadata/lib/wavpack/WavPackParser.js
|
|
111
|
+
var import_debug = __toESM(require_src(), 1);
|
|
112
|
+
var debug = (0, import_debug.default)("music-metadata:parser:WavPack");
|
|
113
|
+
var WavPackContentError = class extends makeUnexpectedFileContentError("WavPack") {
|
|
114
|
+
};
|
|
115
|
+
var WavPackParser = class extends BasicParser {
|
|
116
|
+
constructor() {
|
|
117
|
+
super(...arguments);
|
|
118
|
+
this.audioDataSize = 0;
|
|
119
|
+
}
|
|
120
|
+
async parse() {
|
|
121
|
+
this.metadata.setAudioOnly();
|
|
122
|
+
this.audioDataSize = 0;
|
|
123
|
+
await this.parseWavPackBlocks();
|
|
124
|
+
return tryParseApeHeader(this.metadata, this.tokenizer, this.options);
|
|
125
|
+
}
|
|
126
|
+
async parseWavPackBlocks() {
|
|
127
|
+
do {
|
|
128
|
+
const blockId = await this.tokenizer.peekToken(FourCcToken);
|
|
129
|
+
if (blockId !== "wvpk")
|
|
130
|
+
break;
|
|
131
|
+
const header = await this.tokenizer.readToken(BlockHeaderToken);
|
|
132
|
+
if (header.BlockID !== "wvpk")
|
|
133
|
+
throw new WavPackContentError("Invalid WavPack Block-ID");
|
|
134
|
+
debug(`WavPack header blockIndex=${header.blockIndex}, len=${BlockHeaderToken.len}`);
|
|
135
|
+
if (header.blockIndex === 0 && !this.metadata.format.container) {
|
|
136
|
+
this.metadata.setFormat("container", "WavPack");
|
|
137
|
+
this.metadata.setFormat("lossless", !header.flags.isHybrid);
|
|
138
|
+
this.metadata.setFormat("bitsPerSample", header.flags.bitsPerSample);
|
|
139
|
+
if (!header.flags.isDSD) {
|
|
140
|
+
this.metadata.setFormat("sampleRate", header.flags.samplingRate);
|
|
141
|
+
this.metadata.setFormat("duration", header.totalSamples / header.flags.samplingRate);
|
|
142
|
+
}
|
|
143
|
+
this.metadata.setFormat("numberOfChannels", header.flags.isMono ? 1 : 2);
|
|
144
|
+
this.metadata.setFormat("numberOfSamples", header.totalSamples);
|
|
145
|
+
this.metadata.setFormat("codec", header.flags.isDSD ? "DSD" : "PCM");
|
|
146
|
+
}
|
|
147
|
+
const ignoreBytes = header.blockSize - (BlockHeaderToken.len - 8);
|
|
148
|
+
await (header.blockIndex === 0 ? this.parseMetadataSubBlock(header, ignoreBytes) : this.tokenizer.ignore(ignoreBytes));
|
|
149
|
+
if (header.blockSamples > 0) {
|
|
150
|
+
this.audioDataSize += header.blockSize;
|
|
151
|
+
}
|
|
152
|
+
} while (!this.tokenizer.fileInfo.size || this.tokenizer.fileInfo.size - this.tokenizer.position >= BlockHeaderToken.len);
|
|
153
|
+
if (this.metadata.format.duration) {
|
|
154
|
+
this.metadata.setFormat("bitrate", this.audioDataSize * 8 / this.metadata.format.duration);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Ref: http://www.wavpack.com/WavPack5FileFormat.pdf, 3.0 Metadata Sub-blocks
|
|
159
|
+
* @param header Header
|
|
160
|
+
* @param remainingLength Remaining length
|
|
161
|
+
*/
|
|
162
|
+
async parseMetadataSubBlock(header, remainingLength) {
|
|
163
|
+
let remaining = remainingLength;
|
|
164
|
+
while (remaining > MetadataIdToken.len) {
|
|
165
|
+
const id = await this.tokenizer.readToken(MetadataIdToken);
|
|
166
|
+
const dataSizeInWords = await this.tokenizer.readNumber(id.largeBlock ? UINT24_LE : UINT8);
|
|
167
|
+
const data = new Uint8Array(dataSizeInWords * 2 - (id.isOddSize ? 1 : 0));
|
|
168
|
+
await this.tokenizer.readBuffer(data);
|
|
169
|
+
debug(`Metadata Sub-Blocks functionId=0x${id.functionId.toString(16)}, id.largeBlock=${id.largeBlock},data-size=${data.length}`);
|
|
170
|
+
switch (id.functionId) {
|
|
171
|
+
case 0:
|
|
172
|
+
break;
|
|
173
|
+
case 14: {
|
|
174
|
+
debug("ID_DSD_BLOCK");
|
|
175
|
+
const mp = 1 << UINT8.get(data, 0);
|
|
176
|
+
const samplingRate = header.flags.samplingRate * mp * 8;
|
|
177
|
+
if (!header.flags.isDSD)
|
|
178
|
+
throw new WavPackContentError("Only expect DSD block if DSD-flag is set");
|
|
179
|
+
this.metadata.setFormat("sampleRate", samplingRate);
|
|
180
|
+
this.metadata.setFormat("duration", header.totalSamples / samplingRate);
|
|
181
|
+
break;
|
|
182
|
+
}
|
|
183
|
+
case 36:
|
|
184
|
+
debug("ID_ALT_TRAILER: trailer for non-wav files");
|
|
185
|
+
break;
|
|
186
|
+
case 38:
|
|
187
|
+
this.metadata.setFormat("audioMD5", data);
|
|
188
|
+
break;
|
|
189
|
+
case 47:
|
|
190
|
+
debug(`ID_BLOCK_CHECKSUM: checksum=${uint8ArrayToHex(data)}`);
|
|
191
|
+
break;
|
|
192
|
+
default:
|
|
193
|
+
debug(`Ignore unsupported meta-sub-block-id functionId=0x${id.functionId.toString(16)}`);
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
remaining -= MetadataIdToken.len + (id.largeBlock ? UINT24_LE.len : UINT8.len) + dataSizeInWords * 2;
|
|
197
|
+
debug(`remainingLength=${remaining}`);
|
|
198
|
+
if (id.isOddSize)
|
|
199
|
+
this.tokenizer.ignore(1);
|
|
200
|
+
}
|
|
201
|
+
if (remaining !== 0)
|
|
202
|
+
throw new WavPackContentError("metadata-sub-block should fit it remaining length");
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
export {
|
|
206
|
+
WavPackContentError,
|
|
207
|
+
WavPackParser
|
|
208
|
+
};
|
|
209
|
+
//# sourceMappingURL=WavPackParser-RTEHKSJH.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../node_modules/music-metadata/lib/wavpack/WavPackParser.js", "../../../node_modules/music-metadata/lib/wavpack/WavPackToken.js"],
|
|
4
|
+
"sourcesContent": ["import * as Token from 'token-types';\nimport { tryParseApeHeader } from '../apev2/APEv2Parser.js';\nimport { FourCcToken } from '../common/FourCC.js';\nimport { BasicParser } from '../common/BasicParser.js';\nimport { BlockHeaderToken, MetadataIdToken } from './WavPackToken.js';\nimport initDebug from 'debug';\nimport { uint8ArrayToHex } from 'uint8array-extras';\nimport { makeUnexpectedFileContentError } from '../ParseError.js';\nconst debug = initDebug('music-metadata:parser:WavPack');\nexport class WavPackContentError extends makeUnexpectedFileContentError('WavPack') {\n}\n/**\n * WavPack Parser\n */\nexport class WavPackParser extends BasicParser {\n constructor() {\n super(...arguments);\n this.audioDataSize = 0;\n }\n async parse() {\n this.metadata.setAudioOnly();\n this.audioDataSize = 0;\n // First parse all WavPack blocks\n await this.parseWavPackBlocks();\n // try to parse APEv2 header\n return tryParseApeHeader(this.metadata, this.tokenizer, this.options);\n }\n async parseWavPackBlocks() {\n do {\n const blockId = await this.tokenizer.peekToken(FourCcToken);\n if (blockId !== 'wvpk')\n break;\n const header = await this.tokenizer.readToken(BlockHeaderToken);\n if (header.BlockID !== 'wvpk')\n throw new WavPackContentError('Invalid WavPack Block-ID');\n debug(`WavPack header blockIndex=${header.blockIndex}, len=${BlockHeaderToken.len}`);\n if (header.blockIndex === 0 && !this.metadata.format.container) {\n this.metadata.setFormat('container', 'WavPack');\n this.metadata.setFormat('lossless', !header.flags.isHybrid);\n // tagTypes: this.type,\n this.metadata.setFormat('bitsPerSample', header.flags.bitsPerSample);\n if (!header.flags.isDSD) {\n // In case isDSD, these values will ne set in ID_DSD_BLOCK\n this.metadata.setFormat('sampleRate', header.flags.samplingRate);\n this.metadata.setFormat('duration', header.totalSamples / header.flags.samplingRate);\n }\n this.metadata.setFormat('numberOfChannels', header.flags.isMono ? 1 : 2);\n this.metadata.setFormat('numberOfSamples', header.totalSamples);\n this.metadata.setFormat('codec', header.flags.isDSD ? 'DSD' : 'PCM');\n }\n const ignoreBytes = header.blockSize - (BlockHeaderToken.len - 8);\n await (header.blockIndex === 0 ? this.parseMetadataSubBlock(header, ignoreBytes) : this.tokenizer.ignore(ignoreBytes));\n if (header.blockSamples > 0) {\n this.audioDataSize += header.blockSize; // Count audio data for bit-rate calculation\n }\n } while (!this.tokenizer.fileInfo.size || this.tokenizer.fileInfo.size - this.tokenizer.position >= BlockHeaderToken.len);\n if (this.metadata.format.duration) {\n this.metadata.setFormat('bitrate', this.audioDataSize * 8 / this.metadata.format.duration);\n }\n }\n /**\n * Ref: http://www.wavpack.com/WavPack5FileFormat.pdf, 3.0 Metadata Sub-blocks\n * @param header Header\n * @param remainingLength Remaining length\n */\n async parseMetadataSubBlock(header, remainingLength) {\n let remaining = remainingLength;\n while (remaining > MetadataIdToken.len) {\n const id = await this.tokenizer.readToken(MetadataIdToken);\n const dataSizeInWords = await this.tokenizer.readNumber(id.largeBlock ? Token.UINT24_LE : Token.UINT8);\n const data = new Uint8Array(dataSizeInWords * 2 - (id.isOddSize ? 1 : 0));\n await this.tokenizer.readBuffer(data);\n debug(`Metadata Sub-Blocks functionId=0x${id.functionId.toString(16)}, id.largeBlock=${id.largeBlock},data-size=${data.length}`);\n switch (id.functionId) {\n case 0x0: // ID_DUMMY: could be used to pad WavPack blocks\n break;\n case 0xe: { // ID_DSD_BLOCK\n debug('ID_DSD_BLOCK');\n // https://github.com/dbry/WavPack/issues/71#issuecomment-483094813\n const mp = 1 << Token.UINT8.get(data, 0);\n const samplingRate = header.flags.samplingRate * mp * 8; // ToDo: second factor should be read from DSD-metadata block https://github.com/dbry/WavPack/issues/71#issuecomment-483094813\n if (!header.flags.isDSD)\n throw new WavPackContentError('Only expect DSD block if DSD-flag is set');\n this.metadata.setFormat('sampleRate', samplingRate);\n this.metadata.setFormat('duration', header.totalSamples / samplingRate);\n break;\n }\n case 0x24: // ID_ALT_TRAILER: maybe used to embed original ID3 tag header\n debug('ID_ALT_TRAILER: trailer for non-wav files');\n break;\n case 0x26: // ID_MD5_CHECKSUM\n this.metadata.setFormat('audioMD5', data);\n break;\n case 0x2f: // ID_BLOCK_CHECKSUM\n debug(`ID_BLOCK_CHECKSUM: checksum=${uint8ArrayToHex(data)}`);\n break;\n default:\n debug(`Ignore unsupported meta-sub-block-id functionId=0x${id.functionId.toString(16)}`);\n break;\n }\n remaining -= MetadataIdToken.len + (id.largeBlock ? Token.UINT24_LE.len : Token.UINT8.len) + dataSizeInWords * 2;\n debug(`remainingLength=${remaining}`);\n if (id.isOddSize)\n this.tokenizer.ignore(1);\n }\n if (remaining !== 0)\n throw new WavPackContentError('metadata-sub-block should fit it remaining length');\n }\n}\n", "import * as Token from 'token-types';\nimport { FourCcToken } from '../common/FourCC.js';\nconst SampleRates = [6000, 8000, 9600, 11025, 12000, 16000, 22050, 24000, 32000, 44100,\n 48000, 64000, 88200, 96000, 192000, -1];\n/**\n * WavPack Block Header\n *\n * 32-byte little-endian header at the front of every WavPack block\n *\n * Ref: http://www.wavpack.com/WavPack5FileFormat.pdf (page 2/6: 2.0 \"Block Header\")\n */\nexport const BlockHeaderToken = {\n len: 32,\n get: (buf, off) => {\n const flags = Token.UINT32_LE.get(buf, off + 24);\n const res = {\n // should equal 'wvpk'\n BlockID: FourCcToken.get(buf, off),\n // 0x402 to 0x410 are valid for decode\n blockSize: Token.UINT32_LE.get(buf, off + 4),\n // 0x402 (1026) to 0x410 are valid for decode\n version: Token.UINT16_LE.get(buf, off + 8),\n // 40-bit total samples for entire file (if block_index == 0 and a value of -1 indicates an unknown length)\n totalSamples: /* replace with bigint? (Token.UINT8.get(buf, off + 11) << 32) + */ Token.UINT32_LE.get(buf, off + 12),\n // 40-bit block_index\n blockIndex: /* replace with bigint? (Token.UINT8.get(buf, off + 10) << 32) + */ Token.UINT32_LE.get(buf, off + 16),\n // 40-bit total samples for entire file (if block_index == 0 and a value of -1 indicates an unknown length)\n blockSamples: Token.UINT32_LE.get(buf, off + 20),\n // various flags for id and decoding\n flags: {\n bitsPerSample: (1 + getBitAllignedNumber(flags, 0, 2)) * 8,\n isMono: isBitSet(flags, 2),\n isHybrid: isBitSet(flags, 3),\n isJointStereo: isBitSet(flags, 4),\n crossChannel: isBitSet(flags, 5),\n hybridNoiseShaping: isBitSet(flags, 6),\n floatingPoint: isBitSet(flags, 7),\n samplingRate: SampleRates[getBitAllignedNumber(flags, 23, 4)],\n isDSD: isBitSet(flags, 31)\n },\n // crc for actual decoded data\n crc: new Token.Uint8ArrayType(4).get(buf, off + 28)\n };\n if (res.flags.isDSD) {\n res.totalSamples *= 8;\n }\n return res;\n }\n};\n/**\n * 3.0 Metadata Sub-Blocks\n * Ref: http://www.wavpack.com/WavPack5FileFormat.pdf (page 4/6: 3.0 \"Metadata Sub-Block\")\n */\nexport const MetadataIdToken = {\n len: 1,\n get: (buf, off) => {\n return {\n functionId: getBitAllignedNumber(buf[off], 0, 6), // functionId overlaps with isOptional flag\n isOptional: isBitSet(buf[off], 5),\n isOddSize: isBitSet(buf[off], 6),\n largeBlock: isBitSet(buf[off], 7)\n };\n }\n};\nfunction isBitSet(flags, bitOffset) {\n return getBitAllignedNumber(flags, bitOffset, 1) === 1;\n}\nfunction getBitAllignedNumber(flags, bitOffset, len) {\n return (flags >>> bitOffset) & (0xffffffff >>> (32 - len));\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["initDebug"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ID3v2Parser
|
|
3
|
+
} from "./chunk-DSGPDHF2.js";
|
|
4
|
+
import "./chunk-YB5UCHLN.js";
|
|
5
|
+
import {
|
|
6
|
+
FourCcToken
|
|
7
|
+
} from "./chunk-2WHRUMOM.js";
|
|
8
|
+
import {
|
|
9
|
+
EndOfStreamError,
|
|
10
|
+
fromBuffer
|
|
11
|
+
} from "./chunk-H7KAUMBC.js";
|
|
12
|
+
import "./chunk-65UUVZ6B.js";
|
|
13
|
+
import {
|
|
14
|
+
stripNulls
|
|
15
|
+
} from "./chunk-WBPQVWSU.js";
|
|
16
|
+
import {
|
|
17
|
+
BasicParser,
|
|
18
|
+
StringType,
|
|
19
|
+
UINT16_LE,
|
|
20
|
+
UINT32_LE,
|
|
21
|
+
Uint8ArrayType,
|
|
22
|
+
makeUnexpectedFileContentError,
|
|
23
|
+
require_src
|
|
24
|
+
} from "./chunk-4EKKDVG3.js";
|
|
25
|
+
import {
|
|
26
|
+
__toESM,
|
|
27
|
+
init_shims
|
|
28
|
+
} from "./chunk-G4TIS2SC.js";
|
|
29
|
+
|
|
30
|
+
// ../../node_modules/music-metadata/lib/wav/WaveParser.js
|
|
31
|
+
init_shims();
|
|
32
|
+
var import_debug = __toESM(require_src(), 1);
|
|
33
|
+
|
|
34
|
+
// ../../node_modules/music-metadata/lib/riff/RiffChunk.js
|
|
35
|
+
init_shims();
|
|
36
|
+
var Header = {
|
|
37
|
+
len: 8,
|
|
38
|
+
get: (buf, off) => {
|
|
39
|
+
return {
|
|
40
|
+
// Group-ID
|
|
41
|
+
chunkID: new StringType(4, "latin1").get(buf, off),
|
|
42
|
+
// Size
|
|
43
|
+
chunkSize: UINT32_LE.get(buf, off + 4)
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
var ListInfoTagValue = class {
|
|
48
|
+
constructor(tagHeader) {
|
|
49
|
+
this.tagHeader = tagHeader;
|
|
50
|
+
this.len = tagHeader.chunkSize;
|
|
51
|
+
this.len += this.len & 1;
|
|
52
|
+
}
|
|
53
|
+
get(buf, off) {
|
|
54
|
+
return new StringType(this.tagHeader.chunkSize, "ascii").get(buf, off);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
// ../../node_modules/music-metadata/lib/wav/WaveChunk.js
|
|
59
|
+
init_shims();
|
|
60
|
+
var WaveContentError = class extends makeUnexpectedFileContentError("Wave") {
|
|
61
|
+
};
|
|
62
|
+
var WaveFormat = {
|
|
63
|
+
PCM: 1,
|
|
64
|
+
// MPEG-4 and AAC Audio Types
|
|
65
|
+
ADPCM: 2,
|
|
66
|
+
IEEE_FLOAT: 3,
|
|
67
|
+
MPEG_ADTS_AAC: 5632,
|
|
68
|
+
MPEG_LOAS: 5634,
|
|
69
|
+
RAW_AAC1: 255,
|
|
70
|
+
// Dolby Audio Types
|
|
71
|
+
DOLBY_AC3_SPDIF: 146,
|
|
72
|
+
DVM: 8192,
|
|
73
|
+
RAW_SPORT: 576,
|
|
74
|
+
ESST_AC3: 577,
|
|
75
|
+
DRM: 9,
|
|
76
|
+
DTS2: 8193,
|
|
77
|
+
MPEG: 80
|
|
78
|
+
};
|
|
79
|
+
var WaveFormatNameMap = {
|
|
80
|
+
[WaveFormat.PCM]: "PCM",
|
|
81
|
+
[WaveFormat.ADPCM]: "ADPCM",
|
|
82
|
+
[WaveFormat.IEEE_FLOAT]: "IEEE_FLOAT",
|
|
83
|
+
[WaveFormat.MPEG_ADTS_AAC]: "MPEG_ADTS_AAC",
|
|
84
|
+
[WaveFormat.MPEG_LOAS]: "MPEG_LOAS",
|
|
85
|
+
[WaveFormat.RAW_AAC1]: "RAW_AAC1",
|
|
86
|
+
[WaveFormat.DOLBY_AC3_SPDIF]: "DOLBY_AC3_SPDIF",
|
|
87
|
+
[WaveFormat.DVM]: "DVM",
|
|
88
|
+
[WaveFormat.RAW_SPORT]: "RAW_SPORT",
|
|
89
|
+
[WaveFormat.ESST_AC3]: "ESST_AC3",
|
|
90
|
+
[WaveFormat.DRM]: "DRM",
|
|
91
|
+
[WaveFormat.DTS2]: "DTS2",
|
|
92
|
+
[WaveFormat.MPEG]: "MPEG"
|
|
93
|
+
};
|
|
94
|
+
var Format = class {
|
|
95
|
+
constructor(header) {
|
|
96
|
+
if (header.chunkSize < 16)
|
|
97
|
+
throw new WaveContentError("Invalid chunk size");
|
|
98
|
+
this.len = header.chunkSize;
|
|
99
|
+
}
|
|
100
|
+
get(buf, off) {
|
|
101
|
+
return {
|
|
102
|
+
wFormatTag: UINT16_LE.get(buf, off),
|
|
103
|
+
nChannels: UINT16_LE.get(buf, off + 2),
|
|
104
|
+
nSamplesPerSec: UINT32_LE.get(buf, off + 4),
|
|
105
|
+
nAvgBytesPerSec: UINT32_LE.get(buf, off + 8),
|
|
106
|
+
nBlockAlign: UINT16_LE.get(buf, off + 12),
|
|
107
|
+
wBitsPerSample: UINT16_LE.get(buf, off + 14)
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
var FactChunk = class {
|
|
112
|
+
constructor(header) {
|
|
113
|
+
if (header.chunkSize < 4) {
|
|
114
|
+
throw new WaveContentError("Invalid fact chunk size.");
|
|
115
|
+
}
|
|
116
|
+
this.len = header.chunkSize;
|
|
117
|
+
}
|
|
118
|
+
get(buf, off) {
|
|
119
|
+
return {
|
|
120
|
+
dwSampleLength: UINT32_LE.get(buf, off)
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// ../../node_modules/music-metadata/lib/wav/BwfChunk.js
|
|
126
|
+
init_shims();
|
|
127
|
+
var BroadcastAudioExtensionChunk = {
|
|
128
|
+
len: 420,
|
|
129
|
+
get: (uint8array, off) => {
|
|
130
|
+
return {
|
|
131
|
+
description: stripNulls(new StringType(256, "ascii").get(uint8array, off)).trim(),
|
|
132
|
+
originator: stripNulls(new StringType(32, "ascii").get(uint8array, off + 256)).trim(),
|
|
133
|
+
originatorReference: stripNulls(new StringType(32, "ascii").get(uint8array, off + 288)).trim(),
|
|
134
|
+
originationDate: stripNulls(new StringType(10, "ascii").get(uint8array, off + 320)).trim(),
|
|
135
|
+
originationTime: stripNulls(new StringType(8, "ascii").get(uint8array, off + 330)).trim(),
|
|
136
|
+
timeReferenceLow: UINT32_LE.get(uint8array, off + 338),
|
|
137
|
+
timeReferenceHigh: UINT32_LE.get(uint8array, off + 342),
|
|
138
|
+
version: UINT16_LE.get(uint8array, off + 346),
|
|
139
|
+
umid: new Uint8ArrayType(64).get(uint8array, off + 348),
|
|
140
|
+
loudnessValue: UINT16_LE.get(uint8array, off + 412),
|
|
141
|
+
maxTruePeakLevel: UINT16_LE.get(uint8array, off + 414),
|
|
142
|
+
maxMomentaryLoudness: UINT16_LE.get(uint8array, off + 416),
|
|
143
|
+
maxShortTermLoudness: UINT16_LE.get(uint8array, off + 418)
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
// ../../node_modules/music-metadata/lib/wav/WaveParser.js
|
|
149
|
+
var debug = (0, import_debug.default)("music-metadata:parser:RIFF");
|
|
150
|
+
var WaveParser = class extends BasicParser {
|
|
151
|
+
constructor() {
|
|
152
|
+
super(...arguments);
|
|
153
|
+
this.blockAlign = 0;
|
|
154
|
+
}
|
|
155
|
+
async parse() {
|
|
156
|
+
const riffHeader = await this.tokenizer.readToken(Header);
|
|
157
|
+
debug(`pos=${this.tokenizer.position}, parse: chunkID=${riffHeader.chunkID}`);
|
|
158
|
+
if (riffHeader.chunkID !== "RIFF")
|
|
159
|
+
return;
|
|
160
|
+
this.metadata.setAudioOnly();
|
|
161
|
+
return this.parseRiffChunk(riffHeader.chunkSize).catch((err) => {
|
|
162
|
+
if (!(err instanceof EndOfStreamError)) {
|
|
163
|
+
throw err;
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
async parseRiffChunk(chunkSize) {
|
|
168
|
+
const type = await this.tokenizer.readToken(FourCcToken);
|
|
169
|
+
this.metadata.setFormat("container", type);
|
|
170
|
+
switch (type) {
|
|
171
|
+
case "WAVE":
|
|
172
|
+
return this.readWaveChunk(chunkSize - FourCcToken.len);
|
|
173
|
+
default:
|
|
174
|
+
throw new WaveContentError(`Unsupported RIFF format: RIFF/${type}`);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
async readWaveChunk(remaining) {
|
|
178
|
+
while (remaining >= Header.len) {
|
|
179
|
+
const header = await this.tokenizer.readToken(Header);
|
|
180
|
+
remaining -= Header.len + header.chunkSize;
|
|
181
|
+
if (header.chunkSize > remaining) {
|
|
182
|
+
this.metadata.addWarning("Data chunk size exceeds file size");
|
|
183
|
+
}
|
|
184
|
+
this.header = header;
|
|
185
|
+
debug(`pos=${this.tokenizer.position}, readChunk: chunkID=RIFF/WAVE/${header.chunkID}`);
|
|
186
|
+
switch (header.chunkID) {
|
|
187
|
+
case "LIST":
|
|
188
|
+
await this.parseListTag(header);
|
|
189
|
+
break;
|
|
190
|
+
case "fact":
|
|
191
|
+
this.metadata.setFormat("lossless", false);
|
|
192
|
+
this.fact = await this.tokenizer.readToken(new FactChunk(header));
|
|
193
|
+
break;
|
|
194
|
+
case "fmt ": {
|
|
195
|
+
const fmt = await this.tokenizer.readToken(new Format(header));
|
|
196
|
+
let subFormat = WaveFormatNameMap[fmt.wFormatTag];
|
|
197
|
+
if (!subFormat) {
|
|
198
|
+
debug(`WAVE/non-PCM format=${fmt.wFormatTag}`);
|
|
199
|
+
subFormat = `non-PCM (${fmt.wFormatTag})`;
|
|
200
|
+
}
|
|
201
|
+
this.metadata.setFormat("codec", subFormat);
|
|
202
|
+
this.metadata.setFormat("bitsPerSample", fmt.wBitsPerSample);
|
|
203
|
+
this.metadata.setFormat("sampleRate", fmt.nSamplesPerSec);
|
|
204
|
+
this.metadata.setFormat("numberOfChannels", fmt.nChannels);
|
|
205
|
+
this.metadata.setFormat("bitrate", fmt.nBlockAlign * fmt.nSamplesPerSec * 8);
|
|
206
|
+
this.blockAlign = fmt.nBlockAlign;
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
case "id3 ":
|
|
210
|
+
// The way Picard, FooBar currently stores, ID3 meta-data
|
|
211
|
+
case "ID3 ": {
|
|
212
|
+
const id3_data = await this.tokenizer.readToken(new Uint8ArrayType(header.chunkSize));
|
|
213
|
+
const rst = fromBuffer(id3_data);
|
|
214
|
+
await new ID3v2Parser().parse(this.metadata, rst, this.options);
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
case "data": {
|
|
218
|
+
if (this.metadata.format.lossless !== false) {
|
|
219
|
+
this.metadata.setFormat("lossless", true);
|
|
220
|
+
}
|
|
221
|
+
let chunkSize = header.chunkSize;
|
|
222
|
+
if (this.tokenizer.fileInfo.size) {
|
|
223
|
+
const calcRemaining = this.tokenizer.fileInfo.size - this.tokenizer.position;
|
|
224
|
+
if (calcRemaining < chunkSize) {
|
|
225
|
+
this.metadata.addWarning("data chunk length exceeding file length");
|
|
226
|
+
chunkSize = calcRemaining;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
const numberOfSamples = this.fact ? this.fact.dwSampleLength : chunkSize === 4294967295 ? void 0 : chunkSize / this.blockAlign;
|
|
230
|
+
if (numberOfSamples) {
|
|
231
|
+
this.metadata.setFormat("numberOfSamples", numberOfSamples);
|
|
232
|
+
if (this.metadata.format.sampleRate) {
|
|
233
|
+
this.metadata.setFormat("duration", numberOfSamples / this.metadata.format.sampleRate);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
if (this.metadata.format.codec === "ADPCM") {
|
|
237
|
+
this.metadata.setFormat("bitrate", 352e3);
|
|
238
|
+
} else if (this.metadata.format.sampleRate) {
|
|
239
|
+
this.metadata.setFormat("bitrate", this.blockAlign * this.metadata.format.sampleRate * 8);
|
|
240
|
+
}
|
|
241
|
+
await this.tokenizer.ignore(header.chunkSize);
|
|
242
|
+
break;
|
|
243
|
+
}
|
|
244
|
+
case "bext": {
|
|
245
|
+
const bext = await this.tokenizer.readToken(BroadcastAudioExtensionChunk);
|
|
246
|
+
Object.keys(bext).forEach((key) => {
|
|
247
|
+
this.metadata.addTag("exif", `bext.${key}`, bext[key]);
|
|
248
|
+
});
|
|
249
|
+
const bextRemaining = header.chunkSize - BroadcastAudioExtensionChunk.len;
|
|
250
|
+
await this.tokenizer.ignore(bextRemaining);
|
|
251
|
+
break;
|
|
252
|
+
}
|
|
253
|
+
case "\0\0\0\0":
|
|
254
|
+
debug(`Ignore padding chunk: RIFF/${header.chunkID} of ${header.chunkSize} bytes`);
|
|
255
|
+
this.metadata.addWarning(`Ignore chunk: RIFF/${header.chunkID}`);
|
|
256
|
+
await this.tokenizer.ignore(header.chunkSize);
|
|
257
|
+
break;
|
|
258
|
+
default:
|
|
259
|
+
debug(`Ignore chunk: RIFF/${header.chunkID} of ${header.chunkSize} bytes`);
|
|
260
|
+
this.metadata.addWarning(`Ignore chunk: RIFF/${header.chunkID}`);
|
|
261
|
+
await this.tokenizer.ignore(header.chunkSize);
|
|
262
|
+
}
|
|
263
|
+
if (this.header.chunkSize % 2 === 1) {
|
|
264
|
+
debug("Read odd padding byte");
|
|
265
|
+
await this.tokenizer.ignore(1);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
async parseListTag(listHeader) {
|
|
270
|
+
const listType = await this.tokenizer.readToken(new StringType(4, "latin1"));
|
|
271
|
+
debug("pos=%s, parseListTag: chunkID=RIFF/WAVE/LIST/%s", this.tokenizer.position, listType);
|
|
272
|
+
switch (listType) {
|
|
273
|
+
case "INFO":
|
|
274
|
+
return this.parseRiffInfoTags(listHeader.chunkSize - 4);
|
|
275
|
+
default:
|
|
276
|
+
this.metadata.addWarning(`Ignore chunk: RIFF/WAVE/LIST/${listType}`);
|
|
277
|
+
debug(`Ignoring chunkID=RIFF/WAVE/LIST/${listType}`);
|
|
278
|
+
return this.tokenizer.ignore(listHeader.chunkSize - 4).then();
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
async parseRiffInfoTags(chunkSize) {
|
|
282
|
+
while (chunkSize >= 8) {
|
|
283
|
+
const header = await this.tokenizer.readToken(Header);
|
|
284
|
+
const valueToken = new ListInfoTagValue(header);
|
|
285
|
+
const value = await this.tokenizer.readToken(valueToken);
|
|
286
|
+
this.addTag(header.chunkID, stripNulls(value));
|
|
287
|
+
chunkSize -= 8 + valueToken.len;
|
|
288
|
+
}
|
|
289
|
+
if (chunkSize !== 0) {
|
|
290
|
+
throw new WaveContentError(`Illegal remaining size: ${chunkSize}`);
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
addTag(id, value) {
|
|
294
|
+
this.metadata.addTag("exif", id, value);
|
|
295
|
+
}
|
|
296
|
+
};
|
|
297
|
+
export {
|
|
298
|
+
WaveParser
|
|
299
|
+
};
|
|
300
|
+
//# sourceMappingURL=WaveParser-3R2NLXGP.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../node_modules/music-metadata/lib/wav/WaveParser.js", "../../../node_modules/music-metadata/lib/riff/RiffChunk.js", "../../../node_modules/music-metadata/lib/wav/WaveChunk.js", "../../../node_modules/music-metadata/lib/wav/BwfChunk.js"],
|
|
4
|
+
"sourcesContent": ["import * as strtok3 from 'strtok3';\nimport * as Token from 'token-types';\nimport initDebug from 'debug';\nimport * as riff from '../riff/RiffChunk.js';\nimport * as WaveChunk from './WaveChunk.js';\nimport { ID3v2Parser } from '../id3v2/ID3v2Parser.js';\nimport * as util from '../common/Util.js';\nimport { FourCcToken } from '../common/FourCC.js';\nimport { BasicParser } from '../common/BasicParser.js';\nimport { BroadcastAudioExtensionChunk } from './BwfChunk.js';\nimport { WaveContentError } from './WaveChunk.js';\nconst debug = initDebug('music-metadata:parser:RIFF');\n/**\n * Resource Interchange File Format (RIFF) Parser\n *\n * WAVE PCM soundfile format\n *\n * Ref:\n * - http://www.johnloomis.org/cpe102/asgn/asgn1/riff.html\n * - http://soundfile.sapp.org/doc/WaveFormat\n *\n * ToDo: Split WAVE part from RIFF parser\n */\nexport class WaveParser extends BasicParser {\n constructor() {\n super(...arguments);\n this.blockAlign = 0;\n }\n async parse() {\n const riffHeader = await this.tokenizer.readToken(riff.Header);\n debug(`pos=${this.tokenizer.position}, parse: chunkID=${riffHeader.chunkID}`);\n if (riffHeader.chunkID !== 'RIFF')\n return; // Not RIFF format\n this.metadata.setAudioOnly();\n return this.parseRiffChunk(riffHeader.chunkSize).catch(err => {\n if (!(err instanceof strtok3.EndOfStreamError)) {\n throw err;\n }\n });\n }\n async parseRiffChunk(chunkSize) {\n const type = await this.tokenizer.readToken(FourCcToken);\n this.metadata.setFormat('container', type);\n switch (type) {\n case 'WAVE':\n return this.readWaveChunk(chunkSize - FourCcToken.len);\n default:\n throw new WaveContentError(`Unsupported RIFF format: RIFF/${type}`);\n }\n }\n async readWaveChunk(remaining) {\n while (remaining >= riff.Header.len) {\n const header = await this.tokenizer.readToken(riff.Header);\n remaining -= riff.Header.len + header.chunkSize;\n if (header.chunkSize > remaining) {\n this.metadata.addWarning('Data chunk size exceeds file size');\n }\n this.header = header;\n debug(`pos=${this.tokenizer.position}, readChunk: chunkID=RIFF/WAVE/${header.chunkID}`);\n switch (header.chunkID) {\n case 'LIST':\n await this.parseListTag(header);\n break;\n case 'fact': // extended Format chunk,\n this.metadata.setFormat('lossless', false);\n this.fact = await this.tokenizer.readToken(new WaveChunk.FactChunk(header));\n break;\n case 'fmt ': { // The Util Chunk, non-PCM Formats\n const fmt = await this.tokenizer.readToken(new WaveChunk.Format(header));\n let subFormat = WaveChunk.WaveFormatNameMap[fmt.wFormatTag];\n if (!subFormat) {\n debug(`WAVE/non-PCM format=${fmt.wFormatTag}`);\n subFormat = `non-PCM (${fmt.wFormatTag})`;\n }\n this.metadata.setFormat('codec', subFormat);\n this.metadata.setFormat('bitsPerSample', fmt.wBitsPerSample);\n this.metadata.setFormat('sampleRate', fmt.nSamplesPerSec);\n this.metadata.setFormat('numberOfChannels', fmt.nChannels);\n this.metadata.setFormat('bitrate', fmt.nBlockAlign * fmt.nSamplesPerSec * 8);\n this.blockAlign = fmt.nBlockAlign;\n break;\n }\n case 'id3 ': // The way Picard, FooBar currently stores, ID3 meta-data\n case 'ID3 ': { // The way Mp3Tags stores ID3 meta-data\n const id3_data = await this.tokenizer.readToken(new Token.Uint8ArrayType(header.chunkSize));\n const rst = strtok3.fromBuffer(id3_data);\n await new ID3v2Parser().parse(this.metadata, rst, this.options);\n break;\n }\n case 'data': { // PCM-data\n if (this.metadata.format.lossless !== false) {\n this.metadata.setFormat('lossless', true);\n }\n let chunkSize = header.chunkSize;\n if (this.tokenizer.fileInfo.size) {\n const calcRemaining = this.tokenizer.fileInfo.size - this.tokenizer.position;\n if (calcRemaining < chunkSize) {\n this.metadata.addWarning('data chunk length exceeding file length');\n chunkSize = calcRemaining;\n }\n }\n const numberOfSamples = this.fact ? this.fact.dwSampleLength : (chunkSize === 0xffffffff ? undefined : chunkSize / this.blockAlign);\n if (numberOfSamples) {\n this.metadata.setFormat('numberOfSamples', numberOfSamples);\n if (this.metadata.format.sampleRate) {\n this.metadata.setFormat('duration', numberOfSamples / this.metadata.format.sampleRate);\n }\n }\n if (this.metadata.format.codec === 'ADPCM') { // ADPCM is 4 bits lossy encoding resulting in 352kbps\n this.metadata.setFormat('bitrate', 352000);\n }\n else if (this.metadata.format.sampleRate) {\n this.metadata.setFormat('bitrate', this.blockAlign * this.metadata.format.sampleRate * 8);\n }\n await this.tokenizer.ignore(header.chunkSize);\n break;\n }\n case 'bext': { // Broadcast Audio Extension chunk\thttps://tech.ebu.ch/docs/tech/tech3285.pdf\n const bext = await this.tokenizer.readToken(BroadcastAudioExtensionChunk);\n Object.keys(bext).forEach(key => {\n this.metadata.addTag('exif', `bext.${key}`, bext[key]);\n });\n const bextRemaining = header.chunkSize - BroadcastAudioExtensionChunk.len;\n await this.tokenizer.ignore(bextRemaining);\n break;\n }\n case '\\x00\\x00\\x00\\x00': // padding ??\n debug(`Ignore padding chunk: RIFF/${header.chunkID} of ${header.chunkSize} bytes`);\n this.metadata.addWarning(`Ignore chunk: RIFF/${header.chunkID}`);\n await this.tokenizer.ignore(header.chunkSize);\n break;\n default:\n debug(`Ignore chunk: RIFF/${header.chunkID} of ${header.chunkSize} bytes`);\n this.metadata.addWarning(`Ignore chunk: RIFF/${header.chunkID}`);\n await this.tokenizer.ignore(header.chunkSize);\n }\n if (this.header.chunkSize % 2 === 1) {\n debug('Read odd padding byte'); // https://wiki.multimedia.cx/index.php/RIFF\n await this.tokenizer.ignore(1);\n }\n }\n }\n async parseListTag(listHeader) {\n const listType = await this.tokenizer.readToken(new Token.StringType(4, 'latin1'));\n debug('pos=%s, parseListTag: chunkID=RIFF/WAVE/LIST/%s', this.tokenizer.position, listType);\n switch (listType) {\n case 'INFO':\n return this.parseRiffInfoTags(listHeader.chunkSize - 4);\n default:\n this.metadata.addWarning(`Ignore chunk: RIFF/WAVE/LIST/${listType}`);\n debug(`Ignoring chunkID=RIFF/WAVE/LIST/${listType}`);\n return this.tokenizer.ignore(listHeader.chunkSize - 4).then();\n }\n }\n async parseRiffInfoTags(chunkSize) {\n while (chunkSize >= 8) {\n const header = await this.tokenizer.readToken(riff.Header);\n const valueToken = new riff.ListInfoTagValue(header);\n const value = await this.tokenizer.readToken(valueToken);\n this.addTag(header.chunkID, util.stripNulls(value));\n chunkSize -= (8 + valueToken.len);\n }\n if (chunkSize !== 0) {\n throw new WaveContentError(`Illegal remaining size: ${chunkSize}`);\n }\n }\n addTag(id, value) {\n this.metadata.addTag('exif', id, value);\n }\n}\n", "import * as Token from 'token-types';\n/**\n * Common RIFF chunk header\n */\nexport const Header = {\n len: 8,\n get: (buf, off) => {\n return {\n // Group-ID\n chunkID: new Token.StringType(4, 'latin1').get(buf, off),\n // Size\n chunkSize: Token.UINT32_LE.get(buf, off + 4)\n };\n }\n};\n/**\n * Token to parse RIFF-INFO tag value\n */\nexport class ListInfoTagValue {\n constructor(tagHeader) {\n this.tagHeader = tagHeader;\n this.len = tagHeader.chunkSize;\n this.len += this.len & 1; // if it is an odd length, round up to even\n }\n get(buf, off) {\n return new Token.StringType(this.tagHeader.chunkSize, 'ascii').get(buf, off);\n }\n}\n", "import * as Token from 'token-types';\nimport { makeUnexpectedFileContentError } from '../ParseError.js';\nexport class WaveContentError extends makeUnexpectedFileContentError('Wave') {\n}\n/**\n * Ref: https://msdn.microsoft.com/en-us/library/windows/desktop/dd317599(v=vs.85).aspx\n */\nexport const WaveFormat = {\n PCM: 0x0001,\n // MPEG-4 and AAC Audio Types\n ADPCM: 0x0002,\n IEEE_FLOAT: 0x0003,\n MPEG_ADTS_AAC: 0x1600,\n MPEG_LOAS: 0x1602,\n RAW_AAC1: 0x00FF,\n // Dolby Audio Types\n DOLBY_AC3_SPDIF: 0x0092,\n DVM: 0x2000,\n RAW_SPORT: 0x0240,\n ESST_AC3: 0x0241,\n DRM: 0x0009,\n DTS2: 0x2001,\n MPEG: 0x0050\n};\nexport const WaveFormatNameMap = {\n [WaveFormat.PCM]: 'PCM',\n [WaveFormat.ADPCM]: 'ADPCM',\n [WaveFormat.IEEE_FLOAT]: 'IEEE_FLOAT',\n [WaveFormat.MPEG_ADTS_AAC]: 'MPEG_ADTS_AAC',\n [WaveFormat.MPEG_LOAS]: 'MPEG_LOAS',\n [WaveFormat.RAW_AAC1]: 'RAW_AAC1',\n [WaveFormat.DOLBY_AC3_SPDIF]: 'DOLBY_AC3_SPDIF',\n [WaveFormat.DVM]: 'DVM',\n [WaveFormat.RAW_SPORT]: 'RAW_SPORT',\n [WaveFormat.ESST_AC3]: 'ESST_AC3',\n [WaveFormat.DRM]: 'DRM',\n [WaveFormat.DTS2]: 'DTS2',\n [WaveFormat.MPEG]: 'MPEG'\n};\n/**\n * format chunk; chunk-id is \"fmt \"\n * http://soundfile.sapp.org/doc/WaveFormat/\n */\nexport class Format {\n constructor(header) {\n if (header.chunkSize < 16)\n throw new WaveContentError('Invalid chunk size');\n this.len = header.chunkSize;\n }\n get(buf, off) {\n return {\n wFormatTag: Token.UINT16_LE.get(buf, off),\n nChannels: Token.UINT16_LE.get(buf, off + 2),\n nSamplesPerSec: Token.UINT32_LE.get(buf, off + 4),\n nAvgBytesPerSec: Token.UINT32_LE.get(buf, off + 8),\n nBlockAlign: Token.UINT16_LE.get(buf, off + 12),\n wBitsPerSample: Token.UINT16_LE.get(buf, off + 14)\n };\n }\n}\n/**\n * Fact chunk; chunk-id is \"fact\"\n * http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html\n * http://www.recordingblogs.com/wiki/fact-chunk-of-a-wave-file\n */\nexport class FactChunk {\n constructor(header) {\n if (header.chunkSize < 4) {\n throw new WaveContentError('Invalid fact chunk size.');\n }\n this.len = header.chunkSize;\n }\n get(buf, off) {\n return {\n dwSampleLength: Token.UINT32_LE.get(buf, off)\n };\n }\n}\n", "import * as Token from 'token-types';\nimport { stripNulls } from '../common/Util.js';\n/**\n * Broadcast Audio Extension Chunk\n * Ref: https://tech.ebu.ch/docs/tech/tech3285.pdf\n */\nexport const BroadcastAudioExtensionChunk = {\n len: 420,\n get: (uint8array, off) => {\n return {\n description: stripNulls(new Token.StringType(256, 'ascii').get(uint8array, off)).trim(),\n originator: stripNulls(new Token.StringType(32, 'ascii').get(uint8array, off + 256)).trim(),\n originatorReference: stripNulls(new Token.StringType(32, 'ascii').get(uint8array, off + 288)).trim(),\n originationDate: stripNulls(new Token.StringType(10, 'ascii').get(uint8array, off + 320)).trim(),\n originationTime: stripNulls(new Token.StringType(8, 'ascii').get(uint8array, off + 330)).trim(),\n timeReferenceLow: Token.UINT32_LE.get(uint8array, off + 338),\n timeReferenceHigh: Token.UINT32_LE.get(uint8array, off + 342),\n version: Token.UINT16_LE.get(uint8array, off + 346),\n umid: new Token.Uint8ArrayType(64).get(uint8array, off + 348),\n loudnessValue: Token.UINT16_LE.get(uint8array, off + 412),\n maxTruePeakLevel: Token.UINT16_LE.get(uint8array, off + 414),\n maxMomentaryLoudness: Token.UINT16_LE.get(uint8array, off + 416),\n maxShortTermLoudness: Token.UINT16_LE.get(uint8array, off + 418)\n };\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["initDebug"]
|
|
7
|
+
}
|
package/dist/auth-presence.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveMatrixCredentialsDir,
|
|
3
3
|
resolveMatrixCredentialsFilename
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-UDDWLWKZ.js";
|
|
5
5
|
import {
|
|
6
6
|
init_shims
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-G4TIS2SC.js";
|
|
8
8
|
|
|
9
9
|
// auth-presence.ts
|
|
10
10
|
init_shims();
|