在線網(wǎng)站音頻在 Windows 筆記本上邊播邊錄的完整實(shí)戰(zhàn)指南

很多人都會(huì)遇到和你一模一樣的場(chǎng)景:在瀏覽器里播放一個(gè)網(wǎng)站上的在線音頻,比如公開課、講座、廣播電臺(tái)、白噪聲網(wǎng)站,想一邊聽一邊把聲音錄成一個(gè)本地音頻文件,方便離線反復(fù)聽。

在 Windows 上,這件事本質(zhì)上是把系統(tǒng)正在播放的聲音繞一圈再喂回錄音軟件里,讓它變成一個(gè)新的 wavmp3 文件。只要搞清楚系統(tǒng)里音頻是怎么流動(dòng)的,再選一套順手的工具,就能穩(wěn)定地做到邊播邊錄。

下邊我從原理說起,再給你三類實(shí)際方案:

  • 圖形界面方案:用 Audacity 錄制 Windows 桌面音頻
  • 錄屏常用方案:用 OBS Studio 只錄系統(tǒng)聲音
  • 命令行和自動(dòng)化方案:用 ffmpeg 抓取系統(tǒng)音頻,并附上完整 Python 腳本示例

中間穿插一些排錯(cuò)經(jīng)驗(yàn)和注意事項(xiàng),你可以按需求挑一條自己最順手的路。


一、先搞清楚:在 Windows 里你到底在錄什么

在 Windows 筆記本上,從網(wǎng)站發(fā)出來的聲音,一般會(huì)經(jīng)過這樣的路徑:

瀏覽器Windows 音頻引擎聲卡驅(qū)動(dòng)耳機(jī) / 揚(yáng)聲器

你想邊播邊錄,其實(shí)就是想在 Windows 音頻引擎聲卡驅(qū)動(dòng) 這一段,復(fù)制一份數(shù)字音頻流保存下來,而不是傻乎乎地用麥克風(fēng)去錄揚(yáng)聲器外放的聲音。

WindowsVista 開始提供了 WASAPI loopback 能力,讓程序能直接捕獲正在播放到某個(gè)輸出設(shè)備的數(shù)字音頻流。Audacity 官方文檔推薦在沒有 Stereo Mix 的機(jī)器上,用 Windows WASAPIloopback 方式來錄制桌面音頻,這樣音質(zhì)是純數(shù)字的,不經(jīng)過模擬放大和再采樣。(Audacity Manual)

除了 WASAPI loopback,你還會(huì)在網(wǎng)絡(luò)帖子里看到幾種關(guān)鍵詞:

  • Stereo Mix 或者 What U Hear:有些聲卡驅(qū)動(dòng)提供的一個(gè)虛擬輸入,表示系統(tǒng)混音后的聲音,老一點(diǎn)的機(jī)器常見(How-To Geek)
  • 虛擬聲卡類工具,比如 VB-Cable、Virtual Audio Cable、Virtual Audio Capture 等,把系統(tǒng)輸出重新暴露為一個(gè)可錄制的輸入設(shè)備(Super User)

你要做的事情,就是讓錄音軟件的輸入設(shè)備指向這些 loopback / Stereo Mix / 虛擬聲卡 之一,再在瀏覽器里正常播放目標(biāo)網(wǎng)站音頻,就達(dá)到了邊播邊錄的效果。

這里再提醒一句法律上的常識(shí):很多網(wǎng)站的流媒體內(nèi)容受版權(quán)和服務(wù)條款保護(hù),只在個(gè)人學(xué)習(xí)、備忘范圍內(nèi)自用,一般問題不大,但傳播、商用就可能觸碰法律風(fēng)險(xiǎn)。一些官方教程也會(huì)特別強(qiáng)調(diào),如果要錄制像 YouTube 之類網(wǎng)站的音頻,最好確認(rèn)已經(jīng)獲得版權(quán)方許可。(How-To Geek)


二、最推薦的圖形方案:用 Audacity 邊播邊錄網(wǎng)站音頻

Audacity 是一個(gè)開源跨平臺(tái)音頻編輯軟件,Windows 版自帶 Windows WASAPI loopback 支持,可以直接錄下桌面上正在播放的一切聲音,適合大部分用戶。(support.audacityteam.org)

1. 安裝 Audacity

