Как встроить аудио/видео на HTML-страницу, которая воспроизводится в браузере iPhone через GPRS

StackOverflow https://stackoverflow.com/questions/87290

  •  01-07-2019
  •  | 
  •  

Вопрос

Хотя у меня нет iPhone, чтобы проверить это, мой коллега сказал мне, что встроенные медиа -файлы, такие как тот, который в фрагменте ниже, работает только тогда, когда iPhone подключен над соединением WLAN или 3G, и не работает при подключении через GPRS.

<html><body>
<object data="http://joliclic.free.fr/html/object-tag/en/data/test.mp3" type="audio/mpeg">
   <p>alternate text</p>
</object>
</body></html>

Есть ли пример URL с файлом медиа, который будет играть в браузере iPhone, когда iPhone подключается с помощью GPR (не 3G)?

Это было полезно?

Решение

Приложение YouTube на iPhone автоматически загружает видео более низкого качества при подключении через EDGE, чем при подключении через Wi-Fi, поскольку сеть работает гораздо медленнее.Этот факт наводит меня на мысль, что Apple примет дизайнерское решение не загружать MP3 через EDGE.У браузера нет возможности заранее узнать, достаточно ли низкая скорость передачи данных, и, скорее всего, это не так.Поэтому вместо того, чтобы расстраивать пользователей звуковым файлом, воспроизведение которого занимает слишком много времени (и мешает им принять звонок во время загрузки), лучше избавить их от хлопот и побудить их найти точку доступа Wi-Fi.

Другие советы

Попробуйте что-то подобное, это работает на веб-странице.На самом деле это mp3 со скоростью 320 к/с, но его продолжительность составляет всего 30 секунд.Вы можете использовать программу под названием Lame для конвертации MP3 в Bitrate You, которая будет работать для вас.

<div class="music">
  <p>Pachelbel's Canon</p>
  <!--[if !IE]>-->
  <object id="Cannon" type="audio/mpeg" data="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" width="250" height="16">
    <param name="autoplay" value="false" />
    <param name="src" value="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" />
  <!--<![endif]-->
    <object id="Cannon" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="250" height="60">
      <param name="autostart" value="false" />

      <param name="url" value="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" />
      <param name="showcontrols" value="true" />
      <param name="volume" value="100" />
    <!--[if !IE]>--></object><!--<![endif]-->
  </object>
</div><!-- end of control -->

Я не знал об этом ограничении.Хотя имеет смысл отключать потенциально объемные данные теги OBJECT или EMBED при использовании услуги сотовой передачи данных, за которую ваш провайдер может взимать побайтную плату, если бы это было причиной, не имело бы смысла, чтобы она все равно работала в 3G. и только не по GPRS.
Возможно, проблема заключается в базовой пропускной способности данных?Отсутствие iPhone у вас (или у меня) затрудняет проверку утверждения вашего коллеги.
Помните, что GPRS намного медленнее, чем Wi-Fi или 3G.Согласно Википедии, GPRS обеспечит общую дуплексную пропускную способность от 56 до 114 кбит/с, не вся из которых приходится на направление загрузки.Вы уже можете видеть, что это недостаточно быстро для мгновенной потоковой передачи типичного mp3 со скоростью 128 кбит/с, даже если вы получаете оптимальную пропускную способность и получаете все это в виде скорости загрузки.
Смотря на это обсуждение на форуме В качестве примера, приведенного в Google, клиенты GPRS (те, кто не использует Telestra, которая является провайдером EDGE в этом регионе) получают около 40 кбит/с.Итак, если, как следует из вопроса, вы застряли в EDGEland, а НЕ в 3Gland или чем-то промежуточном, для воспроизведения 30-секундного mp3 потребуется около 20 секунд буферизации.А когда вы используете тег с неоднозначным поведением, такой как OBJECT или EMBED, нет никакой гарантии, как браузер его интерпретирует и попытается ли он интеллектуально передать поток файла вместо того, чтобы загружать его целиком перед его запуском.
Таким образом, вполне возможно, что ваш коллега просто не ждал достаточно долго, чтобы проверить, начал ли воспроизводиться встроенный носитель, который он выбрал в качестве теста (при условии, что он не использовал там ваш тестовый mp3-файл размером 17 КБ).Также возможно, что iPhone действительно имеет это ограничение, хотя я думаю, что Google будет более откровенен с этим, чем я обнаружил в результате быстрого поиска, поскольку люди достаточно открыто высказывались о других вещах, которые им не нравятся в iPhone.Другая возможность заключается в том, что это ограничение в сборке Safari, которая в настоящее время поставляется с iPhone, и которое может быть изменено в будущих версиях или в другом браузере.
В конечном счете, вопрос в том, какой пользовательский опыт вы действительно хотите?Загрузка встроенного звука в GPRS займет много времени, и пользователи не получат удовольствия от этого опыта или, возможно, даже не испытают его вообще, если предполагается, что он начнет воспроизводиться при посещении страницы и не загружается до перехода к нему. прочь.В этом случае, возможно, это не та цель, к которой стоит стремиться.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top