Transcoder une vid�o avec l'API Transcoder

Cette page vous explique comment cr�er une t�che de transcodage vid�o de base � l'aide des param�tres par d�faut de l'API Transcoder et de curl, Windows�PowerShell, ou les biblioth�ques clientes.

Vous pouvez �galement suivre ce guide de d�marrage rapide directement dans la console Google Cloud. � l'aide de l'un des langages de programmation suivants:

Avant de commencer

  1. Connectez-vous � votre compte Google�Cloud. Si vous d�butez sur Google�Cloud, cr�ez un compte pour �valuer les performances de nos produits en conditions r�elles. Les nouveaux clients b�n�ficient �galement de 300�$ de cr�dits gratuits pour ex�cuter, tester et d�ployer des charges de travail.
  2. Install the Google Cloud CLI.
  3. To initialize the gcloud CLI, run the following command:

    gcloud init
  4. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Transcoder API:

    gcloud services enable transcoder.googleapis.com
  7. Create local authentication credentials for your user account:

    gcloud auth application-default login
  8. Grant roles to your user account. Run the following command once for each of the following IAM roles: roles/transcoder.admin, roles/storage.admin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="USER_IDENTIFIER" --role=ROLE
    • Replace PROJECT_ID with your project ID.
    • Replace USER_IDENTIFIER with the identifier for your user account. For example, user:myemail@example.com.

    • Replace ROLE with each individual role.
  9. Install the Google Cloud CLI.
  10. To initialize the gcloud CLI, run the following command:

    gcloud init
  11. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  12. Make sure that billing is enabled for your Google Cloud project.

  13. Enable the Transcoder API:

    gcloud services enable transcoder.googleapis.com
  14. Create local authentication credentials for your user account:

    gcloud auth application-default login
  15. Grant roles to your user account. Run the following command once for each of the following IAM roles: roles/transcoder.admin, roles/storage.admin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="USER_IDENTIFIER" --role=ROLE
    • Replace PROJECT_ID with your project ID.
    • Replace USER_IDENTIFIER with the identifier for your user account. For example, user:myemail@example.com.

    • Replace ROLE with each individual role.

Cr�er un bucket Cloud�Storage

  1. In the Google Cloud console, go to the Cloud Storage Buckets page.

    Go to Buckets page

  2. Click Create bucket.
  3. On the Create a bucket page, enter your bucket information. To go to the next step, click Continue.
    • For Name your bucket, enter a unique bucket name. Don't include sensitive information in the bucket name, because the bucket namespace is global and publicly visible.
    • For Choose where to store your data, do the following:
      • Select a Location type option.
      • Select a Location option.
    • For Choose a default storage class for your data, select the following: Standard.
    • For Choose how to control access to objects, select an Access control option.
    • For Advanced settings (optional), specify an encryption method, a retention policy, or bucket labels.
  4. Click Create.
  5. Cliquez sur Cr�er un dossier et saisissez un nom pour cr�er un dossier dans lequel enregistrer les sorties vid�o encod�es.

Transcoder une vid�o � l'aide de l'API Transcoder

Vous devez disposer d'une vid�o d'au moins 5�secondes sur votre ordinateur local pour les �tapes suivantes (�chantillon vid�o). Consultez la liste des formats d'entr�e et de sortie compatibles.

Importer une vid�o dans votre bucket Cloud�Storage

  1. Dans la console Google Cloud, acc�dez � la page "Navigateur Cloud�Storage".
    Acc�der � la page du navigateur Cloud�Storage
  2. Cliquez sur le nom de votre bucket pour l'ouvrir.
  3. Cliquez sur Upload files (Importer des fichiers).
  4. S�lectionnez un fichier vid�o � importer � partir de votre ordinateur local.

Votre vid�o est d�sormais enregistr�e dans le bucket Cloud�Storage.

Cr�er une t�che de transcodage

Par d�faut, l'API Transcoder transcode la vid�o � l'aide de l'encodage H.264 et du packaging MP4, HLS et MPEG-DASH. Pour chaque vid�o d'entr�e, elle fournit des rendus de sortie en haute d�finition (1�280 x 720�pixels) et de d�finition standard (640 x 360�pixels).

Pour cr�er une t�che, utilisez la m�thode projects.locations.jobs.create. Les exemples de code suivants cr�ent une t�che de transcodage de base � l'aide d'un pr�r�glage.

REST

Avant d'utiliser les donn�es de requ�te ci-dessous, effectuez les remplacements suivants�:

  • PROJECT_ID�: ID de votre projet Google�Cloud r�pertori� dans les param�tres IAM.
  • LOCATION�: emplacement dans lequel votre t�che sera ex�cut�e. Utilisez l'une des r�gions disponibles.
    Afficher les lieux
    • us-central1
    • us-west1
    • us-west2
    • us-east1
    • us-east4
    • southamerica-east1
    • northamerica-northeast1
    • asia-east1
    • asia-northeast1
    • asia-northeast3
    • asia-south1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west4
  • STORAGE_BUCKET_NAME�: nom du bucket Cloud�Storage que vous avez cr��.
  • STORAGE_INPUT_VIDEO�: nom de la vid�o dans votre bucket Cloud�Storage que vous transcodez, par exemple my-vid.mp4. Ce champ doit tenir compte des dossiers cr��s dans le bucket (par exemple, input/my-vid.mp4).
  • STORAGE_OUTPUT_FOLDER�: nom du dossier Cloud�Storage dans lequel vous souhaitez enregistrer les sorties vid�o encod�es.

