мерцающий звук на человечности 16.04

Я плохо знаком с человечностью и Linux в целом. У меня есть некоторые звуковые проблемы, когда я слушающий музыку, особенно на Firefox, я заболел теми звуковыми "отклонениями" - значение каждые 10-30 секунд звуковой остановки для части секунды и затем возвращаюсь.

Это, также происходит когда я слушающий музыку офлайн через предварительно установленные плееры, но до меньшей степени.

Я пытался снять флажок с опцией "Use hardware acceleration when available" в Firefox, но проблема все еще происходит.

Спасибо!

1
задан 16 September 2017 в 15:52

1 ответ

Хорошо, таким образом, я нашел решение для своей проблемы.

я следовал инструкциям в этом учебном руководстве: https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting#Setting_the_default_fragment_number_and_buffer_size_in_PulseAud io

, Если Вы заинтересовали логикой позади решения, не стесняется проверять ссылку сами. Этот ответ будет чисто техническим.

короче говоря, я сначала работал:

sudo gedit /etc/pulse/default.pa

и добавил tsched=0 к существовавшей строке - load-module module-udev-detect. означание, что конечный результат должен быть: load-module module-udev-detect tsched=0

согласно учебному руководству это выключает что-то позвонившее "основанное на таймере планирование аудио".

впоследствии я выполнил команду: pactl list sinks и получил долгий вывод информации и параметров.

Sink #0
State: RUNNING
Name: alsa_output.pci-0000_00_1f.3.analog-stereo
Description: Built-in Audio Analog Stereo
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 48000Hz
Channel Map: front-left,front-right
Owner Module: 6
Mute: no
Volume: front-left: 47842 /  73% / -8.20 dB,   front-right: 47842 /  73% / -8.20 dB
        balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor Source: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
Latency: 92790 usec, configured 99954 usec
Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
Properties:
    alsa.resolution_bits = "16"
    device.api = "alsa"
    device.class = "sound"
    alsa.class = "generic"
    alsa.subclass = "generic-mix"
    alsa.name = "Generic Analog"
    alsa.id = "Generic Analog"
    alsa.subdevice = "0"
    alsa.subdevice_name = "subdevice #0"
    alsa.device = "0"
    alsa.card = "0"
    alsa.card_name = "HDA Intel PCH"
    alsa.long_card_name = "HDA Intel PCH at 0xef328000 irq 131"
    alsa.driver_name = "snd_hda_intel"
    device.bus_path = "pci-0000:00:1f.3"
    sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
    device.bus = "pci"
    device.vendor.id = "8086"
    device.vendor.name = "Intel Corporation"
    device.product.id = "9d71"
    device.form_factor = "internal"
    device.string = "front:0"
    device.buffering.buffer_size = "17632"
    device.buffering.fragment_size = "4408"
    device.access_mode = "mmap"
    device.profile.name = "analog-stereo"
    device.profile.description = "Analog Stereo"
    device.description = "Built-in Audio Analog Stereo"
    alsa.mixer_name = "Conexant Generic"
    alsa.components = "HDA:14f11f72,104311b0,00100000 HDA:8086280b,80860101,00100000"
    module-udev-detect.discovered = "1"
    device.icon_name = "audio-card-pci"
Ports:
    analog-output-speaker: Speakers (priority: 10000)
    analog-output-headphones: Headphones (priority: 9000, not available)
Active Port: analog-output-speaker
Formats:
    pcm

необходимо сфокусироваться только на этих 4 строках:

  • Демонстрационная Спецификация: s16le 2ch 48000 Гц

  • alsa.resolution_bits = " 16 "

  • устройство buffering.buffer_size = " 17632 "

  • устройство buffering.fragment_size = " 4408 "

использование информации от этих 4 строк, Вы собираетесь вычислить 2 значения:

значение 1:

(в простой математике: https://i.stack.imgur.com/CzEq3.png):

В первой строке я добрался 2ch 48000Hz, и во второй строке я получил значение "16", таким образом, я просто сделал 2*48000*16=1536000.

теперь делят значение от дальше строка (для меня "4408") результатом, который Вы только что вычислили (для меня 1536000) и умножаете его на 1 000.

подразумевать, что для меня: значение 1 = 2.86979 .

значение 2: просто разделите значение от первой строки значением от дальше строка.

подразумевать, что для меня: значение 2 = 17632/4408 =4.

-

Наконец выполняет команду: sudo gedit /etc/pulse/daemon.conf

ищут строки:

; default-fragments = ---
; default-fragment-size-msec = ---

и Вводят значения как этот:

; default-fragments = value 1
; default-fragment-size-msec = value 2

Теперь все оставленные сделать должны перезапустить выполненный pulseaudio.:

killall pulseaudio
pulseaudio --check

и впоследствии запускают pulseaudio с диалогового окна выполнения (Высокий звук + F2 по умолчанию)

Hope, это был полезный :)

0
ответ дан 8 December 2019 в 04:00

Другие вопросы по тегам:

Похожие вопросы: