Come funziona il download di video in streaming?


Risposte:


5

Esistono almeno due modi per ottenere questo risultato:

  1. Il software intercetta i flussi di download e salva tutti i video rilevati (questo è lo scenario più probabile)

  2. Il software lo copia semplicemente dalla cache del browser web (anche se non impossibile, questo è molto meno probabile per due motivi: 1., richiede una conoscenza specifica di tutti i browser Web supportati e possibilmente anche di alcuni lettori video; e 2., non tutti i video sono memorizzati su disco nella loro interezza in quanto dipende dal lettore video)

    Modifica: aggiunte la terza e la quarta possibilità ...

  3. Il software richiede il video creando la stessa richiesta di download del plug-in del visualizzatore, quindi salva i dati man mano che vengono ricevuti (questo è diverso dalla prima possibilità che ho elencato sopra e potrebbe richiedere un reverse engineering del riproduttori di film scritti in Flash o alcuni sniffer di pacchetti per determinare come è stato effettivamente costruito l'URI)

  4. Il software sostituisce il gestore predefinito per i lettori video (oppure può sostituire il gestore Flash Player e fungere da gestore temporaneo su siti Web che riconosce come YouTube.com, Video.Google.com, ecc., Ma per siti Web e Flash Contenuti di animazione che non riconosce in modo specifico passa semplicemente il lavoro al plug-in Flash Player precedente per creare un effetto più "trasparente" per l'utente)


Sì, lo so, ma volevo alcune informazioni più dettagliate sul primo modo. vale a dire come il software identifica esattamente un flusso video, come intercetta il flusso ecc.
Ankit Soni

Non sono sicuro di come intercetteresti un flusso video del genere senza utilizzare un proxy, cosa che non credo facciano quei downloader. Un altro modo per farlo sarebbe quello di utilizzare le informazioni dalla pagina per individuare i file video effettivi e scaricarli direttamente. Consulta raw.github.com/rg3/youtube-dl/2011.08.04/youtube-dl per ulteriori informazioni.
user55325

@ user55325: allo stesso modo il software di sniffing dei pacchetti lo farebbe.
Randolf Richardson,

Di solito non è necessario collegarlo direttamente ai driver di rete? Certamente non è come lo fa YouTube-dl; sembra che sarebbe eccessivo in qualche modo.
user55325

@ user55325: Beh, ho descritto " almeno due modi " - Non sono particolarmente sicuro di come "youtube-dl" (che presumo sia il nome di una di queste applicazioni "video grabbing") ottenga il video, ma a almeno ora conosci due possibili metodi. Probabilmente non è necessario collegarsi ai driver di rete, poiché Windows probabilmente fornisce un'API di livello superiore che è più generica e non richiede hook specifici della NIC.
Randolf Richardson,

2

YouTube ha un URL univoco per ogni video. Alcuni siti offrono uno script online che converte i video di YouTube in MP4 o estensioni di file video simili. Lo script di solito scarica il video sul proprio server FFMPEG e quindi lo converte in MP4 o in qualsiasi altro formato supportato e consente di scaricare quel video in streaming.


per quanto riguarda la conversione, ti riferisci al software gratuito ffmpeg quando dici server ffmpeg? Non so che abbia un'opzione server
barlop

Il video viene normalmente archiviato come file in formato .FLV che può essere riprodotto in modo nativo dall'eccellente lettore VLC gratuito e open source: videolan.org
Randolf Richardson

@barlop, il server utilizza lo script per la conversione. Esistono molti script gratuiti ea pagamento che eseguono questo tipo di conversione. La maggior parte di questi script è iniziata come uno script clone alternativo per YouTube.
Ryu,

@Ryu Non l'ho mai provato leggendo un po 'adesso ma immagino che intendi cose che sono iniziate come un clone del sito Web di YouTube, script di siti Web di condivisione video /, soluzioni di hosting e condivisione video, convertitore flv lato server, come questo pacchetto youtube-clone.com Interessante. Vedo che ffmpeg include lo streaming, quindi potremmo essere in grado, esiste un server ffmpeg, come dici tu, quindi in un certo senso vedi a cosa stai arrivando. Non l'avevo mai incontrato prima.
barlop

Il driver WinCAP viene utilizzato su server Windows e desktop per l'acquisizione di flussi. Puoi google "URL snooper" per come acquisire i flussi con questo driver sul desktop di Windows. Allo stesso modo ci sono server FFMPEG che sono pronti a gestire contenuti multimediali come file flv, java e file multimediali.
Ryu,

0

Esiste uno strumento chiamato youtube-dl che lo fa estraendo tutte le informazioni necessarie sul file video e sulla sua posizione, quindi scaricandolo (tramite RTMPDump o direttamente) in base alle specifiche dell'utente (molti video di YouTube sono disponibili in più formati ).

Il sorgente Python è disponibile e dovrebbe essere eseguito su Linux, Windows e Mac OS X (purché sia ​​installato l'interprete Python).

Penso che sia così che funziona la maggior parte dei downloader.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.