Aulas
struct Dados de áudio
Define vários parâmetros relacionados a um lote de amostras de áudio. Mais...
classe Dispositivo de Áudio
Uma classe que inclui métodos para configurar o dispositivo de áudio a ser utilizado por emissores e receptores. Mais...
classe Configurações do dispositivo de áudio
Define as configurações recuperadas do IAudioDevice.GetAudioCapturerSettings() e IAudioDevice.GetAudioRendererSettings() métodos. Mais...
classe AudioTransformer
Define uma transformação de áudio a ser usada no Editor.AudioTransformers matriz. Mais...
classe Recursos
Define valores para o Capabilities propriedade de um Sessão objeto, com base na função atribuída ao token utilizado para se conectar à sessão. Mais...
classe Conexão
Representa uma conexão entre um cliente e uma sessão da Video API da Vonage. Mais...
classe Contexto
Utilizado para gerenciar recursos para Sessão, Editora, e Assinante objetos. Mais...
classe Distribuidor de Trabalhadores Dedicados
Implementação de IDispatcher que utiliza uma thread de trabalho dedicada para entregar eventos. Disponível para todas as estruturas de apresentação (WinForms, WPF, etc.). A ordem de entrega é garantida. Cada instância desta IDispatcher utiliza uma thread diferente; portanto, se for necessário usar a mesma fila, crie apenas uma instância de Distribuidor de Trabalhadores Dedicados e repasse-o para todos os OpenTok objeto que aceita um IDispatcher. Tarefas que exigem muito da CPU ou de longa duração podem ser executadas nos manipuladores de eventos, já que a thread dedicada não é utilizada para nenhuma outra finalidade. A interface do usuário não pode ser manipulada diretamente nos manipuladores de eventos. Se isso for necessário, os eventos devem ser despachados primeiro para a thread da interface do usuário. Mais...
classe DirectDispatcher
Implementação de IDispatcher que não agenda eventos de forma alguma. Ele utiliza o mesmo thread usado pela camada inferior para entregar eventos. Disponível para todas as estruturas de apresentação (WinForms, WPF, etc.). A ordem de entrega é garantida. Como se trata de uma operação nula (No-Op) IDispatcher, não importa se o mesmo DirectDispatcher é sempre utilizada ou uma nova é criada a cada vez. Tarefas que exigem muito da CPU ou de longa duração não devem ser executadas nos manipuladores de eventos, pois elas bloqueariam a thread principal da API nativa e afetariam o desempenho ou a capacidade de resposta. Além disso, chamar as funções da API do otkit diretamente dos manipuladores de eventos pode resultar em interbloqueio; portanto, se isso for necessário, primeiro reprograme a execução para uma thread diferente. A interface do usuário não pode ser manipulada diretamente nos manipuladores de eventos. Se isso for necessário, os eventos devem ser agendados primeiro para a thread da interface do usuário. IMPORTANTE: Esse tipo de IDispatcher isso atribui grande responsabilidade ao aplicativo, que não deve bloquear a thread chamadora e não pode fazer chamadas diretas à API, sendo necessário primeiro reagendar a execução. Ao mesmo tempo, isso proporciona muito mais controle sobre como o aplicativo lida com os callbacks, evitando o reagendamento quando desnecessário ou gerenciando prioridades para diferentes tipos de eventos. Isso pode resultar em melhor desempenho para o aplicativo. Mais...
interface IAudioDevice
Define um dispositivo de áudio a ser utilizado por todos os emissores e assinantes. Mais...
classe IceConfig
Uma classe para definir uma configuração personalizada do ICE. Mais...
struct IceServer
Define o objeto a ser adicionado à Lista para o CustomIceServers propriedade do IceConfig classe. Mais...
interface ICustomAudioTransformer
Interface utilizada para definir um transformador de áudio personalizado a ser usado no construtor AudioTransformer(string name, ICustomAudioTransformer transformer). Mais...
interface ICustomVideoTransformer
Interface utilizada para definir um transformador de vídeo personalizado a ser usado no VideoTransformer.VideoTransformer(string nome, ICustomVideoTransformer transformador) construtor. Mais...
interface IDispatcher
Interface para uma classe utilizada por Sessão, Editora, e Assinante casos em que é necessário agendar eventos em uma thread diferente. Mais...
interface IVideoCapturer
interface IVideoFrameConsumer
Define um consumidor de quadros de vídeo a ser utilizado pelo VideoCapturer de um Editora. Mais...
interface IVideoRenderer
Define um renderizador de vídeo a ser utilizado por um Editora ou Assinante objeto. Mais...
classe Registrador
Classe auxiliar que permite definir o nível de log utilizado pelo SDK, oferecendo, opcionalmente, um callback personalizado para o gerenciamento de logs. Essa classe oferece uma maneira mais segura de gerenciar o registro de logs nativo do que invocar diretamente a API C nativa por meio do DllImport. AVISO: CHAME o método Disable() antes de fechar o aplicativo para evitar exceções de fechamento.
classe MMAudioDevice
Implementação de um dispositivo de áudio personalizado com base na mmdeviceapi. Esse dispositivo de áudio personalizado pode ser usado no lugar do dispositivo de áudio interno padrão fornecido por OpenTok.AudioDevice. Mais...
classe Exceção OpenTok
Define os erros gerados pelo SDK do Windows da Video API da Vonage. Mais...
classe Codecs de vídeo preferenciais
Define uma configuração preferencial de codec de vídeo para um Editoraa transmissão de... Mais...
classe Editora
Um publisher captura um fluxo de áudio e vídeo das fontes que você especificar. Mais...
classe Sessão
Representa uma sessão da Video API da Vonage da qual o cliente está participando. Mais...
classe Transmissão
Representa o estado de um fluxo de áudio e vídeo em uma sessão da Video API da Vonage. Para obter as informações mais atualizadas, use o Stream propriedade de um Editora ou Assinante antes de acessar qualquer uma das propriedades do fluxo. Mais...
classe Assinante
Utilizado para consumir um fluxo de áudio e vídeo na sessão da Video API da Vonage. Mais...
classe ThreadPoolDispatcher
Implementação de IDispatcher que utiliza diferentes threads do ThreadPool gerenciado para transmitir eventos. Disponível para todas as estruturas de apresentação (WinForms, WPF, etc.). Importante: A ordem de entrega é não garantido. Todas as instâncias de ThreadPoolDispatcher enviar eventos para o mesmo pool de threads, de modo que não importa se o mesmo ThreadPoolDispatcher é sempre utilizado ou um novo é criado toda vez que um IDispatcher é necessário. Tarefas que exigem muito da CPU ou de longa duração podem ser executadas nos manipuladores de eventos, já que o sistema de pool de threads subjacente está preparado para lidar com isso. A interface do usuário não pode ser manipulada diretamente nos manipuladores de eventos. Se isso for necessário, os eventos devem ser agendados primeiro para a thread da interface do usuário. Mais...
classe VideoCapturer
Uma implementação de capturador de vídeo que captura imagens de uma das câmeras disponíveis no sistema. Mais...
classe Configurações de captura de vídeo
Define as configurações passadas ao método VideoCapturer.UpdateCaptureSettings(ref VideoCaptureSettings). Mais...
classe VideoFrame
Define um quadro de vídeo para o IVideoRenderer.RenderFrame(VideoFrame) e IVideoFrameConsumer.Consume(VideoFrame) métodos. Mais...
classe VideoTransformer
Define uma transformação de vídeo a ser usada no Editor.VideoTransformers matriz. Mais...
classe WinFormsDispatcher
Implementação de IDispatcher que utiliza a thread principal/UI do Windows Forms para distribuir eventos. Disponível apenas para aplicativos do Windows Forms. A ordem de entrega é garantida. Todas as instâncias de WinFormsDispatcher enviar eventos para a thread principal do aplicativo, de modo que não importa se o mesmo WinFormsDispatcher é sempre utilizado ou um novo é criado toda vez que um IDispatcher é obrigatório. Tarefas que exigem muito da CPU ou de longa duração não devem ser executadas nos manipuladores, pois elas bloqueariam a thread da interface do usuário e afetariam o desempenho ou a capacidade de resposta. Mais...
classe WPFDispatcher
Implementação de IDispatcher que utiliza a thread principal/de interface do usuário do WPF para despachar eventos. Disponível apenas para aplicativos WPF. A ordem de entrega é garantida. Todas as instâncias de WPFDispatcher enviar eventos para a thread principal do aplicativo, de modo que não importa se o mesmo WPFDispatcher é sempre utilizado ou um novo é criado toda vez que um IDispatcher é obrigatório. Tarefas que exigem muito da CPU ou de longa duração não devem ser executadas nos manipuladores, pois elas bloqueariam a thread da interface do usuário e afetariam o desempenho ou a capacidade de resposta. Mais...
Enumerações
enum Código de erro : int {   Erro desconhecido = -1 , GenericSDKError = 1, Falha na autorização = 1004 , InvalidSessionId = 1005 ,   Falha na conexão = 1006 , NoMessagingServer = 1503, Conexão recusada = 1023, Falha no estado da sessão = 1020,   P2PSessionMaxParticipants = 1403 , Tempo de espera da conexão da sessão = 1021, Erro interno da sessão = 2000, Tipo de sinal inválido da sessão = 1461 ,   Dados do sinal da sessão muito longos = 1413 , Tipo de sinal da sessão muito longo = 1414 , Conexão interrompida = 1022 , Sessão desconectada = 1010 ,   Erro interno do editor = 2000, Erro de WebRTC do editor = 1610, Erro na publicação = 1.500, Editor: Desconexão inesperada da conexão entre pares = 1710,   O editor não consegue acessar a câmera = 1650, PublisherCameraAccessDenied = 1670, Tempo de espera de conexão expirado = 1542, Erro de WebRTC do assinante = 1600,   O servidor do assinante não consegue localizar o fluxo = 1604, Limite de transmissão do assinante excedido = 1605, Erro interno do assinante = 2000, Instância de editor desconhecida = 2003,   Instância de assinante desconhecida = 2004, Sessão nula ou parâmetro inválido = 1011 , Falha na captura de vídeo = 3.000, Falha na câmera = 3010 ,   Falha na renderização do vídeo = 4.000, SessionSubscriberNotFound = 1112 , SessionPublisherNotFound = 1113 , Tempo limite do editor = 1541,   País com acesso bloqueado na sessão = 1026, Limite de conexão da sessão excedido = 1027, Sessão: Resposta inesperada ao solicitar informações da sessão = 2001, Estado Ilegal da Sessão = 1015 ,   Impossível forçar a desconexão da sessão = 1520 , Sessão não pôde forçar o silenciamento = 1540, Sessão incapaz de enviar sinal = 1550, Segredo de criptografia ausente = 6.000,   Erro interno de criptografia = 6001 , Erro interno de descriptografia = 6002, Incompatibilidade de segredo de criptografia = 6003, Segredo de criptografia inválido = 6004,   Codec sem suporte à criptografia = 6005, Codec sem suporte para descriptografia = 6006, Erro interno do MediaTransformer = 0x0A000000 , MediaTransformerInvalidType ,   Nome do transformador de mídia não fornecido , MediaTransformerCustomCallbackNãoFornecido , Propriedades do MediaTransformer não fornecidas , MediaTransformerModelNotFound ,   MediaTransformerOpenTokTransformersLibraryNãoCarregada , MediaTransformerOpenTokTransformersSymbolNotFound , Erro interno do OpenTokTransformers = 0x0B000000 , OpenTokTransformersParâmetroInválido ,   OpenTokTransformersNomeNãoFornecido , OpenTokTransformersNomeInválido , OpenTokTransformersPropriedadesNãoFornecidas , OpenTokTransformersFormatoDePropriedadesInválido ,   OpenTokTransformersModelFileNotFound , OpenTokTransformersRadiusPropertyNotProvided , OpenTokTransformersPropriedadeDeRaioInválida , OpenTokTransformersCustomRadiusPropertyNotProvided ,   OpenTokTransformersPropriedadeDeRaioPersonalizadaInválida , OpenTokTransformersImageFilePathPropertyNotProvided , OpenTokTransformersImageFilePathNotFound , OpenTokTransformersMlTransformerInitError }
Define os valores dos códigos de erro para objetos OpenTokException. Mais...
enum Dica de conteúdo em vídeo : int { NONE = 0, MOTION = 1, DETAIL = 2, TEXT = 3 }
Define as configurações passadas ao método VideoCapturer.SetVideoContentHint(VideoContentHint contentHint). Mais...
enum Tipo de fonte de vídeo : int { Câmera = 1, Tela = 2, Personalizado = 3 }
Define as opções para a propriedade Publisher.VideoSourceType. Mais...
enum Predefinição de taxa de bits de vídeo : int { Padrão = 0, BwSaver = 1, ExtraBwSaver = 2, Personalizado = 3 }
Define estratégias predefinidas para controlar a taxa de bits de vídeo na transmissão de um editor (consulte Publisher.VideoBitratePreset). Essas predefinições permitem aplicar estratégias de largura de banda pré-definidas sem a necessidade de especificar manualmente as taxas de bits. As predefinições são mutuamente exclusivas em relação à configuração manual da taxa de bits. Mais...
enum Preferência de degradação : int {   Não definido = -1 , Manter a taxa de quadros e a resolução = 0, Manter a taxa de quadros = 1, Manter a resolução = 2,   Equilibrado = 3 }
Descreve a política que o mecanismo de vídeo tentará seguir ao adaptar a taxa de quadros e a resolução a largura de banda e CPU limitadas. Trata-se de uma política de “melhor esforço”. Não há garantias quanto à taxa de quadros, e alguns quadros ainda podem ser pulados por outros motivos. Mais...
enum ICEIncludeServers : int { Todos = 0, Personalizado = 1 }
Define valores para o IncludeServers propriedade da classe IceConfig. Mais...
enum ICETransport : int { Todos = 0, Repassado = 1 }
Define valores para o TransportPolicy propriedade da classe IceConfig. Mais...
enum PixelFormat : int {   Desconhecido = 0, Formato YUV 420p = 1, Formato Nv12 = 2, FormatoNv21 = 3,   FormatYuy2 = 4, FormatUyvy = 5, FormatoArgb32 = 6, FormatBgra32 = 7,   FormatoRgb24 = 8, FormatAbgr32 = 9 , Formato MJPEG = 10, FormatoRgba32 = 11 }
O formato de um quadro de vídeo. Mais...
Funções
delegar (void) OnFrame (Quadro IntPtr)

