SWF Tools

Umožňuje pomocí jednoduché PHP syntaxe nebo filtru vložit Flash animace (video, audio, obrázky) do libovolného typu obsahu a převést seznam souborů na playlist. Modul podporuje i CCK FileField.

  1. Rozbalte modul SWF Tools 6.x-2.5 do adresáře sites/all/modules.
  2. V admin/build/modules (Administrace, Prvky webu, Moduly) povolte požadované moduly:
    • 1 Pixel Out
    • FlowPlayer 3
    • (JW Image Rotator 3)
    • (JW Media Player – při používání filtru pro zobrazení náhledové fotografie videa přehrávaného pomocí JW Media Player 4 je nutné povolit i modul JW Media Player 3 )
    • (SimpleViewer)
    • SWF Tools
    • SWFObject2
  3. V admin/reports/swftools (Administrace, Logy, SWF Tools status) zkontrolujte stav podpůrných modulů.
  4. V admin/settings/swftools/embed (Administrace, Nastavení webu, SWF Tools, Embedding settings) nastavte:
    • Embedding methods
      • SWFObject 2 – JavaScript
      • HTML alternative:
        • <p>You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.</p>
        • <p>Zde by se měl zobrazit obsah ve formátu Flash! Váš prohlížeč jej nemůže zobrazit, nebo není správně nastaven.</p>
  5. Modul obsahuje jednoduchý přehrávač swf, flvmp3 souborů bez možnosti navigace (posunu). Výchozí přehrávače je možné nastavit v admin/settings/swftools/handling (Administrace, Nastavení webu, SWF Tools, File Handling) v sekci File handling:
    • FlowPlayer (zdarma i pro komerční účely)
    • 1 Pixel Out MP3 Player – mp3 audio playder
    • JW FLV Media Player – wijering (20 € pro komerční účely)
    • image rotator – wijering (20 € pro komerční účely)
      • Příklad ručního zadávání cest k obrázkům:
        <?php
          $files = array('images/01.jpg', 'images/02.jpg');
          print swf($files);
        ?>
      • Příklad výběru posledních 10 obrázků z databáze ve velikosti "náhled":
        <?php
          $sql = "SELECT files.filepath AS filepath
            FROM node
            LEFT JOIN image ON node.nid = image.nid
            LEFT JOIN files ON image.fid = files.fid
            WHERE ((node.status <> 0)) AND (image.image_size = 'thumbnail')
            ORDER BY node.created DESC
            LIMIT 10";
          $result = db_query($sql);
          while ($node = db_fetch_object($result)) {
            $output[] = $node->filepath;
          }
          print swf($output);
        ?>
  6. V admin/settings/swftools (Administrace, Nastavení webu, SWF Tools) můžete upravit výchozí nastavení:
    • FlowPlayer 3
      • Player and plugin files
        • Player file: flowplayer-3.0.7.swf
        • RTMP streaming plugin: flowplayer.rtmp-3.0.2.swf
      • Canvas properties
        • Výška: 204 (305) – výška ovládacího panelu je 24 px
        • Šířka: 320 (500)
      • Overall clip properties
        • Auto buffering: true (načte úvodní snímek)
        • Buffer length: 10
    • JW Media Player
      • Basic
        • Výška: 200 (301)- výška ovládacího panelu je 20 px
        • Šířka: 320 (500)
      • Playback
        • Buffer length: 10
  7. Vložení flash obsahu umístěném ve files/media/:
    • v admin/settings/filters (Administrace, Nastavení webu, Vstupní formáty) povolte SWF Tools Filter v konfiguraci vybraných formátů:
    • vložte požadované parametry např.:
      [swf file="media/test.flv" image="images/media/test.jpg"]
      
    • nebo (náhled videa pro Flowplayer)
      <?php
        print swf('media/video.flv',
          array(
            'params' => array('width' => '320', 'height' => '204'),
            'othervars' => array('image' => 'images/media/preview.jpg', 'autoPlay' => 'true'),
      )
      );
      ?>
  8. Výchozí cestu k souborům je možné změnit v souboru sites/default/settings.php:
    $conf = array(
      // No trailing slashes!
      'swftools_media_url' => 'http://example.com/media',
    );
  9. Příklad adresářové struktury modulu:
    • swftools
      • shared
        • generic
          • generic_flv.swf
          • generic_mp3.swf
          • skin_druplicon.swf
        • 1pixelout
          • player.swf
        • flash_media_player
          • mediaplayer.swf (wijering 3)
          • player-viral.swf (wijering 4)
        • flash_image_rotator
          • imagerotator.swf (wijering)
        • flowplayer
          • FlowPlayerClassic.swf
          • FlowPlayerDark.swf
          • FlowPlayerLight.swf
          • FlowPlayerLP.swf
        • flowplayer3
          • flowplayer.controls-3.0.4.swf
          • flowplayer.rtmp-3.0.2.swf
          • flowplayer-3.0.7.swf
        • simpleviewer
          • viewer.swf
        • swfobject2
        • ufo
          • ufo.js
        • lutman
          • jquery.flash.js
  10. ...sites/default/files/playlists...
    • <?php
        $files = array('media/video1.flv', 'media/video2.flv', 'images/fotka.jpg');
        print swf($files);
      ?>
    • <?php
        print swf("playlist.xml");
      ?>
      • playlist.xml
        <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
            <channel>
                <title>Example media RSS playlist for the JW Player</title>
                <link>http://www.longtailvideo.com</link>
                <item>
                    <title>Big Buck Bunny - FLV Video</title>
                    <link>http://www.bigbuckbunny.org/</link>
                    <description>Big Buck Bunny is a short animated film by...</description>
                    <media:credit role="author">the Peach Open Movie Project</media:credit>
                    <media:content url="http://www.longtailvideo.com/jw/upload/bunny.flv" type="video/x-flv" duration="33" />
                </item>
                <item>
                    <title>Big Buck Bunny - MP3 Audio with thumb</title>
                    <link>http://www.bigbuckbunny.org/</link>
                    <description>Big Buck Bunny is a short animated film by...</description>
                    <media:credit role="author">the Peach Open Movie Project</media:credit>
                    <media:content url="http://www.longtailvideo.com/jw/upload/bunny.mp3" type="audio/mpeg" duration="33" />
                    <media:thumbnail url="http://www.longtailvideo.com/jw/upload/bunny.jpg" />
                </item>
                <item>
                    <title>Big Buck Bunny - PNG Image with start</title>
                    <link>http://www.bigbuckbunny.org/</link>
                    <description>Big Buck Bunny is a short animated film by...</description>
                    <media:group>
                        <media:credit role="author">the Peach Open Movie Project</media:credit>
                        <media:content url="http://www.longtailvideo.com/jw/upload/bunny.png" type="image/png" duration="20" start="10" />
                    </media:group>
                </item>
            </channel>
        </rss>
    • CCK – multiple files
    • [swf files="first.mp3&&second.mp3&&third.mp3"]
  11. ...rtmp streaming
    • [swf file="stream.flv" stream="rtmp://server/application"]

