Sift v0.1.2
Détection
- Les MP3 320 déguisés en lossless ne passent plus pour vrais. Un MP3 encodé par LAME à
320 kbps coupe le spectre entre 20,2 et 20,7 kHz, juste au-dessus de la limite que Sift
considérait comme « bande pleine ». Un fichier lossless dont le spectre s'arrête entre
20 000 et 20 750 Hz est désormais À VÉRIFIER au lieu de VRAI : un mur net à cette hauteur se
voit au spectrogramme. Jamais FAUX d'office, parce qu'un vrai master peut y avoir un roll-off
naturel. Mesuré : les 20 MP3 320 du corpus de test passaient en VRAI, ils passent À VÉRIFIER ;
aucun des 8 achats vérifiés n'est touché (tous à 22 050 Hz) ; dans une bibliothèque réelle de
546 lossless, 21 fichiers tombent dans cette zone, et 19 d'entre eux ont un mur de plus de
20 dB, la signature d'un encodeur. - La trace de codec dans les échantillons (sonde de quantification) est aussi cherchée sur cette
zone : si elle est trouvée, le verdict passe FAUX. - Les MP3 déguisés en lossless sont reconnus à leur grille de quantification, quel que soit
leur débit. La sonde qui cherchait la trace d'un encodeur AAC dans les échantillons rejoue
désormais aussi l'encodeur MP3 (banc de filtres de la couche III). Mesuré sur le corpus de test :
les MP3 320, V0, 256, 192 et 160 réencapsulés en FLAC portent la grille 10 fois sur 10, les
MP3 128 7 fois sur 10 ; aucun des 8 achats vérifiés n'est touché. Un morceau de plus de 9 minutes est
sondé sur ses 9 premières minutes (la sonde garde le signal décodé en mémoire, et s'arrête là) —
la grille d'un transcodage est la même du début à la fin. Un fichier
tenu pour authentique dans la référence s'est révélé un MP3 transcodé, et la sonde l'a vu. - Les AAC à bas débit déguisés en lossless sont reconnus. La sonde ne regardait les blocs
longs de l'AAC qu'à travers une fenêtre sinus, alors que ffmpeg les encode en Kaiser-Bessel :
elle essaie désormais les deux formes, et juge la grille sur 2 à 18 kHz au lieu de 14,5 à
20 kHz, là où un AAC 128 n'a plus rien à montrer. Mesuré sur le corpus de test : les AAC 128 de
ffmpeg passent de 1 sur 10 à 10 sur 10, les AAC 256 de 6 à 10 sur 10 ; aucun des 8 achats
vérifiés ni des 957 lossless d'une bibliothèque réelle n'est touché. - Les verdicts sont rejoués au démarrage depuis les mesures déjà stockées, sans nouvelle analyse.
Installation
Ces builds ne sont pas signés : le système avertit au premier lancement. Une seule fois.
Un seul fichier à télécharger, selon la machine :
| machine | fichier |
|---|---|
| Windows | Sift_<version>_x64-setup.exe |
| Mac Apple Silicon | Sift_<version>_aarch64.dmg |
| Mac Intel | Sift_<version>_x64.dmg |
Tout le reste de la liste sert à la mise à jour automatique et ne s'installe pas :
.app.tar.gz, .msi, les .sig, latest.json. Le .app.tar.gz est le piège — il pèse
PLUS LOURD que le .dmg, donc il a l'air d'être le bon.
Windows — SmartScreen affiche « Windows a protégé votre ordinateur » : cliquer
Informations complémentaires, puis Exécuter quand même.
macOS — ouvrir le .dmg, glisser Sift dans Applications, puis
selon le message affiché :
- « développeur non identifié » : Réglages Système > Confidentialité et sécurité, descendre
jusqu'au message concernant Sift, cliquer Ouvrir quand même. - « Sift is damaged and can't be opened » : ce message n'offre PAS de bouton « Ouvrir quand
même ». Dans le Terminal — le-rest indispensable, un.appest un dossier :
xattr -dr com.apple.quarantine /Applications/Sift.app
Si le message persiste :codesign --force --deep --sign - /Applications/Sift.app
Se servir de Sift
Le manuel — vocabulaire, les huit écrans, le clavier, et ce que la détection laisse passer :
- en ligne, dans le design de l'app : https://sift-music.vercel.app/manuel.html
- en PDF, dans le design de l'app : https://github.com/c0remusic/sift/releases/download/v0.1.2/manuel.pdf
- en Markdown : https://github.com/c0remusic/sift/blob/main/docs/manuel.md