Documentação sobre tipos de enumeração

Preferência de degradação

Descreve a política que o mecanismo de vídeo tentará seguir ao adaptar a taxa de quadros e a resolução a largura de banda e CPU limitadas. Trata-se de uma política de “melhor esforço”. Não há garantias quanto à taxa de quadros, e alguns quadros ainda podem ser pulados por outros motivos.

Para mais detalhes, consulte Preferência de degradação.

Recenseador
Não definido Valor padrão. O mecanismo de vídeo determinará a preferência ideal de redução de qualidade.
Manter a taxa de quadros e a resolução O mecanismo de vídeo não reduzirá a resolução e tentará manter a taxa de quadros estável. Em algumas versões do padrão, essa opção é denominada “DESATIVADA”, o que significa que nenhuma redução de qualidade será aplicada quando houver recursos limitados.
Manter a taxa de quadros O motor de vídeo tentará manter a taxa de quadros estável, mas poderá reduzir a resolução, se necessário.
Manter a resolução O motor de vídeo não reduzirá a resolução, mas poderá reduzir a taxa de quadros, se necessário.
Equilibrado O motor de vídeo tentará encontrar um equilíbrio entre a redução da resolução e da taxa de quadros, quando necessário.

Código de erro

Define os valores dos códigos de erro para Exceção OpenTok objetos.

