繁体   English   中英

ffmpeg-php权限在本地主机上被拒绝

[英]ffmpeg-php permission denied on localhost

我对php很陌生。 我最近在Mac上安装了php,并且尝试设置ffmpeg-php以将各种视频转换为所需的flv或其他格式。 我使用了本教程FFmpeg Mac安装,并且使ffmpeg在终端上工作,但是,当我尝试使用php对电影进行编码时,出现错误。 在我的Apache error_log文件中,flv文件旁边显示权限被拒绝(如下所示)。

FFmpeg版本0.6,版权所有(c)2000-2010 FFmpeg开发人员
建于2010年12月30日08:36:24使用gcc 4.2.1(Apple Inc. build 5646)(第1点)配置:--prefix = / usr / local --enable-shared --disable-mmx --enable- libmp3lame --enable-gpl --enable-libfaad --enable-zlib --enable-libvorbis --enable-libfaac --enable-nonfree

libavutil 50.15。 1 / 50.15。 1个
libavcodec 52.72。 2 / 52.72。 2
libavformat 52.64。 2 / 52.64。 2
libavdevice 52. 2. 0 / 52. 2. 0
libswscale 0.11。 0 / 0.11。 0
似乎流1编解码器的帧速率与容器的帧速率不同:1200.00(1200/1)-> 30.00(30/1)
从'/Users/myApple/Sites/AdHere/test.mov'输入#0,mov,mp4,m4a,3gp,3g2,mj2:
元数据:
major_brand:qt
minor_version:537199360
compatible_brands:qt
持续时间:00:00:02.04,开始:0.000000,比特率:1109 kb / s
流#0.0(eng):音频:aac,44100 Hz,立体声,s16、97 kb / s
流#0.1(eng):视频:h264,yuv420p,640x480、1027 kb / s,30.15 fps,30 tbr,600 tbn,1200 tbc
/Users/myApple/Sites/AdHere/movteststuff.flv:权限被拒绝

我不知道是什么问题。 我正在使用以下php代码:

<?php 
extension_loaded('ffmpeg') or die('Error in loading ffmpeg');

$ffmpegInstance = new ffmpeg_movie('test.AVI');
echo "getDuration: " . $ffmpegInstance->getDuration() .
"<br>getFrameCount: " . $ffmpegInstance->getFrameCount() .
"<br>getFrameRate: " . $ffmpegInstance->getFrameRate() .
"<br>getFilename: " . $ffmpegInstance->getFilename() .
"<br>getComment: " . $ffmpegInstance->getComment() .
"<br>getTitle: " . $ffmpegInstance->getTitle() .
"<br>getAuthor: " . $ffmpegInstance->getAuthor() .
"<br>getCopyright: " . $ffmpegInstance->getCopyright() .
"<br>getArtist: " . $ffmpegInstance->getArtist() .
"<br>getGenre: " . $ffmpegInstance->getGenre() .
"<br>getTrackNumber: " . $ffmpegInstance->getTrackNumber() .
"<br>getYear: " . $ffmpegInstance->getYear() .
"<br>getFrameHeight: " . $ffmpegInstance->getFrameHeight() .
"<br>getFrameWidth: " . $ffmpegInstance->getFrameWidth() .
"<br>getPixelFormat: " . $ffmpegInstance->getPixelFormat() .
"<br>getBitRate: " . $ffmpegInstance->getBitRate() .
"<br>getVideoBitRate: " . $ffmpegInstance->getVideoBitRate() .
"<br>getAudioBitRate: " . $ffmpegInstance->getAudioBitRate() .
"<br>getAudioSampleRate: " . $ffmpegInstance->getAudioSampleRate() .
"<br>getVideoCodec: " . $ffmpegInstance->getVideoCodec() .
"<br>getAudioCodec: " . $ffmpegInstance->getAudioCodec() .
"<br>getAudioChannels: " . $ffmpegInstance->getAudioChannels() .
"<br>hasAudio: " . $ffmpegInstance->hasAudio();

exec('ffmpeg -i /Users/myApple/Sites/AdHere/test.mov /Users/myApple/Sites/AdHere/movteststuff.flv');



?>

我能够看到各种参数,例如文件名,frameheight,framewidth,这使我相信ffmpeg-php可以正常工作,但是也许我只是在exec()命令中做错了什么。 有人有想法么。 我已经为设置ffmpeg而苦苦挣扎了一段时间。

谢谢!

-乔恩

只是权限问题...

将ffmpeg设为777权限。

最有可能的是,运行PHP的用户没有访问该目录的权限。 检查目标目录的权限,并确保它与执行PHP脚本的任何用户相匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM