Como incrementar rapidamente a sua biblioteca de codecs de vídeo para FFmpeg

O FFmpeg é um framework multimídia líder, dentro do universo GNU/Linux, para lídar com imagens, vídeo e áudio.

Sua função é permitir a codificação, decodificação, transcodificação, realizar tarefas complexas de mux, demux, fluxo (streaming), aplicar filtros etc.

Em outras palavras, o FFmpeg é um software concebido para manipular arquivos multimídia, de qualquer tipo, que tenham sido criados.

De acordo com o manual do utilitário, ele oferece suporte aos formatos — desde os mais obscuros e antigos — até os mais novos e avançados.

Muitas pessoas usam o FFmpeg sem saber, através de softwares GUI — que invocam as funcionalidades do FFmpeg, por baixo, sem que o usuário perceba — tal como o Kdenlive e outros programas conhecidos para edição de vídeo e áudio.

Se você preferir, contudo, pode invocar o FFmpeg da linha de comando de um terminal e realizar as tarefas por si mesmo, sem a necessidade de instalar qualquer outro programa — até por que, usualmente, o FFmpeg já vem instalado no Linux.

Neste site, tenho vários artigos que ensinam truques para usar o FFmpeg na edição de arquivos de áudio e vídeo, direto na linha de comando.

Editar vídeo e áudio na linha de comando pode ser um pouco “sem graça” para muitas pessoas, mas há algumas vantagens e bônus para esta abordagem.

A edição na linha de comando pode ser mais ágil e sempre usa menos recursos do seu sistema na execução das tarefas.

Um exemplo de atividade que só é possível realizar na linha de comando, seria a aplicação de vários filtros simultaneamente a um vídeo, para gerar vários arquivos resultantes da ação.

Desta forma, posso obter vários vídeos, prontos ao mesmo tempo, para analisar (e escolher qual fica e quais eu jogo fora). Na GUI, eu seria obrigado a aplicar um filtro de cada vez.

O pacote Extra58 do FFmpeg

A libavcodec-extra58 é um metapacote de bibliotecas feitas para o FFmpeg. Existe a versão “não extraordinária” — chamada libavcodec58, que conflita com esta aqui. Portanto, instale apenas uma.

O metapacote, traz uma série adicional de bibliotecas de codecs de codificação/decodificação de áudio e vídeo. Contém os seguintes codecs:

  • OpenCORE Adaptive Multi-Rate (AMR) Narrow-Band (codificador/decodificador)
  • OpenCORE Adaptive Multi-Rate (AMR) Wide-Band (decodificador)
  • Android VisualOn Adaptive Multi-Rate (AMR) Wide-Band (codificador)

O segundo metapacote (metapackage) é o libavcodec-extra que, na verdade, depende do primeiro. Ou seja, basta instalar este. No Debian, o comando fica assim:

sudo apt install libavcodec-extra
Instalação do libavcodec-extra, biblioteca de codecs para FFmpeg.

A biblioteca nova já estará configurada e pronta para usar, logo após a instalação.

As permissões ideais para o diretório /var/www no seu servidor web

Este assunto pode ser um pouco complexo, mas ele é voltado apenas para quem encontrou algum problema para trabalhar com arquivos no servidor a partir do WordPress ou outro programa de CMS semelhante.
Como sempre, sugiro dar uma olhada nos links, espalhados pelo texto ou nas referências (ao final), caso queira obter mais ajuda sobre o tema.

As permissões precisam ser dadas na medida do necessário. Nada além disso.

Para contextualizar, o post é baseado em um servidor LAMP, com um blog WordPress instalado em uma máquina Debian 9 Stretch. Obtive os mesmos resultados ao testar no Ubuntu 12.04 LTS.
Este tipo de ajuste pode ser necessário após a instalação do WordPress, do Piwigo e outros aplicativos web, que precisam fazer alterações dentro dos subdiretórios em que foram instalados:

  • atualizar automaticamente seus arquivos para novas versões,
  • atualizar ou instalar novos plugins,
  • permitir que você realize o upload de arquivos (imagens, por exemplo) de dentro do próprio aplicativo etc.

