SFML播放树莓派的音频

SFML play audio raspberry PI

本文关键字:音频 播放 SFML      更新时间:2023-10-16

无法让SFML在Raspberry上工作。

这能做到吗?我需要播放几个声音文件,每个文件之间的时间很短。并在我的mac上成功地编写了一个程序,这将在RPi上使用。

有人成功地做到了吗?

我试过用g++和code::blocks来设置它,但不能让它工作,我认为这与链接文件有关。但现在我开始怀疑这是否可能?

如果不是,任何建议的一个简单的(我不是那么有经验)库播放声音文件一个树莓派使用c++?

希望有人能尽快给我指出正确的方向....

我最近设法让SFML 2.0在我的raspi上工作,但这并不容易。SFML 1.6可用于树莓派:

sudo apt-get install libsfml-dev

,但我发现这与我用SFML 2.X编写的程序不兼容。我还尝试使用SFML提供的Linux 32位二进制包,但失败了。我相信这样做的原因是因为raspi使用了ARM处理器,而这并不是为它构建的。

我终于成功地从SFML下载页面下载了Linux源代码。我得到了SFML 2.0,因为我找到的从源代码构建SFML的说明是针对那个版本的,而且它足够新,可以正常工作,尽管您可能想尝试一个更新的版本。我下载了所有的依赖项,并尝试使用我在这里得到的脚本进行安装。这可能对你有用,但我遇到了freetype库的问题。我找到的解决方案是将所有的freetype头文件复制到父目录"include"。也许有更好的方法,但这对我有效。我希望这对你有帮助。

编辑:我只是不得不在一个新的Raspian安装上再做一次。这次我使用了SFML 2.3。我在freetype中没有同样的问题,但是我必须安装以下依赖项:

sudo apt-get install libx11-xcb-dev
sudo apt-get install libxcb-image0-dev
sudo apt-get install libxcb-randr0-dev
sudo apt-get install libudev-dev

下面是我使用的脚本:

安装依赖项:

sudo apt-get install libpthread-stubs0-dev
sudo apt-get install libgl1-mesa-dev
sudo apt-get install libx11-dev
sudo apt-get install libxrandr-dev
sudo apt-get install libfreetype6-dev
sudo apt-get install libglew1.5-dev
sudo apt-get install libjpeg8-dev
sudo apt-get install libsndfile1-dev
sudo apt-get install libopenal-dev
sudo apt-get install cmake
sudo apt-get install g++

:

echo Starting SFML 2.0 install
echo see install.log for install output..
echo No.. Really.. Read it, this is my first
echo batch script for linux, so expect bugs
echo especially because I can't be stuffed
echo using regex to look for error output

echo building make for dynamic release
cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=TRUE > install.log
echo Complete
echo making
make >> install.log
echo Complete
echo Installing
sudo make install >> install.log
echo Complete
echo building make for dynamic debug
cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=TRUE >> install.log
echo Complete
echo making
make >> install.log
echo Complete
echo Installing
sudo make install >> install.log
echo Complete

echo building make for static release
cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=FALSE >> install.log
echo Complete
echo making
make >> install.log
echo Complete
echo Installing
sudo make install >> install.log
echo Complete

echo building make for static debug
cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=FALSE >> install.log
echo Complete
echo making
make >> install.log
echo Complete
echo Installing
sudo make install >> install.log
echo Complete

要运行这些,只需输入

  1. 将它们复制到文本文件

  2. 保存为。sh

  3. 属性,使其可执行(或,终端:sudo chmod +x yourfile.sh)

  4. 打开并点击"在终端中执行"(或,终端:./yourfile.sh)