Вопрос про видео и getid3

  • Автор темы Автор темы jeka!
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

jeka!

Просто Member
Вопрос про видео и getid3

Можете подсказать, сколько байт надо вытащить из файлов avi, wmv, mpg
чтобы скормить их классу getid3() и он прочитал инфу о разрешении картинки, продолжительности и битрейде видео файла.
Просто все видео лежит удаленно на серваке и искачивать его полностью чтобы прочитать инфу это нереал.
И помоему у некоторых файлов эта инфа записана не в шапке а в конце файла, так ли это?
 
Если есть доступ по SSH на сервак и возможность использовать там ffmpeg или mplayer - тогда проще и быстрее будет использовать эти утилиты. К тому же по крайней мере одна из версий этого getid3 (которую мы нашли в составе проекта flv4php) - глючит при определении размеров (в нашем случае, правда, использовалось флэш-видео - FLV)
 
не доступа нет, в том то и дело.
Поэтому одна возможность только прочитать по http из файла n-ое кол-во байт.
А сколько точно и откуда читать незнаю.
Т.е можно было конечно дергать заведомо больше байт, но тут уже вопрос упрется в траффик и скорость, поэтому хотелось бы знать скольо точно будет достаточно для чтения этой инфы.
 
Тогда поробуй посмотреть исходники getid3
Он ведь как-то читает, значит знает что и где лежит.

Еще парочка ссылок
http://www.fastgraph.com/help/avi_header_format.html
http://www.alexander-noe.com/video/documentation/avi.pdf
http://www.virtualsciencefair.org/2004/chia4a0/public_html/aviresearch.htm

в общем через поиск все ищется...
Гугл в помощь...
 
jeka!
Сомнительно, чтобы такая возможность вообще была - точно знать размер заголовка видео-файла, о котором ты не знаешь ничего, кроме УРЛа, по которому его можно скачать...
 
Автор оригинала: jeka!
Я пробывал читать уже эти мануалы, к сожалению ниче путного из этого невышло, непонимаю я их :(
Не понимаете мануал - читайте код.
 
Как вариант: на основании статистики из как минимум 10 просмотренных заголовков файлов одного формата(например avi) вычислить усредненный размер заголовка в байтах и считывать в 2-3 раза больше байт для уверенности.
Еще, при вашем методе, стоит обратить внимание на то, умеет ли getid3 корректно читать заголовок при "битом"(незавершенном) файле.
Это конечно далеко не оптимальный алгоритм, зато просто.
 
мне вот интересно, каким образом наш непонятливый автор собрался читать часть картинки
 
И помоему у некоторых файлов эта инфа записана не в шапке а в конце файла, так ли это
Если вы говорите про ID3, то да.
У него две версии. Одна пишет свои данные вначало, вторая - в конец дописывает.
 
В общем потестировал я, для avi и mpg файла достаточно скачать первые 6 Кб файла и скормить его классу, причем для некоторых файлов достаточно и 4 Кб.
Читается вся инфа за исключением длительности/времени (playtime_seconds) файла, видать она расчитывается из целого файла только, так как на такой урезанный кусок класс расчитывает только часть, на то что есть.
Размер видео получается из заголовка HTTP.
Впринципе этой инфы достаточно, если бы только еще все файлы так читались, буду тестить на других форматах.
 
Для того, что бы не годать - читайте документацию.
А так же смотрите в код своей библиотеки.
 
Автор оригинала: *****
мне вот интересно, каким образом наш непонятливый автор собрался читать часть картинки
Причем тут картинка? мне нужна инфа:

resolution_x/resolution_y
video bitrate
frame_rate
codec

и по аудио bitrate/sample_rate/channelmode

впринципе этого достаточно чтобы оценить нужен мне этот видеофайл или нет.
 
ну не картинка, а видеофайл.
какая разница.

тыренье файлов на форуме не обсуждается.
чао.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху