• Super User

    Nel sito totalphotoshop, puoi trovare degli ottimi video tutorials per acquisire le conoscenze base di Flash, soprattutto grafica e un minimo di codice, poi dovrai comprarti qualche libro di actionscript, o acquistare qualche video corso, dopo che hai le conoscenze base su come funziona e quali sono gli elementi fondamentali di Flash potrai anche fare domande sui forum, questo o altri, ma solo dopo che avrai acquisito le conoscenze di base perchè se farai domande generiche, tipo "come faccio a realizzare una tastiera" difficilmente troverai qualcuno che si prenderà la briga di darti una mano, mentre se dimostri di avere un minimo di conoscenze potrai fare domande appropriate e trovare aiuto. Sino ad un certo punto io stesso potrò darti una mano, ma in altri forum c'è gente veramente brava, solo che per la maggior parte intervengono quando si pongono domande precise.


  • User Attivo

    Dunque io ci sto provando a costruire questa tastiera ma sono incappata in un problema, ovvero associare i suoni delle note ai tasti. Dopo aver creato tutti i tasti li ho convertiti in simboli (MovieClip) e ho provato ad associare un suono al primo tasto. Il problema consiste in questo: se nella finestra delle azioni inserisco questo codice onRelease = function ({ play();} e provo l'applicazione, quando clicco con il mouse suona, ma vale per tutti i tasti. In pratica tutti i tasti rilasciano quel suono (che dovrebbe essere solo del primo tasto). Se invece inserisco questo codice ```
    tasto1.onRelease = function (){play();}


  • Super User

    Perchè sicuramente non hai assegnato il nome istanza al pulsante "tasto1", probabilmente hai chiamato il pulsante tasto1 in fase di trasformazione in clip filmato del disegno grafico ma non è questo che conta, avresti anche potuto chiamarlo pippo, la cosa importante è il nome istanza che si deve mettere nell'apposito campo che si trova nella finestra proiprietà di Flash.


  • User Attivo

    In realtà il nome d'istanza l'ho assegnato, ho messo TastoBianco e naturalmente vale per tutti i tasti che appartengono a quella tipologia. Infatti se seleziono per esempio il primo tasto, nella finestra delle proprietà mi dirà che si chiama tasto1 e che è un'istanza di TastoBianco.


  • Super User

    Bene allora usa il nome istanza nel codice perchè flash associa il codice al nome istanza che deve essere univoco quindi dagli una numerazione o metti la nota TastoBianco_do, TastoBianco_re ecc.

    
    TastoBianco1.onPress = function()
    {
    play()
    }
    
    ```Così mandi in play la root ma non mi convince per realizzare la tastiera, dove hai messo la nota?

  • User Attivo

    Non va nemmeno così.. allora per farti capire, ho un livello nominato tasti bianchi che contiene tutti i tasti bianchi, ognuno con un nome (tasto1, tasto2 ect..) e con nome d'istanza TastoBianco. Rimanendo sempre in questo livello ho fatto doppio click sul primo tasto (e nelle proprietà questa volta mi indica il formato immagine e mi dice istanza di: campione tasto bianco, ma solo perchè l'immagine l'ho creata con un programma grafico e rinominata in quel modo, non penso che centri adesso dato che qui ho applicato TastoBianco come nome d'istanza giusto?) e ho aggiunto due nuovi livelli. In uno ho creato un keyframe e vi ho associato il suono della nota (che in precedenza ho importato nella libreria Flash ed esportato come ActionScript), nell'altro ho inserito il codice che ho scritto prima nella finestra delle azioni.


  • Super User

    Hai modo di farmi avere il fla?


  • User Attivo

    Ti ho mandato un mp con il file.


  • User Attivo

    Ormai ho creato tutti i tasti e tutto funziona bene, ma adesso vorrei aggiungere la funzione registrazione, in modo che ogni volta che si smanetta con i tasti sia possibile registrare la melodia composta (e naturalmente vorrei allegare la funzione playback per ascoltare quello che si è registrato). è possibile farlo? Se si come, quale tipo di codice devo studiarmi? Grazie.


  • Super User

    Quà si entra nel difficile, non so se sia possibile farlo con tecnologia flash, proverò a chiedere ad altri flasher per vedere se ne sanno qualcosa, sempre che non siano al mare.


  • User Attivo

    Ti ringrazio! Intanto anch'io cercherò informazioni in giro, comunque penso che si possa fare, dato che la tastiera di quel sito è realizzata in Flash e sul web ne ho viste anche altre in cui dopo aver suonato una melodia è possibile ascoltare la sequenza creata con il tasto Play.


  • Super User

    Si però non sapiamo se insieme a flash è associata qualche altra tecnologia, sai che flash si può usare insieme a php ad esempio, però stavo pensando che forse più che una registrazione in senso classico, la chiamiamola "registrazione" potrebbe avvenire con l'assegnazione di un valore o l'inizializazione di variabili ad ogni nota premuta e che nel replay venisse richiamata la nota a seconda del valore della variabile.


  • User Attivo

    In giro ho trovato questo tutorial su come creare un'applicazione per registrare tramite ActionScript 3, solo che non mi è molto d'aiuto trattandosi di microfoni e videocamere. Però forse il codice di base è modificabile in base alle mie esigenza, che ne pensate?

    Scusate, come posso farvi vedere il link se non sono abiltata a postare nè immagini nè link?


  • User Attivo

    Chiedendo una mano ad altre persone ho ricevuto il seguente messaggio: "When you start recording, store the time to a variable. On each further keypress store the value of which key was pressed, and the time relative to the start time into an array. This can be used to playback the notes with the same order and timing." A questo punto penso quindi che la cosa sia fattibile anche senza usare altre tecnologie, giusto? Adesso mi servirebbe solo capire cosa fare, perchè leggere un'indicazione come questa nella mia condizione di principiante mi serve a poco. Cosa devo studiarmi per arrivare a mettere in pratica ciò?


  • User Attivo

    Date un'occhiata a questo

    evolve(punti)reintroducing(punto)com/2007/11/11/as2/record-save-audio-to-server-with-flash-media-server/

    secondo voi è possibile modificarlo in base alle mie esigenze? potrebbe essere una buona base?