Pode haver dificuldades para fazer upload via FTP, a partir do aplicativo, se as permissões do diretório em que ele se encontra instalado (ou o /var/www) no servidor não forem adequadas.

WordPress FTP configuration

Ao tentar instalar um plugin ou fazer a atualização de qualquer elemento do WordPress, ele irá pedir informações da conexão (connection information) FTP, caso as permissões não estejam corretamente ajustadas no servidor.

A que grupos e usuários os arquivos do WordPress devem pertencer?

Em um servidor particular ou doméstico, que apenas você irá usar, é comum transferir todos os arquivos do /var/www para o seu nome de usuário.

Se este não for o caso, a sugestão é transferir todos os arquivos para a posse do www-data (user e group). Em seguida, inscreva o seu usuário no grupo www-data.

Veja como:


adduser nomedousuario www-data
cd /var/www
chown -Rv www-data:www-data /var/www/
chmod -Rv g+rw /var/www/

Os comandos, acima, foram executados como root.

O que foi feito:

  • O comando adduser foi usado para inscrever o usuário ‘nomedousuario’ no grupo www-data.
  • Entrou no diretório /var/www.
  • O comando chown (change owner) atribuiu, recursivamente, os arquivos contidos em /var/www para o usuário e grupo www-data.
  • O comando chmod (change mode) atribuiu permissões de leitura (r) e escrita (w) aos arquivos, para os grupos a que pertencem.

Com isto já será possível fazer alterações no diretório através do WordPress ou outros aplicativos instalados.

Permissões padrão para o WordPress

Se antes, havíamos estabelecido as permissões genéricas, agora, vamos nos concentrar nas que estão relacionadas ao WordPress.

Como já foi abordado, o WordPress não grava apenas informações (de texto) no banco de dados.

O aplicativo também precisa ter permissões de escrita nos subdiretórios em que foi instalado, para poder armazenar diversos tipos de conteúdo, como as imagens.

O único ponto que torna o assunto “permissões de acesso” complexo é a segurança.
Queremos que o aplicativo execute suas funções adequadamente — mas não queremos que pessoas de fora tenham acesso irrestrito aos nossos arquivos.

Como é que se encontra um equilíbrio seguro e funcional para esta questão?

O importante, aqui, é que o www-data tenha permissões rw, ou seja, de leitura (read) e escrita (write) sobre todos os seus arquivos.

Se você tem interesse em saber mais sobre o tema, leia sobre permissões de arquivos no Linux.

Referências

5 razões para usar o GNOME

O GNOME é um ambiente desktop completo para sistemas operacionais das famílias GNU/Linux e UNIX.
Surgiu pouco tempo depois do lançamento do KDE, com a proposta de ser um projeto de código aberto e 100% livre (que ainda não era o caso do KDE).

Atualmente, as comunidades de desenvolvedores do KDE e GNOME trabalham juntas em alguns projetos e trocam informações — e ninguém desconfiaria que em algum momento da história as duas tiveram uma forte rivalidade.

Pessoalmente, gosto muito dos dois ambientes e não saberia escolher um em detrimento do outro.

Já transitei muito entre o KDE, o GNOME, o XFCE e o LXDE. Atualmente, estou muito satisfeito com o GNOME, de acordo com o que vou relatar abaixo.

É possível instalar o KDE e o GNOME na sua estação de trabalho — o que permite alternar entre um e outro, além de rodar os aplicativos nativos de cada um em qualquer um dos ambientes.

As boas práticas de uso do sistema operacional, contudo, recomendam optar pela instalação de apenas um dos dois.

Pra ficar claro, o propósito deste post não é fazer você desistir de usar o KDE, o XFCE ou qualquer outro desktop environment para começar a usar o GNOME.

Na verdade, já fiz um post semelhante a este, ressaltando as qualidades do KDE.

Visual minimalista

Classificar o GNOME como minimalista, pode soar ambicioso (uma “forçação de barra”). Há outros que cumprem melhor esta função.

