O VNC não é comparável ao streaming de vídeo. Na transmissão de vídeo, você normalmente transfere um fluxo de vídeo pré-compactado pela rede. Para fluxos HD, é frequentemente codificado em H.264.
Se você usar o VNC, o computador host precisará tirar instantâneos da tela e compactá-los antes de enviá-los para a rede. Existem várias restrições aqui:
- A compactação strong precisa de muita energia da CPU. Por exemplo, a codificação de um filme de 90 minutos em H.264 em alta qualidade geralmente leva mais de 4 horas de tempo de compactação no meu servidor Athlon X2 4450e. Normalmente, essa compactação strong é inadequada para aplicativos em tempo real, como controle remoto.
- A compactação menos strong, por sua vez, exigirá mais largura de banda de rede, o que pode se tornar um problema em conexões de baixa largura de banda, como a Internet.
Bem, há alguns "truques" aplicados por codecs de vídeo e utilitários de controle remoto e compartilhamento de tela. Primeiro de tudo, eles tentam detectar as mudanças na tela e transferem a imagem (compactada) apenas das alterações. Isso geralmente economiza muita largura de banda e poder de processamento. No entanto, para a transferência de vídeo em tela cheia, não ajuda muito, pois a tela inteira precisa ser transferida com muita frequência.
Como está escrito acima, as máquinas atuais provavelmente não poderão codificar em tempo real o conteúdo da tela em Full-HD e transmiti-lo a um aplicativo de controle remoto, pois o host terá que decodificar o conteúdo de vídeo e recodificar as imagens antes de enviá-las los para a rede. Algumas máquinas Dual-Core mais antigas estão no limite quando decodificam conteúdo de vídeo Full-HD. Nem mesmo falando sobre ter que recodificar as imagens Full-HD na tela novamente antes de enviá-las para o cliente VNC.
Para melhorar sua velocidade de controle remoto VNC, você pode fazer o seguinte:
- A maioria dos servidores / clientes VNC oferece suporte a vários algoritmos de compactação. Alguns deles são otimizados para pequena largura de banda, alguns para boa qualidade de imagem e outros para baixa latência. Isso toca em outro aspecto do controle remoto. Como o serviço é de latência interativa, você não quer ver a reação a um clique do mouse logo após 5 minutos de codificação).
- Tente reduzir a quantidade de alterações na tela em sua máquina host. Por exemplo, tente desabilitar os efeitos da área de trabalho do Windows, animações, etc. Isso economiza largura de banda, pois somente partes alteradas da tela são transferidas pela rede.
- Tente desativar mais efeitos visuais no host, como transparência. O Windows transparente usado pelo Vista / Win7 reduz a "compressibilidade" das imagens. Áreas uni-coloridas / "planas" são muito mais eficientes para comprimir do que cores vibrantes e detalhes extravagantes. Então, desabilitar a transparência do Aero e os efeitos da área de trabalho realmente aceleram a experiência do controle remoto. A maioria das ferramentas de controle remoto permite até mesmo desativar esses efeitos automaticamente na conexão (por exemplo, o Microsoft RDP e algumas implementações do VNC).
- O mesmo se aplica às imagens de fundo. Tente usar a configuração de fundo colorida em vez de fotos em alta definição.
Outro problema para o VNC é que ele precisa detectar as alterações na sua tela. Algumas implementações VNC fazem screenshots "burras" e as comparam com a captura de tela anterior para detectar mudanças. Isso já está tomando muito poder.
Algumas implementações mais avançadas funcionam com drivers de vídeo especiais (verifique UltraVNC), que são mais eficientes aqui, mas requerem drivers especiais para serem instalados.
É claro que tudo isso não ajuda se você estiver reproduzindo um vídeo em sua máquina host. Neste caso, o VNC terá que re-codificar ~ 30 imagens em tela cheia por segundo e enviá-las via rede. Na maioria das compressões que podem ser realizadas em tempo real pelos processadores atuais, esse fluxo levaria > 8 Mbps de largura de banda. Por isso, é inadequado para a maioria das conexões de Internet (especialmente pensar em conexões DSL assimétricas com velocidade de upload inferior a 1 Mbps, e sim, é a velocidade de upload que importa no lado do host).
Pode ser adequado para o uso da LAN, mas aqui provavelmente você deve pensar em configurar um servidor de mídia ou compartilhar sua mídia usando o servidor de mídia DLNA / UPnP (até mesmo o Win7 media player pode fazer isso). Em seguida, use um cliente DLNA para reproduzir a mídia compartilhada.