Сегодня я напишу долгожданную статью для многих моих посетителей: " Как конвертировать AVI в FLV на сервере ". Возможно, Вы читали одну из моих прошлых статей о том, что AVI на сайте никак не просмотреть. И если пользователь загружает к Вам на сайт видео в формате AVI , надеясь потом его просмотреть (например, как н...
Сегодня я напишу долгожданную статью для многих моих посетителей: "Как конвертировать AVI в FLV на сервере". Возможно, Вы читали одну из моих прошлых статей о том, что AVI на сайте никак не просмотреть. И если пользователь загружает к Вам на сайт видео в формате AVI, надеясь потом его просмотреть (например, как на Youtube), то на сервере необходимо данное видео конвертировать во Flash-формат, например, в FLV. И в этом материале Вы узнаете, как это сделать.
Как я уже говорил, потребуется стороннее приложение, которое называется ffmpeg. Данное приложение должно быть у Вас уже установлено: установка ffmpeg на Denwer.
Теперь такой момент. В интересах простоты я советую Вам скопировать приложение ffmpeg в корень Вашего сайта.
Итак, сейчас у Вас должна быть установлена библиотека php_ffmpeg.dll, а также приложение ffmpeg должно находиться в корне сайта.
Теперь привожу код конвертации AVI в FLV с помощью приложения ffmpeg и библиотеки php_ffmpeg.dll:
<?php
//Полный путь к исходному файлу
$input = $_SERVER['DOCUMENT_ROOT']."/video.avi";
//Имя выходного файла
$output = "video.flv";
//Создание объекта ffmpeg_movie
$ffmpeg = new ffmpeg_movie($input);
//Увеличиваем ширину и высоту видео в 2 раза
$width = 2 * $ffmpeg->getFrameWidth();
$height = 2 * $ffmpeg->getFrameHeight();
//Вызываем приложение ffmpeg с соответствующими параметрами
system("ffmpeg -i $input -ar 44100 -s ".$width."x".$height." -f flv $output");
?>
Фактически, мы данным кодом не только провели конвертацию видео из AVI в FLV, но ещё и увеличили размеры видео. Разумеется, Вы можете этого не делать.
Полное описание параметров приложения ffmpeg я приводить здесь не буду, так как их огромное количество. Подробное описание всевозможных параметров описано здесь: http://www.ffmpeg.org/ffmpeg.html. От себя хочу добавить, что данное приложение позволяет изменять не только все возможные параметры видео, но и аудио, поэтому оно является универсальным. Всё, что нужно - это узнать синтксис команды, а дальше Вы можете спокойно вызывать его в PHP с помощью функции system().
Также чтобы использовать это приложение на полную катушку очень важно знать API библиотеки php_ffmpeg.dll, которое подробно описано здесь: http://ffmpeg-php.sourceforge.net/doc/api/.
