Pemecahan masalah

Halaman ini menunjukkan cara menyelesaikan masalah pada Transcoder API. Error yang ditampilkan di halaman ini khusus untuk Transcoder API. Untuk mengetahui informasi tentang error umum di seluruh Google API, lihat halaman Error Cloud API.

Layanan ini melaporkan error menggunakan kolom error resource tugas. Kolom ini berisi objek dengan jenis google.rpc.Status. Objek ini berisi informasi error tambahan, termasuk kode error, pesan error, dan detail error.

Hanya error pertama yang ditampilkan. Jika tugas mengalami beberapa error, Anda harus memperbaiki error yang ditampilkan dan membuat ulang tugas untuk melihat error berikutnya.

Izin Cloud Storage ditolak

Masalah berikut terjadi jika akun layanan Transcoder API tidak memiliki izin baca/tulis untuk input atau output di suatu lokasi di 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."
         }
      }
}

Untuk mengatasi masalah ini, pastikan akun layanan yang dibuat secara otomatis memiliki izin yang benar. Lihat Akses ke Cloud Storage dan Pub/Sub untuk mengetahui informasi selengkapnya tentang akun layanan.

Izin Pub/Sub ditolak

Masalah berikut terjadi jika akun layanan Transcoder API tidak memiliki izin yang sesuai untuk memublikasikan ke topik 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."
         }
      }
}

Untuk mengatasi masalah ini, pastikan akun layanan yang dibuat secara otomatis memiliki izin yang benar. Lihat bagian Akses ke Cloud Storage dan Pub/Sub untuk mengetahui informasi selengkapnya tentang akun layanan.

Tujuan Pub/Sub tidak valid

Masalah berikut terjadi jika tujuan Pub/Sub adalah jalur resource topik Pub/Sub yang tidak valid.

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

Untuk mengatasi masalah ini, pastikan topik Pub/Sub ada dan ditentukan dalam format yang benar. Lihat notifikasi Pub/Sub untuk info terbaru tentang lowongan guna mengetahui informasi selengkapnya.

Masukan tidak ditemukan

Masalah berikut terjadi saat file input tidak dapat ditemukan di 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"
        }
      }
    ]
}

Untuk mengatasi masalah ini, pastikan file input ada, inputUri pada file tersebut sudah benar, dan akun layanan Transcoder API memiliki izin untuk mengakses file tersebut. Jika file input ada di project lain, Anda mungkin perlu mengubah bucket Cloud Storage menjadi publik (lihat Kontrol akses Cloud Storage untuk informasi selengkapnya).

Konfigurasi tidak ada

Masalah berikut terjadi saat kolom konfigurasi tugas tidak ada.

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

Untuk mengatasi masalah ini, periksa kolom JobConfig yang disebutkan dalam pesan error.

Nilai konfigurasi tidak valid

Masalah berikut terjadi saat konfigurasi tugas berisi nilai yang tidak valid.

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

Untuk mengatasi masalah ini, periksa kolom JobConfig yang disebutkan dalam pesan error.

Selisih waktu tidak valid

Masalah berikut terjadi jika offset waktu mulai atau offset waktu berakhir dalam konfigurasi tugas tidak valid.

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

Untuk mengatasi masalah ini, pastikan endTimeOffset lebih besar dari startTimeOffset. Kedua offset tidak boleh melebihi durasi file input.

Melebihi batas transcoding

Masalah berikut terjadi saat input atau konfigurasi input melebihi batas layanan.

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

Untuk mengatasi masalah ini, pastikan konfigurasi tugas tetap berada dalam batas layanan.

Video tidak ada

Masalah berikut terjadi saat tidak ada streaming video yang ditentukan dalam konfigurasi atau tidak ada video yang terdeteksi dalam file 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"
      }
   ]
}

Untuk mengatasi masalah ini, pastikan streaming video ditentukan dalam konfigurasi tugas dan file input berisi streaming video.

Audio tidak ada

Masalah berikut terjadi saat tidak ada trek audio yang ditentukan di editList atau tidak ada trek audio yang terdeteksi dalam file 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"
      }
   ]
}

Untuk mengatasi masalah ini, pastikan trek audio ditentukan dalam konfigurasi tugas dan file input berisi trek audio.

Teks tidak ada

Masalah berikut terjadi saat aliran teks ditentukan, tetapi tidak ada trek teks yang tersedia dalam daftar edit atau dalam file 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"
      }
   ]
}

Jika trek teks ditentukan dalam konfigurasi tugas, pastikan trek tersebut ada di editList dan file input. Lihat contoh konfigurasi.

Trek atau saluran yang valid tidak ada

Masalah berikut terjadi saat saluran input atau saluran dalam pemetaan streaming dasar tidak merujuk pada saluran atau trek streaming audio/teks yang valid.

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

Untuk mengatasi masalah ini, periksa video/audio/teks input dan pemetaan streaming dasar (lihat contoh pemetaan streaming).

Input tidak didukung

Masalah berikut terjadi saat file input rusak atau tidak dalam format yang didukung.

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

Untuk mengatasi masalah ini, periksa apakah file input valid dan dalam format yang didukung.

Format input salah

Masalah berikut terjadi saat format file input salah dan tidak dapat didekode.

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

Untuk mengatasi masalah ini, periksa apakah file input valid dan dalam format yang didukung.

Error internal

Masalah berikut terjadi saat error layanan internal mencegah tugas berhasil diselesaikan.

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

Untuk mengatasi masalah ini, periksa apakah file input valid dan dalam format yang didukung. Pastikan JobConfig bebas dari error.

Lihat Mendapatkan dukungan untuk opsi dukungan lebih lanjut.