Zencoder mit Google Cloud Storage verwenden

In diesem Thema wird das Setup für die Verwendung von Zencoder auf der Google Cloud Platform erläutert.

Google Cloud Storage-Setup

Führen Sie die folgenden Schritte aus, um Zencoder auf der Google Cloud Platform zu verwenden.

  1. Gehen Sie zu den Einstellungen für den Cloud-Speicher und klicken Sie auf die Registerkarte Interoperabilität :
    Registerkarte "Interoperabilität
    Registerkarte "Interoperabilität
  2. Wählen Sie im Benutzerkonto HMAC Ihr Projekt als Standard aus und klicken Sie auf Schlüssel erstellen:
    Zugangsschlüssel erstellen
    Zugangsschlüssel erstellen
  3. Speichern Sie den Zugangsschlüssel und das Geheimnis, um sie später in Zencoder einzugeben.
  4. Fügen Sie der Berechtigung auf Bucket-Ebene einen neuen Principal für die allAuthenticatedUsers Rolle Storage Object Viewer hinzu. Sie müssen die Option "Öffentlich ins Internet" aktivieren.
    Neues Prinical hinzufügen
    Neues Prinical hinzufügen
  5. Fügen Sie den Zugriffsschlüssel und das Geheimnis zu Zencoder im Abschnitt Anmeldeinformationen des Zencoder-Dashboards hinzu:
    Anmeldeinformationen in Zencoder eingeben
    Anmeldeinformationen in Zencoder eingeben

Transcodierung

Das folgende Beispiel zeigt einen Arbeitsjob, der ein Eingabevideo aus GCS abruft, Wiedergaben für HTTP Live Streaming erstellt und die Ausgabestreams an GCS sendet. Sie können dies testen, indem Sie es ändern my-bucket in einen vorhandenen GCS-Bucket, den Sie besitzen, und fügen Sie diesen in den ein Builder anfordern.

Beispiel für einen HLS-Job mit GCS

  {
      "test": true,
      "input": "gcs://zencoder-testing/test.mov",
      "output": [
      {
          "audio_bitrate": 64,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "filename": "file-64k.m3u8",
          "segment_seconds": 2,
          "format": "aac",
          "headers":{
              "x-goog-acl": "public-read"
          },
          "type": "segmented"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 360,
          "decoder_buffer_size": 840,
          "filename": "file-240k.m3u8",
          "segment_seconds": 2,
          "max_frame_rate": 15,
          "type": "segmented",
          "video_bitrate": 184,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 400,
          "format": "ts"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 578,
          "decoder_buffer_size": 1344,
          "filename": "file-440k.m3u8",
          "segment_seconds": 2,
          "type": "segmented",
          "video_bitrate": 384,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 400,
          "format": "ts"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 960,
          "decoder_buffer_size": 2240,
          "filename": "file-640k.m3u8",
          "segment_seconds": 2,
          "type": "segmented",
          "video_bitrate": 584,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 480,
          "format": "ts"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 1500,
          "decoder_buffer_size": 4000,
          "filename": "file-1040k.m3u8",
          "segment_seconds": 2,
          "type": "segmented",
          "video_bitrate": 1000,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 640,
          "format": "ts"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 2310,
          "decoder_buffer_size": 5390,
          "filename": "file-1540k.m3u8",
          "segment_seconds": 2,
          "type": "segmented",
          "video_bitrate": 1484,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 960,
          "format": "ts"
      },
      {
          "audio_bitrate": 56,
          "audio_sample_rate": 22050,
          "base_url": "gcs://my-bucket/",
          "decoder_bitrate_cap": 3060,
          "decoder_buffer_size": 7140,
          "filename": "file-2040k.m3u8",
          "segment_seconds": 2,
          "type": "segmented",
          "video_bitrate": 1984,
          "headers":{
              "x-goog-acl": "public-read"
          },
          "width": 1024,
          "format": "ts"
      },
      {
          "base_url": "gcs://my-bucket/",
          "filename": "playlist.m3u8",
          "streams": [
          {
              "bandwidth": 2040,
              "path": "file-2040k.m3u8"
          },
          {
              "bandwidth": 1540,
              "path": "file-1540k.m3u8"
          },
          {
              "bandwidth": 1040,
              "path": "file-1040k.m3u8"
          },
          {
              "bandwidth": 640,
              "path": "file-640k.m3u8"
          },
          {
              "bandwidth": 440,
              "path": "file-440k.m3u8"
          },
          {
              "bandwidth": 240,
              "path": "file-240k.m3u8"
          },
          {
              "bandwidth": 64,
              "path": "file-64k.m3u8"
          }
          ],
          "headers":{
              "x-goog-acl": "public-read"
          },
          "type": "playlist"
      }
      ]
  }