Riproduci file video (disco rigido) locale con tag video HTML5?

Voglio raggiungere il seguente.

 

L’intento è che l’utente sia in grado di selezionare un file dal proprio disco rigido.

E la ragione per non caricare è ovviamente costi di trasmissione e quota di archiviazione. Non ci sarà alcun motivo per salvare il file.

È ansible?

È ansible riprodurre un file video locale.

   

Quando un file viene selezionato tramite l’elemento di input :

  1. l’evento ‘change’ viene triggersto
  2. Ottieni il primo object File dal input.files
  3. Crea un URL object che punta all’object File
  4. Imposta l’URL dell’object sulla proprietà video.src
  5. Lean back e guarda 🙂

http://jsfiddle.net/dsbonev/cCCZ2/embedded/result,js,html,css/

Sono entrato in questo problema qualche tempo fa. Il sito Web non ha potuto accedere al file video sul PC locale a causa delle impostazioni di sicurezza (davvero comprensibile) SOLO il modo in cui potevo aggirarlo era eseguire un server web sul PC locale (server2Go) e tutti i riferimenti al file video dal web erano localhost / video.mp4

 

Non è una soluzione ideale ma ha funzionato per me.

Ciò sarà ansible solo se il file HTML viene anche caricato con il protocollo del file dal disco rigido dell’utente locale.

Se la pagina HTML è servita da HTTP da un server, non puoi accedere a nessun file locale specificandoli in un attributo src con il protocollo file:// , poiché ciò significherebbe che potresti accedere a qualsiasi file sul computer degli utenti senza l’utente sapendo quale sarebbe un enorme rischio per la sicurezza.

Come ha detto Dimitar Bonev, è ansible accedere a un file se l’utente lo seleziona utilizzando un selettore di file per conto proprio. Senza quel passaggio, è vietato da tutti i browser per buoni motivi. Quindi, mentre la sua risposta potrebbe rivelarsi utile per molte persone, allenta il requisito dal codice nella domanda originale.