Как прочитать информацию из .3gp и .mp4 с помощью ffmpeg-php?

У меня небольшая проблема с ffmpeg-php. Я пытаюсь получить некоторую информацию из видеофайлов, и он отлично работает с такими форматами файлов, как .avi, .mpg или .flv, но когда я пытаюсь использовать .3gp или .mp4 в:

$movie = new ffmpeg_movie('path/to/file/test.3gp');

Я получаю такую ​​​​ошибку:

ffmpeg_movie::__construct() []: ISO: File Type Major Brand: 3gp5 

or

ffmpeg_movie::__construct() []: ISO: File Type Major Brand: mp42 

Я установил ffmpeg-php на WAMP, используя инструкции, найденные здесь: Как установить FFMpeg в WampServer 2.0 (Windows XP)

Мне нужна эта информация, чтобы отправить ее в ffmpeg с помощью exec(). Кто-нибудь может помочь мне с этим?


person Neltharian    schedule 12.05.2010    source источник
comment
Эм... Вы уверены, что это ошибки, а не штатный вывод программы? Больше ничего не выводится?   -  person Pekka    schedule 12.05.2010
comment
Ага. Kohana падает и показывает эти две ошибки, когда я пытаюсь использовать 3.gp или .mp4. В любом другом случае все работает нормально. На веб-сайте ffmpeg-php я видел, что, возможно, это происходит потому, что ffmpeg должен соответствовать библиотеке zlib. Но если это так, то я не знаю, как это сделать :(   -  person Neltharian    schedule 12.05.2010


Ответы (2)


Вы также можете использовать чистый PHP-подход, используя читатель мультимедиа PHP.

person Jon Skarpeteig    schedule 12.04.2011

При установке плагина ffmpeg на сервер в основном у нас будет библиотека «ffprobe». Используя ffprobe, мы можем получить подробную информацию/метаданные о видео.

$ffprobe_path="ffprobe"; //path to installation of ffprobe
$video_file="/home/testsite/public_html/videos/mytest_video.mp4"; //path to the specific video file

$ffprobe_cmd=$ffprobe_path." -v quiet -print_format json -show_format -show_streams ".$video_file;  
$outputprobe = shell_exec($ffprobe_cmd);  
$result_video_meta = json_decode($outputprobe);
echo "<pre>";
print_r($result_video_meta);
echo "</pre>";
person Muthu kumar    schedule 12.07.2016