mtrx1994 Temat założony przez niniejszego użytkownika |
[SFML 1.6] sf::Music » 2013-01-16 18:34:25 Witam
Mam problem związany z odtworzeniem muzyki w programie. Po kompilacji w konsoli wyświetla mi się komunikat "Failed to open audio device". Nie mam zielonego pojęcia czym jest to spowodowane. Przeszukałem Internet w poszukiwaniu odpowiedzi jednak takowej nie znalazłem. Bardzo bym prosił o podanie możliwych przyczyn tego fenomenu.
|
|
RazzorFlame |
» 2013-01-16 19:42:11 Podaj kod... |
|
mtrx1994 Temat założony przez niniejszego użytkownika |
» 2013-01-16 21:34:19 #include <SFML/Graphics.hpp> #include <SFML/Audio.hpp> #include <iostream> #include <sstream> #include <iomanip>
using namespace sf;
int main() { RenderWindow okno( VideoMode( 800, 600, 32 ), "Test SFML - Genius 800x600" ); Music music; music.OpenFromFile( "jab.wav" ); Image genius; genius.LoadFromFile( "genius.png" ); Sprite Genius; Genius.SetImage( genius ); Genius.SetPosition( 0, 0 ); Genius.SetScale( 0.5, 0.5 ); int i = 0, b = 0, x = 0; std::ostringstream ss; ss << x; std::string numer_s = ss.str(); std::string sciezka; sciezka = "screenshots/screenshot"; sciezka += numer_s; sciezka += ".png"; music.Play(); while( okno.IsOpened() ) { if( i % 2 == 0 ) i = 0; if( i % 2 != 0 ) i = 1; Event zdarzenie; while( okno.GetEvent( zdarzenie ) ) { if( zdarzenie.Type == Event::KeyPressed && zdarzenie.Key.Code == Key::Escape ) okno.Close(); if( zdarzenie.Type == sf::Event::Closed ) okno.Close(); if( zdarzenie.Type == Event::KeyPressed && zdarzenie.Key.Code == Key::Space ) { i++; b = 0; if( i % 2 != 0 ) okno.Create( VideoMode( 1024, 768, 32 ), "Test SFML - Genius 1024x768" ); if( i % 2 == 0 ) okno.Create( VideoMode( 800, 600, 32 ), "Test SFML - Genius 800x600" ); } if( zdarzenie.Type == Event::KeyPressed && zdarzenie.Key.Code == Key::F1 ) { x++; Image zrzut = okno.Capture(); zrzut.SaveToFile( sciezka ); } if( zdarzenie.Type == Event::KeyPressed && zdarzenie.Key.Code == Key::F2 ) { okno.Create( VideoMode( 1920, 1080, 32 ), "Test SFML - Genius FullScreen", Style::Fullscreen ); b = 3; } } const Input & sterowanie = okno.GetInput(); Vector2f polozenie = Genius.GetPosition(); if( i % 2 == 0 && b != 3 ) { if( sterowanie.IsKeyDown( Key::Left ) && !( polozenie.x < 0 ) ) Genius.Move( - 0.2, 0 ); if( sterowanie.IsKeyDown( Key::Right ) && !( polozenie.x > 664 ) ) Genius.Move( 0.2, 0 ); if( sterowanie.IsKeyDown( Key::Up ) && !( polozenie.y < 0 ) ) Genius.Move( 0, - 0.2 ); if( sterowanie.IsKeyDown( Key::Down ) && !( polozenie.y > 473 ) ) Genius.Move( 0, 0.2 ); if( polozenie.x > 664 ) { Vector2f pol = Genius.GetPosition(); Genius.SetPosition( 664, pol.y ); } if( polozenie.y > 473 ) { Vector2f pol = Genius.GetPosition(); Genius.SetPosition( pol.x, 473 ); } } if( i % 2 != 0 && b != 3 ) { if( sterowanie.IsKeyDown( Key::Left ) && !( polozenie.x < 0 ) ) Genius.Move( - 0.3, 0 ); if( sterowanie.IsKeyDown( Key::Right ) && !( polozenie.x > 888 ) ) Genius.Move( 0.3, 0 ); if( sterowanie.IsKeyDown( Key::Up ) && !( polozenie.y < 0 ) ) Genius.Move( 0, - 0.3 ); if( sterowanie.IsKeyDown( Key::Down ) && !( polozenie.y > 641 ) ) Genius.Move( 0, 0.3 ); if( polozenie.x > 888 ) { Vector2f pol = Genius.GetPosition(); Genius.SetPosition( 888, pol.y ); } if( polozenie.y > 641 ) { Vector2f pol = Genius.GetPosition(); Genius.SetPosition( pol.x, 641 ); } } if( b == 3 ) { if( sterowanie.IsKeyDown( Key::Left ) && !( polozenie.x < 0 ) ) Genius.Move( - 0.5, 0 ); if( sterowanie.IsKeyDown( Key::Right ) && !( polozenie.x > 1784 ) ) Genius.Move( 0.5, 0 ); if( sterowanie.IsKeyDown( Key::Up ) && !( polozenie.y < 0 ) ) Genius.Move( 0, - 0.5 ); if( sterowanie.IsKeyDown( Key::Down ) && !( polozenie.y > 953 ) ) Genius.Move( 0, 0.5 ); } okno.Clear( Color( 255, 255, 255 ) ); okno.Draw( Genius ); okno.Display(); } }
|
|
Admixior |
» 2013-01-17 00:46:13 Kodu to nie jest wina. Tutaj wchodzi w grę sprzęt i jego konfiguracja. Błąd mówi tak jakbyś nie miał karty dźwiękowej. Sprawdź czy masz sterowniki zainstalowane do nie, i czy głośniki są włączone. Jaki masz OS i czy zwykłe muzyki i inne dźwięki słychać normalnie? Całkiem podobna sprawa: http://en.sfml-dev.org/forums/index.php?topic=8423.0, ale niestety mówiąca tylko o zmianie wersji (aczkolwiek to może pomóc) |
|
mtrx1994 Temat założony przez niniejszego użytkownika |
» 2013-01-18 00:04:46 Ze sprzętem wszystko w porządku. Słucham muzyki codziennie, nigdy nie miałem problemu. Sterowniki także mam wszystkie poinstalowane. Pracuje na Windows XP SP3 |
|
mtrx1994 Temat założony przez niniejszego użytkownika |
» 2013-01-18 00:19:53 Myślicie że przejście na SFML 2.0 pomoże?? |
|
Sevay |
» 2013-01-19 12:33:49 Spróbuj wgrać OpenAL. |
|
mtrx1994 Temat założony przez niniejszego użytkownika |
» 2013-01-19 16:52:09 dzieki wielkie wgranie openal'a poskutkowalo |
|
« 1 » |