Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
[quote=ilin]Pulseaudio zas to softwarowa warstwa pomiędzy alsą czy oss4 a finalnym dźwiękiem.[/quote]
czyli można albo ją wywalić gdy nie chcemy mixować?
a oss? w vlc mam możliwość skorzystania z tego co to?
@edit
@Huk:
tak chce żeby alsa tak dziwnie działała żeby uniknąć resamplingu
Ostatnio edytowany przez vfjpl (2013-02-13 21:06:39)
Offline
W tej chwili alsa emuluje stary oss.
OSS4 to zupełnie co innego.
Tam dla flasha emulujemy alsę :)
Pulseaudio nie jest konieczne do mixowania.
Ja nie mam wcale.
Jestem nawet przeciwnikiem tego wynalazku bo często powoduje problemy ,aczkolwiek u mnie działa. :)
Offline
No to obawiam się że będzie ciężko - resamplingi i tak nie unikniesz bo Ensoniq z tego co pamiętam działa na 48 Khz a większość muzy jest na 44,1 Khz, lepiej było by dla Ciebie resamplowac to dmix'em lub innym mikserem softowym, tani sprzęt robi to baaaardzo "tanio" najszybszymi a co za tym idzie - najgorszymi algorytmami - inna sprawa że dmix tez daleki jest od doskonałości. Jeżeli dostrzegasz róznice pomiędzy dmixem a kartą to spróbuj Oss4 - tam mikser używa lepszych algorytmów kosztem wydajności.
PulseAudio wywal w piz*u inaczej będziesz miał problemy.
Offline
W czym jest mixsowane jeśli nie w pulseaudio? :D
I w takim razie po co ten JACK audio i pulseaudio nie widze dla niego miejsca w muzyka->sterownik->karta-> głośniki/słuchawki ?
Ostatnio edytowany przez vfjpl (2013-02-13 21:15:44)
Offline
Mixowanie w samej alsie jej bibliotekach.
jack to zaawansowany server audio do łaczenia wielu różnych aplikacji.
Np
http://forum.dug.net.pl/viewtopic.php?id=19972
Offline
Oj to jest dłuższa opowieść... sporo dłuższa ;]
Generalnie to wygląda tak - kiedyś dawno temu było stare OSS - przez to że nie było na GPL, wyleciało z kernela i zostało zastąpione za pomocą ALSA, jako że ALSA była wtedy w sporej rozsypce i nie obsługiwała softowego miksowania (dmix powstał sporo później), zaczęły powstawać różne serwery pośrednie jak: jack, esd arts i pewnie inne o których nawet nie słyszałem. O ile JACK miał konkretny cel - mianowicie jak najniższa latencja przy jak najwyższej jakości (co sprawia że sprawdzał się i sprawdza znakomicie twórcom muzy oraz pedo... yyy znaczy audiofilom ;] ), o tyle ESD i ARTS były serwerami związanymi ze środowiskami graficznymi (Gnome i KDE) i do tego były ze sobą niezgodne.
Wszystko to + rozsypana ALSA powodowało że deweloperzy mieli kilka razy więcej roboty niż na Windos, bo nie wiedzieli co obsługiwać a co olać. PulseAudio obiecywało to wreszcie uporządkować, miał powstać jeden uniwersalny serwer, nie tylko na Linuksie, ale wręcz wielkoformatowy - tyle że ALSA od tamtej pory rozwinęła się na tyle że większość błędów które miało naprawić PA zostało w niej samej poprawione. Do tego wyszło OSS4 które pod wieloma względami jest lepsze od ALSY (na niektórych kartach, na innych może być gorsze o czy m samemu się przekonałem). Jak wyszło PA, okazało się że kompatybilność z ALSĄ pozostawia wiele do życzenia, do tego wielu userom po prostu nie chciało działać i do dzisiaj się sypie. Mimo to wielu działając na "kochanej" zasadzie "u mnie działa", zachwala je na lewo i prawo ;]
Phew mam nadzieję że coś to wyjaśniło - dodam tylko że kilka miechów temu wyszła inicjatywa KOLEJNEGO API do dźwięku które tym razem miło by byc zbawieniem dla wszystkich *nixów (BSD używają OSS), więc syfu ciąg dalszy... ;]
Offline
wyjaśniło ;D muszę przetestować ten oss4 i zobaczyć czy na nim uda mi się osiągnąć to co chciałem. A gdy bym musiał zdecydować się na software mixer i połączenie bez resamplowania odtwarzacza to co wybrać? chodzi mi o to czy alsa czy oss4 ma lepszy software mixer?
Ostatnio edytowany przez vfjpl (2013-02-13 21:49:08)
Offline
@vfjpl:
Małe wyjaśnienie - każda karta działa na jakiejś określonej częstotliwości - starsze na 48 Khz nowsze na 96 lub 192 Khz (tutaj raczej tylko High-endówki). Każda karta ZAWSZE musi dokonać re-samplingu materiału jeżeli nie jest on zgodny z jej wewnętrzną częstotliwością. Czyli nieważne czy odtwarzasz muze 44,1 Khz(jakość CD) na karcie za 5 zł czy za 5000 zł każda z nich będzie musiała dokonać resamplingu 44,1 do 48,96 lub 192 Khz i tutaj zaczynają się schody im tańsza karta tym gorzej sobie z tym radzi, a swego czasu nawet relatywnie dobre karty (SB Live! czy Audigy) były znane ze słabej jakość wewnętrznego resamplera - min dlatego Foobar lepiej brzmiał niż Winamp - bo robił SOFTWARE'owy re-sampling na 48Khz podczas gdy Winamp nie.
Pisze to po to żebyś miał rozeznanie sytuacji - za pomocą dmix'a czy innego miksera można ustawić do jakiej częstotliwości ma być samplowany dźwięk i wierz mi bądź nie - ale soft zrobi to na 99% lepiej niż sprzęt który posiadasz. Wypróbuj OSS4 mikser który tam jest powinien Ci starczyć w zupełności i masz od razu Per application volume control którą na ALSIE musiałem dopisać samemu (paczka jest na forum). Mnie tam ALSA + mój plugin w zupełności wystarcza. Odtwarzacz sam w sobie nie ma znaczenia - chyba że robisz w niem re-sampling.
Offline
Ja tylko dorzucę.
OSS4 na jednych kartach działa o wiele lepiej od alsy na innych gorzej.
Jak bedzie na twojej nie wiem dlatego proponuję Ci abyś przetestował.
Jeśli nie będzie Ci odpowiadał mozesz wyrzucić.
OSS4 jest w repozytorium ,choć ostatnio mieliśmy na forum własnie z flashem przy oss z repozytorium problem.
http://forum.dug.net.pl/viewtopic.php?id=22789
Offline
O odtwarzaczu napisałem po to, by dowiedzieć się jaki ma możliwość wyboru wyjścia dźwięĸu. Moim zdaniem tak karta lepiej brzmi pod linuxem niż pod windowsem. Myślałem że to dlatego że sterownik do niej był tak napisany że resamplował wszystko do 48k.Jesteś pewien że karta może pracować tylko w jednej częstotliwości próbkowania? Nie chcę ci nic zarzucać ale pierwszy raz spotykam się z taką informacją. Myślałem że ta karta lepiej brzmi pod linuxem właśnie dlatego że nie resampluje.
Offline
@vfjpl:
Z tego co mi wiadomo przynajmnije do czasów pierwszych X-Fi tak było - być może najnowsze konstrukcje czymś się różnią, ale wątpię.
Jeżeli słyszysz różnice to może być kilka powodów:
1. Ciulowe stery pod Windos (oj ile to ja z moim SB128 PCI walczyłem swego czasu, aż się łezka w oku kręci ;] wiem jak potrafi różnić się dźwięk pomiędzy sterami więc taka możliwość jest. Być może softowy resampler pod Windos też jest niskich lotów.
2. ALSA standardowo nie idzie przez sprzęt tylko przez resampler - tutaj wszystko jest możliwe, bo nawet bez pliku .asoundrc ALSA powinna standardowo ustawić urządzenie default na dmix'a byc może ustawia na jakiś inny plugin resamplujący - to możesz sprawdzić, spróbuj sobie zagrać jakiś plik poprzez default:
aplay -D default file.wav
oraz poprzez bezpośredni dostęp do sprzętu:
aplay -D hw:0 file.wav
Jak usłyszysz różnice to będziesz wiedzieć
3. Ciulowe kodeki do playera pod Windos - rzadkość ale możliwe.
Ja proponuję przetestować najpierw OSS4 - z tego co widzę es1371 jest obsługiwany, zobaczysz czy jakość Ci odpowiada - stawiam że będzie ;]
Offline
Jak zastosować lepszy software mixer w alsa?
chodzi mi o "samplerate_best"
http://www.hydrogenaudio.org/forums/index.php?showtopic=47591
gdzie to "libasound_module_rate plugin" znaleźć?
Ostatnio edytowany przez vfjpl (2013-02-17 18:39:00)
Offline
http://forum.dug.net.pl/viewtopic.php?id=20386
Offline
Właśnie z kompilacją miałem problem, na wheezy się skomplikować a na squeeze nie mogłem a log żadnych błędów nie dawał.
[quote=ilin]To wiesz o co biega.
Na OSS4 pewnie jeszcze lepiej by brzmiało ale chyba nadal nie kompiluje się na jajku 3x.
Trzeba poczekać.[/quote]
A w alsa chodzi mi zmienienie resamplera na inny.
Offline
Przecież podałem wyżej linka do resamplera.
Offline
dokładniej to chodziło mi o
defaults.pcm.rate_converter "samplerate_best"
w /etc/asound.conf
Co oznaczają te wartości?
period_time 0 period_size 1024 buffer_size 8192 periods 128
@edit:
Rozumiem że mixowanie to tyko dodawanie próbek? Więc jeśli odtwarzam 1 dziwięk naraz to proces mixowania nic nie zmienia?
Ostatnio edytowany przez vfjpl (2013-02-18 20:19:08)
Offline
Ja nie bardzo rozumiem w czym masz problem.
defaults.pcm.rate_converter "samplerate_best"
W ~/.asoundrc u mnie działa bez problemu.
Tyle ,że to nic nie daje.
Bez tego gra z takimi samymi parametrami.
root@debian:/home/adam/Desktop# cat /proc/asound/card0/pcm0p/sub0/hw_params access: MMAP_INTERLEAVED format: S32_LE subformat: STD channels: 2 rate: 48000 (48000/1) period_size: 1024 buffer_size: 16384
Ale juz taki asoundrc
pcm.!default { type plug slave.pcm "dmixer" } pcm.dsp0 { type plug slave.pcm "dmixer" } pcm.dmixer { type dmix ipc_key 1024 slave { pcm "hw:0,0" period_time 0 format S32_LE period_size 512 buffer_size 4096 periods 128 rate 96000 } bindings { 0 0 1 1 } } ctl.mixer0 { type hw card 0 }
Idzie tak.
adam@debian:~/Desktop$ cat /proc/asound/card0/pcm0p/sub0/hw_params access: MMAP_INTERLEAVED format: S32_LE subformat: STD channels: 2 rate: 96000 (96000/1) period_size: 512 buffer_size: 4096
Offline
[quote=ilin]Ja nie bardzo rozumiem w czym masz problem.
defaults.pcm.rate_converter "samplerate_best"
W ~/.asoundrc u mnie działa bez problemu.[/quote]
Z tym już sobie poradziłem. Zamiast tam gdze trzeba chciałem wpisać do /usr/share/alsa/alsa.conf
Chciałem się dowiedzieć co dokładnie znaczą te parametry? Za co odpowiadaj?Co się zmienia jak je zmienię :D
period_time 0
period_size 1024
buffer_size 8192
periods 128
Offline
Przetłumacz sobie.
Offline
okres czasu ?
rozmiar okresu ?
rozmiar bufora - ile czegoś jest przechowywane w pamięci zanim jest odtworzone. Odpowiada za latencję?
okresy -?
Mixowanie to tyko dodawanie dwóch próbek dźwiękowych?
Ostatnio edytowany przez vfjpl (2013-02-19 08:14:05)
Offline
Przez mixowanie ja rozumiem mieszanie dźwieku z dwóch lub wiecej źródeł.
Offline
Chodzi mi o niższą warstwę czyli na poziome sampli.
Offline
Co ty tam chcesz mixować ?
Karta dźwiękowa to nie syntezator.
Offline
hehe. Chodzi mi o zwykłe miksowanie dwóch dziwięĸów, że jak odtwarzamy dwa dziwięĸi to jest to zwykłe dodawanie wartości tych sampli do siebie i odtworzenie tego. O to właśnie chciałem zapytać czy to prawda?;D
Nadal nie rozumiem co te wszystkie wartości oznaczają. Jeśli ktoś by mógł mi to wyjaśnić to był bym wdzięczny.
@edit: korzystałem z tego poradnika http://crunchbang.org/forums/viewtopic.php?id=17428
zatrzymuje się na dpkg-reconfigure linux-sound-base
root@localhost:/home/kacper# dpkg-reconfigure linux-sound-base dpkg-query: pakiet "linux-sound-base" nie jest zainstalowany i informacje o nim nie są dostępne Użyj dpkg --info (= dpkg-deb --info), aby zobaczyć informacje o pakiecie, oraz dpkg --contents (= dpkg-deb --contents), aby sprawdzić jego zawartość. /usr/sbin/dpkg-reconfigure: linux-sound-base nie jest zainstalowany
root@localhost:/home/kacper# aptitude install linux-sound-base Brak kandydującej wersji linux-sound-base
Ostatnio edytowany przez vfjpl (2013-02-21 21:36:34)
Offline
Czy w oss4 jest coś w rodzaju /proc/asound ?
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00122 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.191.87.157' WHERE u.id=1 |
0.00250 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.191.87.157', 1732795711) |
0.00052 | SELECT * FROM punbb_online WHERE logged<1732795411 |
0.00077 | SELECT topic_id FROM punbb_posts WHERE id=224453 |
0.00315 | SELECT id FROM punbb_posts WHERE topic_id=22945 ORDER BY posted |
0.00089 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=22945 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00193 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=22945 ORDER BY p.id LIMIT 25,25 |
0.00185 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=22945 |
Total query time: 0.01304 s |