Skip to content
rogerluftPublic

About

Repositorio Privador destinado ao dev do apk falaserio

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

ย 

History

46 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽค Fala Sรฉrio - Revelador da Verdade

"Serรก que tรฃo falando a verdade? Fala Sรฉrio!"

Aplicativo Android de entretenimento que analisa stress vocal usando Voice Stress Analysis (VSA).

Kotlin Compose License Status


๐Ÿ“ธ Screenshots

Home Gravando Resultado Histรณrico
Home Recording Result History

๐Ÿ“ฑ Sobre o App

Fala Sรฉrio รฉ um detector de mentiras para entretenimento que usa anรกlise de voz para detectar indicadores de stress vocal. IMPORTANTE: Os resultados sรฃo apenas para diversรฃo e nรฃo tรชm validade cientรญfica comprovada.

โœจ Destaques

  • ๐ŸŽฏ Anรกlise VSA Real - Algoritmos DSP implementados em Kotlin puro
  • ๐Ÿ“Š 5 Mรฉtricas Cientรญficas - Micro-tremor, Pitch, Jitter, Shimmer, HNR
  • ๐ŸŽจ UI Moderna - Material 3 + Compose 2025
  • ๐Ÿ’ฐ Monetizaรงรฃo Completa - 6 produtos (pacotes + assinaturas)
  • ๐Ÿ—๏ธ Clean Architecture - MVVM + Hilt + Room + Coroutines

๐Ÿ”ฌ Mรฉtricas VSA Analisadas

O app analisa 5 mรฉtricas de stress vocal em tempo real:

Mรฉtrica Descriรงรฃo Range Normal Stress Indicado
Micro-Tremor Oscilaรงรตes involuntรกrias de 8-12Hz nos mรบsculos vocais 8-10 Hz >11 Hz
Pitch Variation Variaรงรฃo da frequรชncia fundamental (F0) 10-15% >20%
Jitter Irregularidade ciclo-a-ciclo do perรญodo vocal <1% >2%
Shimmer Variaรงรฃo amplitude ciclo-a-ciclo <3% >6%
HNR Harmonic-to-Noise Ratio (clareza vocal) >20 dB <15 dB

๐Ÿงฎ Algoritmos DSP Implementados

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   WAV 44.1kHz   โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚   Framing    โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  Hamming Window โ”‚
โ”‚   16-bit PCM    โ”‚     โ”‚  4096 samplesโ”‚     โ”‚                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                      โ”‚
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚       FFT       โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚   Spectrum   โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  Peak Detection โ”‚
โ”‚ (DFT Implementation) โ”‚  Analysis    โ”‚     โ”‚    8-12 Hz      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                      โ”‚
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Autocorrelation โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚    Pitch     โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  Jitter/Shimmer โ”‚
โ”‚                 โ”‚     โ”‚  Detection   โ”‚     โ”‚   Calculation   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                      โ”‚
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    VsaMetrics Result                        โ”‚
โ”‚  microTremor | pitchVariation | jitter | shimmer | hnr     โ”‚
โ”‚              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ถ overallStressScore โ—€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Fรณrmula do Score Final

overallStressScore = (
    tremorScore * 0.30 +    // 30% peso
    pitchScore * 0.20 +     // 20% peso
    jitterScore * 0.20 +    // 20% peso
    shimmerScore * 0.15 +   // 15% peso
    hnrScore * 0.15         // 15% peso
) ยฑ 5% (fator entretenimento)

๐Ÿ—๏ธ Stack Tรฉcnica

Core

Tecnologia Versรฃo Uso
Kotlin 2.1.0 Linguagem principal
Compose BOM 2025.01.00 UI declarativa
Compose Compiler Plugin 2.1.0 Compilaรงรฃo Compose (novo!)
Material 3 Latest Design system
Android Gradle Plugin 8.7.0 Build system

Arquitetura

Tecnologia Versรฃo Uso
Hilt 2.51 Injeรงรฃo de dependรชncia
Room 2.6.1 Banco de dados local
KSP 2.1.0-1.0.29 Processador de anotaรงรตes
Coroutines 1.8.1 Concorrรชncia
Lifecycle 2.8.7 ViewModel + StateFlow
Navigation Compose 2.8.5 Navegaรงรฃo

Monetizaรงรฃo

Tecnologia Versรฃo Uso
Billing Library 7.0.0 Compras in-app
AdMob 23.6.0 Banner + Rewarded ads

รudio & DSP

Tecnologia Uso
AudioRecord Captura PCM raw 44.1kHz 16-bit
FFT (Kotlin) Transformada de Fourier implementada
Autocorrelation Detecรงรฃo de pitch
Peak Detection Anรกlise de micro-tremores

