Słyszę kliknięcia za każdym razem, gdy regulowana jest głośność niektórych strumieni audio

13

(Prawie) za każdym razem, gdy regulowana jest głośność strumienia audio, słyszę kliknięcie.

Korzystałem z aplikacji internetowej, która emitowała wiele strumieni i często dostosowywała ich głośność (i powinna być w stanie to zrobić), co spowodowało nieznośną liczbę kliknięć. (Ta aplikacja zmieniła teraz sposób obsługi strumieni tak, że zjawisko już nie występuje; problem można nadal odtworzyć ręcznie dostosowując strumienie i może on być interesujący dla innych aplikacji).

Czy istnieje znany sposób, aby temu zapobiec?

Kilka dalszych obserwacji:

  • Dzieje się tak również wtedy, gdy ręcznie reguluję głośność strumieni (za pomocą pavucontrol). W szczególności działa to również w przypadku strumieni z innych aplikacji (takich jak ogg123), więc nie wydaje się, aby był to problem aplikacji.

  • Nie zdarza się to w przypadku zmiany głośności całego urządzenia wyjściowego, po prostu ze strumieni na pavucontrol„s odtwarzania karcie.

  • Intensywność kliknięcia zależy od głośności aktualnie odtwarzanego dźwięku w odpowiednim strumieniu audio. Najlepiej słychać go przy monotonnych dźwiękach. Zjawisko to jest bardziej widoczne, jeśli odtwarzany jest co najmniej jeden inny strumień audio.

  • Zjawisko to można również zaobserwować przy niewielkich zmianach głośności.

  • To nie to samo, co problem opisany w: Jak mogę wyłączyć dźwięk „trzaskania” podczas regulacji głośności? Dźwięk wyraźnie się różni /usr/share/sounds/freedesktop/stereo/audio-volume-change.oga.

  • Mam wrażenie, że niektóre aktualizacje w ostatnich miesiącach poprawiły sytuację, ale problem nie został w pełni usunięty. Może to być również spowodowane tym, że jestem niewiarygodnym detektorem.

  • Po raz pierwszy zetknąłem się z tym problemem w 14.04. Utrzymuje się w 16.04.

  • Dzieje się tak na wielu komputerach, więc zakładam, że nie jest to problem sprzętowy. Oba są jednak urządzeniami Intela. Oto wynik sudo lshw -C multimedia:

    Pierwsza maszyna:

    description: Audio device
    product: 7 Series/C210 Series Chipset Family High Definition Audio Controller
    vendor: Intel Corporation
    physical id: 1b
    bus info: pci@0000:00:1b.0
    version: 04
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress bus_master cap_list
    configuration: driver=snd_hda_intel latency=0
    resources: irq:28 memory:f2530000-f2533fff
    

    Druga maszyna

    description: Audio device
    product: 82801JI (ICH10 Family) HD Audio Controller
    vendor: Intel Corporation
    physical id: 1b
    bus info: pci@0000:00:1b.0
    version: 00
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress bus_master cap_list
    configuration: driver=snd_hda_intel latency=0
    resources: irq:32 memory:f9ff8000-f9ffbfff
    
Wrzlprmft
źródło
Kliknięcia nie są normalnym zachowaniem głośności w celu dostosowania głośności Ubuntu. Jak brzmią te kliknięcia? Czy możesz mieć problem ze swoim zewnętrznym wzmacniaczem? Obawiam się, że będziesz musiał być bardziej szczegółowy. Jaki program, w których strumieniach dostosowujesz głośność?
Thompson Dawes,
1
@ThompsonDawes: Czy możesz mieć problem ze swoim zewnętrznym wzmacniaczem? - mało prawdopodobne. Jak napisałem, dzieje się to na różnych maszynach. - Jaki program, w których strumieniach dostosowujesz głośność? - Dzieje się tak z kilkoma strumieniami. Regulacja głośności za pomocą pavucontrolwystarcza, aby doświadczyć tego zjawiska.
Wrzlprmft
Słyszałem o takim zjawisku w przypadku niektórych konwerterów częstotliwości próbkowania. Spróbuj ustawić wszystkie odtwarzane strumienie i mikser pulseaudio, aby używać tej samej częstotliwości próbkowania.
O8h7w
Nie mam teraz czasu na testy i badania, ale jak ustawić częstotliwość próbkowania używaną przez mikser Pulseaudio?
Wrzlprmft
Czy liczba odtwarzanych strumieni ma jakikolwiek wpływ? Czy uzyskujesz te same wyniki przy odtwarzaniu jednego strumienia, który otrzymujesz z wieloma strumieniami? Próbuję ustalić, dlaczego to „Prawie” zawsze powinno być prawdą i jakie są warunki, gdy tak nie jest. Oświadczasz, że dzieje się to na wielu komputerach. Czy mają coś wspólnego ze sobą? Może to samo urządzenie wyjściowe? Ten sam kierowca? Czy dane wyjściowe są identyczne we wszystkich systemach z poleceniem sudo lshw -C multimediaJeśli tak, to co to jest? Jakiej aplikacji używasz, aby spowodować takie zachowanie?
Starszy Geek

Odpowiedzi:

2

Możesz przekroczyć granice opóźnienia sprzętu, gdy puls jest „zajęty”.

configuration: driver=snd_hda_intel latency=0

Naprawdę nie ma czegoś takiego jak zerowe opóźnienie. Zakładam, że to oznacza pod-milisekundę.

Zgodnie z tym https://arunraghavan.net/2013/08/pulseaudio-4-0-and-skype/ Ustawianie zmiennej env PULSE_LATENCY_MSEC = 10 przed uruchomieniem aplikacji. Daje to oprogramowaniu 10 ms czasu buforowania, jeśli ma więcej pracy na miksowanie strumieni.

10ms to wciąż wystarczająco małe opóźnienie, chyba że grasz na instrumentach cyfrowych na żywo lub w bardzo szybkich grach.

teknopaul
źródło
Dziękuję za Twoją odpowiedź. Niestety nie wydaje się to pomocne, ale wydaje się nawet, że nieco gorzej. Jednak do tej pory nie próbowałem ustawiać tej zmiennej globalnie i nie mogę znaleźć eleganckiego sposobu.
Wrzlprmft