Можно ли в MODX как-то получить значение длины видеофайла?
Приветствую.
Обычный хостинг. Есть ли какая-то простая возможность получить длину видеофайла в MODX через плагин/сниппет?
Обычный хостинг. Есть ли какая-то простая возможность получить длину видеофайла в MODX через плагин/сниппет?
Комментарии: 4
Плагин или сниппет это обычный PHP и в нём есть функции для работы с файлами, в частности filesize
Подключи к сайту PHP FFmpeg, думаю в хостинге тебе установят или уже установлен и плюсом сможешь сжимать файлы, простой пример:
или можно скачать библиотеку, закинуть в папку сайта сам getID3 и написать функцию
{'!getWithFFmpeg' | snippet: [
'file' => ''" // Укажи путь к видеофайлу
]}
как пример сделать через shell<?php
function getWithFFmpeg($videoPath) {
$command = "ffmpeg -i " . escapeshellarg($videoPath) . " 2>&1 | grep Duration | cut -d ' ' -f 4 | sed s/,//";
$duration = shell_exec($command);
if ($duration) {
list($hours, $minutes, $seconds) = explode(':', $duration);
return ($hours * 3600) + ($minutes * 60) + $seconds;
}
return false;
}
$duration = getWithFFmpeg($file);
if ($duration !== false) {
echo "Длительность видео: " . $duration . " секунд";
} else {
echo "Не удалось получить длительность видео";
}
?>
на выходе будет например: Длительность видео: 5 секунд. или можно скачать библиотеку, закинуть в папку сайта сам getID3 и написать функцию
код можно сделать проще и логичней, набросал как пример
Спасибо, попробую.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.