我正在尝试编写一个脚本(用于带有 tampermonkey 的浏览器扩展),它将使用视频播放器功能来寻找时间戳,然后在从该时间戳捕获音频的同时播放视频。
视频元素源是外部的,因此当我尝试设置流时出现 CORS 错误,例如:
let video = document.getElementById("video-player");
let stream = video.captureStream();
我尝试了在其他地方发布的关于从视频源https://stackoverflow.com/a/57088960/10326441获取可读流的解决方案。但是我不明白如何从中获取捕获流,它仍然导致下面显示的第一个错误。示例错误:
Access to fetch at 'https://***.googleusercontent.com/***' from origin 'https://******.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: Redirect is not allowed for a preflight request.
Uncaught DOMException: Failed to execute 'captureStream' on 'HTMLMediaElement': Cannot capture from element with cross-origin data
我的问题是:有没有一种简单的方法可以从视频播放器获取音频流?当我单击我的按钮时,它会正确搜索并播放视频,我只是在努力从中获取音频流,因此我可以将其转换为可以下载到磁盘的 blob。