matriz de transformação touchscreen xinput com resolução recortada

matriz de transformação touchscreen xinput com resolução recortada

Estou tendo dificuldades para entender como funciona a matriz de transformação xinput de uma tela sensível ao toque (Goodix Capacitive TouchScreen).

Estou usando um tablet com Linux instalado para controlar um PC remoto viassh-rdp. A resolução do PC remoto é 1920x1080 e a resolução nativa do tablet é 2160x1440. Ao alterar a resolução do tablet para 1920x1080, a imagem ocupa toda a largura, mas não toda a altura; ele é cortado acima e abaixo. O problema é que as coordenadas xinput da tela sensível ao toque continuam a usar a tela inteira; verticalmente, eles estão corretos no centro, mas desalinhados em direção à borda superior ou inferior.

Achei que dimensionar a altura usando a matriz, dimensionar a altura e compensar y, ou mesmo apenas compensar y, seria suficiente, mas todas as tentativas que fiz me deram resultados inconsistentes (ponteiro completamente desalinhado).

Aparentemente, estou faltando alguma coisa sobre como a matriz deve ser usada para remapear as coordenadas. O que me interessa é ignorar a área cortada e mapear as coordenadas verticais 180-1260 para 0-1080 ou, alternativamente, compensar Y em 180, para que 180 nativo se torne 0.

Eu tentei xinput_calibrator, o que teoricamente suporta, xinputmas na --output-typeverdade me deu um erro XorgPrint Calibrator does not support the supplied --output-type. Error: unable to apply or save configuration valuesNão estou interessado em uma configuração do Xorg; Quero poder alterar a matriz com um script. Existem outras ferramentas GUI que podem gerar a matriz correta para usar com o xinput?

esbelto


Editar:

insira a descrição da imagem aqui

informação relacionada