步驟很簡(jiǎn)單:

  1. 打開瀏覽器,訪問 Audacity 官方網(wǎng)站,下載適用于 Windows 的安裝包。(Nearity)
  2. 雙擊安裝包,保持默認(rèn)選項(xiàng)一路 Next,安裝完成后啟動(dòng) Audacity。

安裝部分基本沒有坑,更重要的是后面的音頻設(shè)備配置。

2. 在 Windows 里確認(rèn)輸出設(shè)備

為了讓 Audacity 正確抓到你正在聽的那路聲音,先確認(rèn)系統(tǒng)當(dāng)前的輸出設(shè)備:

  1. 在任務(wù)欄右下角點(diǎn)擊小喇叭圖標(biāo)。
  2. 看一下當(dāng)前選中的輸出設(shè)備名稱,比如 揚(yáng)聲器 (Realtek Audio),或者某個(gè) USB 耳機(jī)。
  3. 記住這個(gè)名字,等會(huì)在 Audacity 里要選對(duì)應(yīng)的 loopback 版本。

如果你用的是 藍(lán)牙、USB 耳機(jī)或者 HDMI 顯示器輸出,那就要在 Audacity 里選擇對(duì)應(yīng)設(shè)備的 loopback,而不是筆記本自帶揚(yáng)聲器。Audacity 的官方手冊(cè)里也提到,WASAPI 方式可以錄制 USB、無線或外置設(shè)備輸出的音頻,對(duì)這類場(chǎng)景比傳統(tǒng) Stereo Mix 好用得多。(Audacity Manual)

3. 配置 Audacity 的錄音設(shè)備為 WASAPI loopback

打開 Audacity 主界面之后,有一個(gè) Audio Setup 工具欄,你需要調(diào)整三個(gè)關(guān)鍵選項(xiàng):(Audacity Manual)

  1. Host:在下拉菜單里選擇 Windows WASAPI。

  2. Recording Device:從下拉列表里選擇帶有 (loopback) 的那一項(xiàng),比如

    • 揚(yáng)聲器 (Realtek Audio) (loopback)
    • Headphones (USB Audio) (loopback)
  3. Playback Device:保持為你正在使用的那個(gè)輸出設(shè)備,比如 揚(yáng)聲器 (Realtek Audio)

Windows WASAPI + (loopback) 組合意味著:錄音通道會(huì)從你正在聽的那個(gè)輸出設(shè)備的數(shù)字流里直接復(fù)制數(shù)據(jù),這樣錄出來的聲音不會(huì)混入環(huán)境噪聲,也不會(huì)二次經(jīng)過模數(shù)轉(zhuǎn)換。官方指南也把這個(gè)方式當(dāng)作推薦做法。(support.audacityteam.org)

有些機(jī)器還會(huì)提供 Stereo MixWhat U Hear 等錄音設(shè)備名稱,這些本質(zhì)上也是對(duì)系統(tǒng)播放流的回環(huán)輸入,你也可以選這些設(shè)備,不過新系統(tǒng)里 WASAPI loopback 的兼容性通常更好。(How-To Geek)

4. 邊播邊錄的操作流程

配置好設(shè)備以后,可以按下面的順序來邊播邊錄:

  1. 在瀏覽器里打開目標(biāo)網(wǎng)站,找到你想錄的在線音頻,比如一個(gè)在線電臺(tái)、網(wǎng)頁播放器、在線課程頁面之類。
  2. Audacity 里先點(diǎn)一下錄音電平的小麥克風(fēng)圖標(biāo),選擇 Start Monitoring,如果此時(shí)網(wǎng)頁已經(jīng)在播放,你會(huì)看到輸入電平在跳動(dòng)。(support.audacityteam.org)
  3. 當(dāng)你確認(rèn)電平在動(dòng),說明 loopback 已經(jīng)連通,這時(shí)點(diǎn)擊 Audacity 的紅色錄音按鈕。
  4. 切回瀏覽器,開始播放目標(biāo)音頻。要注意 WASAPI 在音頻流完全靜音時(shí)可能不提供數(shù)據(jù),所以錄制時(shí)最好讓音頻處于播放狀態(tài)。(support.audacityteam.org)
  5. 音頻播放完畢后,回到 Audacity,點(diǎn)擊停止按鈕。

