您的问题不在于上传。问题是转换。如果您没有正确设置 3 个参数,则它不会将文件转换为 FLV,PHPFOX V3 使用的格式。在这里,我将向您解释什么是程序,因为我已经成功完成了。
如果您控制您的服务器,即由您托管,或者您使用 VPS,那么您可以测试您的 FFFMPEG 和 MEMCODER,您需要将这些文件转换为适当的格式,PHPFOX 需要转换和处理您的视频文件。我之前在命令外壳提示符下弄乱了它,使用虚拟文件进行测试。在它工作之后,我在设置管理面板上插入了这些参数。过了一会儿,我让它适应 PHPFOX V3。确保您也启用了 FLVTOOLS。请记住,如果它在您的服务器上的 shell 提示符下不起作用,则无法在 PHPFOX 的设置上起作用。下面列出了我最终提出的设置。另一个问题,该版本 PHPFOX V3 中使用的播放器是 FLOWPLAYER,它只播放 FLV 文件(支持 Flash 的浏览器)并且仅限于使用 Flash 的浏览器。忘记 Android 或 iPhone,除非您使用 PUFFIN 或任何其他支持 Flash 的浏览器。我希望我的设置适用于您的服务器。这实际上取决于您的服务器设置和下面的 3 个实用程序。如果您有任何问题,请告诉我。这是一个棘手的设置,但它可以将播放器更改为 HTML5 格式,因此您不必再弄乱 Flash FLV 文件和格式。请记住,这些参数可能会因安装的实用程序的服务器版本而异。
FLVTOOLS:-U {目的地}
FFMPEG : -i {source} -ar 44100 -vcodec libx264 {destination}
MENCODER:{source} -o {destination} -of lavf -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=800:mbd=2: mv0:trell:v4mv:last_pred=3 -vf scale={width}:{height}
还要确保您的 MP4 格式列在下面的代码中,否则它不会处理您的 MP4 文件。要将该格式(或任何其他格式)包含在可转换格式列表中,在我的版本中,我必须修改以接受 '3gpp' => 'video/mp4' 等蜂窝格式......祝你好运!!
您需要修改的文件位于此处:
//yourdomain/module/video/include/service/video.class.php
class Video_Service_Video extends Phpfox_Service
{
private $_aExt = array(
'mpg' => 'video/mpeg',
'mpeg' => 'video/mpeg',
'wmv' => 'video/x-ms-wmv',
'avi' => 'video/avi',
'mov' => 'video/quicktime',
'flv' => 'video/x-flv',
'mp4' => 'video/mp4',
'3gpp' => 'video/mp4'
);