【问题标题】:Dynamic and gapless playlist of videos动态且无缝的视频播放列表
【发布时间】:2012-04-07 21:02:01
【问题描述】:

我想在一个由较小视频的动态列表组成的网站上展示一个视频。 例如,视频将包含 10 个较小的视频(1、2、3、4...),每个视频都可能不同(1A、1B、1C、1D... 2A、2B、2C... 3A)。所以结果将是 1C-2B-3F-4A...

正如您想象的那样,预生成所有可能的组合将涉及创建数千个组合,因此我们的想法是保持动态。关于如何做到这一点的最佳工具/语言有什么想法吗?

重要的是他们之间没有差距,这样他们才能感觉像一个人。

我正在考虑的选项: - Flash (AS3) 上的预加载电影 - 在 HTML5(和一些 JS)上预加载视频元素 - 使用 Youtube 的 API(使用他们的带宽) - 以上任何一种都带有一些速度感知缓存

【问题讨论】:

  • 我很想看到 HTML5 视频无缝播放的解决方案,但到目前为止还没有运气......

标签: javascript actionscript-3 html video


【解决方案1】:

我建议使用 Flash 进行流式传输。没有做预缓存,所以传输的数据只是显示给用户的数据,在消费方面非常有效。

我玩过 Flash 流式传输,您尝试做的事情并不牵强,也不需要大量工作。可以很简单,只需给几个stream.play2() commands 和一个APPEND transition

如果您是新手,这里有一篇不错的介绍性文章:http://www.adobe.com/devnet/flash/articles/video_playlist.html。此外,这些示例可以让您快速入门并了解用户体验是否能够满足您的需求。

【讨论】:

  • 但这是否意味着videoA和videoB之间绝对没有跳转?这就是我想做的。无缝播放,感觉就像一段独特的视频。
  • 我知道这就是您想要的,但是,有很多变量需要考虑。理论上,是的。缓冲区相互交织,当第一个视频播放最后 5 秒时,第二个视频被缓冲,因此可以无缝开始。
  • 顺便说一下,play2 函数的描述(我的第一个链接)指出:Switches seamlessly between files with multiple bit rates and allows a NetStream to resume when a connection is dropped and reconnected.
  • 我也尝试过使用 FMS 的 play2,并且使用“播放列表”(在开头附加一些视频)效果非常好(真正的无缝过渡)。在播放时从一个流任意切换到另一个流被证明不太可靠,但我仍然对结果感到非常惊讶(即使 NetStreamPlayOptions 和缓冲时间需要大量“随机”调整,直到你得到一个像样的设置)。
  • 您还可以使用更简单的带有多个 NetStreams/NetConnections 的 NetStream.play() 来预缓冲视频,只需在发出播放后暂停视频即可:)
【解决方案2】:

我遇到了类似的问题,但我的播放是由用户触发的。无论哪种方式,为我解决问题的是canplaythrough 事件。它可能会对您有所帮助:

function swapVideos(source, target) {
    target.get(0).play();
    target.bind('canplaythrough', function() {
        target.offset({
            top : videoTop,
            left : videoLeft
        });
        source.offset({
            top : 20080,
            left : 20920
        });
        source.get(0).pause();
        var aux = topVideo;
        topVideo = bottomVideo;
        bottomVideo = aux;

    target.unbind('canplaytrough');
    });
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-04
    • 1970-01-01
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-09
    • 1970-01-01
    相关资源
    最近更新 更多