Introdução ao SDK de Transmissão para iOS do IVS | Streaming em tempo real
Este documento descreve as etapas envolvidas ao começar a usar o SDK de Transmissão para iOS para streaming em tempo real do IVS.
Instalar a biblioteca
Recomendamos integrar o SDK de transmissão usando o Swift Package Manager. (Como alternativa, você pode integrar usando o CocoaPods ou adicionar manualmente a estrutura ao projeto.)
Recomendado: integre o SDK de transmissão (Swift Package Manager)
-
Baixe o arquivo Package.swift de https://broadcast.live-video.net/1.38.0/Package.swift
. -
Em seu projeto, crie um novo diretório denominado AmazonIVSBroadcast e adicione-o ao controle de versão.
-
Coloque o arquivo Package.swift que foi baixado no novo diretório.
-
No Xcode, vá para Arquivo > Adicionar dependências de pacote e selecione Adicionar local....
-
Navegue e selecione o diretório AmazonIVSBroadcast que você criou e selecione Adicionar pacote.
-
Quando receber o prompt Escolha produtos de pacote para AmazonIVSBroadcast, selecione AmazonIVSBroadcastStages como seu produto de pacote definindo o destino da aplicação na seção Adicionar ao destino.
-
Selecione Adicionar pacote.
Importante: o SDK de transmissão de streaming em tempo real do IVS inclui todos os atributos do SDK de transmissão de streaming de baixa latência do IVS. Não é possível integrar os dois SDKs no mesmo projeto.
Abordagem alternativa: Integre o SDK de transmissão (CocoaPods)
Importante: o CocoaPods está no modo de manutenção (apenas correções de segurança) e, após dezembro de 2026, novos pacote e atualizações não poderão mais ser publicados no repositório do CocoaPods. Os pacotes existentes permanecerão disponíveis, mas congelados. Recomendamos usar o Swift Package Manager para todos os projetos novos.
A funcionalidade em tempo real é publicada como uma subespecificação do SDK de Transmissão do streaming de baixa latência para iOS. Isso ocorre para que os clientes possam optar por incluí-la ou excluí-la com base em suas necessidades de recursos. Incluí-la aumenta o tamanho do pacote.
Os lançamentos são publicados via CocoaPods sob o nome AmazonIVSBroadcast. Adicione esta dependência ao seu Podfile:
pod 'AmazonIVSBroadcast/Stages'
A execução do pod install e do SDK estará disponível em seu .xcworkspace.
Importante: o SDK de Transmissão do streaming em tempo real do IVS (ou seja, com a subespecificação de palco) inclui todos os recursos do SDK de Transmissão do streaming de baixa latência do IVS. Não é possível integrar os dois SDKs no mesmo projeto. Se você adicionar a subespecificação de palco ao seu projeto utilizando o CocoaPods, certifique-se de remover todas as outras linhas que contêm AmazonIVSBroadcast no Podfile. Por exemplo, certifique-se de não ter essas duas linhas em seu Podfile:
pod 'AmazonIVSBroadcast' pod 'AmazonIVSBroadcast/Stages'
Abordagem alternativa: instalar o framework manualmente
-
Faça download da versão mais recente em https://broadcast.live-video.net/1.38.0/AmazonIVSBroadcast-Stages.xcframework.zip
. -
Extraia o conteúdo do arquivo.
AmazonIVSBroadcast.xcframeworkcontém o SDK para dispositivo e para o simulador. -
Incorporado o
AmazonIVSBroadcast.xcframeworkarrastando-o para a seção Frameworks, Libraries, and Embedded Content (Frameworks, bibliotecas e conteúdo incorporado) da guia General (Geral) para o destino de sua aplicação.
Solicitar permissões
Sua aplicação deverá solicitar permissão para acessar a câmera e o microfone do usuário. (Isso não é específico do Amazon IVS; é necessário para qualquer aplicação que precise acessar câmeras e microfones.)
Aqui, verificamos se o usuário já concedeu permissões; caso contrário, nós as solicitamos:
switch AVCaptureDevice.authorizationStatus(for: .video) { case .authorized: // permission already granted. case .notDetermined: AVCaptureDevice.requestAccess(for: .video) { granted in // permission granted based on granted bool. } case .denied, .restricted: // permission denied. @unknown default: // permissions unknown. }
É necessário fazer isso para os tipos de mídia .video e .audio, se você quiser acesso a câmeras e microfones, respectivamente.
Também é necessário adicionar entradas para NSCameraUsageDescription e NSMicrophoneUsageDescription no Info.plist. Caso contrário, sua aplicação falhará ao tentar solicitar permissões.
Desativar o temporizador de ociosidade da aplicação
Isso é opcional, porém é recomendado. Isso impede que seu dispositivo entre em modo de suspensão enquanto usa o SDK de Transmissão, o que interromperia a transmissão.
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) UIApplication.shared.isIdleTimerDisabled = true } override func viewDidDisappear(_ animated: Bool) { super.viewDidDisappear(animated) UIApplication.shared.isIdleTimerDisabled = false }