Bonjour,
tout d'abord, merci pour la SFML, qui est selon moi une des meilleures librairies multimedia en C++.
En ce moment, j'essaie de faire un petit lecture de musique en Rust, et j'utilise Rust-SFML qui est lui-même basé sur CSFML qui est lui-même basé sur SFML. Pour faire face à un bug, je suis revenu en C++, et je rencontre le problème suivant : après avoir mis en pause une musique, impossible de reprendre la lecture.
getStatus me renvoie
sf::Sound::Playing, mais plus aucun son dans mes écouteurs.
J'ai l'impression que ça pourrait être quelque chose de stupide, mais je n'arrive pas à détecter quoi.
#include <iostream>
#include <chrono>
#include <thread>
#include <cassert>
#include <SFML/Audio/Music.hpp>
#include <SFML/Audio/Sound.hpp>
int main(int argc, char *argv[])
{
sf::Music music;
if (!music.openFromFile("resources/orchestral.ogg")) {
return 1;
}
music.play();
assert(music.getStatus() == sf::Sound::Playing);
std::this_thread::sleep_for(std::chrono::seconds(5));
music.pause();
assert(music.getStatus() == sf::Sound::Paused);
music.play();
assert(music.getStatus() == sf::Sound::Playing);
std::this_thread::sleep_for(std::chrono::seconds(10));
return 0;
}
que je compile avec
g++ -std=c++14 main.cpp -o main -lsfml-audio
Je suis sous ArchLinux, j'ai testé ce code avec gcc 7.1.1 et clang 4.0.1 et j'utilise la SFML 2.4.2.
Vous avez des pistes ?
Merci d'avance !