Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
 |
08.12.09, 16:46
|
#1
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 10
Bedankt: 0
|
[C++] MediaPlayer Song mit in exe?
Hey ich hätte da mal eine kleine Frage:
Ich habe ein kleines Programm geschrieben, in dem ich auch Sound integriert habe.. nun frage ich mich, ob es möglich ist, diese Datei mit in die exe zu compilieren, damit ich nicht jedesmal den Sound mitsenden müsste
|
|
|
08.12.09, 18:36
|
#2
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
wieviele kb hat der song denn bzw. wie groß ist der?
__________________
entropie erfordert keine wartung
|
|
|
08.12.09, 18:43
|
#3
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
Wenn du PlaySound() verwendest kannst du die Sounddatei als Resource mit in deine Exe reinkompilieren. und von da aus direkt abspielen.
|
|
|
08.12.09, 19:13
|
#4
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 10
Bedankt: 0
|
~ 500 KB
Und "MediaPlayer1->PlaySound()" existiert angeblich nicht
|
|
|
08.12.09, 20:16
|
#5
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
das mit der resource hört sich trotzdem gut an.
__________________
entropie erfordert keine wartung
|
|
|
08.12.09, 22:58
|
#6
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
achso du nutzt da irgendwelches Klassengefrickel... ich hab von C++ nicht ganz so viel Ahnung. Bin "C"ler.
Aber zeig mal den Code mit dem du das Soundfile abspielst.
Ansonsten:
Soundfile als Resource verwenden.
Nach dem Start des Programmes dieses Soundfile z.B. in den Temp Ordner schreiben
Und von da aus abspielen.
|
|
|
09.12.09, 05:10
|
#7
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 10
Bedankt: 0
|
Also ich benutze den TMediaPlayer.
Habe bei dessen eigenschaften unter FileName den Pfad der Datei aingegeben (C:\song.mp3). In OnCreate (der Form) habe ich dann diesen Code geschrieben:
MediaPlayer1->Open();
MediaPlayer1->Play();
Ich habe allerdings keine Ahnung, wie ich es als Resource verwenden soll.
|
|
|
09.12.09, 14:04
|
#8
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
Resourcen erstellt man folgendermaßen:
Du legst eine neue Datei an res .rc
Dann schreibst du folgendes in die Datei rein:
Code:
1001 WAVE "sound.wav"
Wie du das mit deiner Klasse abspielst kann ich nicht sagen.
So könntest du das ganze aber per WinAPI abspielen:
Code:
PlaySound(MAKEINTRESOURCE(1001), GetModuleHandle(NULL), SND_RESOURCE);
|
|
|
09.12.09, 18:28
|
#9
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 10
Bedankt: 0
|
Danke es funktioniert soweit.. nur leider reagiert das Programm während es den Sound abspielt nich.. das kann ich so auch nicht lassn.
|
|
|
09.12.09, 18:35
|
#10
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
stichwort threading ...
du musst den mediaplayer in einem seperaten thread laufen lassen.
__________________
entropie erfordert keine wartung
|
|
|
09.12.09, 19:01
|
#11
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
Zitat:
Zitat von urga
stichwort threading ...
du musst den mediaplayer in einem seperaten thread laufen lassen.
|
Muss er nicht.
Code:
PlaySound(MAKEINTRESOURCE(1001), GetModuleHandle(NULL), SND_RESOURCE | SND_ASYNC);
Blockt nicht.
|
|
|
09.12.09, 19:33
|
#12
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
ok. wusste ich nicht. aber wenn seine applikation einfriert, was mag es dann sein ?
__________________
entropie erfordert keine wartung
|
|
|
09.12.09, 19:36
|
#13
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
PlaySound() is ohne SND_ASYNC einfach nur ein BlockingCall, das is alles. Wenn der Sound Fertig abgespielt wurde gehts weiter.
|
|
|
09.12.09, 20:29
|
#14
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 10
Bedankt: 0
|
Jaaa ich danke euch! Jetzt geht's! 
Falls das jetzt noch jemand mit einer mp3-Datei hinbekommen würde, küsse ich ihm die Füße 
Ist aber nicht unbedingt notwendig
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:56 Uhr.
().
|