Analecto

24 de maio de 2015

Agora, sim: consertei o problema do som.

Filed under: Computadores e Internet — Tags:, , , — Yurinho @ 17:14

BOL – Brasil Online.

Antes de ir direto ao ponto, meus pedidos de inclusão foram todos recusados novamente, porque o Orquídea Negra não conseguiu resolver meu problema à tempo. Na terça-feira, irei à coordenação do curso pra saber se ele conseguiu e, talvez, incluir as disciplinas (ou, pelo menos, tentar pela terceira vez…).

O problema de som que venho enfrentando parece estar com os dias contados, porque elaborei uma solução experimental. Existe um programa de linha de comando chamado Pacmd. Ele permite configurar um servidor de som Pulseaudio enquanto este executa. Em primeiro lugar, entendamos o problema.

As caixas de som estão ligadas, mas não sai som delas (Linux Mint Debian Edition, 64-bit, Cinnamon Edition). Se eu instalar o Controle de Som do Pulseaudio (pavucontrol), vejo que o som está sendo direcionado para os fones de ouvido. Mudar a configuração para saída de linha resolve o problema, mas isso deve ser feito à cada sessão, o que é muito chato. Como não disponho de meios para resolver o problema, preciso usar um meio temporário: um comando que deve ser usado automaticamente a cada início de sessão, que pode ser configurado pelo Aplicativos de Sessão.

Em segundo lugar, precisamos descobrir que comando é esse. Eu já li o manual pra você, então vou soprar a resposta. Execute o comando “pacmd list-sinks” num Terminal. Isso te dará uma lista de “pias” (sinks).

1 sink(s) available.
  * index: 0
    name: <alsa_output.pci-0000_00_1b.0.analog-stereo>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY FLAT_VOLUME DYNAMIC_LATENCY
    state: SUSPENDED
    suspend cause: IDLE
    priority: 9959
    volume: front-left: 32770 /  50% / -18,06 dB,   front-right: 32770 /  50% / -18,06 dB
            balance 0,00
    base volume: 65536 / 100% / 0,00 dB
    volume steps: 65537
    muted: no
    current latency: 0,00 ms
    max request: 0 KiB
    max rewind: 0 KiB
    monitor source: 0
    sample spec: s16le 2ch 48000Hz
    channel map: front-left,front-right
                 Estéreo
    used by: 0
    linked by: 0
    configured latency: 0,00 ms; range is 0,50 .. 341,33 ms
    card: 0 <alsa_card.pci-0000_00_1b.0>
    module: 6
    properties:
        alsa.resolution_bits = “16”
        device.api = “alsa”
        device.class = “sound”
        alsa.class = “generic”
        alsa.subclass = “generic-mix”
        alsa.name = “ALC888 Analog”
        alsa.id = “ALC888 Analog”
        alsa.subdevice = “0”
        alsa.subdevice_name = “subdevice #0”
        alsa.device = “0”
        alsa.card = “0”
        alsa.card_name = “HDA Intel”
        alsa.long_card_name = “HDA Intel at 0xfeaf4000 irq 44”
        alsa.driver_name = “snd_hda_intel”
        device.bus_path = “pci-0000:00:1b.0”
        sysfs.path = “/devices/pci0000:00/0000:00:1b.0/sound/card0”
        device.bus = “pci”
        device.vendor.id = “8086”
        device.vendor.name = “Intel Corporation”
        device.product.id = “3a3e”
        device.product.name = “82801JI (ICH10 Family) HD Audio Controller”
        device.form_factor = “internal”
        device.string = “front:0”
        device.buffering.buffer_size = “65536”
        device.buffering.fragment_size = “32768”
        device.access_mode = “mmap+timer”
        device.profile.name = “analog-stereo”
        device.profile.description = “Estéreo analógico”
        device.description = “Áudio interno Estéreo analógico”
        alsa.mixer_name = “Realtek ALC888”
        alsa.components = “HDA:10ec0888,1b0a009f,00100001”
        module-udev-detect.discovered = “1”
        device.icon_name = “audio-card-pci”
    ports:
        analog-output-lineout: Saída de linha (priority 9900, latency offset 0 usec, available: no)
            properties:
               
        analog-output-headphones: Fones de ouvidos (priority 9000, latency offset 0 usec, available: no)
            properties:
                device.icon_name = “audio-headphones”
    active port: <analog-output-lineout>

