Overview

Frajola is a free desktop application that records your meetings directly from your computer's audio output and microphone — no bot joins your calls. It transcribes audio locally with Whisper and generates AI meeting notes with Ollama. Everything runs on your machine by default.

Frajola works with any meeting platform: Zoom, Google Meet, Teams, Discord, phone calls, or even in-person meetings.

Key Features

  • Privacy-first — All audio, transcripts, and summaries stay on your machine by default
  • No bots — Records from your audio output directly, invisibly
  • Cross-platform — Windows, macOS, and Linux
  • Local AI — Transcription via Whisper, notes via Ollama, no cloud needed
  • Meeting library — Full-text search across all your meetings
  • Export — Markdown and PDF

Quick Start

Get up and running in three steps:

1. Download Frajola

Download the installer for your platform from the home page.

2. Install Ollama (for AI notes)

Frajola uses Ollama for local AI-generated meeting notes. Install it from ollama.com, then pull a model:

ollama pull llama3.2:3b

See Set Up Ollama for detailed instructions and model recommendations.

3. Record your first meeting

Open Frajola, click Start Recording, join your meeting, and click Stop when done. Frajola will transcribe the audio and generate notes automatically.

System Requirements

Supported Operating Systems

  • macOS — 12 (Monterey) or later
  • Windows — 10 or later
  • Linux — Ubuntu 20.04+, Fedora 35+, or equivalent (PulseAudio or PipeWire)

Hardware Recommendations

For local transcription (Whisper), the following is recommended based on model size:

ModelRAM NeededSpeedAccuracy
tiny~75 MBVery fastLow
base (default)~142 MBFastGood
small~466 MBMediumBetter
medium~1.5 GBSlowGreat
large-v3~3 GBVery slowBest

The base model is the default and works well on most machines. Older or low-RAM machines should use tiny.

For local AI notes (Ollama), at least 8 GB of RAM is recommended. The smallest model (Llama 3.2 3B) requires about 2 GB.

Install Frajola

Download

Download the latest release for your platform:

  • macOS.dmg installer
  • Windows.msi installer
  • Linux.AppImage or .deb

Installers are available on the download page.

Set Up Ollama

Ollama is a local AI runtime that Frajola uses to generate meeting notes. It runs models entirely on your machine — no data is sent to the cloud.

Install Ollama

  • macOS / Linux: curl -fsSL https://ollama.com/install.sh | sh
  • Windows: Download the installer from ollama.com/download

Pull a Model

After installing, pull a model. We recommend starting with Llama 3.2 3B — it's small, fast, and produces good summaries:

ollama pull llama3.2:3b

Verify Ollama is Running

Ollama runs as a background service on port 11434. You can verify it's working with:

curl http://localhost:11434/api/tags

You should see a JSON response listing your installed models.

Recommended Models

ModelSizeSpeedQualityBest For
Llama 3.2 3B2 GBFastGoodQuick summaries, low-RAM machines
Mistral 7B4 GBMediumBetterDetailed meeting notes
Llama 3.1 8B5 GBMediumGreatBest local quality
Qwen 2.5 7B4 GBMediumGreatMultilingual (English + Portuguese)

Tip: If you have 16 GB of RAM or more, try Llama 3.1 8B for the best quality. On 8 GB machines, Llama 3.2 3B is the safest choice.

You can change the model at any time in Frajola's settings.

Whisper Models

Frajola uses whisper.cpp (via whisper-rs) for local audio transcription. Whisper supports over 99 languages and automatically detects the language being spoken.

Available Models

ModelDownload SizeSpeed (relative)Accuracy
tiny75 MB~32x real-timeLow
base (default)142 MB~16x real-timeGood
small466 MB~6x real-timeBetter
medium1.5 GB~2x real-timeGreat
large-v33 GB~1x real-timeBest

The speed column shows approximately how much faster than real-time each model processes audio on modern hardware. For example, base at 16x real-time means a 1-hour meeting would take about 4 minutes to transcribe.

