Recentemente me deparei com o ffmpegfs e o achei bastante útil, então pensei em fazer um post sobre ele, especialmente porque não há outros artigos sobre ele.
ffmpegfs é um sistema de arquivos de transcodificação somente leitura baseado em FUSE gratuito e de código aberto que converte formatos de áudio e vídeo instantaneamente quando aberto e lido. Suporta muitos formatos, incluindo MP4, WebM, OGG, MP3, OPUS, MOV, ProRes (um contêiner MOV para vídeo Apple Prores e áudio PCM) e WAV, entre outros.
Isso é útil no caso de você ter muitos arquivos em sua coleção de mídia que não podem ser reproduzidos diretamente por algum hardware ou software (por exemplo, DaVinci Resolve, que tem suporte limitado a codecs na versão Linux gratuita). Em vez de transcodificar toda a coleção de mídia você pode usar ffmpegfs para transcodificar os arquivos em tempo real, quando eles são acessados / reproduzidos. Você também pode usar isso para transcodificar facilmente os arquivos: basta colocar alguns arquivos na pasta que você usou como um diretório de entrada para ffmpegfs, em seguida, copie os arquivos da pasta de saída ffmpegfs e os arquivos resultantes serão transcodificados para o formato que você especificou para ffmpegfs.
ffmpegfs é escrito em C e C ++ e faz uso das bibliotecas FUSE. Ele também precisa do FFmpeg para funcionar. Libav também era compatível, mas está desabilitado porque parece que não funciona corretamente. O suporte Libav deve ser retirado em breve.
É assim que esta ferramenta funciona. O comando ffmpegfs monta o diretório IN_DIR
(que contém sua coleção de mídia) em OUT_DIR
. Acessar OUT_DIR
mostra o conteúdo de IN_DIR
, com todos os arquivos de mídia suportados renomeados e transcodificados de forma transparente para um dos formatos de destino suportados no acesso.
Recursos do ffmpegfs:
--desttype=mov+aiff
)O suporte do Microsoft Windows está planejado para versões futuras.
Outros artigos relacionados ao FFmpeg do Linux Uprising que você pode gostar:
Vamos dar uma olhada em alguns exemplos de ffmpegfs.
Use ffmpegfs para transcodificar todos os vídeos da pasta ~/Videos
para ~/ffmpegfs
para WebM (allow_other
: apenas o acesso de rootfbd0278876 para todos os usuários, incluindo o acesso rootfabd027887621788, incluindo o acesso de rootfabd027887621788, incluindo o acesso de rootfabd2278876 **, incluindo o acesso de rootfabd02788762, incluindo os arquivos de acesso à rootfabd: 1702788, incluindo o acesso à raiz do mdf44;
ffmpegfs --desttype=webm ~/Videos/Movies ~/ffmpegfs -o allow_other,ro
Por padrão, --desttype
é definido como mp4
.
Observe que a opção allow_other
FUSE por padrão só pode ser usada pelo root. Você deve executar ffmpegfs como root ou melhor adicionar user_allow_other
a /etc/fuse.conf
.
Use ffmpegfs para transcodificar todos os arquivos de música de ~/Music
usando ~/ffmpegfs
como o diretório de saída, para MP3 com uma taxa de bits de áudio de 256K: **
ffmpegfs --audiobitrate=256K --desttype=mp3 ~/Music ~/ffmpegfs2 -o allow_other,ro
Transcodifique todos os arquivos de vídeo de ~/media
para MOV e todos os arquivos de áudio da mesma pasta para AIFF, para ~/transcoded
como a pasta de saída, com o nível de registro definido como DEBUG (as mensagens de log padrão são enviadas para o modo de depuração padrão ), e com o caso residindo em /tmp/cache
:
ffmpegfs --desttype=mov+aiff --log_maxlevel=DEBUG --cachepath=/tmp/cache ~/media ~/transcoded
Você também pode montar o sistema de arquivos via /etc/fstab
. Para obter mais informações sobre como usar o ffmpegfs, consulte sua ajuda (ffmpegfs --help
) e a página do manual (man ffmpegfs
). Você também pode visitar sua documentação online, embora observe que alguns bits estão desatualizados.
ffmpegfs não está disponível nos repositórios oficiais para a maioria das distribuições Linux. O Debian recentemente adicionou ffmpegfs aos repositórios Bullseye e Sid e, como resultado, este pacote agora também está disponível nos repositórios Ubuntu 20.04 e em distribuições Linux baseadas nele, como Pop!_OS 20.04. Instale-o nestas distribuições Linux a partir dos repositórios:
sudo apt install ffmpegfs
Para Arch Linux e Manjaro, você pode obter ffmpegfs no Arch User Repository (AUR), onde está disponível como a versão estável mais recente ou o código mais recente do Git.
Em outras distribuições Linux, você precisará instalá-lo a partir do código-fonte. Consulte as instruções oficiais de instalação para obter detalhes.
Esse post foi traduzido do site LinuxUprising.com pela rtland.team.
Confira a versão original desse post em inglês:
ffmpegfs Is A FUSE-Based Filesystem For Transcoding Video And Audio On The Fly When Opened