Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: zupervaca en 23 de Abril de 2006, 11:56:18 PM

Título: Sonido En Linux
Publicado por: zupervaca en 23 de Abril de 2006, 11:56:18 PM
 Como sabeis estoy haciendo cosillas en linux y me gustaria saber si alguno conoce una libreria que este preinstalada en linux para audio tipo directsound, habia pensado en openal, pero resulta que hay que tener la dll al lado del ejecutable cosa que en principio no me acaba de gustar mucho.

Gracias.
Título: Sonido En Linux
Publicado por: senior wapo en 24 de Abril de 2006, 12:11:10 AM
 Si tienes suerte, estará instalado libasound2 (ALSA), si no, tendrás que tirar de OSS (Open Sound System) que consiste en abrir el dispositivo de audio (/dev/dsp tipicamente). Estas librerias estandar te permiten enviar datos a la tarjeta pero eres tu quien renderiza los buffers (mezclar los samples a mano etc)..

Algo a más alto nivel (en plan dsound/openAL) y que venga preinstalado, lo siento, pero no hay.

Si quieres que la libreria te ahorre todo el tema de mixing, te toca incluir la libreria de sonido que elijas con tu juego. Puedes meter openAL, SDL mixer, o a lo bruto, linkar estáticamente allegro para usar solo su módulo de sonido (que internamente accede a ALSA u OSS).

Si no te importa renderizar a pelo como en la época de msdos con las SBlaster pues puedes pillar Portaudio que permite enlazado estático y es multiplataforma: te permite abrir dispositivos y enviar buffers (que tu relleneas) anda más.

No te recomiendo programar ALSA ni OSS a pelo.
Título: Sonido En Linux
Publicado por: zupervaca en 24 de Abril de 2006, 12:22:57 AM
 Estuve mirando ALSA y OSS, en ubuntu ALSA viene preinstalado, pero para estar haciendolo por hobbie me parece que es demasiada odisea meterme a mezclar buferes a pelo ya que tarde o temprano me tocaria hacer sonido 3d y no creo tener la matematica necesaria para algo asi, por ahora me metere con openal, pero me quedare con los nombres de las demas librerias para probarlas y hecharles un vistazo.

Gracias por la info ;)  
Título: Sonido En Linux
Publicado por: seryu en 24 de Abril de 2006, 01:54:14 AM
 
Cita de: "zupervaca"Como sabeis estoy haciendo cosillas en linux y me gustaria saber si alguno conoce una libreria que este preinstalada en linux para audio tipo directsound, habia pensado en openal, pero resulta que hay que tener la dll al lado del ejecutable cosa que en principio no me acaba de gustar mucho.

Gracias.
Al igual que en windows te toca instalar directx para disfrutar de directsound, en linux es bastante recomendable hacer lo propio.

Los usuarios de linux suelen tener mayor conocimiento y siempre tratan de tener versiones actualizadas, más cuando son jugadores (que por cierto son una minoría).

Las opciones más sensatas, a mi parecer, son:

-Utilizar SDL. Permite inicializar solo el sistema que tu requieras, similar a directx, del que por cierto es wrapper en su version windows. Luego hay librerias adicionales, como sdl_mixer, que añaden funciones de más alto nivel. http://www.libsdl.org/index.php

-Puedes utilizar Audiere. http://audiere.sourceforge.net/

-OpenAL es una estupenda opción si necesitas opciones avanzadas y, fundamentalmente, sonido 3d. Es lo más cercano a directsound.

-Si buscas algo fácil, rápido, potente, y tu juego no es comercial, tienes fmod. Simplemente la mejor. Lástima que sea de pago, pero es gratuita para programas libres o gratuitos. http://www.fmod.org/

Cualquier opción es multiplataforma, lo que te ahorra muchos quebraderos de cabeza uses el sistema operativo que uses.