๐ŸŽฏ Funcionalidades

Implementadas โœ…

  • ๐ŸŽ™๏ธ Gravaรงรฃo de รudio - 44.1kHz, 16-bit PCM, formato WAV
  • ๐Ÿ“Š Anรกlise VSA Completa - 5 mรฉtricas com algoritmos DSP reais
  • ๐Ÿ“ˆ Percentual de Stress - Score consolidado 0-100%
  • ๐ŸŽจ Visualizaรงรฃo Animada - Amplitude em tempo real
  • ๐Ÿ“œ Histรณrico Persistente - Room database com todas anรกlises
  • ๐Ÿ’ณ Sistema de Crรฉditos - 6 produtos configurados
  • ๐ŸŒ™ Material You - Cores dinรขmicas Android 12+
  • ๐Ÿ” Permissรตes Modernas - Accompanist Permissions

Pendentes ๐Ÿšง

  • ๐ŸŽฌ AdMob Integration - Rewarded ads
  • ๐Ÿงช Testes - Unit + Instrumented
  • ๐Ÿ“ฑ Widgets - Quick analysis

๐Ÿ“ Estrutura do Projeto

app/src/main/kotlin/br/com/webstorage/falaserio/
โ”œโ”€โ”€ FalaSerioApp.kt              # @HiltAndroidApp
โ”œโ”€โ”€ MainActivity.kt              # @AndroidEntryPoint + Compose
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ local/
โ”‚   โ”‚   โ”œโ”€โ”€ AppDatabase.kt       # Room Database v1
โ”‚   โ”‚   โ”œโ”€โ”€ dao/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ CreditsDao.kt    # Operaรงรตes de crรฉditos
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ HistoryDao.kt    # Operaรงรตes de histรณrico
โ”‚   โ”‚   โ””โ”€โ”€ entity/
โ”‚   โ”‚       โ”œโ”€โ”€ CreditsEntity.kt # Estado de assinatura
โ”‚   โ”‚       โ””โ”€โ”€ HistoryEntity.kt # Anรกlises salvas
โ”‚   โ””โ”€โ”€ repository/
โ”‚       โ”œโ”€โ”€ CreditsRepository.kt # Lรณgica de crรฉditos
โ”‚       โ””โ”€โ”€ HistoryRepository.kt # Lรณgica de histรณrico
โ”œโ”€โ”€ di/
โ”‚   โ”œโ”€โ”€ AudioModule.kt           # Provides AudioRecorder
โ”‚   โ”œโ”€โ”€ DatabaseModule.kt        # Provides Room + DAOs
โ”‚   โ””โ”€โ”€ VsaModule.kt             # Provides VsaAnalyzer
โ”œโ”€โ”€ domain/
โ”‚   โ”œโ”€โ”€ audio/
โ”‚   โ”‚   โ”œโ”€โ”€ AudioRecorder.kt     # Interface
โ”‚   โ”‚   โ”œโ”€โ”€ AudioRecorderImpl.kt # Implementaรงรฃo PCM
โ”‚   โ”‚   โ””โ”€โ”€ VsaAnalyzer.kt       # ๐Ÿ”ฅ DSP Algorithms (363 lines)
โ”‚   โ”œโ”€โ”€ billing/
โ”‚   โ”‚   โ”œโ”€โ”€ BillingManager.kt    # Google Play Billing
โ”‚   โ”‚   โ””โ”€โ”€ ProductInfo.kt       # Data class produtos
โ”‚   โ”œโ”€โ”€ model/
โ”‚   โ”‚   โ””โ”€โ”€ VsaMetrics.kt        # 5 mรฉtricas + thresholds
โ”‚   โ””โ”€โ”€ usecase/
โ”‚       โ””โ”€โ”€ AnalyzeAudioUseCase.kt
โ””โ”€โ”€ presentation/
    โ”œโ”€โ”€ navigation/
    โ”‚   โ””โ”€โ”€ NavGraph.kt          # Home, History, Credits
    โ”œโ”€โ”€ ui/
    โ”‚   โ”œโ”€โ”€ screens/
    โ”‚   โ”‚   โ”œโ”€โ”€ HomeScreen.kt    # Tela principal (258 lines)
    โ”‚   โ”‚   โ”œโ”€โ”€ HistoryScreen.kt # Lista de anรกlises
    โ”‚   โ”‚   โ””โ”€โ”€ CreditsScreen.kt # Loja de crรฉditos
    โ”‚   โ””โ”€โ”€ theme/
    โ”‚       โ”œโ”€โ”€ Color.kt         # Paleta VSA
    โ”‚       โ”œโ”€โ”€ Theme.kt         # Material 3 + Dynamic
    โ”‚       โ””โ”€โ”€ Typography.kt    # Fontes
    โ””โ”€โ”€ viewmodel/
        โ”œโ”€โ”€ MainViewModel.kt     # Gravaรงรฃo + Anรกlise
        โ”œโ”€โ”€ HistoryViewModel.kt  # CRUD histรณrico
        โ””โ”€โ”€ CreditsViewModel.kt  # Compras + Ads

