HTML: почему встроенное аудио иногда не воспроизводится? - PullRequest
1 голос
/ 29 октября 2008

У меня странное поведение встроенного звука (wav-файла) на странице HTML. У меня есть страница https://server.com/listen-to-sound и файл Wav, встроенный в нее через тег <EMBED/>, например:

<embed src='https://server.com/path-to-sound' hidden="true" autostart="true" />

Страница https://server.com/listen-to-sound открывается в IE 6 SP3 на машине № 1 - звук воспроизводится в наушниках. Та же страница открывается на другом компьютере (# 2) с точно той же версией IE 6 SP3, настройками конфиденциальности и прокси-сервера - звука нет.

Всего из 6 машин звук воспроизводится на 2, а не воспроизводится на 4. На этих 4 машинах, когда в Opera открывается страница https://server.com/listen-to-sound, воспроизводится звук.

Я трижды проверил подключения наушников, настройки громкости и другие возможные проблемы с аппаратным и программным драйверами: проблема определенно в настройках IE.

Я также проверил https://server.com/path.to.sound URL-адрес - 4 устройства, которые не воспроизводят звук, не могут открыть эту ссылку, что приводит к ошибке типа «Не удалось загрузить страницу».

Очистка кешей IE, временных интернет-файлов, кешей SSL-сертификатов также не решила проблему.

Googling не дал мне ничего особенного, кроме старого трюка с Flash, для использования тега <OBJECT> и тега <EMBED> для записи в комментариях объекта.

Что я пропустил? Были ли у вас похожие или похожие проблемы? Как они были решены? Есть ли у вас какие-либо предложения о том, где трюк? Знаете ли вы какие-либо «функции» IE, которые могут повлиять на выполнение (воспроизведение, отображение) встроенных объектов?

Ответы [ 4 ]

1 голос
/ 27 июня 2010

Я не нашел решения, но могу подтвердить, что вероятной проблемой является https :. Я обнаружил, что Windows Media Player не воспроизводит файлы с полным URL / SRC, ведущим к https. Тем не менее, QuickTime будет. Таким образом, компьютеры с быстрым временем будут успешно воспроизводить файл, в то время как компьютеры с только WMP не будут работать.

Одним из «решений» является ссылка на http: (небезопасную) версию файла.

0 голосов
/ 29 октября 2008

Что касается вашего комментария к jamesh, я бы посоветовал вместо этого предоставить ссылку на аудиофайл: на некоторых компьютерах (у меня на работе) нет звука, не все используют IE, embed не является частью HTML ( это хак, поддерживаемый различными браузерами, он не определен в HTML 4.01 Transitional DTD *, например, ), и есть вероятность, что у посещающего браузера нет плагина для воспроизведения вашего звука.

Как показывают ваши тесты, он подвержен проблемам ...

В худшем случае, предоставить тег <NOEMBED> для предоставления указанной ссылки. Или вложите различные методы, например <object>. По крайней мере, Flash поддерживается почти всеми браузерами.

0 голосов
/ 04 мая 2009

Я думаю, что основная причина заключается в том, что на каждом используемом вами компьютере / браузере действует по-разному, потому что это нестандартный тег.

Заставить мультимедиа играть на веб-странице всегда было немного больно. Вы можете попробовать что-то вроде этого:

<object type="audio/x-wav" data="data/test.wav" width="200" height="20">
  <param name="src" value="data/test.wav">
  <param name="autoplay" value="false">
  <param name="autoStart" value="0">
  alt : <a href="data/test.wav">test.wav</a>
</object>

Выше было взято с этого сайта , объясняющего, как использовать тег объекта.

0 голосов
/ 29 октября 2008

Я не смог найти никакой информации по этому поводу, но вы пытались воспроизвести звук из Javascript? Я не знаю, является ли это приемлемым решением для вас, но это может быть решением.
Вы можете найти различные способы сделать это здесь: http://www.phon.ucl.ac.uk/home/mark/audio/play.htm

Надеюсь, это поможет вам.

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