C64Power Forum

Software => Software => Oprogramowanie dla PC, emulatory => Wątek zaczęty przez: Zbych w 16 Lipca 2016, 17:24

Tytuł: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 16 Lipca 2016, 17:24
Maiłem chwilę wolnego czasu więc przeszukałem net i znalazłem aktualne źródła "silnika" SID używanego w VICE. W zasadzie są tam używane 3 silniki ale wybrałem ten który ponoć ma najlepsze brzmienie - reSID-fp (z biblioteki libsidplayfp). Skompilowałem, dołączyłem do źródeł mojego plugina którego troszkę przerobiłem i wygląda na to że działa i czuć a raczej słychać różnicę w stosunku do poprzedniej wersji, która działała na zwykłym reSID, np. po ustawieniu na 6581 na niektórych songach słychać że filtry są przesterowane (brzmi to teraz bardziej jak SID z mojego "chlebaka"), jest też lepsza kompatybilność - odtwarza teraz prawidłowo sidy z "Fantasmolytic", oczywiście pliki na 2SID oraz 3SID też są prawidłowo rozpoznawane i odtwarzane. Jedyny minus to taki że ta biblioteka ma większe wymagania obliczeniowe dlatego podczas przewijania utworu trwa to ciut dłużej. Można jeszcze się pokusić o dodanie konfiguracji do zmiany charakterystyki filtrów, ale to może kiedyś w przyszłości.

Instrukcja: plik należy wypakować do katalogu ...\Winamp\Plugins. Plugin pojawi się pod nazwą "Winamp SIDplayer libsidplayfp", w konfiguracji pluginu można wskazać plik z "...HVSC\Documents\SongLengths.txt" co by rozpoznawał czas trwania utworów lub ustawić limit czasu - przydatne jeśli mamy playlistę która ma automatycznie odtwarzać kolejne pliki.

Plugin udostępniam na GoogleDrive, bo jakoś moja prośba o rejestracjęna CSDB została olana.

https://drive.google.com/open?id=0B1do1DNBLNjyd05QRHZQNzBzTmM (https://drive.google.com/open?id=0B1do1DNBLNjyd05QRHZQNzBzTmM)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Kisiel w 16 Lipca 2016, 17:59
...bo jakoś moja prośba o rejestracjęna CSDB została olana.
Nie masz czego żałować.

Potestuje, dzięki !
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: misiek2 w 16 Lipca 2016, 18:11
Działa elegancko. Pzdr  :)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 16 Lipca 2016, 18:51
Cieszę się że ktoś jeszcze używa Winampa i przyda mu się ten plugin :)

Nie zwróciłem na to wcześniej uwagi: jak w konfiguracji pluginu ustawi się odtwarzanie stereo to w przypadku plików 2sid i 3sid dźwięk jest faktycznie rozdzielany na lewy i prawy kanał (nie wiem na jakiej zasadzie jest to robione dla 3sid), tylko niestety w trybie stereo podczas przewijania bardzo często się wywala - muszę to zbadać dlaczego, dla mono nie zauważyłem takiego problemu.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 16 Lipca 2016, 19:17
Poprawiłem i wrzuciłem nową wersję, teraz już nie powinno się wywalać, ale przy stereo jeszcze dłużej trwa przewijanie więc trzeba z tym uważać, zwłaszcza jak się przewija wstecz bo wtedy następuje dekodowanie całości od początku aż do miejsca ustawienia suwaka.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Kisiel w 16 Lipca 2016, 20:52
Da się to jakoś ogarnąć ?
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 16 Lipca 2016, 21:27
Da się to jakoś ogarnąć ?

Znaczy co? Jeśli chodzi ci o emulację SIDa to nie wiem ;) nie zaglądałem do środka, przyjrzałem się tylko z zewnątrz, jeśli myślisz tylko o dekodowaniu dźwięku to spokojnie bez problemu do ogarnięcia, wszystko jest ładnie podzielone na bloki - konfigurujesz silnik (uboga emulacja C64) tworzysz obiekt emulatora samego SIDa (reSID-fp) wrzucasz go do silnika potem ładujesz plik SIDa, znowu wrzucasz do silnika i wywołujesz "play" które wypełnia zadany bufor danymi audio do podanej wielkości. Są źródła playera na których można się wzorować.

