Ajout version Release/x64 avec les libraries x64 et tuning de la version Debug
This commit is contained in:
		
							
								
								
									
										101
									
								
								SQCSim2021/external/sfml251/examples/sound/Sound.cpp
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										101
									
								
								SQCSim2021/external/sfml251/examples/sound/Sound.cpp
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,101 @@
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
// Headers
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
#include <SFML/Audio.hpp>
 | 
			
		||||
#include <iostream>
 | 
			
		||||
#include <string>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
/// Play a sound
 | 
			
		||||
///
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
void playSound()
 | 
			
		||||
{
 | 
			
		||||
    // Load a sound buffer from a wav file
 | 
			
		||||
    sf::SoundBuffer buffer;
 | 
			
		||||
    if (!buffer.loadFromFile("resources/canary.wav"))
 | 
			
		||||
        return;
 | 
			
		||||
 | 
			
		||||
    // Display sound informations
 | 
			
		||||
    std::cout << "canary.wav:" << std::endl;
 | 
			
		||||
    std::cout << " " << buffer.getDuration().asSeconds() << " seconds"       << std::endl;
 | 
			
		||||
    std::cout << " " << buffer.getSampleRate()           << " samples / sec" << std::endl;
 | 
			
		||||
    std::cout << " " << buffer.getChannelCount()         << " channels"      << std::endl;
 | 
			
		||||
 | 
			
		||||
    // Create a sound instance and play it
 | 
			
		||||
    sf::Sound sound(buffer);
 | 
			
		||||
    sound.play();
 | 
			
		||||
 | 
			
		||||
    // Loop while the sound is playing
 | 
			
		||||
    while (sound.getStatus() == sf::Sound::Playing)
 | 
			
		||||
    {
 | 
			
		||||
        // Leave some CPU time for other processes
 | 
			
		||||
        sf::sleep(sf::milliseconds(100));
 | 
			
		||||
 | 
			
		||||
        // Display the playing position
 | 
			
		||||
        std::cout << "\rPlaying... " << sound.getPlayingOffset().asSeconds() << " sec        ";
 | 
			
		||||
        std::cout << std::flush;
 | 
			
		||||
    }
 | 
			
		||||
    std::cout << std::endl << std::endl;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
/// Play a music
 | 
			
		||||
///
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
void playMusic(const std::string& filename)
 | 
			
		||||
{
 | 
			
		||||
    // Load an ogg music file
 | 
			
		||||
    sf::Music music;
 | 
			
		||||
    if (!music.openFromFile("resources/" + filename))
 | 
			
		||||
        return;
 | 
			
		||||
 | 
			
		||||
    // Display music informations
 | 
			
		||||
    std::cout << filename << ":" << std::endl;
 | 
			
		||||
    std::cout << " " << music.getDuration().asSeconds() << " seconds"       << std::endl;
 | 
			
		||||
    std::cout << " " << music.getSampleRate()           << " samples / sec" << std::endl;
 | 
			
		||||
    std::cout << " " << music.getChannelCount()         << " channels"      << std::endl;
 | 
			
		||||
 | 
			
		||||
    // Play it
 | 
			
		||||
    music.play();
 | 
			
		||||
 | 
			
		||||
    // Loop while the music is playing
 | 
			
		||||
    while (music.getStatus() == sf::Music::Playing)
 | 
			
		||||
    {
 | 
			
		||||
        // Leave some CPU time for other processes
 | 
			
		||||
        sf::sleep(sf::milliseconds(100));
 | 
			
		||||
 | 
			
		||||
        // Display the playing position
 | 
			
		||||
        std::cout << "\rPlaying... " << music.getPlayingOffset().asSeconds() << " sec        ";
 | 
			
		||||
        std::cout << std::flush;
 | 
			
		||||
    }
 | 
			
		||||
    std::cout << std::endl << std::endl;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
/// Entry point of application
 | 
			
		||||
///
 | 
			
		||||
/// \return Application exit code
 | 
			
		||||
///
 | 
			
		||||
////////////////////////////////////////////////////////////
 | 
			
		||||
int main()
 | 
			
		||||
{
 | 
			
		||||
    // Play a sound
 | 
			
		||||
    playSound();
 | 
			
		||||
 | 
			
		||||
    // Play music from an ogg file
 | 
			
		||||
    playMusic("orchestral.ogg");
 | 
			
		||||
 | 
			
		||||
    // Play music from a flac file
 | 
			
		||||
    playMusic("ding.flac");
 | 
			
		||||
 | 
			
		||||
    // Wait until the user presses 'enter' key
 | 
			
		||||
    std::cout << "Press enter to exit..." << std::endl;
 | 
			
		||||
    std::cin.ignore(10000, '\n');
 | 
			
		||||
 | 
			
		||||
    return EXIT_SUCCESS;
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user