O que Criador de Carrosséis TikTok (Pexels + FFmpeg + PostBridge) faz?
Implementação personalizada para BerkahKarya – Cria carrosséis TikTok com sobreposição profissional de texto.
Arquitetura
Fluxo:
Pesquisa de Tópico → Busca de Imagens Pexels → Sobreposição de Texto FFmpeg → Upload PostBridge → Carrossel TikTok
Stack:
- Busca de Imagens: API Pexels (fotos/vídeos stock de alta qualidade)
- Sobreposição de Texto: FFmpeg (renderização profissional de texto)
- Upload: API PostBridge (postagem multiplataforma)
- Formato: Carrossel TikTok 1080×1920px (9:16 vertical)
Pré-requisitos
1. Chave da API Pexels
Obtenha uma chave de API GRATUITA em: https://www.pexels.com/api/
Defina a variável de ambiente:
export PEXELS_API_KEY="sua_chave_pexels_aqui"
Importante: Você precisa desta chave para pesquisar imagens. Sem ela, o script falhará.
2. Chave da API PostBridge
Já configurada no Cliente PostBridge:
export POST_BRIDGE_API_KEY="pb_live_Kyc2gafDF7Qc8c2ALELtEC"
export POST_BRIDGE_BASE_URL="https://api.post-bridge.com/v1"
3. Python PIL (Pillow)
Verifique se está instalado:
python3 -c "from PIL import Image; print('PIL disponível')"
Instalação:
pip3 install Pillow
4. FFmpeg (para redimensionamento opcional)
Verifique se está instalado:
ffmpeg -version
Instalação (opcional – o PIL cuida da maioria das tarefas):
# Debian/Ubuntu
sudo apt update && sudo apt install ffmpeg
# macOS
brew install ffmpeg
4. Chave da API ImgBB (OPCIONAL – para auto-hospedagem)
Obtenha uma chave de API GRATUITA em: https://api.imgbb.com/
Defina a variável de ambiente (opcional – para upload automático para ImgBB):
export IMGBB_API_KEY="sua_chave_imgbb_aqui"
Por que ImgBB?
- Plano gratuito: 32 MB por upload de imagem
- Sem limites rigorosos de taxa no plano gratuito
- API REST simples
- Hospedagem permanente de imagens
- URLs públicas para plataformas de redes sociais
5. Estrutura de Diretórios
A skill criará:
~/.tiktok-slideshow/
├── images/ # Baixadas do Pexels
├── rendered/ # Slides renderizados pelo FFmpeg
├── scripts/ # Scripts auxiliares
└── projects/ # Metadados dos projetos
Melhores Práticas para Carrosséis TikTok (2026)
Métricas do Algoritmo (das pesquisas mais recentes):
- Taxa de deslize: Percentual de usuários que deslizam todos os slides
- Tempo de permanência: Tempo gasto visualizando cada slide
- Deslizes reversos: Usuários voltando para rever
Formato Ideal:
Resolução: 1080 × 1920px (9:16 vertical)
Slides: 5 a 10 imagens (melhor engajamento)
Tamanho da imagem: < 100 KB por slide (carregamento rápido)
Proporção: 9:16 (nativa do TikTok)
Dicas de Engajamento:
- Gancho no primeiro slide: Texto em negrito, que chame atenção
- Progressão narrativa: Cada slide constrói sobre o anterior
- CTA no último slide: Seguir, salvar, compartilhar ou link
- Estilo visual consistente: Mesma fonte, paleta de cores
- Imagens de alta qualidade: Use imagens Pexels em alta resolução
Melhores Práticas para Sobreposição de Texto:
- Tamanho da fonte: 32–48px para títulos, 24–32px para subtítulos
- Posição: Centralizado com margens
- Cor: Texto branco com contorno preto (alto contraste)
- Fundo: Caixa escura semitransparente para legibilidade
- Comprimento: Máximo de 2 a 3 linhas por slide
Uso
Criar Slideshow
python3 tiktok_slideshow.py create "rotina matinal" "Sua rotina está quebrada" 5
Parâmetros:
topic: Tema de pesquisa para imagens Pexelshook: Texto de gancho para o primeiro slide (chamar atenção)num_slides: Número de slides (5 a 10 recomendados)
Exemplo:
python3 tiktok_slideshow.py create "dicas de produtividade" "Você está fazendo produtividade errado" 7
Listar Projetos
python3 tiktok_slideshow.py list
Mostra todos os projetos existentes com metadados.
Hospedar Apenas Imagens (ImgBB)
Faça upload de todas as imagens do carrossel para hospedagem ImgBB:
# Requer IMGBB_API_KEY
export IMGBB_API_KEY="sua_chave_imgbb"
python3 tiktok_slideshow.py host <id_do_projeto>
Gera URLs públicas para todos os slides:
🖼️ Enviando 5 slides para hospedagem ImgBB...
✅ Enviado para ImgBB: slide_1.jpg
✅ Enviado para ImgBB: slide_2.jpg
✅ Enviado para ImgBB: slide_3.jpg
✅ Enviado para ImgBB: slide_4.jpg
✅ Enviado para ImgBB: slide_5.jpg
✅ 5 slides enviados para ImgBB!
URLs das mídias:
1. https://i.ibb.co/xxx/slide-1.jpg
2. https://i.ibb.co/yyy/slide-2.jpg
3. https://i.ibb.co/zzz/slide-3.jpg
4. https://i.ibb.co/aaa/slide-4.jpg
5. https://i.ibb.co/bbb/slide-5.jpg
📝 URLs salvas em: /home/openclaw/.tiktok-slideshow/projects/project_id_urls.txt
Fazer Upload para o TikTok
Opção 1: Auto-hospedagem + upload (recomendado)
python3 tiktok_slideshow.py upload <id_do_projeto>
Automaticamente envia imagens para ImgBB e depois posta no TikTok via PostBridge.
Opção 2: Hospedagem manual + upload
# Passo 1: Hospedar imagens manualmente (use ImgBB, S3, Cloudinary, etc.)
python3 tiktok_slideshow.py host <id_do_projeto>
# Passo 2: Fazer upload para o TikTok (pular hospedagem)
python3 tiktok_slideshow.py upload <id_do_projeto> --no-host
Nota: Hospedagem ImgBB é GRATUITA e recomendada para uploads em redes sociais.
Exemplo Completo
# 1. Defina sua chave de API Pexels
export PEXELS_API_KEY="563492ad6f91700001000001234567890"
# 2. Crie um slideshow
python3 tiktok_slideshow.py create "motivação fitness" "Pare de cometer este erro" 5
# Saída:
# ==================================================
# 📱 Criando Slideshow TikTok
# ==================================================
# 🎯 Tópico: motivação fitness
# 🪝 Gancho: Pare de cometer este erro
# 📊 Slides: 5
# ==================================================
#
# 🔍 Pesquisando imagens no Pexels...
# 📸 5 imagens encontradas para: motivação fitness
# ✅ Baixado: temp_0.jpg
# ✅ Renderizado: slide_1.jpg
# ✅ Baixado: temp_1.jpg
# ✅ Renderizado: slide_2.jpg
# ...
#
# ==================================================
# ✅ Slideshow Criado com Sucesso!
# ==================================================
# 📦 ID do Projeto: fitness_motivation_20260306_044512
# 📁 Slides: 5
# 📂 Localização: /home/openclaw/.tiktok-slideshow/rendered/
# 💾 Metadados: /home/openclaw/.tiktok-slideshow/projects/fitness_motivation_20260306_044512.json
# ==================================================
# 3. Revise os slides
ls /home/openclaw/.tiktok-slideshow/rendered/
# 4. Faça upload para o TikTok (requer configuração de hospedagem de imagem)
python3 tiktok_slideshow.py upload fitness_motivation_20260306_044512
Como Funciona
Passo 1: Pesquisar Imagens com a API Pexels
POST https://api.pexels.com/v1/search
Authorization: {PEXELS_API_KEY}
Parâmetros da Consulta:
- query: "motivação fitness"
- orientation: "vertical" # Para TikTok 9:16
- size: "large"
- per_page: 5
Resposta:
{
"photos": [
{
"id": 123456,
"src": {
"large": "https://images.pexels.com/photos/123456/large.jpg"
},
"photographer": "Joe Smith"
}
]
}
Passo 2: Baixar e Redimensionar com FFmpeg
Redimensione para o formato TikTok e adicione sobreposição profissional de texto:
ffmpeg -i input.jpg \
-vf "scale=1080:1920,drawtext=text='Seu Texto Aqui':fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf:fontsize=48:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:borderw=4:bordercolor=black:box=1:[email protected]:boxborderw=10" \
-q:v 2 \
output.jpg
Parâmetros FFmpeg explicados:
scale=1080:1920: Redimensiona para o formato TikTokfontsize=48: Tamanho da fonte do títulofontcolor=white: Cor do textoborderw=4:bordercolor=black: Contorno do textobox=1:[email protected]: Fundo semitransparenteboxborderw=10: Preenchimento da caixa-q:v 2: Qualidade JPEG (2 a 5 recomendado)
Passo 3: Upload via PostBridge
from skills_1ai_skills.marketing.post_bridge_client import PostBridgeClient
client = PostBridgeClient(api_key=POST_BRIDGE_API_KEY)
tiktok_accounts = client.get_accounts_by_platform("tiktok")
client.create_post(
caption="Aqui está meu carrossel...",
account_ids=[tiktok_accounts[0]['id']],
media_urls=[...suas URLs de imagens hospedadas...]
)
Publicando no ClawHub
Após publicar esta skill:
GITHUB_TOKEN="clh_Nf4OK9akiUsJe4mKeVaCJiupZILjii6g35bxs9LX5-w"
clawhub publish \
~/.openclaw/workspace/skills/tiktok-carousel-creator \
--slug tiktok-carousel-creator \
--name "Criador de Carrosséis TikTok (Pexels + FFmpeg + PostBridge)" \
--version 1.0.0 \
--changelog "Lançamento inicial. Criador de carrosséis TikTok personalizado usando API Pexels + FFmpeg + PostBridge. Projetado para o fluxo de trabalho BerkahKarya." \
--tags latest,tiktok,carousel,slideshow,pexels,ffmpeg,postbridge
Saiba mais: https://www.tip.md/oyi77
Recursos
- API Pexels: https://www.pexels.com/api/
- Documentação FFmpeg: https://ffmpeg.org/documentation.html
- Documentação PostBridge: Consulte a documentação local da skill
- Melhores Práticas para Carrosséis TikTok: Pesquise regularmente mudanças no algoritmo (metadados atualizam com frequência)
- Ajuda para Publicação: https://docs.openclaw.ai/tools/clawhub
Solução de Problemas
Chave da API Pexels Não Definida
Erro: PEXELS_API_KEY não definida
Solução:
export PEXELS_API_KEY="sua_chave_aqui"
Obtenha uma chave gratuita em: https://www.pexels.com/api/
FFmpeg Não Encontrado
Erro: ffmpeg não encontrado
Solução:
sudo apt update && sudo apt install ffmpeg
Nenhuma Imagem Encontrada
Erro: Nenhuma imagem encontrada para o tópico: xyz
Solução:
- Tente termos de pesquisa diferentes
- Verifique se a chave da API Pexels é válida
- Use termos mais genéricos
Implementação Personalizada BerkahKarya – 2026 Saiba mais: https://www.tip.md/oyi77