Problemas com QJackCtl

Iniciado por Matheus Lima, 28 de Janeiro de 2017, 18:11

tópico anterior - próximo tópico

Matheus Lima

Opa, o problema é o seguinte: eu uso o Guitarix com o QJackCtl. Só que acontece umas falhas de audio. Estou tranquilamente tocando, e, derrepente, o QJack trava. Volta depois de alguns segundos, mas de tempos em tempos (da ordem de minutos) volta a dar essas travadinhas. É algo meio aleatório. As vezes começa a travar muito e simplesmente não tem como tocar nada.

Na caixa de mensagens do Jack é isso que aparece:

18:08:57.656 XRUN callback (2 skipped).
18:08:59.666 XRUN callback (174 skipped).
18:09:01.677 XRUN callback (108 skipped).
18:09:01.973 XRUN callback (28804).
18:09:03.686 XRUN callback (174 skipped).
18:09:05.696 XRUN callback (201 skipped).
18:09:07.706 XRUN callback (201 skipped).
18:09:09.715 XRUN callback (124 skipped).
18:09:09.992 XRUN callback (29508).
18:09:11.725 XRUN callback (177 skipped).
18:09:13.735 XRUN callback (208 skipped).
18:09:15.746 XRUN callback (205 skipped).
18:09:17.755 XRUN callback (200 skipped).
18:09:19.765 XRUN callback (143 skipped).
18:09:20.801 XRUN callback (30446).
18:09:21.774 XRUN callback (2 skipped).
18:09:23.783 XRUN callback (203 skipped).
18:09:25.794 XRUN callback (154 skipped).
18:09:26.816 XRUN callback (30808).
18:09:27.803 XRUN callback (102 skipped).
18:09:29.813 XRUN callback (120 skipped).
18:09:31.824 XRUN callback (166 skipped).
18:09:32.834 XRUN callback (31199).
18:09:34.842 XRUN callback (31200).
18:09:36.847 XRUN callback (31201).
18:09:37.860 XRUN callback (100 skipped).
18:09:39.871 XRUN callback (205 skipped).
18:09:41.882 XRUN callback (204 skipped).
18:09:43.893 XRUN callback (203 skipped).
18:09:45.904 XRUN callback (195 skipped).
18:09:47.676 XRUN callback (32113).
18:09:47.914 XRUN callback (25 skipped).
18:09:49.923 XRUN callback (199 skipped).
18:09:51.684 XRUN callback (32339).
18:09:51.933 XRUN callback (26 skipped).
18:09:53.945 XRUN callback (200 skipped).
18:09:55.956 XRUN callback (204 skipped).
18:09:57.965 XRUN callback (203 skipped).
18:09:59.975 XRUN callback (204 skipped).
18:10:01.987 XRUN callback (203 skipped).
18:10:03.997 XRUN callback (151 skipped).
18:10:06.007 XRUN callback (203 skipped).
18:10:08.017 XRUN callback (203 skipped).
18:10:10.027 XRUN callback (204 skipped).
18:10:12.036 XRUN callback (203 skipped).
18:10:14.046 XRUN callback (205 skipped).
18:10:15.664 XRUN callback (34603).
18:10:16.063 XRUN callback (77 skipped).
Sat Jan 28 18:10:15 2017: ERROR: JackEngine::XRun: client = gx_head_amp was not finished, state = Running
Sat Jan 28 18:10:15 2017: ERROR: JackEngine::XRun: client = gx_head_fx was not finished, state = Triggered
Sat Jan 28 18:10:15 2017: ERROR: JackAudioDriver::ProcessGraphAsyncMaster: Process error
Sat Jan 28 18:10:15 2017: ERROR: JackAudioDriver::ProcessGraphAsyncMaster: Process error
18:10:18.078 XRUN callback (202 skipped).
18:10:20.089 XRUN callback (204 skipped).
18:10:22.100 XRUN callback (204 skipped).
18:10:24.110 XRUN callback (203 skipped).


