{"_id":"@audio/loudness-truepeak","_rev":"8-08e3dcac6b8efc4f934bc265f84c3e17","name":"@audio/loudness-truepeak","dist-tags":{"latest":"1.1.6"},"versions":{"1.0.0":{"name":"@audio/loudness-truepeak","version":"1.0.0","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.0.0","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"dist":{"shasum":"1568cccffe49426dcbfdf7fea0e285e4299ba413","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.0.0.tgz","fileCount":2,"integrity":"sha512-TQwvBJqci0Grn7eBjq/UbJU0YHpWikhNEuDhWnmGuEUuCf8DpxFAjaySerCqQAfiegg2M6BSmkhsg09mMkXKOw==","signatures":[{"sig":"MEUCIExrOE4LsJ32frSAxVrX9ghlruHrcXIbpNX63noUL8THAiEA4TvrrYu2b5sOCCCwAdeLu2gSLKLUN8BZFQLqB6zZWC4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1557},"main":"truepeak.js","type":"module","engines":{"node":">=18"},"exports":{".":"./truepeak.js","./package.json":"./package.json"},"gitHead":"57f912670580667ee3cdf589f74c1d0da6b2fd8d","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.0.0_1783540310613_0.3506514075695948","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@audio/loudness-truepeak","version":"1.1.0","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.0","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"dist":{"shasum":"7d3d93fb4054ce546e36c7252d90f46593748f98","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.0.tgz","fileCount":3,"integrity":"sha512-t7HsTpJ0XRvjWCp01V6/sSmw5LvouIE+oThGd5TT2pqL7akggo5bLBxwjbOin1gz2URBQ2T2uIYnTh0mHI3FQA==","signatures":[{"sig":"MEUCIQDHajSLBnhEgQU63DOKTCdsqKfYzQakKk60iYu4n239RwIgTQ+e56ySdRO7J+E0u4ytgLKHruYQhx83F+mK+ZdDZX0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2025},"main":"truepeak.js","type":"module","engines":{"node":">=18"},"exports":{".":"./truepeak.js","./stat":"./stat.js","./package.json":"./package.json"},"gitHead":"59b7fab5a0251b492134f3fbcc8fd9b2ea32dad8","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.0_1783635201548_0.15161523604967897","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@audio/loudness-truepeak","version":"1.1.1","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.1","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"dist":{"shasum":"140945d2ca5e85c393b52cfc4bb7bc48416ef1f5","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.1.tgz","fileCount":3,"integrity":"sha512-0xiGWl5pWy74eANo2iHLRNQw8M/AsdIaoIHubr4+1Y5UjFyKwgmfnYlz0+6kuzNDVDxd/+ILdZEhlQZHB2FoDA==","signatures":[{"sig":"MEYCIQDN6e1OL9ztZnfproRXZvrSNdvHBKRQd3itf/t+Ao3abwIhAIzKWmOOMh9y8ih3O8VoovpKBWAK3orMWb+uOZiCKb8b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2053},"main":"truepeak.js","type":"module","audio":"./audio.js","engines":{"node":">=18"},"exports":{".":"./truepeak.js","./audio":"./audio.js","./package.json":"./package.json"},"gitHead":"158a5506cc97179e6c26624e123eb3477ef0c4fc","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.1_1783645088336_0.12441114490936389","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@audio/loudness-truepeak","version":"1.1.2","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.2","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"dist":{"shasum":"b9c7ed0f89c9807c614103cb771f770dc1e66dba","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.2.tgz","fileCount":4,"integrity":"sha512-qN4FjDXP7fGRZfa/gKDCD7SsS30MiMHGWyUu2UpQYxoDhNLl/rcaa/BWkjk8YLCGjw4+/m/201W7N66/IjjMag==","signatures":[{"sig":"MEQCIFR1eVy7JbWQgrJhMWpyukGgKO/CLPO64YU+++KWtnp8AiAZGGrXaNkH320uZT0m8oqMdESNkLFKRm1GRgO0COc/dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3138},"main":"truepeak.js","type":"module","audio":"./audio.js","engines":{"node":">=18"},"exports":{".":"./truepeak.js","./audio":{"types":"./audio.d.ts","default":"./audio.js"},"./package.json":"./package.json"},"gitHead":"5e020a9f267b93903da1a1f8bf3060637e35ad95","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.2_1783701749554_0.3786660098302672","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@audio/loudness-truepeak","version":"1.1.3","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.3","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"homepage":"https://github.com/audiojs/loudness#readme","bugs":{"url":"https://github.com/audiojs/loudness/issues"},"dist":{"shasum":"ccb67deb72cb64ddc61c015a1f539f8b3b5a9b10","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.3.tgz","fileCount":6,"integrity":"sha512-ta/HiO24NYH/AIzu96ZKGfulBS6SeKnTYih/Oxee86aVy6mFbcvW5HlV7/CMVom8F2DSoRovBmRStkV44Uey6w==","signatures":[{"sig":"MEYCIQCvazzxGEgGy+bezVV4ppVOm128Tpu5vPm7Rr2c8y0kbgIhAMSPLA9tspso/HfRPKLWFNV5wysY+cCk+gtls5vDAXum","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5679},"main":"truepeak.js","type":"module","audio":"./audio.js","types":"index.d.ts","engines":{"node":">=18"},"exports":{".":"./truepeak.js","./audio":{"types":"./audio.d.ts","default":"./audio.js"},"./package.json":"./package.json"},"funding":"https://github.com/sponsors/audiojs","gitHead":"54e53fc3ef0ffbcb2c428053a323bef99715a825","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"repository":{"url":"git+https://github.com/audiojs/loudness.git","type":"git","directory":"packages/loudness-truepeak"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.3_1783731633067_0.8059469886141883","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@audio/loudness-truepeak","version":"1.1.4","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.4","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"homepage":"https://github.com/audiojs/loudness#readme","bugs":{"url":"https://github.com/audiojs/loudness/issues"},"dist":{"shasum":"994b9fcc75f5723657c82c24b33416b7f160e58e","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.4.tgz","fileCount":6,"integrity":"sha512-vK47H04Qt46JMEfPgeRLtTG4+chxoO17zni7FGB/LWuavs5eglPvFJGzvb+iOnGrZ9/Jq+DbZahL9Ijaii6FrA==","signatures":[{"sig":"MEUCIBRwbj96Cj+8vumoYVz0fe4KcGt6aKKDMKHAQxs540TgAiEA8ED1/9DXX+5NqZIGB8VZoSaycbSUkBqhjotqS3/2rho=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5735},"main":"truepeak.js","type":"module","audio":"./audio.js","types":"index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./index.d.ts","default":"./truepeak.js"},"./audio":{"types":"./audio.d.ts","default":"./audio.js"},"./package.json":"./package.json"},"funding":"https://github.com/sponsors/audiojs","gitHead":"095c2c3d8c55523252e4ac64a90aa98ee3616bfe","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"repository":{"url":"git+https://github.com/audiojs/loudness.git","type":"git","directory":"packages/loudness-truepeak"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.4_1787019268410_0.5608070808825842","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@audio/loudness-truepeak","version":"1.1.5","keywords":["audio","dsp","loudness","truepeak"],"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","_id":"@audio/loudness-truepeak@1.1.5","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"homepage":"https://github.com/audiojs/loudness#readme","bugs":{"url":"https://github.com/audiojs/loudness/issues"},"dist":{"shasum":"75b786ef915be4fbb01a5230fba259f1e5e262ef","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.5.tgz","fileCount":6,"integrity":"sha512-CBtrcKtcwrM4y+F8NcAMKrSMXvuyOK9Cj6x2G+GbgbP41/kOykq28EksbEGIv7HEJuAGb3TSnm8IZDzKpcH/qw==","signatures":[{"sig":"MEQCICR0oTR2gUJxyqhJbXpIT8kf7vOOJiWu4jDOVPGr9G8jAiA+vECDA8Jc5yZoUlM4cN9Mu2uKbMkKuBlX4xOrzVdqNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEr8amRSeqvk9wSsy6oQ7Cu1XwY0/9EW87tRD/swo4LzAiAM1abQngbzPi1Joq5svHsEsPe+ZemJzqOf85PCZ9BeVQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9552},"main":"truepeak.js","type":"module","audio":"./audio.js","types":"index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./index.d.ts","default":"./truepeak.js"},"./audio":{"types":"./audio.d.ts","default":"./audio.js"},"./package.json":"./package.json"},"funding":"https://github.com/sponsors/audiojs","gitHead":"01f9389dd1c05baa5163bd983be2ab66f7b1675b","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"repository":{"url":"git+https://github.com/audiojs/loudness.git","type":"git","directory":"packages/loudness-truepeak"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-4 Annex 2 methodology)","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","dependencies":{"@audio/resample-sinc":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/loudness-truepeak_1.1.5_1790490879682_0.15759569463372736","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"_id":"@audio/loudness-truepeak@1.1.6","bugs":{"url":"https://github.com/audiojs/loudness/issues"},"dist":{"shasum":"46a868488bb5b05060558049e081473e83f0c4f8","tarball":"https://registry.npmjs.org/@audio/loudness-truepeak/-/loudness-truepeak-1.1.6.tgz","fileCount":6,"integrity":"sha512-gqVHA+ykllR/mckqQcaGl3youJfLAPX2pPaDrsV26brhVykfhWMa2E14DSa19vkmO32NyVFLlG2a2W4Ww7SSGw==","signatures":[{"sig":"MEQCIHjZgcKkLdvpG5WR/MveL2fxYvBrXP/XqVx/G4FScnWzAiBfIxfE48MwZWC1BdMK8sr2sNFUcyaHu6QWAtbMPkn31g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDkE5JfJzZX3X4knHlOCHO0frlaeRVy1PnDxtLfu1BOkgIhAPokkHvLNK+YM9pTXp65L5SHau1gKushBzzephESK4+k"}],"unpackedSize":11123},"main":"truepeak.js","name":"@audio/loudness-truepeak","type":"module","audio":"./audio.js","types":"index.d.ts","author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"engines":{"node":">=18"},"exports":{".":{"types":"./index.d.ts","default":"./truepeak.js"},"./audio":{"types":"./audio.d.ts","default":"./audio.js"},"./package.json":"./package.json"},"funding":"https://github.com/sponsors/audiojs","gitHead":"01f9389dd1c05baa5163bd983be2ab66f7b1675b","license":"MIT","version":"1.1.6","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"homepage":"https://github.com/audiojs/loudness#readme","keywords":["audio","dsp","loudness","truepeak"],"repository":{"url":"git+https://github.com/audiojs/loudness.git","type":"git","directory":"packages/loudness-truepeak"},"_npmVersion":"11.12.1","description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-5 Annex 2 methodology)","directories":{},"maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"sideEffects":false,"_nodeVersion":"25.9.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/loudness-truepeak_1.1.6_1790633772908_0.8315033824874083"}}},"time":{"created":"2026-07-08T19:51:50.433Z","modified":"2026-09-28T22:16:13.230Z","1.0.0":"2026-07-08T19:51:50.746Z","1.1.0":"2026-07-09T22:13:21.697Z","1.1.1":"2026-07-10T00:58:08.454Z","1.1.2":"2026-07-10T16:42:29.711Z","1.1.3":"2026-07-11T01:00:33.200Z","1.1.4":"2026-08-18T02:14:28.569Z","1.1.5":"2026-09-27T06:34:39.769Z","1.1.6":"2026-09-28T22:16:12.994Z"},"bugs":{"url":"https://github.com/audiojs/loudness/issues"},"author":{"name":"Dmitry Iv.","email":"dfcreative@gmail.com"},"license":"MIT","homepage":"https://github.com/audiojs/loudness#readme","keywords":["audio","dsp","loudness","truepeak"],"repository":{"url":"git+https://github.com/audiojs/loudness.git","type":"git","directory":"packages/loudness-truepeak"},"description":"True peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-5 Annex 2 methodology)","maintainers":[{"name":"jamen","email":"jamenmarz@gmail.com"},{"name":"dfcreative","email":"df.creative@gmail.com"},{"name":"dy","email":"df.creative@gmail.com"}],"readme":"# @audio/loudness-truepeak [![npm](https://img.shields.io/npm/v/@audio/loudness-truepeak)](https://www.npmjs.com/package/@audio/loudness-truepeak) [![MIT](https://img.shields.io/badge/MIT-%E0%A5%90-white)](https://github.com/krishnized/license)\n\nTrue peak (dBTP) — 4× sinc-oversampled inter-sample peak (BS.1770-5 Annex 2 methodology)\n\n```\nnpm install @audio/loudness-truepeak\n```\n\n```js\nimport truepeak from '@audio/loudness-truepeak'\n```\n\nTrue peak per ITU-R BS.1770-5 Annex 2 (oversample, rectify, take the maximum) and its recommends 5 (\"or a method that gives similar or superior results\"): per channel, the samples and the points between them, 4 a sample by default, read polyphase through a 96-tap Kaiser-windowed sinc (β 8) with silence outside the signal; each local maximum of the points is refined by the parabola through it and its neighbours, which finds the peak between them. The maximum across all channels is reported. Against the waveform read 32× through a Kaiser-windowed sinc (β 14, 128 taps a phase), speech, white noise, noise clipped 18 dB, limited speech and EBU Tech 3341 cases 15-23 read within 0.01 dB at 8 to 48 kHz; the 32-tap Lanczos kernel before it, reading its points alone, read clipped or limited material up to 0.4 dB low.\n\n```js\ntruepeak(channels)                        // default 4× oversampling @ 48000 Hz\ntruepeak(channels, { oversample: 8 })     // finer oversampling\n```\n\n| Param | Default | |\n|---|---|---|\n| `fs` | `48000` | Sample rate, Hz |\n| `oversample` | `4` | Points a sample (BS.1770-5 Annex 2: 4 at 48 kHz); a fraction rounds up |\n\nAccepts `Float32Array` (mono) or `Float32Array[]` (multichannel — the maximum peak across all channels is returned). Returns a `number` (true peak in dBTP), or `-Infinity` for silence.\n\n**Use when:** checking a master against a dBTP ceiling (e.g. −1 dBTP delivery specs) before lossy encoding, where inter-sample overs would otherwise clip after decode.\n\nPer ITU-R BS.1770-5 Annex 2; tested against EBU Tech 3341 cases 15-23 and a 32× band-limited reference; libebur128 1.2.6 reads the same noise 0.08-0.84 dB lower.\n\n---\n\nPart of [@audio/loudness](https://github.com/audiojs/loudness) — the loudness family umbrella. Documented from the reference implementation.\n\nMIT © [audiojs](https://github.com/audiojs)\n","readmeFilename":"README.md"}