NodeJS, come si mandano i wav al client ?

di il
22 risposte

22 Risposte - Pagina 2

  • Re: NodeJS, come si mandano i wav al client ?

    McDuck37 ha scritto:


    Ho provato ad incollare il codice in app.js ma poi non so come metterlo in comunicazione con il tag <audio>
    Il codice non deve essere "messo in comunicazione"... serve a restituire il file audio quando si accede a quell'indirizzo, quindi basta mettere l'URL nell'elemento <audio> di HTML5 per far riprodurre il suono.

    McDuck37 ha scritto:


    Inoltre ho visto che mettendo nel tag audio l'url dell' app.get che restituisce il file audio, il problema è risolto cioè il file audio viene riprodotto anche da remoto.
    Infatti questo è tutto ciò che va fatto.

    McDuck37 ha scritto:


    Potresti però dirmi in questo caso come faccio, se possibile, a far sparire la barra di controllo ed a riprodurre il file in automatico senza premere play?
    In questa pagina trovi gli attributi dell'elemento <audio> tra cui quelli che ti interessano.
    Ho controllato quella pagine ma anche un po in giro e ogni volta che metto autoplay e tolgo control, la barra non viene visualizzata e non parte nulla. Anche quando lascio control e metto autoplay (quindi con la barra) non parte nulla.Devo sempre premere io play
  • Re: NodeJS, come si mandano i wav al client ?

    McDuck37 ha scritto:


    Ho controllato quella pagine ma anche un po in giro e ogni volta che metto autoplay e tolgo control, la barra non viene visualizzata e non parte nulla. Anche quando lascio control e metto autoplay (quindi con la barra) non parte nulla.Devo sempre premere io play
    Pubblica il codice HTML che hai scritto, altrimenti come si fa ad analizzare dov'è il problema?
  • Re: NodeJS, come si mandano i wav al client ?

    
    <audio id="audio" autoplay> </audio>
    
    
    <script>
    
    
        document.getElementById("audio").src="/audio"
      </script>
    
    Ho provato anche aggiungendo body doctype etc ma niente
  • Re: NodeJS, come si mandano i wav al client ?

    McDuck37 ha scritto:


    Ho provato anche aggiungendo body doctype etc ma niente
    Non è una cosa da provare: quegli elementi non sono un ornamento superfluo, ma indispensabili alla costruzione di una qualsiasi pagina HTML5 che si possa definire tale, altrimenti stiamo solo parlando di un pezzo di HTML buttato a casaccio!

    Crea una pagina HTML corretta seguendo gli esempi degli innumerevoli link che ti ho già fornito.

    Lo script JavaScript non è necessario, tant'è che il percorso del file audio può essere indicato direttamente come attributo dell'elemento <audio>, esattamente come negli esempi che si trovano nella pagina che ti ho elencato, come questo.

    Aggiungi anche un titolo o un paragrafo alla pagina, in modo da essere sicuro che questa venga effettivamente restituita correttamente dal server, e accertati anche che il percorso del file audio che hai scritto nell'attributo src sia corretto: in caso di dubbi, tasto F12 del browser e si analizza ciò che avviene sulla rete nel caricamento della pagina.

    In alternativa, puoi copiare/incollare l'indirizzo nella barra del browser e vedere se questo riproduce il file sonoro come si deve.

    Insomma, non si può procedere senza leggere la documentazione, buttare due righe di codice a caso e sperare che tutto funzioni, o quantomeno stupirsi quando ciò non accade.
  • Re: NodeJS, come si mandano i wav al client ?

    Ho fatto tutto questo ma continua a non riprodurre in automatico mentre copiando l'indirizzo nella barra, si, parte in automatico
  • Re: NodeJS, come si mandano i wav al client ?

    Ho risolto, il problema era che nelle impostazioni del browser veniva bloccato l'autoplay.

    Ora però ho dei problemi di latenza del audio quando apro il sito da remoto. Siccome si tratta di un gioco devo per forza ridurre i tempi di latenza. Come si potrebbe fare? (forse devo riaprire un altro post per questo?)
  • Re: NodeJS, come si mandano i wav al client ?

    McDuck37 ha scritto:


    Ho fatto tutto questo ma continua a non riprodurre in automatico mentre copiando l'indirizzo nella barra, si, parte in automatico
    Se dici che hai provato ma "niente", è chiaro che io capisco che non funzioni nulla, che è sinonimo di niente.
    Se invece il problema era solo legato alla partenza in automatico, ti avrei detto direttamente quello che hai scoperto appena dopo.

    McDuck37 ha scritto:


    Ho risolto, il problema era che nelle impostazioni del browser veniva bloccato l'autoplay.
    Appunto.

    McDuck37 ha scritto:


    Ora però ho dei problemi di latenza del audio quando apro il sito da remoto. Siccome si tratta di un gioco devo per forza ridurre i tempi di latenza. Come si potrebbe fare? (forse devo riaprire un altro post per questo?)
    Al netto di riaprire un altro post, stai presentando uno scenario che è completamente diverso da quello iniziale: un conto è avere una pagina che fa riferimento a un file audio e lo riproduce esattamente come avverrebbe con una immagine, un conto è usare quell'audio come risorsa da riprodurre sul client, eventualmente mettendola in cache o tenendola in memoria, per andare a riprodurla creando un gioco, che prevede tutta un'altra serie di dinamiche e di accorgimenti, nonché di esperienza sul Web e sui relativi linguaggi, che visto il punto di partenza di questa discussione temo saranno un "bagno di sangue", considerando che il tuo approccio preclude completamente qualsiasi studio o documentazione preventiva, o almeno questo è quello che appare.

    Per intenderci, almeno personalmente non mi metterò a chiedere codice e fornire link per ogni singola problematica relativa alla creazione di un gioco, che è un affare complesso: ci vorranno mesi a una discussione chilometrica.

    Prima studia bene articoli, post e documentazione sulle problematiche di costruire questo genere di applicazioni e familiarizza con JavaScript lato client e suoi framework, poi "divide et impera", ossia affronta un singolo problema alla volta.

    Partire dalla riproduzione di un file audio in una pagina Web e poi parlare di latenza perché l'obiettivo era sviluppare un gioco lascia piuttosto disorientati e la risposta non potrà che essere quella indicata sopra.

    E' un po' come chiedere come si cambia una gomma, e poi scoprire che l'obiettivo era quello di assistere una monoposto di F1 per il pit stop durante la gara: l'azione è la stessa ma strumenti, modalità, percorsi e tutto il resto è diverso.
  • Re: NodeJS, come si mandano i wav al client ?

    Questo della latenza è davvero l'ultimo problema. Aprirò una nuova discussione per alcune delucidazioni. Grazie
    +
Devi accedere o registrarti per scrivere nel forum
22 risposte