标签: openal

2
推荐指数
1
解决办法
392
查看次数

是否有Apple的OpenAL编程指南?

我找不到任何东西.也许有一个,反正呢?

iphone openal

1
推荐指数
1
解决办法
1159
查看次数

UnsupportedAudioFileException的解决方法?

我正处于用Java编写小型音乐/节奏游戏的早期阶段(通过Slick框架,它依次使用OpenAL,但这可能与此无关).游戏需要以WAV格式读取(和播放)几个声音文件,但有些文件会抛出[javax.sound.sampled.UnsupportedAudioFileException]异常.

at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:1102)
at org.newdawn.slick.openal.WaveData.create(WaveData.java:123)
at org.newdawn.slick.openal.SoundStore.getWAV(SoundStore.java:713)
at org.newdawn.slick.openal.SoundStore.getWAV(SoundStore.java:683)
at org.newdawn.slick.Sound.<init>(Sound.java:33)
Run Code Online (Sandbox Code Playgroud)

这些文件可以在Winamp或Foobar2000中播放得很好,所以这意味着Java只是不识别文件格式的某些变体.此时我有什么选择?

注意:有问题的文件是用户提供的,所以我不能事先转换它们(使用像audacity这样的东西).任何转换步骤都必须在运行时完成.

java audio openal wav

1
推荐指数
1
解决办法
2895
查看次数

如何在Ubuntu上安装OpenAL SDK?

我对Linux和Linux上的编程都很陌生.我正在尝试在ubuntu上安装OpenAL SDK ...我最好的猜测是我需要从CVS repo下载OpenAL.我找到了一个教程:http://www.edenwaith.com/products/pige/tutorials/openal.php

但是,当我尝试运行终端命令时,会发生以下情况:

steven@ubuntu:~$ cvs -d:pserver:guest@opensource.creative.com:/usr/local/cvs-repository login
Logging in to :pserver:guest@opensource.creative.com:2401/usr/local/cvs-repository
CVS password: 
cvs [login aborted]: connect to opensource.creative.com(124.246.64.74):2401 failed: No route to host
Run Code Online (Sandbox Code Playgroud)

有关如何安装OpenAL SDK的任何提示?

sdk install openal

1
推荐指数
1
解决办法
2万
查看次数

OpenAL失真的常见来源?

我正在为自己制作的游戏开发音频引擎。但是,当我播放声音片段时,它们通常都可以播放,但会失真和失真。我产生了一个正弦波,应该给出纯正的音调,但是它仍然有这种失真-因此,我认为它在OpenAL端。

问题是,我对OpenAL并没有任何幻想。

首先,我生成48000个正弦波样本

  #include <math.h>
  #define PI 3.14159265

  float amplitude = .5f;
  float frequency = 440;
  float phase = 0.f;
  float time = 0.f;
  int sampleRate = 48000;
  float dt = 1.0f / sampleRate;

  float sineWave[48000];
  fox_for(sample, sampleRate) { // standard macro for for loop
    float val = amplitude * sin(2 * PI * frequency * time + phase);
    sineWave[sample] = val;
    time += dt;
  }
Run Code Online (Sandbox Code Playgroud)

一切都很好。一堆浮子以[-.5,.5]为正弦波。然后,我执行标准的OpenAL步骤:生成源和缓冲区。将数据绑定到缓冲区,然后将缓冲区绑定到源,然后播放声音。

// Open device and context
if (ALCdevice *device = alcOpenDevice(NULL)) {
    if (ALCcontext …
Run Code Online (Sandbox Code Playgroud)

c++ audio openal ogg game-engine

1
推荐指数
1
解决办法
146
查看次数

标签 统计

openal ×5

audio ×2

iphone ×2

audiosession ×1

c++ ×1

game-engine ×1

install ×1

java ×1

ogg ×1

sdk ×1

wav ×1