Recommendation: Start with base. If transcription quality is not sufficient for your language or use case, try small. Only use medium or large-v3 if you need maximum accuracy and don't mind waiting longer.

You can change the Whisper model in settings. The model is downloaded automatically when first used.

Recording a Meeting

Frajola records audio from two sources simultaneously:

  • System audio — What other participants are saying (the meeting output)
  • Microphone — Your own voice

How to Record

  1. Open Frajola
  2. Click Start Recording
  3. Join or start your meeting in any app (Zoom, Meet, Teams, etc.)
  4. Use Pause / Resume as needed
  5. Click Stop Recording when done

Recording captures audio in WAV format (16-bit PCM, 16kHz mono) optimized for Whisper compatibility. A 1-hour meeting is approximately 115 MB.

Note: Frajola records from your system's audio output — no bot joins the call. Other participants cannot see or detect the recording.

Transcription

After recording stops, Frajola automatically transcribes the audio. Depending on your privacy mode, this happens either locally (via Whisper) or via a cloud API.

How It Works

  • Local mode (default) — Whisper runs on your machine. No audio data leaves your device.
  • Cloud mode — Audio is sent to the OpenAI Whisper API for transcription. Requires an API key.

Whisper automatically detects the language being spoken. You can also set a preferred language in settings for more reliable detection.

Speaker Detection

The current version uses basic voice activity detection (VAD) — silence gaps longer than 2 seconds are treated as potential speaker changes. This is a simple heuristic and may mislabel speakers in fast-paced conversations.

Limitation: True speaker diarization (identifying who said what) requires ML models and is planned for a future version. The current approach works best in 1-on-1 meetings or when speakers take clear turns.

AI Meeting Notes

After transcription, Frajola generates structured meeting notes using AI. The output includes:

  • Summary — A concise overview of the meeting
  • Key Points — The most important topics discussed
  • Action Items — Tasks and follow-ups mentioned, with assignees when identified
  • Decisions — Decisions that were made during the meeting

AI Providers

  • Ollama (default) — Runs locally, free, no data leaves your device
  • OpenAI (opt-in) — Uses GPT models via API, requires your own key
  • Anthropic (opt-in) — Uses Claude models via API, requires your own key

The AI prompt includes the full transcript and requests structured output in the language of the meeting. See AI Providers to configure.

Meeting Library & Search

All your meetings are saved in a local SQLite database with full-text search powered by FTS5. You can:

  • Browse all past meetings sorted by date
  • Search across titles and transcript content
  • View the full transcript with timestamps
  • Review AI-generated notes and action items
  • Delete meetings (removes audio file and all associated data)

Search is fast even with hundreds of meetings — FTS5 indexes are updated automatically as new transcripts are saved.

Exporting Notes

You can export meeting notes in multiple formats:

  • Markdown — Copy to clipboard or save as .md file
  • PDF — Formatted document ready to share

The export includes the meeting summary, key points, action items, and decisions. You can also copy the raw transcript.

Privacy Modes

Frajola offers three privacy modes. You can switch between them at any time in settings.

ModeTranscriptionAI NotesData Leaving Device
Full Local (default) whisper-rs Ollama None
Hybrid whisper-rs GPT / Claude API Transcript text only
Cloud Whisper API GPT / Claude API Audio + transcript

Full Local is the default. No data ever leaves your machine unless you explicitly switch to Hybrid or Cloud mode and provide your own API keys.

What Each Mode Means

  • Full Local — Whisper transcribes audio on your CPU. Ollama generates notes locally. Zero network requests. This is the most private option.
  • Hybrid — Transcription still happens locally (audio stays on device), but the resulting text transcript is sent to OpenAI or Anthropic for AI notes. Useful if Ollama quality is not sufficient or your machine can't run large models.
  • Cloud — Both audio and transcript are sent to cloud APIs. Fastest and highest quality, but least private. Your own API keys are always used — Frajola never proxies through its own servers.

Where Data Is Stored

All Frajola data is stored locally on your machine:

  • Database — SQLite file in your OS app data directory (frajola.db)
  • Audio files — WAV files on local disk
  • Settings — Stored in the same SQLite database

