FFMPEG usando la API de Google Drive en lugar de la URL compartida

Nov 25 2020

Estamos usando FFMPEG para transmitir una URL de Google Drive a una aplicación de nodo.

¿Existe un método o biblioteca FFMPEG que podamos usar para transmitir a FFMPEG usando la API de Google Drive en lugar de usar la URL compartida pública estándar?

Por el momento, el uso de la URL funciona bien si el tamaño del archivo es <100 MB, pero con archivos más grandes obtenemos un error:

https://drive.google.com/uc?export=download&id=fileId: Invalid data found when processing input

Esto se debe a que llegamos a la molesta página de obstáculos del virus gDrive:

Respuestas

2 Tanaike Nov 25 2020 at 22:03

De su pregunta, entendí que su archivo se comparte públicamente. En este caso, cuando el tamaño del archivo aumenta, https://drive.google.com/uc?export=download&id=fileIdse requiere que el punto final de se procese con 2 pasos. Ref. Esto también se ha mencionado en su pregunta.

En esta respuesta, para evitar esto, me gustaría proponer utilizar el método de "Archivos: obtener" en la API de Drive y la clave API. Cuando se usa la API de Drive y la clave de API para el archivo compartido públicamente, no se requiere un flujo de 2 pasos y puede usarlo cambiando solo la URL.

Punto final:

https://www.googleapis.com/drive/v3/files/{fileId}?alt=media&key={your API key}
  • Por ejemplo, como prueba, cuando usa el comando curl, puede usar curl "https://www.googleapis.com/drive/v3/files/{fileId}?alt=media&key={your API key}".

Referencias:

  • Descarga un archivo almacenado en Google Drive
  • Archivos: obtener
  • Usando claves API