Příklad minimálního html dokumentu s Flash verzí Flowplayeru (HTML5 verze nefunguje ve Firefoxu a IE) – další možnosti konfigurace:

<html>
  <head>
    <title>Wow! This is video</title>
    <script src="path/to/flowplayer-3.2.12.min.js"></script>
  </head>
  <body>
    <!-- this A tag is where your Flowplayer will be placed. it can be anywhere -->
    <a href="path/to/video.flv" style="display: block; width: 917px; height: 524px" id="player"></a>
    <script>
      flowplayer("player", "path/to/flowplayer-3.2.16.swf", {
        clip:  {
          autoPlay: true,
          autoBuffering: true,
          bufferLength: 15,
        }
      });
    </script>
  </body>
</html>

Další moduly:

  • Flowplayer (verze zdarma i pro komerční účely)
  • FLV Media Player (20 € pro komerční účely)
    • SWFObject API – vkládá JavaScript!
    • XSPF Playlist
  • FileField
  • Flash Node
  • FlashVideo
  • Video
  • VideoField
  • Media Mover
    • <object width="320" height="204">
      <param name="movie" value="http://mediamover.24b6.net/sites/default/modules/flvmediaplayer/mediaplayer.swf">
      </param>
      <embed src="http://mediamover.24b6.net/sites/default/modules/flvmediaplayer/mediaplayer.swf" type="application/x-shockwave-flash" flashvars="shuffle=false&enablejs=true&allowscriptaccess=always&logo=http://mediamover.24b6.net/drupal.png&overstretch=fit&repeat=list&file=http://mediamover.24b6.net/xspf/terms/flv/.xspf&recommendations=http://mediamover.24b6.net/recommended.xml">
      </embed>
      </object>
    • Exif Removal Media Mover Module


Doplnit:

<embed src="mediaplayer.swf" width="320" height="204" allowfullscreen="true" flashvars="&displayheight=240&file=rtmp://my_flashhost/my_app/&height=204&width=320&id=my_flvfilename&type=rtmp" />

Při problémech s fullscreen zobrazením (verze 5.x-1.1) je možné do souboru swftools/swftools.module např. mezi parametry srcwmode doplnit parametr allowfullscreen:

.' src="'.     $P['src']     .'"'
.' allowfullscreen="true"'
.' wmode="'.   $P['wmode']   .'"'

 


streaming:

  • xmoovStream PHP
  • lighttpd
    • instalace
    • nastavení
      • /etc/lighttpd/lighttpd.conf
        • server.port = 81
        • server.modules = (
            ...,
            "mod_secdownload",
            "mod_flv_streaming",
            ...
          )
          flv-streaming.extensions = (".flv")
      • /etc/init.d/lighttpd start
        
      • /etc/init.d/lighttpd stop