整段播放的波形此時(shí)已經(jīng)完整出現(xiàn)在軌道里,你可以用 Audacity 的編輯能力進(jìn)行剪輯、降噪、歸一化等操作。

5. 導(dǎo)出為 WAV / MP3 等格式

錄完之后,一般會(huì)導(dǎo)出成 wavmp3

  1. 在菜單里選擇 FileExport。
  2. 如果希望無損保存,選 Export as WAV;如果希望文件更小、便于在手機(jī)上聽,就選 Export as MP3。
  3. 在彈出的對(duì)話框里設(shè)置采樣率 44100 Hz、比特率 128 kbps 或更高,保存即可。

現(xiàn)在的 Audacity 版本已經(jīng)內(nèi)置 LAME 編碼器,不再需要額外安裝插件,就能直接導(dǎo)出 mp3。很多第三方教程都會(huì)強(qiáng)調(diào) WASAPI loopback + 導(dǎo)出 mp3 是錄制桌面音頻時(shí)最方便的組合之一。(Swell AI)

6. 用 Audacity 邊播邊錄時(shí)的一些經(jīng)驗(yàn)

結(jié)合項(xiàng)目里常見的坑,可以再補(bǔ)充幾條經(jīng)驗(yàn):

  • 如果錄出來是靜音,大概率是瀏覽器沒有把聲音輸出到你選的那個(gè)設(shè)備,比如你用 藍(lán)牙 耳機(jī)聽,但 Audacityloopback 選的是筆記本揚(yáng)聲器。
  • 如果只想錄網(wǎng)站音頻,不想錄系統(tǒng)提示音,可以在 Windows 的音量混合器里降低其它應(yīng)用的音量,甚至把系統(tǒng)聲音靜音。
  • WASAPI 錄制時(shí),Audacity 的工程采樣率最好跟系統(tǒng)默認(rèn)格式一致,比如都用 44100 Hz,可以減少不必要的重采樣。(Audacity Forum)

對(duì)于大多數(shù)只想把網(wǎng)頁音頻邊播邊錄下來的場(chǎng)景,用 Audacity 基本已經(jīng)足夠。


三、如果你常用錄屏:用 OBS Studio 只錄系統(tǒng)聲音

有不少人本身就用 OBS Studio 做錄屏或直播,那在這個(gè)基礎(chǔ)上順手錄一下網(wǎng)站音頻,其實(shí)也很方便。OBS 官方文檔和社區(qū)教程里都有詳細(xì)的音頻配置說明。(OBS Studio)

1. OBS Studio 的基本思路

OBS 里,你可以把音頻源分成幾類:

  • Desktop Audio:整個(gè)系統(tǒng)的桌面聲音
  • Application Audio Capture:只抓取某一個(gè)應(yīng)用的聲音,比如 ChromeEdge(OBS Studio)
  • Mic/Aux:麥克風(fēng)輸入

如果你只想錄網(wǎng)站音頻,不想把麥克風(fēng)環(huán)境聲錄進(jìn)去,可以在音頻混音器里把 Mic/Aux 靜音,只保留 Desktop AudioApplication Audio Capture。(OBS Studio)

2. 只錄網(wǎng)站音頻的大致操作過程

大致的操作順序可以是這樣:

  1. 安裝并打開 OBS Studio,用向?qū)芤淮巫詣?dòng)配置,讓它根據(jù)你的機(jī)器性能選一個(gè)合適的默認(rèn)設(shè)置。(OBS Studio)
  2. 在一個(gè)場(chǎng)景里,點(diǎn)擊音頻源區(qū)域的加號(hào),選擇 Application Audio Capture。在彈出的窗口里給這個(gè)源起個(gè)名字,比如 BrowserAudio。(OBS Studio)
  3. 在屬性里選擇具體的瀏覽器窗口,比如 chrome.exemsedge.exe。這樣 OBS 只會(huì)捕獲這個(gè)進(jìn)程播放的聲音。(OBS Studio)
  4. 在音頻混音器里,把麥克風(fēng)那一條靜音,只留下剛才添加的應(yīng)用音頻源。
  5. 打開瀏覽器訪問目標(biāo)網(wǎng)站,開始播放在線音頻。此時(shí)可以在 OBS 的混音器上看到電平條在跳動(dòng)。
  6. OBS 設(shè)置里的 OutputRecording,把 Recording Format 改成一個(gè)音頻友好的格式,比如 mkvmp4 配合只保留音軌;或者在一些教程里會(huì)推薦把 Recording Type 改成 Custom Output (FFmpeg),直接輸出 mp3flac 音頻文件。(Hollyland)
  7. 點(diǎn) Start Recording,等網(wǎng)頁音頻播放結(jié)束后,再點(diǎn) Stop Recording。

