Risoluzione dei problemi

Questa pagina mostra come risolvere i problemi relativi all'API Transcoder. Errori mostrati in questa pagina sono specifici dell'API Transcoder. Per informazioni su errori generici nelle API di Google, consulta le API Cloud pagina Errori.

Il servizio segnala gli errori utilizzando il campo error della risorsa job. Questo campo contiene un oggetto di tipo google.rpc.Status. Questo oggetto contiene ulteriori informazioni sull'errore, tra cui il codice di errore, e i dettagli dell'errore.

Viene restituito solo il primo errore. Se un job rileva più errori, devi correggere l'errore restituito e ricreare il job per visualizzare l'errore successivo.

Autorizzazione Cloud Storage negata

Il seguente problema si verifica quando l'account di servizio dell'API Transcoder non dispongono dell'autorizzazione di lettura/scrittura per l'input o l'output in una posizione in di archiviazione ideale in Cloud Storage.

{
   "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."
         }
      }
}

Per risolvere il problema, assicurati che l'account di servizio creato automaticamente abbia le autorizzazioni corrette. Consulta: Accesso a Cloud Storage e Pub/Sub per ulteriori informazioni sull'account di servizio.

Autorizzazione Pub/Sub negata

Il seguente problema si verifica quando l'account di servizio dell'API Transcoder non dispone delle autorizzazioni appropriate per la pubblicazione in un argomento Pub/Sub.

{
   "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."
         }
      }
}

Per risolvere il problema, assicurati che l'account di servizio creato automaticamente abbia le autorizzazioni corrette. Vedi sezione Accesso a Cloud Storage e Pub/Sub per ulteriori informazioni sull'account di servizio.

Destinazione Pub/Sub non valida

Il seguente problema si verifica quando la destinazione Pub/Sub è un percorso della risorsa dell'argomento Pub/Sub non valido.

{
   "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"
      }
   ]
}

Per risolvere il problema, assicurati che l'argomento Pub/Sub esista e che sia specificato nel formato corretto. Consulta: Notifiche Pub/Sub per gli aggiornamenti dei job per ulteriori informazioni.

Input non trovato

Il seguente problema si verifica quando non è possibile trovare il file di input su Cloud Storage.

{
    "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"
        }
      }
    ]
}

Per risolvere il problema, assicurati che il file di input esista, inputUri al file sia corretto e che l'account di servizio dell'API Transcoder le autorizzazioni per accedere al file. Se il file di input esiste in un altro progetto, potresti dover rendere pubblico il bucket Cloud Storage (vedi Controllo dell'accesso di Cloud Storage informazioni).

Configurazione mancante

Il seguente problema si verifica quando manca un campo di configurazione del job.

{
   "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"
      }
   ]
}

Per risolvere il problema, controlla Campo JobConfig menzionato in il messaggio di errore.

Valore di configurazione non valido

Il seguente problema si verifica quando la configurazione del job contiene un valore non valido.

{
   "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"
      }
   ]
}

Per risolvere il problema, controlla il campo JobConfig indicato nel messaggio di errore.

Offset temporale non valido

Il seguente problema si verifica quando l'offset dell'ora di inizio o dell'ora di fine nella configurazione del job non è valido.

{
   "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"
      }
   ]
}

Per risolvere il problema, assicurati che endTimeOffset sia maggiore di startTimeOffset. Entrambi gli offset non devono superare la durata dei file di input.

Superare i limiti di transcodifica

Il seguente problema si verifica quando un input o la configurazione di input supera il valore limiti per il servizio.

{
   "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"
      }
   ]
}

Per risolvere il problema, assicurati che la configurazione del job rientri nei limiti di servizio.

Video mancante

Il seguente problema si verifica quando non viene specificato alcun stream video nella configurazione o non viene rilevato alcun video nel file di input.

{
   "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"
      }
   ]
}

Per risolvere il problema, verifica che sia specificato uno stream video nella configurazione del job e che di input contiene uno stream video.

Audio mancante

Il seguente problema si verifica quando non viene specificata alcuna traccia audio nel editList oppure non viene rilevata alcuna traccia audio nel file di input.

{
   "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"
      }
   ]
}

Per risolvere il problema, verifica che nella configurazione del job sia specificata una traccia audio e che il file di input contenga una traccia audio.

Testo mancante

Il seguente problema si verifica quando viene specificato un stream di testo, ma non è disponibile alcuna traccia di testo nell'elenco di modifica o nel file di input.

{
   "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"
      }
   ]
}

Se nella configurazione del job è specificato un canale di testo, assicurati che esista nel file editList e nel file di input. Consulta un esempio di configurazione.

Traccia valida o canale mancante

Il seguente problema si verifica quando la traccia o il canale di input in un La mappatura degli stream non si riferisce a una traccia o a un canale dello stream audio/di testo validi.

{
   "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"
   ]
}

Per risolvere il problema, controlla il video/audio/testo di input e la mappatura dello stream di base (vedi esempi di mappature dello stream).

Input non supportato

Il seguente problema si verifica quando il file di input è danneggiato o non in un file formato.

{
   "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."
        }
      }
    ]
}

Per risolvere il problema, verifica che il file di input sia valido e in un formato supportato.

Formato non valido dei dati

Il seguente problema si verifica quando il file di input ha un formato non valido e non può essere decodificato.

{
   "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."
        }
      }
    ]
}

Per risolvere il problema, verifica che il file di input sia valido e in un formato supportato.

Errore interno

Il seguente problema si verifica quando un errore del servizio interno ha impedito al job di completata correttamente.

{
   "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"
         }
      }
   ]
}

Per provare a risolvere il problema:

  1. Verifica che il file di input sia valido e in un formato supportato.
  2. Verifica che JobConfig sia esente da errori.
  3. Riprova il job in una posizione diversa.
  4. Riprova il job con optimization disattivato.

Consulta Ricevere assistenza per ulteriore supporto le opzioni di CPU e memoria disponibili.