// test del.cpp : Defines the entry point for the application. // #include "stdafx.h" #include #include #include "uPlayer.h" #include "uPlayer_i.c" class BString { public: BString (void) { Str = SysAllocString(NULL); } ~BString () { SysFreeString(Str); } BSTR String (void) { return(Str); } BSTR *StrAddress (void) { return(&Str); } void SetString (wchar_t *ToSet) { SysReAllocString(&Str, ToSet); } private: BSTR Str; }; int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { CoInitialize(NULL); IuPlayerdB *m_uPlayerdB = NULL; if (CoCreateInstance(CLSID_uPlayerdB, NULL, CLSCTX_INPROC_SERVER, IID_IuPlayerdB, (void * *)&m_uPlayerdB) != S_OK) return(0); // optionally set collection and zone // any which are "" are ignored // if never called then default used: // collection=(global) // zone=waveout:-1:(default) m_uPlayerdB->SetCollectionZone(L"collection", L"waveout:-1:(default)"); // Enqueue A File, if 0=normal queue, 1=priority enqueued m_uPlayerdB->Enqueue(L"z:\\p2.wav", 0); m_uPlayerdB->Enqueue(L"z:\\p1.wav", 1); // Skip track m_uPlayerdB->SkipNext(); // Skip to previous m_uPlayerdB->SkipPrevious(); // Skip to % in current m_uPlayerdB->SkipToPC(75); // get and set volume (1 to 100) long vol = 0; m_uPlayerdB->get_Volume(&vol); vol = 100; m_uPlayerdB->put_Volume(vol); // Play a Track m_uPlayerdB->Play(L"z:\\p1.wav"); // Mute m_uPlayerdB->Mute(); // UnMute m_uPlayerdB->UnMute(); long IsMuted = 0; m_uPlayerdB->get_IsMuted(&IsMuted); if (IsMuted != 0) { // if muted } // Pause m_uPlayerdB->Pause(); // UnPause m_uPlayerdB->UnPause(); long IsPaused = 0; m_uPlayerdB->get_IsPaused(&IsPaused); if (IsPaused != 0) { // if paused } // Close all uPlayers //m_uPlayerdB->Close(); long IsLoaded = 0; m_uPlayerdB->get_IsLoaded(&IsLoaded); if (IsLoaded != 0) { // is loaded } // Load Player (and start playback of queued files m_uPlayerdB->Load(); long IsStopped = 0; m_uPlayerdB->get_IsStopped(&IsStopped); if (IsStopped == 0) { // is playing } ////' read properties BString Playing; m_uPlayerdB->get_FilePlaying(Playing.StrAddress()); long Length = 0; m_uPlayerdB->get_PlayingLengthMS(&Length); long PosPC = 0; m_uPlayerdB->get_PlayingPositionPC(&PosPC); long PosMS = 0; m_uPlayerdB->get_PlayingPositionMS(&PosMS); long BitRate = 0; m_uPlayerdB->get_PlayingBitRate(&BitRate); long Chan = 0; m_uPlayerdB->get_PlayingChannels(&Chan); long Bits = 0; m_uPlayerdB->get_PlayingBitsPerSample(&Bits); long SR = 0; m_uPlayerdB->get_PlayingSamplesPerSec(&SR); long PlayingPropsChanged = 0; m_uPlayerdB->get_PlayingPropsChanged(&PlayingPropsChanged); if (PlayingPropsChanged != 0) { // if any of the above have changed since last call } CoUninitialize(); return 0; }