Vi siete mai chiesti che cosa sta dietro la tecnologia web services smart Alive Drumming? Ecco l’essenza –

Alive Drummingservizi web intelligenti ‘s sono stati progettati nel linguaggio di programmazione Elixir. Il servizio fornisce web Alive di Drumming tracce ritmiche completamente disposticostruiti da più take di long-form audio di percussionisti di grande talento.

In poche parole, questo servizio

  1. Analizza una richiesta Web,
  2. Determina la struttura disposizione della traccia richiesta,
  3. Crea gli script audio-engineering impiombare fette di long-form audio nel risultato, e, infine,
  4. Esegue questi script, fornendo l’audio risultante come l’uscita del servizio.

Compilatore di linguaggio come Web Service

Molto di questo è l’analisi lessicale del testo e la progettazione del compilatore classico come la descrizione del percorso è un semplice linguaggio LR1, e gli script audio-ingegneria espulsi sono ottimizzati con una fase di ottimizzazione spioncino. Al punto 3, “ Creare degli script audio-engineering“, in aggiunta coinvolto l’analisi testuali meta-dati relativi alla posizione lungo forma di audio di diverse intensità di tamburi, riempie, riempie pre e post, le interruzioni di tamburi, spinge, count-ins e finali. Ognuno di questi ha multipla ‘prende’ e algoritmi applicare ponderazione selezioni pseudo-casuali. Inizialmente, lingue forti in manipolazione del testo sono stati considerati con i primi algoritmi prototipate in GAWK, ma è diventato evidente un linguaggio adatto per massicciamente era necessario web servizi scalabili.  

Tecnologia Stack – Phoenix / Elixir / Erlang / Linux / GCP

Che mi portano a Elixir e Phoenix. Elixir è un linguaggio puramente funzionale, forte in impianti di trattamento di testo che compila alla macchina virtuale Erlang / OTP. Phoenix è un framework web server scritto in Elixir. Elixir / Erlang comprende tutti i vantaggi del Telecom Open Platform (OTP) – progettato per la manutenzione e l’affidabilità ultra atteso di piattaforme di telecomunicazione, come ad esempio le attività controllate e in servizio aggiornamenti dei moduli. Abbiamo ospitato questo su server Linux sulla piattaforma cloud di Google (GCP) utilizzando un cluster altamente scalabile di Google Compute macchine virtuali e Google Cloud Storage.

Dinamico Programmazione – un incremento delle prestazioni

La soluzione di programmazione sfrutta Programmazione Dinamicain molti luoghi. Programmazione dinamica è dove un problema (ricorsivamente) decomposto in molte sotto-problemi e dove sotto-problemi si possono verificare che sono identici a quelli precedenti. Se un sotto-problema è un duplicato, non v’è alcuna necessità di risolvere di nuovo, basta usare il risultato precedente. La cache dei risultati permette l’algoritmo di controllare sempre la cache prima di risolvere il sub-problema. Questa tecnica è stata utilizzata su molti livelli all’interno della soluzione. Data-strutture di elisir dimostrato molto accomodante con semplice elisir mappe utilizzate come cache. Misurazioni delle prestazioni hanno mostrato un miglioramento medio del 60% l’utilizzo della CPU e tempi di realizzazione con le cache distribuiti.

Alcune aree che schierano cache sono

  1. Al livello più alto, il file audio risultante in sé viene memorizzato nella cache,
  2. La creazione di fette audio, parametrizzata per le loro esigenze di tipo e lunghezza,
  3. La selezione pseudo-casuale di istanze di audio da un gruppo di alternative ponderati – qui la selezione passato viene utilizzato come input all’algoritmo pure

Caveat Design – Google Drive

Un progetto iniziale ha avuto la traccia audio risultante nella cache su Google Drive con la risposta del server web di essere un redirect al file memorizzato nella cache. Questa soluzione è stata interessante perché sfruttato l’molto maturo, scalabile e conveniente Google Drive. Tuttavia, si è rivelato problematico con Google Drive applicare rapidamente un governatore sotto abbastanza piccole quantità di carico. Si è scoperto Google Drive non è stata una buona misura per questo tipo di servizio. Se tutte le richieste di trasmissione è venuto dal servizio web, throttling è stato applicato che ha limitato il servizio. Inoltre, era difficile fornire gli URL di Google Drive per i clienti in un modo che non sarebbe affidabile comportare richieste di autenticazione. Google Storage è stata infine utilizzato al posto di Google Drive.

