DMC2

Klikipedia - klikowa encyklopedia
Skocz do: nawigacji, wyszukiwarki
Dmc2.png

DMC2 to rozszerzenie autorstwa Izzy'ego do TGF i MMF, pozwalające odtwarzać pliki muzyczne w formatach modularnych (XM, MOD, IT, S3M, MTM, MO3), MP3, WAV oraz OGG (po aktualizacji biblioteki bass.dll do wersji 1.9).

Opis działania i zastosowania

DMC2 pozwala nam na dodanie podkładu muzycznego o lepszej jakości niż format MIDI standardowo obsługiwany przez TGF i MMF. Dodatek ma możliwość jednoczesnego odtwarzania 32 dźwięków, wybierania pozycji odtwarzanej próbki (np. gdy chcemy zacząć odtwarzanie od 23 sekundy). Posiada także własny mikser.

Bass.dll

Do poprawnego działania DMC2 potrzebuje bibliotek bass.dll w katalogu z TGF, w katalogu z grą w przypadku skompilowanego EXE lub w folderze systemowym (zazwyczaj C:\WINDOWS\system).

Terminate BASS

Częsty błąd obsługi DMC2 to pozostawanie aplikacji na liście procesów po zakończeniu. Aby naprawić problem, należy dodać zdarzenie Terminate BASS na końcu gry (End of game i/lub End of level) w każdym poziomie aplikacji w którym rozszerzenie jest używane.

Warunki

  • Error Occurred - sprawdza, czy wystąpił błąd
  • Stream Stoped - sprawdza, czy muzyka typu ciągłego (stream - MP3, WAV itp.) została zatrzymana.
  • Module Stoped - sprawdza, czy muzyka typu modularnego (module - MOD, XM itp.) została zatrzymana.