Recenseador
Erro desconhecido Utilizado para um erro desconhecido.
GenericSDKError Utilizado para erros genéricos. Consulte a descrição do erro fornecida.
Falha na autorização Foi fornecida uma chave ou um token de API inválido.
InvalidSessionId Não foi possível conectar-se: foi fornecido um ID de sessão inválido.
Falha na conexão A sessão não conseguiu se conectar.
NoMessagingServer Ocorreu um erro ao conectar-se ao OpenTok servidor de mensagens.
Conexão recusada Não foi possível abrir um soquete para OpenTok o servidor de mensagens. Verifique se as portas de saída 443 e 8080 estão acessíveis.
Falha no estado da sessão O tempo de espera da conexão expirou durante a tentativa de obter o estado da sessão. Verifique a conexão de rede.
P2PSessionMaxParticipants Uma sessão habilitada para peer-to-peer só pode ter dois participantes.
Tempo de espera da conexão da sessão O tempo de espera da conexão expirou durante a tentativa de conexão com a sessão. Verifique a conexão de rede.
Erro interno da sessão Erro interno ao conectar-se à sessão. Tente conectar-se novamente.
Tipo de sinal inválido da sessão Tipo de sinal inválido.
Dados do sinal da sessão muito longos Sinal inválido – a sequência de dados é muito longa. O comprimento máximo é 8196.
Tipo de sinal da sessão muito longo Sinal inválido – a sequência de caracteres do tipo é muito longa. O comprimento máximo é 128.
Conexão interrompida A conexão com o OpenTok O servidor de mensagens foi desconectado. Verifique a conexão de rede.
Sessão desconectada Tentativa de publicação em uma sessão desconectada.
Erro interno do editor Ocorreu um erro interno durante a publicação. Tente publicar novamente.
Erro de WebRTC do editor Editora Falha no WebRTC.
Erro na publicação A editora não consegue publicar.
Editor: Desconexão inesperada da conexão entre pares A conexão PeerConnection do stream da emissora foi desconectada inesperadamente.
O editor não consegue acessar a câmera O editor não consegue acessar a câmera especificada.
PublisherCameraAccessDenied O usuário negou o acesso à câmera.
Tempo de espera de conexão expirado Assinante O tempo limite expirou durante a tentativa de conexão com a transmissão. Tente se inscrever novamente na transmissão.
Erro de WebRTC do assinante Assinante Falha no WebRTC.
O servidor do assinante não consegue localizar o fluxo O assinante falhou porque o fluxo não estava disponível. Isso pode ocorrer se o assinante for criado no mesmo momento em que o fluxo for removido da sessão.
Limite de transmissão do assinante excedido A inscrição não foi bem-sucedida devido ao limite do número de inscritos que os servidores suportam.
Erro interno do assinante Erro interno ao se inscrever. Tente se inscrever novamente.
Instância de editor desconhecida Não é possível retirar a publicação: Um erro desconhecido Editora a instância foi passada para o Session.Unpublish(Publisher) método.
Instância de assinante desconhecida Não é possível cancelar a inscrição: Um erro desconhecido Assinante a instância foi passada para o Session.Unsubscribe(Subscriber) método.
Sessão nula ou parâmetro inválido Você passou um parâmetro inválido ou o Sessão é nulo.
Falha na captura de vídeo Ocorreu um erro no capturador de vídeo.
Falha na câmera Ocorreu um erro ao obter o vídeo da câmera.
Falha na renderização do vídeo Ocorreu um erro no renderizador de vídeo.
SessionSubscriberNotFound O assinante é desconhecido nesta sessão. Isso geralmente ocorre como resultado da chamada de Session.Unsubscribe(Subscriber) com um assinante que não está associado à sessão.
SessionPublisherNotFound O editor é desconhecido nesta sessão. Isso geralmente ocorre como resultado da chamada de Session.Unpublish(Publisher) com um editor que não esteja transmitindo um fluxo para a sessão.
Tempo limite do editor Ocorreu um tempo limite durante a tentativa de publicação.
País com acesso bloqueado na sessão Não foi possível conectar-se à sessão. Violação dos termos de serviço: conformidade com normas de exportação.
Limite de conexão da sessão excedido A conexão falhou devido ao limite do número de conexões que os servidores suportam.
Sessão: Resposta inesperada ao solicitar informações da sessão Não foi possível conectar-se à sessão. Tente conectar-se novamente.
Estado Ilegal da Sessão Não foi possível se conectar a uma sessão que já está conectada. Ou não foi possível se inscrever em um fluxo que não está mais na sessão.
Impossível forçar a desconexão da sessão Não foi possível forçar a desconexão, talvez porque os recursos do cliente sejam limitados.
Sessão não pôde forçar o silenciamento Não foi possível forçar o silenciamento, talvez porque os recursos do cliente sejam limitados.
Sessão incapaz de enviar sinal Não foi possível enviar o sinal, talvez porque os recursos do cliente sejam limitados (por exemplo, um token apenas para publicação).
Segredo de criptografia ausente Tentou ingressar em uma sessão com criptografia de ponta a ponta sem um segredo de criptografia
Erro interno de criptografia Erro interno durante a criptografia de um pacote
Erro interno de descriptografia Erro interno ao descriptografar um pacote
Incompatibilidade de segredo de criptografia Incompatibilidade secreta durante a descriptografia de um pacote
Segredo de criptografia inválido Segredo de criptografia inválido
Codec sem suporte à criptografia Codec de mídia não compatível para criptografia
Codec sem suporte para descriptografia Codec de mídia não compatível para descriptografia