Sommario – una grande pila di tecnologia

Elixir ha dimostrato sia una misura perfetta per questo progetto e un vero piacere lavorare. La lavorazione con utensili circa il linguaggio è maturo e adatto allo scopo, la piattaforma OTP è la soluzione migliore per affidabilità e manutenibilità e la restrizionedi un linguaggio puramente funzionale dimostrato di essere più di una prestazione di una limitazione. Meno davvero può essere più con il design il linguaggio di programmazione. La piattaforma cloud di Google rende la messa in infrastrutture, il monitoraggio e la manutenzione molto più facile che fare con l’hardware fisico. GCP set di strumenti è maturato e le strutture sono ampie. Consigliamo pienamente la tecnologia stack di Phoenix / Elixir / GCP per lo sviluppo e la distribuzione, servizi web complessi mission-critical.


Tracce song ritmica

Tracce song ritmica
Tracce song ritmica

Tracce rhythm song sono un nuovo tipo di base musicale composta interamente da supporto ritmico (senza melodia o armonia) predisposto per la forma musicale del brano – è “songform”. Queste tracce sono spettacoli completi come si ottiene da un batterista professionista. Hanno un conteggio progressivo, sezione introduttiva, cori e terminazioni caratteristici, incorniciata da riempimenti mostrano dove iniziano sezioni e fine. Anche i ponti musicali e cori medie hanno una maggiore intensità se del caso, allo stile. Le cose sono semplici facendo via con l’interfaccia del arrangiatore tradizionale. Si può selezionare un brano in meno di 30 secondi – meno di 15 secondi, una volta che si ha il blocco di esso.

Giocatore del App ha regolazione del tempo e un impianto per sequenziare le tracce per il tuo concerto o jam session. E ‘per i musicisti di tutte le abilità. I nuovi musicisti utilizzare l’applicazione per fornire un accompagnamento alle canzoni. Ottengono un ritmo che è in sintonia in modo da imparare a tenere il tempo, entrare nella scanalatura e interiorizzare la struttura musicale del brano – Tutto questo mentre godendo ritmi coinvolgenti e stimolanti. Musicisti gigging catalogare la loro supporto nella setlist e lo usano per guidare le prestazioni. Avere supporto ritmico di qualità, con un impianto di scaletta e un lettore di un musicista,  tutti in un unico App è così conveniente ci si trova di utilizzare questo supporto ritmico sempre di più.

Tracce song ritmica sono veramente di alta qualità supporto ritmico che è conveniente per selezionare e riprodurre. Non si ha intenzione di ottenere stanco di queste basi. Non si ha intenzione di avere a sequenziare nulla. Troverete che il giocatore e setlist di interfaccia utente incoraggia l’uso continuato. Otterrete ad apprezzare la forma delle vostre canzoni più e si potrebbe includere queste tracce nelle proprie uscite singole e album. Non lasciatevi scoraggiare da esperienze con altre applicazioni drumming mobili. Tracce song ritmica sono qualcosa di diverso.

Sia che si sta imparando una nuova melodia, inceppamenti, gigging o tagliare il tuo ultimo album, questa canzone tracce ritmiche fornisce una soluzione.

Scopri campioni dell’audio alla pagina degli esempi di Alive Drumming

Scopri questi articoli dal vivo Drumming che danno ulteriori approfondimenti il pensiero dietro il prodotto,

Come praticare, allora come di marmellata

Quando per lavorare al vostro ritmo?

Perchè songform con tracce ritmiche?

Scaricare brani del rhythm song App su App Store di Apple

Prova di Alive Drumming campionatore apps per assaggiare preventivamente concordata tracce di melodie popolari. E ‘quindi facile da usare l’applicazione per regolare questi per le vostre esigenze di pratica e di prestazioni. Tutte le applicazioni campionatore sono gli stessi rhythm song tracce di applicazione, ma con le tracce di esempio incluso.


Pubblicato anche su Media.


Also published on Medium.