Anote o nome daquela que tem a porta referente às caixas de som (algo como analog-output-lineout), que deve estar lá pela última linha de pia. No meu caso, a pia é “alsa_output.pci-0000_00_1b.0.analog-stereo“.

Em terceiro lugar, precisamos testar a solução. Abra o Controle de Som do Pulseaudio e mude novamente o som para os fones de ouvido, se já não estiver, então execute o comando pacmd set-sink-port seguido do nome da pia e do nome da porta. No meu caso, o comando foi:

pacmd set-sink-port alsa_output.pci-0000_00_1b.0.analog-stereo analog-output-lineout

Depois, cheque o Controle de Som do Pulseaudio novamente para ver se o som mudou dos fones de ouvido para as caixas de som. Se tiver, é porque esse comando serve também para nosso propósito e, de posse dele, podemos criar um script de inicialização de sessão com ele.

Por último, abra o Aplicativos de Sessão e adicione uma nova entrada. Ponha um nome com significado e o comando que deu certo, depois um comentário. No meu caso ficou:

Nome: Configuração da Porta de Som

Comando: pacmd set-sink-port alsa_output.pci-0000_00_1b.0.analog-stereo analog-output-lineout

Comentário: Conserta a saída de som do Pulseaudio.

Startup Delay: 0

Isso não resolve a causa do problema, mas anula seus efeitos, porque o som será direcionado às caixas de som automaticamente à cada sessão.

20 de maio de 2015

Como consertei o som do LMDE.

Filed under: Computadores e Internet — Tags:, , , — Yurinho @ 03:10

SoFurry – The furry creativity home.

Depois de atualizar o LMDE1 para o LMDE2, comecei a experimentar um problema muito irritante: o som das minhas caixas de som havia desaparecido. Procurando soluções online, vi que eu podia redirecionar o som para as caixas de som utilizando o pavucontrol. O pavucontrol (Controle de Volume do Pulseaudio) denuciou que, depois da atualização, o som estava sendo enviado para os fones de ouvido, os quais não existiam, logo não havia som. Redirecionei o som usando o pavucontrol e tudo deu certo…

Até que eu tive que encerrar a sessão e voltar, apenas para ver que o problema estava ali novamente. Procurei soluções por dois dias, mas sem sucesso. Então eu tive que raciocinar. Em algum momento, eu quebrei o som completamente, de forma que nem o pavucontrol resolvia. Então entrei em outra conta e verifiquei se o problema acontecia lá também. Não acontecia. Então, o problema era relativo à minha conta, o que é uma pista e tanto! Isso significa que o problema residia em algum arquivo de configuração no meu diretório pessoal.

Existe um diretório oculto na pasta pessoal chamado .config, onde ficam os arquivos de configuração, inclusive, do Pulseaudio. Por alguma razão, esses arquivos de configuração estavam sendo reescritos a cada início de sessão. Eu já tive um problema parecido. Seguinte:

  1. Vá ao diretório pessoal.
  2. Aperte Ctrl+H, isso mostrará os diretórios e arquivos ocultos.
  3. Entre em .config.
  4. Apague o diretório pulse dentro de .config.
  5. Encerre sua sessão.
  6. Entre novamente.
  7. Chame o Controle de Volume do Pulseaudio.
  8. Direcione o som para as caixas de som. Isso irá criar um arquivo de configuração correto no diretório de configuração, mas ainda precisamos impedir que ele seja reescrito.
  9. Volte para ~.config/pulse.
  10. Altere as permissões de todos os arquivos lá dentro, de forma que apenas o proprietário tenha permissões de escrita sobre eles (isso é feito pelas propriedades do arquivo, acessíveis pelo menu de contexto).
  11. Volte para ~.config.
  12. Mude as permissões do diretório pulse, para que ele também fique somente leitura.
  13. Mude as permissões do pavucontrol.ini, um arquivo também naquele diretório, para somente leitura.
  14. Encerre sua sessão.

%d blogueiros gostam disto: