docs: Update README for v1.2.0 (Native Audio & Auto-Loop)
This commit is contained in:
176
README.md
176
README.md
@@ -4,162 +4,75 @@
|
||||
|
||||

|
||||
|
||||
## ✨ Features
|
||||
## ✨ New in v1.2.0
|
||||
|
||||
* **🎙️ Dual-Channel Recording**: seamlessly capture your voice and meeting audio from apps like Microsoft Teams, Zoom, or Google Meet.
|
||||
* **📁 Import Audio Files**: Upload existing recordings (MP3, MP4, WAV, M4A, FLAC, OGG, AAC, WMA) for transcription and summarization.
|
||||
* **⏱️ Long Meeting Support**: Record meetings up to 2+ hours with automatic MP3 conversion and chunking.
|
||||
* **🎵 Smart Auto-Stop**:
|
||||
* **Universal Auto-Stop**: Automatically stops recording after **20 seconds of silence** in ALL modes (Voice Memo & Meeting).
|
||||
* **Noise Filtering**: Enhanced VAD (Voice Activity Detection) ignores background noise and keyboard typing, only triggering on clear speech.
|
||||
* **📅 Microsoft 365 Integration**:
|
||||
* **Upcoming Meetings**: View your daily schedule and join with **one click**.
|
||||
* **Meeting Details**: View full agenda and **invited attendee status** (Accepted/Declined).
|
||||
* **💾 Persistent History**: Automatically saves all transcripts and summaries to disk. Search and review past meetings anytime.
|
||||
* **✉️ Email Summaries**: Send professional, formatted HTML summaries (with preview) directly to attendees via your own SMTP server.
|
||||
* **🧠 Powered by Infomaniak AI**:
|
||||
* **Precision Transcription**: Standard-compliant formatting with **second-by-second timestamps**.
|
||||
* **Smart Summaries**: Uses **Smart Templates** to automatically select the best format (Business Protocol vs. 1:1) based on meeting content.
|
||||
* **🔇 Smart VAD**: Automatically filters out silence and stops recording when you stop talking.
|
||||
* **🎨 White-Labeling**: Upload your **custom company logo** in Settings to brand the application.
|
||||
* **🔒 Privacy-First**: Data is processed securely via your own Infomaniak API keys.
|
||||
* **🎧 Native System Audio**: No more BlackHole driver needed! Captures Teams/Zoom audio directly and securely via macOS ScreenCaptureKit.
|
||||
* **🔁 Auto-Loop (Standby Mode)**: The app automatically "re-arms" after a call finishes. Just leave it running—it will wake up, record your next call, and go back to sleep.
|
||||
* **⚡ Smart VAD & Pre-Roll**:
|
||||
* **3-Second Pre-Roll**: Catches the start of the sentence even if you speak before the trigger.
|
||||
* **Noise Filtering**: Ignores typing and background noise.
|
||||
* **🛡️ Empty Audio Guard**: Automatically discards silent recordings (e.g., false triggers) to save API costs and prevent errors.
|
||||
* **✨ 48kHz Crystal Clear Audio**: Optimized audio pipeline prevents "robot voice" distortion.
|
||||
|
||||
---
|
||||
## 🚀 Key Features
|
||||
|
||||
## 🚀 Getting Started
|
||||
|
||||
### Required
|
||||
|
||||
* **macOS** (tested on macOS Monterey and later)
|
||||
* **BlackHole 2ch Driver** ([Download here](https://existential.audio/blackhole/))
|
||||
* **MANDATORY** for system audio capture (MS Teams, Zoom, etc.)
|
||||
* Without this, you can only record microphone input
|
||||
* **ffmpeg** for audio processing
|
||||
```bash
|
||||
brew install ffmpeg
|
||||
```
|
||||
* **Infomaniak AI Account**: You need an API Key and Product ID from the [Infomaniak Developer Portal](https://manager.infomaniak.com/).
|
||||
|
||||
### 2. Installation
|
||||
1. Download the latest `.dmg` file from the [Releases page](#).
|
||||
2. Open the `.dmg` and drag **Hearbit AI** to your Applications folder.
|
||||
3. Launch the app.
|
||||
|
||||
---
|
||||
|
||||
## 🎧 Recording System Audio (Teams, Zoom, etc.)
|
||||
|
||||
We've made this easy! **Note: You must have the BlackHole driver installed.**
|
||||
|
||||
1. **Create "Hearbit Audio" Device**:
|
||||
* Open the app and select **Meeting** mode.
|
||||
* If you don't have the device yet, click the **"🪄 Create Hearbit Audio Device"** button.
|
||||
* This creates a specialized "Multi-Output Device" that routes audio to both your headphones/speakers AND the app.
|
||||
|
||||
2. **Configure Teams / Zoom / Webex**:
|
||||
* **Speaker / Output**: Change this to **Hearbit Audio**.
|
||||
* *Why?* This ensures the audio goes to the recording app *and* your ears.
|
||||
* **Microphone / Input**: Leave this as your normal microphone (e.g., MacBook Pro Mic).
|
||||
* *Note:* Do **not** select Hearbit Audio as your microphone in Teams.
|
||||
|
||||
3. **Start Recording**:
|
||||
* In Hearbit AI, ensure **Hearbit Audio** is selected as the input.
|
||||
* **🎙️ Dual-Channel Recording**: Seamlessly capture your voice and meeting audio.
|
||||
* **📁 Import Audio Files**: Upload existing recordings (MP3, WAV, M4A, etc.).
|
||||
* **⏱️ Long Meeting Support**: Handles meetings 2+ hours with automatic chunking.
|
||||
* **📅 Microsoft 365 Integration**: View upcoming meetings and join with one click.
|
||||
* **💾 Persistent History**: Automatically saves all transcripts and summaries locally.
|
||||
* **✉️ Email Summaries**: Send formatted HTML summaries via your own SMTP server.
|
||||
* **🎨 White-Labeling**: Upload your custom company logo.
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Usage Guide
|
||||
|
||||
1. **Configuration**:
|
||||
* Click the **Settings** (gear icon).
|
||||
* Enter your **Infomaniak API Key** and **Product ID**.
|
||||
### 1. Installation
|
||||
1. Download the latest `.dmg` file from the [Releases page](#).
|
||||
2. Open the `.dmg` and drag **Hearbit AI** to your Applications folder.
|
||||
3. **Permission Check**: On first launch, grant "Screen Recording" permission (required for capturing System Audio).
|
||||
|
||||
2. **Connect M365 (Optional)**:
|
||||
* Copy the **Application (client) ID**.
|
||||
* Click the **Meetings** tab.
|
||||
* Enter your **Client ID** and click "Connect".
|
||||
* Proceed with MS login.
|
||||
* View your upcoming meetings.
|
||||
### 2. Configuration
|
||||
1. Click **Settings** (gear icon).
|
||||
2. Enter your **Infomaniak API Key** and **Product ID**.
|
||||
3. (Optional) Configure **SMTP** for email sending and **Microsoft 365** for calendar integration.
|
||||
|
||||
3. **Recording**:
|
||||
* Choose your **Template** (e.g., "Meeting Protocol").
|
||||
* Select your **Input Device**.
|
||||
* Click **Start Recording**.
|
||||
### 3. Recording a Meeting
|
||||
1. **Select Mode**: Choose "Meeting" (captures Mic + System) or "Voice Memo" (Mic only).
|
||||
2. **Auto-Start (Recommended)**: Check "Auto-start when audio detected".
|
||||
3. **Standby**: Click "Standby (Auto-Start)". The app waits silently.
|
||||
4. **Join Call**: Join your Teams/Zoom call.
|
||||
5. **Trigger**: As soon as someone speaks, Hearbit starts recording automatically.
|
||||
6. **Finish**: When the call ends (silence > 20s), Hearbit stops, transcribes, summarizes, and **goes back to Standby** for the next call.
|
||||
|
||||
4. **Processing**:
|
||||
* Click **Stop** when finished.
|
||||
* The app will transcribe the audio (with timestamps!) and generate a summary based on your selected template.
|
||||
* You will be automatically taken to the **Transcription** tab to review the results.
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Custom Branding (White-Labeling)
|
||||
|
||||
You can replace the default Livtec logo with your own company branding:
|
||||
|
||||
1. Go to **Settings** (gear icon) → **Branding**.
|
||||
2. Click **Upload Logo**.
|
||||
3. Select your file (PNG, JPG, SVG).
|
||||
4. The content changes immediately across the app.
|
||||
5. *Tip*: Use a transparent PNG for best results.
|
||||
|
||||
---
|
||||
|
||||
## 📧 Advanced Email Templates
|
||||
|
||||
The email system supports **full HTML & JavaScript** templates. This allows for dynamic dashboards, charts, and interactive reports.
|
||||
|
||||
**How to use:**
|
||||
1. Go to **Settings** → **Email**.
|
||||
2. Create a new template.
|
||||
3. Use `{{summary}}` as a placeholder for the raw AI JSON output.
|
||||
4. In your HTML/Script, parse it:
|
||||
```javascript
|
||||
const reportData = {{summary}};
|
||||
// Now you can use reportData.todos, reportData.updates, etc.
|
||||
```
|
||||
5. Use `{{date}}` for the current date and `{{subject}}` for the meeting title.
|
||||
|
||||
*Example*: Create a "Daily Standup Dashboard" that visualizes Blocker/Updates/Todos in a grid layout.
|
||||
### 4. Customizing Prompts
|
||||
You can create custom AI templates in Settings -> Prompts. Example:
|
||||
* **"Sales Call"**: Focus on budget, timeline, and decision makers.
|
||||
* **"Daily Standup"**: Extract blockers and next steps.
|
||||
* **"General Protocol"**: Standard meeting minutes.
|
||||
|
||||
---
|
||||
|
||||
## ❓ Troubleshooting
|
||||
|
||||
### "Hearbit AI is damaged and can't be opened"
|
||||
This is a standard macOS warning for apps not signed with an Apple Developer Certificate. To fix it:
|
||||
|
||||
If macOS blocks the app because it's not notarized:
|
||||
1. Open **Terminal**.
|
||||
2. Run the following command:
|
||||
```bash
|
||||
sudo xattr -cr /Applications/Hearbit\ AI.app
|
||||
```
|
||||
3. Enter your password.
|
||||
4. Open the app again.
|
||||
2. Run: `sudo xattr -cr /Applications/Hearbit\ AI.app`
|
||||
3. Enter your password and try again.
|
||||
|
||||
### Long Meetings (> 1 hour)
|
||||
### Audio cuts off at the start?
|
||||
v1.2.0 includes a **3-second buffer**. If this persists, ensure your "Auto-start" threshold isn't too high (though it's currently auto-calibrated).
|
||||
|
||||
**Automatic Handling**: The app automatically handles long recordings:
|
||||
- **MP3 Conversion**: All recordings are converted to MP3 (64kbps) for 10x compression
|
||||
- **Chunking**: Files ≥18 MB are automatically split into 10-minute segments
|
||||
- **Processing**: Each segment is transcribed separately and merged with timestamps
|
||||
|
||||
**Example**: A 2-hour meeting:
|
||||
1. Records as WAV (~120 MB)
|
||||
2. Converts to MP3 (~12 MB)
|
||||
3. Stays under limit → No chunking needed!
|
||||
|
||||
**Very long meetings** (e.g., all-day workshops):
|
||||
- Automatically chunks into segments
|
||||
- Shows progress: "Processing chunk 1/15..."
|
||||
- Merges all transcriptions seamlessly
|
||||
|
||||
### No Audio / Can't Hear Meeting Participants
|
||||
### "Batch processing failed"
|
||||
This means the audio was empty or too short. The new **Empty Guard** prevents this in most cases. If it happens, check your microphone selection.
|
||||
|
||||
---
|
||||
|
||||
## 👨💻 Development
|
||||
|
||||
Built with **Tauri**, **React**, and **TypeScript**.
|
||||
Built with **Tauri v2**, **React**, and **TypeScript**.
|
||||
|
||||
### Setup
|
||||
```bash
|
||||
@@ -175,7 +88,6 @@ npm run tauri dev
|
||||
```bash
|
||||
npm run tauri build
|
||||
```
|
||||
*The build artifact will be located in `src-tauri/target/release/bundle/dmg/*`*
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user