Jeśli chodzi ci o przetwarzanie sygnałów przez reSIDa to niestety jak dla mnie czarna magia (wygląda to jak FFT tylko tak z 10x bardziej skomplikowane), nawet tam nie zaglądam. Są tam jakieś generatory waveformów, "resampler", coś do filtrów, tak na szybko jak zerknąłem to jest to łanie "okomentowane".

Jak chcesz tylko statyczną wersję biblioteki libsidplayfp pod windwos to mogę udostępnić źródła + projekt do VC2015 (ale samej biblioteki bez plugina), na sourceforge jest źródło ale z samymi makefilami.

Mogę jeszcze dodać że w źródłach są 4 rodzaje emulatory SIDów - reSID-fp to ten który użyłem, reSid (stary), hardSid - tym można wysterować kartę do PC z prawdziwym sidem, oraz exSid - coś do wysterowania SIDa na USB nie wiem nie słyszałem o takim czymś. Tych pozostałych "budowniczych" do SIDów nie dołączałem do projektu ale źródła zostawiłem.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: V-12/Tropyx w 16 Lipca 2016, 22:20
Sama wtyka do Winampa ma już chyba z 11 lat. Kiedyś się nią bawiłem. Odpaliłem Twoją wtykę, gra ładnie. :) Dobra robota.

Marzeniem byłoby, gdyby wtyka była na tyle inteligentna, że by pozwalała każdy odtwarzany plik .sid scrobblować na last.fm :)

Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 28 Lipca 2016, 21:07
Dodałem tryb "pseudo stereo" czyli osobne sidy dla lewego i prawego kanału, oczywiście możliwość niezależnego wyboru typu sida pierwszego i drugiego, oraz możliwość włączenia/wyłączenia dowolnego kanału sida, co ciekawie brzmi właśnie w trybie pseudostereo w którym możemy np. głos 1 pozostawić na kanale lewym, 2 na obu, a 3 na prawym. Oczywiście tryb wyjściowy music być ustawiony na stereo.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 31 Lipca 2016, 14:59
Jak ktoś chce obejrzeć źródła to udostępniam:
https://drive.google.com/file/d/0B1do1DNBLNjyVjhSY1RCTTZ6UFU (https://drive.google.com/file/d/0B1do1DNBLNjyVjhSY1RCTTZ6UFU)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 03 Sierpnia 2016, 12:34
Ponieważ okazało się że wersjonowanie plików na Google Drive nie działa tak jak myślałem, to z każdą nową wersją muszę aktualizować link do pliku  >:(
W związku z tym jeszcze raz umieszczam link do plugina i źródeł.

Plugin: https://drive.google.com/open?id=0B1do1DNBLNjyV2Zzd0lacHpsd28 (https://drive.google.com/open?id=0B1do1DNBLNjyV2Zzd0lacHpsd28)

Źródła: https://drive.google.com/open?id=0B1do1DNBLNjyVjhSY1RCTTZ6UFU (https://drive.google.com/open?id=0B1do1DNBLNjyVjhSY1RCTTZ6UFU)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 21 Stycznia 2017, 13:17
Dodałem modyfikację odnośnie wyświetlania informacji w playliście, można teraz ustawić swój format wyświetlania danych, separatory poszczególnych elementów nazwy, dodatkowo można w widoku playlisty wyświetlać dane z bazy STIL - oznacza to że (po wskazaniu ścieżki do HVSC i odtwarzaniu pliku z katalogu HVSC) można poza informacjami z pliku SID wyświetlać też np. tytuły subsongów.
Dla przykładu po załadowaniu muzyki z The Last Ninja w liście obok nazwy głównej i numeru subsongu pokaże się jego nazwa np.
The Last Ninja * (Subsong 1) The Wilderness * Ben Daglish & Anthony Lees

Niestety tak jak wspomniałem to działa tylko gdy odtwarzany plik znajduje się w katalogu HVSC więc jeśli mamy gdzieś "luzem" swoją wybraną muzykę to wyświetlą nam się tylko podstawowe informacje z pliku SID i na razie nic na to nie poradzę bo tak jest skonstruowana baza STIL - utwory są powiązane na podstawie ścieżki HVSC, dlaczego nie zrobiono tego tak jak bazę czasu trwania, czyli po sumie kontrolnej - nie mam pojęcia.

Link do pluginu: https://drive.google.com/open?id=0B1do1DNBLNjybUFWaTV6bGEyVUU (https://drive.google.com/open?id=0B1do1DNBLNjybUFWaTV6bGEyVUU)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: comankh w 21 Stycznia 2017, 16:31
otwarcie i zamknięcie okna konfiguracji wyłącza utwór nawet jeśli nie dokonywaliśmy żadnych zmian.

wrzuć na csdb, dostaniesz lepszy feedback.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Kisiel w 21 Stycznia 2017, 16:51
otwarcie i zamknięcie okna konfiguracji wyłącza utwór nawet jeśli nie dokonywaliśmy żadnych zmian.

wrzuć na csdb, dostaniesz lepszy feedback.
Taaa od grpz i innych łysych obywateli RFN. To już lepiej na lemon64.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 21 Stycznia 2017, 17:06
otwarcie i zamknięcie okna konfiguracji wyłącza utwór nawet jeśli nie dokonywaliśmy żadnych zmian.

wrzuć na csdb, dostaniesz lepszy feedback.

Tak ma być :) Po prostu konfiguracja plugina się zmienia a nie sprawdzam po kolei wszystkie pola czy coś faktycznie się zmieniło tylko wymuszam przeładowanie konfigu i wtedy musiało by coś wyzwolić ponowne wysłanie polecenia play i to najlepiej od początku, nie bardzo wiem jak to zrobić, a nie chce przekombinować.
Wrzucę na lemona... później.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: comankh w 21 Stycznia 2017, 22:25
(y)

