Funções básicas. Mais...

#include "config.h"

Estruturas de Dados
struct otc_on_mute_forced_info
struct otc_transport_stats
Definições de tipos
typedef int otc_bool
typedef int otc_status
typedef void(* otc_logger_callback) (const char *mensagem)
Enumerações
enum otc_video_reason {   OTC_VIDEO_REASON_NONE = 0, OTC_VIDEO_REASON_PUBLISH_VIDEO = 1, OTC_VIDEO_REASON_SUBSCRIBE_TO_VIDEO = 2, OTC_VIDEO_REASON_QUALITY = 3,   OTC_VIDEO_REASON_CODEC_NOT_SUPPORTED = 4, OTC_VIDEO_REASON_QUALITY_DEGRADATION_BANDWIDTH = 5, OTC_VIDEO_REASON_QUALITY_DEGRADATION_CPU , OTC_VIDEO_REASON_QUALITY_DEGRADATION_OTHER = 7,   OTC_VIDEO_REASON_CODEC_CHANGE = 8, OTC_VIDEO_REASON_RESOLUTION_CHANGE = 9 , OTC_VIDEO_REASON_VIDEO_INTERRUPTION = 10, OTC_VIDEO_REASON_SENDER_QUALITY_RESTRICTION = 11 }
enum otc_network_reason {   OTC_NETWORK_REASON_NONE = 0, OTC_NETWORK_REASON_UNKNOWN = 1, OTC_NETWORK_REASON_BANDWIDTH = 2, OTC_NETWORK_REASON_PACKET_LOSS = 3,   OTC_NETWORK_REASON_NETWORK_CONDITION_CHANGE = 4 }
enum otc_constant { OTC_SUCCESS = 0, OTC_FALSE = 0, OTC_TRUE = !OTC_FALSE }
enum otc_error_code {   OTC_INVALID_PARAM = 1, OTC_FATAL = 2, OTC_INVALID_VIDEO_FORMAT = 3, OTC_CONNECTION_DROPPED = 1022 ,   OTC_UNABLE_TO_FORCE_DISCONNECT = 1520 , OTC_UNABLE_TO_FORCE_MUTE = 1540, OTC_CONNECTION_TIMED_OUT = 1542, OTC_UNKNOWN_PUBLISHER_INSTANCE = 2003,   OTC_UNKNOWN_SUBSCRIBER_INSTANCE = 2004, OTC_VIDEO_CAPTURE_FAILED = 3.000, OTC_CAMERA_FAILED = 3010 , OTC_VIDEO_RENDER_FAILED = 4.000,   OT_UNABLE_TO_ACCESS_MEDIA_ENGINE = 5.000 }
enum otc_log_level {   OTC_LOG_LEVEL_DISABLED = 0, OTC_LOG_LEVEL_ERROR = 1, OTC_LOG_LEVEL_WARN = 2, OTC_LOG_LEVEL_INFO = 3,   OTC_LOG_LEVEL_DEBUG = 4, OTC_LOG_LEVEL_TRACE = 5, OTC_LOG_LEVEL_FATAL = OTC_LOG_LEVEL_ERROR, OTC_LOG_LEVEL_MSG = OTC_LOG_LEVEL_DEBUG,   OTC_LOG_LEVEL_ALL = OTC_LOG_LEVEL_TRACE }
enum otc_network_condition {   OTC_NETWORK_CONDITION_UNKNOWN = 0, OTC_NETWORK_CONDITION_CRITICAL = 1, OTC_NETWORK_CONDITION_WARNING = 2, OTC_NETWORK_CONDITION_FAIR = 3,   OTC_NETWORK_CONDITION_GOOD = 4, OTC_NETWORK_CONDITION_EXCELLENT = 5 }
Pontuação estimada do estado da rede para um transporte. Mais...
enum otc_network_degradation_source { OTC_NETWORK_DEGRADATION_SOURCE_NONE = 0, OTC_NETWORK_DEGRADATION_SOURCE_BOTH_OR_UNCLEAR , OTC_NETWORK_DEGRADATION_SOURCE_LOCAL , OTC_NETWORK_DEGRADATION_SOURCE_REMOTE }
Funções
otc_status otc_init (void *reservado)
otc_status otc_destroy ()
nulo otc_log_set_logger_callback (otc_logger_callback (chamada de retorno)
nulo otc_log_enable (enum otc_log_level log_level)
enum otc_log_level otc_get_log_level ()

Descrição detalhada

Funções básicas.

Este arquivo inclui funções utilizadas para inicializar e desativar o mecanismo da biblioteca, bem como outras funções para habilitar o registro de log no console.

Documentação sobre `typedef`

otc_bool

typedef int otc_bool

Definição de tipo para valores booleanos.

Tipo útil para variáveis que representam valores booleanos (verdadeiro e falso).

otc_logger_callback

typedef void(* otc_logger_callback) (const char *message)

Definição de tipo para um ponteiro de função que aponta para a função utilizada como callback de registro personalizado para obter as mensagens registradas pelo SDK.

Parâmetros : | | | | --- | --- | | mensagem | Um ponteiro para a mensagem que está sendo registrada. |

Veja também : otc_log_set_logger_callback

otc_status

typedef int otc_status

Definição de tipo para status.

Este é o tipo mais comum de valor de retorno para funções nesta biblioteca. Esse tipo inclui valores das enumerações de códigos de erro.

Veja também : otc_constant : otc_error_code : otc_session_error_code : otc_publisher_error_code : otc_subscriber_error_code

Documentação sobre tipos de enumeração

otc_constant

Essa enumeração inclui constantes comumente utilizadas.

Recenseador
OTC_SUCCESS Constante que representa o sucesso.
OTC_FALSE Constante que representa o valor falso.
OTC_TRUE Constante que representa “verdadeiro”.

otc_error_code

Essa enumeração inclui códigos de erro.

Recenseador
OTC_INVALID_PARAM Código de erro de argumento inválido na função. Um argumento utilizado na chamada de função não é válido.
OTC_FATAL Código de erro fatal. Erro genérico.
OTC_INVALID_VIDEO_FORMAT Formato de vídeo inválido Gerado quando o capturador está configurado com um formato de vídeo inválido
OTC_CONNECTION_DROPPED Código de erro de conexão interrompida. A conexão com o servidor de mensagens do OpenTok foi interrompida. Verifique a conexão de rede.
OTC_UNABLE_TO_FORCE_DISCONNECT Código de erro de desconexão forçada. Não foi possível realizar a chamada com sucesso otc_session_force_disconnect, talvez por falta de permissões.
OTC_UNABLE_TO_FORCE_MUTE Código de erro de silenciamento forçado. Não foi possível realizar a chamada com sucesso otc_session_force_mute_all ou otc_session_force_mute_stream, talvez por falta de permissões.
OTC_CONNECTION_TIMED_OUT Código de erro de tempo limite de conexão. Ocorreu tempo limite durante a execução de uma ação de conexão.
OTC_UNKNOWN_PUBLISHER_INSTANCE Código de erro de instância desconhecida do Publisher. Uma instância desconhecida do Publisher foi usada como argumento de função.
OTC_UNKNOWN_SUBSCRIBER_INSTANCE Código de erro de instância de assinante desconhecida. Uma instância de assinante desconhecida foi usada como argumento de função.
OTC_VIDEO_CAPTURE_FAILED Código de erro de captura de vídeo. Ocorreu um erro com o capturador de vídeo.
OTC_CAMERA_FAILED Código de erro na captura de vídeo da câmera. Ocorreu um erro durante a captura de vídeo da câmera.
OTC_VIDEO_RENDER_FAILED Código de erro na renderização do vídeo. Ocorreu um erro durante a renderização do vídeo.
OT_UNABLE_TO_ACCESS_MEDIA_ENGINE Código de erro de acesso ao mecanismo de mídia. Ocorreu um erro ao tentar obter a lista de codecs de vídeo compatíveis.

otc_log_level

Enumeração dos níveis de log.

Esta enumeração representa os diferentes níveis de registro suportados.

Recenseador
OTC_LOG_LEVEL_DISABLED Valor da enumeração “Sem mensagens”.
OTC_LOG_LEVEL_ERROR Mensagens de nível de erro.
OTC_LOG_LEVEL_WARN Mensagens de nível de alerta.
OTC_LOG_LEVEL_INFO Mensagens de nível de informação.
OTC_LOG_LEVEL_DEBUG Mensagens de nível de depuração.
OTC_LOG_LEVEL_TRACE Mensagens de nível de rastreamento (mais detalhadas).
OTC_LOG_LEVEL_FATAL OBsoleto.
OTC_LOG_LEVEL_MSG OBsoleto.
OTC_LOG_LEVEL_ALL OBsoleto.

otc_network_condition

Pontuação estimada do estado da rede para um transporte.

Esta enumeração representa o estado geral da conexão de rede para um determinado transporte (local ou remoto). Normalmente, ela é calculada a partir de métricas como perda de pacotes e largura de banda disponível estimada. Valores mais altos indicam melhores condições de rede.

OTC_NETWORK_CONDITION_WARNING e OTC_NETWORK_CONDITION_CRITICAL indicam condições de rede prejudicadas que podem acionar callbacks de fallback de áudio. Se o fallback de áudio estiver habilitado, o SDK notificará por meio dos callbacks correspondentes e, no estado CRITICAL, o vídeo será desativado para preservar a estabilidade da chamada.

Recenseador
OTC_NETWORK_CONDITION_UNKNOWN Não foi possível determinar o estado da rede
OTC_NETWORK_CONDITION_CRITICAL Problemas graves de rede; o recurso de fallback de áudio é acionado, se estiver habilitado
OTC_NETWORK_CONDITION_WARNING Condições de rede insatisfatórias; a qualidade do vídeo é fortemente afetada e um aviso de desativação do vídeo pode ser exibido se o recurso de fallback de áudio estiver ativado
OTC_NETWORK_CONDITION_FAIR Condições moderadas da rede; a qualidade do vídeo pode ser limitada pelo servidor de mídia ou pelo usuário conectado
OTC_NETWORK_CONDITION_GOOD Boas condições de rede; podem ocorrer pequenos problemas temporários
OTC_NETWORK_CONDITION_EXCELLENT Condições de rede excelentes; a qualidade do vídeo é ótima e a largura de banda estimada é suficiente para suportar a taxa de bits máxima para a resolução atual

otc_network_degradation_source

Indica a origem da degradação do vídeo ou da rede na sessão.

Essa enumeração identifica qual das partes envolvidas na chamada é responsável pelos problemas de rede observados que afetam a qualidade do vídeo. Ela complementa as métricas de condição da rede por meio de transporte.

Recenseador
OTC_NETWORK_DEGRADATION_SOURCE_NONE Não foi detectada nenhuma perda de qualidade; a qualidade do vídeo é boa.
OTC_NETWORK_DEGRADATION_SOURCE_BOTH_OR_UNCLEAR Foi detectada uma degradação, mas não é possível determinar de que lado ela se originou.
OTC_NETWORK_DEGRADATION_SOURCE_LOCAL A rede local ou a infraestrutura de transporte é a causa da degradação.
OTC_NETWORK_DEGRADATION_SOURCE_REMOTE A rede remota ou o transporte são a causa da degradação.

otc_network_reason

Enumeração que descreve os motivos que afetam o estado da rede.

Esses valores indicam o principal fator que afeta a avaliação atual das condições da rede, como restrições de largura de banda ou perda de pacotes.

Recenseador
OTC_NETWORK_REASON_NONE Não há motivo específico.
OTC_NETWORK_REASON_UNKNOWN Motivo desconhecido.
OTC_NETWORK_REASON_BANDWIDTH A pontuação da condição da rede é influenciada pela largura de banda.
OTC_NETWORK_REASON_PACKET_LOSS A pontuação da condição da rede é afetada pela perda de pacotes.
OTC_NETWORK_REASON_NETWORK_CONDITION_CHANGE Indica que a condição da rede do participante local ou remoto sofreu alteração. É acionado quando é detectada uma alteração significativa na rede do participante local ou remoto.

otc_video_reason

Enumeração dos motivos pelos quais um vídeo pode ser iniciado, interrompido, retomado etc.

Recenseador
OTC_VIDEO_REASON_NONE Não houve perda de qualidade nem nenhum evento notável no vídeo. Motivo padrão ou desconhecido.
OTC_VIDEO_REASON_PUBLISH_VIDEO O cliente responsável pela transmissão interrompeu a transmissão do vídeo.
OTC_VIDEO_REASON_SUBSCRIBE_TO_VIDEO O cliente local cancelou a assinatura do serviço de vídeo.
OTC_VIDEO_REASON_QUALITY O problema com o vídeo foi causado por uma alteração na qualidade do stream de vídeo.
OTC_VIDEO_REASON_CODEC_NOT_SUPPORTED O problema com o vídeo ocorreu porque o vídeo na transmissão do assinante foi desativado, já que a transmissão utiliza um codec de vídeo que não é compatível com o dispositivo.
OTC_VIDEO_REASON_QUALITY_DEGRADATION_BANDWIDTH Deterioração da qualidade devido à largura de banda insuficiente da rede.
OTC_VIDEO_REASON_QUALITY_DEGRADATION_CPU Deterioração da qualidade causada por limitações da CPU no dispositivo cliente.
OTC_VIDEO_REASON_QUALITY_DEGRADATION_OTHER Deterioração da qualidade causada por outro motivo
OTC_VIDEO_REASON_CODEC_CHANGE O codec de vídeo foi alterado
OTC_VIDEO_REASON_RESOLUTION_CHANGE Alteração na resolução do vídeo ou no número de camadas. Isso pode ocorrer devido a restrições de taxa de bits, adaptação do codificador, alterações na fonte da câmera (por exemplo, troca de câmera ou alteração da resolução de entrada) ou alterações na configuração, e nem sempre implica em perda de qualidade.
OTC_VIDEO_REASON_VIDEO_INTERRUPTION Evento de interrupção de vídeo
OTC_VIDEO_REASON_SENDER_QUALITY_RESTRICTION Qualidade de vídeo restrita pelo remetente

Documentação da função

otc_destroy()

otc_status otc_destroy ( )

Destrui o mecanismo da biblioteca. Você deve chamar essa função ao concluir a execução do código que utiliza a biblioteca.

Retornos : Valor de retorno que indica se houve erro ou sucesso.

otc_get_log_level()

enum otc_log_level otc_get_log_level ( )

Obtém o nível atual de registro do console.

Retorna : O nível de log definido.

otc_init()

otc_status otc_init ( void * reservado )

Inicializa a biblioteca. É necessário chamar essa função antes da execução de qualquer outro código que utilize a biblioteca.

Parâmetros : | | | | --- | --- | | reservado | Um ponteiro `void` para uma área de memória que contém recursos reservados utilizados para a implementação interna. Deve ser definido como NULL. |

Retornos : Valor de retorno que indica se houve erro ou sucesso.

otc_log_enable()

void otc_log_enable ( enum otc_log_level nível_de_registro )

Habilita o registro de mensagens do SDK para um determinado nível de log.

Parâmetros : | | | | --- | --- | | log_level | O nível de registro desejado. |

Veja também : otc_log_set_logger_callback : otc_get_log_level

otc_log_set_logger_callback()

void otc_log_set_logger_callback ( otc_logger_callback chamada de retorno )

Define o ponteiro de função para uma função de retorno de chamada de registro personalizada, a fim de obter as mensagens registradas pelo SDK. Se você não definir uma função de retorno de chamada de registro, o SDK registrará as mensagens no console.

Parâmetros : | | | | --- | --- | | callback | Um ponteiro para a função de retorno de chamada. |

Veja também : otc_log_enable