Проблема с потоковыми файлами AVI - PullRequest
0 голосов
/ 13 апреля 2009

Я пишу приложение сервера потокового видео. У меня есть файл AVI, и я поместил его на IIS 7 для потоковой передачи. Я обнаружил, что клиент не может перейти к произвольному расположению носителя, если он еще не буферизован. Я думаю, что некоторые метаданные отсутствуют во время записи?

После поиска, я думаю, проигрыватель Windows Media не смог перейти в любое произвольное место, прежде чем буферизовался локально, поскольку индексный блок AVI (необходимый для поиска) сохраняется в конце файла.

Вот пример, если мое записанное видео avi составляет 10 минут, а сейчас я играю до 4-х минут, а локальное буферизованное потоковое мультимедиа буферизируется до 5-й минуты, я не могу перейти к какому-либо времени после 5-й минуты. как 7 минут в проигрывателе Windows Media.

Я не сталкивался с той же проблемой с другими форматами, такими как asf / wmv. Поэтому я думаю, что это проблема AVI, а не сервера или любая другая проблема окружающей среды.

Мои вопросы,

  1. Какова действительная причина невозможности перехода к произвольному местоположению файла AVI до его буферизации?
  2. Какие-либо решения или обходные пути? Могу ли я использовать другие более умные плееры, которые могут решить эту проблему, или я могу добавить некоторое исправление кода на стороне сервера?

1 Ответ

3 голосов
/ 13 апреля 2009

Как вы уже обнаружили, индекс пишется в конце контейнеров avi. Вот почему формат AVI не подходит для потоковой передачи.

Вы должны преобразовать ваше видео в какой-то другой формат, в начале которого есть информация об индексировании Например, flv, wmv, ogg / theora и т. Д.

...