
Depois de criar um armazenamento de música, era lógico fazer um player ouvir as músicas você mesmo e compartilhar listas de reprodução com outras pessoas. Uma rede separada é responsável por armazenar listas de reprodução . As músicas são, por padrão, retiradas da rede global de repositórios de música . Opcionalmente, você pode elevar suas redes usando as bibliotecas necessárias.
Eu gostaria de dividir minha história em duas partes:
1. Jogador de dentro ( musiphone , museria-player )
Dentro, o player é um repositório de informações sobre listas de reprodução que podem ser salvas lá. Uma lista de reprodução é uma lista de títulos de músicas que tem seu próprio hash exclusivo do conteúdo, pelo qual essa lista de reprodução pode ser obtida no futuro.
const Node = require('musiphone').Node; (async () => { try { const node = new Node({ port: 4000, hostname: 'localhost', musicStorageAddress: 'storage.museria.com:80' }); await node.init(); } catch(err) { console.error(err.stack); process.exit(1); } })();
const Client = require('musiphone').Client; (async () => { try { const client = new Client({ address: 'localhost:4000' }); await client.init(); const title = 'Playlist title'; const songs = [ 'Onycs - Eden', 'Onycs - Shine', 'Onycs - Timeless' ]; // Add the playlist const response = await client.addPlaylist(title, songs); // Get the playlist const playlist = await client.getPlaylist(response.hash); } catch(err) { console.error(err.stack); process.exit(1); } })();
A informação circula na rede dependendo do espaço livre em disco nos nós e da quantidade de dados. Se houver mais listas de reprodução do que espaço suficiente na rede, as mais raramente usadas serão excluídas para liberar espaço. Por um lado, isso é bom, porque podem não ser necessários muitos servidores para que a rede funcione, mas, por outro lado, quanto menos houver, menor será a garantia da relevância dos links para as listas de reprodução.
Deve-se ter em mente que o sistema não garante o armazenamento permanente dos dados, portanto, para maior confiabilidade, você também pode salvar tudo em arquivos. Isso será discutido com mais detalhes na segunda parte.
metastocle. . .
2. (, android )
( , ). , cordova, .
, .
.

"NEW PLAYLIST". , . , , . , , "MUSIC STORAGE" , , .
, . "Onycs — Eden"

, , . .

. , , ... , - , localStorage.
. "SAVE TO WEB".

.

, , /. , , , , . , .
, , . , , . . "NEW PLAYLIST". :

, , .
. "SAVE TO FILE". m3u .
, "LOAD PlAYLIST".

. , . :
. : http://player.museria.com:80/musiphone/3deeb6052c5a46c05d6bec2cab5bade9 , , . , - , — . - , localStorage. , , - , , : player.museria.com
. , m3u / . . 10 , , . , , : http://player.museria.com:80/musiphone/external:someUrlHash
, m3u . m3u , . .
, localStorage. (json), "SAVE CONFIG", "LOAD CONFIG". , , . , , .
Um grupo em telegrama em inglês , ou escreva imediatamente para mim em um "ortex" pessoal