Este tópico descreve como identificar e resolver problemas na reprodução de vídeos.
Estratégia de solução de problemas
A reprodução de vídeo pode falhar por diversos motivos. Para identificar a causa, verifique primeiro se os erros seguem algum padrão. Em caso afirmativo, use as possíveis causas na tabela abaixo para orientar sua investigação. Se não houver um padrão claro, solucione o problema examinando o dispositivo final, o fluxo de mídia e a rede. Caso ainda não consiga identificar a causa, entre em contato com o suporte técnico da Alibaba Cloud.
-
Erros com padrão de distribuição:
Padrão de erro
Possível causa
A reprodução falha para usuários em redes de operadoras específicas ou regiões específicas.
Falhas na rede da operadora local ou questões de agendamento do CDN na região podem causar o problema.
A reprodução falha em dispositivos finais com sistemas operacionais específicos.
Diferenças na implementação do SDK entre plataformas ou incompatibilidades do sistema podem causar o problema.
A reprodução falha em marcas ou modelos específicos de dispositivos finais.
Incompatibilidades do dispositivo podem ser a origem do erro.
A reprodução falha para arquivos de áudio ou vídeo específicos.
Problemas na codificação do arquivo de mídia, no prefetch do CDN ou nas políticas de acesso ao negócio podem causar essa falha.
Erros sem padrão de distribuição claro: A causa pode ser complexa. Nesse cenário, rastreie o fluxo de trabalho desde o conteúdo até o usuário para identificar o nó problemático e determinar a causa raiz.
Etapa 1: Verificar o dispositivo final
Compatibilidade do dispositivo final
Primeiro, verifique se o protocolo do fluxo de mídia é compatível com o sistema operacional e o ambiente do aplicativo. Caso contrário, transcodifique o fluxo. Para mais informações, consulte Recomendações de transcodificação. As tabelas a seguir listam os protocolos de vídeo e codecs suportados pelo Player SDK.
Aplicativo nativo
|
Sistema operacional |
Codec de vídeo |
Protocolo de vídeo |
Codec de áudio |
|
Android |
|
|
|
|
iOS |
|||
|
Windows |
|||
|
macOS |
|||
|
Linux |
Web
Se o protocolo do fluxo de mídia atender aos requisitos de compatibilidade web abaixo, verifique se você possui um certificado SSL e se ativou o acesso cross-origin. Para mais informações, consulte Ativar aceleração segura HTTPS e Configurar acesso cross-origin.
|
Sistema operacional |
Codec de vídeo |
Protocolo de vídeo |
Codec de áudio |
|
Android |
H.264 |
|
|
|
iOS |
H.264 |
Nota
FLV e MPEG-DASH não são suportados. |
|
|
H.265 |
|
||
|
Windows |
H.264 |
||
|
macOS |
H.264 |
|
|
|
H.265 |
|
Alguns navegadores em dispositivos Android exigem MSE para reproduzir vídeos HLS. Confira os detalhes:
|
Navegador em dispositivos Android |
Suporte a HLS |
|
|
Suportado |
|
DingTalk |
Suportado |
|
UC/Quark |
Suportado |
|
QQ Browser |
Suportado |
|
Chrome |
Requer MSE |
|
Huawei Browser |
Requer MSE |
|
OPPO Browser |
Suportado |
|
vivo Browser |
Suportado |
|
Mi Browser |
Requer MSE |
Compatibilidade do Player SDK
Se o seu dispositivo atender aos requisitos de compatibilidade, use outro player para verificar se o problema está relacionado à compatibilidade do ApsaraVideo Player SDK.
Caso o vídeo seja reproduzido corretamente em outro player, o problema pode estar no ApsaraVideo Player SDK. Nessa situação, entre em contato com o suporte técnico.
Se o vídeo também falhar ao ser reproduzido em outro player, verifique o fluxo de mídia e a rede.
Recomendamos os seguintes players para solução de problemas:
Etapa 2: Verificar o fluxo de mídia
Após descartar as causas anteriores, transcodifique o fluxo de mídia e tente reproduzi-lo novamente. Se a reprodução for bem-sucedida, provavelmente o fluxo original estava codificado incorretamente.
Vídeos MP4 podem demorar para iniciar ou vídeos MOV podem falhar na reprodução se o átomo moov (índice de dados de mídia) estiver localizado após o átomo mdat (dados de mídia). Transcodificar o vídeo de origem para mover o átomo moov antes do átomo mdat acelera a análise durante a reprodução.
-
Use o comando a seguir para verificar a posição do átomo
moov:# The source video URL can be a local file path or an online URL, for example, http://pla****.alicdn.com/video/aliyunmedia.mp4 ffmpeg -v trace -i "source_video_url" 2>&1 | grep -e type:\'mdat\' -e type:\'moov\'Em um cenário normal, o átomo
moovaparece antes do átomomdat, indicando uma otimização faststart. O exemplo de saída é mostrado abaixo.# ffmpeg -v trace -i sample_faststart.mp4 2>&1 | grep -e type:\'mdat\' -e type:\'moov\' [mov,mp4,m4a,3gp,3g2,mj2 @ 0x54d3b80] type:'moov' parent:'root' sz: 603629 40 231901466 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x54d3b80] type:'mdat' parent:'root' sz: 231297797 603677 231901466Em um cenário anormal, o átomo
moovaparece após o átomomdat.# ffmpeg -v trace -i sample.mp4 2>&1 | grep -e type:"mdat" -e type:"moov" [mov,mp4,m4a,3gp,3g2,mj2 @ 0x59e1b80] type:'mdat' parent:'root' sz: 231297797 48 231901466 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x59e1b80] type:'moov' parent:'root' sz: 603629 231297845 231901466 -
Utilize o comando a seguir ou a ferramenta de linha de comando ffprobe (ferramenta ffprobe) para consultar informações como codec de áudio e codec de vídeo do arquivo de origem. Isso ajuda a analisar se os vídeos problemáticos compartilham algum padrão:
ffprobe "input.mp4"ouffprobe "source_video_url"Input #0, mov, mp4, m4a, 3gp, 3g2, mj2, from 'input.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : www.aliyun.com - Media Transcoding Duration: 00:00:17.56, start: 0.000000, bitrate: 3088 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1440x2560, 2890 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default) Metadata: handler_name : VideoHandler Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 191 kb/s (default) Metadata: handler_name : SoundHandler
Recomendações de transcodificação
Saída de transcodificação: Recomendamos transcodificar para um fluxo de vídeo H.264 MP4 ou HLS.
-
Método de transcodificação: Sugerimos utilizar os seguintes serviços da Alibaba Cloud ou ferramentas locais.
Categoria
Serviço ou ferramenta
Descrição
Serviço da Alibaba Cloud
ApsaraVideo VOD
O ApsaraVideo VOD oferece recursos abrangentes de transcodificação e transmuxing para atender a diversas necessidades de conversão de formato de mídia. Ele suporta transcodificação padrão, Narrowband HD 1.0, Narrowband HD 2.0 e transcodificação com qualidade de origem. Para mais informações, consulte Transcodificação de áudio e vídeo.
ApsaraVideo Media Processing (MPS)
O ApsaraVideo Media Processing (MPS) transcodifica dados multimídia em formatos adequados para reprodução em todas as plataformas. Suporta transcodificação padrão, Narrowband HD 1.0, Narrowband HD 2.0, transcodificação de alta velocidade e transcodificação com duplicação de resolução. É ideal para usuários que armazenam arquivos de vídeo de origem em seus próprios buckets do OSS. Para mais informações, consulte Transcodificação de mídia.
Intelligent Media Services (IMS)
O Intelligent Media Services (IMS) fornece recursos de transcodificação sob demanda e em tempo real. Suporta a transcodificação de mídias armazenadas no OSS ou no ApsaraVideo VOD, além da transcodificação de streams ao vivo.
Ferramenta local
FFmpeg Codecs
Baixe em: FFmpeg Codecs
Etapa 3: Verificar a rede
Se as etapas anteriores não resolveram o problema, verifique a transmissão de rede para localizar a causa do erro de reprodução.
-
Verifique se o dispositivo final possui uma conexão de rede estável.
-
Wi-Fi: A rede atual está estável e acessível? A velocidade de download da rede é maior ou igual à taxa de bits do vídeo?
Use o Speedtest.net para verificar a velocidade de download da rede. Se a velocidade for inferior à taxa de bits do vídeo, podem ocorrer falhas de carregamento ou travamentos na reprodução.
-
Rede móvel: O dispositivo está conectado a uma rede de alta velocidade, como 4G ou 5G? Qual é a força do sinal?
Em condições de rede fraca, a velocidade pode não ser suficiente para carregar fluxos de mídia.
NotaSe você sofrer sequestro de DNS, configure manualmente seu DNS para o Alibaba Cloud Public DNS (223.5.5.5, 223.6.6.6) para restaurar a reprodução.
Acesse Settings > Wi-Fi no seu dispositivo móvel.
Toque no botão de detalhes à direita da sua rede atual para abrir a página de detalhes da rede.
-
Configure o DNS.
Na página de configuração de rede, você encontrará três seções: IP address (sub-rede, gateway), IPv6 address (endereço IP, gateway) e DNS. Toque na seta ao lado da entrada DNS para acessar a configuração detalhada.
-
-
Verifique se a aceleração de CDN está ativada.
Caso a aceleração de CDN não esteja ativada, recomendamos configurá-la para melhorar a experiência de reprodução. Para mais informações, consulte Adicionar um nome de domínio acelerado.
-
Se a aceleração de CDN estiver ativada:
-
Problema de configuração do CDN: O conteúdo de mídia passou por prefetch? O cache de conteúdo expirou?
Uma falha de cache do CDN, causada por conteúdo que não sofreu prefetch ou por cache expirado, pode levar a falhas de carregamento ou travamentos na reprodução. Esse problema é comum em vídeos recém-carregados. Recomendamos realizar ativamente o prefetch de conteúdo para novos vídeos. Para mais informações, consulte Atualizar e pré-carregar recursos.
-
Outros problemas: Vídeos de outros aplicativos são reproduzidos normalmente no mesmo dispositivo final?
Se o CDN estiver configurado corretamente e outros aplicativos reproduzirem vídeos sem problemas, o erro de reprodução pode ser causado por um problema localizado de agendamento do CDN.
-
-
Verifique as localizações do servidor de origem e dos seus usuários finais.
Se o servidor de origem estiver na China continental e os usuários estiverem no exterior, podem ocorrer travamentos significativos. Nesse caso, implante o servidor de origem em uma região mais próxima dos seus usuários para melhorar o desempenho.
-
Verifique se há horários de pico de visualização.
Se muitas pessoas estiverem assistindo simultaneamente, o servidor de origem pode limitar o tráfego, causando travamentos na reprodução.
Documentos relacionados
Se você ainda não conseguir identificar a causa após seguir as etapas anteriores, consulte os documentos abaixo para casos semelhantes e soluções:
Entrar em contato com o suporte técnico
Se o problema persistir, envie um ticket. Para mais informações sobre como enviar um ticket, consulte Fale conosco.
Para nos ajudar a resolver seu problema com eficiência, forneça as seguintes informações no seu ticket.
|
Item |
Exemplo |
Descrição |
|
Sistema operacional e plataforma do dispositivo |
Android 9, Xiaomi |
Forneça a marca do dispositivo e a versão do sistema operacional, por exemplo: Xiaomi com Android 9, iOS 15, Windows 11 ou macOS 12. |
|
SDK e versão |
Android SDK 5.4.8.0 |
Especifique o Player SDK em uso e seu número de versão. Os Player SDKs incluem Web SDK, Android SDK, iOS SDK, Flutter SDK e Windows SDK. |
|
Fonte do vídeo |
https://xxxxxx.m3u8 |
Forneça a URL da fonte de vídeo ou o arquivo de vídeo que reproduz o problema. |
|
Descrição do problema, logs e gravação de tela |
A reprodução começou às 16:40 em 29 de agosto de 2022, e ocorreram travamentos por volta das 17:00. O log está anexado. |
Descreva as etapas de reprodução e os sintomas observados em detalhes, incluindo carimbos de data/hora específicos. Para problemas reproduzíveis, forneça um log completo das etapas de reprodução. Para obter informações sobre como obter logs, consulte Obter logs no Android ou Obter logs no iOS. Se necessário, anexe uma gravação de tela. |
|
Padrão de erro |
O problema ocorre apenas em dispositivos Android, não em iOS. É sempre reproduzível. |
Descreva se o problema segue um padrão específico e sua frequência. Por exemplo, especifique se o problema se limita a uma determinada fonte de vídeo, plataforma de dispositivo ou versão do SDK, e se é intermitente ou sempre reproduzível. |