Como funciona o download de vídeos streaming?

Respostas:

5

Há pelo menos duas maneiras de fazer isso:

  1. O software intercepta os fluxos de download e salva todos os vídeos que detectar (este é o cenário mais provável)

  2. O software simplesmente o copia do cache do navegador da web (embora não seja impossível, isso é muito menos provável por dois motivos: 1., requer conhecimento específico de todos os navegadores da web suportados e possivelmente também de determinados reprodutores de vídeo; e 2., nem todos os vídeos são armazenados no disco em sua totalidade, pois isso depende do player de vídeo)

    Edit: Adicionado terceira e quarta possibilidades ...

  3. O software solicita o vídeo criando a mesma solicitação de download que o plug-in visualizador faria e, em seguida, salva os dados à medida que são recebidos (isso é diferente da primeira possibilidade listada acima e pode exigir alguma engenharia reversa do players de filme escritos em Flash ou algum farejador de pacotes para determinar como o URI foi realmente construído)

  4. O software substitui o manipulador padrão dos reprodutores de vídeo (ou pode substituir o manipulador do Flash Player e atuar como manipulador provisório em sites reconhecidos como YouTube.com, Video.Google.com etc., mas para sites e Flash Conteúdo de animação que ele não reconhece especificamente, apenas transfere o trabalho para o plug-in anterior do Flash Player para criar um efeito mais "transparente" para o usuário)

Randolf Richardson
fonte
Sim, eu sei disso, mas queria algumas informações mais detalhadas sobre a primeira maneira. ie Como exatamente o software identificar um fluxo de vídeo, como o faz interceptar o fluxo etc.
Ankit Soni
Não tenho certeza de como você interceptaria um fluxo de vídeo como esse sem usar um proxy, o que não acho que esses downloaders fazem. Outra maneira de fazer isso seria usar as informações da página para localizar os arquivos de vídeo reais e baixá-los diretamente. Consulte raw.github.com/rg3/youtube-dl/2011.08.04/youtube-dl para obter mais informações.
user55325
@ user55325: Da mesma maneira que o software de detecção de pacotes o faria.
Randolf Richardson
Isso geralmente não precisa ser conectado diretamente aos drivers de rede? Certamente não é como o youtube-dl faz isso; parece que isso seria um exagero de alguma forma.
user55325
@ user55325: Bem, descrevi " pelo menos duas maneiras " - não tenho muita certeza de como o "youtube-dl" (que suponho ser o nome de um desses aplicativos de "captura de vídeo") obtém o vídeo, mas em agora você conhece dois métodos possíveis. A conexão com os drivers de rede provavelmente não é necessária, pois o Windows provavelmente fornece uma API de nível superior, mais genérica e que não requer ganchos específicos da NIC.
Randolf Richardson
2

O YouTube tem um URL exclusivo para cada vídeo. Alguns sites oferecem um script online que converte vídeos do YouTube em MP4 ou extensão de arquivo de vídeo semelhante. Esse script geralmente baixa o vídeo no servidor FFMPEG e depois o converte em MP4 ou qualquer outro formato suportado e permite baixar o vídeo em streaming.

Ryu
fonte
em relação à conversão, você está se referindo ao software ffmpeg gratuito quando diz o servidor ffmpeg? Eu não sei de que ela tenha uma opção de servidor
barlop
O vídeo é normalmente armazenado como um arquivo formatado FLV, que pode ser nativamente desempenhado pelo excelente livre e open source VLC Player: videolan.org
Randolf Richardson
@barlop, o servidor usa script para a conversão. Existem muitos scripts gratuitos e pagos que fazem esse tipo de conversão. A maioria desses scripts começou como um script clone alternativo para o youtube.
Ryu
@Ryu Eu nunca tentei ler apenas um pouco agora, mas acho que você quer dizer coisas que começaram como um clone do site do youtube, scripts de sites de compartilhamento de vídeo /, hospedagem de vídeos e soluções de compartilhamento, soluções flv do lado do servidor, pacote youtube-clone.com Interessante. Vejo que o ffmpeg inclui streaming, por isso é possível, existe um servidor ffmpeg, como você diz, para ver o que você está obtendo. Eu não tinha encontrado isso antes.
barlop 5/09/11
O driver WinCAP é usado nos servidores Windows e na área de trabalho para a captura de fluxo. Você pode pesquisar no Google "URL snooper" para saber como os fluxos podem ser capturados com esse driver na área de trabalho do Windows. Da mesma forma, existem servidores FFMPEG preparados para lidar com conteúdo de mídia, como arquivos flv, java e arquivos de mídia.
Ryu
0

Existe uma ferramenta chamada youtube-dl que faz isso extraindo todas as informações necessárias sobre o arquivo de vídeo e sua localização e, em seguida, baixando-o (via RTMPDump ou diretamente) de acordo com a especificação do usuário (muitos vídeos do YouTube estão disponíveis em vários formatos )

A fonte Python está disponível e deve ser executada no Linux, Windows e Mac OS X (desde que o interpretador Python esteja instalado).

Eu acho que é assim que a maioria dos downloaders funciona.

user55325
fonte