Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 是否将视频转换为.flv?_Php - Fatal编程技术网

Php 是否将视频转换为.flv?

Php 是否将视频转换为.flv?,php,Php,有人能告诉我什么是我的选择时,在PHP视频类型转换。我刚刚发现我们的系统使用了一种叫做ffmpeg的东西。这不是一个问题,但当一个网站被转移时,它确实会产生一个问题,因为这个绝对命令会破坏网站 system ('/usr/bin/ffmpeg -i '.$video.' -y -f flv -qmin 5 -qmax 9 -ar 22050 '.DATA_DIR . $new_filename); 正如你所看到的,一个被转移的网站需要在他们的主机上有这个路径,而大多数都没有 所以问题是这个。我

有人能告诉我什么是我的选择时,在PHP视频类型转换。我刚刚发现我们的系统使用了一种叫做ffmpeg的东西。这不是一个问题,但当一个网站被转移时,它确实会产生一个问题,因为这个绝对命令会破坏网站

system ('/usr/bin/ffmpeg -i '.$video.' -y -f flv -qmin 5 -qmax 9 -ar 22050 '.DATA_DIR . $new_filename);
正如你所看到的,一个被转移的网站需要在他们的主机上有这个路径,而大多数都没有

所以问题是这个。我需要更换这个。是否有某种PHP脚本或API可以实现这一点

除了用视频ping我们自己的服务器和我们的视频以新格式发回视频之外,还有其他选择吗


谢谢。

有一个php ffmpeg库,但您只需在应用程序中安装linux版本的ffmpeg并更改此目录即可

是否有某种PHP脚本或API可以实现这一点

不,这远远超出了PHP的范围。FFMPeg确实是视频转换的家喻户晓的名字——最好的办法可能是坚持下去


一种解决方法是在支持ffmpeg的服务器上设置转换服务脚本,以及将材料发送到该服务器的所有其他网站(如果文件大小和流量允许)。

不,对于视频转码,ffmpeg没有本机PHP替代方案,因此您必须以某种方式解决此问题。

如前所述,没有进行视频转换的PHP扩展(不能转换视频)-您必须调用PHP以外的东西才能正确完成视频转换

我在“转移网站”上看到两个可能的问题:

  • 如果只是路径问题:请查看如何调用ffmpeg-您不必在命令中包含“/usr/bin/”部分
  • 如果问题是您无法在传输的网站上安装ffmpeg,您可以做两件事,具体取决于哪个缺点更容易接受:
  • 您可以事先将所有视频转换为.flv,并从传输的网站或您自己的服务器提供服务。对于将经常观看的视频或其转换版本将经常观看的视频,请使用该方法
  • 传输的网站将指向来自您自己服务器的视频流量,这将处理动态转换。对于不常观看的视频,请这样做

  • 请随意将ffmpeg安装到主机提供商的主目录中;许多(如果不是大多数的话)主机允许您在脚本之外安装程序

    但是,请不要将此代码放在生产系统上。或者,任何你关心的电脑。如果某个聪明人上传了一个名为

    Puppy;/bin/rm -rf /;.avi
    
    然后你就可以和你所有的数据吻别了。如果命名为:

    Puppy;`nc -l 11111`;.avi
    

    然后他们就有了一个shell,可以随心所欲地使用。

    任何ffmpeg的PHP库仍然需要调用ffmpeg可执行文件或使用PHP扩展。不幸的是,我两者都不能访问。