Contudo, o GNOME tem um design mais sóbrio do que o KDE e tem menos opções de customização visual (ou “perfumaria”) do que muitos desktops gráficos.

Ele é projetado para o foco imediato, ou seja, começar a trabalhar logo após a instalação — e é exatamente isso que ocorre.

No KDE, a tentação para personalizar e brincar com as inúmeras opções de efeitos e exibições é enorme e constante.

Opções de customização na Internet

Com uma rápida configuração no Firefox ou qualquer outro navegador, é possível ajustar o GNOME a partir da página do projeto na Internet.

A possibilidade de baixar, instalar, ativar ou desativar as extensões do GNOME a partir do navegador é muito útil e permite que se tenha um conjunto de software um pouco mais enxuto.

Otimização do espaço da tela

O projeto do GNOME já deu tchau ao excesso de itens na tela, como barra de tarefas/programas e menu nos cantos.
Tal como no Unity, a gente dispara o Dash (com a tecla Super) e digita o nome do aplicativo que deseja.

A versão customizada padrão do GNOME, no Ubuntu 18.04 LTS, usa como legado do Unity, uma doca do lado esquerdo, com os ícones de execução dos aplicativos mais frequentes.

A doca não está presente na versão padrão do GNOME do Debian (e outras distribuições). Contudo, o usuário pode configurar uma, se quiser.

A consistência de cores

Esta característica é muito pessoal e, além disso, é fácil modificar para quem não gosta.

O tema padrão do GNOME, para Debian, é (na minha humilde opinião) neutro e (talvez) um pouco sem graça. Mas, como eu disse, aqui, tudo é ajustável.

Na versão customizada do Ubuntu, o tema segue as cores tradicionais da Canonical.

O GNOME tem áreas de trabalho dinâmicas

Em outras palavras, quando você envia um aplicativo para uma nova área de trabalho, o GNOME cria a nova área virtual sob demanda, para abrigar o aplicativo que você deseja enviar para lá.

A área de trabalho expira automaticamente, quando o último aplicativo, dentro dela, é encerrado.

Isto tem um impacto muito positivo na economia de recursos de memória e processamento da sua máquina.

Como expliquei neste texto, não uso este recurso, mas o vejo como positivo.

A maturidade do projeto

O GNOME, como projeto, teve início em Agosto de 1997 e, portanto, tem aproximadamente 22 anos de estrada.
Muita inovação foi feita, mas atualmente, percebe-se que há mais investimento na estabilidade do software.

Atualmente, uso a versão de testes do GNOME, no Debian testing e, simplesmente, não dá problema. Tudo roda super bem e rápido.

O que eu melhoraria na interface do GNOME

Na interface gráfica, eu gostaria muito de ver a integração das janelas à barra superior padrão do ambiente. Ou seja, quando uma janela estivesse maximizada, suas barras e bordas desaparecem, permitindo a integração completa à interface — como no Unity e no MacOS.

O nome deste recurso é GNOME Global Menu e existe um projeto em andamento neste sentido. Infelizmente, até o momento, ainda não viu a luz da maturidade — e talvez nem da puberdade.

Fora isso, acredito que seja um projeto de interface gráfica vencedor, de inúmeras outras qualidades e pouquíssimos defeitos.

Se quiser, por favor, comente sobre o que você gosta (ou não) no GNOME e que recursos o projeto poderia incorporar futuramente.

Os 4 primeiros ajustes avançados a fazer no GNOME depois da instalação

O Debian e o Ubuntu são duas das distribuições GNU/Linux mais usadas, que usam o GNOME como ambiente desktop completo.
Se instalou recentemente o seu sistema com o GNOME, acompanhe a minha rápida lista de ajustes.

Para este post, vou fazer uso do GNOME Tweak Tools ou apenas “ajustes”, que já vem instalado por padrão. Embora, atualmente, eu use o Ubuntu 18.04 no notebook, no desktop estou com o Debian 10 instalado — e é baseado nesta configuração que este texto foi concebido.
gnome dash ajustes

Os botões das janelas

Como mencionei, uso Ubuntu no outro computador de trabalho e, como sabemos, lá o padrão do botão “fechar” é à esquerda da janela.

