php+nginx+ffmpeg 完成后台截图转码功能

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengyi_L/article/details/46350449

因为有项目涉及到用户上传视频,并且在后台转码,截图功能。早上各种查找资料最后决定用于ffmpeg来实现此功能。

在功能完成之前遇到如下问题,写上解决方法以供大家或者自己之后参考

1.安装问题,网上教程要求首先从网站上下载ffmpeg.tar包以及yasm.tar包。并对这些文件进行解压,编译,安装。具体命令如下:

#wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
#tar xzvf yasm-1.2.0.tar.gz
#cd yasm-1.2.0
#./configure
#make
#make instal

# wget http://ffmpeg.org/releases/ffmpeg-2.0.1.tar.gz
#tar xvfj ffmpeg-2.0.1.tar.gz
#cd ffmpeg-2.0.1
#./configure
#make
#make install


2.文件提交问题:我用的是uploadify插件上传的视频,上传过程中在服务端的$_FILE数组里找不到除了文件名之外的参数,查阅资料和查看phpinfo后知道是文件上传大小限制问题,修改php.ini 的 post_max_size 和 upload_max_filesize之后重启nginx : nginx -s restart 发现phpinfo中的直并没有改变。继续查资料  = = 。原来修改了php.ini后,需要重新启动php-fpm进程才能将更改应用生效。于是参照教程进行了如下操作:

nginx -s stop
kill -INT `cat /usr/local/php/var/run/php-fpm.pid
/usr/local/php/sbin/php-fpm
start nginx`
如果只修改了nginx的conf文件的话可以通过 nginx -s reload 直接重启


3.在lunix下执行ffmpeg命令能完成视频转换以及截图工作,但用php的exec执行相同的命令就是不行,最终查出原因是因为目录写权限问题,晕死。chmod 777解决。


菜鸟日记大神勿喷,每天成长一点点


上一篇:php爬虫选择器-来自phpspider


下一篇:前端小技巧-JS篇