btw. tryb pseudo stereo to... ?
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 21 Stycznia 2017, 22:52
(y)

btw. tryb pseudo stereo to... ?

Możliwość przypisania dowolnego kanału SIDa do lewego lub prawego kanału stereo i/lub przypisanie różnych typów SIDa do różnych kanałów stereo.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: V-12/Tropyx w 22 Stycznia 2017, 19:39
No no, Twoja wtyczka póki co potrafi więcej, niż wtyczka do słuchania plików .sid w AIMP-ie. Do szczęścia brakuje możliwości scrobblowania dla last.fm. :-)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 27 Stycznia 2017, 23:26
Zawsze znajdzie się ktoś kto pyta mnie o źródła więc w końcu wrzuciłem na GitHuba: https://github.com/zbych-r/in_sidplay2 (https://github.com/zbych-r/in_sidplay2)

Co do last.fm to dało by się coś takiego zrobić, można by było dodać jakiś przycisk w oknie z informacją o utworze (wywoływane przez Alt+3), tylko żeby to działało to user musiałby najpierw się zalogować.  Żeby skorzystać z api w last.fm trzeba najpierw zarejestrować siebie i swoją aplikację. Jak będę się nudził to może się zarejestruję, poszukam jakiegoś klienta restowego dla C/C++ i coś pokombinuję.
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 10 Marca 2018, 13:17
Ktoś prosił mnie żeby zrobić poprawkę błędu który pojawia się w starszej wersji Winampa (tak, niektórzy korzystają jeszcze z wersji 2.95 to chyba ta co miała dużo skinów).
Na starszej wersji dla plików z susbongami pierwszy subsong nie miał aktualizowanego tytułu i wyświetlała się tylko nazwa pliku.
W nowszej wersji Winampa problem ten objawiał się tym że brakowało w playliście tylko wyświetlania wartości czasu dla pierwszego subsongu, ale aktualizował się on po rozpoczęciu odtwarzania.
Jak ktoś miał włączoną opcję żeby wszystkie tytuły/metadane plików były odczytywane po załadowaniu playlisty to nie było tego problemu (domyślnie jest włączone że są odczytywane w tle).