如果想要的只是音頻,可以事后用 ffmpeg 把錄制的 mkv / mp4 文件里的音軌抽出來,命令大概類似于:

ffmpeg -i input.mkv -vn -acodec copy output.m4a

這里用 -vn 丟掉視頻部分,僅復(fù)制音頻軌。

OBS 的優(yōu)點(diǎn)是可以非常精細(xì)地控制來源,甚至做到只錄一個(gè)瀏覽器標(biāo)簽頁的聲音,而不錄別的應(yīng)用或者系統(tǒng)提示音。如果你經(jīng)常做錄屏或直播,順帶用它錄網(wǎng)站音頻會(huì)非常自然。


四、命令行和自動(dòng)化:用 ffmpeg 抓取系統(tǒng)音頻 + Python 腳本示例

如果你習(xí)慣命令行或者想做自動(dòng)化,比如定時(shí)錄制某個(gè)電臺(tái)節(jié)目的在線流,ffmpeg 會(huì)非常有用。

ffmpeg 可以訪問 Windows 下的 DirectShowWASAPI 音頻設(shè)備,來錄制系統(tǒng)聲音。社區(qū)討論和官方文檔中,普遍的做法是用 dshowStereo Mix / Virtual Audio Capture 設(shè)備,或者直接用 -f wasapi -i default 來錄制默認(rèn)輸出設(shè)備的 loopback 流。(Super User)

1. 安裝 ffmpeg 并配置環(huán)境變量

常見做法是:

  1. ffmpeg 官方推薦的構(gòu)建網(wǎng)站下載 Windows 版壓縮包。
  2. 解壓到一個(gè)目錄,比如 C:\ffmpeg
  3. C:\ffmpeg\bin 加入系統(tǒng) PATH,這樣在命令行里可以直接敲 ffmpeg。

這一步只需要做一次,之后所有腳本和命令都能直接調(diào)用 ffmpeg 可執(zhí)行文件。

2. 用 DirectShow 方式列出所有音頻設(shè)備

Windows 上可以用 DirectShow 接口列出可錄制的音頻設(shè)備:(Super User)

ffmpeg -list_devices true -f dshow -i dummy
``  

命令執(zhí)行后會(huì)羅列出一堆設(shè)備,其中 `DirectShow audio devices` 下面的條目就是可用的音頻輸入,比如:  

* `Stereo Mix (Realtek Audio)`  
* `virtual-audio-capturer`  
* `Microphone (Realtek Audio)`  

你要找的是系統(tǒng)混音或虛擬聲卡之類的設(shè)備,而不是麥克風(fēng)。  

在真實(shí)的命令行里,很多教程會(huì)寫成類似:  

