我正在编写一个 Rails 3.2.6 应用程序,我想在其中显示实时流媒体 HTML5 视频以及点播视频。我正在使用 Evolv 软件创建实时 HTML5 视频片段,然后使用 AFP 将它们发送到运行最新版本 Lion Server 的 Mac Mini 服务器。创建一个播放列表,它将在其中播放 HTML5 视频片段。我的计划是在没有直播的时候播放之前录制的直播视频。
在其他网站(非 Rails)的视频标签中,我可以使用整个 url 路径访问播放列表。为了获得我的视频页面的格式,我在我的 Rails 应用程序中添加了以下视频标签。当我引用播放 HTML5 视频片段的播放列表时,视频片段按预期播放。
<video autobuffer="autobuffer" autoplay="autoplay" width="480" height="320"
controls="controls" src="http://www.mywebaddress.com/Live-Segments/playlist.m3u8"
</video>
我想在我的 Rails 应用程序中复制这个逻辑。但是我不确定如何做到这一点。
我已阅读 3.2.6 API 信息,Rails 将在 /public/videos 中搜索视频。我在我的 public/videos 文件夹中创建了一个 live-segments(未大写)文件夹,其中包含相同的播放列表和 HTML5 视频片段,当我从其他网站引用播放列表时,这些片段可以正常播放。
我使用 HTML5 代码尝试了以下示例,但没有一个找到视频播放列表。它确实显示带有海报的视频播放器。
<video autobuffer="autobuffer" autoplay="autoplay" width="480" height="320"
controls="controls" src="public/videos/live-segments/playlist.m3u8"
</video>
<video autobuffer="autobuffer" autoplay="autoplay" width="480" height="320"
controls="controls" src="live-segments/playlist.m3u8"
</video>
我尝试了以下 Ruby 版本的视频标签。它根本什么都没有显示。
<% video_tag("live-segments/playlist.m3u8", :controls => true, :autobuffer => true, :autoplay => true, :size => "480x320") %>
<% video_tag("/public/videos/live-segments/playlist.m3u8", :controls => true, :autobuffer => true, :autoplay => true, :size => "480x320") %>
我希望有一个简单的解决方法。希望我不会尝试做 Rails 不支持的事情。我在网上找到的大多数帖子都没有回复。那些有回应的人与我试图完成的任务无关,因为我对在网站中包含视频(而不是使用 YouTube 小部件)知之甚少。
任何帮助将不胜感激。