A Spotify Code


repedése Ha hasznosította a Spotify-t, előfordulhat, hogy észrevette a praktikus bit kódot, amely képes olyan, mint egy különböző magasságú rúdsorozatok. Ha úgy tetszik, hogy [Peter Boone], akkor egy ilyen kódolás ösztönzi a kíváncsiságodat, valamint azt, hogy pontosan kitalálja, hogyan működik.

Spotify kínál egy kicsit a fényképet, hogy amikor szkennelt nyit szinte semmit kereshető Spotify. Számos vonal áll a Spotify Logo-n, nyolc különböző magasságú, tárolja az információt oktálisban. Sok vizuális kódolási sémákat kódolnak néhány URI (Uniform Resource Identifier), amely egy egyedi azonosítót az adott szám, album vagy előadó ha dekódolni. Mivel sok URI hangja a Spotify-nél nagyon hosszú (egy példa erőteljesen): show: 3NRV0MHza8xert0eylpaip Melyik óra 218 bitben), egyes rendszerekre van szükség ahhoz, hogy az URIS-t valamivel kezelhetővé tegye. bemegy a média referencia, egy rövid szekvenciát kódoló specifikus URI, általában 40 bit. Az ajánlás csak egy lookup az adatbázisban a Spotify fenntartja, ezért szüksége van egy hálózati kapcsolat megoldani. A média ajánlása a rudak értékeihez való tényleges kódolási terve meglehetősen komplex, beleértve a CRC, a konvolutúciót, valamint a lyukasztást. A CRC lehetővé teszi, hogy a program ellenőrizze a helyes dekódolás, valamint a konvolúció lehetővé teszi a program, hogy egy kis számú kivett hibák, miközben még egy pontos eredményt. A lyukasztás csak megszünteti a biteket, hogy csökkentse a kódolt számokat, támaszkodva a konvolúcióra, hogy kitöltse a lyukakat.

[Peter] mindent megmagyaráz, hogy segítséget nyújt az értékelésben, és érthetően. Az alkotó a Spotify kódok megállt a megjegyzések nyújt némi értékes mutatók, beleértve a mutató áll rendelkezésre egy második mód, ha a vonalak nem középre, amely lehetővé teszi, hogy tárolja a kettős bit. [Peter] van egy python batyut Github az összes szükséges kódot, hogy kezdje dekódolás. Talán integrálhatja a Spotify Code szkennert a Custom Spotify Playing Mini számítógépre.

Leave a Reply

Your email address will not be published. Required fields are marked *