Como baixar uma parte de um vídeo com o youtube-dl OU outra coisa?

2

Gostaria de poder transferir apenas uma parte de um vídeo. Por exemplo, ser capaz de especificar um horário de início e / ou término para o download. Portanto, quando um usuário insere um horário de início e término de um vídeo, ele deve baixar apenas a parte do clipe dentro dos registros de data e hora. Isso seria possível?

    
por I'm Here 29.10.2017 / 18:01

1 resposta

4

Existe, de fato, uma pletora de técnicas disponíveis on-line para conseguir isso. Uma técnica básica é o one liner que funciona bem no meu sistema com um clipe do YouTube:

ffmpeg -i $(youtube-dl -f 22 --get-url https://www.youtube.com/watch?v=ZbZSe6N_BXs) \
-ss 00:00:10 -t 00:00:30 -c:v copy -c:a copy \
happy.mp4

As duas seções que governam o início e o término do clipe neste exemplo são:

  1. -ss 00:00:10 : Colocado após o arquivo de entrada que este codifica e descarta amostras até a marca de 10 segundos. Isto é mais lento e menos eficiente do que colocar as opções de busca antes do arquivo de entrada ( busca de entrada ) mas funciona melhor neste exemplo (em particular quando copia fluxos de áudio e vídeo )
  2. -t 00:00:30 : especifica a duração da codificação, neste caso apenas 30 segundos

Eu testei isso extensivamente com o YouTube e tudo funciona bem no meu próprio sistema ...

Referências:

por andrew.46 30.12.2017 / 01:58