forum speccy.pl

ZX Spectrum => MUZYKA => Wątek zaczęty przez: Abrimaal w 2014.03.06, 18:17:35

Tytuł: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.03.06, 18:17:35
Napotkałem problem. Kiedyś to sie po prostu podlączalo magnetofon do ZX, pętla in/out i komputer grał proste sample.
Teraz sample są w formacie .wav i jak tu zrobić, żeby "bezkablowo" załadować je do emulatora?
Z pewnością trzeba zmniejszyć bitdepth na 1- do 4-bit i obniżyć sample rate np. do 11.25kHz
Co dalej? wav ma nagłówek, od razu nie lecą bity danych. Jakiś format typu raw, który da się wgrać binarnie do emulatora?
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: sect0r w 2014.03.06, 18:31:52
Gassman opisał od A do Z jak to konwertować http://matt.west.co.tt/spectrum/samplepack/
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: steev w 2014.03.06, 18:33:07
Może to Cię zainteresuje : http://romanblack.com/picsound.htm (http://romanblack.com/picsound.htm)
Można by skompresować jakiegoś WAV różnymi algorytmami i sprawdzić który lepiej brzmi na ZX...
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: ZbyniuR w 2014.03.06, 18:46:43
A ja myślałem że samplowany dźwięk w przeciwieństwie do obrazków jest zbyt skomplikowany do kompresji i dekompresji by dało się to na żywo w 8bitowcu zrobić.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.03.07, 13:16:58
Gassman opisał od A do Z jak to konwertować http://matt.west.co.tt/spectrum/samplepack/
Tak, ale Matt wykorzystuje do tego celu AY. Zrobił również wavide (http://ftp://ftp.untergrund.net/users/gasman/zx/wavide/) - player który potrafi odtwarzać sample 44100Hz 8-bit Mono z nośnika IDE np. DivIDE. ZX Spectrum potrafi odtwarzać też bez AY tylko nie wiem w jakim formacie muszą być dane. Zobacz ten (http://speccy.pl/forum/index.php/topic,416.msg4327.html#msg4327) wątek, w załączniku plik Prognoza pogody.tzx odtwarzana przez program Kmiot-Sampler :-)
Próbowałem wyciągnąć dane RAW z pliku TZX w ZX-Blockeditor i Sony SoundForge coś tam odtwarza ale nie identycznie jak player Kmiot-Sampler.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.03.18, 22:48:43
Pobawiłem się trochę innym programem samplera na ZX Spectrum 48 - Voice Manipulator 2 i nagrałem trochę próbek WAV - o to co wyszło załącznik: say.z80
Ważna rzecz - próbki WAV muszą być bardzo dobrej jakości bez szumów i sprzęt na jakim nagrywamy do ZX Spectrum (emulatora) musi być dobry, tak aby nie wprowadzał szumów - efekty są naprawdę dobre :-)
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.08, 00:46:00
Jak sprawić aby emulator na PC "słyszał" wejście audio?
Próbowałem 3 emulatorów - Spin, Fuse i Spectaculator,
Podłączałem źródło dźwięku do wejścia liniowego i mikrofonowego.
2 różne programy - Voice Manipulator i Kmiot Sampler.
Za każdą próbą jest cisza, zapisuje same 255 i okazjonalne trzaski (niekontaktowanie wtyczki - czyli coś nagrywa).
Dźwięk podawałem z Androida z wyjścia na słuchawki na full.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: ZbyniuR w 2014.08.08, 04:16:22
Może masz wyciszone w wejście mikserze czy jak to się tam nazywa w opcjach do dźwięku we windzie. Albo masz ustawione by wejściem był mikrofon a nie gniazdko. Zależnie od marki płyty głównej czy też scalaka/sterownika dźwięku opcje mogą wyglądać różnie, ale tam bym szukał. :)
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: RafalM w 2014.08.08, 10:32:22
Emulatory Spectrum  w swej ogromnej większości ignorują dźwiękowy sygnał wejściowy do Spectrum który nie jest programem.

