-->

segunda-feira, 3 de março de 2008

Como fazer snapshots de qualquer software media player

Quem precisa fazer tutoriais como eu e até quem apenas precisa de ajuda já deve ter se deparado com o problema. Ao dar um Print Screen (ou ALT - Print Screen) tentando capturar a imagem de um filme em um media player qualquer (e não apenas o da MS), só conseguimos uma tela preta:



Existem programas por aí especializados em snapshots desse tipo, mas na maioria dos casos você não precisa deles. Basta desacelerar sua placa de vídeo:



Qualquer opção desde a indicada acima até as mais à esquerda servem. Todas as opções mais à direita, incluindo a "normal" (aceleração máxima) impedem o snapshot de filmes, por causa do uso da superfície DirectDraw, que não é incluída no snapshot.

Reduzindo a aceleração, a imagem do filme passa a ser desenhada de fato na janela do programa e então pode ser capturada:



É claro que após terminada a seção de snapshots você deve voltar a aceleração para como estava antes, senão vai ter problemas de desempenho.

Nota: Esta dica é para quem precisa capturar a imagem do filme no media player. Capturar a imagem apenas do filme não tem mistérios, já que vários media players já tem suporte a isso.

8 comentários:

  1. Que é isso, cara, com o Media Player Classic tem um jeito bem mais fácil: abra duas instâncias do programa e rode o vídeo nas duas. Aquele que você der "Play" primeira, usará a acelarão do hardware. Mas a segunda (e a terceira, quarta, quinta, etc) não. Então, play na primeira, pausa (stop não, que aí ele libera a aceleração para as outras instâncias), play na segunda, pause e print/screen. Essa dica precisa ser seguida também caso se queira usar o "Save Snapshop" do próprio programa (na primeira instância, ele falharia, mas na segunda ele funcionaria 100% à contento).

    Tudo isso sem precisar ir lá no painel de controle e sem correr risco de esquecer de devolver a opção à sua posição original. E, acredito eu, esse procedimento poderia ser estendido à outros players que aceitem abrir múltiplas instância (Windows Media Player fica de fora, mas a sua versão light via Mplayer2.exe funciona)

    ResponderExcluir
  2. Kenshin,

    Ótima dica!

    Eu testei aqui usando o VLC, o Media Player Classic (MPC) e o WMP (via mplayer2.exe) e funciona mesmo!

    Eu testei se o problema/truque era ter dois programas diferentes usando a superfície DirecDraw, mas não é. Se eu abrir uma instância do VLC e uma do WMP, não consigo capturar nenhuma das duas.

    Durante meus testes, descobri uma exceção: Se você abrir uma instância do VLC e uma do MPC, o que foi aberto por último não usa a superfície DirectDraw e pode ser capturado. Como ambos são projetos open source é possível que usem a mesma biblioteca de vídeo e talvez por isso sejam encarados pelo DirectX como duas instâncias do mesmo programa. Eu testei então usando o BSplayer ao mesmo tempo que o WMP e o comportamento foi igual, porque (eu já sabia disso) o BSplayer usa o engine do WMP.

    Eu continuei testando e constatei que o DivX player (da DivX Inc.) está no mesmo grupo do WMP.

    É esquisito que duas instâncias do mesmo programa não possam usar a superfície DirectDraw ao mesmo tempo. Nunca me passou pela cabeça.

    Obrigado!

    ResponderExcluir
  3. Eu descobri isso pelo mais puro acaso: por um motivo que não lembro agora, deixei dois MPCs rodando dois vídeos e dei um Print Screen... e um deles ficou preto, mas o outro foi capturado normalmente.

    ResponderExcluir
  4. Então, achei nesse forum uma solução melhor e definitiva

    http://www.babooforum.com.br/forum/index.php?showtopic=210937

    ResponderExcluir
  5. p.

    Como assim "melhor e definitiva" se só funciona no Windows Media Player?

    Você sabia que tem gente que prefere outros softwares?

    ResponderExcluir
  6. Olá, Jefferson. Eu formatei meu PC e depois que reinstalei o VLC Media Player, os snapshots não funcionam mais, dá um erro e o programa fecha. Sabes algo sobre isso? Se tem que mudar alguma configuração com o WMC? Valeu!

    ResponderExcluir
  7. Breno?

    Que programa fecha? Que erro?

    E o que é WMC?

    ResponderExcluir
  8. Já resolvi o problema.

    Era no VLC Media Player, quando tiras as snapshots. Eu baixei o programa de outro lugar e voltou a funcionar normalmente. Valeu!

    WMC é o Media Player Classic... escrevi errado.

    ResponderExcluir

Siga as regras do blog ou seu comentário será ignorado.