Eu concordo que este é um arranjo que tira melhor proveito do espaço e da tela.

Para facilitar a minha vida, prefiro que tanto no Debian quanto no Ubuntu, ambos fiquem no mesmo lugar. Por isso, no Debian gosto de configurar estes botões para o mesmo lado que ficam no Ubuntu.

No painel de Ajustes, selecione o item “Barra de título da janela”, à esquerda e selecione o posicionamento que achar mais conveniente para você.

Nesta mesma seção é possível acrescentar os botões Maximizar e Minimizar, se achar que são importantes.

Também dá para configurar as Ações do clique do mouse sobre a barra de título das janelas. Usualmente, deixo tudo do jeito que está e só altero o “Posicionamento” (o último item).
gnome ajustes barra de títulos

As informações da barra superior

Nesta seção costumo incrementar um pouco mais a minha interface.

Para o meu fluxo de trabalho, acho importante ter um “Menu de aplicativos” e a “Data” completa, ao lado do relógio.

No notebook, eu certamente ativaria também a exibição da “Porcentagem da bateria”.
gnome ajustes barra superior da interface gráfica

Limitando e fixando os espaços de trabalho

O padrão do GNOME, no Debian é a criação de “Espaços de trabalho dinâmicos” — ou seja, eles vão sendo criados sob demanda, à medida em que você vai necessitando deles.

Os espaços de trabalho, ou áreas de trabalho virtuais, podem ser um verdadeiro “dreno” para a sua memória. Por isso gosto de limitar ao tanto que realmente uso: 2.

Eu ligo também a última opção (veja imagem abaixo) “Espaços de trabalho se estendem por telas” — que quer dizer que o recurso não se restringirá apenas a um dos monitores (caso você use mais de um).
GNOME ajustes de espaços de trabalho

Inclusão de um menu de gestão de dispositivos removíveis

Na seção “Extensões”, eu só ativo o “Removable drive menu“, que permite montar e desmontar rapidamente pendrives, cartões de memória, HDs e SSD externos etc.

O “Places status indicator” não é uma prioridade, mas é um item que eu gosto — por que permite mais agilidade para chegar a qualquer drive ou pasta dentro do sistema — através de um menu posicionado no topo da tela, à esquerda.
painel de controle de ajustes de extensões do GNOME

Conclusão

Se você já é mais experiente, provavelmente tem suas próprias dicas de configuração — Por favor, conte mais, na sessão de comentários! 😉

No meu caso, esta é uma lista de “ajustes de urgência”, apenas para poder começar a trabalhar no computador.

No decorrer dos dias, à medida em que o vou usando e com o tempo, costumo fazer outros ajustes.

Como instalar o jogo M.A.R.S. via Flatpak no Debian

O M.A.R.S. é um jogo de tiro feito para 2 jogadores, baseado na plataforma OpenGL.
Conta com naves espaciais, navegando em um espaço bidimensional e governado pelas leis da gravidade.

Você precisa ter configurado o suporte a Flatpak no seu sistema, antes de prosseguir. Veja aqui, como fazer isso.

A história do jogo

No ano 3547, as civilizações de toda a nossa Galáxia estão organizadas, cada qual em seu planeta.

Uma grande guerra se aproxima e toma vulto. Você é um dos famosos guerreiros, chamados para defender seu planeta dos “vizinhos invejosos”.

Ao lado da “grande guerra”, paira uma ameaça ao seu sistema planetário. Uma nave gigante, de invasores desconhecidos, carregando uma arma monolítica de destruição em massa, se aproxima e representa um perigo bem maior.

Recursos presentes no jogo

  1. gráficos 2D, com design único ao jogo
  2. suporte a modo multiplayer ou single
  3. naves espaciais personalizáveis e quantidade de armas, além de itens especiais
  4. suporte a vários idiomas e inteligência artificial, que provẽ reações diferentes, nas mesmas situações

mars shooter game

O jogo pode ser encontrado no Flathub (link abaixo):

https://flathub.org/apps/details/net.sourceforge.mars-game

Divirta-se!