#include <subscriber.h>

Campos de dados
void(* on_connected )(otc_assinante *assinante, void *dados_do_usuário, const otc_stream *transmissão)
void(* on_disconnected )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_reconnected )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_render_frame )(otc_assinante *assinante, void *dados_do_usuário, const otc_video_frame *quadro)
void(* on_video_desativado )(otc_assinante *assinante, void *dados_do_usuário, enumeração otc_video_reason motivo)
void(* on_video_enabled )(otc_assinante *assinante, void *dados_do_usuário, enumeração otc_video_reason motivo)
void(* on_audio_desativado )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_audio_enabled )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_video_data_received )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_video_desativar_aviso )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_caption_text )(otc_assinante *assinante, void *dados_do_usuário, const char *text, otc_bool is_final)
void(* aviso_sobre_desativação_do_vídeo_retirado )(otc_assinante *assinante, void *dados_do_usuário)
void(* on_audio_stats )(otc_assinante *assinante, void *dados_do_usuário, struct otc_subscriber_audio_stats (audio_stats)
void(* on_video_stats )(otc_assinante *assinante, void *dados_do_usuário, struct otc_subscriber_video_stats video_stats)
void(* on_audio_level_updated )(otc_assinante *assinante, void *dados_do_usuário, float nível_de_áudio)
void(* on_error )(otc_assinante *assinante, void *dados_do_usuário, const char *error_string, enum otc_subscriber_error_code erro)
void(* on_audio_data )(otc_assinante *assinante, void *dados_do_usuário, const struct otc_audio_data *dados_de_áudio)
void * dados_do_usuário
void * reservado

Descrição detalhada

Funções de retorno de chamada do assinante.

Essa estrutura é um conjunto de ponteiros para funções que podem ser chamadas em caso de eventos relacionados a um assinante do OpenTok.

Todas as chamadas de retorno não serão executadas na thread do aplicativo ou na thread principal, mas em uma thread interna. O aplicativo deve retornar a chamada de retorno o mais rápido possível para evitar o bloqueio da thread interna.

Documentação de campo

on_audio_data

void(* on_audio_data) (otc_assinante *assinante, void *dados_do_usuário, const struct otc_audio_data *dados_de_áudio)

É chamado periodicamente para relatar os dados de áudio do assinante. As propriedades do áudio recebido podem mudar dinamicamente. As causas dessas mudanças incluem a negociação do codec de áudio, as condições da rede, etc. Os consumidores dos dados de áudio são responsáveis por lidar com essas mudanças de acordo com o caso de uso implementado (por exemplo, reamostragem de áudio).

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário associados a esta estrutura. | | audio_data | Os dados de áudio. |

on_audio_desativado

void(* on_audio_disabled) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando o áudio do assinante está desativado.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_audio_enabled

void(* on_audio_enabled) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando o áudio do assinante está ativado.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_audio_level_updated

void(* on_audio_level_updated) (otc_assinante *assinante, void *dados_do_usuário, float nível_de_áudio)

É chamado periodicamente para informar o nível de áudio do assinante.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | audio_level | O valor do nível de áudio, de 0 a 1,0. |

on_audio_stats

void(* on_audio_stats) (otc_assinante *assinante, void *dados_do_usuário, struct otc_subscriber_audio_stats (audio_stats)

É chamado periodicamente para relatar estatísticas de áudio do assinante.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | audio_stats | Um ponteiro para a estrutura de estatísticas de áudio. |

on_caption_text

void(* on_caption_text) (otc_assinante *assinante, void *dados_do_usuário, const char *text, otc_bool is_final)

É chamado quando o texto da legenda do stream do assinante estiver disponível.

Parâmetros : | | | | --- | --- | | subscriber | A instância do assinante. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | text | Ponteiro para o texto da legenda. | | is_final | Indica se uma legenda está concluída. |

on_connected

void(* on_connected) (otc_assinante *assinante, void *dados_do_usuário, const otc_stream *transmissão)

É chamado quando a instância se conecta com sucesso ao stream e começa a reproduzir a mídia.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | stream | O fluxo do assinante. A instância não sobrevive à execução da função de retorno de chamada. Certifique-se de fazer uma cópia caso essa instância seja usada posteriormente. |

on_disconnected

void(* on_disconnected) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando o fluxo do assinante é interrompido.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_error

void(* on_error) (otc_assinante *assinante, void *dados_do_usuário, const char *error_string, enum otc_subscriber_error_code erro)

É chamado quando o assinante falha.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | error_string | Uma string contendo a mensagem de erro. | | error | Valor da enumeração do código de erro. |

on_reconnected

void(* on_reconnected) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando a transmissão do assinante é retomada.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_render_frame

void(* on_render_frame) (otc_assinante *assinante, void *dados_do_usuário, const otc_video_frame *quadro)

É chamado quando um novo quadro de vídeo para o assinante está pronto para ser renderizado.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | frame | O quadro de vídeo. |

on_video_data_received

void(* on_video_data_received) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando um assinante recebe dados de vídeo pela primeira vez.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_video_desativar_aviso

void(* on_video_disable_warning) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando o OpenTok Media Router determina que a qualidade da transmissão se deteriorou e que o vídeo será desativado caso a qualidade se deteriore ainda mais.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

aviso_sobre_desativação_do_vídeo_retirado

void(* on_video_disable_warning_lifted) (otc_assinante *assinante, void *dados_do_usuário)

É chamado quando o OpenTok Media Router determina que a qualidade da transmissão melhorou a ponto de a desativação do vídeo não representar um risco imediato.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. |

on_video_desativado

void(* on_video_disabled) (otc_assinante *assinante, void *dados_do_usuário, enumeração otc_video_reason motivo)

É chamado quando o vídeo do assinante é desativado.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | reason | Fornece mais detalhes sobre o motivo pelo qual o vídeo foi desativado. |

on_video_enabled

void(* on_video_enabled) (otc_assinante *assinante, void *dados_do_usuário, enumeração otc_video_reason motivo)

É chamado quando o vídeo do assinante é ativado.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | reason | Fornece mais detalhes sobre o motivo pelo qual o vídeo foi ativado. |

on_video_stats

void(* on_video_stats) (otc_assinante *assinante, void *dados_do_usuário, struct otc_subscriber_video_stats video_stats)

É chamado periodicamente para relatar as estatísticas de vídeo do assinante.

Parâmetros : | | | | --- | --- | | subscriber | A instância que está invocando esta chamada. | | user_data | Ponteiro para os dados personalizados do usuário vinculados a esta estrutura. | | video_stats | Um ponteiro para a estrutura de estatísticas do vídeo. |

reservado

void* reservado

Um ponteiro nulo para uma área de memória que contém recursos reservados utilizados para a implementação interna.

dados_do_usuário

void* user_data

Esse membro da estrutura pode apontar para dados relacionados ao assinante dos quais o desenvolvedor possa precisar.