Taxa de bits máxima do editor

Este tópico inclui detalhes sobre como definir a taxa de bits máxima de vídeo usando o Vonage Client SDK para Windows:

Para obter uma visão geral da API de taxa de bits máxima do editor, consulte esse assunto.

Definir e recuperar uma predefinição

O VideoBitratePreset A enumeração inclui valores predefinidos:

  • Default
  • BwSaver
  • ExtraBwSaver
  • Custom

Veja Predefinições de taxa de bits de vídeo para obter mais detalhes sobre essas predefinições.

Para recuperar a predefinição de taxa de bits de vídeo atualmente configurada para um determinado editor, acesse o Publisher.VideoBitratePreset propriedade:

var preset = publisher.VideoBitratePreset;
if (preset == VideoBitratePreset.BwSaver)
{
    Console.WriteLine("The publisher is using the BW_SAVER preset.");
}

Para definir uma predefinição, configure o Publisher.VideoBitratePreset atribuir à propriedade um valor a partir doVideoBitratePreset enum. Não use o Custom valor.

Exemplo:

publisher.VideoBitratePreset = VideoBitratePreset.BwSaver;
Console.WriteLine("Bitrate preset successfully set to BW_SAVER.");

Definir e recuperar um valor de taxa de bits bruta

Se as predefinições não forem adequadas, você pode definir manualmente um valor personalizado de taxa de bits bruta.

Para obter a taxa de bits máxima atual do vídeo (em bits por segundo), acesse o Publisher.MaxVideoBitrate propriedade. Se nenhum valor personalizado for definido, ela será definida como 0.

Exemplo:

int maxBitrate = publisher.MaxVideoBitrate;
Console.WriteLine($"Current max video bitrate: {maxBitrate} bps");

Para definir uma taxa de bits máxima personalizada (em vez de uma predefinição), atribua um valor (entre 5.000 e 10.000.000) ao MaxVideoBitrate propriedade.

Exemplo:

int newBitrate = 300000; // 300 kbps
publisher.MaxVideoBitrate = newBitrate;
Console.WriteLine($"Successfully set max video bitrate to {newBitrate} bps.");

Veja Definição de valores de taxa de bits bruta para mais detalhes.

Casos especiais

Definir o valor da taxa de bits bruta como 0 remove qualquer limitação de taxa de bits definida anteriormente, retornando ao comportamento padrão.

int zeroBitrate = 0;  // no limitations
int newBitrate = 300000;

publisher.MaxVideoBitrate = newBitrate;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == newBitrate);

publisher.MaxVideoBitrate = zeroBitrate;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == zeroBitrate);

Definir uma taxa de bits personalizada faz com que o VideoBitratePreset propriedade a ser definida como VideoBitratePreset.Custom:

publisher.MaxVideoBitrate = 1000000; // 1 Mbps
System.Diagnostics.Debug.Assert(publisher.VideoBitratePreset == VideoBitratePreset.Custom);

publisher.MaxVideoBitrate = 0;
System.Diagnostics.Debug.Assert(publisher.VideoBitratePreset == VideoBitratePreset.Default);

O MaxVideoBitrate A propriedade retorna 0 quando o editor está usando uma predefinição:

publisher.VideoBitratePreset = VideoBitratePreset.BwSaver;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == 0);

publisher.VideoBitratePreset = VideoBitratePreset.ExtraBwSaver;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == 0);

publisher.MaxVideoBitrate = 200000;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == 200000);

publisher.VideoBitratePreset = VideoBitratePreset.Default;
System.Diagnostics.Debug.Assert(publisher.MaxVideoBitrate == 0);