¿Eliminar el retraso entre las canciones XNA en bucle?

8

Estoy haciendo un juego con XNA e intento que la música de fondo se reproduzca correctamente. Debido a que el archivo es un MP3 de aproximadamente 30 segundos de duración, lo instancia como Song. Quiero que se repita perfectamente, pero incluso cuando configuro la MediaPlayer.IsRepeatingpropiedad true, siempre hay un retraso de aproximadamente un segundo antes de que la canción comience nuevamente. ¿Hay alguna forma de eliminar este retraso de manera que la canción se repita instantáneamente y pueda reproducirse con más fluidez?

Stephane Beniak
fuente

Respuestas:

7

MediaPlayer en XNA siempre ha tenido un pequeño retraso al reproducir canciones y no he visto ninguna forma de resolver el problema. ¿Cuál es tu plataforma objetivo? Podría considerar usar XACT si está apuntando a Xbox o Windows, ya que no tiene los mismos problemas que la API MediaPlayer.

Recomiendo no usar SoundEffect (como lo recomienda Sprunth) para reproducir música de fondo si va a lanzar en XBLIG o el mercado WP7, ya que eso no encaja bien con el reproductor multimedia incorporado y conduce a problemas de certificación / revisión por pares . Por ejemplo, si reproduce su música de fondo como SoundEffect en Xbox y un jugador quiere usar su propia banda sonora personalizada, su música seguirá reproduciéndose por encima, mientras que si hubiera usado una canción como se recomienda, se detendría "mágicamente". Cosas malas similares suceden en el teléfono.

Juegos dadoo
fuente
44
Gracias por aclarar por qué Songes la elección correcta aquí.
Stephane Beniak
+1 para XACT. Debería importar su música y efectos de sonido como archivos WAV sin comprimir y permitir que XACT los comprima y los empaque en bancos de ondas.
michael.bartnett