ICEIncludeServers

Define valores para o IncludeServers propriedade do IceConfig classe.

Recenseador
Todos O cliente utilizará OpenTok Servidores TURN, além dos servidores TURN personalizados que você fornecer.
Personalizado O cliente utilizará exclusivamente os servidores TURN personalizados que você fornecer.

ICETransport

Define valores para o TransportPolicy propriedade do IceConfig classe.

Recenseador
Todos O cliente utilizará todos os tipos de roteamento ICE (como host, srflx e TURN) para estabelecer a conectividade de mídia.
Repassado O cliente sempre forçará a conectividade por meio do TURN e ignorará todos os outros candidatos do ICE.

PixelFormat

enum OpenTok.PixelFormat : int

O formato de um quadro de vídeo.

Recenseador
Desconhecido Formato desconhecido.
Formato YUV 420p YUV420p.
Formato Nv12 NV12.
FormatoNv21 NV21.
FormatYuy2 YUY2.
FormatUyvy UYVY.
FormatoArgb32 ARGB de 32 bits
FormatBgra32 BGRA de 32 bits
FormatoRgb24 RGB de 24 bits
FormatAbgr32 ABGR de 32 bits
Formato MJPEG M-JPEG.
FormatoRgba32 RGBA de 32 bits

Predefinição de taxa de bits de vídeo

