我正在使用Carrierwave上传视频文件,并且autoplay
的{{1}}和loop
都设置为true
。最初上传视频后,该视频会自动播放,但刷新页面后只会显示视频的第一帧。
video_tag的来源:
video_tag
我也在使用Nginx和Unicorn。谢谢!
答案 0 :(得分:1)
只需添加
已静音:“已静音”
在video_tag中
video_tag post.video_url.to_s, autoplay: true, loop: true, muted: 'muted', class: :standard_post_video
查看文档:{{3}}
Chrome的自动播放政策很简单:
在以下情况下允许自动播放声音
:在移动设备上,用户已将该网站添加到主屏幕。
顶级框架可以将自动播放权限委派给其iframe,以允许自动播放声音。
答案 1 :(得分:0)
在我的muted: "muted"
中添加video_tag
可以检查视频是否正在播放,然后在必要时致电play()
。这解决了我的问题:
<%= video_tag post.video_url.to_s, autoplay: true, loop: true, muted: "muted", class: :standard_post_video, id: "standard_post_video_#{post.id}" %>
<script>
var video = $('#video').get(0);
if (video.paused) {
video.play();
}
</script>
提交:https://github.com/ethanwilkins/simplr/commit/4eea13ee610b4744f555cfba3696da6ac492b622