Link do biblioteki: https://drive.google.com/open?id=1NjOXfVqjPbU_rnvJtSfqWdYremLykBvq (https://drive.google.com/open?id=1NjOXfVqjPbU_rnvJtSfqWdYremLykBvq)
Oczywiście jak ktoś ma ochotę to może sobie skompilować po swojemu z GITa
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: F7sus4 w 12 Marca 2018, 00:57
Ktoś prosił mnie żeby zrobić poprawkę błędu który pojawia się w starszej wersji Winampa (tak, niektórzy korzystają jeszcze z wersji 2.95 to chyba ta co miała dużo skinów).

Ktoś korzysta z Winampa w 2018? :o
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 12 Marca 2018, 09:11
Ktoś prosił mnie żeby zrobić poprawkę błędu który pojawia się w starszej wersji Winampa (tak, niektórzy korzystają jeszcze z wersji 2.95 to chyba ta co miała dużo skinów).

Ktoś korzysta z Winampa w 2018? :o
A jest jakaś inna ciekawa alternatywa pod Windows?
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: V-12/Tropyx w 12 Marca 2018, 11:13
Ktoś prosił mnie żeby zrobić poprawkę błędu który pojawia się w starszej wersji Winampa (tak, niektórzy korzystają jeszcze z wersji 2.95 to chyba ta co miała dużo skinów).

Ktoś korzysta z Winampa w 2018? :o
A jest jakaś inna ciekawa alternatywa pod Windows?

AIMP. Polecam. Może do niego wtyczkę przerobić?
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Beda w 12 Marca 2018, 21:52
... niektórzy korzystają jeszcze z wersji 2.95 ...
Ja tam taki dinozaur, że jeszcze korzystam z wersji 2.81 hihi
Niestety Twój nowszy plugin pokazuje jeden tytuł dla wszystkich SIDów, a starszy nie miał z tym u mnie żadnych problemów.
Na starszym nie było paska do przewijania, a w nowszym się pojawił, ale i tak nie działa w ogóle przesuwanie
Tak tylko zgłaszam dla wiadomości, bo mnie tam obojętne na jakim pluginie odsłuchuję muzyczek :)
Tytuł: Re: Plugin do odtwarzania SIDów dla Winamp'a
Wiadomość wysłana przez: Zbych w 28 Marca 2018, 19:06
Zrobiłem 2 poprawki które wykryłem przy okazji robienia pluginu dla AIMPa:
1. Błąd - gdy ktoś w opcjach nie ma zaznaczonego limitu odtwarzania lub wskazanego pliku songlength.txt, w takim przypadku wywalało się obliczanie czasu trwania i w efekcie nie generowały się tytuły, a na playliście pozostawały tylko nazwy plików.
2. Dodałem w opcjach na liście częstotliwości odtwarzania dodatkową pozycję - 48000Hz, nie wiem w jaki sposób Winamp sobie z tym radzi (czy robi resampling czy faktycznie tak odtwarza) ale wiać sobie radzi.
Ja różnicy nie czuję chociaż w Ghouls'n'Ghosts w subsongu 8 od 1:27 jest taki charakterystyczny instrument i wydaje mi się że brzmi lepiej na 48kHz
Oczywiście przy takiej częstotliwości przewijanie utworu trwa jeszcze dłużej ale nieczęsto się z tego korzysta

Link do pobrania: https://drive.google.com/open?id=1phAxcfi4PuwwQiV0G1pvkaL3OIgIMMJa (https://drive.google.com/open?id=1phAxcfi4PuwwQiV0G1pvkaL3OIgIMMJa)