Define estratégias predefinidas para controlar a taxa de bits de vídeo na transmissão de um editor (consulte Predefinição de taxa de bits de vídeo do editor). Essas predefinições permitem aplicar estratégias de largura de banda predefinidas sem a necessidade de especificar manualmente as taxas de bits. As predefinições são mutuamente exclusivas em relação à configuração manual da taxa de bits.

Para mais detalhes, consulte Taxa de bits máxima do editor.

Recenseador
Padrão Configuração padrão. Não são aplicadas restrições adicionais. Este é o modo padrão.
BwSaver Predefinição para economia de largura de banda. Aplica restrições moderadas para reduzir o uso de largura de banda, mantendo uma qualidade de vídeo razoável.
ExtraBwSaver Predefinição extra para economia de largura de banda. Aplica restrições rigorosas para minimizar o uso de largura de banda.
Personalizado Taxa de bits personalizada. Representa uma taxa de bits configurada manualmente por meio da propriedade MaxVideoBitrate. É retornada para fins de monitoramento, mas não pode ser definida diretamente.

Dica de conteúdo em vídeo

Define as configurações passadas para o VideoCapturer.SetVideoContentHint(VideoContentHint contentHint) método.

Recenseador
NONE Não é fornecida nenhuma dica (é o padrão).
MOTION A trilha deve ser tratada como se contivesse um vídeo em que o movimento seja importante.
DETAIL Essa faixa deve ser tratada como se os detalhes do vídeo fossem extremamente importantes. Por exemplo, você pode usar essa configuração para uma transmissão que contenha conteúdo de texto, pinturas ou desenhos a linha.
TEXT A trilha deve ser tratada como se os detalhes do vídeo fossem extremamente importantes e como se bordas bem definidas e áreas de cor uniforme pudessem ocorrer com frequência. Por exemplo, você pode usar essa configuração para uma transmissão que contenha conteúdo de texto.

Tipo de fonte de vídeo

Define as opções para o Publisher.VideoSourceType propriedade.

Recenseador
Câmera Uma fonte de vídeo de câmera.
Tela Uma fonte de vídeo para compartilhamento de tela.
Personalizado Uma fonte de vídeo personalizada. O tipo de vídeo de transmissão personalizada se aplica apenas a transmissões geradas pela Web.