In questa pagina viene spiegato come creare una risorsa del canale con due flussi di input, in cui un flusso di input può essere il backup per l'altro.
Quando è abilitato il failover automatico, se il flusso di input principale viene disconnesso a causa di problemi di rete, il canale passa automaticamente a utilizzare il flusso di input di backup come origine di input. Quando lo stream di input principale è di nuovo online, il canale torna automaticamente allo stream di input principale come origine di input. La funzionalità di failover automatico è facoltativa.
Devi assicurarti che il flusso di input principale e il flusso di input di backup siano identici se vuoi che il flusso di input di backup sostituisca completamente il flusso di input principale.
Puoi anche cambiare lo stream di input manualmente utilizzando un evento del canale.
Crea l'endpoint di input principale
Per creare l'endpoint di input principale, utilizza il metodo projects.locations.inputs.create
.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, disponibile nel campo Numero progetto della pagina Impostazioni IAM.LOCATION
: la località in cui creare l'endpoint di input; utilizza una delle regioni supportate:us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
INPUT_ID
: un identificatore definito dall'utente per il nuovo endpoint di input da creare (a cui inviare il flusso di input). Questo valore deve contenere da 1 a 63 caratteri, iniziare e terminare con[a-z0-9]
e può contenere trattini (-) tra i caratteri. Ad esempio:my-input
.
Corpo JSON della richiesta:
{ "type": "RTMP_PUSH" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream C#.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Go.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Java.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Node.js.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream PHP.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Python.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Ruby.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Crea l'endpoint di input di backup
Per creare l'endpoint di input di backup, utilizza di nuovo il metodo projects.locations.inputs.create
. Assicurati di utilizzare un ID di input diverso dall'endpoint di input principale.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, disponibile nel campo Numero progetto della pagina Impostazioni IAM.LOCATION
: la località in cui creare l'endpoint di input; utilizza una delle regioni supportate:us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
BACKUP_INPUT_ID
: un identificatore definito dall'utente per la creazione dell'endpoint di input di backup (e da utilizzare se il flusso di input principale è disconnesso a causa di problemi di rete); questo valore deve essere compreso tra 1 e 63 caratteri, iniziare e terminare con[a-z0-9]
e può contenere trattini (-) tra i caratteri
Corpo JSON della richiesta:
{ "type": "RTMP_PUSH" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/BACKUP_INPUT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream C#.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Go.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Java.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Node.js.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream PHP.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Python.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Ruby.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Crea il canale
Per creare il canale, utilizza il metodo
projects.locations.channels.create
. Per questo esempio, automaticFailover
è configurato per il primo collegamento di input.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, disponibile nel campo Numero progetto della pagina Impostazioni IAM.LOCATION
: la località in cui creare il canale; utilizza una delle regioni supportate:us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: un identificatore definito dall'utente per il canale da creare. Questo valore deve contenere da 1 a 63 caratteri, iniziare e terminare con[a-z0-9]
e può contenere trattini (-) tra i caratteriINPUT_ID
: l'identificatore definito dall'utente per l'endpoint di input principaleBACKUP_INPUT_ID
: l'identificatore definito dall'utente per l'endpoint di input di backupBUCKET_NAME
: il nome del bucket Cloud Storage che hai creato
Corpo JSON della richiesta:
{ "inputAttachments": [ { "key": "input-primary", "input": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "automaticFailover": { "inputKeys": ["input-backup"] } }, { "key": "input-backup", "input": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/BACKUP_INPUT_ID" } ], "output": { "uri": "gs://BUCKET_NAME" }, "elementaryStreams": [ { "key": "es_video", "videoStream": { "h264": { "profile": "high", "widthPixels": 1280, "heightPixels": 720, "bitrateBps": 3000000, "frameRate": 30 } } }, { "key": "es_audio", "audioStream": { "codec": "aac", "channelCount": 2, "bitrateBps": 160000 } } ], "muxStreams": [ { "key": "mux_video", "elementaryStreams": [ "es_video" ], "segmentSettings": { "segmentDuration": "2s" } }, { "key": "mux_audio", "elementaryStreams": [ "es_audio" ], "segmentSettings": { "segmentDuration": "2s" } } ], "manifests": [ { "fileName": "main.mpd", "type": "DASH", "muxStreams": [ "mux_video", "mux_audio" ], "maxSegmentCount": 5 } ] }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream C#.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Go.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Java.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Node.js.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream PHP.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Python.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per scoprire come installare e utilizzare la libreria client per l'API Live Stream, consulta la pagina relativa alle librerie client dell'API Live Stream. Per saperne di più, consulta la documentazione di riferimento dell'API Live Stream Ruby.
Per l'autenticazione all'API Live Stream, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Cambia manualmente l'input
Per passare manualmente dall'ingresso principale a quello di backup (ad esempio, da my-primary-input
a my-backup-input
), crea un evento del canale.
Dopo un passaggio manuale, puoi scollegare e ricollegare my-primary-input
come preferisci. Il canale non passa a questo input al momento della riconnessione, come accade con le impostazioni predefinite di failover automatico.
Per tornare a my-primary-input
, procedi in uno dei seguenti modi:
- Crea un nuovo evento
inputSwitch
in cuiinputKey
è impostato sumy-primary-input
. Questo evento torna all'input principale senza ripristinare le impostazioni di failover automatico. - Aggiorna il canale per abilitare il failover automatico. Per ulteriori informazioni, consulta Evento di cambio di input.