Php 如何从用户上传到我的服务器的视频中获取缩略图?

Php 如何从用户上传到我的服务器的视频中获取缩略图?,php,video,ffmpeg,thumbnails,jwplayer,Php,Video,Ffmpeg,Thumbnails,Jwplayer,我正在开发一个视频共享网站,人们可以上传自己的视频,我希望最新上传的视频显示在索引页上,但不是视频而是缩略图,这样当你点击缩略图时,你就可以进入视频页。你们都知道youtube的索引是如何运行的——这就是我试图模拟的 我读过关于ffmpeg的文章,但在我看来,只有在您的计算机上安装了ffmpeg,它才会起作用。我希望这是一个自动化的过程,但用户不必首先在其pc上安装任何东西。 有没有一种方法可以把它编码?还是我必须使用某种框架或CMS?这个问题可以通过简单地获取ffmpeg宿主()来解决吗? 若


我正在开发一个视频共享网站,人们可以上传自己的视频,我希望最新上传的视频显示在索引页上,但不是视频而是缩略图,这样当你点击缩略图时,你就可以进入视频页。你们都知道youtube的索引是如何运行的——这就是我试图模拟的

我读过关于ffmpeg的文章,但在我看来,只有在您的计算机上安装了ffmpeg,它才会起作用。我希望这是一个自动化的过程,但用户不必首先在其pc上安装任何东西。
有没有一种方法可以把它编码?还是我必须使用某种框架或CMS?这个问题可以通过简单地获取ffmpeg宿主()来解决吗?
若在php中并没有手动方式来实现这一点,那个么有并没有办法使用python?


仅供参考,我的网站是用php编写的,我使用jwplayer来播放视频
请注意,我想从上传到服务器上的视频中获取缩略图,而不是youtube或vimeo缩略图

我已经解决了这类问题,我确信用户不需要在pc上安装ffmpeg,而是需要安装了ffmpeg的服务器

要从视频创建缩略图,请尝试以下代码

<?php
 $video = 'path/to/video.flv';
 $thumbnail = 'path/to/thumbnail.jpg';
 shell_exec("ffmpeg -i $video -deinterlace -an -ss 1 -t 00:00:01 -r 1 -y -vcodec mjpeg -f mjpeg $thumbnail 2>&1");
 ?>


我觉得你好像误解了什么。ffmpeg需要安装在视频上传到的服务器上。当用户上传视频时,您可能会在数据库中创建一个条目并将文件移动到某个位置。在此过程中,您还可以调用ffmpeg为视频创建缩略图,用户无需安装任何内容。啊,谢谢!有可能在共享主机服务器上安装ffmpeg吗?这完全取决于提供商,但我不会指望它,除非它特别提供。许多共享主机不允许安装ffmpeg。你可以简单地(无需安装)。如果你想搜索视频流而不是抓住第一个“第二个”,只需在
-i
选项之前添加
-ss00:10:00.1
(例如)。