我校推荐学生在这个短期课程平台上观看讲座。要访问它们,必须输入某些凭据。视频作为 GoolPlayer 嵌入,使用 Flowplayer.js 脚本,并且不提供下载视频的选项。
在 Chrome 中观察网络,您可以发现视频和音频块被分成了多个片段,请求 url 如下:
我尝试了很多 Chrome 和 Firefox 扩展来尝试下载视频,但没有任何运气。还尝试了 github 上的一些 M4S 脚本。
我发现做到这一点的最好的事情是 InviDownloader,一个开源程序,但是,由于文件名的原因,它似乎无法抓取所有段,它以随机顺序更改,因此该程序只能抓取第一个和最后一张。
关于如何下载视频有什么想法或想法吗?
要从 gool 下载视频,您需要获取首次加载视频时传输给您的 mpd 文件。该文件负责生成您在加载更多视频时看到的 m4s 文件的链接。
获取文件后,您需要手动编辑它,并将用于获取 mpd 文件的基本 url 添加到 mpd 文件内的每个链接。
例如这个链接
chunk_ctvideo_rid$RepresentationID$_cs$Time$_w113767869_pd60000_qdElEPTU4NTcmdmlkZW9WaWV3PTEmYWNjZXNzVG9rZW49N2VhMzg5ZjRhNzJmNGFiMWE2NWU2NTI3Y2RjNTdhZTE=_mpd.m4s
将成为
https://5a153f939af4b.streamlock.net/bagrut/36808/chunk_ctvideo_rid$RepresentationID$_cs$Time$_w113767869_pd60000_qdElEPTU4NTcmdmlkZW9WaWV3PTEmYWNjZXNzVG9rZW49N2VhMzg5ZjRhNzJmNGFiMWE2NWU2NTI3Y2RjNTdhZTE=_mpd.m4s
要播放它,您可以使用
vlc
。
例如:vlc manifest.mpd
要将 mpd 文件编码为视频文件,您可以使用
cvlc
或 ffmpeg
(注意,ffmpeg 需要使用一些预构建中可能未启用的功能进行编译。[来自 nixpkgs 的 ffmpeg-full 对我有用] )
示例:
cvlc manifest.mpd --sout '#transcode{vcodec=h264,acodec=mp3}:std{access=file,mux=mp4,dst=output.mp4}' --play-and-exit
ffmpeg -i manifest.mpd -c copy output.mp4
您可以通过流检测器
https://addons.mozilla.org/en-US/firefox/addon/hls-stream-detector/
检测 mpd 链接,然后使用 youtube-dl
下载视频 在那里阅读更多相关信息 https://forum.videohelp.com/threads/388942-How-do-I-download-m4s-segment-videos-and-combine-them-to-mp4-format
我也在尝试从gool下载视频,你找到解决方案了吗?