Auf dieser Seite erfahren Sie, wie Sie Probleme mit der Transcoder API beheben. Die auf dieser Seite angezeigten Fehler gelten speziell für die Transcoder API. Informationen zu generischen Fehlern in Google APIs finden Sie auf der Seite Cloud APIs – Fehler.
Der Dienst meldet Fehler mithilfe des Felds error
der Jobressource. Dieses Feld enthält ein Objekt vom Typ google.rpc.Status
.
Dieses Objekt enthält zusätzliche Fehlerinformationen, u. a. den Fehlercode, die Fehlermeldung und die Fehlerdetails.
Es wird nur der erste Fehler zurückgegeben. Wenn bei einem Job mehrere Fehler auftreten, müssen Sie den zurückgegebenen Fehler beheben und den Job neu erstellen, um den nächsten Fehler zu sehen.
Cloud Storage-Berechtigung verweigert
Das folgende Problem tritt auf, wenn das Transcoder API-Dienstkonto keine Lese-/Schreibberechtigungen für die Eingabe oder Ausgabe an einem Speicherort in Cloud Storage hat.
{ "code":7, # HTTP error code 403 "message":"Permission denied for Google Cloud Storage.", "details":[ { "@type":"type.googleapis.com/google.rpc.ErrorInfo", "reason":"GCSPermissionDenied", "domain":"transcoder.googleapis.com", "metadata":{ "details":"my_service_account@my_project.iam.gserviceaccount.com does not have storage.objects.get access to gs://example/input/video.mp4." } } }
Achten Sie zur Behebung dieses Problems darauf, dass das automatisch erstellte Dienstkonto die richtigen Berechtigungen hat. Weitere Informationen zum Dienstkonto finden Sie unter Zugriff auf Cloud Storage und Pub/Sub.
Pub/Sub-Berechtigung verweigert
Das folgende Problem tritt auf, wenn das Transcoder API-Dienstkonto nicht die richtigen Berechtigungen zum Veröffentlichen in einem Pub/Sub-Thema hat.
{ "code":7, # HTTP error code 403 "message":"Permission denied for PubSub.", "details":[ { "@type":"type.googleapis.com/google.rpc.ErrorInfo", "reason":"PubSubPermissionDenied", "domain":"transcoder.googleapis.com", "metadata":{ "details":"my_service_account@my_project.iam.gserviceaccount.com does not have pubsub.topic.publish access to /projects/test-project/topic/test-topic." } } }
Achten Sie zur Behebung dieses Problems darauf, dass das automatisch erstellte Dienstkonto die erforderlichen Berechtigungen hat. Weitere Informationen zum Dienstkonto finden Sie unter Zugriff auf Cloud Storage und Pub/Sub.
Ungültiges Pub/Sub-Ziel
Das folgende Problem tritt auf, wenn das Pub/Sub-Ziel ein ungültiger Ressourcenpfad des Pub/Sub-Themas ist.
{ "code":3, # HTTP error code 400 "message":"No video stream found in ffprobe output.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.pubsubDestination.topic", "description":"InvalidPubsubDestination" } ] }
Achten Sie zur Behebung dieses Problems darauf, dass das Pub/Sub-Thema vorhanden und im richtigen Format angegeben ist. Weitere Informationen finden Sie unter Pub/Sub-Benachrichtigungen für Jobaktualisierungen.
Eingabe nicht gefunden
Das folgende Problem tritt auf, wenn die Eingabedatei nicht in Cloud Storage gefunden wird.
{ "code": 5, # HTTP error code 404 "message": "No such object: my-bucket/input.mp4", "details": [ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "InputNotFound", "domain": "transcoder.googleapis.com", "metadata": { "details": "No such object: my-bucket/input.mp4" } } ] }
Zur Behebung dieses Problems müssen Sie prüfen, ob die Eingabedatei vorhanden ist, der inputUri
der Datei korrekt ist und das Transcoder API-Dienstkonto Zugriffsberechtigung für die Datei hat. Wenn die Eingabedatei in einem anderen Projekt vorhanden ist, müssen Sie möglicherweise den Cloud Storage-Bucket veröffentlichen. Weitere Informationen finden Sie unter Zugriffssteuerung in Cloud Storage.
Konfiguration fehlt
Das folgende Problem tritt auf, wenn ein Jobkonfigurationsfeld fehlt.
{ "code":3, # HTTP error code 400 "message":"endTimeOffset of atom atom0 not set.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.editList[0].endTimeOffset", "description":"ConfigurationMissing" } ] }
Zur Behebung dieses Problems müssen Sie das in der Fehlermeldung erwähnte Feld JobConfig
prüfen.
Ungültiger Konfigurationswert
Das folgende Problem tritt auf, wenn die Jobkonfiguration einen ungültigen Wert enthält.
{ "code":3, # HTTP error code 400 "message":"config.inputs[1].preprocessingConfig.crop is invalid, the input (input0) to have a video track with width and height", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.input[1].processingConfig.crop", "description":"InvalidConfigValue" } ] }
Zur Behebung dieses Problems müssen Sie das in der Fehlermeldung erwähnte Feld JobConfig
prüfen.
Ungültiger zeitlicher Versatz
Das folgende Problem tritt auf, wenn der Versatz der Start- oder Endzeit in der Jobkonfiguration ungültig ist.
{ "code":3, # HTTP error code 400 "message":"Request field config.editList[0].startTimeOffset is 200s, expected start time less than the minimum duration of all inputs for this atom (198.86s).", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.editList[0].startTimeOffset", "description":"InvalidTimeOffset" } ] }
Achten Sie zur Behebung dieses Problems darauf, dass endTimeOffset
größer als startTimeOffset
ist.
Der jeweilige zeitliche Versatz sollte die Dauer der Eingabedateien nicht überschreiten.
Transcodierungslimits überschreiten
Das folgende Problem tritt auf, wenn eine Eingabe oder die Eingabekonfiguration die Limits für den Dienst überschreitet.
{ "code":3, # HTTP error code 400 "message":"at most 400 GB input.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.editList[0].startTimeOffset", "description":"ExceedTranscodeLimit" } ] }
Achten Sie zur Behebung dieses Problems darauf, dass die Jobkonfiguration innerhalb der Dienstlimits verbleibt.
Video fehlt
Das folgende Problem tritt auf, wenn in der Konfiguration kein Videostream angegeben oder in der Eingabedatei kein Video erkannt wurde.
{ "code":3, # HTTP error code 400 "message":"No video stream found in ffprobe output.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.input", "description":"VideoMissing" } ] }
Prüfen Sie zur Behebung dieses Problems, ob in der Jobkonfiguration ein Videostream angegeben wurde und die Eingabedatei einen Videostream enthält.
Audio fehlt
Das folgende Problem tritt auf, wenn in der editList
kein Audiotrack angegeben oder in der Eingabedatei kein Audiotrack erkannt wird.
{ "code":3, # HTTP error code 400 "message":"atom atom0 does not have any inputs (input0) with an audio track.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.editList[0].input[0]", "description":"AudioMissing" } ] }
Prüfen Sie zur Behebung dieses Problems, ob in der Jobkonfiguration ein Audiotrack angegeben ist und die Eingabedatei einen Audiotrack enthält.
Text fehlt
Das folgende Problem tritt auf, wenn ein Textstream angegeben ist, aber in der Bearbeitungsliste oder in der Eingabedatei kein Texttrack verfügbar ist.
{ "code":3, # HTTP error code 400 "message":"atom atom0 does not have any inputs (input0) with a text track.", "details":[ { "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.editList[0].input[0]", "description":"TextMissing" } ] }
Wenn in der Jobkonfiguration ein Texttrack angegeben ist, muss dieser in der Datei editList
und in der Eingabedatei vorhanden sein. Siehe Beispielkonfiguration.
Gültiger Track oder Kanal fehlt
Das folgende Problem tritt auf, wenn sich der Eingabetrack oder -kanal in einer Elemetarstreamzuordnung nicht auf einen gültigen Audio-/Textstream-Track oder -kanal bezieht.
{ "code":3, # HTTP error code 400 "message":"Request field config.elementaryStreams[0].mapping[0].channels[0].inputs[0].track is 2, no valid audio track available, expected an index to a valid audio track in input input0.", "details":[ "@type":"type.googleapis.com/google.rpc.BadRequest", "field":"config.elementaryStreams[0].mapping[0].channels[0].inputs[0].track", "description":"ValidTrackOrChannelMissing" ] }
Prüfen Sie zur Behebung dieses Problems das Eingabevideo/Audio/den Text und die Elemetarstreamzuordnung (siehe Beispielstreamzuordnungen).
Nicht unterstützte Eingabe
Das folgende Problem tritt auf, wenn die Eingabedatei beschädigt ist oder nicht in einem unterstützten Format vorliegt.
{ "code":3, # HTTP error code 400 "message":"Input files are not supported", "details": [ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "UnsupportedInput", "domain": "transcoder.googleapis.com", "metadata": { "details": "Input is not supported. Input key = example_key, input uri = gs://example/input/video.mp4." } } ] }
Prüfen Sie zur Behebung dieses Problems, ob die Eingabedatei gültig ist und in einem unterstützten Format vorliegt.
Falsch formatierte Eingabe
Das folgende Problem tritt auf, wenn die Eingabedatei fehlerhaft ist und nicht decodiert werden kann.
{ "code":3, # HTTP error code 400 "message":"Input is malformed and cannot be decoded.", "details": [ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "MalformattedInput", "domain": "transcoder.googleapis.com", "metadata": { "details": "Input is malformed. Input key = example_key, input uri = gs://example/input/video.mp4." } } ] }
Prüfen Sie zur Behebung dieses Problems, ob die Eingabedatei gültig ist und in einem unterstützten Format vorliegt.
Interner Fehler
Das folgende Problem tritt auf, wenn der interne Dienstfehler verhindert hat, dass der Job erfolgreich abgeschlossen wurde.
{ "code":13, # HTTP error code 500 "message":"InternalError", "details":[ { "@type":"type.googleapis.com/google.rpc.ErrorInfo", "reason":"InternalError", "domain":"transcoder.googleapis.com", "metadata":{ "details":"Failed to transcode job" } } ] }
So beheben Sie das Problem:
- Prüfen Sie, ob die Eingabedatei gültig ist und in einem unterstützten Format vorliegt.
- Prüfen Sie, ob die
JobConfig
fehlerfrei ist. - Wiederholen Sie den Job an einem anderen Ort.
- Wiederholen Sie den Job, nachdem Sie
optimization
deaktiviert haben.
Weitere Supportoptionen finden Sie unter Support erhalten.