Streaming over HTTP for custom formats
От: sev http://www.demoforge.com
Дата: 20.09.09 09:30
Оценка:
Всем привет!

В современных технологиях мультимедиа-строения я несколько плаваю, но надеюсь, что здесь присутствуют гуру, которые смогут помочь советом или указанием правильного пути

Задача, которую я пытаюсь решить (пока своими силами) звучит примерно так:

Есть самописанный DirectShow source filter, который использует собственный формат файла (не AVI, ASF, etc). Всё это дело я разрулил через IFileSourceFilter: файлы замечательно открываются в WMP, видео показывается и все счастливы.

Но счастливы ровно до тех пор, пока открывают ЛОКАЛЬНЫЕ файлы. Если же разместить файл на вебсервере и пытаться открыть его в WMP через http, то выходит крупный облом, WMP ругается и файл не открывается

В результате экспериментов я выяснил, что файлы в формате WMV всё же открываются, а вот в формате AVI уже нет. У меня же вообще свой собственный формат. И что-то не могу я взять в толк, что же именно я должен реализовать и поддержать, чтобы WMP считал мои файлы пригодными для открытия через HTTP...

Какие здесь возможны варианты?

С уважением,
Евгений.
Re: Streaming over HTTP for custom formats
От: oli.wan Украина  
Дата: 21.09.09 06:57
Оценка:
Привет!

А сам web-сервер умеет читать твой собственный формат файла?!
Re[2]: Streaming over HTTP for custom formats
От: sev http://www.demoforge.com
Дата: 21.09.09 08:06
Оценка:
OW>А сам web-сервер умеет читать твой собственный формат файла?!

Возможно, я чего-то не понимаю, но вебсерверу это зачем уметь? MIME type я ему прописал, разумеется. Даже поэкспериментировал с разными MIME types, без особого успеха, впрочем. А так, сервер и WMV не умеет читать, что не мешает открывать такие файлы в WMP даже не дожидаясь полной их загрузки. Как я понимаю, эти файлы скачиваются во временный кэш, но WMP открывает их сразу по мере доступности данных.
Re[3]: Streaming over HTTP for custom formats
От: oli.wan Украина  
Дата: 21.09.09 09:34
Оценка:
Здравствуйте, sev, Вы писали:

OW>>А сам web-сервер умеет читать твой собственный формат файла?!


sev>Возможно, я чего-то не понимаю, но вебсерверу это зачем уметь? MIME type я ему прописал, разумеется. Даже поэкспериментировал с разными MIME types, без особого успеха, впрочем. А так, сервер и WMV не умеет читать, что не мешает открывать такие файлы в WMP даже не дожидаясь полной их загрузки. Как я понимаю, эти файлы скачиваются во временный кэш, но WMP открывает их сразу по мере доступности данных.


Ну WMV это ASF контэйнер, который заточили под использование в ситуациях похожих на даную.
Возможно проблема на стороне клиента, может попробуй какие-то логи поставить и узнать запускается ли твой фильтр и что именно он получает, если вообще получает?!
Re: Streaming over HTTP for custom formats
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 21.09.09 11:52
Оценка:
Здравствуйте, sev, Вы писали:

sev>Есть самописанный DirectShow source filter, который использует собственный формат файла (не AVI, ASF, etc). Всё это дело я разрулил через IFileSourceFilter: файлы замечательно открываются в WMP, видео показывается и все счастливы.


sev>Но счастливы ровно до тех пор, пока открывают ЛОКАЛЬНЫЕ файлы. Если же разместить файл на вебсервере и пытаться открыть его в WMP через http, то выходит крупный облом, WMP ругается и файл не открывается


Все просто — для открытия сетевых источников он использует другой фильтр. Т.е. надо как-то научить его, что в данном случае нужно задействовать Ваш фильтр (если он умеет работать с сетью, конечно). Более универсальный путь был бы делать не source filter, а парсер (декодер). Тогда плеер открывал бы файлы нужным сурсом, а Ваш фильтр декодировал бы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.