Obs: Uso Ubuntu 16.04 LTS.

druidaobelix

#1
Sincronicidade e baixa latência são essência nessa questão.
Não deveriam estar acontecendo xruns como seu relatório demonstra.

1) Uma máquina de bom desempenho pode ser importante na questão latência, instale o pacote inxi e diga algo sobre o seu equipamento:
Marca e modelo, se existirem, podem ajudar a encontrar uma solução.

Para instalar o inxi:

sudo apt install inxi

depois traga ao tópico o resultado para:

inxi -FxZ


2) Está usando kernel RT (=realtime; tempo real), lowlatency (baixa latência)?

uname -srvm

3) Se já não estiver experimene instalar e subir o sistema por ele:

sudo apt-get install linux-lowlatency

4) Confirme na gui (=interface gráfica) do QjackCtrl configuration que a checkbox "Realtime" esteja devidamente assinalada.


                                                                                                                                                                                                                               #3700
www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

Matheus Lima

1)


System:    Host: matheus-Inspiron Kernel: 4.4.0-59-lowlatency x86_64 (64 bit gcc: 5.4.0)
           Desktop: Unity 7.4.0 (Gtk 3.18.9-1ubuntu3.1)
           Distro: Ubuntu 16.04 xenial
Machine:   System: Dell product: Inspiron 7520 v: A07
           Mobo: Dell model: 0DNMM8 v: A01 Bios: Dell v: A07 date: 10/03/2012
CPU:       Dual core Intel Core i5-3210M (-HT-MCP-) cache: 3072 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 9977
           clock speeds: max: 3100 MHz 1: 1488 MHz 2: 1381 MHz 3: 1481 MHz
           4: 1411 MHz
Graphics:  Card-1: Intel 3rd Gen Core processor Graphics Controller
           bus-ID: 00:02.0
           Card-2: Advanced Micro Devices [AMD/ATI] Chelsea LP [Radeon HD 7730M]
           bus-ID: 01:00.0
           Display Server: X.Org 1.18.4 drivers: ati,radeon,intel (unloaded: fbdev,vesa)
           Resolution: 1920x1080@60.00hz
           GLX Renderer: Mesa DRI Intel Ivybridge Mobile
           GLX Version: 3.0 Mesa 11.2.0 Direct Rendering: Yes
Audio:     Card-1 Intel 7 Series/C210 Series Family High Definition Audio Controller
           driver: snd_hda_intel bus-ID: 00:1b.0
           Card-2 Licensed by Sony Entertainment America Rocksmith Guitar Adapter
           driver: USB Audio usb-ID: 003-006
           Sound: Advanced Linux Sound Architecture v: k4.4.0-59-lowlatency
Network:   Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
           driver: r8169 v: 2.3LK-NAPI port: 2000 bus-ID: 07:00.0
           IF: enp7s0 state: down mac: 5c:f9:dd:ec:8e:89
           Card-2: Qualcomm Atheros AR9485 Wireless Network Adapter
           driver: ath9k bus-ID: 08:00.0
           IF: wlp8s0 state: up mac: e0:06:e6:d1:c7:6f
           Card-3: Atheros usb-ID: 002-005
           IF: null-if-id state: N/A speed: N/A duplex: N/A mac: N/A
Drives:    HDD Total Size: 1320.3GB (57.3% used)
           ID-1: /dev/sda model: WDC_WD3200BEVT size: 320.1GB
           ID-2: USB /dev/sdb model: USB_Portable_HDD size: 1000.2GB
Partition: ID-1: / size: 288G used: 45G (17%) fs: ext4 dev: /dev/sda1
           ID-2: swap-1 size: 6.31GB used: 0.00GB (0%) fs: swap dev: /dev/sda5
RAID:      No RAID devices: /proc/mdstat, md_mod kernel module present
Sensors:   System Temperatures: cpu: 49.0C mobo: N/A gpu: N/A
           Fan Speeds (in rpm): cpu: 0
