Pergunta

Eu gostaria de desenvolver um reprodutor/gravador de mídia.

A plataforma de destino principal é o Windows, o suporte para outros sistemas operacionais seria bom, mas isso não é uma prioridade alta.Deve ser capaz de reproduzir formatos como wav, mp3, avi.Também deve ser capaz de gravar áudio (microfone) e vídeo (webcam ou placa de captura).

Como tenho alguma experiência com QT e C++, observei o phonon QT (4.7.2) com backend DS.Mas infelizmente não consegui reproduzir um AVI simples, mesmo com o exemplo do MediaPlayer que vem com as demos do QT.Eu só conseguia ouvir o som, mas não vi nenhum vídeo.

A máquina do desenvolvedor é um Vista de 64 bits.Eu também tentei em outro Vista de 64 bits sem sorte.Em um Win7 de 32 bits (QT MinGW), finalmente funcionou.Mas quando copiei o executável do MediaPlayer e suas DLLs para as máquinas de 64 bits e tentei executá-lo, ele falhou novamente.

Existe um problema conhecido com o QT phonon em máquinas de 64 bits?Também ouvi falar de um back-end de phonon VLC.Isso poderia ser solução?O QT phonon está maduro o suficiente para desenvolver uma aplicação comercial em cima dele?Ou talvez seja mais sensato acessar o directshow diretamente?

Obrigado

Foi útil?

Solução

Directshow é apenas uma estrutura de programação ou API, não garante que você será capaz de reproduzir todos os formatos de vídeo possíveis em todos os computadores, pois depende de codecs instalado no sistema para descompactar os fluxos de áudio/vídeo.Um codec para um formato específico pode estar disponível em um sistema e não em outro.Além disso, a arquitetura de 64 bits adiciona ainda mais complexidade, uma vez que codecs construídos no modo de 64 bits não podem ser usados ​​em aplicações de 32 bits e vice-versa.O problema que você está enfrentando no reprodutor Phonon de 32 bits provavelmente é causado por um codec ausente ou "não compatível com 32 bits".
O VLC por outro lado é um aplicativo independente, não depende do DirectShow ou de qualquer codec instalado no sistema, então pode ser uma boa ideia usá-lo em vez do DirectShow, porém você precisará ler Termos legais do VLC e decida se você ainda pode usá-lo para seus propósitos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top