```bash
ffmpeg -f dshow -i audio="Stereo Mix (Realtek Audio)" -acodec libmp3lame out.mp3

為了滿足這里的格式要求,示例里用單引號(hào) ' 來包裹帶空格的設(shè)備名,你在實(shí)際 Windows 命令行里輸入時(shí),要把這些單引號(hào)換成常規(guī)的雙引號(hào)。

3. 用 WASAPI 方式錄制默認(rèn)輸出設(shè)備

在新版 ffmpeg 里,已經(jīng)支持直接通過 WASAPIloopback 錄制,比如錄制整個(gè)系統(tǒng)輸出:(Super User)

ffmpeg -f wasapi -i default -acodec pcm_s16le -ar 44100 -ac 2 output.wav

這條命令含義大致是:

  • -f wasapi:用 WASAPI 設(shè)備
  • -i default:從默認(rèn)播放設(shè)備的 loopback 流錄制
  • -acodec pcm_s16le:用無損 16 bit PCM 編碼
  • -ar 44100:采樣率 44100 Hz
  • -ac 2:立體聲
  • output.wav:輸出文件名

用這種方式錄制時(shí),你只要在瀏覽器里正常播放網(wǎng)站音頻,ffmpeg 就會(huì)把所有系統(tǒng)輸出捕獲到 output.wav 里,包括目標(biāo)網(wǎng)站的聲音和其它系統(tǒng)聲音。

如果你只想錄制一段固定時(shí)長(zhǎng)的內(nèi)容,比如 600 秒,可以加 -t 600 參數(shù):

ffmpeg -f wasapi -i default -acodec pcm_s16le -t 600 output.wav

把時(shí)間設(shè)得稍微長(zhǎng)一點(diǎn),保證音頻在這段時(shí)間內(nèi)能播放完。

4. 用 Python 做一個(gè)簡(jiǎn)單的自動(dòng)錄音腳本

下面給出一個(gè)完整的 Python 腳本示例,用來調(diào)用 ffmpeg 錄制系統(tǒng)音頻。腳本邏輯很簡(jiǎn)單:

  • 從命令行接收錄制時(shí)長(zhǎng)和輸出文件路徑
  • 自動(dòng)構(gòu)造 ffmpeg 命令
  • 在錄制前給你一點(diǎn)時(shí)間去切到瀏覽器并開始播放
  • 錄制結(jié)束后提示完成

腳本兼容 Windows,假設(shè)你已經(jīng)把 ffmpeg 加進(jìn)了環(huán)境變量。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import subprocess
import sys
import time
from pathlib import Path


def build_ffmpeg_cmd(duration_sec: int, output_path: Path, ffmpeg_exe: str = 'ffmpeg'):
    """
    構(gòu)造一個(gè)使用 WASAPI loopback 錄制系統(tǒng)音頻的 ffmpeg 命令
    """
    cmd = [
        ffmpeg_exe,
        '-y',              # 覆蓋已有文件
        '-f', 'wasapi',    # 使用 WASAPI
        '-i', 'default',   # 默認(rèn)播放設(shè)備的 loopback
        '-acodec', 'pcm_s16le',  # 無損 16 bit PCM
        '-ar', '44100',    # 采樣率 44.1kHz
        '-ac', '2',        # 立體聲
    ]

    if duration_sec > 0:
        cmd.extend(['-t', str(duration_sec)])

    cmd.append(str(output_path))
    return cmd


def main():
    print('=== Windows 在線音頻錄制小工具 (基于 ffmpeg) ===')

    if len(sys.argv) < 3:
        print('用法示例:')
        print('  python record_site_audio.py 600 output.wav')
        print('表示錄制 600 秒系統(tǒng)音頻到當(dāng)前目錄的 output.wav')
        sys.exit(1)

    try:
        duration_sec = int(sys.argv[1])
    except ValueError:
        print('參數(shù)錯(cuò)誤: 錄制時(shí)長(zhǎng)必須是整數(shù)秒')
        sys.exit(1)

    output_path = Path(sys.argv[2]).expanduser().resolve()

    # 檢查 ffmpeg 是否存在
    try:
        subprocess.run(['ffmpeg', '-version'], check=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
    except Exception:
        print('無法找到 ffmpeg 可執(zhí)行文件, 請(qǐng)確認(rèn)已安裝并加入 PATH')
        sys.exit(1)

    print(f'計(jì)劃錄制時(shí)長(zhǎng): {duration_sec} 秒')
    print(f'輸出文件路徑: {output_path}')
    print('請(qǐng)確認(rèn):')
    print('  1. 瀏覽器已經(jīng)打開目標(biāo)網(wǎng)站頁面')
    print('  2. 系統(tǒng)默認(rèn)播放設(shè)備就是你當(dāng)前在聽的那一路 (耳機(jī) / 揚(yáng)聲器)')
    print('  3. 錄制過程中不要隨意切換輸出設(shè)備')

    # 給使用者幾秒鐘時(shí)間去切換到瀏覽器開始播放
    for i in range(5, 0, -1):
        print(f'{i} 秒后開始錄制, 請(qǐng)?jiān)跒g覽器里點(diǎn)擊播放...')
        time.sleep(1)

    cmd = build_ffmpeg_cmd(duration_sec, output_path)
    print('\n即將執(zhí)行的 ffmpeg 命令:')
    print(' '.join(cmd))
    print('\n開始錄制, 按 Ctrl+C 可提前停止...\n')

    try:
        subprocess.run(cmd, check=True)
        print('\n錄制完成!')
        print(f'文件已保存到: {output_path}')
    except KeyboardInterrupt:
        print('\n檢測(cè)到用戶中斷, 已嘗試停止 ffmpeg 進(jìn)程')
    except subprocess.CalledProcessError as e:
        print(f'\nffmpeg 運(yùn)行失敗, 返回碼: {e.returncode}')


if __name__ == '__main__':
    main()

使用方法舉例:

python record_site_audio.py 900 D:\recordings\course1.wav

在你按下回車之后,腳本會(huì)倒數(shù)幾秒,給你時(shí)間切到瀏覽器里點(diǎn)擊播放在線音頻。之后 ffmpeg 會(huì)通過 WASAPI loopback 捕獲默認(rèn)輸出設(shè)備的聲音,直到錄滿設(shè)定的時(shí)長(zhǎng)。

你也可以稍微改造一下腳本,讓它在錄完以后再調(diào)用一次 ffmpegwav 轉(zhuǎn)成 mp3

ffmpeg -i input.wav -acodec libmp3lame -b:a 192k output.mp3

Python 包一層的好處,是你可以很容易做定時(shí)任務(wù)、循環(huán)錄制等自動(dòng)化操作,比如每天晚上七點(diǎn)自動(dòng)錄某個(gè)網(wǎng)站的在線講座。


五、常見問題排查與一些進(jìn)階技巧

在實(shí)際使用中,最容易踩坑的地方集中在設(shè)備選擇和采樣率匹配兩個(gè)方向,再加上一些版權(quán)和瀏覽器特性方面的限制。

1. 錄出來是靜音或者只有底噪

典型原因包括:

  • 錄音設(shè)備選成了麥克風(fēng),而不是 Stereo Mixloopback
  • 瀏覽器輸出到 藍(lán)牙USB 耳機(jī),而錄音設(shè)備卻對(duì)著筆記本內(nèi)建揚(yáng)聲器的 loopback
  • 網(wǎng)站本身用了類似 DRM 的加密回放方案,導(dǎo)致音頻路徑和普通輸出不同

Audacity 場(chǎng)景下,官方教程也提醒,使用 WASAPI 回環(huán)錄制時(shí),要確保音頻已經(jīng)在播放,完全靜音時(shí)有些設(shè)備會(huì)讓錄音端收到的只是靜默數(shù)據(jù)。(support.audacityteam.org)

ffmpeg 場(chǎng)景下,可以先用 -t 10 錄一小段,配合 -af volumedetect 等濾鏡看看電平是否正常,如果完全為零,就要檢查設(shè)備選擇是否正確。(Super User)

2. 找不到 WASAPI loopback 設(shè)備怎么辦

在一些老機(jī)器或特殊聲卡驅(qū)動(dòng)環(huán)境下,WASAPI loopback 的兼容性不太理想,或者軟件里看不到對(duì)應(yīng)選項(xiàng)。這個(gè)時(shí)候可以考慮:

  • Windows 聲音設(shè)置里,把隱藏的錄音設(shè)備全部顯示出來,看看有沒有 Stereo Mix 或類似條目;
  • 更新聲卡驅(qū)動(dòng),有的廠商在新版驅(qū)動(dòng)里重新提供了環(huán)回輸入;
  • 使用虛擬聲卡工具,比如 Virtual Audio CaptureVB-Cable,讓它充當(dāng)錄音軟件看得見的 loopback 源。(Super User)

虛擬聲卡的工作方式大致是:在系統(tǒng)里創(chuàng)建一個(gè)虛擬輸出設(shè)備和一個(gè)虛擬輸入設(shè)備,你讓瀏覽器把聲音輸出到虛擬輸出,虛擬驅(qū)動(dòng)把這份數(shù)據(jù)原封不動(dòng)送到虛擬輸入,錄音軟件就可以在這個(gè)輸入上抓到純數(shù)字的系統(tǒng)音頻。

3. 只想錄網(wǎng)站聲音,不想錄其它應(yīng)用的聲音

這個(gè)需求用 OBSApplication Audio Capture 做起來最自然,因?yàn)樗梢灾付ň唧w進(jìn)程的音頻流,比如專門抓 chrome.exe 的聲音。(OBS Studio)

如果你堅(jiān)持用 Audacityffmpeg,可以采取折中的辦法:

  • Windows 的音量混合器里,把除了瀏覽器之外的所有應(yīng)用音量調(diào)成 0;
  • 在錄制期間盡量不要觸發(fā)其它系統(tǒng)聲音,比如關(guān)閉消息提示音;
  • 對(duì)于 ffmpeg,也可以配合系統(tǒng)設(shè)置,把默認(rèn)輸出設(shè)備暫時(shí)切換成一個(gè)只給瀏覽器用的虛擬設(shè)備。

4. 瀏覽器標(biāo)簽靜音、系統(tǒng)快捷鍵與錄音的關(guān)系

很多人會(huì)習(xí)慣性用瀏覽器標(biāo)簽上的靜音按鈕,或者用多媒體鍵盤上的靜音鍵來控制音量。要注意:

  • 靜音標(biāo)簽頁會(huì)讓那一路音頻在系統(tǒng)里變成真正的靜音流,loopback 錄制到的也就只剩下靜寂;
  • 用系統(tǒng)靜音快捷鍵把整個(gè)輸出設(shè)備靜音時(shí),WASAPI loopback 通常也會(huì)跟著變成靜音;
  • 更穩(wěn)妥的做法是控制音量大小,而不是靜音本身,把不想錄的應(yīng)用音量調(diào) 0,保留目標(biāo)網(wǎng)站的音量。

5. 關(guān)于版權(quán)和網(wǎng)站服務(wù)條款

再多說一句法律層面的事情。很多網(wǎng)站的服務(wù)條款都不鼓勵(lì)用戶對(duì)流媒體內(nèi)容進(jìn)行抓取與再分發(fā),一些支持文檔明確提到,如果要錄制類似 YouTube 的內(nèi)容,應(yīng)該在獲得版權(quán)方許可的前提下進(jìn)行,有時(shí)候甚至更推薦直接下載合法提供的文件而不是通過錄制來繞開限制。(How-To Geek)

從工程實(shí)踐的角度講,這篇文章討論的都是技術(shù)手段本身,實(shí)際使用時(shí)需要你結(jié)合當(dāng)?shù)胤珊途W(wǎng)站條款自行判斷,用在學(xué)習(xí)、備份、自我筆記等合理范圍內(nèi)會(huì)更加穩(wěn)妥。


六、結(jié)語:給你一個(gè)簡(jiǎn)單的選擇建議

把上面這幾種方案合在一起,可以給你一個(gè)非常直接的決策指南:

  • 如果你想要圖形界面、順手的剪輯功能,又不介意多開一個(gè)軟件輔助錄音,Audacity + Windows WASAPI loopback 會(huì)非常合適,而且設(shè)置一次之后幾乎可以當(dāng)錄音機(jī)用。
  • 如果你本來就經(jīng)常用 OBS Studio 做錄屏,希望精確控制只錄瀏覽器的聲音,那么用 Application Audio Capture 抓取目標(biāo)網(wǎng)站進(jìn)程,再在輸出里配置音頻軌,會(huì)非常清爽。
  • 如果你偏愛命令行和自動(dòng)化,或者想做定時(shí)錄音、批處理,那就把 ffmpeg 和本文給出的 Python 小腳本結(jié)合起來,用 WASAPI loopback 抓系統(tǒng)輸出,會(huì)比手工操作省事得多。

你現(xiàn)在用的是一臺(tái) Windows 筆記本電腦,只要按照文中的步驟配置好音頻路徑,從瀏覽器播放網(wǎng)站上的在線音頻,再用上面任意一種工具錄制,就能穩(wěn)定實(shí)現(xiàn)邊播邊錄,把在線聲音變成一個(gè)可以隨身聽、可以剪輯、可以歸檔的本地音頻文件。

如果你愿意,后面還可以在這個(gè)基礎(chǔ)上玩得更深一點(diǎn),比如用 Python 調(diào)用 speech to text 服務(wù),把錄下來的課程音頻自動(dòng)轉(zhuǎn)成文字筆記,或者結(jié)合你熟悉的編程技術(shù)做一個(gè)自己的小型 播客管理器。這就已經(jīng)超出錄音本身,變成了一個(gè)很有意思的個(gè)人項(xiàng)目了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容