【发布时间】:2015-01-23 10:56:55
【问题描述】:
我有一个用 VB.net 编写的 Youtube 播放器,我目前依赖 Youtube SWF URL www.youtube.com/v/{Video-id},但我发现这会导致速度问题。所以我正在考虑将流直接传递到 Windows Media Player。
我一直在查看 VLC 源代码以了解它们如何使流程自动化,但无济于事。
那么 VLC 在他们的代码中自动化了哪些流程?
【问题讨论】:
我有一个用 VB.net 编写的 Youtube 播放器,我目前依赖 Youtube SWF URL www.youtube.com/v/{Video-id},但我发现这会导致速度问题。所以我正在考虑将流直接传递到 Windows Media Player。
我一直在查看 VLC 源代码以了解它们如何使流程自动化,但无济于事。
那么 VLC 在他们的代码中自动化了哪些流程?
【问题讨论】:
VLC 使用 LUA 脚本来查找实际的流式 MRL。
如果您查看 VLC 源代码,脚本位于此处:
vlc/share/lua/playlist/youtube.lua
此脚本会在 YouTube“观看”URL 处抓取 HTML 页面以查找特定元素。
这当然很脆弱,因为 YouTube 可以(并且不时地)改变他们的页面布局。发生这种情况时,您需要在有人对 LUA 脚本提供修复后等待 VLC 的新版本。
【讨论】: