Я создаю сайт видеовещания, в котором мне нужно знать, как создавать эскизы из видео. Пожалуйста помоги. Любые предложения или рекомендации будут высоко оцененыКаков лучший способ создания эскизов из видео в PHP?
ответ
Вот фрагмент, чтобы захватить кадр из середины видео. Это старый код, в котором я лежал, поэтому я уверен, что его можно упростить. Обязательно настройте путь ffmpeg в строке 1, чтобы он соответствовал месту установки.
$output = shell_exec("/usr/local/bin/ffmpeg -i {$path}");
preg_match('/Duration: ([0-9]{2}):([0-9]{2}):([^ ,])+/', $output, $matches);
$time = str_replace("Duration: ", "", $matches[0]);
$time_breakdown = explode(":", $time);
$total_seconds = round(($time_breakdown[0]*60*60) + ($time_breakdown[1]*60) + $time_breakdown[2]);
shell_exec("/usr/local/bin/ffmpeg -y -i {$input_filepath} -f mjpeg -vframes 1 -ss " . ($total_seconds/2) . " -s {$w}x{$h} {$output_filepath}";
Я использовал FFmpeg, начиная задачу с Exec(), и добавьте амперсанд в команду, так что Teh PHP скрипт может продолжаться. Если я хочу, чтобы ffmpeg закончил сначала, у меня нет амперсанда.
Из раздела «Вопросы и ответы»: «Как закодировать фильм на отдельные снимки?» http://ffmpeg.org/faq.html#SEC15
ffmpeg -i movie.mpg movie%d.jpg
Это генерирует много изображений.
Из документов: "видео и аудио преобразования файлов формата" http://ffmpeg.org/ffmpeg-doc.html#SEC5
ffmpeg -i foo.avi -r 1 -s WxH -f image2 -vframes 1 foo.jpeg
Заменить W & H с ширина/высота (см http://ffmpeg.org/ffmpeg-doc.html#SEC9), заменить vframes с количеством кадров хотел, добавить% D к имени файла для порядкового номера, если вы делаете несколько изображений. Чтобы захватить в определенный момент видео, используйте -ss (см. http://ffmpeg.org/ffmpeg-doc.html#SEC8)
Я знаю, что этот вопрос старый. Но я столкнулся с этим, когда искал подобное решение. Вот мои выводы. Надеюсь, это поможет кому-то другому.
Html5 + JS. Вот мои demo/slides по теме.
HTML to Canvas library не пошел по этому маршруту, но, возможно, он будет работать.
- 1. Каков правильный способ создания эскизов?
- 2. Каков наилучший способ отображения эскизов в ASP.NET?
- 3. Создание эскизов из видео - ios7
- 4. OutOfMemory при попытке создания видео эскизов
- 5. Получение видео эскизов из vimeo
- 6. Лучший способ создания JFrame
- 7. Лучший способ создания «интерпретатора шаблонов» в PHP
- 8. Каков правильный способ создания значения из потока?
- 9. Извлечение эскизов из видео URL
- 10. Что является альтернативой ffmpeg для создания эскизов
- 11. Каков лучший способ написать страницу PHP?
- 12. Первый захват эскизов видео с помощью php?
- 13. PHP: лучший способ создания многомерных массивов?
- 14. Каков наилучший способ создания функции валидатора? PHP
- 15. Лучший способ создания массива
- 16. Лучший способ создания кнопок динамически
- 17. Лучший способ создания PDF с PHP
- 18. Лучший способ создания файла конфигурации (config.php) php
- 19. Лучший способ создания PHP будущую дату
- 20. Каков лучший способ манипулировать данными в БД?
- 21. Каков наилучший способ создания файла XLS в PHP
- 22. Лучший способ хранения видео пользователей
- 23. Лучший способ создания dropdownlists в цикле
- 24. Лучший способ создания страничного интерфейса
- 25. Лучший способ создания контроллера «Добавить»
- 26. Лучший способ создания кеша
- 27. Лучший способ создания анимации?
- 28. Лучший способ создания игрока/клиента вывесок Android?
- 29. PHP-imagegrabscreen как метод создания веб-эскизов
- 30. Каков наилучший способ создания не дублируемого uuid (v4) в PHP
Как установить ffmpeg? plz help – Rajasekar
@Rajasekar: Какую ОС вы используете? Google либо «устанавливает ffmpeg windows/osx/linux» в зависимости от того, что вы используете. –
Мне это нужно для php. Чтобы установить ffmpeg, они запросят отредактировать файл php.ini. Я работаю в своей локальной системе. Я хочу знать, что при размещении какой-либо проблемы возникнет проблема? позволит хостеру разрешить нам редактировать php.ini ??. Или мы должны использовать любой особый тип хостинга. @ Derek Gathright – Rajasekar