Pour envoyer votre requ�te, d�veloppez l'une des options suivantes�:

Cet exemple REST utilise le param�tre de requ�te fields facultatif pour n'afficher que le nom de la ressource cr��e dans la r�ponse.

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/jobs/JOB_ID"
}

gcloud

  1. Effectuez les remplacements suivants pour le gcloud commande:
    • STORAGE_BUCKET_NAME: le du bucket Cloud�Storage que vous avez cr��.
    • STORAGE_INPUT_VIDEO�: nom de la vid�o dans votre bucket Cloud�Storage que vous transcodez, par exemple my-vid.mp4. Ce champ doit tenir compte des dossiers cr��s dans le bucket (par exemple, input/my-vid.mp4).
    • LOCATION�: emplacement dans lequel votre t�che sera ex�cut�e. Utilisez l'une des r�gions disponibles.
      Afficher les lieux
      • us-central1
      • us-west1
      • us-west2
      • us-east1
      • us-east4
      • southamerica-east1
      • northamerica-northeast1
      • asia-east1
      • asia-northeast1
      • asia-northeast3
      • asia-south1
      • asia-southeast1
      • australia-southeast1
      • europe-west1
      • europe-west2
      • europe-west4
    • STORAGE_OUTPUT_FOLDER�: nom du dossier Cloud�Storage dans lequel vous souhaitez enregistrer les sorties vid�o encod�es.
  2. Ex�cutez la commande suivante�:
    gcloud transcoder jobs create \
      --input-uri="gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO" \
      --location=LOCATION \
      --output-uri="gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
    Un r�sultat semblable aux lignes suivantes doit s'afficher:
    {
      "config": {
       ...
      },
      "createTime": CREATE_TIME,
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/jobs/JOB_ID",
      "state": "PENDING",
      "ttlAfterCompletionDays": 30
    }
    

C#

Avant d'essayer cet exemple, suivez les instructions de configuration pour C# du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder C# documentation de r�f�rence.

Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.


using Google.Api.Gax.ResourceNames;
using Google.Cloud.Video.Transcoder.V1;

public class CreateJobFromPresetSample
{
    public Job CreateJobFromPreset(
        string projectId, string location, string inputUri, string outputUri, string preset)
    {
        // Create the client.
        TranscoderServiceClient client = TranscoderServiceClient.Create();

        // Build the parent location name.
        LocationName parent = new LocationName(projectId, location);

        // Build the job.
        Job newJob = new Job
        {
            InputUri = inputUri,
            OutputUri = outputUri,
            TemplateId = preset
        };

        // Call the API.
        Job job = client.CreateJob(parent, newJob);

        // Return the result.
        return job;
    }
}

Go

Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder Go documentation de r�f�rence.

Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

import (
	"context"
	"fmt"
	"io"

	transcoder "cloud.google.com/go/video/transcoder/apiv1"
	"cloud.google.com/go/video/transcoder/apiv1/transcoderpb"
)

// createJobFromPreset creates a job based on a given preset template. See
// https://cloud.google.com/transcoder/docs/how-to/jobs#create_jobs_presets
// for more information.
func createJobFromPreset(w io.Writer, projectID string, location string, inputURI string, outputURI string) error {
	// projectID := "my-project-id"
	// location := "us-central1"
	// inputURI := "gs://my-bucket/my-video-file"
	// outputURI := "gs://my-bucket/my-output-folder/"
	preset := "preset/web-hd"
	ctx := context.Background()
	client, err := transcoder.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("NewClient: %w", err)
	}
	defer client.Close()

	req := &transcoderpb.CreateJobRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
		Job: &transcoderpb.Job{
			InputUri:  inputURI,
			OutputUri: outputURI,
			JobConfig: &transcoderpb.Job_TemplateId{
				TemplateId: preset,
			},
		},
	}
	// Creates the job, Jobs take a variable amount of time to run.
	// You can query for the job state.
	response, err := client.CreateJob(ctx, req)
	if err != nil {
		return fmt.Errorf("createJobFromPreset: %w", err)
	}

	fmt.Fprintf(w, "Job: %v", response.GetName())
	return nil
}

Java

Avant d'essayer cet exemple, suivez les instructions de configuration de Java dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Java.

Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.


import com.google.cloud.video.transcoder.v1.CreateJobRequest;
import com.google.cloud.video.transcoder.v1.Job;
import com.google.cloud.video.transcoder.v1.LocationName;
import com.google.cloud.video.transcoder.v1.TranscoderServiceClient;
import java.io.IOException;

public class CreateJobFromPreset {

  public static void main(String[] args) throws Exception {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "my-project-id";
    String location = "us-central1";
    String inputUri = "gs://my-bucket/my-video-file";
    String outputUri = "gs://my-bucket/my-output-folder/";
    // See https://cloud.google.com/transcoder/docs/concepts/overview#job_template
    // for information on this preset.
    String preset = "preset/web-hd";

    createJobFromPreset(projectId, location, inputUri, outputUri, preset);
  }

