在Rails中访问视频文件的问题3.2.6应用程序

时间:2012-07-18 17:35:16

标签: ruby-on-rails html5-video

我正在编写一个Rails 3.2.6应用程序,我希望在某些时候显示实时流媒体HTML5视频以及点播视频。我使用Evolv软件创建实时HTML5视频片段,然后使用AFP将它们发送到运行最新版Lion Server的Mac Mini服务器。创建播放列表,播放HTML5视频片段。我的计划是在没有直播的时间内显示之前录制的直播视频。

在我在其他网站(非Rails)的视频标签中,我可以使用整个网址路径访问播放列表。只是为了获取我的视频页面的格式,我在我的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中搜索视频。我在我的公共/视频文件夹中创建了一个实时片段(非大写)文件夹,其中包含相同的播放列表和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小工具之外我还没理解在网站中包含视频。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

经过更多的研究,我能够让html5视频标签正常工作。我将代码更改为:

<video autobuffer="autobuffer" autoplay="autoplay" width="480" height="320" controls="controls" src="/videos/live-segments/playlist.m3u8"</video>

但是我无法使用Ruby on Rails视频标签。我使用了与原始问题中提到的语法相同的语法,但改为使用/videos/live-segments/playlist.m3u8。我什么都没有。甚至没有海报出现。下面的标题现在是该部分的第一行。

此时我将使用HTML5视频标记。