À medida que o streaming se torna nossa principal fonte de entretenimento e os fornecedores lutam para criar o melhor formato de vídeo, será cada vez mais importante que detectemos o suporte a vídeo do dispositivo e do navegador antes de publicar vídeos em nossos sites. Pensamos menos em áudio, mas o mesmo princípio se aplica: detectar se um determinado formato de áudio é compatível ou não antes de usá-lo. Então, como detectamos se um determinado tipo de áudio é compatível?
Podemos detectar o suporte ao formato de áudio com HTMLAudioElement.prototype.canPlayType
, a mesma estratégia usada com vídeo:
// Create an audio element so we can use the canPlayType method const audio = document.createElement('audio'); // Does the device support mp3? audio.canPlayType('audio/mpeg'); // "probably"
Há três resultados possíveis do canPlayType
:
"probably"
: O tipo de mídia parece ser reproduzível"maybe"
: Não é possível saber se o tipo de mídia é reproduzível sem reproduzi-la""
: O tipo de mídia não pode ser reproduzido
Podemos criar uma função muito parecida com a minha supportsVideoType
para facilitar a detecção de áudio:
function supportsAudioType(type) { let audio; // Allow user to create shortcuts, i.e. just "mp3" let formats = { mp3: 'audio/mpeg', mp4: 'audio/mp4', aif: 'audio/x-aiff' }; if(!audio) { audio = document.createElement('audio') } return audio.canPlayType(formats[type] || type); } // Usage if(supportsVideoType('mp3') === "probably") { // Set the video to mp3 } else { // Set the video to wav or other format }
Vale a pena dedicar algum tempo para detectar formatos de áudio e vídeo de ponta, o que lhe permite fornecer mídia mais clara com melhor compactação para melhorar o tempo de carregamento. Tenha em mente essas funções JavaScript para seu site de mídia grande ou pequeno!
Animação CSS vs. JS: O que é mais rápido?
Como é possível que a animação baseada em JavaScript sempre tenha sido secretamente tão rápida – ou mais rápida – do que as transições CSS? E, como é possível que a Adobe e o Google lancem consistentemente sites móveis ricos em mídia que rivalizam com o desempenho de aplicativos nativos?
Bem-vindo ao meu novo escritório
Meu primeiro desenvolvimento profissional na Web foi em uma pequena gráfica, onde eu ficava sentado em um cubículo sem janelas o dia todo. Sofri com esse ambiente fechado por quase cinco anos antes de conseguir encontrar um emprego remoto em que eu trabalhasse em casa. O primeiro…
Atributo de verificação ortográfica
Recentemente, muitos atributos úteis foram fornecidos aos desenvolvedores da Web: download, espaço reservado, autofoco, entre outros. Um atributo mais antigo e útil é o atributo de verificação ortográfica, que permite aos desenvolvedores controlar a capacidade de um elemento de ser verificado ortograficamente ou sujeito a verificações gramaticais. Bastante simples, certo?