myspoti
Jetpack Compose로 만든 Spotify 전용 안드로이드 클라이언트
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Legendas automáticas em português para pessoas surdas, com aviso dos trechos em que a IA pode ter errado.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Legendas automáticas em português para pessoas surdas, que avisam onde a IA pode ter errado e apontam os trechos rápidos demais para ler.
Ver a demonstração: um vídeo de exemplo já legendado pelo projeto, com a lista de blocos e os destaques.
A pessoa e a voz do vídeo de exemplo são um avatar gerado por IA (Clipchamp).
Legenda automática erra, e quem ouve percebe na hora. A pessoa surda não tem como perceber, porque não confere a legenda pelo áudio. Além disso, uma transcrição literal pode passar da velocidade de leitura recomendada.
E mede tudo isso com números.
Comparei dois tamanhos do Whisper nas 427 frases do conjunto de teste do Common Voice pt-BR (36 minutos de áudio), com 2 núcleos de CPU, imitando a máquina da demo.
| Modelo | Erro de palavra (WER) | Velocidade (RTF) |
|---|---|---|
| whisper-base | 38,6% | 0,32 |
| whisper-small | 22,9% | 0,86 |
Conclusão: a regra inicial pedia RTF até 0,5, um limite que eu defini antes de medir, e com ela a demo usaria o base. Quando vi os números, percebi que esse limite não tinha um motivo ligado a quem usa a legenda: para quem não ouve, acertar vale mais do que esperar alguns segundos a menos. Mudei a regra para "mais rápido que o tempo real" (RTF até 1,0), e a demo passou a usar o small, que erra 41% menos (22,9% contra 38,6%). Como a regra mudou depois de ver os números, os resultados dos dois modelos ficam aqui, lado a lado.
Apliquei às 427 frases a mesma regra que a demo usa para marcar dúvida, com os mesmos cortes nos dois modelos:
| whisper-small (demo) | whisper-base | |
|---|---|---|
| Frases marcadas como duvidosas | 33% (141) | 60% (258) |
| WER nas marcadas × nas demais | 42,2% × 13,0% | 51,4% × 16,8% |
| Parte dos erros que cai em frases marcadas | 62% | 84% |
| Erros sem aviso | 8,6% (230 palavras) | 6,2% (165 palavras) |
Nos dois modelos, as frases com mais erros são listas de termos técnicos e nomes próprios ("lotusscript, corelscript", "Gerdau, PagBrasil, Piccadilly"). No base, em duas frases o modelo entrou em repetição ("e o hábita e o hábita e o hábita"); as 10 piores do base estão em errors.md. No small, aparecem também números por extenso transcritos como algarismos ("um, dois, três…" virou "1, 2, 3…"), que a normalização atual conta como erro.
Medido em 24/10/2026 · seed 42 · normalização v1 · dados completos em results/2026-10-24_145853 (resumo, calibração).
flowchart LR
V[Vídeo enviado] --> M[Validação:<br>tamanho, tipo real,<br>duração, áudio]
M --> A[Áudio mono 16 kHz<br>ffmpeg]
A --> T[Transcrição<br>Whisper local]
T --> C[Blocos de legenda<br>limites do Guia]
C --> L[Legibilidade:<br>aponta blocos rápidos]
C --> D[Baixa confiança:<br>marca trechos duvidosos]
L --> R[WebVTT + relatório]
D --> R
R --> P[Página: player<br>e lista de blocos]
core/), então o número da tabela descreve o que a demo faz.Pré-requisitos: Python 3.12 e ffmpeg instalados.
git clone https://github.com/joaopeorossi/legendalab
cd legendalab
py -3.12 -m venv .venv
.venv\Scripts\python -m pip install -r requirements.txt
.venv\Scripts\python -m uvicorn api.main:app
Depois, abra http://127.0.0.1:8000 (a página) ou http://127.0.0.1:8000/docs (a documentação da API). Os testes rodam com .venv\Scripts\python -m pytest. No Linux ou no macOS, use python3.12 -m venv .venv e .venv/bin/python.
Para refazer o benchmark, baixe o Common Voice pt-BR na Mozilla Data Collective para data/pt-BR/ e rode:
.venv\Scripts\python -m bench.run_benchmark --models base small --n 427 --seed 42
.venv\Scripts\python -m bench.report results/<pasta-da-execução>
.venv\Scripts\python -m bench.calibrate results/<pasta-da-execução>
Usei o Claude Code como copiloto para escrever o código. As decisões são minhas: para quem é o projeto, que métrica usar, de onde vêm os limites, a regra de escolha do modelo e o corte da marcação de dúvida. A validação dos resultados também é minha. Cada etapa terminou com testes automáticos e um registro do que aprendi no LEARNING_LOG.md.
No produto, a IA aparece só na transcrição. Nenhuma IA reescreve, resume ou "corrige" a legenda.
MIT.