Beágyazása Windows Media Player minden böngészőben

szavazat
53

Mi használ WMV videók a belső oldalon, és mi beágyazó őket weboldalakat. Ez meglehetősen jól működik az Internet Explorer, de nem a Firefox. Már megtalálták a módját, hogy ez a munka a Firefox, de aztán megszűnik az Internet Explorer.

Nem akarjuk, hogy a Silverlight csak még, különösen azért, mert nem tudjuk biztosan, hogy minden kliens lesz Windows XP és Windows Media Player telepítve.

Van valamiféle univerzális kód, amely beágyazza WMP mindkét Internet Explorer és a Firefox, vagy mi végre kell hajtanunk néhány user-agent-felismerés és szállít a különböző HTML különböző böngészőkben?

A kérdést 01/08/2008 19:02
a forrás felhasználó
Más nyelveken...                            


9 válasz

szavazat
5

Lehet használni a feltételes megjegyzések, hogy az IE és a Firefox, hogy különböző dolgokat

<![if !IE]>
<p> Firefox only code</p>
<![endif]>

<!--[if IE]>
<p>Internet Explorer only code</p>
<![endif]-->

A böngészők maguk figyelmen kívül hagyja, hogy a kód nem azt jelentette, hogy olvassák el.

Válaszolt 01/08/2008 19:08
a forrás felhasználó

szavazat
6

A legjobb módja annak, hogy telepíteni videó az interneten használ Flash - ez sokkal könnyebb, hogy beágyazza tisztán egy weboldalt, és fog játszani a többé-kevésbé minden böngésző és platform kombinációja. Az egyetlen oka, hogy a Windows Media Player, ha streaming tartalmak és meg kell rendkívül erős a digitális jogkezelés, és még akkor szolgáltatók most kezdik használni a Flash még e. Lásd BBC iPlayer egy kiváló példa.

Azt javasoljuk, hogy váltson a Flash még belső használatra. Soha nem lehet tudni, hogy ki fog hozzá kell férnie a jövőben, és ez adja meg a lehető legjobb jövőbeli kompatibilitás.

EDIT - március 20. 2013. Érdekes, hogy ezek a régi kérdések felszínre időről időre! Mennyire más a világ ma, és hogyan kelt ez az egész úgy tűnik. Én nem ajánlom a Flash only útvonalat ma minden eszközzel - a legjobb gyakorlat manapság valószínűleg használni HTML 5 lehet beágyazni H264 kódolású videó, egy Flash-tartalék az itt leírtak: http://diveintohtml5.info/video.html

Válaszolt 02/08/2008 12:05
a forrás felhasználó

szavazat
42

Az alábbi munkák számomra a Firefox és az 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>
Válaszolt 03/08/2008 15:27
a forrás felhasználó

szavazat
4

Kódolás flash videó valójában nagyon egyszerű ffmpeg. Használhatja az egyik parancs lehet átalakítani a majdnem minden videó formátum, ffmpeg elég okos ahhoz, hogy kitaláljuk a többit, és akkor használja minden processzor a gépen. Hivatkozva könnyű:

ffmpeg -i input.avi output.flv

ffmpeg fogja kitalálni a bitráta akarsz, de ha azt szeretné, hogy adja meg az egyik, akkor a -b opció, így -b 500000a 500kbps például. Van egy csomó lehetőség természetesen, de én általában jó eredményeket elérni, nem sok bütykölés. Ez egy jó hely, hogy ha keres több opció: videoopció .

Nem kell külön webszerver megjelenítéséhez flash videó. Megtettem, csak finom, egyszerűen nyomja FLV fájlokat akár egy szabványos web szerver, és összeköti őket egy jó swf lejátszó, mint Flowplayer .

WMV finom, ha biztos lehet benne, hogy az összes felhasználó mindig [a legutóbbi, naprakész változatát] csak Windows, de még akkor is, flash gyakran jobban illeszkedik az interneten. A játékos még a rendkívül skinnable és vezérelhető a javascript.

Válaszolt 04/08/2008 03:14
a forrás felhasználó

szavazat
20

Javasolhatom a jQuery Media Plugin ? Biztosítja kódot mindenféle videó, nem csak a WMV, és nem a böngésző felderítése, miközben minden rendetlen switch / case nyilatkozatok ki a sablonokat.

Válaszolt 08/08/2008 19:29
a forrás felhasználó

szavazat
7

Elizabeth Castro egy érdekes cikket a problémát: Bye Bye beágyazása . Érdemes olvasni arról, hogyan támadt ez a probléma, valamint a kezelési QuickTime tartalmat.

Válaszolt 10/11/2008 20:52
a forrás felhasználó

szavazat
8

Használja a következő. Úgy működik, a Firefox és az Internet 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" />

És 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)
        } 


        }
Válaszolt 04/08/2009 15:55
a forrás felhasználó

szavazat
3

Találtam valamit, ami valóban működik a Firefox és az IE, Elizabeth Castro helyén (hála a kapcsolatot ezen az oldalon) - Megpróbáltam minden más változat, de nem tudta, hogy azok működjenek mind a böngészők

<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>

Nézz rá helyszínen ki: http://www.alistapart.com/articles/byebyeembed/ és a változat a classid a kezdeti objektum tag

Válaszolt 06/11/2009 21:00
a forrás felhasználó

szavazat
4

Találtam egy jó cikket a WMP a Firefox az MSDN.

Ennek alapján MSDN cikkét és után csinál valami kísérletek és hibák, én találtam a JavaScript jobb, mint a feltételes megjegyzéseket vagy egymásba ágyazott „Beágyazás / tárgy” címkéket.

Csináltam egy JS függvény, amely létrehoz WMP objektum alapján megadott paraméterek:

<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>

Aztán használt, hogy a funkció írásban néhány jelölések és inline JS, mint ezek:

<div id='wmpHolder'></div>

<script type="text/javascript">        
    window.addEventListener('load', generateWindowsMediaPlayer('wmpHolder', 240, 320, 'http://mysite.com/path/video.ext'));
</script>

Használhatja jQuery.ready helyett ablak terhelés esetén ahhoz, hogy a kódok több visszafelé kompatibilis és cross-browser.

Kipróbáltam a kódok alatt IE 9-10 Chrome 27, Firefox 21, Opera 12 és a Safari 5, Windows 7/8.

Válaszolt 06/06/2013 17:03
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more