Audiohobby.pl
Audio => DIY => Wątek zaczęty przez: dc w 16-05-2008, 21:46
-
Witam.
Pozwolę sobie na kilka słów wyjaśnienia na początek. Jestem informatykiem, szczególnie interesuje mnie pogranicze techniki cyfrowej i rzeczonej informatyki. Audiofilem nie wiem czy jestem - wiele definicji spotkałem. Cenię sobie dobre brzmienie - o to chyba tu chodzi, ale osłuchania fenomenalnego nie mam. Mój kontakt z lepszym sprzętem ogranicza sie do wizyt u znajomych.
Mam swoją małą zachciankę - chce sobie stworzyć źródło cyfrowe. Dysk, kontroler i mikrokontroler. Do tego malutki system operacyjny, który jest nim chyba tylko z nazwy. Na razie to urządzenie wysyła nieporadnie sygnał przez kabel koncentryczny w standardzie SPDIF. I działa - co mnie neizmiernie cieszy.
Mam jednak jeszcze, a jakże - swoją, małą ambicję. Chciałbym, żeby to działało świetnie. Tutaj pytanie do was. O co powinienem zadbać by w światku audiofilskim, ktoś mógł śmiało powiedzieć - "Użył tu ciekawych rozwiazań! To może dobrze zagrać!".
Zadbać lepiej o zegar? Użyć innych standardów? Przyjrzeć się jitterowi? (karkołomna fleksja)
Mam świadomość, że troche to wykracza poza moją specjalizację, ale chętnie i szybko się uczę.
Mam dość otwarty umysł, więc możecie mnie nawet troche jakimś voodoo oszukać. Jest to po troszu praca badawcza, więc chętnie wejdę po raz kolejny w ślepą uliczkę, czy posiłuję się z otwartymi już drzwiami.
Z góry wielkie dzięki za wszelką pomoc lub kometarz.
Pozdrawiam.
Adrian "dc" M.
-
Napisz coś więcej o materiale źródłowym z którego bierzesz dane do konwersji na SPDIF.
Czy to ścieżki zgrane na HDD, czy MP3. Z jakiego kontrolera korzystasz (normalny kontroler IDE i dalsza obróbka)? Jak rozumiem wyciagasz co się da z kontrolera IDE, a później jakiś mikrokontroler jednoukładowy z pamięcią i Twoim programikiem? Czy jednak jakieś gotowe rozwiązanie rodem z MP3 playerów?
Pozdrawiam
-
Materiał to zgrane ścieżki z CD. Dekoder mp3 też jest, ale wyjątkowo barbarzyński. Docelowo ma być obsługa kilku formatów, ale to dyskusja na inne forum. Chyba.
Kontroler IDE, dalej logika w układzie FPGA. Całość sterowana uC. Więc logika przetwazania może być śmiało modyfikowana. W grę rownież wchodzi zaawansowane (w odpowiedniej skali oczywiście ) przetwarzanie dźwięku na uC.
Struktura jest minimalistyczna i z założenia rozszerzalna. Tyle wyniosłem i Inżynierii Oprogramowania.
Konwersja nie musi być do SPDIF. Może istnieją korzystniejsze formaty?
-
OK. Wszystko jasne. Podążasz własciwą drogą. Z racji uniwersalności pozostałbym przy SPDIF. Podobne rozwiązanie stosuje Audio Aero w swoich odtwarzaczach. Płyta CD jest czytana na dysk (do bufora) i dalej podobnie jak u Ciebie. Nie jestem kompetentny, żeby doradzić Tobie coś w temacie oprogramowania tego mikrokontrolera. Warto natomiast już teraz jeśli masz działający prototyp podpiąć go pod jak najlepszy przetwornik(i resztę systemu) i zobaczyć jaki będzie efekt końcowy.
Nie wiem gdzie mieszkasz - w Poznaniu mogę zaoferować kilka miejsc z przyzwoitym systemem odsłuchowym.
-
Dzięki za pomoc. Mieszkam poza Poznaniem, ale nie mam tam znów daleko. Tak czy inaczej jeszcze za wcześnie, bo układ działa tylko przez debuggera - brak jakiegokolwiek interface\'u ;)
Tymczasem ja dużo czytam, odświeżam umysł ... W każdym razie zainteresowałem się minimalizacja jitteru w takim źródle. Na początku myślałem o zwykłej podwójnej pętli PLL - jednak po przeczytaniu recenzji Genesis Digital Lens skłaniam się ku innemu podejściu. Macie jakieś zdanie?
Co sądzicie o standardzie AES/EBU?
Jak wygląda audiofilska ocena up-samplingu?
-
AES/EBU niewiele się różni od SPDIF tj. ma główną wadę że sygnał zegarowy nie jest oddzielnie..... chociaż tak jak rekin napisał , jeżeli ma być to źródło uniwersalne to nie ma innego wyboru niz SPDIF, opcjonalnie można dodać wyjście I2S
Co do jittera to napewno jakiś porządny generator Master Clock w takt którego następował by odczyt z pamięci RAM, chyba byłą by najlepsze rozwiązaniem.
-
w jakim celu zastosowałeś FPGA? tylko jako interface pomiędzy dyskiem a prockiem czy to on odwala całą brudną robotę i serializuje odczytane dane?
też myślę o czymś takim tylko prostszym - jako procek ARM (wystarczająca ilość linii, wystarczająco szybki i tani ;))
ma tylko obsługiwać file system i przekazywać dane dalej - tu są dwa rozwiązania - wykorzystać I2C ustawione w tryb I2S albo dodać układ FIFO taktowany z zewnętrznego stabilnego zegara
-
josef
Może od początku. FPGA użyłem bo ... nie wiedziałem do czego użyć. Pobrane z kontrolera IDE dane wpadają w logikę zaszytą w FPGA. Tam, pod kontrolą uC i jego zegara są przygotowywane i "konwertowane" (za duże słowo) do standardu I2S, bo taki strumień danych odbiera mój aktualny nadajnik SPDIF. Mam świadomość, że to troche karkołomne, ale jak mówiłem - wszystko jest tymczasowe.
Myślę właśnie nad pomysłem małych, szybkich pamięci jako bufora taktowanego właśnie jakimś dobrym zegarem. Z drugiej strony, FPGA pozwala mi na implementacje bufora na 20-bitowych rejestrach. Troche takie "direct solution".
Tak patrze teraz na strone DDDACa 1543. Z czego co widzę, korzysta on właśnie ze standardu I2S. Wbrew jakiejkolwiek uniwersalności mógłbym po prostu przesłać sygnał i2s. Warto? Czy może byle-jaki DAC po SPDIF go zmiecie nie patrząc na jitter? Jak przesyłać sygnał i2s?
Jak wygląda porównanie kabli optycznych i zwykłych (no, to się teraz wiedzą popisałem - chyba o koncentryczne i podobne mi chodzi)?
Mam nadzieję, że nikogo nie urażę tym potokiem pytań.
-
jakie systemy plików obsługujesz?
-
dc
Jak wygląda porównanie kabli optycznych i zwykłych (no, to się teraz wiedzą popisałem - chyba o koncentryczne i podobne mi chodzi)?
Moim zdaniem korzystniejszy jest przesył sygnału koncentrykiem ( coaxial )
-
Moje rady, żeby lepiej zagrało:
1. Jeśli możesz polecieć od razu po I2S i ominąć S/PDIF to KONIECZNIE zrób to !
2. Kable optyczne zostaw w spokoju.
3. Transmisję I2S zrób koniecznie linią o stałej impedancji falowej - więc zapomnij o gniazdach/wtyczkach RCA. Chyba że masz dostęp do kabli koncentrycznych 30Ohm :). Generalnie nada się cokolwiek co jest używane w WCz.
-
Dlaczego optyczne zostawic w spokoju?
Gdzies czytalem, ze nie lubi sie swiatlowodow ze wzgledu na kiepskie odbiorniki/nadajniki. Ja moglbym miec dostep do doprej optyki produkowanej dla cisco, wiec moglbym chyba jakos rozwiazac ten problem. A moze szukam wad nie tam gdzie trzeba ;)
Trzeciego punktu ni w zab nie rozumiem. Jesli nie rca to co?
dc
PS. Przepraszam za brak polskich znakow. Problemy techniczne.