2012-12-04 24 views
7

Sto utilizzando Video.js per riprodurre video in formato MP4 sul sito Web di un cliente. Il player utilizza il video html5 e Adobe Flash Player come riserva. (Nel mio caso sembra di utilizzare Flash sempre in modo da non so se il problema esiste nel player HTML5 nativo pure.)MP4 in Video.js non viene riprodotto fino al completo caricamento

Il video inizia a giocare solo dopo che il file * .mp4 è stato completamente caricato. Quindi nessun buffer per alcuni secondi. Il file deve essere completamente scaricato dal browser prima che inizi la riproduzione.

Quando il video è lungo, il visitatore deve attendere molto prima che possa vedere che il video sta funzionando.

La domanda ora è, è il browser, lo script (video.js) o il file video che crea quel problema.

Nel sito Web videojs.com, tuttavia, il video viene riprodotto durante il caricamento, quindi funziona correttamente. Quindi penso che non possa essere il browser.

Qualcun altro ha avuto questo problema? Come posso risolvere questo problema?
Qualsiasi consiglio è molto apprezzato!

Grazie

Max

+0

C'è qualche codice rilevante che è possibile aggiungere? – turbo

risposta

9

Ciò si verifica perché l'atomo moov del file mp4 è alla fine del file, il giocatore ha bisogno di sapere l'atomo moov prima di iniziare a giocare, è possibile spostare facilmente il moov atom all'inizio del file con MP4Box, c'è una versione gui per Windows.

Nella riga di comando di Linux si sposta il MA con: MP4Box -add my_video.mp4 my_newVideo.mp4.

Questo richiede alcuni secondi.

Maggiori informazioni: la spiegazione di Adobe di Moov atomo here

+2

Per aggiungere a questa risposta, se sei su Linux e non hai MP4Box installato, puoi farlo anche con 'qt-faststart' che viene fornito con ffmpeg credo – aphax

+0

Più di una volta sono tornato a questa risposta . Grazie ancora! –

4

Sei sicuro di avere il tag con precarico = "none", perché ho avuto lo stesso problema e che avevo precaricare = "auto". L'ho cambiato in "none", ha funzionato alla grande !!

Il mio problema non ha avuto nulla a che fare con l'atomo moov perché ho provato anche quello e non ha avuto alcun effetto. Ho persino rimosso questo video convertito e funzionava ancora con preload = "none".

kjsharks

+0

Questo ha funzionato per me, grazie mille. Suggerimenti rapidi quando si utilizza il video nel web design. Mantenere davvero i video brevi, avere un bel ciclo sottile se necessario, ma precarico = "nessuno" era ciò che lo risolveva nel browser. – HeyImArt

1

Io uso questo comando per aggiungere i metadati:

MP4Box -isma your-file.mp4 

;)

Problemi correlati