Bloglines en Flash Enclosures

Bloglines zou in staat moeten zijn om Flash-enclosures weer te geven. Ik dacht eerst dat het daarbij ging om FLV-bestanden, maar het nieuwsbericht erover verwijst specifiek naar de RSS-feed van Youtube met Today’s Most Viewed Videos en daarin worden SWF-bestanden aangeboden. Het verschil kun je een beetje vergelijken als het aanbieden van een verwijzing naar een Quicktime videobestand of verwijzing naar de Quicktime-player met daarin ingebakken één video. Nu is de ‘player’ in geval van SWF niet groot (meestal verwaarloosbaar klein) maar het voorkomt natuurlijk wel dat je een eigen player gebruikt zoals ik dat in dit bericht doe.
Vervelend is het natuurlijk ook voor mensen zoals ik die géén SWF-bestanden produceren, maar FLV-bestanden die dan in een bericht aan een player gekoppeld worden. Voor de bezoeker is het effect overigens hetzelfde.
Daarom heb ik een script gemaakt dat als parameter een verwijzing naar een FLV-bestand (uitsluitend op mijn eigen server!) accepteert en dan een doorverwijzing maakt naar de player. Daarnaast heb ik de Flashvideo-plugin aangepast zodat hij ook SWF-bestanden accepteert.
Het resultaat is dan dat dit:

<%flashvideo(/Pierre/flashvideo/test_eendjes_vanuit_Flash.flv)%>

Hetzelfde effect oplevert als:

<%flashvideo(/Pierre/playflv/file/flashvideo/test_eendjes_vanuit_Flash.swf)%>

In het ene geval plakt de plugin de juiste code inclusief verwijzing naar de SWF-player in, in het andere geval alleen de verwijzing naar de SWF.

Maar /Pierre/playflv/file/flashvideo/test_eendjes_vanuit_Flash.swf is niet echt een bestaand bestand op mijn server. In de .htaccess heb ik aangegeven dat /Pierre/playflv/file/ eigenlijk betekent /Pierre/playflv/index.php?file= en dat index.php bestand neemt de meegegeven file-parameter en stuurt me dan door naar (in dit geval) […]/flvplayer.swf?file=/Pierre/flashvideo/test_eendjes_vanuit_Flash.flv en dat zorgt er dan voor dat het FLV-bestand (dat wél echt bestaat) netjes in een SWF-player geopend wordt. En dat moet, want niet alleen Boglines kan niet zomaar iets met een FLV-bestand, een browser heeft ook geen ingebouwde ondesteuning voor het afspelen van FLV-bestanden, die heeft daar zo’n SWF-player voor nodig.

Enclosure
Dat is allemaal prima, maar Bloglines gebruikt niet de eventueel in de pagina/het bericht opgenomen player, Bloglines kijkt naar het <enclosures>-element in de RSS-feed en kijkt of daar een verwijzing naar een SWF-bestand aanwezig is.

Dat kon ik niet met de Flashvideo-plugin oplossen omdat ik voor het maken van enclosures al een plugin (getiteld ‘Podcast’) gebruik. Omdat een bericht maar één enclosure kan/mag bevatten kon ik niet het risico gaan lopen dat beide plugins elkaar in de weg gaan zitten.
De Podcast-plugin werkt op basis van bestandsextensie. Daarom had ik ook de truc nodig waarbij ik naar /Pierre/playflv/file/flashvideo/test_eendjes_vanuit_Flash.swf verwijs en niet naar /Pierre/playflv/file/flashvideo/test_eendjes_vanuit_Flash.flv

Doordat ik SWF als toegestaan bestandsformaat heb toegevoegd aan de podcast-plugin kan ik nu dus ook zeggen:
FLV Eendjes
<%Podcast([…]/Pierre/playflv/file/flashvideo/test_eendjes_vanuit_Flash.swf|Eendjes)%>

De plugin kijkt alleen naar de extensie. Ziet een .SWF en vind dat prima. Bloglines ziet een SWF en zal de URL invoegen als zijnde een SWF. Maar de URL levert zomaar een statische SWF op, maar een SWF die een FLV-bestand opent en kan afspelen.

Kun je het nog volgen?
Prima, dan nu eerst even dit bericht posten en kijken of het werkt.