Como posso determinar se o player HTML5 está sendo executado no navegador?

3

Gostaria de encontrar uma linha de comando ou um script que me mostrará se player HTML5 está em execução ou não em um navegador (firefox ou cromo).

Por exemplo, para determinar se o Flash Player está sendo executado em um navegador, eu uso o próximo comando:

pgrep -lfc ".*((c|C)hrome|chromium|firefox|).*flashp.*"
    
por Radu Rădeanu 05.06.2013 / 19:39

3 respostas

2

Não vejo como isso seria viável, pois o suporte a HTML5 é normalmente incorporado diretamente ao navegador, enquanto o Adobe Flash é um plug-in. Você pode ver o que é um plug-in no Chrome navegando até a página "chrome: plugins".

Por exemplo, você pode ver o plug-in da Adobe no meu navegador Chrome.

Por outro lado, o HTML5 não tem nenhum plug-in correspondente, por isso você não verá um processo sendo bifurcado no Google Chrome quando estiver lidando com esse tipo de conteúdo.

    
por 08.06.2013 / 08:56
3

Esta questão não é necessariamente solucionável usando a linha de comando (como você parece querer fazer). Nenhum bifurcação acontece, o player é executado dentro do processo que lida com essa página da Web exata, tornando impossível verificar através de ps .

No entanto, a solução é acessível por meio do código-fonte do site. A solução a seguir pode funcionar:

$ curl http://example.com/ | grep '<video'

Observe que o site provavelmente usará scripts para colocar o player e você precisará usar o Firebug ou o WebKit Inspector para acessar o código do site ao vivo e pesquisar a tag video .

E para o YouTube, uma solução alternativa procura "html5": true no código-fonte, mas o HTML5 no YouTube exigiria autenticação, o que é difícil de fazer com curl .

    
por 08.06.2013 / 11:26
1

Ele não realiza diretamente o que é solicitado, mas talvez algo com o mesmo efeito (na verdade, mais amplo no escopo) possa ser obtido procurando possíveis nomes de sites HTML5 / flash player em um canal de "wmctrl -l", combinado com o detecção de som.

if wmctrl -l | grep -i "youtube\|vimeo\|etc" && \
grep RUNNING /proc/asound/card*/pcm*/sub*/status ; then 
echo "some media-site is possibly playing something. 
At least the OS is playing something and some video
site is on the top tab on some browser" ; 
else
echo "there may well be some HTML video going on 
in some browser, but it's either not on the top tab
or not playing audio, so..."
fi
    
por 29.06.2017 / 23:24