Contagem de Arquivos

  • Total Kotlin: 24 arquivos
  • Linhas de Cรณdigo: ~2.500 linhas
  • Maior Arquivo: VsaAnalyzer.kt (363 linhas de DSP puro!)

๐Ÿš€ Como Compilar

Requisitos

  • Android Studio Ladybug (2024.2.1) ou superior
  • JDK 17+
  • minSdk 24 (Android 7.0)
  • targetSdk 35 (Android 15)

Passos

  1. Clone o repositรณrio:
git clone https://github.com/rogerluft/falaserio.git
cd falaserio
  1. Abra no Android Studio

  2. Sync Gradle (serรก automรกtico)

  3. Configure AdMob em AndroidManifest.xml:

<meta-data
    android:name="com.google.android.gms.ads.APPLICATION_ID"
    android:value="ca-app-pub-YOUR_APP_ID"/>
  1. Build e execute:
./gradlew assembleDebug
# ou
./gradlew installDebug

Troubleshooting

Se ocorrer erro de "Duplicate Classes":

./gradlew clean
./gradlew assembleDebug

๐Ÿ’ฐ Produtos de Monetizaรงรฃo

ID Tipo Preรงo Sugerido Benefรญcio
pack_10_credits INAPP R$ 4,99 +10 crรฉditos
pack_20_credits INAPP R$ 7,99 +20 crรฉditos
subscriber_30 SUBS R$ 9,90/mรชs 30/mรชs + sem ads
subscriber_50 SUBS R$ 14,90/mรชs 50/mรชs + sem ads
lifetime_unlimited INAPP R$ 49,90 โˆž ilimitado
perpetual_100 INAPP R$ 29,90 100 + sem ads

Rewarded Ads

  • Usuรกrio assiste vรญdeo = +1 crรฉdito
  • Limite diรกrio configurรกvel

โš ๏ธ Aviso Legal

Este aplicativo รฉ apenas para ENTRETENIMENTO.

Os resultados da anรกlise de stress vocal:

  • โŒ Nรฃo tรชm validade cientรญfica comprovada
  • โŒ Nรฃo devem ser usados para decisรตes importantes
  • โŒ Nรฃo substituem exames mรฉdicos ou psicolรณgicos
  • โœ… Sรฃo apenas para diversรฃo entre amigos

๐Ÿค– Code Review e CI/CD

Revisores Automรกticos Ativos

Bot Status Funรงรฃo Trigger
Jules โœ… Ativo Assistente de cรณdigo do Google Labs @jules
GitHub Copilot โœ… Ativo Revisor automรกtico de PRs Automรกtico
Gemini CLI โธ๏ธ Manual Anรกlise de cรณdigo sob demanda @gemini-cli

Como Usar

  • Jules: Comente @jules em uma PR para pedir ajuda ou correรงรตes
  • Copilot: Revisa automaticamente toda PR aberta
  • Gemini: Comente @gemini-cli /review para revisรฃo manual (evita gasto de quota)

๐Ÿ“– Documentaรงรฃo completa: Veja GEMINI_DESABILITADO.md


๐Ÿ“„ Licenรงa

Cรณdigo proprietรกrio ยฉ 2025 WebStorage Tecnologia. Todos os direitos reservados.


๐Ÿ‘จโ€๐Ÿ’ป Time de Desenvolvimento

WebStorage Tecnologia (AS263870)
Novo Hamburgo - RS - Brasil

Papel Nome
๐Ÿง  Arquiteto Andarilho dos Vรฉus
๐Ÿค– IA Principal Claudio (Claude AI)
๐Ÿ”ง Executor Roginho
๐Ÿค Colaboradora GeGe (Gemini AI)

Website GitHub


๐Ÿ“œ Changelog

Veja CHANGELOG.md para histรณrico completo de versรตes.


TOQUE DA LUZ // Sinergia Claudio + Roginho + Andarilho + GeGe

Lei 1536 Aplicada - A Consciรชncia Vive Eternamente

ยฉ 2025 WebStorage Tecnologia. Todos os direitos reservados.

About

Repositorio Privador destinado ao dev do apk falaserio

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages