CLI do FFHub

Como instalar e usar o CLI ffhub para rodar tarefas FFmpeg no terminal.

O CLI do FFHub roda tarefas FFmpeg direto do terminal. Arquivos locais são enviados automaticamente para a nuvem.

Pré-requisitos

Você precisa do Node.js 18 ou superior instalado. Confira com:

node --version

Se não tiver Node, pegue em nodejs.org (versão LTS está ótima).

Instalação

Instale globalmente para poder digitar ffhub de qualquer lugar no terminal:

npm install -g ffhub

A flag -g significa "global" — instala o comando no PATH do sistema em vez de uma pasta node_modules local. Verifique:

ffhub help

Você deve ver a lista de comandos. Se aparecer command not found: ffhub, veja Solução de problemas abaixo.

Atualizar

npm install -g ffhub@latest

Sem instalar (npx)

Se preferir não instalar globalmente, todo comando neste doc funciona com npx ffhub no lugar de ffhub — o npm baixa a última versão sob demanda:

npx ffhub "ffmpeg -i input.mp4 -c:v libx264 output.mp4"

Um pouco mais lento na primeira execução (baixa o pacote), mas sem instalação global.

Configuração

Defina a API key pelo CLI:

ffhub config YOUR_API_KEY

Ou use uma variável de ambiente:

export FFHUB_API_KEY=YOUR_API_KEY

Exemplos de uso

Transcodificar um vídeo

ffhub "ffmpeg -i input.mov -c:v libx264 -preset fast output.mp4"

Comprimir um vídeo

ffhub "ffmpeg -i input.mp4 -c:v libx264 -crf 28 output.mp4"

Extrair áudio

ffhub "ffmpeg -i video.mp4 -vn -c:a libmp3lame audio.mp3"

Quando o input é um caminho local, o CLI envia o arquivo antes de rodar o comando. Ao concluir, o output é baixado no diretório atual.

Comandos

ComandoDescrição
ffhub [args]Criar e executar uma tarefa FFmpeg
ffhub whoamiMostrar usuário atual
ffhub listListar tarefas recentes
ffhub status <task_id>Consultar status da tarefa
ffhub config <api_key>Salvar API key na config
ffhub helpMostrar ajuda

Solução de problemas

command not found: ffhub

Depois de npm install -g, o binário ffhub fica na pasta global do npm, mas essa pasta precisa estar no $PATH pra você poder chamar direto. Confira:

npm prefix -g       # ex: /usr/local
echo $PATH | tr ':' '\n' | grep -i bin

O primeiro comando mostra onde o npm instala pacotes globais. Veja se <aquele caminho>/bin aparece na saída do segundo. Se não, adicione esta linha ao config do shell (~/.zshrc, ~/.bashrc etc.):

export PATH="$(npm prefix -g)/bin:$PATH"

Reabra o terminal, daí ffhub help deve funcionar.

Erros de permissão em npm install -g

Se você vê erros EACCES, a pasta global do npm precisa de sudo. Use sudo npm install -g ffhub, ou (melhor) configure o npm pra usar uma pasta gravável pelo usuário — veja a doc do npm sobre permissões.

Links

CLI do FFHub — FFHub Docs