Проверка потокового видео
Возник такой вопрос: есть база данных со ссылками на потоковое видео.
Нужно каждую неделю отлавливать неисправные каналы, то есть битые ссылки (перестали показывать видео, загнулся сервер, переехали на другой сервер, в общем видео не показывается).
Хотел реализовать с помощью php демона. Суть в том, что скрипт открывает по сокету поток, и если он его смог открыть и получить какие-то данные, то видео исправно.
Но этот вариант очень трудоёмкий: придётся разбираться с тремя протоколами: http, rtsp, mms; плюс ко всему парсить мета файлы, у которых разные структуры.
Никто не сталкивался с такой проблемой? Или может есть какой-то наиболее лёгкий вариант реализации? Скрипт буду запускать с локальной тачки, так что могу устанавливать любой софт и модули к апачу.
Еще лучше использовать метод HEAD:
9.4 HEAD
The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. The
metainformation contained in the HTTP headers in response to a HEAD request SHOULD be identical to the
information sent in response to a GET request. This method can be used for obtaining metainformation about the
entity implied by the request without transferring the entity-body itself. This method is often used for testing
hypertext links for validity, accessibility, and recent modification.
The response to a HEAD request MAY be cacheable in the sense that the information contained in the response MAY
be used to update a previously cached entity from that resource. If the new field values indicate that the cached entity
differs from the current entity (as would be indicated by a change in Content-Length, Content-MD5, ETag
or Last-Modified), then the cache MUST treat the cache entry as stale.
Так что узнать, есть ли по указанному адресу потоковое видео можно по HTTP заголовкам, правда тот же PHP тут врятли поможет. Скорее уж Perl.
Так что узнать, есть ли по указанному адресу потоковое видео можно по HTTP заголовкам, правда тот же PHP тут врятли поможет. Скорее уж Perl.
1) Я же писал, что мне нужно проверять протоколы rtsp и mms, а к ним я по http достучаться не смогу.
2) Как раз мне нужно проверить трансляцию в реальном времени. То есть в моем случае потоковое видео - не файл.
В общем, у меня уже есть одна идейка. Я её кручу, как разберусь - отпишусь
Так я так понимаю, что клиентом может быть у автора любое ПО.
А действительно это идея, использовать какое либо ПО в духе плеера с развитым API и для него написать плагин "простукивалку".
Кстати то вопрос уж скорее относиться в таком свете больше к системному программированию.
А действительно это идея, использовать какое либо ПО в духе плеера с развитым API и для него написать плагин "простукивалку".
Кстати то вопрос уж скорее относиться в таком свете больше к системному программированию.
Понятно что любое, но может быть как раз есть определенный клиент. И модифицируя его можно получить результат.
Но это не системное программирование. )
Не все что не веб программирование системное ))
http://ru.wikipedia.org/wiki/Системное_программирование
Я вот например вобще не занимаюсь веб-программированием. Юзаю компилируемые языки. Но при этом крайне редко занимаюсь системным. )
Но это не системное программирование. )
Клиентами могут быть любые плееры: Windows Media Player, Real Player, VLC Player...
На сколько я помню, VLC это который писали французы и он оперсорцный, значит и API не обязательно.
VLC - опенсорсный. Попробуй простучать поток через него.
Оно бывает сотни разных видов.
Системное программирование - это разработка системного софта, дров и т.п. К тому что надо сделать или к вебу оно никоим боком не относится )
Оно бывает сотни разных видов.
Нуууу.... так не пойдет. Назови хотя бы 3-4 вида. (аднимистративные скрипты и прочее это все системное:) ).