提问人:Ijaz Ahmed 提问时间:7/16/2023 更新时间:7/16/2023 访问量:86
使用 Puppeteersharp 实现 fake-audio-capture 以使用音频文件作为我的麦克风输入
using Puppeteersharp to implement fake-audio-capture to use an audio file as my microphone input
问:
我想使用 Puppeteersharp 来实现 --fake-audio-capture 以使用音频文件作为我的麦克风输入。
我希望它每当它激活麦克风时,它都会从该音频文件中获取该音频文件(本地保存)作为输入。
我正在使用 Chrome 和 PuppeteerSharp,我愿意降级到不同版本的 chromium 或 Puppeteersharp。
我使用以下代码进行了尝试,stackoverflow 上的帖子都没有正确回答:
using System;
using System.IO;
using System.Threading.Tasks;
using PuppeteerSharp;
namespace PuppeteerProgram
{
class Program
{
static async Task Main(string[] args)
{
var launchOptions = new LaunchOptions
{
ExecutablePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe",
Args = new[] {
"--use-fake-ui-for-media-stream",
"--use-fake-device-for-media-stream",
"--use-file-for-fake-audio-capture='V:\\puppeteerprogram\\voice.wav'",
"--allow-file-access",
"--mute-audio"
}
};
var browserWSEndpoint = "ws://localhost:9223/devtools/browser/f8564ed5-23e5-4bea-a058-c646b56c575f";
var options = new ConnectOptions
{
BrowserWSEndpoint = browserWSEndpoint
};
var browser = await Puppeteer.LaunchAsync(launchOptions);
var pages = await browser.PagesAsync();
var page = pages[0];
Console.WriteLine("Clicking on microphone button...");
await page.ClickAsync("div.record-btn"); // clicking record btn on some website
Console.WriteLine("Stop Recording...");
await page.ClickAsync("div.record-btn"); // clicking record btn again to stop recording
Console.WriteLine("Voice recorded successfully.");
Console.WriteLine("Waiting for 10 seconds...");
await Task.Delay(10000);
//await browser.CloseAsync(); // commented since I don't want the browser to close
}
}
}
任何帮助将不胜感激。谢谢
答: 暂无答案
评论