FFMPEG verwendet die Google Drive API anstelle der freigegebenen URL
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
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=fileId
in 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