Data Locations

PlatformApp Data Directory
macOS~/Library/Application Support/app.frajola.desktop/
Windows%APPDATA%\app.frajola.desktop\
Linux~/.local/share/app.frajola.desktop/

No Telemetry

Frajola collects zero telemetry. No analytics, no tracking, no phone-home. The app never connects to any server unless you explicitly enable cloud APIs.

Deleting Data

Deleting a meeting from the library removes its audio file and all associated database rows (transcript, notes, action items) via cascading deletes. To remove all data, delete the app data directory listed above.

Cloud APIs (Opt-in)

Cloud APIs are never enabled by default. To use them:

  1. Switch your privacy mode to Hybrid or Cloud in settings
  2. Enter your own API key for the provider you want to use

Supported Providers

  • OpenAI — Whisper API for transcription, GPT models for notes
  • Anthropic — Claude models for notes

API keys are stored securely on your machine. Frajola sends requests directly to the provider — there is no Frajola server in between.

Cost Estimates

ServiceCostNotes
Whisper API~$0.006/min1-hour meeting ≈ $0.36
GPT-4o-mini~$0.002/meetingBased on average transcript length
Claude Haiku~$0.001/meetingMost cost-effective for notes

Settings Overview

Frajola stores configuration as key-value pairs in the local SQLite database. These are the default settings:

SettingDefaultDescription
privacy_modelocalPrivacy mode: local, hybrid, or cloud
transcription_modelocalTranscription engine: local (Whisper) or api (OpenAI)
ai_providerollamaAI provider: ollama, openai, or anthropic
ai_modelllama3.2Model name for the chosen AI provider
languageenUI language: en or pt-BR
whisper_modelbaseWhisper model size: tiny, base, small, medium, large-v3
themesystemUI theme: light, dark, or system

AI Providers

Ollama (Default)

Ollama runs AI models locally on your machine. It's free and private. See Set Up Ollama for installation instructions.

To change the Ollama model, update the ai_model setting. Make sure the model is pulled first:

ollama pull mistral:7b

OpenAI

To use OpenAI, switch your privacy mode to Hybrid or Cloud, set ai_provider to openai, and enter your API key. Get a key from platform.openai.com.

Recommended models: gpt-4o-mini (fast, cheap), gpt-4o (highest quality).

Anthropic

To use Anthropic, switch your privacy mode to Hybrid or Cloud, set ai_provider to anthropic, and enter your API key. Get a key from console.anthropic.com.

Recommended models: claude-haiku-4-5-20251001 (fast, cheap), claude-sonnet-4-6 (highest quality).

Whisper Configuration

The whisper_model setting controls which Whisper model is used for local transcription. Models are downloaded automatically when first used.

Choosing a Model

  • tiny — Fastest, lowest accuracy. Good for quick notes when exact words don't matter.
  • base — Default. Good balance of speed and accuracy for most languages.
  • small — Noticeably better accuracy, especially for non-English languages. 3x slower than base.
  • medium — High accuracy. Recommended if you need reliable transcription and don't mind waiting.
  • large-v3 — Best accuracy. Only recommended for machines with 8+ GB RAM and when quality is critical.

For more details about Whisper models, see the official Whisper documentation.

Language Settings

UI Language

Frajola supports English (en) and Brazilian Portuguese (pt-BR). Change the language setting to switch the interface language.

Meeting Language

Whisper automatically detects the language being spoken in a recording. You can also set a preferred language per meeting for more reliable detection.

AI-generated notes are produced in the same language as the meeting. If the transcript is in Portuguese, the summary will also be in Portuguese.

Audio Capture Issues

If Frajola is not capturing audio correctly:

  1. Check your audio device — Make sure the correct input/output devices are selected in your OS sound settings
  2. Restart Frajola — Audio device handles can become stale if devices change
  3. Check volume levels — Ensure your system audio output is not muted
  4. Close conflicting apps — Some audio apps may hold exclusive access to devices

For platform-specific issues, see the sections below.

macOS Permissions

