Verwenden Sie die Audio-Fallback-API, um Audio dynamisch in Abhängigkeit von der Netzwerkqualität zu priorisieren.
Enabling and disabling audio-only fallback
Um Publisher Audio Fallback zu aktivieren, setzen Sie die Publisher.Builder.PublisherAudioFallback Eigenschaft beim Erstellen eines Publisher-Objekts.
Zum Aktivieren und Deaktivieren des Teilnehmer-Audio-Fallbacks (für alle Teilnehmer des Streams) rufen Sie die Funktion Publisher.Builder.SubscriberAudioFallback Eigenschaft beim Erstellen eines Publisher-Objekts. Subscriber Audio Fallback wird nur in gerouteten Sitzungen unterstützt (Sitzungen, die das Medien-Router). Teilnehmer-Audio-Fallback ist standardmäßig (in gerouteten Sitzungen) für Streams mit einer Kamera-Videoquelle aktiviert.
// Enable publisher audio fallback
Publisher = new Publisher.Builder(context)
{
PublisherAudioFallback = true
}.Build();
// Enable publisher audio fallback and disable subscriber audio fallback
Publisher = new Publisher.Builder(context)
{
PublisherAudioFallback = true,
SubscriberAudioFallback = false
}.Build();
// Enable subscriber audio fallback and disable publisher audio fallback
Publisher = new Publisher.Builder(context)
{
PublisherAudioFallback = false,
SubscriberAudioFallback = true
}.Build();
Audio fallback events
Wenn das Publisher Audio Fallback aktiviert ist, wird die Herausgeber Objekt löst Ereignisse aus, die sich auf Audio-Fallback beziehen:
Publisher.VideoDisableWarning- Wird gesendet, wenn der Herausgeber feststellt, dass sich die Qualität des Streams verschlechtert hat und das Video deaktiviert wird, wenn sich die Qualität weiter verschlechtert. Publisher.VideoDisableWarningLifted - Wird gesendet, wenn der Herausgeber feststellt, dass sich die Qualität des Streams so weit verbessert hat, dass die Deaktivierung des Videos kein unmittelbares Risiko mehr darstellt.Publisher.VideoDisabled- Wird gesendet, wenn der Herausgeber feststellt, dass sich die Qualität des Streams verschlechtert hat und der ausgehende Videotransport deaktiviert wurde. Hinweis: Auch wenn das Video deaktiviert ist, zeigt der Publisher das Publisher-Video (z. B. das Kamerabild) in der Benutzeroberfläche des Publishing-Clients an.Publisher.VideoEnabled- Wird mit dem Grund "Qualität" gesendet, wenn der Herausgeber feststellt, dass sich die Qualität des Streams verbessert hat und der ausgehende Videotransport wieder aktiviert wurde.
Der folgende Code behandelt zum Beispiel die entsprechenden Ereignisse (so dass Sie Ihre eigenen Benachrichtigungen für die Benutzeroberfläche bereitstellen können):
publisher.VideoDisableWarning += (object sender) =>
{
// Custom action — for example, add custom UI notification
}
publisher.VideoDisableWarningLifted += (object sender) =>
{
// Custom action — for example, remove custom UI notification
}
publisher.VideoDisabled += (object sender, VideoEventArgs e) =>
{
// Custom action — for example, add custom UI notification
}
publisher.VideoEnabled += (object sender, VideoEventArgs e) =>
{
// Custom action — for example, remove custom UI notification
}
Aus Sicht des Teilnehmers zeigen die folgenden Ereignisse an, dass ein Audio-Fallback stattgefunden hat. Diese Ereignisse sind zwar an den Obwohl diese Ereignisse an den Teilnehmer gebunden sind, können sie sowohl aufgrund des Audio-Fallbacks des Teilnehmers als auch als Folge des Audio-Fallbacks des Herausgebers auftreten. Mit anderen Worten, der Unterschied zwischen Publisher- und Subscriber-Audio-Fallback besteht darin, dass im Falle des Publishers der Publishing-Client den Audio-Fallback aufgrund seiner eigenen Stream-Verschlechterung auslösen kann, weshalb zusätzliche verlagsseitige Ereignisse ausgelöst werden. Für Subscriber Audio Fallback bewertet der Vonage Video Media Router die Netzwerkverschlechterung, die den Teilnehmer betrifft. In beiden Fällen werden bei Publisher- oder Teilnehmer-Audio-Fallback werden in beiden Fällen immer Teilnehmer-Ereignisse versendet, um anzuzeigen, dass ein Audio-Fallback für den Empfänger stattgefunden hat.
Wenn das Teilnehmer-Audio-Fallback aktiviert ist, wird die Abonnent Objekt löst Ereignisse aus, die sich auf Audio-Fallback beziehen:
Subscriber.VideoDisableWarning- Wird gesendet, wenn festgestellt wird, dass sich die Qualität des Streams verschlechtert hat und das Video deaktiviert wird, wenn sich die Qualität weiter verschlechtert. Subscriber.VideoDisableWarningLifted - Wird gesendet, wenn festgestellt wird, dass sich die Qualität des Streams so weit verbessert hat, dass die Deaktivierung des Videos kein unmittelbares Risiko mehr darstellt.Subscriber.VideoDisabled- Wird gesendet, wenn festgestellt wird, dass sich die Qualität des Streams verschlechtert hat und der ausgehende Videotransport deaktiviert wurde. Hinweis: Auch wenn das Video deaktiviert ist, zeigt der Abonnent das Abonnentenvideo (z. B. das Kamerabild) in der Benutzeroberfläche des Veröffentlichungsclients an.Subscriber.VideoEnabled- Wird mit dem Grund "Qualität" gesendet, wenn festgestellt wird, dass sich die Qualität des Streams verbessert hat und der ausgehende Videotransport wieder aktiviert wurde.
Der folgende Code behandelt zum Beispiel die entsprechenden Ereignisse (so dass Sie Ihre eigenen Benachrichtigungen für die Benutzeroberfläche bereitstellen können):
subscriber.VideoDisableWarning += (object sender) =>
{
// Custom action — for example, add custom UI notification
}
subscriber.VideoDisableWarningLifted += (object sender) =>
{
// Custom action — for example, remove custom UI notification
}
subscriber.VideoDisabled += (object sender, VideoEventArgs e) =>
{
// Custom action — for example, add custom UI notification
}
subscriber.VideoEnabled += (object sender, VideoEventArgs e) =>
{
// Custom action — for example, remove custom UI notification
}```