Jest szansa na lepszą obsługę dźwięku w Linuksie: pomóżcie w testach
W tym tygodniu pojawiła się kolejna wersja linuksowego jądra,oznaczona numerkiem 3.8 i przynosząca sporo zmian widocznych takżedla „zwykłego” użytkownika Ubuntu czy Fedory na desktopie.Pełna obsługa wszystkich układów graficznych z rodziny NvidiaGeForce oraz nowych rdzeni graficznych Intela, które pojawią się wprocesorach Haswell (Core i4000) czy nowy przyjazny dla pamięciflash system plików F2FS to znaczące ulepszenia. Stan podsystemugrafiki na Linuksie jest jednak dziś całkiem zadowalający – owiele gorzej wygląda sytuacja z dźwiękiem, to co oferuje „pingwin”ustępuje Windows czy OS-owi X. Pierwsze zmiany w rozwijanym jądrze3.9 dają nadzieję na zmianę tej sytuacji. [img=sound]Jednym z najczęściej wykorzystywanych dziś protokołów audiojest Intel HDA. Znajdziemy go w większości zintegrowanych z płytamigłównymi układów dźwiękowych, pozwala ona na też na obsługęwyjścia HDMI i DisplayPort. Jednym z największych problemów dlaLinuksa jest liczba kontrolerów i kodeków, które trzeba dla IntelHDA obsłużyć – tych ostatnich jest ponad trzysta (a w dodatkukażdy kodek obsługuje wiele różnych konfiguracji). Odpowiednikod do ich obsługi był wprowadzany na poziomie frameworku ALSA.Utrzymanie tego stanu rzeczy wykraczało poza fizyczne możliwoścideweloperów zajmujących się rozwojem podsystemu dźwięku wLinuksie. Próba dodania nowych funkcjonalności do sterownikówaudio w jądrze oznaczała konieczność robienia tegooddzielnie dla każdego kodeku – coś o co programiści OS-a Xmartwić się nie musieli, mając do dyspozycji znacznie bardziejuniwersalne sterowniki appleHDA.Dzięki pracomTakashi Iwai, opiekującego się podsystemem dźwięku wjądrze Linuksa, wersja 3.9 przyniesie znaczną poprawę sytuacji.Ponad 150 łatek pozwoli na zunifikowanie sterowników kodeków HDA,a to oznacza zarówno znacznie łatwiejsze wprowadzanie ulepszeń wobsłudze audio jak i możliwość szybszego dodawania obsługinowych układów. W pierwszej kolejności zintegrowane mają byćkodeki – Realteka, C-Media, AD i CA0110, następnie przyjść maczas na Cirrusa, VIA, Conexanta i IDT. Rozmiar problemu, jakim jest obsługa dźwięku w Linuksie, robiwrażenie. David Henningsson z Canonicala pisze,że na podstawie zgłoszeń od użytkowników udało sięzidentyfikować około 6 tysięcy różnych konfiguracji sprzętowych.Przetestowanie ich wszystkich nie wchodzi w grę, więc stworzonoemulator hda-emu, do testowania kodu sterowników kodeków wzautomatyzowany sposób. Jednak w rzeczywistości to, jak sprzętdziała, niekoniecznie musi zgadzać się z tym, jak opisanezostało jego działanie w specyfikacji. Henningsson wyjaśnia:załóżmy, że kodek jest zepsuty tak, że ogłasza dwie ścieżkiaudio, ale w praktyce tylko jedna z tych ścieżek działa. Nowyparser może trasować audio odmiennie niż stary, w konsekwencjibędzie się wydawało, że audio powinno działać. W praktyceusłyszymy tylko ciszę. W tej sytuacji potrzebne są testy najak największym zakresie sprzętu. Trudno oczekiwać odużytkowników, by sami sobie kompilowali jądra z poprawkamiTakashiego Iwai, ale na szczęście możecie już wykorzystaćpakiety DKMS do przeprowadzenia testów – instrukcję znajdziecie wwikiUbuntu. Informacje o wyników testu można następnie przekazaćza pomocą narzędzia AlsaInfo.
22.02.2013 14:15
Zalogowani mogą więcej
Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika