Встроенный проигрыватель Windows Media продолжает буферизировать - PullRequest
0 голосов
/ 24 января 2012

Я пытаюсь использовать WMP для потоковой передачи файлов .mp3. У меня есть mp3 файл размером около 4 МБ.

Используемый код:

<OBJECT ID="MediaPlayer1" CLASSID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"
CODEBASE="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab# Version=5,1,52,701"
STANDBY="Loading Microsoft Windows Media Player components..." TYPE="application/x-oleobject"
width="300" height="70">
    <param name="fileName" value="'+song_urlIE+'">
    <param name="animationatStart" value="true">
    <param name="transparentatStart" value="true">
    <PARAM NAME="SendPlayStateChangeEvents" VALUE="True">
    <PARAM NAME="AutoStart" VALUE="True">
    <PARAM name="uiMode" value="none">
    <PARAM name="PlayCount" value="9999">
    <param name="autoStart" value="true">
    <param name="showControls" value="true">
    <param name="Volume" value="-300">
    <param name="ShowStatusBar" value="true">
    <param name="BufferingTime" VALUE="1">
    <embed type="application/x-mplayer2" id="players" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"
    BufferingTime=1 src="'+song_url+'" name="MediaPlayer1" width=300 height=70
    showstatusbar=-1 autostart=1 showcontrols=1 volume=-300>

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

Можно ли это решить?

1 Ответ

2 голосов
/ 24 января 2012

IIRC, исходя из моего опыта работы с WMP, если заголовок Content-Type не верен, WMP не будет транслироваться (воспроизводиться во время загрузки) и будет вести себя так, как вы наблюдаете.

Либо это, либо фактический URL должен заканчиваться на ".mp3" как подсказку типа файла.

Или оба.

Какой тип контента возвращает код сервера для контента? Это "аудио / MPEG" или что-то еще? Если вы не знаете, используйте сетевой анализатор для обнаружения. Я не уверен, что WMP использует агент загрузки браузера, поэтому вы можете использовать инструменты F12 для наблюдения за URL. В противном случае, скачайте NetMon или Wireshark.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...