Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
906
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Встраивание Windows Media плеера для всех браузеров
Мы используем WMV видео на внутреннем сайте, и мы встраиваем их в веб-сайты. Это довольно хорошо работает в Интернете Explorer, но не на Firefox. Я нашел способы заставить его работать в Firefox, но затем он перестает работать в Internet Explorer.
Мы пока не хотим использовать Silverlight, тем более что не можем быть уверены, что все клиенты будут работать под управлением Windows XP с установленным Windows Media плеером.
Есть ли какой-то универсальный код, который встраивает WMP в оба Интернета Explorer и Firefox, или нам нужно реализовать некоторые user-agent-detection и поставить разные HTML для разных браузеров?
Следующее работает для меня в Firefox и Internet Explorer:
<object id="mediaplayer" 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="320" height="310">
<param name="filename" value="./test.wmv">
<param name="animationatstart" value="true">
<param name="transparentatstart" value="true">
<param name="autostart" value="true">
<param name="showcontrols" value="true">
<param name="ShowStatusBar" value="true">
<param name="windowlessvideo" value="true">
<embed src="./test.wmv" autostart="true" showcontrols="true" showstatusbar="1" bgcolor="white" width="320" height="310">
</object>
Могу ли я предложить плагин jQuery Media ? Предоставляет код вставки для всех видов видео, а не только WMV и делает обнаружение браузера, сохраняя все эти грязные инструкции switch/case из ваших шаблонов.
Использовать следующее. Он работает в Firefox и Интернете Explorer.
<object id="MediaPlayer1" width="690" height="500" 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"
>
<param name="FileName" value='<%= GetSource() %>' />
<param name="AutoStart" value="True" />
<param name="DefaultFrame" value="mainFrame" />
<param name="ShowStatusBar" value="0" />
<param name="ShowPositionControls" value="0" />
<param name="showcontrols" value="0" />
<param name="ShowAudioControls" value="0" />
<param name="ShowTracker" value="0" />
<param name="EnablePositionControls" value="0" />
<!-- BEGIN PLUG-IN HTML FOR FIREFOX-->
<embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"
src='<%= GetSource() %>' align="middle" width="600" height="500" defaultframe="rightFrame"
id="MediaPlayer2" />
А в JavaScript г.,
function playVideo() {
try{
if(-1 != navigator.userAgent.indexOf("MSIE"))
{
var obj = document.getElementById("MediaPlayer1");
obj.Play();
}
else
{
var player = document.getElementById("MediaPlayer2");
player.controls.play();
}
}
catch(error) {
alert(error)
}
}
У Элизабет Кастро есть интересная статья по этой проблеме: Bye Bye Embed . Стоит почитать о том, как она атаковала эту проблему, а также об обработке контента QuickTime.
Лучший способ развернуть видео в интернете-это использовать Flash - это гораздо проще встроить чисто в веб-страницу и будет воспроизводиться на более или менее любой комбинации браузера и платформы. Единственная причина использовать Windows Media Player - это если вы потоковый контент и вам нужно чрезвычайно сильное управление цифровыми правами, и даже тогда провайдеры теперь начинают использовать Flash даже для этих целей. Смотрите BBC в iPlayer для превосходного примера.
Я бы предложил вам переключиться на Flash даже для внутреннего использования. Вы никогда не знаете, кто будет нуждаться в доступе к нему в будущем, и это даст вам наилучшую возможную совместимость в будущем.
Кодирование flash видео на самом деле очень легко с ffmpeg. Вы можете использовать одну команду для преобразования практически из любого видеоформата, ffmpeg достаточно умен, чтобы вычислить rest, и он будет использовать каждый процессор на вашем компьютере. Вызвать его очень просто:
ffmpeg -i input.avi output.flv
ffmpeg угадает нужный вам битрейт, но если вы хотите указать его, вы можете использовать опцию-b, так что -b 500000 - это 500kbps, например. Конечно, есть масса вариантов,но я обычно получаю хорошие результаты без особых усилий. Это хорошее место для начала, если вы ищете дополнительные опции: опции видео .
Вам не нужен специальный веб-сервер, чтобы показать видео flash. Я отлично справился, просто отправив файлы .flv на стандартный веб-сервер и связав их с хорошим swf-плеером, таким как flowplayer .
WMVs прекрасно, если вы можете быть уверены, что все ваши пользователи всегда будут использовать только [последнюю, актуальную версию] Windows, но даже тогда Flash часто лучше подходит для интернета. Игрок даже очень легко снимается с кожи и может управляться с помощью javascript.
Я нашел хорошую статью об использовании WMP с Firefox на MSDN.
Основываясь на статье MSDN и после некоторых проб и ошибок, я обнаружил, что использование JavaScript лучше, чем использование условных комментариев или вложенных тегов "EMBED/OBJECT".
Я сделал функцию JS, которая генерирует объект WMP на основе заданных аргументов:
<script type="text/javascript">
function generateWindowsMediaPlayer(
holderId, // String
height, // Number
width, // Number
videoUrl // String
// you can declare more arguments for more flexibility
) {
var holder = document.getElementById(holderId);
var player = '<object ';
player += 'height="' + height.toString() + '" ';
player += 'width="' + width.toString() + '" ';
videoUrl = encodeURI(videoUrl); // Encode for special characters
if (navigator.userAgent.indexOf("MSIE") < 0) {
// Chrome, Firefox, Opera, Safari
//player += 'type="application/x-ms-wmp" '; //Old Edition
player += 'type="video/x-ms-wmp" '; //New Edition, suggested by MNRSullivan (Read Comments)
player += 'data="' + videoUrl + '" >';
}
else {
// Internet Explorer
player += 'classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" >';
player += '<param name="url" value="' + videoUrl + '" />';
}
player += '<param name="autoStart" value="false" />';
player += '<param name="playCount" value="1" />';
player += '</object>';
holder.innerHTML = player;
}
</script>
Затем я использовал эту функцию, написав несколько накруток и встроенных JS, как эти:
<div id='wmpHolder'></div>
<script type="text/javascript">
window.addEventListener('load', generateWindowsMediaPlayer('wmpHolder', 240, 320, 'http://mysite.com/path/video.ext'));
</script>
Вы можете использовать jQuery.ready вместо события загрузки окна , чтобы сделать коды более обратно совместимыми и кроссбраузерными.
Я проверил коды над IE 9-10, хром 27, Firefox 21, Opera 12 и Safari 5, на Windows 7/8.
Я нашел кое-что, что действительно работает как в FireFox, так и в IE, на сайте Элизабет Кастро (благодаря ссылке на этом сайте) - я попробовал все другие версии здесь, но не смог заставить их работать в обоих браузерах
<object classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
id="player" width="320" height="260">
<param name="url"
value="http://www.sarahsnotecards.com/catalunyalive/fishstore.wmv" />
<param name="src"
value="http://www.sarahsnotecards.com/catalunyalive/fishstore.wmv" />
<param name="showcontrols" value="true" />
<param name="autostart" value="true" />
<!--[if !IE]>-->
<object type="video/x-ms-wmv"
data="http://www.sarahsnotecards.com/catalunyalive/fishstore.wmv"
width="320" height="260">
<param name="src"
value="http://www.sarahsnotecards.com/catalunyalive/fishstore.wmv" />
<param name="autostart" value="true" />
<param name="controller" value="true" />
</object>
<!--<![endif]-->
</object>
Проверьте ее сайт: http://www.alistapart.com/articles/byebyeembed/ и версию с classid в начальном теге объекта