Мне нужно передать FLV-файл. потоковая передача должна выглядеть как потоковое вещание. и я должен стать способом изменения целевого файла. жаль моего бедного английского.
Если «потоковая передача» означает «показ флеш-видеоролика», flv-streaming на самом деле не потоковая передача, но это обычная передача файлов, когда проигрыватель начнет проигрывание, даже если файл не полностью загружен клиенту , Поиск времени реализуется стандартным способом HTTP с смещением загрузки файла – если вы прокручиваете видео наполовину на временной шкале, и он еще не загружен, текущая загрузка (чаще всего) прерывается и перезапускается со смещением файлов / 2 байта.
Таким образом, вы можете быть в порядке с использованием простого старого readfile()
и соответствующим образом readfile()
заголовки заголовка HTTP-заголовка с помощью header()
. Но, поскольку вам нужно искать, вам нужно проанализировать HTTP-запрос, а вместо readfile()
использовать fpassthru()
, вместо этого искать нужное место.
tl; dr : избегайте обработки этого на стороне PHP, и пусть Apache (или ваш httpd по вашему выбору) справится с этим.
Я не совсем уверен, о чем вы спрашиваете, но если у вас есть куча медиа-файлов и вы хотите воспроизвести их с помощью медиа-плеера Youtube-esque на своем веб-сайте, я предлагаю проверить Flowplayer – у него потрясающий Javascript API который позволяет вам делать всевозможные классные вещи для игрока, включая обработку таких вещей, как плейлисты, и программное изменение текущего видео.
Недавно я использовал его в проекте с отличными результатами.