2009-11-11 5 views
3

Кто-нибудь знает готовый, надежный способ рассказать размеры (ширину х высоты) MP4, закодированные с использованием кодека H.264 без ffmpeg или подобных расширений, в чистом PHP ?Получить размеры H.264 MP4

Спасибо за ответы на все вопросы. Баунти заканчивается, и у меня не будет времени проверить предлагаемые решения, прежде чем это произойдет. Я приму решение, которое, как мне кажется, имеет наибольшую вероятность работы.

+0

Ничего готового, о котором я знаю, но стандарт MPEG-4 очень хорошо документирован. Вы можете сами проанализировать данные из файла с помощью нескольких часов кодирования. –

+1

Если у вас есть соответствующие разрешения на вашем сервере, вы можете выполнить исполняемый файл 'ffmpeg' с правильными аргументами командной строки, чтобы получить высоту ширины x. Я уверен, что – Earlz

+0

Нет, нет доступа к командной строке на этом сервере. Вот почему я прошу PHP. Но, безусловно, первый выбор, когда у вас есть разрешения. –

ответ

2

Похоже, что http://code.google.com/p/php-mp4info/ может быть вашим ответом. Он читает MP4, но ничего не говорит о H.264.

также, какая ОС вы используете?

+0

Ничего себе, это хорошо! Скорее всего, размеры сохраняются в метаданных независимо от того, какая кодировка используется. Я рассмотрю это. Сайт будет работать в Linux. –

+0

Единственное место, где я вижу это падение, - это то, что на видео не было должным образом набрано метаданных. –

+0

См. Мой отредактированный вопрос выше. –

0

Native PHP не поддерживает ничего подобного, ffmpeg - это только одна библиотека, которая приходит мне на ум.

1

Что приходит на ум:

  • mediainfo огромный проект с графическим интерфейсом пользователя, но также имеет CLI
  • mp4info (часть, казалось бы несуществующей mp4mpeg проекта) почти идеально подходит для этой
  • ffmpeg хот это слишком сложно для выполнения этой задачи. то снова вам это может понадобиться для других задач
4

getID3getID3 - это чистый php и извлекает удивительный объем информации из мультимедийных файлов всех видов. Это будет зависеть от того, что кодирует ваш файл в первую очередь о том, какие метаданные доступны и насколько они надежны. У getID3 есть хорошая демонстрационная страница с большим количеством разных типов файлов. Я попытался опубликовать больше ссылок, но, будучи новичком, я получаю только один.

+0

Спасибо за ссылку, но, насколько я вижу, getID3 не делает MP4. –

+0

На демонстрационной странице (http://www.getid3.org/demo/) есть два файла .mp4, например. http://www.getid3.org/demo/MP4%20-%20aac.mp4.html. Как я уже говорил, это будет зависеть от того, что было использовано для кодирования вашего mp4, если бы это было Quicktime, я уверен, что getID3 будет работать. Без дополнительной информации или файла примера трудно сказать. Что закодировал ваш файл? – Bobbin

1

php-reader является полное осуществление ISO 14496 сделано в чистом PHP. Вы можете использовать эту библиотеку, чтобы прочитать все поля, из которых состоит mp4, например атом moov, содержащий метаданные о файле.