【问题标题】:Video not working on html5 media player in Codeigniter视频无法在 Codeigniter 中的 html5 媒体播放器上运行
【发布时间】:2015-06-15 09:48:12
【问题描述】:

我正在尝试在使用 codeigniter 框架创建的 Web 应用程序中使用 html5 媒体播放器播放视频。这是我目前所拥有的:

      public function view($settings, Screen $screen)
      {
             $view = "<video width='100%'' height='100%'' controls>
                         <source src='application/views/video/Arrow.mp4' type='video/mp4'>
                         Your browser does not support the video tag.
                      </video>";
             return $view;
      }
}

我尝试将视频文件放在不同的目录中,我尝试为文件类型添加 mime。

【问题讨论】:

    标签: php html codeigniter video web-applications


    【解决方案1】:

    您需要将视频放在application 文件夹之外。

    在 MVC 架构中,modelsviews 不应被用户直接访问,controller 除外。

    在您的项目根目录中创建一个名为videos 的文件夹,将Arrow.mp4 文件放入该文件夹并更改此代码块以获得结果。

    function view ( $settings, $screen )
    {
        $view = "<video width='100%' height='100%' controls>
                     <source src='videos/Arrow.mp4' type='video/mp4'>
                     Your browser does not support the video tag.
                 </video>";
        echo $view;
    }
    

    【讨论】:

    • 您面临什么问题?能详细点吗?
    • 播放器本身出现在页面上,但视频不播放。控件显示为灰色。此 Web 应用程序供内部使用,我在使用此应用程序的所有机器上都使用 chrome 作为 Web 浏览器。我知道 chrome 能够播放该文件,因为我已经使用一个单独的网页进行了测试,该网页仅包含 html5 媒体播放器,并且工作正常。
    • 在你的页面上右击,点击view source,查看是否可以点击src旁边的链接。
    • 如果我在新选项卡中打开 src 旁边的链接,它只会给我一条 404 消息。它正在查看链接,就好像它在视图目录中一样。我需要把它放在那里吗?
    • &lt;source src='videos/Arrow.mp4' type='video/mp4'&gt;更改为&lt;source src='{base_url()}videos/Arrow.mp4' type='video/mp4'&gt;
    【解决方案2】:
    function view ($settings, $screen )
    {
      $url = base_url()
        $view = "<video width='100%' height='100%' controls>
                    <source src=".$url."'assets/video/Arrow.mp4' type='video/mp4'>
                     Your browser does not support the video tag.</video>";
        return $view;
    }
    

    将所有视频放在应用程序文件夹之外。并回调它。

    所以你的文件夹结构会改变

    1. 应用
    2. 资产
      • 视频
      • CSS
      • JS
      • 图片
    3. 系统
    4. index.php
    5. .htacess

    补充说明:

    在 config.php 中

    $config['base_url'] = '';
    $config['index_page'] = '';
    

    【讨论】:

    • 我刚刚按照你的建议试过了,但是还是不行
    • 检查return $view;
    • 我知道return $view 正在工作,因为媒体播放器显示在页面上。它只是没有播放的视频文件。 (这就是你要问的吗?)
    • 没有控制器,您可以在视图中播放您的视频。 &lt;video width='100%' height='100%' controls&gt;&lt;source src="&lt;?php echo base_url(); ?&gt;'assets/video/Arrow.mp4" type='video/mp4'&gt;Your browser does not support the video tag.&lt;/video&gt;
    • 我试过&lt;source src="&lt;?php echo base_url(); ?&gt;'assets/video/Arrow.mp4" type='video/mp4'&gt;,但它根本不起作用,没有媒体播放器,什么都没有。
    【解决方案3】:

    我要做的是在项目根目录中创建一个 assets/video/ 目录。

    <video controls loop>
    <source src="assets/video/videofile.mp4" type="video/mp4">
    Your browser does not support HTML5 video.
    </video>
    

    专门将资产文件夹引用为“资产”,而不是引用为C:/xampp/htdocs/projectfolder/assets/video/"。如果我引用完整路径,它不起作用。

    【讨论】:

      猜你喜欢
      • 2014-09-27
      • 2017-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多