9:16 video · Health · automatic

Health in 1 minute, from the people who talk about it most

Brazil's biggest health influencers (doctors, nutritionists and psychologists), transcribed, fact-checked and summarized in a video with the source on screen and Nei commenting.

HEALTH RADAR banner: what Brazil's top health influencers said, in 1 minute
In short

saudeviral is a system that, on its own, makes short videos (9:16) about what Brazil's biggest health influencers said in their videos: the doctors, nutritionists and psychologists with the largest audiences. It watches the YouTube videos through transcription, picks out the facts, numbers and controversies, and builds a video with the source of every data point on screen and Nei commenting (avatar). Everything is reported and attributed, and anything without medical consensus gets a "NO CONSENSUS" stamp. It does not replace a medical consultation. On Saturdays and Sundays it also makes the long 16:9 video "The week explained". Everything is published automatically on the Inema Pro YouTube channel and sent to Telegram. It is finviral's sibling: same engine, different topic.

What it is

A health radar that builds itself

Every night saudeviral reads what the channels published, checks every fact against the transcript and publishes a finished video. It does not replace a medical consultation: the video reports what each person said, always with the source.

saudeviral flow: collection, transcription, script, fact-check, avatar and bot v3

🔎 Only sourced facts

Every fact or number must be in the transcript, with the literal excerpt. Channel, date and title appear on screen in every scene.

⚕️ No medical advice

Everything is attributed ("according to him"). No dose, medicine or diet as an instruction. Treatments without consensus get the "NO CONSENSUS" stamp or are left out.

🔒 All on the subscription

Script with claude -p (subscription, no API), local transcription with Whisper and the avatar through the HeyGen studio. HeyGen's plan-change offer is always declined.

How it works

From transcript to YouTube, no human in the middle

Steps chained by auto/rodar.sh. If the fact-check fails twice, the video is not made.

Collection→ Transcription→ Script→ Fact-check→ Avatar→ Video→ YouTube + bot
1

Collection and transcription

Lists the videos of the channels in canais.json (metadata only, yt-dlp), downloads the audio and transcribes it locally (inemavox, Whisper large-v3).

2

Script

claude -p reads the transcripts and writes base.md (each fact, who said it, the video and the literal excerpt), roteiro.json (lines and visuals) and legenda.txt.

3

Fact-check

auto/checar.py checks that every excerpt is in the transcript, that spoken numbers are written out, that images exist, that there is a CTA and the notice "Não substitui consulta médica" (does not replace a medical consultation). If it fails, it goes back once for correction.

4

Avatar

HeyGen generates Nei's avatar through the studio (subscription). motor/retempo.py aligns the visuals to the speech. If HeyGen fails, a version with Nei's photo and voice (Chatterbox) is made instead.

5

Video

motor/palco.html is rendered frame by frame by Playwright, with counters, stamps and the source in every scene. The avatar sits in the corner.

6

Publishing

auto/publicar.sh publishes on the Inema Pro YouTube channel (lives12) through yt-pubx and always sends it to bot v3 with the link. If the avatar failed, the photo version only goes to the bot.

Schedule

Three runs a week, at 05:00

systemd user timers. The time is kept away from finviral (02:00) so the two don't compete for the GPU and HeyGen. A weak day doesn't become a video: the bot gets "no topic".

Mon to Fri
diario run · 40–60 sWhat they published yesterday and the day before: one main story and at most one or two more facts.
Saturday
semanal run · 90 s to 2 minThe week in review: the strongest topic, the controversy and who disagreed with whom. Then the long 16:9 "The week explained".
Sunday
domingo run · ~90 sThe warnings, habits and myths they pointed out during the week, always attributed. Then the long 16:9 explainer.
Influencers

Who saudeviral follows

Basis: iBest Award 2024 (Health Influencers) and our own measurement on 10/10/2026 on YouTube and Instagram (pesquisa/influenciadores.md). Collection reads YouTube only.

🩺 Doctors

Drauzio Varella (oncologist), Dayan Siebra (vascular surgeon), Fernando Lemos (gut health), Paulo Muzy (sports medicine), Ana Escobar (pediatrician), Ana Beatriz Barbosa (psychiatrist, PodPeople).

🥗 Nutrition, mind and movement

Patricia Leite (nutritionist), Rossandro Klinjey (psychologist) and Marcio Atalla (physical educator).

⚠️ Under a consensus warning

Lair Ribeiro, Instituto Dr. Barakat, Christian Aguiar and Victor Sorrentino: included, but anything without scientific support gets the "NO CONSENSUS" stamp.

Requirements

What the machine needs

A computer with a GPU, Claude Code logged in on the subscription and the explicavideos HeyGen profile.

Collection and voice

yt-dlp to list and download, inemavox (~/projetos/inemavox) to transcribe and cardshorts for the Chatterbox voice nei.

Render

Node with Playwright (motor/node_modules links to eventosextremospub's) and ffmpeg.

Script, avatar and delivery

claude (Claude Code on the subscription), Xvfb :99 with the explicavideos HeyGen profile, yt-pubx and bot v3.

User guide · step by step

Turn on, test and run by hand

Real commands from the repository, run from the project root.

1

Choose the influencers

The list lives in canais.json. To pause someone without deleting them, use "ativo": false. The handle is the channel path on YouTube.

{"handle": "channel/UC9zqTTVeClpqMQ5CLuJdWtw", "nome": "Drauzio Varella", "rk": "MÉDICO · ONCOLOGISTA", "ativo": true}

If another established, licensed and trustworthy health professional stands out, the system suggests adding them in the bot message. They only join with Nei's ok.

2

Turn on the schedule

Copy the systemd user units and enable the three timers.

cp systemd/saudeviral-* ~/.config/systemd/user/ && systemctl --user daemon-reload
systemctl --user enable --now saudeviral-diario.timer saudeviral-semanal.timer saudeviral-domingo.timer
systemctl --user list-timers 'saudeviral-*'
3

Test without spending or sending anything

Run a round without HeyGen and without sending to the bot or YouTube.

SEM_AVATAR=1 SEM_BOT=1 auto/rodar.sh diario   # test: no HeyGen, nothing sent
4

Run outside the schedule or skip a run

Pass the mode and the date; to skip, add the line to auto/pular.txt.

auto/rodar.sh diario 2026-10-09          # run for a specific day
echo "2026-10-17 diario" >> auto/pular.txt     # skip a run
5

Follow along on Telegram and YouTube

Each run publishes on Inema Pro (lives12) and sends the video to bot v3 with the link. If there is no topic or something fails, the bot gets the notice.

Rules for every video

What every video follows

The fact-check gate and the script follow these rules.

📅 Full frame 0

Date dd/mm/yyyy and the strongest fact right in the first frame.

📌 Source on screen

Only facts that are in the transcript, with channel, date and title on screen.

⚕️ Not a consultation

"Does not replace a medical consultation" in every video; dose, medicine or diet never become instructions.

⚖️ No sides taken

A controversy is what THEY said; politics always attributed.

🗣️ Nei's tone

Spoken in Nei's tone ("você", formal "you"), with numbers and years written out.

📣 Ends with a CTA

Comment hook and the AI agent management CTA at inema.club.

Example

Pilot of 10/10/2026

Two frames from saudeviral's first video (edition edicoes/2026-10-10-diario).

Opening frame of the saudeviral pilot
Frame 0: date, the strongest fact and the thumbnails of the videos cited.
Middle frame of the pilot, with the source in the footer
A scene from the middle, with the source (channel, date and title) in the footer.