Php ffmpeg получить продолжительность видео
Как я могу получить длительность видео и распечатать его как вывод php,
как echo $duration.
До сих пор я использовал эту команду:
ffprobe -i C: \ FFMpeg \ bunny.mp4 -show_format | длительность findstr
чтобы посмотреть продолжительность видео.
Я получил вывод плюс это:
...
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3
duration=60.095000
Я не знаю, как получить эту продолжительность и распечатать вниз.
3 ответа
Хорошо, я наконец сделал это, но я не знаю, является ли это наилучшей практикой, но для меня сейчас все в порядке, я сделал сохранение длительности во временном текстовом файле.
Команда:
cd C: \ FFMpeg \ bin;. \ ffprobe -i ". $ path." -show_format | длительность findstr> C:\xampp\htdocs\bass\storage\generator\projects\duration.txt
Теперь я получу доступ к этому файлу с помощью php и получу его содержимое.
Следует использовать "ffmpeg" вместо "ffprobe"
ffmpeg -i C:\FFMpeg\bunny.mp4
Вместо использования временного текстового файла, вы можете использовать popen()
выполнить команду (в том числе | findstr duration
если хотите), и читайте из возвращенного указателя файла так же, как вы читаете из файла, например
$handle = popen($command, 'r');
$line = fgets($handle);
pclose($handle);