Habilitar a aceleração por hardware AMD AMF no OBS

O OBS, na maioria das distros Linux, já possui a aceleração por hardware VAAPI. Geralmente funciona bem, mas em altas resoluções pode ter um desempenho ruim. Para resolver isso, vou mostrar como usar o AMD AMF (Advanced Media Framework) no OBS.

[ Hits: 422 ]

Por: José Lucas em 10/05/2022 | Blog: https://github.com/NIDObr


Início



O OBS, na maioria das distros Linux, já possui a aceleração por hardware VAAPI. Na maioria dos casos funciona bem, mas geralmente em altas resoluções nem sempre funciona bem. Para resolver isso vou mostrar como usar o AMD AMF (Advanced Media Framework) no OBS.

Importante lembrar que no meu caso o AMF funcionou muito melhor que o VAAPI, talvez para você não seja tão efetivo.

Antes de instalar e habilitar o AMF, é preciso que o seu FFMPEG tenha suporte para ele, para verificar execute:

ffmpeg -encoders | grep amf

Se tiver suporte ótimo! Senão será necessário recompilá-lo habilitando o suporte ao AMF, um guia para compilar o ffmpeg:
O AMF está disponível pelo driver "amdgpu-pro", para instalar siga os passos:

Ubuntu:

sudo apt install amf-amdgpu-pro

SUSE/SLE:

zypper install amf-amdgpu-pro

CentOS/RHEL:

yum install amf-amdgpu-pro

Arch:

yay -S amf-amdgpu-pro

Também é necessário ter o "StreamFX" instalado, para que o OBS reconheça os novos codecs.

Arch:

yay -S obs-streamfx

Ou siga as instruções: Installation - Xaymar/obs-StreamFX Wiki - GitHub

Para manter o driver open-source(RADV) como padrão você pode adicionar uma variável em "/etc/environment", a variável ficaria assim:

VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json

Para usar o OBS com AMF, devera ser executado com o driver amdgpu-pro:

VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_pro_icd64.json obs

Também pode ser adicionado ao lançador do OBS, ficaria assim:
env VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_pro_icd64.json obs

Ou caso queira deixar o amdgpu-pro completamente separado é possível colocá-lo em uma pasta de sua escolha, ex.:

sudo mkdir /usr/local/amdgpu-pro
sudo mv /usr/share/vulkan/icd.d/amd_pro_icd64.json /usr/local/amdgpu-pro

Para usar o OBS com AMF, deverá ser executado com o driver amdgpu-pro:

VK_ICD_FILENAMES=/usr/local/amdgpu-pro/amd_pro_icd64.json obs

Também pode ser adicionado ao lançador do OBS, ficaria assim:
env VK_ICD_FILENAMES=/usr/local/amdgpu-pro/amd_pro_icd64.json obs



   

Páginas do artigo
   1. Início
Outros artigos deste autor

Usando Wine com desempenho máximo para jogos

Leitura recomendada

FFMPEG para conversão em MP4 - Uso básico

Gerando Pacote do QMPlay2 20.12.16 no Slackware Current Facilmente

SimpleScreenRecorder - Gravar Vídeos do seu Desktop

Computador e Placas Antigas Nvidia em Pleno 2019

Áudio Profissional no GNU/Linux

  
Comentários
[1] Comentário enviado por caslubas em 12/05/2022 - 20:46h

Obrigado pelo artigo!

Utilizo o opensuse, em qual repositório do opensuse você encontrou o drive? eu tentei instalar, mas não encontrei o repositório.

[2] Comentário enviado por NidoBr em 12/05/2022 - 21:55h


[1] Comentário enviado por caslubas em 12/05/2022 - 20:46h

Obrigado pelo artigo!

Utilizo o opensuse, em qual repositório do opensuse você encontrou o drive? eu tentei instalar, mas não encontrei o repositório.


Obrigado, eu segui as orientações do GitHub oficial do projeto https://github.com/GPUOpen-LibrariesAndSDKs/AMF/wiki/Driver%20Linux , mas se não funcionar tente a wiki do openSUSE: https://en.opensuse.org/SDB:AMDGPU-PRO


Contribuir com comentário