FFMPEG verwendet die Google Drive API anstelle der freigegebenen URL

Nov 25 2020

Wir verwenden FFMPEG, um eine Google Drive-URL in eine Knotenanwendung zu streamen.

Gibt es eine FFMPEG-Methode oder -Bibliothek, mit der wir mithilfe der Google Drive-API anstelle der öffentlichen öffentlichen Standard-URL zu FFMPEG streamen können ?

Im Moment funktioniert die Verwendung der URL einwandfrei, wenn die Dateigröße <100 MB ist. Bei größeren Dateien wird jedoch eine Fehlermeldung angezeigt:

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

Dies liegt daran, dass wir die lästige Straßensperrseite für gDrive-Viren erreichen:

Antworten

2 Tanaike Nov 25 2020 at 22:03

Aufgrund Ihrer Frage habe ich verstanden, dass Ihre Datei öffentlich geteilt wird. In diesem Fall muss der Endpunkt von https://drive.google.com/uc?export=download&id=fileIdin zwei Schritten verarbeitet werden, wenn die Dateigröße groß wird . Ref Dies wurde bereits in Ihrer Frage erwähnt.

Um dies zu vermeiden, möchte ich in dieser Antwort vorschlagen, die Methode "Files: get" in der Drive API und im API-Schlüssel zu verwenden. Wenn die Laufwerks-API und der API-Schlüssel für die öffentlich freigegebene Datei verwendet werden, ist kein zweistufiger Ablauf erforderlich, der nur durch Ändern der URL verwendet werden kann.

Endpunkt:

https://www.googleapis.com/drive/v3/files/{fileId}?alt=media&key={your API key}
  • Wenn Sie beispielsweise als Test den Befehl curl verwenden, können Sie diesen verwenden curl "https://www.googleapis.com/drive/v3/files/{fileId}?alt=media&key={your API key}".

Verweise:

  • Laden Sie eine auf Google Drive gespeicherte Datei herunter
  • Dateien: erhalten
  • API-Schlüssel verwenden