2009-07-17 20 views
5

¿Cuál es la mejor/más fácil manera de mostrar un video (con sonido) en una aplicación que utiliza XAudio2 y Direct3D9/10?Visualización de un video en DirectX

Por lo menos debe poder transmitir videos potencialmente más grandes, y tener en cuenta que la relación de aspecto de Windows puede diferir de los videos (por ejemplo, agregando buzones), aunque idealmente me gusta la capacidad de incrusta el video en una escena en 3D.

Por supuesto, pude encontrar una manera de cargar cada cuadro en una textura, descartando/reutilizando las texturas una vez renderizadas, y reproduciendo el audio por separado a través de XAudio2, sin embargo, además de escribir un cargador para al menos un formato, También tuve que lidiar con cosas como sincronizar los componentes de video y audio, así que con suerte hay una solución más disponible o incluso una lista gratuita con una lisence adecuada (distribución comercial en formato binario, enlace dinámico está bien en el caso de decir LGPL)

+0

¿DirectShow no es una opción? Utiliza Direct3D para la reproducción de videos. –

Respuesta

7

En Windows SDK, hay un DirectShow example para renderizar video a la textura. Maneja la salida de audio también.

Pero hay limitaciones y honestamente no puedo llamarlo fácil.

1

¿Has mirado Bink video? Es lo que muchos juegos usan para la reproducción de videos. Funciona muy bien y no tienes que codificar todas las cosas de video desde cero.

+0

Desafortunadamente, también es muy caro. Theora es una alternativa gratuita, y es tan buena desde un punto de vista objetivo. – CodeMouse92

Cuestiones relacionadas