1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.

Question Как получить скриншот из середине видео SE3

Discussion in 'Прочая Поддержка - Help Requests' started by afsun, Oct 10, 2012.

  1. afsun Thread starter Active member


    Offline
    Message Count:
    182
    Likes Received:
    53
    Всем привет!

    Собственно сам код:
    PHP:
    $shell_script .= "{$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename}.flv -r 1 -s {$setting['setting_video_thumb_width']}x{$setting['setting_video_thumb_height']} -f image2 -ss 15.00 -v 2 -y {$directory}{$new_filename}_thumb.jpg".$linebreak
    ss 15.00 мы получаем скриншот на 15 секунде видео.
    Сразу предупрежу, прошу не предлагать mplayer - Я знаю что с помощи mplayer можно получить кадр из середины но этот вариант меня не устраивает.

    У нас уже есть время ролика
    Code:
    $shell_script .= "DURATION{$duration_session}=$(echo \$FULLOUTPUT{$duration_session} | grep -o --extended-regexp '[Dd]uration.{1,3}([0-9][0-9]:[0-9][0-9]:[0-9][0-9])' | grep -o [0-9][0-9]:[0-9][0-9]:[0-9][0-9])".$linebreak;
    Есть один вариант у меня:
    Из {$duration_session} минусовать 50% времени? Тут правда ffmpeg все равно перемотает видео до середины. а это затрата времени, поскольку ffmpeg перемотку делает с огромными тормозами.

    Прошу помочь решить мне этот вопрос.
  2. galstuk Famous member


    Offline
    • Знаменитый
    Message Count:
    398
    Likes Received:
    151
    Ну на Джумле помню делал примерно так:
    Code:
    ffmpeg -i video.avi -an -ss 00:00:30 -r 1 -vframes 1 -s 320×240 -y -f mjpeg screenshot.jpg
    Команда делает скриншот screenshot.jpg файла video.avi на 30 секунде....
    Далее в SE запустить дело техники...;)
  3. afsun Thread starter Active member


    Offline
    Message Count:
    182
    Likes Received:
    53
    Спасибо конечно, но для SE уже есть:
    PHP:
    $shell_script .= "{$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename}.flv -r 1 -s {$setting['setting_video_thumb_width']}x{$setting['setting_video_thumb_height']} -f image2 -ss 15.00 -v 2 -y {$directory}{$new_filename}_thumb.jpg".$linebreak
    но задача то получить скриншот не с конкретного времени, а ровно по середине видео.
    Если видео 1 час, значит скриншот должен быть ровно на 1 800 секунде
  4. afsun Thread starter Active member


    Offline
    Message Count:
    182
    Likes Received:
    53
    Ни кто не хочет помочь?

Share This Page

All rights reserved SocEngine.ru ©