iOS SDK
Referência da API AOQ iOS SDK
índice API
Ciclo de vida do motor
| API |
Descrição |
| createEngine:delegado: |
Crie a instância do mecanismo (singleton) |
| destruir |
Destrua a instância do mecanismo |
| getVersão |
Obtenha a string da versão do SDK |
| conectar: |
Conecte-se ao servidor de retransmissão |
| desconectar |
Desconectar do servidor |
Gerenciamento de dispositivos de áudio
| API |
Descrição |
| startAudioCapture: |
Abra o dispositivo de captura de áudio (microfone) |
| pararAudioCaptura |
Feche o dispositivo de captura de áudio |
| muteAudioCapture: |
Ativar ou ativar captura de áudio |
| iniciarAudioPlayer: |
Iniciar a reprodução de áudio (reproduzir áudio remoto) |
| pararAudioPlayer |
Pare a reprodução de áudio |
| pausaAudioPlayer: |
Pause a reprodução de áudio com fade-out opcional |
| retomarÁudioPlayer: |
Retomar a reprodução de áudio com fade-in opcional |
| interromperAudioPlayer:fadeMs: |
Interromper a chamada de áudio atual |
| ativar viva-voz: |
Alternar a saída de áudio entre alto-falante e fone de ouvido |
| está viva-voz habilitado |
Consultar se o alto-falante está atualmente ativo |
| setAudioSessionRestriction: |
Definir permissões de controle AVAudioSession |
| enableLocalAudioVolumeIndicação: |
Configurar indicação de volume de captura local |
Configuração do codec de áudio
| API |
Descrição |
| setAudioEncoderConfig: |
Definir parâmetros de codificação de áudio |
| setAudioDecoderConfig: |
Definir parâmetros de decodificação de áudio |
| API |
Descrição |
| startVideoCaptura: |
Abra o dispositivo de captura de vídeo (câmera) |
| pararVideoCapture |
Feche o dispositivo de captura de vídeo |
| mudarCâmera: |
Alternar entre câmeras frontal e traseira |
| setLocalView:canvas: |
Definir ou remover a visualização de renderização de vídeo local |
| setRemoteView:canvas: |
Definir ou remover a visualização de renderização remota de vídeo |
| startScreenCapture: |
Iniciar captura de tela |
| pararScreenCapture |
Pare a captura de tela |
| API |
Descrição |
| setVideoEncoderConfig: |
Definir parâmetros de codificação de vídeo |
| pushExternalVideoCapturedFrame:frame: |
Enviar um quadro de vídeo bruto capturado externamente |
| pushExternalVideoEncodedFrame:frame: |
Enviar um quadro de vídeo codificado externamente |
| setVideoDecoderConfig: |
Definir parâmetros de decodificação de vídeo |
Controle de fluxo de mídia
| API |
Descrição |
| enableSendMediaStream:enable: |
Habilitar ou desabilitar envio de fluxo de mídia local |
Reprodução de arquivo de áudio
| API |
Descrição |
| startAudioFile:config: |
Comece a transmitir um arquivo de áudio local |
| stopAudioFile: |
Pare a reprodução do arquivo de áudio |
| pausaÁudioArquivo: |
Pausar a reprodução do arquivo de áudio |
| retomarÁudioArquivo: |
Retomar a reprodução do arquivo de áudio |
| getAudioFileDuration: |
Obtenha a duração total do arquivo de áudio |
| getAudioFileCurrentPosição: |
Obtenha a posição de reprodução atual |
| setAudioFilePositionMillis:posiçãoMillis: |
Busque uma posição no arquivo de áudio |
| setAudioFileVolume:tipo:volume: |
Defina o volume do arquivo de áudio |
| getAudioFileVolume:tipo: |
Obtenha o volume atual do arquivo de áudio |
Fluxos de áudio externos
| API |
Descrição |
| addAudioExternalStream:config: |
Adicione um fluxo de áudio externo |
| removeAudioExternalStream: |
Remover um fluxo de áudio externo |
| pushAudioExternalStreamData:dados: |
Enviar dados de áudio PCM externos |
| setAudioExternalStreamVolume:tipo:volume: |
Definir o volume para um fluxo de áudio externo |
| getAudioExternalStreamVolume:tipo: |
Obtenha o volume de um fluxo de áudio externo |
| clearAudioExternalStreamBuffer:fadeoutMs: |
Limpe o buffer para um fluxo de áudio externo |
Mensagens em tempo real
| API |
Descrição |
| enviarDataMsg: |
Envie uma mensagem de dados em tempo real |
Retornos de chamada de quadro de áudio
| API |
Descrição |
| setAudioFrameObserver: |
Defina o delegado de retorno de chamada de dados do quadro de áudio |
| enableAudioFrameObserver:audioFonte:config: |
Habilitar ou desabilitar retornos de chamada de quadro de áudio em um ponto especificado |
Retornos de chamada de quadro de vídeo
| API |
Descrição |
| setVideoFrameObserver: |
Defina o delegado de retorno de chamada de dados do quadro de vídeo |
| enableVideoFrameObserver:videoFonte:config: |
Ativar ou desativar retornos de chamada de quadro de vídeo em um ponto especificado |
Retornos de chamada AoqEngineDelegate
| Retorno de chamada |
Descrição |
| onError:mensagem: |
Retorno de chamada de erro do mecanismo |
| onWarning:mensagem: |
Retorno de chamada de aviso do motor |
| onConnectionStatusChange: |
Retorno de chamada de mudança de estado de conexão |
| onStats: |
Retorno de chamada de estatísticas |
| onAudioDeviceStateChanged: |
Retorno de chamada de mudança de estado do dispositivo de áudio |
| onAudioDeviceRouteChanged: |
Retorno de chamada de mudança de rota de saída de áudio |
| onAudioDeviceInterrompido: |
Retorno de chamada de interrupção de dispositivo de áudio |
| onVideoDeviceStateChanged: |
Retorno de chamada de mudança de estado do dispositivo de vídeo |
| onAudioFileState: |
Retorno de chamada do estado de reprodução do arquivo de áudio |
| onDataMsg: |
Mensagem de dados em tempo real recebeu retorno de chamada |
| AoqAudioFrameDelegado |
Protocolo de ouvinte de dados de quadro de áudio |
| AoqVideoFrameDelegado |
Protocolo de ouvinte de dados de quadro de vídeo |
| onLocalAudioVolumeIndicação |
Retorno de chamada de volume de captura local |
| onScreenCaptureStateChanged |
Retorno de chamada do estado de captura de tela |
Detalhes da API
Captura de tela
- (int)startScreenCapture:(AoqScreenCaptureConfig * _Nonnull)config;
- (int)stopScreenCapture;
config especifica configurações de captura de tela. O conteúdo da tela é enviado no AoqTrackTypeScreen pista.
Para começar, 0 significa que a solicitação foi aceita; onScreenCaptureStateChanged relata o resultado de forma assíncrona. Um retorno diferente de zero rejeita a solicitação de forma síncrona sem um evento de falha duplicado. Stop retorna 0 em caso de sucesso ou um valor diferente de zero em caso de falha e relata o estado interrompido por meio desse retorno de chamada.
Com isExternal=NO, a captura usa uma extensão de upload de transmissão. Integrar e configurar AoqScreenShare.framework e exibir o seletor de transmissão do sistema. No tempo limite, o onScreenCaptureStateChanged: retorno de chamada relata falha com AoqECScreenStartFailed. Você não precisa esperar por Iniciado antes de ativar a transmissão.
Para quadros brutos externos, defina isExternal=YES. Isso não habilita o canal de recebimento de ramal. Forneça molduras de tela brutas por meio de pushExternalVideoCapturedFrame para codificação SDK. Para quadros codificados externos, configure a trilha Screen para codificação externa com setVideoEncoderConfig, então ligue pushExternalVideoEncodedFrame; startScreenCapture não é obrigatório.
onScreenCaptureStateChanged
@optional
- (void)onScreenCaptureStateChanged:(AoqScreenCaptureState * _Nonnull)state;
state contém o estado da captura de tela. Iniciado significa que a captura ou entrada externa está pronta, e não que a mídia foi enviada. Falhas de captura de tela também não são relatadas por meio de onError.
###setVideoDecoderConfig:
- (int)setVideoDecoderConfig:(AoqVideoCodecConfig * _Nonnull)config;
config especifica configurações de decodificação de vídeo. Somente os seguintes campos terão efeito: trackType, codecType, width, height, fps, bitrate. Outros campos aplicam-se apenas à codificação.
A tela não suporta decodificação downstream. Se config.trackType é Tela, o método retorna AoqECUnSupport sem aplicar a configuração.
Retorna 0 em caso de sucesso ou um valor diferente de zero em caso de falha.
enableLocalAudioVolumeIndicação:
- (int)enableLocalAudioVolumeIndication:(AoqAudioVolumeIndicationConfig * _Nonnull)config;
config especifica configurações de indicação de volume. Os retornos de chamada são emitidos em config.interval. Chame esse método depois startAudioCapture.
Retorna 0 em caso de sucesso ou um valor diferente de zero em caso de falha.
- (void)onLocalAudioVolumeIndication:(AoqAudioVolume * _Nonnull)volume;
O volume argumento de retorno de chamada contém o volume de captura local.
Ciclo de vida do motor
createEngine:delegado:
Crie a instância do mecanismo. O SDK mantém o mecanismo como um singleton global.
+ (instancetype _Nonnull)createEngine:(AoqCreateConfig * _Nonnull)config
delegate:(id<AoqEngineDelegate> _Nonnull)delegate;
destruir
+ (int)destroy;
getVersion
+ (NSString * _Nonnull)getVersion;
conectar:
- (int)connect:(AoqConnectConfig * _Nonnull)config;
desconectar
- (int)disconnect;
Gerenciamento de dispositivos de áudio
- (int)startAudioCapture:(AoqAudioCaptureConfig * _Nonnull)config;
- (int)stopAudioCapture;
- (int)muteAudioCapture:(BOOL)mute;
- (int)startAudioPlayer:(AoqAudioPlaybackConfig * _Nonnull)config;
- (int)stopAudioPlayer;
- (int)pauseAudioPlayer:(NSInteger)fadeMs;
- (int)resumeAudioPlayer:(NSInteger)fadeMs;
- (int)interruptAudioPlayer:(AoqTrackType)trackType fadeMs:(NSInteger)fadeMs;
- (int)enableSpeakerphone:(BOOL)enable;
- (BOOL)isSpeakerphoneEnabled;
- (int)setAudioSessionRestriction:(int)restriction;
Configuração do codec de áudio
- (int)setAudioEncoderConfig:(AoqAudioCodecConfig * _Nonnull)config;
- (int)setAudioDecoderConfig:(AoqAudioCodecConfig * _Nonnull)config;
Gerenciamento de dispositivos de vídeo
- (int)startVideoCapture:(AoqVideoCaptureConfig * _Nonnull)config;
- (int)stopVideoCapture;
- (int)switchCamera:(AoqCameraDirection)direction;
- (int)setLocalView:(AoqTrackType)trackType canvas:(AoqVideoCanvas * _Nullable)canvas;
- (int)setRemoteView:(AoqTrackType)trackType canvas:(AoqVideoCanvas * _Nullable)canvas;
Passe AoqTrackTypeVideo como o trackType parâmetro para setLocalView e setRemoteView.
- (int)setVideoEncoderConfig:(AoqVideoCodecConfig * _Nonnull)config;
- (int)pushExternalVideoCapturedFrame:(AoqTrackType)trackType frame:(AoqVideoFrame * _Nonnull)frame;
- (int)pushExternalVideoEncodedFrame:(AoqTrackType)trackType frame:(AoqVideoEncodedFrame * _Nonnull)frame;
Passe AoqTrackTypeVideo como o trackType parâmetro.
- (int)enableSendMediaStream:(AoqTrackType)trackType enable:(BOOL)enable;
trackType aceita AoqTrackTypeAudio ou AoqTrackTypeVideo ou AoqTrackTypeScreen.
Reprodução de arquivo de áudio
- (int)startAudioFile:(NSString * _Nonnull)fileId config:(AoqAudioFileMixConfig * _Nonnull)config;
- (int)stopAudioFile:(NSString * _Nonnull)fileId;
- (int)pauseAudioFile:(NSString * _Nonnull)fileId;
- (int)resumeAudioFile:(NSString * _Nonnull)fileId;
- (long long)getAudioFileDuration:(NSString * _Nonnull)fileId;
- (long long)getAudioFileCurrentPosition:(NSString * _Nonnull)fileId;
- (int)setAudioFilePositionMillis:(NSString * _Nonnull)fileId positionMillis:(long long)positionMillis;
- (int)setAudioFileVolume:(NSString * _Nonnull)fileId type:(AoqAudioStreamDirection)type volume:(NSInteger)volume;
- (int)getAudioFileVolume:(NSString * _Nonnull)fileId type:(AoqAudioStreamDirection)type;
Fluxos de áudio externos
- (int)addAudioExternalStream:(NSString * _Nonnull)streamId config:(AoqAudioExternalStreamConfig * _Nonnull)config;
- (int)pushAudioExternalStreamData:(NSString * _Nonnull)streamId data:(AoqAudioFrameData * _Nonnull)data;
- (int)setAudioExternalStreamVolume:(NSString * _Nonnull)streamId type:(AoqAudioStreamDirection)type volume:(NSInteger)volume;
- (int)getAudioExternalStreamVolume:(NSString * _Nonnull)streamId type:(AoqAudioStreamDirection)type;
- (void)clearAudioExternalStreamBuffer:(NSString * _Nonnull)streamId fadeoutMs:(NSInteger)fadeoutMs;
- (int)removeAudioExternalStream:(NSString * _Nonnull)streamId;
Mensagens em tempo real
- (int)sendDataMsg:(AoqDataMsg * _Nonnull)msg;
Retornos de chamada de quadro de áudio
- (int)setAudioFrameObserver:(id<AoqAudioFrameDelegate> _Nullable)delegate;
- (int)enableAudioFrameObserver:(BOOL)enabled audioSource:(AoqAudioSource)audioSource config:(AoqAudioObserverConfig * _Nonnull)config;
Retornos de chamada de quadro de vídeo
- (int)setVideoFrameObserver:(id<AoqVideoFrameDelegate> _Nullable)delegate;
- (int)enableVideoFrameObserver:(BOOL)enabled videoSource:(AoqVideoSource)videoSource config:(AoqVideoObserverConfig * _Nonnull)config;
Retornos de chamada AoqEngineDelegate
Todos os métodos de retorno de chamada são @required.
- (void)onError:(NSInteger)code message:(NSString * _Nonnull)message;
- (void)onWarning:(NSInteger)code message:(NSString * _Nonnull)message;
- (void)onConnectionStatusChange:(AoqConnectionStatus)status;
- (void)onStats:(AoqStats * _Nonnull)stats;
- (void)onAudioDeviceStateChanged:(AoqAudioDeviceState * _Nonnull)state;
- (void)onAudioDeviceRouteChanged:(NSInteger)routeType;
- (void)onAudioDeviceInterrupted:(BOOL)interrupt;
- (void)onAudioFileState:(AoqAudioFileState * _Nonnull)state;
- (void)onVideoDeviceStateChanged:(AoqVideoDeviceState * _Nonnull)state;
- (void)onDataMsg:(AoqDataMsg * _Nonnull)msg;
AoqAudioFrameDelegate (@opcional)
- (void)onCapturedAudioFrame:(AoqAudioFrameData * _Nonnull)frame;
- (void)onProcessCapturedAudioFrame:(AoqAudioFrameData * _Nonnull)frame;
- (void)onPublishAudioFrame:(AoqTrackType)trackType frame:(AoqAudioFrameData * _Nonnull)frame;
- (void)onPlaybackAudioFrame:(AoqAudioFrameData * _Nonnull)frame;
AoqVideoFrameDelegate (@opcional)
- (BOOL)onCapturedVideoFrame:(AoqTrackType)trackType frame:(AoqVideoFrame * _Nonnull)frame;
- (BOOL)onPreEncodeVideoFrame:(AoqTrackType)trackType frame:(AoqVideoFrame * _Nonnull)frame;
- (BOOL)onRemoteVideoFrame:(AoqTrackType)trackType frame:(AoqVideoFrame * _Nonnull)frame;
Tipos de dados e enumerações
AoqScreenCaptureState
| Campo |
Tipo |
Padrão |
Descrição |
| estado |
AoqScreenCaptureStateCode |
AoqScreenCaptureNone |
Estado de captura de tela. |
| motivo |
NSInteiro |
0 |
0 para estados normais; um AoqErrorCode em caso de falha. |
AoqScreenCaptureStateCode
| Valor |
Número |
Descrição |
| AoqScreenCaptureNone |
0 |
Nenhum |
| AoqScreenCaptureIniciando |
1 |
Iniciando |
| AoqScreenCaptureiniciado |
2 |
Entrada pronta; não indica transmissão |
| AoqScreenCaptureStopping |
3 |
Parando |
| AoqScreenCaptureStopped |
4 |
Parado |
| AoqScreenCaptureFail |
5 |
Falha no início ou no tempo de execução |
AoqScreenCaptureConfig
| Campo |
Tipo |
Padrão |
Descrição |
| éExterno |
BOOL |
NÃO |
Se o aplicativo fornece quadros de tela brutos. |
| grupo de aplicativos |
NSString* |
nada |
ID opcional do AppGroup compartilhado pelo aplicativo e pela extensão de transmissão. Se for nulo, as configurações serão entregues por meio do handshake de soquete e nenhum dos destinos precisará do recurso App Groups. Ignorado para captura externa. |
AoqVideoCodecConfig
| Campo |
Tipo |
Padrão |
Descrição |
| trackType |
AoqTrackType |
AoqTrackTypeVídeo |
Tipo de trilha |
| tipo de codec |
AoqEncoderType |
AoqEncoderTypeVideoH264 |
Codec |
| largura |
NSInteiro |
540 |
Largura em pixels |
| altura |
NSInteiro |
960 |
Altura em pixels |
| FPS |
NSInteiro |
5 |
Taxa de quadros |
| taxa de bits |
NSInteiro |
500000 |
Taxa de bits em bps |
| minTaxa de bits |
NSInteiro |
128.000 |
Taxa de bits mínima em bps |
| keyframeInterval |
NSInteiro |
2 |
Intervalo de quadro-chave em segundos |
| modo espelho |
AoqMirrorMode |
AoqMirrorModeDesativado |
Modo espelho |
| modo de orientação |
AoqOrientationMode |
AoqOrientationModeAuto |
Modo de orientação |
| éExterno |
BOOL |
NÃO |
Se o aplicativo fornece quadros codificados. |
AoqAudioVolume
| Campo |
Tipo |
Padrão |
Descrição |
| éFala |
BOOL |
NÃO |
Se a fala foi detectada. |
| volume |
NSInteiro |
0 |
Volume instantâneo suavizado, de 0 a 255. |
AoqAudioVolumeIndicaçãoConfig
| Campo |
Tipo |
Padrão |
Descrição |
| relatórioDiscurso |
BOOL |
NÃO |
Seja para detectar fala. |
| intervalo |
NSInteiro |
0 |
Intervalo de retorno de chamada em milissegundos. Valores de 0 ou menos desabilitam retornos de chamada; valores entre 0 e 10 usam 10. |
| suave |
NSInteiro |
3 |
Fator de suavização, de 0 a 10. Valores mais altos produzem resultados mais suaves. |
AoqTrackParam.trackMode
| Campo |
Tipo |
Padrão |
Descrição |
| modo de trilha |
Modo AoqTrack |
AoqTrackModeSegmento |
Aplica-se apenas ao áudio downstream. |
Modo AoqTrack
| Valor |
Número |
Descrição |
| AoqTrackModeSegmento |
0 |
Modo segmento: entrega dados em segmentos semânticos, como frases. Aplica-se apenas ao áudio downstream. |
| AoqTrackModeStream |
1 |
Modo Stream: fornece dados continuamente. Aplica-se apenas ao áudio downstream. |
AoqCreateConfig (campos adicionados na v1.3.0)
| Campo |
Tipo |
Padrão |
Descrição |
| maxEncodedVideoFrameBytes |
NSInteiro |
190×1024 |
Tamanho máximo do quadro codificado em bytes. Aplica-se apenas ao codificador JPEG interno do SDK. |
| enableDropOversizedVideoFrame |
BOOL |
NÃO |
Para o codificador JPEG interno do SDK, é necessário descartar um quadro que permanece superdimensionado com a qualidade mais baixa. |
AoqErrorCode
| Valor enum |
Valor |
Descrição |
| AoqErrorCodeOK |
0 |
Sucesso |
| AoqErrorCodeParamInválido |
1 |
Parâmetro inválido |
| AoqErrorCodeStateInválido |
2 |
Estado inválido |
| AoqErrorCodeUnSupport |
3 |
Operação não suportada |
| AoqErrorCodeÁudio |
100 |
Erro genérico de áudio |
| AoqErrorCodeAudioExternalBufferFull |
110 |
Buffer de áudio externo cheio |
| AoqErrorCodeAudioDevice |
120 |
Erro genérico do dispositivo de áudio |
| AoqErrorCodeAudioDeviceRecordingAuthFailed |
121 |
Permissão de gravação não concedida |
| AoqErrorCodeAudioDeviceRecordingOccupied |
122 |
Dispositivo de gravação em uso |
| AoqErrorCodeAudioDeviceRecordingBackgroundStart |
123 |
Falha ao iniciar a gravação em segundo plano |
| AoqErrorCodeAudioDeviceRecordingStartFail |
124 |
Falha no início da gravação |
| AoqErrorCodeAudioDevicePlayoutOccupied |
125 |
Dispositivo de reprodução em uso |
| AoqErrorCodeAudioDevicePlayoutBackgroundStart |
126 |
Falha ao iniciar a reprodução em segundo plano |
| AoqErrorCodeAudioDevicePlayoutStartFail |
127 |
Falha no início da reprodução |
| AoqErrorCodeAudioDeviceEarpieceRequiresVoipMode |
128 |
Fone de ouvido requer modo VoIP |
| AoqErrorCodeVídeo |
200 |
Erro genérico de vídeo |
| AoqErrorCodeVideoExternalBufferFull |
210 |
Buffer de vídeo externo cheio |
| AoqErrorCodeVideoExternalCaptureNotEnabled |
211 |
Captura de vídeo externa não habilitada |
| AoqErrorCodeVideoExternalEncoderNotEnabled |
212 |
Codificador de vídeo externo não ativado |
| AoqErrorCodeVideoDispositivo |
220 |
Erro genérico do dispositivo de vídeo |
| AoqErrorCodeVideoDeviceCameraOpenFail |
221 |
Falha ao abrir a câmera |
| AoqErrorCodeVideoDeviceCameraAuthFailed |
222 |
Permissão de câmera não concedida |
| AoqErrorCodeVideoDeviceCameraOccupied |
223 |
Câmera em uso |
| AoqErrorCodeVideoDeviceCameraRunningError |
224 |
Erro de tempo de execução da câmera |
| AoqErrorCodeVideoCodec |
230 |
Erro genérico do codec de vídeo |
| AoqErrorCodeVideoCodecEncoderInitFail |
231 |
Falha na inicialização do codificador de vídeo |
| AoqErrorCodeVideoRender |
240 |
Erro genérico de renderização de vídeo |
| AoqErrorCodeVideoRenderCreateFail |
241 |
Falha na criação do renderizador de vídeo |
| AoqErrorCodeVideoRenderDrawError |
242 |
Erro de renderização de vídeo |
| AoqECScreen |
300 |
Erro geral de compartilhamento de tela |
| AoqECScreenAuthFailed |
310 |
Permissão de compartilhamento de tela negada |
| AoqECScreenStartFailed |
311 |
Falha ao iniciar o compartilhamento de tela |
AoqTrackType
| Valor enum |
Valor |
Descrição |
| AoqTrackTypeÁudio |
0 |
Faixa de áudio |
| AoqTrackTypeVídeo |
1 |
Faixa de vídeo |
| AoqTrackTypeData |
2 |
Faixa de mensagens de dados |
| AoqTrackTypeScreen |
3 |
Faixa de compartilhamento de tela. Somente uplink. |
AoqConnectConfig
subscribeTracks não deve incluir AoqTrackTypeScreen; caso contrário, connect retorna AoqECUnSupport sem iniciar uma conexão. setRemoteView também retorna AoqECUnSupport para tela.
| Campo |
Tipo |
Descrição |
| ficha |
NSString* |
Token de autenticação |
| sid |
NSString* |
ID da sessão |
| certificadoImpressão digital |
NSString* |
Impressão digital do certificado do servidor |
| pontos finais de retransmissão |
NSArray\ |
|
| * |
Lista de terminais de retransmissão |
|
| espaço de trabalhoIdHash |
NSString* |
Hash de ID do espaço de trabalho |
| publicar Trilhas |
NSArray\ |
|
| * |
Faixas locais para publicar |
|
| inscrever-seFaixas |
NSArray\ |
|
| * |
Faixas remotas para assinar |
|
AoqAudioPlaybackConfig
| Campo |
Tipo |
Padrão |
Descrição |
| isVoipMode |
BOOL |
NÃO |
SIM: habilite o modo VoIP (hardware AEC); aplica-se a dispositivos móveis |
| isDefaultSpeaker |
BOOL |
SIM |
SIM: padrão é alto-falante; NÃO: fone de ouvido |
| éExterno |
BOOL |
NÃO |
SIM: saída de áudio externa |
| canal |
NSInteiro |
1 |
Contagem de canais: 1 ou 2 |
Tipos de estatísticas
####AoqStats
| Campo |
Tipo |
Descrição |
| audioPublishStats |
NSArray\ |
|
| * |
Estatísticas de publicação de áudio |
|
| videoPublishStats |
NSArray\ |
|
| * |
Estatísticas de publicação de vídeo |
|
| dataMsgPublishStats |
NSArray\ |
|
| * |
Estatísticas de publicação de mensagens de dados |
|
| áudioSubscribeStats |
NSArray\ |
|
| * |
Estatísticas de assinatura de áudio |
|
| vídeoSubscribeStats |
NSArray\ |
|
| * |
Estatísticas de assinatura de vídeo |
|
| dataMsgSubscribeStats |
NSArray\ |
|
| * |
Estatísticas de assinatura de mensagens de dados |
|
| estatísticas da rede |
AoqNetworkStats * |
Estatísticas da rede |
####AoqNetworkStats
| Campo |
Tipo |
Descrição |
| enviarTaxa de bits |
NSUInteiro |
Enviar taxa de bits (bps) |
| enviarBytes |
NSUInteiro |
Bytes cumulativos enviados |
| taxa de bits recebida |
NSUInteiro |
Receber taxa de bits (bps) |
| recvBytes |
NSUInteiro |
Bytes acumulados recebidos |
| perda |
NSUInteiro |
Taxa de perda de pacotes |
| rt |
NSUInteiro |
Tempo de ida e volta (ms) |
AoqAudioPublishStats
trackType / taxa de bits / bytes / encodeVolume
####AoqVideoPublishStats
trackType / taxa de bits / bytes / encodeFps
AoqAudioSubscribeStats
trackType / taxa de bits / bytes / playVolume
AoqVideoSubscribeStats
trackType / taxa de bits / bytes / decodeFps / renderFps
AoqDataMsgPublishStats / AoqDataMsgSubscribeStats
trackType / taxa de bits / bytes
Principais diferenças do Android SDK
| Diferença |
iOS |
Android |
| Padrão de retorno de chamada |
@protocol delegado |
Ouvinte de classe abstrata |
| Controle de sessão AVAudio |
setAudioSessionRestriction: (somente iOS) |
Não há equivalente |
| Retorno de chamada de foco de áudio |
Nenhum (usa onAudioDeviceInterrupted: em vez disso) |
onAudioDeviceFocusChanged |
| Formato de pixel de vídeo |
Suporta cópia zero de CVPixelBuffer |
Suporta TextureOES / Texture2D |
| Visualização de renderização de vídeo |
UIView |
SurfaceView/TexturaView |
| Configuração do modo Bluetooth |
Não isBTScoMode (gerenciado pelo sistema operacional) |
AoqCreateConfig.isBTScoMode |
| Write-back de retorno de chamada de quadro de vídeo |
I420/CVPixelBuffer |
I420 |