Почему потоковое вещание FLAC не работает? - PullRequest
0 голосов
/ 31 октября 2011

У меня есть простое потоковое http-приложение, которое принимает запрос GET URL и возвращает HTTP-заголовок «content-type», а затем запрашивает данные файла. Он работает на локальном http-сервере.

Таким образом, я могу слушать в плеере (например,)

http://localhost:8080/music/metallica.mp3

Он воспроизводится как обычный поток http в любом плеере (VLC, MPlayer, WMP, Winamp).

Однако, почему я пытаюсь транслировать FLAC таким образом, он не работает в MPlayer и WMP (я использую тип контента "audio / flac").

Насколько я понимаю, проблема в фильтрах DShow (Graph Builder не может найти правильный фильтр источника и / или подключить его к декодеру flac).

Не может ли кто-нибудь дать подсказку, куда мне копать, прежде чем я начну отладку фильтров DShow? :)

UPD:

Я обнаружил, что установка точного размера потока (через длину содержимого) решает проблему. Однако я бы предпочел не делать этого. Есть идеи?

1 Ответ

2 голосов
/ 01 ноября 2011

Потоковая передача с сетевого ресурса отличается от потоковой передачи из файла. Предполагается, что потоковый протокол реализован между сервером и хостом проигрывателя, и Windows не предлагает отличную поддержку потокового клиента в DirectShow API из коробки: вам нужен дополнительный фильтр, который поддерживает этот вид потоковой передачи.

...