On macOS, Frajola requires two permissions to capture audio:

  • Screen & System Audio Recording — Required to capture system audio output (meeting audio). This uses ScreenCaptureKit under the hood.
  • Microphone — Required to capture your voice

Granting Permissions

  1. Open System Settings > Privacy & Security
  2. Find Screen & System Audio Recording and enable Frajola
  3. Find Microphone and enable Frajola
  4. Restart Frajola — Permissions take effect after restarting the app

Important: macOS requires you to restart the app after granting audio permissions. If recording doesn't work after enabling permissions, quit and reopen Frajola.

Linux Audio

On Linux, Frajola uses PulseAudio or PipeWire (with PulseAudio compatibility) to capture audio.

System Audio Capture

To capture system audio (what other meeting participants are saying), Frajola uses a monitor source. You can list available sources with:

pactl list sources short

Look for a source ending in .monitor — this captures the output of your speakers/headphones.

PipeWire Users

If you're using PipeWire (default on Fedora 35+ and Ubuntu 22.10+), make sure the PulseAudio compatibility layer is installed:

# Fedora
sudo dnf install pipewire-pulseaudio

# Ubuntu/Debian
sudo apt install pipewire-pulse

Common Issues

  • No monitor source — Some audio setups don't expose a monitor source by default. You may need to load the PulseAudio module: pactl load-module module-loopback
  • Permission denied — Make sure your user is in the audio group: sudo usermod -aG audio $USER

Ollama Not Detected

If Frajola can't connect to Ollama:

Check that Ollama is Running

# Start Ollama manually
ollama serve

# Verify it's responding
curl http://localhost:11434/api/tags

If the curl command returns a connection error, Ollama is not running.

Common Issues

  • Ollama not installed — Install from ollama.com
  • Port conflict — Another service may be using port 11434. Check with lsof -i :11434 (macOS/Linux) or netstat -an | find "11434" (Windows)
  • No models pulled — Run ollama pull llama3.2:3b to download a model
  • Firewall blocking — Ensure localhost connections are allowed on port 11434

Alternative: If you can't run Ollama, switch to Hybrid or Cloud mode in settings to use OpenAI or Anthropic instead.

Slow Transcription

If local transcription is taking too long:

  • Use a smaller model — Switch from base to tiny in settings for faster (but less accurate) transcription
  • Close resource-heavy apps — Whisper uses significant CPU. Close other demanding applications during transcription
  • Use cloud transcription — Switch to Cloud mode to use the OpenAI Whisper API, which transcribes a 1-hour meeting in about 30 seconds

Expected Performance

Model1-Hour Meeting
tiny~2 minutes
base~4 minutes
small~10 minutes
medium~30 minutes
large-v3~60 minutes

These times are approximate and depend on your hardware. Apple Silicon Macs tend to be faster than x86 for Whisper inference.

Frequently Asked Questions

Is Frajola really free?

Yes. Frajola is completely free. There are no paid plans, no usage limits, and no hidden costs. If you use cloud APIs (OpenAI/Anthropic), you pay those providers directly using your own API keys.

Does anyone know I'm recording?

No. Frajola records by capturing your system's audio output — it does not join the meeting as a participant. Other participants cannot see or detect the recording. Please check your local laws regarding recording consent.

What if I don't have Ollama installed?

Without Ollama, Frajola can still record and transcribe meetings using Whisper. For AI-generated notes, you can either install Ollama (see setup guide) or switch to a cloud AI provider in settings.

Can I use my own OpenAI or Anthropic API key?

Yes. Switch your privacy mode to Hybrid or Cloud, select your preferred provider, and enter your API key in settings. Frajola sends requests directly to the provider — there is no intermediary.

What languages are supported?

The UI supports English and Brazilian Portuguese. Transcription (via Whisper) supports 99+ languages with automatic language detection. AI notes are generated in the same language as the transcript.

How much disk space does a recording use?

Approximately 115 MB per hour of recording (WAV, 16-bit PCM, 16kHz mono). OPUS audio compression is planned for a future release, which would reduce this to approximately 10-15 MB per hour.