Em princípio, a mídia HTML5 suporta todos os codecs e containers usuais que o navegador faz.
Na prática, porém, como o player realmente recebe seus dados de stream pode ser muito complexo. As APIs JavaScript modernas permitem que serviços como o YouTube façam solicitações de alcance, obtenham informações de uma conexão de websocket, manipulem fluxos e buffers on-the-fly, tudo dentro do aplicativo da web / página da web. Portanto, se não houver uma URL simples para acessar o recurso, as coisas ficarão muito mais difíceis e, para que funcione em outros players de terceiros, você precisará de um plug-in que possa manipular a camada de transporte por conta própria.