Też tak kiedyś robiłem - wczytywałem jakiś sampler, następnie .wav z ludzką mową, w samplerze wciskałem Record, w wirtualnym magnetofonie Play .... i nic   :-[

Pamiętam że kiedyś potrzebowałem jakiegoś sampla do gry i ostatecznie zadziałało mi to w emulatorze RealSpectrum.

Z marszu linka nie dam bo na WOS go nie ma (autorzy się kiedyś pokłócili, obrazili i kazali usunąć) ale później jak będą problemy to postaram się znaleźć.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Phonex w 2014.08.08, 12:31:20
W ZX Spin v0.666 działa.
Trzeba tylko pamiętać, żeby włączyć "Real Tape mode" przy samplowaniu, a przy odtwarzaniu wyłączyć. Sprawdzałem na "DIGI" odtwarzając z Winampa.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.08.08, 18:37:19
Jako że w laptopie nie mam wejścia liniowego tylko mikrofonowe, bardzo często używam funkcji Load from Audio Source emulatora Spectaculator w połączeniu z programem Virtual Audio Cable (http://software.muzychenko.net/eng/vac.htm). Wówczas wystarczy w Panelu sterowania w Dźwięki i urządzenia audio ustawić urządzenie odtwarzania i nagrywania na Virtual Cable 1. Następnie uruchamiamy Spectaculator, włączamy opcję Load from Audio Source i za pomocą dowolnego odtwarzacza audio np. Winamp można wgrać grę z pliku WAV.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.08.10, 14:58:12
Emulatory Spectrum  w swej ogromnej większości ignorują dźwiękowy sygnał wejściowy do Spectrum który nie jest programem.
Na pewno do tej większości nie zalicza się Spectaculator. Tak jak pisałem można wprowadzić grę z pliku WAV ale też oczywiście samplować odtwarzany plik WAV czy MP3 np. do programu Voice Manipulator 2. Virtual Audio Cable to najlepsza metoda bez używania prawdziwych kabli, drugiego PC lub dodatkowego urządzenia audio.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.11, 23:57:22
Poddaję się. Virtual cable nie nagrywa nic u mnie z wyjątkiem dodawanego głosu na początku wersji niezarejestrowanej.
Nawet gdyby udało mi się te sample wgrać do Voice Manipulator, to każdy z nich miałby 20-30 kB.
Nie zależy mi na takiej jakości, jako intro do muzyki nie powinien mieć więcej niż 4-8 kB na Beeper.

Dlatego mam prośbę do kogokolwiek, kto mógłby to zrobić. W folderze zip są po 2 sample w wav, oryginalne nagranie i po obcięciu góry i dołu za pomocą equalizera. Które wyjdzie lepiej.


Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.08.12, 07:10:02
Zsamplowałem Ci te sample do Voice Manipulator 2. W pierwszym pliku zgrałem 3 pierwsze sample a ostatni w drugim. Musisz sobie podocinać te sample i zapisać na taśmę pojedynczo. Podaj konfigurację swojego komputera na którym próbujesz nagrywać sample, jaki system, jaki emulator itp.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.13, 01:49:20
Dzięki ogromne. Sam player jest prosty, tak że nie będzie problemu z umieszczeniem go w innym miejscu.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.15, 21:17:29
Niby wszystko gra jak powinno, tylko dane 2 sekundowego sampla po przycięciu zajmują 14kB.
Myślę teraz o kompresji stratnej danych, czyli napisania procedury w assemblerze i niezbyt wiem jak się za to zabrać.

Program analizowałby po 4 bity danych. W przypadku 4 zer lub jedynek zapisywałby dwa zera lub dwie jedynki.
Dla dwóch jedynek i dwóch zer w dowolnej kolejności, zapisałby 1 i 0.
Dla trzech zer i jedynki byłyby dwa zera, podobnie dla trzech jedynek i zera zapisałby dwie jedynki.

Poradzi ktoś jak coś takiego napisać? jakie instrukcje będą przydatne? Może łatwiej analizować cały bajt?
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: sect0r w 2014.08.15, 21:34:41
2sek sampla 14kb :O
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: trojacek w 2014.08.15, 21:45:16
Może to Cię natchnie: http://en.wikipedia.org/wiki/Continuously_variable_slope_delta_modulation
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.08.15, 21:49:59
Jest co najmniej kilka samplerów na ZX Spectrum. VM2 ma najładniejszy interfejs spośród wszystkich mi znanych. Spróbuj może inny sampler np. Kmiot Sampler, Edit Sampler, być może któryś zapisuje dane skompresowane lub w innym formacie. Kmiot ładnie nagrywa ale zdaje się iż sampel też dużo zajmuje ok. 30kB
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.15, 23:33:37
Może to Cię natchnie: http://en.wikipedia.org/wiki/Continuously_variable_slope_delta_modulation

To wygląda na zadanie dla astrofizyka  :o

Nie chcę rezygnować z gotowego sampla, tylko myślę o skróceniu go o połowę częściowo uśredniając dane.
Ustawienie opóźnienia w playerze, czy dwukrotne wywołanie to już będzie wizja artystyczna.

Tutaj i tak będzie potrzebny podwójny licznik i analiza statystyczna.
Mniej więcej to by wyglądało tak:

- pobranie bajtu z adresu licznika do A, sprawdzenie każdego bitu i zapisanie ich wartości w tymczasowej pamięci
- to samo dla drugiego bajtu
- operacje porównania 4 pierwszych wartości, czyli bitów 0-3 pierwszego bajtu i decyzje zależnie od zawartości (tu djaboł siedzi)
- zapisanie wyniku do pamięci
- powtórzenie czynności dla zapisanych wcześniej wartości bitów 4-7
- powtórzenie dla drugiego bajtu, co w efekcie da 8 zapisanych komórek pamięci
- rekonstrukcja bajtu z pamięci
- zapisanie go pod adres licznika
- zwiększenie licznika odczytu o 2, a zapisu o 1 bajt
- da capo al fine

Znacznie prościej będzie przerobić procedurę rejestrowania dźwięku, żeby działała wolniej i zapisywała mniej danych.
Spróbuję tego i jeszcze raz poproszę o wgranie sampli.

Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.16, 02:21:36
Jest co najmniej kilka samplerów na ZX Spectrum...

Jeśli mógłbyś, weź jeszcze raz Voice Manipulator 2 i ustaw prędkość na połowę, wgrywając sample jeden po drugim, bez przerw.
To najprostsza metoda. Jeśli się nie zmieszczą na raz, to niech będzie więcej plików, ja już sobie przytnę.
Szkoda że nie udaje mi sie wgrać, pokombinował bym z ustawieniami.

Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.08.16, 17:40:20
Nie wiem czy to dokładnie połowa ale w plikach z80 jest ustawiona prędkość nagrywania a nie domyślna programu.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2014.08.18, 00:06:29
Dzieki.

Wniosek taki, że do sampli instrumentów i niskiego głosu ("oh, shit" wyszło kapitalnie) taka prędkość wystarcza.
Co do pozostałych to jeszcze spróbuję wyregulować opóźnienie, może wolniej odtwarzane będą miały mniej szumu.

Wnioski dla mnie: nie używać pogłosów do 1-bitowych sampli i obcinać wszystko co niepotrzebne equalizerem.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Gelip w 2014.11.25, 20:03:58
Odnośnie Voice Manipulator 2 to pobawiłem się trochę i okazuje się iż program ma 32 poziomy prędkości odtwarzania i nagrywania. Domyślna prędkość to 30, wówczas można nagrać ok. 13 sekund. Jeśli zmniejszymy prędkość do minimum czyli 1 to można wtedy nagrać aż ok. 1:14 min ale przy odtwarzaniu dźwięk jest mocno cyfrowy - że tak powiem. Prędkość 1 to trochę mało ale spokojnie można nagrywać przy prędkości np. 15 i wówczas nagramy ok. 44 sekund i dźwięk będzie w miarę rozpoznawalny.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: ZbyniuR w 2014.11.25, 20:36:03
A nie da się na żywo doczytywać z nośnika?
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: RafalM w 2014.11.25, 20:59:08
Cytuj
A nie da się na żywo doczytywać z nośnika?

Jeśli masz na myśli magnetofon,to kiepsko to widzę ;)

A poważnie mówiąc da się. W końcu używając  nowych wynalazków można odtwarzać nie tylko dźwięk ale i całe filmy,np:

http://www.youtube.com/watch?v=ooi9rpx6ECM


Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: ZbyniuR w 2014.11.25, 22:33:19
Miałem na myśli Divide.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2015.02.05, 01:04:56
Znajdujący się w Archiwum (http://speccy.pl/archive/prod.php?id=308) program LMOWA nie bardzo nadaje się jako syntezator mowy, brakuje w nim wielu fonemów obecnych nie tylko w polskim: Sz/Ś/Sh, Ż/Rz/Zh, Ł/W itd.
Może jednak przydać się jako ciekawy generator efektów, wypróbujcie :)

Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: sect0r w 2015.02.05, 16:44:38
Miałem na myśli Divide.

To ja przy okazji zapytam, czy da rade w locie czytać i odtwarzać sample z nośnika w DivIDE ?
Co ogranicza i jaka jest prędkość przesyłu danych do pamięci, no i jak to się ma w stosunku do prędkości pamięci?
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Abrimaal w 2015.10.02, 04:49:21
Kto mógłby "na dziś" wgrać i podrzucić ten efekt? Jest w formacie .wav. Taka szybkość VM2 chyba wystarczy, jeśli będzie słaba jakość, to można trochę podkręcić.
Tytuł: Odp: Sample z .wav do RAM - jak?
Wiadomość wysłana przez: Phonex w 2016.01.06, 18:13:12
Znajdujący się w Archiwum (http://speccy.pl/archive/prod.php?id=308) program LMOWA nie bardzo nadaje się jako syntezator mowy, brakuje w nim wielu fonemów obecnych nie tylko w polskim: Sz/Ś/Sh, Ż/Rz/Zh, Ł/W itd.
Może jednak przydać się jako ciekawy generator efektów, wypróbujcie :)

Teraz można spróbować z syntezą na AY ;) http://speccy.pl/archive/prod.php?id=368 (http://speccy.pl/archive/prod.php?id=368)