Как сделать встраиваемый аудиофайл и флеш-плеер? - PullRequest
1 голос
/ 21 февраля 2012

У меня есть флеш-плеер (использующий JWPlayer), который воспроизводит аудиофайл.Файл воспроизводится нормально.

Как предоставить код для встраивания конечным пользователям для копирования, чтобы они могли публиковать проигрыватель и воспроизводить аудиофайл непосредственно на своем сайте?Должен ли я где-то использовать теги HTML <pre>?Или JavaScript для генерации кода вставки / ссылки?

Например.SoundCloud имеет:

<object height="81" width="100%"> <param name="movie" value="https://player.soundcloud.com/player.swf?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F31988157&amp;show_comments=true&amp;auto_play=false"></param> <param name="allowscriptaccess" value="always"></param> <embed allowscriptaccess="always" height="81" src="https://player.soundcloud.com/player.swf?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F31988157&amp;show_comments=true&amp;auto_play=false" type="application/x-shockwave-flash" width="100%"></embed> </object>   <span><a href="http://soundcloud.com/chris_ilett/the-fray">The Fray</a> by <a href="http://soundcloud.com/chris_ilett">chris_ilett</a></span>

А у YouTube:

<iframe width="420" height="315" src="http://www.youtube.com/embed/FL7yD-0pqZg" frameborder="0" allowfullscreen></iframe>

Каковы преимущества наличия <object> и <iframe>?

Наконец, на основном сайте.Каждый раз, когда конечный пользователь посещает аудио страницу.Веб-приложение увеличивает views_count.Если я использую <object> или <iframe>.Смогу ли я как-то отслеживать количество просмотров?

1 Ответ

1 голос
/ 21 февраля 2012

iframe против объекта

Основная причина использования YouTube <iframe> (т. Е. «Преимущества») заключается в том, что он позволяет им изменять способ отображения видео - безвеб-сайт, на котором размещено видео, необходимо изменить элемент <object>.Т.е.:

  • YouTube может обслуживать различный контент в зависимости от браузера - т. Е. Если в браузере не установлен FlashPlayer, он может вывести элемент HTML 5 <video> в <iframe> вместо.В будущем вы можете захотеть сделать то же самое (с элементом <audio>), поэтому <iframe> может быть хорошим выбором для гибкости в долгосрочной перспективе.

  • Это прощедля YouTube, чтобы изменить способ вывода контента в случае ошибок и т. д. Другими словами, если по какой-то причине (например, для работы FlashPlayer 12) им нужно добавить или изменить <param> в HTML или что-то еще,они могут сделать это без того, чтобы каждый, кто встраивал свои видео, должен был изменить его сам.

Код

Вы, вероятно, использовали бы Ruby для выводафактический код, хотя вы также можете использовать Javascript - его нужно будет как-то сгенерировать, чтобы отразить точное аудио, которое должно быть воспроизведено.Что касается помещения его в теги <pre>, то это не техническая необходимость - просто вопрос лучшего взаимодействия с пользователем - просто потому, что легче определить, где код начинается и заканчивается.

Какие именно теги использовать, это просто вопрос философии.Кто-то скажет: «используйте элемент <code> (чтобы указать его код) и стилизуйте его для отображения в качестве блочного элемента»;другие сказали бы: «просто нам элемент <pre>, поскольку он уже является элементом блока»;а некоторые скажут: «Объедините два: <pre><code>...».

Отслеживание

Вы можете отслеживать либо.Запросы на аудио всегда будут отправляться на ваш сервер, поэтому можно использовать отслеживание в любом случае.Случай с <iframe> легче отследить так же, как вы уже это делаете, так как src этого iframe будет просто ссылкой на более простую версию вашей аудиостраницы (показывает только реальный проигрыватель)), вы можете увеличить views_count точно так же, как на странице аудио.

Что касается <object> преимуществ

Почему SoundCloud использует <object>исключительно?Просто угадайте здесь ...

Либо они просто еще не добрались до этого, либо они решили (вполне справедливо в некоторых отношениях), что полностью предсказуемый, работающий <audio> элемент немного вбудущее, и оно пока не стоит.

Или у них есть философская неприязнь к элементу <iframe>, который есть у некоторых разработчиков (я включил его в некоторых отношениях - я использую его, только если нет абсолютно никакой другой альтернативы).

пользователь (т. Е. Тот, кто встраивает звук) также может намереваться использовать его в месте, где <iframe> может вызвать проблемы, напрямую не поддерживается (например, некоторыеCMS) и т. Д.

Кроме того, хотя я сомневаюсь, что это их причина, это означает еще один удар по их серверу - разрешение пользователям вставлять <object> будет непосредственно извлекать флэш-контент.Если они используют <iframe>, SoundCloud получит дополнительный запрос на каждое встраивание - один для HTML и один для аудиофайла (и для FlashPlayer - один для SWF-файла).

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