Professional Documents
Culture Documents
Roteiro
1. Introduo 2. Conceitos SDL OpenAL 3. Implementao 4. Trabalhos Futuros 5. Referncias
Introduo
Qual a utilidade do udio na ara da computao? Entretenimento (jogos, tocadores de msica); Utilizado em outras aras (teleconferncias, etc); Quais ferramentas so utilizadas? SDL OpenAL Idia Trabalho final da disciplina de Computao Grfica Avanada;
SDL
Simple DirectiMedia Layer (SDL);
SDL
Criador: Sam Lating; Data de lanamento: incio de 1998; Cria uma camada de abstrao para diversas plataformas de grficos, sons e entrada de APIs; Surgiu da necessidade de portar aplicaes de uma plataforma para outra; Arquivos com extenso .wav, .ogg, etc;
SDL
Escrita em linguagem C; Compatvel com as linguagens: 1. 2. 3. 4. 5. 6. 7. 8. C++ Ada Java Lua Perl PHP Python Ruby
SDL
multiplataforma; Camada transparente que prove suporte para operaes com pixels em 2D, som, acesso a arquivos, gerenciamento de eventos, tempo, threading ...
SDL
Frequentemente utilizada com OpenGL (API voltada a computao grfica);
SDL
Instalao Necessita da biblioteca complementar SDL Mixer para o udio; SDL Mixer: biblioteca com funes complexas de udio, principalmente para mixagem de som;
SDL
Compilao
g++ -o exemplo *.cpp -lSDLmain -lSDL -lSDL_mixer g++ -o exemplo *.cpp:
"linkadas" ao programa
OpenAL
Open Audio Library (OpenAL); API livre e multiplataforma; Desenvolvida para manipulao com udio multicanal tridimensional (eixos x, y e z);
OpenAL
Desenvolvedor: Loki Software; Atualmente o projeto pertence Creative Technology; Recebe apoio da Apple e entusiastas do software livre; Objetivo: facilitar a portabilidade de jogos criados em Windows para Linux; Arquivos com extenso .wav, .ogg, etc;
OpenAL
Exemplos de softwares que utilizam o OpenAL: 1. 2. 3. 4. 5. Doom 3 Quake 4 America`s Army Battlefield 2 Blender (aplicativo de modelagem 3D)
Quake 4
Blender
OpenAL
As funcionalidades da biblioteca esto baseadas em trs conceitos: 1. source objects (objetos que emitem som): contem referncia para um buffer alm de atributos como velocidade, posio, direo e intensidade; 2. audio buffers (som que ser emitido por algum objeto): som; 3. listener (ouvinte): determinado atravs dos atributos velocidade, posio e direo;
OpenAL
capaz de criar efeitos de atenuao de acordo com a distncia e efeito Doppler; ALUT: biblioteca de funcionalidade auxiliar;
OpenAL
Instalao Necessita da biblioteca auxiliar ALUT; Compilao
gcc -o exemplo *.cpp -lglut -lopenal -lalut g++ -o exemplo *.cpp: -lglut -lopenal -lalut:
Implementao
SDL Fcil de implementar; Baseado em delay; Monocanal; Ideal para o desenvolvimento de aplicativos voltados processamento de udio com sada nica (tocadores de msica);
Implementao
Implementao
OpenAL Difcil de implementar; Baseado em diversas fontes sonoras e ouvinte; Necessita de interface grfica (utilizao do OpenGL); Multicanal; Ideal para o desenvolvimento de jogos;
Implementao
Trabalhos Futuros
Aprofundar o estudo sobre ambas as APIs; Criar um apllicativo voltado ao processamento de udio;
Referncias
SDL http://www.libsdl.org/ http://pt.wikipedia.org/wiki/SDL_(biblioteca) OpenAL http://connect.creativelabs.com/openal/default.aspx http://pt.wikipedia.org/wiki/OpenAL http://pt.wikipedia.org/wiki/Blender