Извлечение изображений из каталога, сохраненного с последовательными именами, и сохранение в массиве - PullRequest
0 голосов
/ 11 февраля 2019

Используя ffmpeg, я сгенерировал последовательность изображений из видео, которые хранятся в каталоге с последовательными именами. Пример: для видео one.mp4 последовательность равна

onethumb0001.jpg,onethumb0002.jpg,onethumb0003.jpg,onethumb0004.jpg,onethumb0005.jpg,onethumb0006.jpg,onethumb0007.jpg,onethumb0008.jpg,onethumb0009.jpg,onethumb0010.jpg,onethumb0011.jpg,onethumb0012.jpg...onethumb0100.jpg....onethumbnnnn.jpg

Аналогично для двух.mp4,

twothumb0001.jpg,twothumb0002.jpg,twothumb0003.jpg,twothumb0004.jpg,twothumb0005.jpg,twothumb0006.jpg,twothumb0007.jpg,twothumb0008.jpg,twothumb0009.jpg,twothumb0010.jpg,twothumb0011.jpg,twothumb0012.jpg...twothumb0100.jpg....twothumbmmmm.jpg

Все изображения для one.mp4 и two.mp4 и любого n.mp4 хранятся в одном каталоге.

Когда для предварительного просмотра выбран one.mp4,Я хочу захватить все изображения только одного .mp4 и сохранить их в последовательности в массиве php следующим образом:

$a = ["onethumb0001.jpg","onethumb0002.jpg","onethumb0003.jpg","onethumb0004.jpg","onethumb0005.jpg","onethumb0006.jpg","onethumb0007.jpg","onethumb0008.jpg","onethumb0009.jpg","onethumb0010.jpg","onethumb0011.jpg","onethumb0012.jpg"..."onethumb0100.jpg"...."onethumbnnnn.jpg"];

Примечание: количество изображений, доступных для разных видео, отличается и заранее неизвестночитать из справочника.

Пожалуйста, руководство.

1 Ответ

0 голосов
/ 11 февраля 2019

Вы можете использовать glob для поиска подходящих файлов.Например

$video = 'one.mp4';
$filenum = basename($video, '.mp4');
$videodir = '/home/some/path/';
$thumbs = glob("{$videodir}{$filenum}thumb*.jpg");
$thumbs = array_map('basename', $thumbs);
print_r($thumbs);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...