Draco - tak.
Czy ktokolwiek sprawdzał działanie plików *.MD2? - moim zdaniem to nie działa prawidłowo i daleko niestety do uzyskania takiego stanu ;)-
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Zmarł twórca języka BASIC Zmarł Thomas E. Kurtz twórca języka BASIC
Zmiana serwera atari.area Serwis przeszedł właśnie ważną aktualizację infrastruktury
4th Atari ASCII Compo - wyniki Dostępne są już wyniki tegorocznego ATASCII Compo.
thing neo 1.60 Olivier Landemarre wydał nową wersję desktopu Thing.
VIII. Basque Tournament of Atari 2600 Kolejna relacja, wśród otrzymywanych od naszego przyjaciela Egoitza z Kraju Basków.
atari.area forum » Fabryka - 8bit » MPT Player
Strony Poprzednia 1 2
Zaloguj się lub zarejestruj by napisać odpowiedź
Draco - tak.
Czy ktokolwiek sprawdzał działanie plików *.MD2? - moim zdaniem to nie działa prawidłowo i daleko niestety do uzyskania takiego stanu ;)-
Wersja 0.3 do pobrania (stąd też).
- Zmieniłem player na Jaskrowy. Nie powinno się już tak spektakularnie krzaczyć, jak poprzedni.
- Poprawiłem też synchronizację procedur odgrywających syntetyki i sample dzięki czemu muzyka nie powinna spowalniać.
- Można też zrobić pauzę (poprzednio zaczynało grać od nowa).
Co mi się zdaje, to że sample nie stroją z instrumentami syntetycznymi podczas grania .MD2. Z .MD1 powinno być ok, bo to procedura, która była poprzednio używana. Fajnie gdyby się ktoś kompetentny wypowiedział.
Zapraszam do testowania i zgłaszania uwag oraz błędów.
Pomijając potencjalną niepełnosprawność słuchu u kompozytorów utalentowanych niczym Człowiek_W_Atomizerze, sample mogą nie stroić, gdy player jest za długi lub procedura odtwarzająca sample nie zawsze wyrabia się w linii. W obu przypadkach średnia częstotliwość odtwarzanego dźwięku wędruje w dół. Objaw ten z oczywistych powodów jest słabiej słyszalny na samplach perkusyjnych, a MD1 chyba w większości stosują na samplach tylko perkusję. W MD2 za to często na samplach gra bas lub ścieżka wiodąca - miksowana z niewłaściwą częstotliwością będzie fałszować.
Spróbuj wyłączyć ekran i posłuchać, czy objaw nadal występuje. Jeśli pomoże, to coś trzeba skrócić. Jeśli player uruchamiasz na VBI, to powinien się wyrobić dość szybko (ostatni raz sprawdzałem to 7 lat temu i OIDP było to kilkanaście linii), za to na procedurkę od sampli czyhają pułapki w rodzaju każdej pierwszej linii ekranu w trybie tekstowym, gdzie czasu dla 6502 zostaje niewiele i możesz zgubić 24 z 156 okresów miksowania w ramce.
Zmodyfikowałem procedurę odgrywającą sample w taki sposób, że nie pozwalam na przejęcie kontroli, ale sam wywołuję odegranie 2 próbek. Zdaję sobie sprawę z tego, że to, co robię na zewnątrz aż do ponownego wywołania procedury może spowodować niestrojenie (właśnie z powodów o których napisałeś - dzięki), ale właściwie to nie ma tam tego wiele - właśnie chodzi mi o potwierdzenie zjawiska.
Procedury testuję sobie na 80 kolumnowym S2: od VBXE a tam ANTIC jest wyłączony, więc efekt powinien być chyba identyczny.
Edit: A nie 24 z 311.5 okresów (dla PAL oczywiście) :D?
Player w wersji 0.4:
* zmieniono procedurę detekcji stereo na (c) by drac030,
* dodano obsługę plików .MPD,
* poprawiono synchronizację subtempa.
Smacznego.
Oczywiście bugs&reqs itd.
dodano obsługę plików .MPD
A masz przykładowy plik .MPD ?
Niestety nie. Właściwie to zasugerowałem się tym
MPD (MPT DoublePlay)
MPT with 6502 routine executed at double rate of the original MPT.
no i (może zbyt hurraoptymistycznie) dołożyłem w ciemno obsługę subtempa (przełączanego przez usera) i odtwarzanie 2x na ramkę playera dla pliku .MPD.
A co? Masz może jakiś przykładowy plik .MPD?
A póki co w kolejnej wersji jeszcze jest obsługa długich songów włączana za pomocą /S. Można np:
> MPTPLAY BOREMLOZ.MPT /S
Właśnie nie mam. :) Opierałem się wyłącznie na programie Jagera (jakiś commander), który miał napisane, że obsługuje MPD.
Co to jest subtempo?
Tempo to ilość ramek między kolejnymi pozycjami patternu. Subtempo rozumiem, jako ilość wywołań playera na jedną ramkę.
Tempo to ilość ramek
albo wywołań playera, bo w różnych formatach jest różnie.
Instrumenty nie są odgrywane zawsze co ramkę?
OIDP (być może ŹP) w TMC 2 czas trwania jednej linii paternu niekoniecznie jest wielokrotnością ramki.
Ponieważ ten player był najbardziej zabagniony ze wszystkich, usiadłem i oto wersja 0.6.
Zmiany:
- poprawione odtwarzanie .MD1 i .MD2
- przełącznik /M SYNTH|DIGI1|DIGI2 pozwala na wymuszenie rodzaju modułu
- przełącznik /T [mm:]ss[.dd] pozwala na ustawienie maksymalnego czasu odtwarzania
- przełącznik /B pozwala wyłączyć ekran na modułach digitalizowanych
- przełącznik /A addr pozwala ustawić adres drugiego POKEY-a gdyby ktoś miał go niestandardowo :)
- poprawiona panorama dla wszystkiego (dla sampli również)
- sample mogą mieć rozszerzenie .DRM (bałagan z tymi roszerzeniami)
Powinno grać poprawnie zarówno na ANTIC/VBXE, jak i na 1.77/Rapidus.
W zmiennej środowiskowej MPTPLAY można ustawić często używane parametry.
Kolejność parametrów nie ma już znaczenia.
Bugi i życzenia mile widziane.
Smacznego.
Dziękować, jak dotrwam to pierwsze uruchomienie dziś ;)
EDIT:
BUG rep#1:
zatrzymaj odgrywanie modułu MPT spacją. Spróbuj w dowolnie wybrany sposób (oprócz reset i wyłączenia komputera) wyjść do DOS ;).
EDIT:
poza tym, jak na razie częstotliwości odgrywania sampli jak do tej pory są całkowicie prawidłowe. Tak, jak mówiłem szczekam z utęsknieniem na "reverse stereo" made by MacGyver i Megaplayer ;)
EDIT:
Na rapidusie 16Mhz i vbxe przy wszystko ok, MPT ze samplami zajmuje tak na oko 2 w porywach do 3 linie ekranu.
MD2 na Rapidusie grają niepoprawnie. Sample grane są jak by w tej samej częstotliwości, ale wycina próbki. Tak mi się wydaje.
EDIT:
viceversa.mpt pieje, jak kogut z rana. Na Rapidusie.
EDIT2:
Bez turbo też pieje. Albo moduł z***, albo player coś nawala tu.
Okazuje się, że niektóre utwory ponazywane są .MD1 gdy tymczasem powinny być .MD2. I tak jest z VICVERSA.MD1 i np. MOON.MD1.
Edit: Co można w takiej sytuacji zrobić:
1. Zmienić rozszerzenie modułu.
2. Użyć przełącznika /M DIGI2.
Z innej beczki (choć w tej podobie) - w przypadku kiedy mamy do czynienia z MD1 a sample mają rozszerzenie .SMP lub .DRM, wtedy player zakłada częstotliwość 15kHz. Jeśli sample mają być odtwarzane z 8kHz wtedy można:
1. Zmienić rozszerzenie sampla.
2. Użyć przełącznika /L.
Z jeszcze innej beczki - niektóre moduły zapętlają się w kółko, lub wyraźnie kończą się ale zamiast rozkazu $FE w tracku użyty jest skok o pattern wyżej ($FF z numerem pozycji). Skutkuje to odtwarzaniem w nieskończoność.
Może przydać się wtedy opcja /T 3:00 umożliwiająca ustawienie maksymalnego czasu odtwarzania utworu.
Gorąco polecam też ustawianie parametrów w zmiennej środowiskowej zamiast w RUNEXT.CFG. Dlaczego? Otóż SDX bazując na definicji wywołania z RUNEXT.CFG składa całą linię, która jest uruchamiana przez system. A bufor linii poleceń ma jak wiadomo tylko 63 znaki, więc przy sporej liczbie często używanych przełączników kompletne wywołanie może się nie zmieścić.
Zmienna środowiskowa ma tę zaletę, że nie jest dołączana do wywołania polecenia, a jest przetwarzana po uruchomieniu programu, ale przed parsowaniem linii poleceń. Wywołanie komendy jest więc krótkie, a co najfajniejsze - można wywołując program w linii poleceń nadpisać działanie przełączników wstawionych do zmiennej środowiskowej.
Tak więc:
SET MPTPLAY=/XBT 3:00 /P -1,1,1,-1
będzie wyłączało ekran ANTIC-a podczas grania modułów digitalizowanych, wyświetlało szczegóły budowy modułu, ustawi maksymalny czas trwania utworu na 3 minuty i ustawi panoramę dźwięku tak, jak robi to MegaPlayer dla każdego wywołania programu, ale wywołując z palca:
BOREMLOZ.MPT /T 0 /P 0,0,0,0
(mając oczywiście podmapowane rozszerzenie MPT w RUNEXT.CFG) spowodujesz, że dla tego wywołania zmieni się panorama każdego kanału na środek i kawałek będzie grał w nieskończoność.
Edit 2: Na koniec jeszcze mała dygresja :) Sposób działania RUNEXT.SYS i playera powoduje że:
a) najpierw przetworzone zostaną kolejno parametry umieszczone w zmiennej środowiskowej,
b) W następnej kolejności będą przetwarzane parametry podane w linii poleceń złożonej wg definicji w RUNEXT.CFG. Więc dwa przykłady:
1. RUNEXT.CFG:
MPT,MPTPLAY,% /T 0
spowoduje zawsze odtwarzanie utworu w nieskończoność niezależnie od tego, jaki /T podasz z palca.
2. RUNEXT.CFG:
MPT,MPTPLAY,/T 3:00 %
spowoduje, że domyślnie utwory będą grać 3 min, ale z palca możesz przełącznikiem /T zmienić ten czas (lub go zniwelować sposobem opisanym wyżej).
Edit 3: Oczywiście przy intensywnym korzystaniu ze zmiennych środowiskowych przyda się ENV.SYS.
Dzięki.
BUG rep#1:
zatrzymaj odgrywanie modułu MPT spacją. Spróbuj w dowolnie wybrany sposób (oprócz reset i wyłączenia komputera) wyjść do DOS ;).
Faktycznie. Poprawione. Proszę ściągać wersję z ostatniego miejsca.
poza tym, jak na razie częstotliwości odgrywania sampli jak do tej pory są całkowicie prawidłowe. Tak, jak mówiłem szczekam z utęsknieniem na "reverse stereo" made by MacGyver i Megaplayer ;)
Później. Na razie musi poprawnie grać :)
MD2 na Rapidusie grają niepoprawnie. Sample grane są jak by w tej samej częstotliwości, ale wycina próbki. Tak mi się wydaje.
Zbadam w czym rzecz. Obszar rejestrów hardwareowych chodzi ze standardową prędkością?
Strony Poprzednia 1 2
Zaloguj się lub zarejestruj by napisać odpowiedź
atari.area forum » Fabryka - 8bit » MPT Player
Wygenerowano w 0.024 sekund, wykonano 67 zapytań