Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Audiere problem

Ostatnio zmodyfikowano 2011-02-20 15:23
Autor Wiadomość
lynx
» 2011-02-20 14:33:16
Z ciekawości zobacze u siebie jak to działa. :)
P-28466
Dragonit
Temat założony przez niniejszego użytkownika
» 2011-02-20 14:38:39
Jeśli u ciebie to będzie działać to komputer leci przez okno.
P-28469
lynx
» 2011-02-20 15:06:24
Generalnie twój program jest błędny, bo tworzysz w funkcji obiekty które zaraz po powrocie do main() są usunięte.

Przerobiłem troszkę i działa:
C/C++
#include <ctime>
#include <conio.h>
#include <cstring>
#include "audiere.h"

using namespace audiere;
using namespace std;
OutputStreamPtr graj;

void Muzyka( AudioDevicePtr device, const char * a )
{
   
   
    graj =( OpenSound( device, a, true ) );
    //ustawiamy siłę dźwięku
    graj->setVolume( 0.5 );
   
    //false nie zapętla utworu, true lopu'je nasz utworek
    graj->setRepeat( true );
   
    //odtwarzamy
    graj->play();
}

int main( void )
{
    //tworzymy obiekt odwołujący się do urządzenia
    AudioDevicePtr audiodevice =( OpenDevice() );
   
    //wczytujemy plik, parametr true oznacza że nasz utwór nie jest wczytywany w całościku do pamięci.
   
   
    Muzyka( audiodevice, "1.mp3" );
    getch();
    return 0;
}

P-28475
Dragonit
Temat założony przez niniejszego użytkownika
» 2011-02-20 15:20:58
Wielkie dzięki "Pietrzuch". Męczyłem się z tym od rana a jak widać problem nie był zbyt wielki, wystarczyło tylko logicznie pomyśleć(co widać przyszło mi dość ciężko hehe). Dzięki, twój program oczywiście działa.
P-28477
lynx
» 2011-02-20 15:23:06
Nie ma sprawy.
Ale w sumie nie najlepszy ten sposób, jeśli chcesz mieć to fajnie opakowane to zrób coś takiego:
- klasa Sound zawierająca obiekt klasy OutputStreamPtr i metodę typu play()
- konstruktor klasy Sound tworzący obiekt OutputStreamPtr z argumentych podanych do konstruktora (adres AudioDevicePtr oraz const char*)
- dodatki typu metody stop();

Generalnie odwołanie się do takiej klasy w kodzie powinno wyglądać na coś w stym stylu:

C/C++
int main()
{
    AudioDevicePtr audiodevice =( OpenDevice() );
   
    Sound * dzwiek = new Sound( audiodevice, "1.mp3" );
    dzwiek->play();
    getch(); //musi tutaj być :)
    delete dzwiek;
}
P-28478
1 « 2 »
Poprzednia strona Strona 2 z 2