1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
tom@linux-ccfs:~> perl
use SDL;
use SDL::Mixer;
use SDL::Mixer::Music;
use SDLx::App;
# -- Initialisierung
SDL::Mixer::init( SDL_INIT_AUDIO | MIX_INIT_MP3 | MUS_MP3 );
unless( SDL::Mixer::open_audio( 44100, AUDIO_S16SYS, 2, 4096 ) == 0 ) {
Carp::croak "Cannot open audio: ".SDL::get_error();
}
# -- Anwendung erstellen
my $app = SDLx::App->new(
title => 'MP3 abspielen',
w => 400,
h => 200,
exit_on_quit => 1,
depth => 32
);
# -- Diese Datei soll abgespielt werden.
my $sound_file = '/home/tom/Musik/anti-flag/Die For Your Government/03 Drink Drank Punk.mp3';
# -- Datei in den Speicher laden
my $background_music = SDL::Mixer::Music::load_MUS($sound_file);
unless( $background_music ) {
Carp::croak "Cannot load music file [$sound_file]: " . SDL::get_error();
}
# -- Datei abspielen
my $loops = 0; # 0 = 1mal, -1 = unendlich oft
SDL::Mixer::Music::play_music( $background_music, $loops );
$app->run();
SDL::Mixer::Music::halt_music();
SDL::Mixer::close_audio;
exit(0);
Cannot open audio: No available audio device at - line 8
1
2
3
4
5
6
7
8
9
10
11
linux-ccfs:/home/tom # zypper in liblame
Fehler beim Erstellen des Zwischenspeichers:
[|] Keine gültigen Metadaten bei de(m|n) festgelegten URL(s) gefunden
Achtung: Repository 'mozz' wird aufgrund des obigen Fehlers deaktiviert.
Daten des Repositorys laden ...
Installierte Pakete lesen ...
'liblame' wurde in den Paketnamen nicht gefunden. Fähigkeiten werden durchsucht.
'libmp3lame0', welches 'liblame' anbietet, ist bereits installiert.
Paketabhängigkeiten auflösen ...
Keine auszuführenden Aktionen.