Info:      Processes: 255 Uptime: 16:49 Memory: 3184.3/5842.7MB
           Init: systemd runlevel: 5 Gcc sys: 5.4.0
           Client: Shell (bash 4.3.461) inxi: 2.2.35


2)

Linux 4.4.0-59-lowlatency #80-Ubuntu SMP PREEMPT Fri Jan 6 21:04:05 UTC 2017 x86_64


3) Instalei e continua a mesma coisa.
4) Sim, está marcada essa opção.

Desculpe a demora, só agora pude responder.

druidaobelix

#3
Essa sua máquina é boa, não parece estar aí a questão.
A menos que esteja ao mesmo tempo executando uma enormidade de coisas e dispersando a preempção do processador.
Como possivelmente saiba, um kernel lowlatency é essencialmente premptivo e, exatamente por isso, consegue reduzir a latência.


1) Qual a interface de áudio que tem aí?
(marca e modelo exatos, se possível; um link do fabricante ajuda mais ainda)

2) Conector do tipo usb?

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

Matheus Lima

1)
Não está ali na minha resposta: "Audio:     Card-1 Intel 7 Series/C210 Series Family High Definition Audio Controller"

2)
O conector USB deve ser porque eu estava com a guitarra conectada no PC. Eu uso o Rocksmith Cabe.

druidaobelix

Uma vez instalado o kernel lowlatency, se os parâmetros atuais das configurações do QjackCtrl não estão funcionando adequadamente e gerando xruns, resta tentar encontrar uma combinação melhor em sample rate, frames/periods e periods/buffer, agora qual é ela só mesmo na experimentação concreta, vez que é hardware dependente, portanto, uma característica própria do equipamento que concretamente há ai. Note que o número de frames é sempre uma potência de 2 (16, 32 64, 128, 256, etc) para o ajuste.

Há uma lista nesse link adiante que eventualmente pode ajudar:

List of JACK Frame [or Buffer] & Period settings ideal for USB interface

http://wiki.linuxaudio.org/wiki/list_of_jack_frame_period_settings_ideal_for_usb_interface

Os valores indicados como mais comuns são esses:

(Frames [or buffer] / Sample Rate ) * Periods = Latency in ms

Citar
( 16 / 48000 ) * 3 = 1
( 32 / 48000 ) * 3 = 2
( 64 / 48000 ) * 3 = 4
( 128 / 48000 ) * 3 = 8
( 256 / 48000 ) * 3 = 16
( 512 / 48000 ) * 3 = 32
( 1024 / 48000 ) * 3 = 64
( 2048 / 48000 ) * 3 = 128
( 32 / 96000 ) * 3 = 1
( 64 / 96000 ) * 3 = 2
( 128 / 96000 ) * 3 = 4
( 256 / 96000 ) * 3 = 8
( 512 / 96000 ) * 3 = 16
( 1024 / 96000 ) * 3 = 32
( 2048 / 96000 ) * 3 = 64
( 64 / 192000 ) * 3 = 1
( 128 / 192000 ) * 3 = 2
( 256 / 192000 ) * 3 = 4
( 512 / 192000 ) * 3 = 8
( 1024 / 192000 ) * 3 = 16
( 2048 / 192000 ) * 3 = 32

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

Matheus Lima

Valeu pela ajuda. Vou testar algumas combinações e ver se tenho sucesso. Caso eu consiga posto aqui minhas configurações do QJack.

Matheus Lima

Bom.. Fazendo alguns testes não consegui chegar em uma configuração que funcionasse.

Mas acho que encontrei a fonte do problema. Fiz uma gambiarra aqui e conectei a guitarra no PC usando a entrada pra microfone. Funciona sem nunhum problema (claro, com muito ruido devido a minha gambiarra). Ou seja, deve ser uma questão de compatibilidade com o cabo do RockSmith. Ainda não pesquisei nada a respeito, mas qualquer dica é bem vinda.