Захватить вывод FFMPEG
Мне нужно прочитать вывод из ffmpeg, чтобы даже попробовать решениемой вопрос со вчерашнего дня, Это отдельная проблема от моей проблемы, поэтому я сделал новый вопрос.
Как, черт возьми, я могу получить выход изffmpeg -i
команда в PHP?
Это то, что я пытался:
<?PHP
error_reporting(E_ALL);
$src = "/var/videos/video1.wmv";
$command = "/usr/bin/ffmpeg -i " . $src;
echo "<B>",$command,"</B><br/>";
$command = escapeshellcmd($command);
echo "backtick:<br/><pre>";
`$command`;
echo "</pre><br/>system:<br/><pre>";
echo system($command);
echo "</pre><br/>shell_exec:<br/><pre>";
echo shell_exec($command);
echo "</pre><br/>passthru:<br/><pre>";
passthru($command);
echo "</pre><br/>exec:<br/><pre>";
$output = array();
exec($command,$output,$status);
foreach($output AS $o)
{
echo $o , "<br/>";
}
echo "</pre><br/>popen:<br/><pre>";
$handle = popen($command,'r');
echo fread($handle,1048576);
pclose($handle);
echo "</pre><br/>";
?>
Это мой вывод:
<B>/usr/bin/ffmpeg -i /var/videos/video1.wmv</B><br/>
backtick:<br/>
<pre></pre><br/>
system:<br/>
<pre></pre><br/>
shell_exec:<br/>
<pre></pre><br/>
passthru:<br/>
<pre></pre><br/>
exec:<br/>
<pre></pre><br/>
popen:<br/>
<pre></pre><br/>
Я не понимаю.safe_mode
выключен. Там нет ничего вdisable_functions
, Каталогowned отwww-data
(пользователь apache в моей системе Ubuntu). Я получаю верный статус отexec()
а такжеsystem()
и выполнение той же команды из командной строки даст мне тонны вывода. Я чувствую, что, должно быть, мне не хватает чего-то очевидного, но я понятия не имею, что это такое.