  // Creates a job from a preset.
  public static void createJobFromPreset(
      String projectId, String location, String inputUri, String outputUri, String preset)
      throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests.
    try (TranscoderServiceClient transcoderServiceClient = TranscoderServiceClient.create()) {

      CreateJobRequest createJobRequest =
          CreateJobRequest.newBuilder()
              .setJob(
                  Job.newBuilder()
                      .setInputUri(inputUri)
                      .setOutputUri(outputUri)
                      .setTemplateId(preset)
                      .build())
              .setParent(LocationName.of(projectId, location).toString())
              .build();

      // Send the job creation request and process the response.
      Job job = transcoderServiceClient.createJob(createJobRequest);
      System.out.println("Job: " + job.getName());
    }
  }
}

Node.js

Avant d'essayer cet exemple, suivez les instructions de configuration de Node.js dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder Node.js documentation de r�f�rence.

Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// projectId = 'my-project-id';
// location = 'us-central1';
// inputUri = 'gs://my-bucket/my-video-file';
// outputUri = 'gs://my-bucket/my-output-folder/';
// preset = 'preset/web-hd';

// Imports the Transcoder library
const {TranscoderServiceClient} =
  require('@google-cloud/video-transcoder').v1;

// Instantiates a client
const transcoderServiceClient = new TranscoderServiceClient();

async function createJobFromPreset() {
  // Construct request
  const request = {
    parent: transcoderServiceClient.locationPath(projectId, location),
    job: {
      inputUri: inputUri,
      outputUri: outputUri,
      templateId: preset,
    },
  };

  // Run request
  const [response] = await transcoderServiceClient.createJob(request);
  console.log(`Job: ${response.name}`);
}

createJobFromPreset();

PHP

Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder PHP documentation de r�f�rence.

Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

use Google\Cloud\Video\Transcoder\V1\Client\TranscoderServiceClient;
use Google\Cloud\Video\Transcoder\V1\CreateJobRequest;
use Google\Cloud\Video\Transcoder\V1\Job;

/**
 * Creates a job based on a job preset.
 *
 * @param string $projectId The ID of your Google Cloud Platform project.
 * @param string $location The location of the job.
 * @param string $inputUri Uri of the video in the Cloud Storage bucket.
 * @param string $outputUri Uri of the video output folder in the Cloud Storage bucket.
 * @param string $preset The preset template (for example, "preset/web-hd").
 */
function create_job_from_preset($projectId, $location, $inputUri, $outputUri, $preset)
{
    // Instantiate a client.
    $transcoderServiceClient = new TranscoderServiceClient();

    $formattedParent = $transcoderServiceClient->locationName($projectId, $location);
    $job = new Job();
    $job->setInputUri($inputUri);
    $job->setOutputUri($outputUri);
    $job->setTemplateId($preset);
    $request = (new CreateJobRequest())
        ->setParent($formattedParent)
        ->setJob($job);

    $response = $transcoderServiceClient->createJob($request);

    // Print job name.
    printf('Job: %s' . PHP_EOL, $response->getName());
}

Python

Avant d'essayer cet exemple, suivez les instructions de configuration de Python dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder Python documentation de r�f�rence.

Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.


import argparse

from google.cloud.video import transcoder_v1
from google.cloud.video.transcoder_v1.services.transcoder_service import (
    TranscoderServiceClient,
)


def create_job_from_preset(
    project_id: str,
    location: str,
    input_uri: str,
    output_uri: str,
    preset: str,
) -> transcoder_v1.types.resources.Job:
    """Creates a job based on a job preset.

    Args:
        project_id: The GCP project ID.
        location: The location to start the job in.
        input_uri: Uri of the video in the Cloud Storage bucket.
        output_uri: Uri of the video output folder in the Cloud Storage bucket.
        preset: The preset template (for example, 'preset/web-hd').

    Returns:
        The job resource.
    """

    client = TranscoderServiceClient()

    parent = f"projects/{project_id}/locations/{location}"
    job = transcoder_v1.types.Job()
    job.input_uri = input_uri
    job.output_uri = output_uri
    job.template_id = preset

    response = client.create_job(parent=parent, job=job)
    print(f"Job: {response.name}")
    return response

Ruby

Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Ruby.

Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

# project_id  = "YOUR-GOOGLE-CLOUD-PROJECT"  # (e.g. "my-project")
# location    = "YOUR-JOB-LOCATION"  # (e.g. "us-central1")
# input_uri   = "YOUR-GCS-INPUT-VIDEO"  # (e.g. "gs://my-bucket/my-video-file")
# output_uri  = "YOUR-GCS-OUTPUT-FOLDER/"  # (e.g. "gs://my-bucket/my-output-folder/")
# preset      = "YOUR-JOB-PRESET"  # (e.g. "preset/web-hd")

# Require the Transcoder client library.
require "google/cloud/video/transcoder"

# Create a Transcoder client.
client = Google::Cloud::Video::Transcoder.transcoder_service

# Build the resource name of the parent.
parent = client.location_path project: project_id, location: location

# Set the job fields.
new_job = {
  input_uri: input_uri,
  output_uri: output_uri,
  template_id: preset
}

job = client.create_job parent: parent, job: new_job

# Print the job name.
puts "Job: #{job.name}"

Copiez le JOB_ID renvoy�. Vous en avez besoin pour obtenir l'�tat de la t�che.

V�rifier l'�tat de votre t�che de transcodage

Pour v�rifier l'�tat d'une t�che, utilisez la m�thode projects.locations.jobs.get. Les exemples de code suivants obtiennent les d�tails de la t�che, puis affichent l'�tat de la t�che.

REST

