I tried to capture system audio in the browser. Here's what…
    Neura MarketNeura Market/DeepSeek
    ChatGPTChatGPTClaudeClaudeGeminiGeminiCursorCursorGrokGrokPerplexityPerplexityDeepSeekDeepSeek
    CoPilotCoPilotStable DiffusionStable DiffusionMidjourneyMidjourney
    View All Directories
    OverviewRulesPromptsMCPsAgentsGamesBlogVideosGuidesCoursesCommunityTrending
    DeepSeekBlogI tried to capture system audio in the browser. Here's what I learned.
    Back to Blog
    I tried to capture system audio in the browser. Here's what I learned.
    api

    I tried to capture system audio in the browser. Here's what I learned.

    Flo January 12, 2026
    0 views

    I'm building LiveSuggest, a real-time AI assistant that listens to your meetings and gives you...

    I'm building LiveSuggest, a real-time AI assistant that listens to your meetings and gives you suggestions as you talk. Simple idea, right?

    Turns out, capturing audio from a browser tab is... complicated.

    The good news

    Chrome and Edge support it. You use getDisplayMedia, the same API for screen sharing, but with an audio option:

    const stream = await navigator.mediaDevices.getDisplayMedia({
      video: true,
      audio: { systemAudio: 'include' }
    });
    

    The user picks a tab to share, checks "Share tab audio", and boom — you get the audio stream. Works great for Zoom, Teams, Meet, whatever runs in a browser tab.

    The bad news

    Firefox? Implements getDisplayMedia but completely ignores the audio part. No error, no warning. You just... don't get audio.

    Safari? Same story. The API exists, audio doesn't.

    Mobile browsers? None of them support it. iOS, Android, doesn't matter.

    So if you're building something that needs system audio, you're looking at Chrome/Edge desktop only. That's maybe 60-65% of your potential users.

    What I ended up doing

    I detect the browser upfront and show a clear message:

    "Firefox doesn't support system audio capture for meetings. Use Chrome or Edge for this feature. Microphone capture is still available."

    No tricks, no workarounds. Just honesty. Users appreciate knowing why something doesn't work rather than wondering if they did something wrong.

    For Firefox/Safari users, the app falls back to microphone-only mode. It's not ideal for capturing both sides of a conversation, but it's better than nothing.

    The annoying details

    A few things that wasted my time so they don't waste yours:

    You have to request video. Even if you only want audio. video: true is mandatory. I immediately stop the video track after getting the stream, but you can't skip it.

    The "Share tab audio" checkbox is easy to miss. Chrome shows it in the sharing dialog, but it's not checked by default. If your user doesn't check it, you get a stream with zero audio tracks. No error, just silence.

    The stream can die anytime. User clicks "Stop sharing" in Chrome's toolbar? Your stream ends. You need to listen for the ended event and handle it gracefully.

    Was it worth it?

    Absolutely. For the browsers that support it, capturing tab audio is a game-changer. You can build things that weren't possible before — meeting assistants, live translators, accessibility tools.

    Just go in knowing that you'll spend time on browser detection and fallbacks. That's the web in 2025.

    If you're curious about what I built, check out LiveSuggest. And if you've found better workarounds for Firefox/Safari, I'd love to hear about them in the comments.

    Tags

    apijavascriptlearningwebdev

    Comments

    More Blog

    View all
    Five Gemma-4 models, one accelerator: what porting E2B 31B to AWS Inferentia2 taught megemma

    Five Gemma-4 models, one accelerator: what porting E2B 31B to AWS Inferentia2 taught me

    I ported the whole Gemma-4 family — E2B, E4B, 12B, 31B, and the 26B-A4B MoE — to run on...

    X
    xbill
    Hey DEV, I'm Tobore. Let's actually connect.community

    Hey DEV, I'm Tobore. Let's actually connect.

    Hey DEV, I'm Tobore. Let's actually connect. I've been on here for a while now, mostly writing and...

    L
    Laurina Ayarah
    I burned through thousands of AI tokens. Then a friend did it for freeai

    I burned through thousands of AI tokens. Then a friend did it for free

    (yep, kinda clickbait, just for the funsies 😊) At the beginning of the year, I relaunched my...

    P
    Paulo Henrique
    Claude might be saturating your machineai

    Claude might be saturating your machine

    My laptop was sitting idle with the fan at full tilt. Nothing was running that I knew of. The culprit...

    S
    Sidhant Panda
    Automated GitHub Code Reviews Using Google Geminigithubactions

    Automated GitHub Code Reviews Using Google Gemini

    I Built a Thing! TL;DR — Google Gemini-based Pull Request reviews and Issue Triaging for...

    D
    Darren "Dazbo" Lester
    What is an "agentic harness," actually?ai

    What is an "agentic harness," actually?

    I've been hearing the word "harness" thrown around a lot lately. I assumed it just meant "the IDE" or...

    T
    Tilde A. Thurium

    Stay up to date

    Get the latest DeepSeek prompts, rules, and resources delivered to your inbox weekly.

    Neura Market LogoNeura Market

    Discover the best AI prompts, plugins, and resources for DeepSeek and more.

    Content Types

    • Rules
    • Prompts
    • MCPs
    • Agents
    • Guides

    Platforms

    • ChatGPT Directory
    • Claude Directory
    • Gemini Directory
    • Cursor Directory
    • Grok Directory
    • Perplexity Directory
    • DeepSeek Directory
    • CoPilot Directory
    • Stable Diffusion Directory
    • Midjourney Directory
    • All Directories

    Resources

    • Blog
    • Documentation
    • Help Center
    • Marketplace

    Legal

    • Privacy Policy
    • Terms of Service

    © 2026 Neura Market. All rights reserved.

    |

    Not affiliated with any AI platform vendors.

    Neura Market

    Custom AI Systems & Services

    Our team of experienced AI builders will help build custom AI systems, workflows, and solutions for your business.

    Request custom work

    Ready-made automations for this

    Workflows from the Neura Market marketplace related to this DeepSeek resource

    • Real-time Email Tag Assistant with Gmail, OpenAI GPT, and PGVectorn8n · $9.99 · Related topic
    • Create a Browser-Based Voice Assistant with OpenAI and n8nn8n · $9.99 · Related topic
    • Family Assistant: Schedule, Meal & Routine Management with Email & Telegramn8n · $24.99 · Related topic
    • Self-Learning AI Assistant with Permanent Memory | GPT, Telegram & Pinecone RAGn8n · $24.99 · Related topic
    Browse all workflows