Akcje

  • Before InitBASS()
    • Set DeviceToUse - zmiana używanego urządzenia.
    • Set Mixing Rate - zmiana częstotliwości próbkowania.
    • Set Channel Mixing
      • Mono - zmiana trybu kanałów dźwięku na mono (1).
      • Stereo - zmiana trybu kanałów dźwięku na stereo (2).
    • Set Sample Mixing
      • 8 bit - zmiana jakości próbkowania na 8-bitowe.
      • 16 bit - zmiana jakości próbkowania na 16-bitowe.
  • Initialize BASS - inicjuje bass.dll, bibliotekę zarządzającą odtwarzaniem plików.
  • Terminate BASS - kończy proces bass.dll (patrz też DMC2#Terminate BASS).
  • Set BufferLenInSeconds - ustawia rozmiar bufora odtwarzania (w sekundach).
  • Stream
    • OpenStream - załadowanie pliku z muzyką typu ciągłego.
    • PlayStream - odtwarzanie załadowanego pliku.
    • StopStream - zatrzymywanie.
    • CloseStream - wyładowanie pliku.
    • PauseStream - wstrzymanie.
    • ResumeStream - wznawianie.
    • Set StreamFreq - zmiana częstotliwości próbkowania.
    • Set StreamVol - zmiana głośności.
    • Set StreamPan - zmiana przewagi głośności prawego kanału nad lewym (stereo).
    • Set StreamPos - zmiana pozycji na ścieżce.
  • Module
    • OpenModule - załadowanie pliku z muzyką typu modularnego.
    • PlayModule - odtwarzanie załadowanego pliku.
    • StopModule - zatrzymywanie.
    • CloseModule - wyładowanie pliku.
    • PauseModule - wstrzymanie.
    • ResumeModule - wznawianie.
    • Set ModulePos - zmiana pozycji na ścieżce.
    • Set ModuleFreq - zmiana częstotliwości próbkowania.
    • Set ModuleVol - zmiana głośności.
    • Set ModulePan - zmiana przewagi głośności prawego kanału nad lewym.
    • Set ModuleAmpLevel - zmiana poziomu wzmacniania głośności modułu: wartości 0-100; domyślnie 50.
    • Set ModulePanSeparation - zmiana poziomu rozdzielania kanałów stereo modułu: wartości od 0 (płaski dźwięk) do 100 (maksymalnie oddzielone - bardziej przestrzenne); domyślnie 50.
  • Sample
    • AutoPlaySample - automatyczne odtwarzanie wybranego pliku dźwiękowego (patrz też DMC2#AutoPlaySample).
    • OpenSample - załadowanie pliku dźwiękowego do kanału.
    • PlaySample - odtwarzanie załadowanego pliku.
    • StopSample - zatrzymywanie.
    • CloseSample - wyładowanie pliku.
    • PauseSample - wstrzymanie.
    • ResumeSample - wznawianie.
    • Set SampleChanToModify - wybór kanału z plikiem dźwiękowym, którego odtwarzanie ma być zmienione.
    • Set SampleFreq - zmiana częstotliwości próbkowania.
    • Set SamplePan - zmiana przewagi głośności prawego kanału nad lewym.
    • Set SamplePos - zmiana pozycji na ścieżce.
    • Set SampleVol - zmiana głośności.
  • Set D/L music file name - ustawianie adresu pliku do pobierania (nie sprawdzane)
  • Download Music file now - pobieranie pliku
  • Destroy - niszczenie obiektu DMC 2.

AutoPlaySample

Akcja AutoPlaySample wymaga jedynie podania ścieżki do pliku i wartości zapętlenia (0 - bez pętli, 1 - pętla). Nie jest konieczne ładowanie pliku dźwiękowego do danego kanału, a następnie uruchamianie kanału. Taka sytuacja ma swoje plusy i minusy: komenda ta jest bardzo prosta w obsłudze, jednak nie pozwala manipulować parametrami odtwarzanej w ten sposób próbki za pomocą akcji Set SampleFreq, Set SamplePan, Set SamplePos i Set SampleVol, ponieważ nie jest przypisana do konkretnego numeru kanału, który trzeba podać przy wykonywaniu tych akcji.

Wartości

  • Stream
    • Get StreamPos - pozycja na ścieżce.
    • Get StreamFreq - częstotliwość próbkowania danego dźwięku.
    • Get StreamLen - długość.
    • Get StreamVol - głośność.
    • Get StreamPan - przewaga głośności prawego kanału nad lewym.
    • Get StreamIsActive - czy utwór jest odtwarzany: 0 (nie)/ 1 (tak).
    • Get StreamLeftLevel - poziom natężenia na lewym kanale.
    • Get StreamRightLevel - poziom natężenia na prawym kanale.
    • Get StreamIsPaused - czy utwór jest zapauzowany: 0 (nie)/ 1 (tak).
    • Get StreamIs8bit - czy utwór jest 8-bitowy: 0 (nie)/ 1 (tak).
    • Get StreamIsMono - czy utwór jest jednokanałowy: 0 (nie)/ 1 (tak).
    • Get StreamLenInSeconds - długość w sekundach.
    • Get StreamPosInSeconds - pozycja na ścieżce w sekundach.
  • Module
    • Get ModuleName - nazwa utworu.
    • Get ModulePosOrder - numer aktualnie granego sampla.
    • Get ModulePosRow - numer aktualnie granego rzędu sampli.
    • Get ModuleLen - długość.
    • Get ModuleFreq - częstotliwość próbkowania danego dźwięku.
    • Get ModuleVol - głośność.
    • Get ModulePan - przewaga głośności prawego kanału nad lewym.
    • Get ModuleIsActive - czy utwór jest odtwarzany: 0 (nie)/ 1 (tak).
    • Get ModuleLeftLevel - poziom natężenia na lewym kanale.
    • Get ModuleRightLevel - poziom natężenia na prawym kanale.
    • Get ModuleIsPaused - czy utwór jest zapauzowany: 0 (nie)/ 1 (tak).
  • Sample
    • Get SampleFreq - częstotliwość próbkowania danego dźwięku.
    • Get SampleVol - głośność.
    • Get SamplePan - przewaga głośności prawego kanału nad lewym.
    • Get SampleLen - długość.
    • Get SamplePos - pozycja na ścieżce.
    • Get SampleLeftLevel - poziom natężenia na lewym kanale.
    • Get SampleRightLevel - poziom natężenia na prawym kanale.
    • Get SampleIsActive - czy dźwięk jest odtwarzany: 0 (nie)/ 1 (tak).
    • Get SampleIs8bit - czy dźwięk jest 8-bitowy: 0 (nie)/ 1 (tak).
    • Get SampleIsMono - czy dźwięk jest jednokanałowy: 0 (nie)/ 1 (tak).
    • Get SampleIsLooped - czy dźwięk jest zapętlony: 0 (nie)/ 1 (tak).
    • Get SampleIsSoftDriver - czy dźwięk jest odtwarzany poprzez sterownik programowy: 0 (nie)/ 1 (tak).
    • Get SampleMax - maksymalna ilość odtwarzanych dźwięków.
  • Get DeviceCount - liczba urządzeń dźwiękowych.
  • Get DeviceDescrip - opis wybranego urządzenia.
  • Get Error - obecność błędów: 0 - nie wystąpiły, 1 - wystąpił co najmniej jeden błąd.
  • Get LastError - treść ostatniego błędu.
  • Get D/L Files Path - ścieżka do pobieranych plików.

Konfiguracja w edytorze etapu

  • Initialization
    • Mixing Rate - częstotliwość próbkowania (zalecane 44100 Hz).
    • Channel Mixing - ustawienia kanałów dźwięku (zalecane Stereo).
    • Sample Mixing - jakość próbkowania (zalecane 16 bit).

Zobacz też

Odnośniki zewnętrzne