Avant d'utiliser les donn�es de requ�te ci-dessous, effectuez les remplacements suivants�:

  • JOB_ID�: ID de la t�che que vous avez cr��e.
  • PROJECT_ID�: ID de votre projet Google�Cloud.
  • LOCATION�: emplacement de votre t�che. Utilisez l'un des r�gions dans lesquelles le service est disponible.
    Afficher les emplacements
    • us-central1
    • us-west1
    • us-west2
    • us-east1
    • us-east4
    • southamerica-east1
    • northamerica-northeast1
    • asia-east1
    • asia-northeast1
    • asia-northeast3
    • asia-south1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west4
  • Pour envoyer votre requ�te, d�veloppez l'une des options suivantes�:

    Vous devriez recevoir une r�ponse JSON de ce type�:

    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/jobs/JOB_ID",
      "config": {
        "inputs": [
          {
            "key": "input0",
            "uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
          }
        ],
        "editList": [
          {
            "key": "atom0",
            "inputs": [
              "input0"
            ],
            "startTimeOffset": "0s"
          }
        ],
        "elementaryStreams": [
          {
            "videoStream": {
              "h264": {
                "widthPixels": 640,
                "heightPixels": 360,
                "frameRate": 30,
                "bitrateBps": 550000,
                "pixelFormat": "yuv420p",
                "rateControlMode": "vbr",
                "crfLevel": 21,
                "gopDuration": "3s",
                "vbvSizeBits": 550000,
                "vbvFullnessBits": 495000,
                "entropyCoder": "cabac",
                "bFrameCount": 3,
                "aqStrength": 1,
                "profile": "high",
                "preset": "veryfast"
              }
            },
            "key": "video-stream0"
          },
          {
            "videoStream": {
              "h264": {
                "widthPixels": 1280,
                "heightPixels": 720,
                "frameRate": 30,
                "bitrateBps": 2500000,
                "pixelFormat": "yuv420p",
                "rateControlMode": "vbr",
                "crfLevel": 21,
                "gopDuration": "3s",
                "vbvSizeBits": 2500000,
                "vbvFullnessBits": 2250000,
                "entropyCoder": "cabac",
                "bFrameCount": 3,
                "aqStrength": 1,
                "profile": "high",
                "preset": "veryfast"
              }
            },
            "key": "video-stream1"
          },
          {
            "audioStream": {
              "codec": "aac",
              "bitrateBps": 64000,
              "channelCount": 2,
              "channelLayout": [
                "fl",
                "fr"
              ],
              "sampleRateHertz": 48000
            },
            "key": "audio-stream0"
          }
        ],
        "muxStreams": [
          {
            "key": "sd",
            "fileName": "sd.mp4",
            "container": "mp4",
            "elementaryStreams": [
              "video-stream0",
              "audio-stream0"
            ]
          },
          {
            "key": "hd",
            "fileName": "hd.mp4",
            "container": "mp4",
            "elementaryStreams": [
              "video-stream1",
              "audio-stream0"
            ]
          },
          {
            "key": "media-sd",
            "fileName": "media-sd.ts",
            "container": "ts",
            "elementaryStreams": [
              "video-stream0",
              "audio-stream0"
            ]
          },
          {
            "key": "media-hd",
            "fileName": "media-hd.ts",
            "container": "ts",
            "elementaryStreams": [
              "video-stream1",
              "audio-stream0"
            ]
          },
          {
            "key": "video-only-sd",
            "fileName": "video-only-sd.m4s",
            "container": "fmp4",
            "elementaryStreams": [
              "video-stream0"
            ]
          },
          {
            "key": "video-only-hd",
            "fileName": "video-only-hd.m4s",
            "container": "fmp4",
            "elementaryStreams": [
              "video-stream1"
            ]
          },
          {
            "key": "audio-only",
            "fileName": "audio-only.m4s",
            "container": "fmp4",
            "elementaryStreams": [
              "audio-stream0"
            ]
          }
        ],
        "manifests": [
          {
            "fileName": "manifest.m3u8",
            "type": "HLS",
            "muxStreams": [
              "media-sd",
              "media-hd"
            ]
          },
          {
            "fileName": "manifest.mpd",
            "type": "DASH",
            "muxStreams": [
              "video-only-sd",
              "video-only-hd",
              "audio-only"
            ]
          }
        ],
        "output": {
          "uri": "gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
        }
      },
      "state": "PENDING",
      "createTime": CREATE_TIME,
      "ttlAfterCompletionDays": 30
    }
    

    gcloud

    1. Effectuez les remplacements suivants pour la commande gcloud�:
      • JOB_ID�: ID de la t�che que vous avez cr��e.
      • LOCATION�: emplacement de votre t�che. Utilisez l'une des r�gions disponibles.
        Afficher les lieux
        • us-central1
        • us-west1
        • us-west2
        • us-east1
        • us-east4
        • southamerica-east1
        • northamerica-northeast1
        • asia-east1
        • asia-northeast1
        • asia-northeast3
        • asia-south1
        • asia-southeast1
        • australia-southeast1
        • europe-west1
        • europe-west2
        • europe-west4
    2. Ex�cutez la commande suivante�:
      gcloud transcoder jobs describe JOB_ID --location=LOCATION
      Un r�sultat semblable aux lignes suivantes doit s'afficher:
      {
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/jobs/JOB_ID",
        "config": {
          "inputs": [
            {
              "key": "input0",
              "uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
            }
          ],
          "editList": [
            {
              "key": "atom0",
              "inputs": [
                "input0"
              ],
              "startTimeOffset": "0s"
            }
          ],
          "elementaryStreams": [
            {
              "videoStream": {
                "h264": {
                  "widthPixels": 640,
                  "heightPixels": 360,
                  "frameRate": 30,
                  "bitrateBps": 550000,
                  "pixelFormat": "yuv420p",
                  "rateControlMode": "vbr",
                  "crfLevel": 21,
                  "gopDuration": "3s",
                  "vbvSizeBits": 550000,
                  "vbvFullnessBits": 495000,
                  "entropyCoder": "cabac",
                  "bFrameCount": 3,
                  "aqStrength": 1,
                  "profile": "high",
                  "preset": "veryfast"
                }
              },
              "key": "video-stream0"
            },
            {
              "videoStream": {
                "h264": {
                  "widthPixels": 1280,
                  "heightPixels": 720,
                  "frameRate": 30,
                  "bitrateBps": 2500000,
                  "pixelFormat": "yuv420p",
                  "rateControlMode": "vbr",
                  "crfLevel": 21,
                  "gopDuration": "3s",
                  "vbvSizeBits": 2500000,
                  "vbvFullnessBits": 2250000,
                  "entropyCoder": "cabac",
                  "bFrameCount": 3,
                  "aqStrength": 1,
                  "profile": "high",
                  "preset": "veryfast"
                }
              },
              "key": "video-stream1"
            },
            {
              "audioStream": {
                "codec": "aac",
                "bitrateBps": 64000,
                "channelCount": 2,
                "channelLayout": [
                  "fl",
                  "fr"
                ],
                "sampleRateHertz": 48000
              },
              "key": "audio-stream0"
            }
          ],
          "muxStreams": [
            {
              "key": "sd",
              "fileName": "sd.mp4",
              "container": "mp4",
              "elementaryStreams": [
                "video-stream0",
                "audio-stream0"
              ]
            },
            {
              "key": "hd",
              "fileName": "hd.mp4",
              "container": "mp4",
              "elementaryStreams": [
                "video-stream1",
                "audio-stream0"
              ]
            },
            {
              "key": "media-sd",
              "fileName": "media-sd.ts",
              "container": "ts",
              "elementaryStreams": [
                "video-stream0",
                "audio-stream0"
              ]
            },
            {
              "key": "media-hd",
              "fileName": "media-hd.ts",
              "container": "ts",
              "elementaryStreams": [
                "video-stream1",
                "audio-stream0"
              ]
            },
            {
              "key": "video-only-sd",
              "fileName": "video-only-sd.m4s",
              "container": "fmp4",
              "elementaryStreams": [
                "video-stream0"
              ]
            },
            {
              "key": "video-only-hd",
              "fileName": "video-only-hd.m4s",
              "container": "fmp4",
              "elementaryStreams": [
                "video-stream1"
              ]
            },
            {
              "key": "audio-only",
              "fileName": "audio-only.m4s",
              "container": "fmp4",
              "elementaryStreams": [
                "audio-stream0"
              ]
            }
          ],
          "manifests": [
            {
              "fileName": "manifest.m3u8",
              "type": "HLS",
              "muxStreams": [
                "media-sd",
                "media-hd"
              ]
            },
            {
              "fileName": "manifest.mpd",
              "type": "DASH",
              "muxStreams": [
                "video-only-sd",
                "video-only-hd",
                "audio-only"
              ]
            }
          ],
          "output": {
            "uri": "gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
          }
        },
        "state": "PENDING",
        "createTime": CREATE_TIME,
        "ttlAfterCompletionDays": 30
      }
      

    C#

    Avant d'essayer cet exemple, suivez les instructions de configuration de C# dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour C#.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    using Google.Cloud.Video.Transcoder.V1;
    
    public class GetJobStateSample
    {
        public Job.Types.ProcessingState GetJobState(string projectId, string location, string jobId)
        {
            // Create the client.
            TranscoderServiceClient client = TranscoderServiceClient.Create();
    
            // Build the job name.
            JobName jobName = JobName.FromProjectLocationJob(projectId, location, jobId);
    
            // Call the API.
            Job job = client.GetJob(jobName);
    
            // Return the result.
            return job.State;
        }
    }

    Go

    Avant d'essayer cet exemple, suivez les instructions de configuration de Go dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Go.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    import (
    	"context"
    	"fmt"
    	"io"
    
    	transcoder "cloud.google.com/go/video/transcoder/apiv1"
    	"cloud.google.com/go/video/transcoder/apiv1/transcoderpb"
    )
    
    // getJobState gets the state for a previously-created job. See
    // https://cloud.google.com/transcoder/docs/how-to/jobs#check_job_status for
    // more information.
    func getJobState(w io.Writer, projectID string, location string, jobID string) error {
    	// projectID := "my-project-id"
    	// location := "us-central1"
    	// jobID := "my-job-id"
    	ctx := context.Background()
    	client, err := transcoder.NewClient(ctx)
    	if err != nil {
    		return fmt.Errorf("NewClient: %w", err)
    	}
    	defer client.Close()
    
    	req := &transcoderpb.GetJobRequest{
    		Name: fmt.Sprintf("projects/%s/locations/%s/jobs/%s", projectID, location, jobID),
    	}
    
    	response, err := client.GetJob(ctx, req)
    	if err != nil {
    		return fmt.Errorf("GetJob: %w", err)
    	}
    	fmt.Fprintf(w, "Job state: %v\n----\nJob failure reason:%v\n", response.State, response.Error)
    	return nil
    }
    

    Java

    Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Java.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    import com.google.cloud.video.transcoder.v1.GetJobRequest;
    import com.google.cloud.video.transcoder.v1.Job;
    import com.google.cloud.video.transcoder.v1.JobName;
    import com.google.cloud.video.transcoder.v1.TranscoderServiceClient;
    import java.io.IOException;
    
    public class GetJobState {
    
      public static void main(String[] args) throws Exception {
        // TODO(developer): Replace these variables before running the sample.
        String projectId = "my-project-id";
        String location = "us-central1";
        String jobId = "my-job-id";
    
        getJobState(projectId, location, jobId);
      }
    
      // Gets the state of a job.
      public static void getJobState(String projectId, String location, String jobId)
          throws IOException {
        // Initialize client that will be used to send requests. This client only needs to be created
        // once, and can be reused for multiple requests.
        try (TranscoderServiceClient transcoderServiceClient = TranscoderServiceClient.create()) {
          JobName jobName =
              JobName.newBuilder().setProject(projectId).setLocation(location).setJob(jobId).build();
          GetJobRequest getJobRequest = GetJobRequest.newBuilder().setName(jobName.toString()).build();
    
          // Send the get job request and process the response.
          Job job = transcoderServiceClient.getJob(getJobRequest);
          System.out.println("Job state: " + job.getState());
        }
      }
    }

    Node.js

    Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder Node.js documentation de r�f�rence.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    /**
     * TODO(developer): Uncomment these variables before running the sample.
     */
    // projectId = 'my-project-id';
    // location = 'us-central1';
    // jobId = 'my-job-id';
    
    // Imports the Transcoder library
    const {TranscoderServiceClient} =
      require('@google-cloud/video-transcoder').v1;
    
    // Instantiates a client
    const transcoderServiceClient = new TranscoderServiceClient();
    
    async function getJob() {
      // Construct request
      const request = {
        name: transcoderServiceClient.jobPath(projectId, location, jobId),
      };
      const [response] = await transcoderServiceClient.getJob(request);
      console.log(`Job state: ${response.state}`);
    }
    
    getJob();

    PHP

    Avant d'essayer cet exemple, suivez les instructions de configuration de PHP dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour PHP.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    use Google\Cloud\Video\Transcoder\V1\Client\TranscoderServiceClient;
    use Google\Cloud\Video\Transcoder\V1\GetJobRequest;
    use Google\Cloud\Video\Transcoder\V1\Job;
    
    /**
     * Gets a Transcoder job's state.
     *
     * @param string $projectId The ID of your Google Cloud Platform project.
     * @param string $location The location of the job.
     * @param string $jobId The job ID.
     */
    function get_job_state($projectId, $location, $jobId)
    {
        // Instantiate a client.
        $transcoderServiceClient = new TranscoderServiceClient();
    
        $formattedName = $transcoderServiceClient->jobName($projectId, $location, $jobId);
        $request = (new GetJobRequest())
            ->setName($formattedName);
        $job = $transcoderServiceClient->getJob($request);
    
        // Print job state.
        printf('Job state: %s' . PHP_EOL, Job\ProcessingState::name($job->getState()));
    }

    Python

    Avant d'essayer cet exemple, suivez les instructions de configuration de Python dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Python.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    import argparse
    
    from google.cloud.video import transcoder_v1
    from google.cloud.video.transcoder_v1.services.transcoder_service import (
        TranscoderServiceClient,
    )
    
    
    def get_job_state(
        project_id: str,
        location: str,
        job_id: str,
    ) -> transcoder_v1.types.resources.Job:
        """Gets a job's state.
    
        Args:
            project_id: The GCP project ID.
            location: The location this job is in.
            job_id: The job ID.
    
        Returns:
            The job resource.
        """
    
        client = TranscoderServiceClient()
    
        name = f"projects/{project_id}/locations/{location}/jobs/{job_id}"
        response = client.get_job(name=name)
    
        print(f"Job state: {str(response.state.name)}")
        return response
    
    

    Ruby

    Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Ruby.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    # project_id = "YOUR-GOOGLE-CLOUD-PROJECT"  # (e.g. "my-project")
    # location   = "YOUR-JOB-LOCATION"  # (e.g. "us-central1")
    # job_id     = "YOUR-JOB-ID"  # (e.g. "c82c295b-3f5a-47df-8562-938a89d40fd0")
    
    # Require the Transcoder client library.
    require "google/cloud/video/transcoder"
    
    # Create a Transcoder client.
    client = Google::Cloud::Video::Transcoder.transcoder_service
    
    # Build the resource name of the job.
    name = client.job_path project: project_id, location: location, job: job_id
    
    # Get the job.
    job = client.get_job name: name
    
    # Print the job state.
    puts "Job state: #{job.state}"

    Si la valeur de state est SUCCEEDED, la t�che est termin�e et vos sorties vid�o sont d�sormais disponibles dans la liste des fichiers encod�s de votre bucket Cloud�Storage.

    Lire la vid�o

    Pour lire le fichier multim�dia g�n�r� dans Shaka Player, proc�dez comme suit�:

    1. Rendez le bucket Cloud�Storage que vous avez cr�� publiquement lisible.
    2. Pour activer le partage des ressources entre origines multiples (CORS) sur un bucket Cloud�Storage, proc�dez comme suit�:
      1. Cr�ez un fichier JSON contenant les informations suivantes�:
        [
          {
            "origin": ["/proxy/https://shaka-player-demo.appspot.com/"],
            "responseHeader": ["Content-Type", "Range"],
            "method": ["GET", "HEAD"],
            "maxAgeSeconds": 3600
          }
        ]
      2. Ex�cutez la commande suivante en rempla�ant JSON_FILE_NAME par le nom du fichier JSON que vous avez cr�� � l'�tape pr�c�dente�:
        gcloud storage buckets update gs://STORAGE_BUCKET_NAME --cors-file=JSON_FILE_NAME.json
    3. Choisissez l'un des fichiers MP4 ou manifestes g�n�r�s par la t�che de transcodage dans le bucket Cloud�Storage. Cliquez sur Copier l'URL dans la colonne Acc�s public du fichier.
    4. Acc�dez � Shaka Player, un lecteur de diffusion en direct en ligne.
    5. Cliquez sur Contenu personnalis� dans la barre de navigation sup�rieure.
    6. Cliquez sur le bouton +.
    7. Collez l'URL publique du fichier dans la zone URL du fichier manifeste.

      Saisissez l'URL du fichier dans le lecteur Shaka.

    8. Saisissez un nom dans la zone Nom.

    9. Cliquez sur Enregistrer.

    10. Cliquez sur Play (Jouer).

    Effectuer un nettoyage

    Pour �viter que les ressources utilis�es sur cette page soient factur�es sur votre compte Google�Cloud, proc�dez comme suit�:

    Supprimer le bucket

    1. Dans la console Google�Cloud, acc�dez � la page du navigateur Cloud�Storage.

      Acc�der � la page du navigateur Cloud�Storage

    2. Cochez la case � c�t� du bucket que vous avez cr��.

    3. Cliquez sur Supprimer.

    4. Dans la fen�tre pop-up qui appara�t, cliquez sur Supprimer pour supprimer d�finitivement le bucket et son contenu.

    Supprimer le job

    REST

    Avant d'utiliser les donn�es de requ�te ci-dessous, effectuez les remplacements suivants�:

  • JOB_ID�: ID de la t�che que vous avez cr��e.
  • PROJECT_ID�: ID de votre projet Google�Cloud.
  • LOCATION�: emplacement de votre t�che. Utilisez l'un des r�gions dans lesquelles le service est disponible.
    Afficher les lieux
    • us-central1
    • us-west1
    • us-west2
    • us-east1
    • us-east4
    • southamerica-east1
    • northamerica-northeast1
    • asia-east1
    • asia-northeast1
    • asia-northeast3
    • asia-south1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west4
  • Pour envoyer votre requ�te, d�veloppez l'une des options suivantes�:

    Vous devriez recevoir une r�ponse JSON de ce type�:

    {}
    

    gcloud

    1. Effectuez les remplacements suivants pour la commande gcloud�:
      • JOB_ID: ID de la t�che que vous cr��.
      • LOCATION: position de votre t�che. Utilisez l'une des r�gions disponibles.
        Afficher les lieux
        • us-central1
        • us-west1
        • us-west2
        • us-east1
        • us-east4
        • southamerica-east1
        • northamerica-northeast1
        • asia-east1
        • asia-northeast1
        • asia-northeast3
        • asia-south1
        • asia-southeast1
        • australia-southeast1
        • europe-west1
        • europe-west2
        • europe-west4
    2. Ex�cutez la commande suivante�:
      gcloud transcoder jobs delete JOB_ID --location=LOCATION
      Un r�sultat semblable aux lignes suivantes doit s'afficher:
      Deleted job [projects/PROJECT_ID/locations/LOCATION/jobs/JOB_ID].
      

    C#

    Avant d'essayer cet exemple, suivez les instructions de configuration pour C# du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder C# documentation de r�f�rence.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    using Google.Cloud.Video.Transcoder.V1;
    
    public class DeleteJobSample
    {
        public void DeleteJob(string projectId, string location, string jobId)
        {
            // Create the client.
            TranscoderServiceClient client = TranscoderServiceClient.Create();
    
            // Build the job name.
            JobName jobName = JobName.FromProjectLocationJob(projectId, location, jobId);
    
            // Call the API.
            client.DeleteJob(jobName);
        }
    }

    Go

    Avant d'essayer cet exemple, suivez les instructions de configuration de Go dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Go.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    import (
    	"context"
    	"fmt"
    	"io"
    
    	transcoder "cloud.google.com/go/video/transcoder/apiv1"
    	"cloud.google.com/go/video/transcoder/apiv1/transcoderpb"
    )
    
    // deleteJob deletes a previously-created job. See
    // https://cloud.google.com/transcoder/docs/how-to/jobs#delete_jobs for more
    // information.
    func deleteJob(w io.Writer, projectID string, location string, jobID string) error {
    	// projectID := "my-project-id"
    	// location := "us-central1"
    	// jobID := "my-job-id"
    	ctx := context.Background()
    	client, err := transcoder.NewClient(ctx)
    	if err != nil {
    		return fmt.Errorf("NewClient: %w", err)
    	}
    	defer client.Close()
    
    	req := &transcoderpb.DeleteJobRequest{
    		Name: fmt.Sprintf("projects/%s/locations/%s/jobs/%s", projectID, location, jobID),
    	}
    
    	err = client.DeleteJob(ctx, req)
    	if err != nil {
    		return fmt.Errorf("DeleteJob: %w", err)
    	}
    
    	fmt.Fprintf(w, "Deleted job")
    	return nil
    }
    

    Java

    Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Java.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    import com.google.cloud.video.transcoder.v1.DeleteJobRequest;
    import com.google.cloud.video.transcoder.v1.JobName;
    import com.google.cloud.video.transcoder.v1.TranscoderServiceClient;
    import java.io.IOException;
    
    public class DeleteJob {
    
      public static void main(String[] args) throws Exception {
        // TODO(developer): Replace these variables before running the sample.
        String projectId = "my-project-id";
        String location = "us-central1";
        String jobId = "my-job-id";
    
        deleteJob(projectId, location, jobId);
      }
    
      // Deletes a job.
      public static void deleteJob(String projectId, String location, String jobId) throws IOException {
        // Initialize client that will be used to send requests. This client only needs to be created
        // once, and can be reused for multiple requests.
        try (TranscoderServiceClient transcoderServiceClient = TranscoderServiceClient.create()) {
          JobName jobName =
              JobName.newBuilder().setProject(projectId).setLocation(location).setJob(jobId).build();
          DeleteJobRequest deleteJobRequest = DeleteJobRequest.newBuilder().setName(jobName.toString())
              .build();
    
          // Send the delete job request and process the response.
          transcoderServiceClient.deleteJob(deleteJobRequest);
          System.out.println("Deleted job");
        }
      }
    }

    Node.js

    Avant d'essayer cet exemple, suivez les instructions de configuration de Node.js dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Node.js.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    /**
     * TODO(developer): Uncomment these variables before running the sample.
     */
    // projectId = 'my-project-id';
    // location = 'us-central1';
    // jobId = 'my-job-id';
    
    // Imports the Transcoder library
    const {TranscoderServiceClient} =
      require('@google-cloud/video-transcoder').v1;
    
    // Instantiates a client
    const transcoderServiceClient = new TranscoderServiceClient();
    
    async function deleteJob() {
      // Construct request
      const request = {
        name: transcoderServiceClient.jobPath(projectId, location, jobId),
      };
      await transcoderServiceClient.deleteJob(request);
      console.log('Deleted job');
    }
    
    deleteJob();

    PHP

    Avant d'essayer cet exemple, suivez les instructions de configuration de PHP dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder PHP documentation de r�f�rence.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez le service Identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    use Google\Cloud\Video\Transcoder\V1\Client\TranscoderServiceClient;
    use Google\Cloud\Video\Transcoder\V1\DeleteJobRequest;
    
    /**
     * Deletes a Transcoder job.
     *
     * @param string $projectId The ID of your Google Cloud Platform project.
     * @param string $location The location of the job.
     * @param string $jobId The job ID.
     */
    function delete_job($projectId, $location, $jobId)
    {
        // Instantiate a client.
        $transcoderServiceClient = new TranscoderServiceClient();
    
        $formattedName = $transcoderServiceClient->jobName($projectId, $location, $jobId);
        $request = (new DeleteJobRequest())
            ->setName($formattedName);
        $transcoderServiceClient->deleteJob($request);
    
        print('Deleted job' . PHP_EOL);
    }

    Python

    Avant d'essayer cet exemple, suivez les instructions de configuration de Python dans le Guide de d�marrage rapide de l'API Transcoder avec biblioth�ques clientes. Pour en savoir plus, consultez la documentation de r�f�rence sur l'API Transcoder pour Python.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    
    import argparse
    
    from google.cloud.video.transcoder_v1.services.transcoder_service import (
        TranscoderServiceClient,
    )
    
    
    def delete_job(
        project_id: str,
        location: str,
        job_id: str,
    ) -> None:
        """Gets a job.
    
        Args:
            project_id: The GCP project ID.
            location: The location this job is in.
            job_id: The job ID."""
    
        client = TranscoderServiceClient()
    
        name = f"projects/{project_id}/locations/{location}/jobs/{job_id}"
        response = client.delete_job(name=name)
        print("Deleted job")
        return response
    
    

    Ruby

    Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby du guide de d�marrage rapide de l'API Transcoder � l'aide des biblioth�ques clientes. Pour en savoir plus, consultez les API Transcoder Ruby documentation de r�f�rence.

    Pour vous authentifier aupr�s de l'API Transcoder, configurez les identifiants par d�faut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de d�veloppement local.

    # project_id = "YOUR-GOOGLE-CLOUD-PROJECT"  # (e.g. "my-project")
    # location   = "YOUR-JOB-LOCATION"  # (e.g. "us-central1")
    # job_id     = "YOUR-JOB-ID"  # (e.g. "c82c295b-3f5a-47df-8562-938a89d40fd0")
    
    # Require the Transcoder client library.
    require "google/cloud/video/transcoder"
    
    # Create a Transcoder client.
    client = Google::Cloud::Video::Transcoder.transcoder_service
    
    # Build the resource name of the job.
    name = client.job_path project: project_id, location: location, job: job_id
    
    # Delete the job.
    client.delete_job name: name
    
    # Print a success message.
    puts "Deleted job"

    R�voquer vos identifiants

    1. Optional: Revoke the authentication credentials that you created, and delete the local credential file.

      gcloud auth application-default revoke
    2. Optional: Revoke credentials from the gcloud CLI.

      gcloud auth revoke

    �tape suivante