2012-05-30 21 views
11

OpenAL es un proyecto confuso para obtener información relevante. ¿Ya hay un OpenAL oficial? ¿Qué es el control creativo sobre el proyecto?OpenAL para CrossPlatform Development

Estoy buscando una biblioteca de audio de plataforma cruzada para soportar IOS (iPhones, Ipads), Android, Windows y Linux.

¿El OpenAL satisface esta necesidad? ¿Cuál es la licencia de OpenAL? Aunque tenemos la intención de liberar parte de nuestro código fuente, no tenemos ningún interés en ser forzados debido a un conflicto de licencia.

Hay suficiente evidencia para suponer que está trabajando en Android Enlaces relevantes (Android OpenAL?) más búsquedas en Google producen resultados positivos.

Me doy cuenta de que Android tiene soporte oficial de OpenSL. Sin embargo, Android parece ser la única plataforma que admite OpenSL actualmente, por lo que esta no es una opción.

+1

Puede comprobar si PortAudio admite iOS y Android; sin embargo, admite Windows, Linux y MacOS X, pero puede ser de un nivel inferior al OpenAL, que nunca he utilizado. PA tiene una buena licencia tipo BSD. Creo que alguien está trabajando en el soporte de PA para Android, y aunque estoy bastante seguro de que no hay soporte para iOS, no debería ser difícil tomar el antiguo código de Mac OS X y hacer que iOS funcione desde allí. También hay rtaudio, que puede ser mejor en la medida de lo posible. También podría ver lo que usan el marco y las estructuras abiertas. –

Respuesta

9

Fui con OpenAL-soft y OpenAL para Windows. Ambos son la misma interfaz, por lo que aún hay una base de código.

Android fue fácil. https://github.com/AerialX/openal-soft-android

IOS fue aún más fácil. Puede agregar OpenAL.Framework a su proyecto XCode. La ubicación del encabezado es simplemente diferente (OpenAL/al.h vs AL/al.h).

Linux es muy fácil. Instale el paquete openal dev para su distribución.

Windows fue el mayor dolor para OpenAL. Al final solo instale el SDK original de OpenAL desde la creatividad. Sin embargo, OpenAL parece muy entrecortado en Windows. Recibo algunas explosiones y crepitaciones de vez en cuando, donde en cualquier otra plataforma es perfecto. Podría cambiar a OpenAL-soft para la distribución de Windows antes de la publicación.

+2

¿Qué problemas tenía con openal-soft en Windows, o tenía alguno? – rogerdpack

1

Desde la versión 1.1 Open AL aparentemente ya no es software libre. Las versiones anteriores de Open AL (1.0 y anterior, creo) tenían licencia BSD, ahora ha sido propiedad de Creative. A pesar de que es el prefijo "abierto", ya no es gratis. Esta es la primera sección de la licencia para 1.1, tomada de la "instalador SDK" de this link:

LICENSE 
    1. Grant of License 
     The Software is licensed, not sold, to you for use only under the 
    terms of this Agreement. This License Agreement is your proof of 
    license to exercise the rights granted herein and must be retained by 
    you. As between you and Creative (and, to the extent applicable, its 
    licensors), Creative retains all title to and ownership of the Software 
    and reserves all rights not expressly granted to you. The license under 
    this Section 1 is conditioned upon your compliance with all of your 
    obligations under this Agreement. Creative grants to you the right to 
    use all or a portion of this Software provided that: 

     (a) the Software is not distributed for profit; 
     (b) the Software may NOT be modified; 
     (c) all copyright notices are maintained on the Software; 
     (d) the licensee/end-user agrees to be bound by the terms of this 
    agreement; 
     (e) Creative's BBS/FTP/website are the only on-line sites where 
    Licensee may download electronic files containing the Software; and   
     (f) Licensee shall use the Software solely for the purpose of 
    developing Licensee applications compatible with Creative’s products, 
    unless otherwise agreed to by further written agreement from Creative. 

lo tanto, si desea utilizar un canon versión gratuita de código abierto, sólo se puede utilizar para las versiones anteriores de Open AL. Lo cual solo puedo encontrar a partir del código fuente del motor de Quake 3.

Es posible que desee explorar algunas otras alternativas.