此包已被废弃,不再维护。未建议替代包。

Yii2视频小部件

资助包维护!
cacko

安装次数: 13

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

类型:yii2-extension

0.1.5 2023-07-18 14:57 UTC

This package is auto-updated.

Last update: 2023-08-18 15:07:39 UTC


README

yii2-widget-video

用于处理视频的Yii2小部件

  • youtube - 视频、播放列表
  • vimeo - 不记得了,可能是两者都支持
  • wistia - 什么都有,是付费垃圾
  • brightcove - 和上面一样
  • twitch - 支持所有功能,直播等显然有限制,只要用常识即可
  • mp4容器 - 只要浏览器支持

它显然依赖于Yii2决定作为默认值的所有垃圾 - Bootshite、jQueer等

演示

https://yii.cacko.net/video/widget 只是一个带有所有选项的表单,因此您可以测试,它看起来很原始。演示站点的源代码在 https://gitlab.com/cacko/yii2-widgets

用法

VideoWidget::widget([
  'url' => 'https://www.youtube.com/watch?v=N4q2kBe82-o',
])

选项

  • url - 必填
  • autoPlay - 自动播放视频。如果使用新的IE(基于Chromium的浏览器) - 您很可能会得到静音视频。脚本将尽力在可能的情况下以声音播放。 请不要使用它,这是一个愚蠢的想法
  • hideContols - 隐藏原生提供者控件,仅显示音量和全屏。通常与startTimestamp结合使用,使非直播流看起来像直播流。基本上没什么用,因为普通人只需打开开发者工具即可删除非触摸事件。
  • startTimestamp - 从何时开始,以秒为单位的Unix时间戳。注意,时间戳来自服务器,但等待发生在客户端浏览器上,因此如果他们的时间有偏差,它也会有偏差。
  • startPosition - 从哪里开始视频,以秒为单位
  • openInModal - 在模态对话框中打开视频
  • loop - 很没有意义的事情,但不管怎样,在视频或播放列表结束后重复视频。
  • placeholderImage - 用视频缩略图替换,如果您想放您的糟糕的标志来提升您的生殖器
  • placeholderEndImage - 视频结束后显示。如果使用loop,则永远不会显示...明白吗?

组合一些选项可能没有意义,再次使用常识。

设置

安装

只需使用composer,好吗?或者最好自己写。

composer require cacko/yii2-widget-video

截图持久化

该扩展将下载的缩略图存储在系统临时文件夹中。如果需要更改,请设置Cacko\Yii2\Widgets\Video\Models\ScreenshotInterface的依赖项。如果您不知道如何操作,请查阅文档 - RTFM

捕获控制器

某些提供商或如果您使用mp4文件,没有截图的API,因此需要通过控制器端点以“笨方法”完成。目前它指向某个地方,如果您想更改它,和上面一样,DI -> Cacko\Yii2\Widgets\Video\Controller\ControllerInterface等等。

Yii::$container->set('Cacko\Yii2\Widgets\Video\Models\ScreenshotInterface', MyJunkPersistanceCrap::class);

提供商凭据

目前只有YouTube和Twitch需要凭据,只需在主应用配置中简单地设置组件定义即可。

    'components' => [

        'youtubeApi' => [
            'class' => 'Cacko\Yii2\Widgets\Video\Components\YouTube\Api',
            'youtubeKey' => 'xxxx',
        ],
        'twitchApi' => [
            'class' => 'Cacko\Yii2\Widgets\Video\Components\Twitch\Api',
            'clientId' => 'xxx',
            'secretId' => 'xxx',
        ]